PCS7系统自定义CFC功能块培训(高端培训)

举报
资源描述
工程师培训资料工程师培训资料 标题:PCS7系统自定义CFC功能块培训(高端培训)(高端培训)培训人:xx内 容 FB和FC块的结构 LAD 编程语言 设计自定义功能块 FC设计实例 FB设计实例 SCL 编程简介FB和FC块的结构 引脚 变量声明 程序体 块属性 FB的背景数据块块的引脚 FB和FC块是实现一定功能的程序块,例如:量程转换、PID控制器、信号滤波等;FB和FC将程序分解成相对独立的部分;在FB和FC内部避免使用直接地址,而是通过块的引脚与调用程序实现数据交换,可以防止读取到无效数据;设计良好的块可以被多次调用,只需改变引脚连接,可节约编程工作量。块的三种引脚 输入端(IN):变量输入,只读;输出端(OUT):结果输出,避免读取输出端;输入输出端(IN_OUT):用于需要回写的变量,例如需要自复位的按钮。变量声明 FB和FC块中所有用到的变量必须先声明;变量声明中包括对引脚的声明;FB和FC块中的变量声明类型:IN,OUT,IN_OUT 块的引脚;TEMP 临时变量,用于程序的中间数据存储;STAT 静态变量,在FB中用于保存重要数据,FC没有静态变量。块中的变量可以采用所有PCS7支持的基本和复合数据类型,但是块的引脚在连接时必须满足两端数据类型一致。块属性 FB和FC块包含以下属性:NAME:块名称 VERSION:版本号 FAMILY:块分类 AUTHOR:作者 S7_TASKLIST:调用块的执行顺序 S7_m_c:块是否需要与WinCC变量连接 可以在编写自定义功能块时设置属性。FB的背景数据块 FC和FB的区别:FC块没有背景数据块;背景数据块与变量声明中确定的数据结构一致;背景数据块中不包含临时变量;用于保存每个周期的变量数值,可以在其他程序中访问背景数据块中的数据;FC块的引脚不能空置,不能赋初值;FB块的引脚可以不连,保持其默认的初始值;FC常用于一些简单的逻辑运算和不需数据存储的功能,也用于调用其他FB和FC块实现程序的结构化;FB更适合于编写复杂的运算功能。程序体 FB和FC块的程序可以采用多种编程语言编写;LAD、FBD:适于编写较简单的功能,程序直观易懂;STL:适于编写贴近内核的程序,功能强大,但程序晦涩难懂;SCL:适于编写复杂的运算功能,功能强大,接近高级语言,程序易懂。LAD 编程语言 位逻辑指令 比较指令 MOVE 与数据转换指令 整数运算指令 浮点数运算指令 字逻辑运算指令 计数器指令 定时器指令 常开触点 常闭触点 取反 输出线圈 置位线圈 复位线圈 检测下降沿 检测上升沿 复位置位触发器 置位复位触发器 检测变量上升沿 检测变量下降沿SRRSQSR(变量地址)RSQRS(变量地址)N(变量地址)P(变量地址)NOTM_BITQNEG(变量地址1)(变量地址2)M_BITQPOS(变量地址1)(变量地址2)位逻辑指令三种数据类型 CMP?I 整数比较 CMP?D 长整数比较 CMP?R 实数比较六种比较条件=IN1等于IN2 IN1不等于IN2 IN1大于IN2=IN1大于等于IN2=IN1小于等于IN2比较指令MOVE 指令 可实现简单的数据转换功能 IN:I,Q,M,D,常数 OUT:I,Q,M,DBCD_I BCD码转换为整型I_BCD 整型数转换为BCD码BCD_DI BCD码转换为长整型DI_BCD 长整型数转换为BCD码I_DINT 整形数转换为长整型DI_REAL 长整型数转换为实型数INV_I 整型数的二进制反码(按位取反)INV_DI 长整型数的二进制反码(按位取反)NEG_I 整型数的2的补码(加负号)NEG_DI 长整型数的2的补码(加负号)NEG_R 实型数的相反数(加负号)数据转换指令 ADD_I 整型数加法 SUB_I 整型数减法 MUL_I 整型数乘法 DIV_I 整型数除法 ADD_DI 长整型数加法 SUB_DI 长整型数减法 MUL_DI 长整型数乘法 DIV_DI 长整型数除法 MOD_DI 长整型数取模运算(求余数)整数运算指令 ADD_R 实型数加法 SUB_R 实型数减法 MUL_R 实型数乘法 DIV_R 实型数除法浮点数运算指令 WAND_W 字“与”WOR_W 字“或”WXOR_W 字“异或”WAND_DW 双字“与”WOR_DW 双字“或”WXOR_DW 双字“异或”字逻辑运算指令 S_CUD 向上向下计数器 S_CD 向下计数器 S_CU 向上计数器计数器指令 S_PULSE -(SP)脉冲定时器 S_PEXT -(SE)扩展脉冲定时器 S_ODT -(SD)延时接通定时器 S_ODTS -(SS)带保持延时接通定时器 S_OFFDT -(SF)延时断开定时器定时器指令tttS:I0.0R:I0.1Q:Q4.0S_PULSE 脉冲定时器tttS:I0.0R:I0.1Q:Q4.0S_PEXT 扩展脉冲定时器tttS:I0.0R:I0.1Q:Q4.0tS_ODT 延时开启定时器tttS:I0.0R:I0.1Q:Q4.0tS_ODTS 带保持延时开启定时器tttS:I0.0R:I0.1Q:Q4.0tS_OFF 延时断开计时器设计自定义功能块 分解程序功能 选择 FC 和 FB 块 设计引脚和变量结构分解程序功能 可以按照以下原则对程序进行功能分解:按照实现的功能划分:如电机起停逻辑、阀门控制器等;按照控制的设备划分:如除氧器、加压泵等;按照控制回路划分:如汽包水位控制器、主管压力控制器等;按照算法单元划分:如量程转换,浮点运算等;选择 FC 和 FB 块 选择合理的程序块划分原则;尽量将实现功能所需的数据包含到功能块中;需要大量中间数据的功能块应选择FB,如:计算浮点数多项式;需要读取多个扫描周期数据的功能块采用FB,例如:PID控制器;不需数据存储或只需临时数据存储的功能块可采用FC实现,例如:量程转换等。设计引脚和变量结构 将需要在调用时变化的数据设计成块的引脚;合理利用IN,IN_OUT,OUT三种引脚类型,优先使用IN和OUT类型,避免不必要的麻烦;需要在多个周期中使用的变量应为静态变量;只在单个周期使用或仅仅一个语句使用的变量应为临时变量;对FB块中变量赋初值时应考虑安全;临时变量不能赋初值。FC设计实例 量程转换功能 引脚 变量声明 LAD实现量程转换 在OB1中调用量程转换功能 从模拟量输入通道读到的是一个没有工程单位的数值,与输入信号的对应关系是:0Kp4mA0 12Kp20mA27648 在程序中必须先对其做量程转换,之后才能得到实际的测量信号;量程转换是一个最常用的功能,但必须经过多步运算才能实现,因而有必要将其编写成功能块。引脚 将一个0到27648的数值转换成从低量程(0Kp)到高量程(12Kp)之间的数值;为了确保可以在程序中多次调用,需要将一些变量引出成为引脚;要转换的数值应该是一个输入引脚;高低量程根据不同的信号可能不同,应该设计成输入引脚;量程转换的结果应该作为输出引脚。变量声明 其他数据只是在运算过程中使用,可以定义成临时变量。引脚的数据类型:输入:SV:WORD;HLM:REAL;LLM:REAL;输出:PV:REAL 在量程转换功能中没有需要多个周期使用的数据,可以用FC实现。将自定义量程转换功能定义成FC1。LAD实现量程转换FC1在OB1中调用FC1 FC1的引脚不能空置 连接变量的数据类型与声明的类型一致FB设计实例 信号滤波功能 引脚 变量声明 LAD实现信号滤波FB1 在CFC中调用FB1信号滤波功能 为了消除模拟量信号的高频噪声,在信号读入之后需要先经过滤波器;根据要求不同可以选用多次滤波,如四次滤波;在滤波器中,将连续对同一个信号采样,并将连续四次采样的平均值作为当前时刻的实际值输出;滤波器可以用于各种模拟量信号,用功能块实现可以节约编程量。引脚 滤波器应该是一个单输入单输出的系统,输入端是一个任意的模拟量信号,输出是经过滤波之后的模拟量信号;变量声明 由于滤波算法中需要保存连续四次的采样值,并作平均运算,因而需要使用FB来实现;可以将连续四次采样值保存在一个实型数组中,并且必须将其声明成静态类型(STAT);在FB中输入输出和静态变量可以设置初值:输入:SV:REAL;(初值为0.0)输出:PV:REAL;(初值为0.0)静态:BUF:ARRAY1.4 OF REAL;(0.0)其他变量可以声明成临时变量。LAD实现信号滤波FB1在CFC中调用FB1 在CFC中连接块的引脚;不必关心生成的背景数据块,编译时自动生成。SCL 编程简介 SCL 编程环境 SCL 程序结构 SCL 编程实例SCL 编程环境SCL 程序结构 主框架 声明生成块的名称和FC块返回值的类型 分隔程序的各个部分 属性声明 定制生成块的属性 变量声明 所有程序中使用的变量必须声明 程序体 执行算法程序SCL 编程实例PCS7系统结构 1.典型的系统配置典型的系统配置OS clientOS clientOS clientTerminal busSystem busES RedundantOS serverOS serverASASPCS7系统结构(ES)2.ES:工程师站PCS7 ES 提供了强大的组态工具.例如:.SIMATIC Manager(SIMATIC 管理器):项目创建、库创建、项目管理和诊断等。.PH:Plant Hierarchy(工厂层次)。用于工厂层级的设计。.HW Config:Hardware Configuration Environment(硬件配置环境)。用于配置PCS7系统结构(ES)CPU、通讯处理器、外围设备和现场总线等。.CFC:Continuous Function Chart(连续功能图),用于设计库、自动化逻辑、连锁、算法和控制等。.SFC:Sequential Function Chart(顺序功能图),用于设计顺序控制、逻辑和连锁等。PCS7系统结构(ES).SCL:Structured Control Language(结构化控制语言)。用于编写算法程序和创建功能块等.IEA:Import Export Assistant(导入导出助手),用于生成控制模型、过程标签类型和副本。.WinCC:Window Control Centre(Windows 控制中心),PCS7操作员界面和可视化。.Graphics Designer editor(图形编辑器),图片、图形对象和动画设计。PCS7系统结构(ES).Commissioning Wizard(调试向导):当PC重新启动时,调试向导自动检测新近安装的SIMATIC模块,并一步步指导用户安装和配置PC站。.Configuration Console(配置控制台):使用配置控制台可以在Commissioning Wizard(调试向导)运行后改变设置。用于配置访问点。.Station Configurator(站配置器):显示PCS7系统中建立的实际的PC配置PCS7系统结构(ES).Multiproject(多项目):在SIMATIC管理器中,您可以创建单项目或多项目,一个多项目可以包含几个项目和一个主数据库。.Master data library(主数据库):一个主数据库是与一个多项目联系在一起的。他不同于其它系统或应用专用库,一个主数据库是存在于多项目中,并收集多项目使用的所有功能类型。PCS7系统结构(ES).Process Object View(过程对象视图):组态中会创建许多对象。过程对象视图包含了一个项目的所有组态内容。可在视图中显示这些对象并进行编辑.SIMATIC NET:调试向导,组态控制台和站配置器是SIMATIC NET的接口。SIMATIC NET是一个SIMATIC项目中配置网络和总线系统的平台。PCS7系统结构(AS)、AS:自动化站一个自动化站可由电源(PS),中央处理器(CPU),通讯处理器(CP)和输入和输出模块组成的。CPU处理操作系统和程序。PCS
展开阅读全文
温馨提示:
金锄头文库所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
相关搜索

当前位置:首页 > 电子/通信 > 电子电气自动化


电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号