《第8讲 PCS7-CFC编程(技术讲解)》由会员分享,可在线阅读,更多相关《第8讲 PCS7-CFC编程(技术讲解)(65页珍藏版)》请在金锄头文库上搜索。
1、培训资料,名称:第八讲PCS7-CFC编程(技术讲解) 所属班组:xx 汇报人:xx,内 容,CFC简介 CFC编程环境 CFC编程步骤 CFC技术块 CFC编程实例,CFC 简介,CFC是连续控制图,为英文单词Continuous Function Chart的缩写。 CFC是基于图形用户界面的编辑器,它通过给预先编辑好的块指定参数或者建立连接,从而实现创建CPU程序结构。,CFC的编程环境(1),CFC的编程环境(2),打开CFC块,缺省只有一个级,可以通过添加达到26个级,分别以英文字母A-Z表示,在每个级中又分6页 右边为库,包括西门子自身提供的和用户预先编写好的块,对于熟悉块名称的用
2、户可以在右下角直接输入块名搜索到你需要使用的块,CFC的编程环境(3),快捷键部分: 通过该上下选择,可以切换当前浏览的页面 切换到所有页面总览模式 切换到具体某一页面浏览模式,CFC的编程环境(4),快捷键部分: 运行顺序,确定程序结构,CFC的编程环境(5),快捷键部分: 编译 下载 测试模式 CFC块交叉索引,CFC的编程环境(6),快捷键部分: 定义CFC块的接口,用于实现在CFC中调用 另一个预先编好的CFC块 实现步骤(1)创建一个CFC块,定义好接口,用于在另外的CFC块中调用 (2)打开一个新的CFC块,从库的 Charts目录中选择预先编好的CFC块,拖到程序中即可,CFC的
3、编程环境(7),CFC编程步骤: 组态 编译 下载 测试 (1)组态:从主数据库中把需要用到的块拖到相应的程序区域中,修改参数值,连接相应块的输入输出接口。,CFC的编程环境(8),(2)编译:,CFC的编程环境(9),Generate module drivers,生成模块驱动 Update sampling time,系统可以在编译之前,检查并查找相关块所安装的OB,并在输入端“SAMPLE_T”(相当于块的采样时间)进行相应的输入 Delete empty run-time groups,删除存在于S7程序中的空运行时间功能块组,CFC的编程环境(10),(3)下载,把用户组态的工程下载
4、到相应的PLC中 (4)测试 选择菜单命令DebugTest Mode,激活测试模式 选择菜单命令DebugWatch On,所有在块属性中以测试模式激活的块I/O以黄色背景显示,CFC技术块,驱动技术块 控制技术块 转换技术块 数学运算技术块 操作技术块 信息技术块,1、驱动技术块1,(1)CH_AI:FC275 实现功能:模拟量输入信号处理 MODE:CFC块编译时选择“产生模块驱动”,系统自动连接到MOD块 VALUE:模拟量输入信号 VHRANGE、VLRANGE:定义模拟量输入信号的码值线性转换后的量程 SIM_ON为真值时,输出由仿真值SIM_V给出 SUBS_ON为真值时,输出由
5、替换值SUBS_V给出,1、驱动技术块2,V:输出值 QUALITY:质量代码,具体有以下几种形式 16#80 有效值 16#60 仿真值 16#44 上一个有效值 16#48 替换值 16#00 无效值,1、驱动技术块3,(2)CH_AO:FC276 实现功能:模拟量输出信号处理 MODE:CFC块编译时选择“产生模块驱动”,系统自动连接到MOD块 SIM_ON为真值时,输出VALUE由仿真值SIM_U给出;为假值时,由U给出 UHRANGE、ULRANGE定义量程内的数转换回码值的量程,1、驱动技术块4,(3)CH_DI:FC277 CH_DO:FC278 实现功能:开关量输入输出信号处理
6、 MODE:CFC块编译时选择“产生模块驱动”,系统自动连接到MOD块 SIM_ON为真值时,由仿真值SIM_I给出到块输出;为假值时,分别由块输入VALUE、I给出到块输出 SUBS_ON为真值时,由替换值SUBS_I给出到块输出,2、控制技术块1,(1)常规PID控制块 CTRL_PID:FB61 适用场合: 固定设定值控制 串级控制 比例控制 比值控制,2、控制技术块2,控制块本身可以实现的功能 模式:手动、自动、跟踪 判断过程值状态并且生成相应信息 抑制扰动 设定值跟踪 输入值、设定值、输出值的设限 死区 比例、积分、微分根据需要激活,2、控制技术块3,控制块工作原理:,2、控制技术块
7、4,CTRL_PID技术块图解1,2、控制技术块5,该图解释了SP值的产生 1、 2、图中U_HL、U_LL和SPEXTHLM、SPEXTLLM分别起到在不同情况下给出SP值的限幅作用,2、控制技术块6,CTRL_PID技术块图解2,2、控制技术块7,CTRL_PID技术块图解3,2、控制技术块8,以上两幅图解释了块输出LMN的产生 从OS站可以更改块的运行模式(AUTO_ON_OP值1为自动,0为手动) 在手动模式下,输出由MAN_OP决定(要求允许手动输入MAN_OP_EN为1,且MAN_OP在上下限MAN_HLM、 MAN_LLM之间) 在自动模式下,输出通过PID计算给出(其中PV_I
8、N为反馈,GAIN为比例,TN为积分,TV为微分),2、控制技术块9,调节方向由比例系数正负值决定 在跟踪模式下,LMN和LMN_TRK相连,以避免手自动切换产生异常波动,不利于生产工况。 串级系统中,主回路输出LMN应连接到副回路输入SP_EXT;考虑到两个回路在断开和建立串级之间的切换产生波动,主回路跟踪输入LMN_TRK应连接到副回路的SP 需要考虑内外部给出设定值SP之间的无扰动切换,由管角SP_TRK_ON决定,2019/11/28,Sciample Training - SIMATIC PCS7,28,2、控制技术块10,(2)MEAS_MON:FB65 实现功能:监控一个模拟量,
9、含有上下限报警和警告 U为监控的模拟量 U_AH、U_AL为报警的上下限值,U_WH、U_WL为警告的上下限值;QH_ALM、QL_ALM、QH_WRN、QL_WRN分别对应上下限报警或警告的给出,2019/11/28,Sciample Training - SIMATIC PCS7,29,2、控制技术块11,(3)MOT_REV :FB67 实现功能:用于控制双向运转电机 模式切换:从OS站对管角AUT_ON_OP进行修改,可以切换运行模式,1为自动,0为手动;可以由QMAN_AUT验证 在FW_OP_EN,RV_OP_EN,OFFOP_EN允许情况下(1为允许,0为禁止),决定正转、反转以
10、及停止分别由FORW_ON、MOT_OFF和REV_ON决定;正转、反转或停止只能有一种成立,建议电气上也应实现互锁,2019/11/28,Sciample Training - SIMATIC PCS7,30,2、控制技术块12,模块提供可监视电机运行停止时间,在管角MONITOR为1的情况下,由TIME_ON和TIME_OFF可知道当前电机运行、停止的时间 错误复位由管角RESET决定 START_OFF决定CPU切换到运行时电机的状态;1为电机停止,0为保持上一个运行状态,2019/11/28,Sciample Training - SIMATIC PCS7,31,2、控制技术块13,(
11、4)MOT_SPED :FB68 实现功能:用于控制单向运转,有快速和慢速运行之分的电机 基本解释见MOT_REV SP1_ON, SP2_ON,MOT_OFF决定电机快速运行、慢速运行和停止;三个只能一个有效。,2、控制技术块14,(5)MOTOR :FB66 实现功能:用于控制电机,电机运行状态可选择监视 模式切换:从OS站对管角AUT_ON_OP进行修改,可以切换运行模式,1为自动,0为手动;可以由QMAN_AUT验证 LOCK和LOCK_ON决定电机立即运行或停止,优先级最高,其中LOCK让电机立即停止,在LOCK为0时, LOCK_ON让电机立即运行 FB_ON为电机反馈状态,2、控
12、制技术块15,(6)VALVE :FB73 实现功能:用于控制阀的启停 模式切换:从OS站对管角AUT_ON_OP进行修改,可以切换运行模式,1为自动,0为手动;可以由QMAN_AUT验证 VL_OPEN和VL_CLOSE在V_LOCK为0的情况下决定阀的开或关,同时VL_CLOSE锁定VL_OPEN,即二者都为1时阀关闭; V_LOCK为1时阀立即关闭,2、控制技术块16,VALVE :FB73 FB_CLOSE和FB_OPEN对应阀的开关反馈信号,对于单反馈或没有反馈的阀可以只连接一个管角或不连,2、控制技术块17,(7)INTERLOCK :FB75 实现功能:开关量的逻辑运算 输入信号
13、最多为10个,分成两组I1_15, I2_15 当NEG1_15和NEG2_15中任意某一个为1时,相应的输入信号取反再进行逻辑运算 当NEGRES_1或NEGRES_2为1时,表示对第一组或第二组信号的结果取反再进行逻辑运算 AND_OR13,为1时进行逻辑与运算,为0时进行逻辑或运算; AND_OR1 2表示对第一组或第二组进行逻辑运算性质,AND_OR3表示对两组信号逻辑运算结果再运算的性质,2、控制技术块18,INTERLOCK :FB75 Q1、Q2分别表示第一组、第二组信号的逻辑运算结果;Q3表示总逻辑运算结果,3、转换技术块,R_TO_DW :FC282 实现功能:浮点数转换为双
14、字 浮点数应该在0.0和4294967000.0之间 当浮点数超上限或低下限时,ENO=0,并且相应输出为上限值4294967000或下限值0,4、数学运算技术块1,(1)ADD4_P :FC256 实现功能:4个浮点数求和 V=U1+U2+U3+U4 Un(n=4)缺省为0 (2)ADD8_P :FC257 实现功能:8个浮点数求和 V=U1+U2+Un(n=8) Un(n=8)缺省为0,4、数学运算技术块2,(3)MUL4_P :FC262 实现功能:4个浮点数求积 V=U1*U2*U3*U4 Un(n=4)缺省为1 (4)MUL8_P :FC263 实现功能:8个浮点数求积 V=U1*U
15、2*Un(n=8) Un(n=8)缺省为1,2019/11/28,Sciample Training - SIMATIC PCS7,40,4、数学运算技术块3,(5)AVER_P :FB34 实现功能:计算某一个参数在一定时间内的平均值 RUN由0变为1的一次跳变时,该块开始执行;RUN为0时,该块停止执行。 V=(N*Valt+U)/(N+1) 其中Valt为上一次的V值。,2019/11/28,Sciample Training - SIMATIC PCS7,41,4、数学运算技术块4,(6)COUNT_P :FB36 实现功能:捕捉某一开关量信号的上升沿,进行计 数。 MODE为0时,正
16、向计数; MODE为1时,负向计数 计数结果V达到上限V_HL或下限V_LL时,停止计数,分别给出QVHL、QVLL高电平 RESET=1,MODE=0则V=V_LL,QVLL=1,QVHL=0 MODE=0则V=V_HL,QVLL=0,QVHL=1,2019/11/28,Sciample Training - SIMATIC PCS7,42,5、操作技术块1,(1)OP_A:FB45 实现功能:简单操作控制一个模拟量输出 U由操作员从OS站给出 当LINK_ON=1时,内部值LINK_U传送给V; 当LINK_ON=0时,U传送给V 当LINK_ON=1时,BTRACK=1,U跟踪LINK_U,从而保证LINK_ON切换为0时,输出V不至于产生突然的跳变; BTRACK=0,则LINK_ON切换为0时,输出V保持最近的U值,5、操作技术块2,(2)OP_A_LIM:FB46 实现功能:操作控制一个模拟量输出 基本解释同OP_A 当OP_EN=1时,U可以从OS站给出,否则U锁定 当LIN