205.6顺序功能图语言S7Graph的应用5.6.1S7Graph语言概述S7Graph语言是S7-300/400的顺序功能图语言,遵从IEC61131-3标准的规定。1.顺序控制程序的结构一个顺序控制项目至少需要一个调用S7GraphFB的块,一个S7GraphFB和它的背景数据块。CALLFB1,DB1SQ_INIT:=OB/FB/FCFB1DB1S1T1S2T2顺序控制器永久性指令永久性指令S7Graph功能块FB1的背景数据块…图5-45顺序控制系统中的块21图5-46S7Graph编辑器步与转换跳步分支中止选择序列的分支选择序列的合并并行序列的分支并行序列的合并选择对象预选/直接插入监视时间T插入监视时间U插入永久条件插入动作插入永久性FB,FC调用插入顺序控制器“DragandDrop”模式时与鼠标一起移动的图形图5-49顺序控制器工具条与移动的图形3.S7Graph的显示模式在View菜单中选择显示顺序控制器(Sequencer)、单步和永久性指令。(1)在顺序控制器显示方式,执行菜单命令“ViewDisplaywith”,可以选择:Symbols:显示符号表中的符号地址;Comments:显示块和步的注释;22ConditionsandActions:显示转换条件和动作;SymbolList:在输入地址时显示下拉式符号地址表。(2)单步显示模式只显示一个步和转换的组合,还可以显示Supervision:监控被显示的步的条件;Interlock:对被显示的步互锁的条件;执行命令“ViewDisplaywithcomments”显示和编辑步的注释。用“↑”键或“↓”键可以显示上一个或下一个步与转换的组合。(3)在“permanentinstructions”(永久性指令)显示方式,可以对顺序控制器之前或之后的永久性指令编程。每个扫描循环执行一次永久性指令,可以调用块。停车RQ1.0Y0Y12号运输带1号运输带复位1号运输带2号运输带运行置位1号运输带延时5sM0.0M0.1M0.2M0.3SQ1.0Q1.1T0I1.1T1I1.0起动5s6sI1.0I1.1Q1.0Q1.1T0T11号运输带2号运输带图5-50运输带控制系统示意图与顺序功能图1.创建使用S7Graph语言的功能块FB执行菜单命令“Insert→Direct”将进入“Direct”编辑模式。执行菜单命令“Insert→Drag-and-Drop”,进入“DragandDrop(拖放)”编辑模式。执行菜单命令“View→Displaywith→ConditionsandActions”,显示或关闭各步的动作和转换条件。23图5-51运输带控制系统的顺序功能图(1)命令S;当步为活动步时,使输出置位为1状态并保持。(2)命令R:当步为活动步时,使输出复位为0状态并保持。(3)命令N:当步为活动步时,输出被置为1;该步变为不活动步时,输出被复位为0。(4)命令L:用来产生宽度受限的脉冲,相当于脉冲定时器。(5)命令CALL:用来调用块,当该步为活动步时,调用命令中指定的块。(6)命令D:使某一动作的执行延时,延时时间在该命令右下方的方框中设置。24在“直接”模式用鼠标右键点击动作框,在弹出的菜单中选择插入动作行。6.对监控功能编程双击步S3后,切换到单步视图,选中Supervision(监控)线圈左边的水平线的缺口处,插入比较器图标,设置的监视时间为2小时。8.在主程序中调用S7GraphFB9.用S7-PLCSIM仿真软件调试S7Graph程序图5-52单步显示模式中的监控与互锁条件5.6.3顺序控制器的运行模式与监控操作执行菜单命令“Debug→ControlSequencer”,对顺序控制器进行各种监控操作。25图5-54顺序控制器监控对话框1.自动模式“Acknowledge”按钮确认被挂起的错误信息。点击“初始化(Initialize)”按钮,将重新起动顺序控制器,使之返回初始步。点击“禁止(Disable)”按钮,使顺序控制器中所有的步变为不活动步。2.手动模式选择“Manual”模式后,用“Disable”按钮关闭当前的活动步。在“StepNumber”输入框中输入希望控制的步的编号,用激活(Activate)按钮或去活(Unactivate)按钮来使该步变为活动步或不活动步。同时只能有1步是活动步。3.单步(Inching)模式26在单步模式转换条件满足时,需要点击“Continue”按钮,才能使转换到下一步。4.Automaticorswitchtonext模式转换条件未满足,用“Continue”按钮也能转换到后续步。转换条件满足将自动转换。5.错误显示有互锁(Interlock)错误或监控(Supervision)错误时,相应的检查框为红色。275.6.4顺序控制器中的动作1.标准动作中的命令:S,R,N,L,D,CALL标准动作可以设置互锁(在命令的后面加“C”),仅在步处于活动状态和互锁条件满足时,有互锁的动作才被执行。没有互锁的动作在步处于活动状态时就会被执行。282.与事件有关的动作V1V0L1L0A1=1S1S0步监控信号互锁信号信息确认信号A1:R1:记录信号被置位图5-55控制动作的事件表5-2控制动作的事件名称事件意义S1步变为活动步S0步变为不活动步V1发生监控错误(有干扰)V0监控错误消失(无干扰)L1互锁条件解除L0互锁条件变为1A1报文被确认R1注册信号被置位,在输入信号REG_EF/REG_S的上升沿ON命令或OFF命令分别使命令所在的步之外的其他步变为活动步或不活动步。如果命令OFF的地址标识符为S_ALL,将除了命令“S1(V1,L1)OFF”所在的步之外其他的步变为不活动步。S1RCV1OFFL0CALLStep3S3Step3Q2.1S_ALLFB2图5-56步与动作S0ONS729一旦S3变为活动步和互锁条件满足,指令“S1RC”使输出Q2.1复位为0并保持为0。一旦监控错误发生(出现V1事件),除了动作中的命令“V1OFF”所在的步S3,其他的活动步变为不活动步。S3变为不活动步时(出现事件S0),将步S7变为活动步。只要互锁条件满足(出现L0事件),就调用指定的功能块FB2。4.动作中的计数器有互锁功能的计数器在互锁条件满足和指定的事件出现时,动作中的计数器才会计数。事件发生时,计数器指令CS将初值装入计数器。CS指令下面一行是要装入的初值。事件发生时,CU,CD,CR指令使计数值分别加1、减1或将计数值复位为0。5.动作中的定时器事件出现时定时器被执行。互锁功能也可以用于定时器。TL为扩展的脉冲定时器命令,一旦事件发生,定时器被起动。TD命令用来实现定时器位有闭锁功能的延迟。一旦事件发生,定时器被起动。互锁条件C仅仅在定时器被起动的那一时刻起作用。S1CUS1NStep4S4Step4C4A:=A+1图5-57步与动作S1TDT3S5T#4S(4)TR是复位定时器命令,一旦事件发生,定时器位与定时值被复位为0。30当图5-57中的步S4变为活动步,事件S1使计数器C4的值加1。C4可以用来计步S4变为活动步的次数。只要步S4变为活动步,事件S1使A的值加1。S4变为活动步后,T3开始定时,4s后T3的定时器位变为1状态。5.动作中的算术运算在动作中可以使用:A:=B;A:=函数(B);A:=B运算符号C。A:=函数(B);5.6.5顺序控制器中的条件1.转换条件2.互锁条件:如果互锁条件的逻辑满足,执行受互锁控制的动作。3.监控条件:如果监控条件的逻辑运算满足,表示有干扰事件V1发生。顺序控制器不会转换到下一步,保持当前步为活动步。如果监控条件的逻辑运算不满足,表示没有干扰,如果转换条件满足,转换到下一步。只有活动步被监控。4.S7Graph地址在条件中的应用可以在转换、监控、互锁、动作和永久性的指令中,以地址的方式使用关于步的系统信息)。表5-3S7Graph地址地址意义应用于Si.T步i当前或前一次处于活动状态的时间比较器,设置Si.U步i处于活动状态的总时间,不包括干扰时间比较器,设置Si.X指示步i是否是活动的常开触点、常闭触点Transi.TT检查转换i所有的条件是否满足常开触点、常闭触点表5-4FB的参数集31名称任务Minimum最小参数集,只用于自动模式,不需要其他控制和监视功能Standard标准参数集,有多种操作方式,需要反馈信息,可选择确认报文Definable/Maximum(V5)可定义最大参数集,需要更多的操作员控制和用于服务和调试的监视功能,它们由V5的块提供5.6.7用S7Graph编写具有多种工作方式的控制程序1.初始化程序、手动程序与自动回原点程序OB100中的初始化程序与5.5节中的图5-37完全相同。手动程序FC2与5.5节中的图5-39完全相同。自动返回原点的梯形图程序FC3与5.5节图5-42(b)中的相同。图5-61主程序OB1S7GraphFB的参数有好几十个,图5-61中的FB1使用的是标准参32数级,下面介绍图中使用的参数:连续、单周期或单步时“自动方式”M0.3为1,调用FB1。参数INIT_SQ(“自动允许”M0.0)为1:原点条件满足,激活初始步,复位顺序控制器。参数OFF_SQ为1(“自动允许”M0.0=0):复位顺序控制器,所有的步变为不活动步。参数ACK_EF(“确认故障”I1.3)为1:确认错误和故障,强制切换到下一步。参数SW_AUTO(“单周连续”M0.2)为1:切换到自动模式。参数SW_TAP(“单步”I2.2)为1:切换到Inching(单步)模式。参数T_PUSH(“起动按钮”I2.6):条件满足并且在T_PUSH的上升沿时,转换实现。参数ERR_FLT(“错误报警”Q4.5)为1:组故障。表5-9符号表符号地址符号地址符号地址自动数据块DB1松开按钮I0.7单步I2.2下限位I0.1下降按钮I1.0单周期I2.3上限位I0.2右行按钮I1.1连续I2.4右限位I0.3夹紧按钮I1.2起动按钮I2.6左限位I0.4确认故障I1.3停止按钮I2.7上升按钮I0.5手动I2.0自动允许M0.0左行按钮I0.6回原点I2.1单周连续M0.2符号地址符号地址自动方式M0.3下降阀Q4.0原点条件M0.5夹紧阀Q4.1转换允许M0.6上升阀Q4.2连续标志M0.7右行阀Q4.3回原点上升M1.0左行阀Q4.4回原点左行M1.1错误报警Q4.533夹紧延时M1.234图5-62公用程序连续标志M0.7的控制电路放在FB1的顺序控制器之前的永久性指令中。图5-63顺序控制器之前的永久性指令2.初始化程序、手动程序与自动回原点程序OB100中的初始化程序与5.5节中的图5-37完全相同。手动程序FC2与5.5节中的图5-39完全相同。自动返回原点的梯形图程序FC3与5.5节图5-42(b)中的相同。3536FB1是自动程序(单步、单周期、连续)。单步I2.2=SW_TAP=1时有单步功能。单周连续M0.2=SW_AUTO=1时顺序控制器正常运行。在顺序控制器中,用永久性指令中的M0.7(连续标志)区分单周期和连续模式。