- PLC编程及案例手册
- 刘振全 王汉芝编著
- 2480字
- 2021-12-24 18:21:27
4.13 程序控制类指令
4.13.1 循环控制指令
(1)循环控制指令格式和功能
循环控制指令格式和功能如表4-74所示。
表4-74 循环控制指令格式和功能
(2)例说循环指令
在循环指令中FOR和NEXT指令必须成对使用,FOR和NEXT可以嵌套,每一对FOR和NEXT指令构成一层循环,最多能嵌套8层。梯形图如图4-93所示。
图4-93 梯形图
① 首先将VW0的数清零。
② 本程序嵌套内外两个循环,外循环每执行1次,内循环执行5次,内循环每执行一次,VW0的数值加1。所以,外循环每执行1次,VW0的数值加5。
③ 外循环共执行10次,所以,内外循环执行结束时,VW0的数据为50。
④ 在第一个扫描周期,将VW0的数值存入VW2中。
4.13.2 跳转/标号指令
(1)跳转/标号指令格式和功能
跳转/标号指令格式和功能如表4-75所示。
表4-75 跳转/标号指令格式和功能
(2)使用说明
① 跳转/标号指令必须匹配使用,而且只能使用在同一程序块中,如主程序、同一子程序或同一中断程序,不能在不同的程序块中互相跳转。可以有多条跳转指令使用同一标号,但不允许一个跳转指令对应两个标号的情况,即在同一程序中不允许存在两个相同的标号。
② 执行跳转后,被跳过程序段中的各寄存器的状态会有所不同。
a. Q、M、S、C等元器件的位保持跳转前的状态。
b.计数器C停止计数,当前值存储器保持跳转前的计数值。
c.对于定时器来说,因刷新方式不同而工作状态不同。在跳转期间,分辨率为1ms和10ms的定时器会一直保持跳转前的工作状态,原来工作的继续工作,到预置值后,其位的状态也会改变,输出触点动作,其当前值存储器一直累计到最大值32767才停止;对于分辨率为100ms的定时器来说,跳转期间停止工作,但不会复位,存储器里的值为跳转时的值,跳转结束后,若输入条件允许,可继续计时,但已失去了准确值的意义。所以在跳转段里的定时器要慎用。
(3)例说跳转/标号指令
如图4-94所示。
图4-94 梯形图
① 第一个扫描周期,MB0为0,则M0.0=0,不满足跳转条件,执行MB0加1,使M0.0=1,从而使Q0.0得电。
② 第二个扫描周期,由于M0.0=1,执行跳转指令JMP,则跳过INC指令,跳到LBL为1的程序段执行,M0.0=1,故Q0.0保持得电状态。
4.13.3 顺控继电器指令
(1)顺控继电器指令格式和功能
顺控继电器指令格式和功能如表4-76所示。
表4-76 顺控继电器指令格式和功能
(2)例说顺控继电器指令
编程实现:有三台电动机,电动机1运行10s后停止,电动机2开始运行,10s后停止,电动机3开始运行,10s后停止,电动机2开始运行,以后电动机2和电动机3交替运行。
如图4-95所示。
图4-95 控制程序
① 第一个扫描周期,初始化复位,将S0.0置1。
② 进入顺控程序段S0.0执行,Q0.0得电,T37开始计时。
③ T37计时10s后,转到顺控程序段S0.1执行,Q0.1得电,T38开始计时。
④ T38计时10s后,转到顺控程序段S0.2执行,Q0.2得电,T39开始计时。
⑤ T39计时10s后,转到顺控程序段S0.1执行,Q0.1得电,T38开始计时。
⑥ 如此循环。
⑦ 按下停止按钮I0.1,停止运行。
4.13.4 看门狗定时复位指令
看门狗定时复位指令格式和功能如表4-77所示。
表4-77 看门狗定时复位指令格式和功能
4.13.5 综合实例
综合实例1——加热反应炉
范例示意如图4-96所示。
图4-96 范例示意
按启动按钮后,系统运行;按停止按钮后,系统停止。系统会自动完成送料、加热、泄放过程。
元件说明见表4-78。
表4-78 元件说明
控制程序如图4-97所示。
图4-97
图4-97 控制程序
(1)第一阶段:送料控制
① 检测上液面传感器I0.2、炉内温度传感器I0.1、炉内压力传感器I0.3均小于给定值,即为OFF状态。
② 按下启动按钮,I0.4得电,Q0.0得电,Q0.1得电,排气阀、进料阀开启。
③ 当液位上升到高液位时,I0.2得电,定时器T37开始定时,Q0.0失电,Q0.1失电,排气阀、进料阀被关闭。
④ 延时10s,T37计时到位,Q0.2得电,氮气阀开启,炉内压力上升。
⑤ 当压力上升到给定值时,压力传感器I0.3得电,氮气阀关闭。送料过程结束。
(2)第二阶段:加热反应控制
① 压力传感器I0.3为得电状态,Q0.4得电,接通加热炉电阻丝。
② 当温度升到给定值时,,炉内温度达到上限,I0.1得电,Q0.4失电,停止加热,定时器T38开始定时。
(3)第三阶段:泄放过程
延时10s,T38得电常开触点闭合,Q0.0得电,排气阀打开,炉内压力下降到给定值时,I0.3失电,Q0.3得电,泄放阀打开,当炉内液体降到低液位以下,I0.0失电,Q0.0失电,排气阀关闭,Q0.3失电,泄放阀关闭,系统恢复到原始状态,准备进入下一循环。
如发生紧急情况,按下停止按钮,I0.5得电,系统即刻停止。
综合实例2——气囊硫化机
气囊硫化机是橡胶硫化的新工艺,硫化机主要用于周长在1200mm以下的圆模V带的硫化。硫化机结构包括缸门、锁紧环、模具、胶带、胶套和缸体及外压气进出口和内压气进出口。
装在圆模上的半成品套上胶套后装入缸内,闭合缸门并使之转过一个角度(合齿),然后依次通入外压蒸气。由于外压蒸气压力高于内压蒸气,在压差作用下胶套对半成品进行加压硫化,硫化时间根据胶带的型号调整。硫化后,按以上相反的程序动作取出产品,结束一次硫化周期。
元件说明见表4-79。
表4-79 元件说明
控制程序如图4-98所示。
图4-98 控制程序
① SM0.1在PLC为RUN的第一次扫描时为ON,使S0.0置位,顺序控制继电器SCR段S0.0执行。按下启动按钮,I0.2得电,转到S0.1段程序。
② Q0.0和Q0.3得电,执行关门动作,并进行合齿。当关门到位碰到行程开关I0.0时,I0.0得电,程序转入S0.2段。
③ Q0.4得电,进外压蒸气,同时T37开始计时,计时到达60s后程序转到S0.3段。
④ Q0.5被置位,开始进内压蒸气,同时T38开始计时,计时到达120s后程序转到S0.4段。
⑤ 指示灯亮,定时器T39开始计时,计时到达30s后程序转到S0.5段。
⑥ Q0.4、Q0.5被复位,停止进内、外压蒸气;同时Q0.6得电,排气阀被打开。当气压下降到设定值以下时,I0.3失电,程序转到S0.6段。
⑦ 定时器T40开始计时,计时到达120s后程序转到S0.7段。
⑧ Q0.1和Q0.2得电,机床开门动作并进行分齿,当机床门打开后,开门到位行程开关I0.1得电,程序转到S0.0段。再次按下启动按钮I0.2,可进行下一次循环。
综合实例3——原理说明
本案例属于原理说明,介绍PLC编程中会用到的程序控制指令,帮助读者学会简单运用这类指令。
元件说明见表4-80。
表4-80 元件说明
控制程序如图4-99所示。
图4-99 控制程序
① 在这个程序中,按下故障按钮I0.0、PLC系统出现I/O故障或PLC监测到系统程序出了问题都会执行STOP指令。
② 为使PLC正常运行,可执行看门狗复位指令重新触发系统监视定时器(WDT)。
③ 若不希望运行某一部分程序,可在这段程序之前加上END指令。按下按钮I0.1,PLC返回程序起点重新执行。