SIMATIC_PCS7_标准培训--10--自定义功能块

上传人:痛*** 文档编号:242517236 上传时间:2024-08-26 格式:PPTX 页数:46 大小:876.36KB
返回 下载 相关 举报
SIMATIC_PCS7_标准培训--10--自定义功能块_第1页
第1页 / 共46页
SIMATIC_PCS7_标准培训--10--自定义功能块_第2页
第2页 / 共46页
SIMATIC_PCS7_标准培训--10--自定义功能块_第3页
第3页 / 共46页
点击查看更多>>
资源描述
,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,Sciample Training - SIMATIC PCS7,*,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,Sciample Training - SIMATIC PCS7,*,*,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,2024/8/26,SIMATIC PCS7,标准培训,自定义功能块,Sciample Training - SIMATIC PCS7,2,2024/8/26,内 容,FB,和,FC,块的结构,LAD,编程语言,设计自定义功能块,FC,设计实例,FB,设计实例,SCL,编程简介,Sciample Training - SIMATIC PCS7,3,2024/8/26,FB,和,FC,块的结构,引脚,变量声明,程序体,块属性,FB,的背景数据块,2024/8/26,Sciample Training - SIMATIC PCS7,4,块的引脚,FB,和,FC,块是实现一定功能的程序块,例如:量程转换、,PID,控制器、信号滤波等;,FB,和,FC,将程序分解成相对独立的部分;,在,FB,和,FC,内部避免使用直接地址,而是通过块的引脚与调用程序实现数据交换,可以防止读取到无效数据;,设计良好的块可以被多次调用,只需改变引脚连接,可节约编程工作量。,2024/8/26,Sciample Training - SIMATIC PCS7,5,块的三种引脚,输入端(,IN,):,变量输入,只读;,输出端(,OUT,):,结果输出,避免读取输出端;,输入输出端(,IN_OUT,):,用于需要回写的变量,例如需要自复位的按钮。,2024/8/26,Sciample Training - SIMATIC PCS7,6,变量声明,FB,和,FC,块中所有用到的变量必须先声明;,变量声明中包括对引脚的声明;,FB,和,FC,块中的变量声明类型:,IN,,,OUT,,,IN_OUT,块的引脚;,TEMP,临时变量,用于程序的中间数据存储;,STAT,静态变量,在,FB,中用于保存重要数据,,FC,没有静态变量。,块中的变量可以采用所有,PCS7,支持的基本和复合数据类型,但是块的引脚在连接时必须满足两端数据类型一致。,2024/8/26,Sciample Training - SIMATIC PCS7,7,块属性,FB,和,FC,块包含以下属性:,NAME,:块名称,VERSION,:版本号,FAMILY,:块分类,AUTHOR,:作者,S7_TASKLIST,:调用块的执行顺序,S7_m_c,:块是否需要与,WinCC,变量连接,可以在编写自定义功能块时设置属性。,2024/8/26,Sciample Training - SIMATIC PCS7,8,FB,的背景数据块,FC,和,FB,的区别:,FC,块没有背景数据块;,背景数据块与变量声明中确定的数据结构一致;,背景数据块中不包含临时变量;,用于保存每个周期的变量数值,可以在其他程序中访问背景数据块中的数据;,FC,块的引脚不能空置,不能赋初值;,FB,块的引脚可以不连,保持其默认的初始值;,FC,常用于一些简单的逻辑运算和不需数据存储的功能,也用于调用其他,FB,和,FC,块实现程序的结构化;,FB,更适合于编写复杂的运算功能。,2024/8/26,Sciample Training - SIMATIC PCS7,9,程序体,FB,和,FC,块的程序可以采用多种编程语言编写;,LAD,、,FBD,:适于编写较简单的功能,程序直观易懂;,STL,:适于编写贴近内核的程序,功能强大,但程序晦涩难懂;,SCL,:适于编写复杂的运算功能,功能强大,接近高级语言,程序易懂。,Sciample Training - SIMATIC PCS7,10,2024/8/26,LAD,编程语言,位逻辑指令,比较指令,MOVE,与数据转换指令,整数运算指令,浮点数运算指令,字逻辑运算指令,计数器指令,定时器指令,2024/8/26,Sciample Training - SIMATIC PCS7,11,常开触点,常闭触点,取反,输出线圈,置位线圈,复位线圈,检测下降沿,检测上升沿,复位置位触发器,置位复位触发器,检测变量上升沿,检测变量下降沿,位逻辑指令,2024/8/26,Sciample Training - SIMATIC PCS7,12,三种数据类型,CMP?I,整数比较,CMP?D,长整数比较,CMP?R,实数比较,六种比较条件,= IN1,等于,IN2, IN1,不等于,IN2, IN1,大于,IN2,= IN1,大于等于,IN2,= IN1,小于等于,IN2,比较指令,2024/8/26,Sciample Training - SIMATIC PCS7,13,MOVE,指令,可实现简单的数据转换功能,IN,:,I,,,Q,,,M,,,D,,常数,OUT,:,I,,,Q,,,M,,,D,2024/8/26,Sciample Training - SIMATIC PCS7,14,BCD_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,实型数的相反数(加负号),数据转换指令,2024/8/26,Sciample Training - SIMATIC PCS7,15,ADD_I,整型数加法,SUB_I,整型数减法,MUL_I,整型数乘法,DIV_I,整型数除法,ADD_DI,长整型数加法,SUB_DI,长整型数减法,MUL_DI,长整型数乘法,DIV_DI,长整型数除法,MOD_DI,长整型数取模运算(求余数),整数运算指令,2024/8/26,Sciample Training - SIMATIC PCS7,16,ADD_R,实型数加法,SUB_R,实型数减法,MUL_R,实型数乘法,DIV_R,实型数除法,浮点数运算指令,2024/8/26,Sciample Training - SIMATIC PCS7,17,WAND_W,字“与”,WOR_W,字“或”,WXOR_W,字“异或”,WAND_DW,双字“与”,WOR_DW,双字“或”,WXOR_DW,双字“异或”,字逻辑运算指令,2024/8/26,Sciample Training - SIMATIC PCS7,18,S_CUD,向上向下计数器,S_CD,向下计数器,S_CU,向上计数器,计数器指令,2024/8/26,Sciample Training - SIMATIC PCS7,19,S_PULSE -(SP),脉冲定时器,S_PEXT -(SE),扩展脉冲定时器,S_ODT -(SD),延时接通定时器,S_ODTS -(SS),带保持延时接通定时器,S_OFFDT -(SF),延时断开定时器,定时器指令,2024/8/26,Sciample Training - SIMATIC PCS7,20,S_PULSE,脉冲定时器,2024/8/26,Sciample Training - SIMATIC PCS7,21,S_PEXT,扩展脉冲定时器,2024/8/26,Sciample Training - SIMATIC PCS7,22,S_ODT,延时开启定时器,2024/8/26,Sciample Training - SIMATIC PCS7,23,S_ODTS,带保持延时开启定时器,2024/8/26,Sciample Training - SIMATIC PCS7,24,S_OFF,延时断开计时器,Sciample Training - SIMATIC PCS7,25,2024/8/26,设计自定义功能块,分解程序功能,选择,FC,和,FB,块,设计引脚和变量结构,2024/8/26,Sciample Training - SIMATIC PCS7,26,分解程序功能,可以按照以下原则对程序进行功能分解:,按照实现的功能划分:,如电机起停逻辑、阀门控制器等;,按照控制的设备划分:,如除氧器、加压泵等;,按照控制回路划分:,如汽包水位控制器、主管压力控制器等;,按照算法单元划分:,如量程转换,浮点运算等;,2024/8/26,Sciample Training - SIMATIC PCS7,27,选择,FC,和,FB,块,选择合理的程序块划分原则;,尽量将实现功能所需的数据包含到功能块中;,需要大量中间数据的功能块应选择,FB,,如:计算浮点数多项式;,需要读取多个扫描周期数据的功能块采用,FB,,例如:,PID,控制器;,不需数据存储或只需临时数据存储的功能块可采用,FC,实现,例如:量程转换等。,2024/8/26,Sciample Training - SIMATIC PCS7,28,设计引脚和变量结构,将需要在调用时变化的数据设计成块的引脚;,合理利用,IN,,,IN_OUT,,,OUT,三种引脚类型,优先使用,IN,和,OUT,类型,避免不必要的麻烦;,需要在多个周期中使用的变量应为静态变量;,只在单个周期使用或仅仅一个语句使用的变量应为临时变量;,对,FB,块中变量赋初值时应考虑安全;,临时变量不能赋初值。,Sciample Training - SIMATIC PCS7,29,2024/8/26,FC,设计实例,量程转换功能,引脚,变量声明,LAD,实现量程转换,在,OB1,中调用,2024/8/26,Sciample Training - SIMATIC PCS7,30,量程转换功能,从模拟量输入通道读到的是一个没有工程单位的数值,与输入信号的对应关系是:,0Kp,4mA,0,12Kp,20mA,27648,在程序中必须先对其做量程转换,之后才能得到实际的测量信号;,量程转换是一个最常用的功能,但必须经过多步运算才能实现,因而有必要将其编写成功能块。,2024/8/26,Sciample Training - SIMATIC PCS7,31,引脚,将一个,0,到,27648,的数值转换成从低量程(,0Kp,)到高量程(,12Kp,)之间的数值;,为了确保可以在程序中多次调用,需要将一些变量引出成为引脚;,要转换的数值应该是一个输入引脚;,高低量程根据不同的信号可能不同,应该设计成输入引脚;,量程转换的结果应该作为输出引脚。,2024/8/26,Sciample Training - SIMATIC PCS7,32,变量声明,其他数据只是在运算过程中使用,可以定义成临时变量。,引脚的数据类型:,输入:,SV:WORD; HLM:REAL; LLM:REAL;,输出:,PV:REAL,在量程转换功能中没有需要多个周期使用的数据,可以用,FC,实现。,将自定义量程转换功能定义成,FC1,。,2024/8/26,Sciample Training - SIMATIC PCS7,33,LAD,实现量程转换,FC1,2024/8/26,Sciample Training - SIMATIC PCS7,34,在,OB1,中调用,FC1,FC1,的引脚不能空置,连接变量的数据类型与声明的类型一致,Sciample Training - SIMATIC PCS7,35,2024/8/26,FB,设计实例,信号滤波功能,引脚,变量声明,LAD,实现信号滤波,FB1,在,CFC,中调用,FB1,2024/8/26,Sciample Training - SIMATIC PCS7,36,信号滤波功能,为了消除模拟量信号的高频噪声,在信号读入之后需要先经过滤波器;,根据要求不同可以选用多次滤波,如四次滤波;,在滤波器中,将连续对同一个信号采样,并将连续四次采样的平均值作为当前时刻的实际值输出;,滤波器可以用于各种模拟量信号,用功能块实现可以节约编程量。,2024/8/26,Sciample Training - SIMATIC PCS7,37,引脚,滤波器应该是一个单输入单输出的系统,输入端是一个任意的模拟量信号,输出是经过滤波之后的模拟量信号;,2024/8/26,Sciample Training - SIMATIC PCS7,38,变量声明,由于滤波算法中需要保存连续四次的采样值,并作平均运算,因而需要使用,FB,来实现;,可以将连续四次采样值保存在一个实型数组中,并且必须将其声明成静态类型(,STAT,);,在,FB,中输入输出和静态变量可以设置初值:,输入:,SV,:,REAL,;(初值为,0.0,),输出:,PV,:,REAL,;(初值为,0.0,),静态:,BUF,:,ARRAY1.4 OF REAL,;(,0.0,),其他变量可以声明成临时变量。,2024/8/26,Sciample Training - SIMATIC PCS7,39,LAD,实现信号滤波,FB1,2024/8/26,Sciample Training - SIMATIC PCS7,40,在,CFC,中调用,FB1,在,CFC,中连接块的引脚;,不必关心生成的背景数据块,编译时自动生成。,Sciample Training - SIMATIC PCS7,41,2024/8/26,SCL,编程简介,SCL,编程环境,SCL,程序结构,SCL,编程实例,2024/8/26,Sciample Training - SIMATIC PCS7,42,SCL,编程环境,2024/8/26,Sciample Training - SIMATIC PCS7,43,SCL,程序结构,主框架,声明生成块的名称和,FC,块返回值的类型,分隔程序的各个部分,属性声明,定制生成块的属性,变量声明,所有程序中使用的变量必须声明,程序体,执行算法程序,2024/8/26,Sciample Training - SIMATIC PCS7,44,SCL,编程实例,2024/8/26,Sciample Training - SIMATIC PCS7,45,总结与练习,
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 管理文书 > 施工组织


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!