1.4.5 【实例1-4】故障警示灯闪烁模式变化
实例说明
采用S7-1200 CPU 1215C DC/DC/DC设计故障警示灯,共有3种模式:当仅有故障信号1出现时,警示灯为2s接通、2s断开的慢闪模式;当仅有故障信号2出现时,警示灯为0.5s接通、0.5s断开的快闪模式;当两个故障信号同时出现时,警示灯为2s接通、0.5s断开的闪烁模式,如图1-58所示。
图1-58 控制示意图
实施步骤
步骤1:电气接线与输入/输出定义
图1-59为电气原理图。表1-16为输入/输出定义。
图1-59 电气原理图
表1-16 输入/输出定义
步骤2:PLC编程
表1-17为变量定义,除了输入、输出,还增加了中间变量(对应M10.0)和定时变量1~6(对应定时变量M10.1~M10.6)。
表1-17 变量定义
图1-60为主程序,具体说明如下:
程序段1:将中间变量M10.0的常开触点和常闭触点并联,确保TONR定时器的IN始终为“1”。TONR定时器在定时2s后接通M10.1,并作为TON定时器的IN端延时2s。TON延时结束后,M10.2接通复位TONR定时器,此时TON定时器也随之复位。这样一来,M10.1就变成了2s接通、2s断开的方波脉冲信号,M10.2是4s接通一个扫描周期的脉冲信号。
程序段2和程序段3:参考程序段1,只需要修改TONR和TON的PT时间就能输出类似的0.5s接通、0.5s断开的M10.3信号,2s接通、0.5s断开的M10.5信号。
程序段4:将故障信号的3种组合与各自的脉冲信号M10.1、M10.3和M10.5串联后,输出到警示灯。
图1-60 【实例1-4】的主程序
图1-60 【实例1-4】的主程序(续)
图1-61为定时器调用的DB块,共有6个,即IEC_Timer_0_DB[DB1]等,与定时器一一对应。
图1-61 定时器调用的DB块
步骤3:在线监控
图1-62为程序编译、下载后程序段3的定时器实时监控,即TON定时器IN接通后,当前的延时时间为T#1S_111MS,也可以在DB6中实时读取。
小贴士
在报警指示中经常会碰到“闪烁”,虽然用TON、TONR等定时器即可完成,但更便捷的方式是采用博途软件自带的“系统和时钟存储器”实现。在图1-63中,选中“系统和时钟存储器”,单击右边窗口“启用系统存储器字节”的复选框和“启用时钟存储器字节”的复选框,采用默认的MB1、MB0作为系统存储器字节、时钟存储器字节,也可以修改地址。
(1)系统存储器位
将MB1设置为系统存储器字节后,该字节M1.0~M1.3的意义如下:
※ M1.0(FirstScan): 仅在进入RUN模式的首次扫描时为1状态,以后为0状态。
※ M1.1(DiagStatusUpdate): 诊断状态已更改。
※ M1.2(AlwaysTRUE): 总为1状态,常开触点总闭合或为高电平。在本实例中,M10.0常开和常闭的并联就是M1.2。
※ M1.3(AlwaysFALSE): 总为0状态,就是M1.2的取反。
图1-62 定时器实时监控
图1-63 “系统和时钟存储器”界面
(2)时钟存储器位
时钟存储器位是一个周期内0状态和1状态所占的时间各为50%的方波信号。以M0.5为例,其时钟脉冲的周期为1s,如果用它的触点来控制接在某输出点的指示灯,则指示灯将以1Hz的频率闪动,即亮0.5s、熄灭0.5s。
因为系统存储器和时钟存储器不是保留的存储器,所以用户程序或通信可能改写这些存储单元,破坏其中的数据。应避免改写这两个M字节,保证它们的功能正常运行。指定了系统存储器和时钟存储器字节后,这些字节就不能再作它用,否则将会使用户程序运行出错,甚至造成设备损坏或人身伤害。
本书从下一个实例开始,都默认使用系统存储器位和时钟存储器位,且地址为默认值MB1和MB0。