西门子S7-200SMART模块河南代理商
TOF为“关断延时”定时器指令。该指令有IN、PT、ET和Q等参数,当输入IN的逻辑运算结果( RLO)从“0”变为“1”(信号上升沿)时,输出Q变为“1”;当输入IN处的信号状态变回“0”时,开始计时,计时时间由预设时间参数PT设定;当计时时间到达后,输出Q变为“0”。如果输入IN的信号状态在计时结束之前再次变为“1”,则复位定时器,而输出Q的信号状态仍将为“1”。
可以在ET输出查询当前的时间值。时间值从T#0s开始,达到PT时间值时结束。当持续时间PT计时结束后,在输入IN变回“1”之前,ET输出仍保持置位为当前值。在持续时间PT计时结束之前,如果输入IN的信号状态切换为“1”,则将ET输出复位为值T#0s。
“关断延时”定时器指令的时序图如图5-74所示。
每次调用“关断延时”指令,必须将其分配给存储指令数据的IEC定时器。只有在调用指令且每次都会访问输出Q或ET时,才更新指令数据。
在自动灌装生产线手动模式控制中,为防止电动机正、反转频繁切换造成负载变化太大,电动机正、反向切换之间要有时间限制,切换时间间隔要在2s以上。即点动电动机正转停下来2s后点动反转才有效;点动电动机反转停下来2s后点动正转才有效。对于这项控制功能,可以使用“关断延时”定时器指令。
TON指令为“接通延时”定时器指令。该指令有IN、PT、ET和Q等参数,当输人参数IN的逻辑运算结果(RLO)从“0”变为“1”(信号上升沿)时,启动该指令,开始计时,计时的时间由预设时间参数PT设定,当计时时间到达后,输出Q的信号状态为“1”。
此时,只要输入参数IN仍为“1”,输出Q就保持为“1”,直到输入参数IN的信号状态从“1”变为“0”时,将复位输出Q。当输入参数IN检测到新的信号上升沿时,该定时器功能将再次启动。
可以在输出参数ET处查询到当前时间值,该时间值从T#0s开始,在达到持续时间PT后保持不变。只要输入IN的信号状态变为“0”,输出ET就复位。
每次调用“接通延时”指令,必须将其分配给存储指令数据的IEC定时器。只有在调用指令且每次都会访问输出Q或ET时,才更新指令数据。
灌装功能也可以使用“接通延时”指令实现,对应程序如图5-73所示。由于“接通延时”定时器定时期间,指令前的条件如果变为“0”,则定时器立即复位,故不需要使用“复位定时器”指令完善灌装功能。
TP指令为“生成脉冲”指令,可以输出一个脉冲,脉宽由预设时间决定。该指令有IN、PT、ET和Q等参数,当输人参数IN的逻辑运算结果(RLO)从“0”变为“1”(信号上升沿)时,启动该指令,开始计时,计时的时间由预设时间参数PT设定,同时输出参数Q的状态在预设时间内保持为1,即Q输出一个宽度为预设时间PT的脉冲。在计时时间内,即使检测到RLO新的信号上升沿,输出Q的信号状态也不会受到影响。
可以在输出参数ET处查询到当前时间值,该时间值从T#0s开始,在达到持续时间PT后保持不变。如果达到已组态的持续时间PT,并且输入IN的信号状态为“0”,则输出ET将复位为0。
每次调用“生成脉冲”指令,都必须为其分配一个IEC定时器用以存储该指令的数据。只有在调用指令且每次都会访问输出Q或ET时,才更新指令数据。
例如,对于自动灌装生产线实现灌装功能,控制任务要求:生产线运行后,灌装位置接近开关检测到有瓶子,灌装阀门打开,开始灌装;灌装5s后,认为瓶子灌满,灌装阀门关闭。使用“生成脉冲”指令实现该功能的程序如图5-71所示,其中DB2(符号为IEC_Timer_1_DB)是用户指定的存储该IEC定时器的数据块。
图5-71 使用“生成脉冲”指令实现灌装功能
IEC定时器是一个具有特殊数据类型(IEC_TIMER、IEC _LTIMER、TP_TIME或TP_LTIME)的结构,可声明为一个系统数据类型为IEC_TIMER或IEC_LTIMER的数据块或声明为块中“Static”部分的TP_TIME、TP_LTIME、IEC_TIMER或IEC_LTIMER类型的局部变量。
在程序中插入该指令时,将打开“调用选项”( Call options)对话框,可以指定IEC定时器将存储在自身数据块中(单个背景)或者作为局部变量存储在块接口中(多重背景),“调用选项”对话框如图5-68所示。
图5-68 IEC定时器指令的“调用选项”(Call options)对话框
若指定一个新的单个数据块,如图5-68中的“IEC_Timer_0_DB”,则该数据块将保存到项目树“程序块”( Program blocks)→“系统块”(System blocks)路径中的“程序资源”( Program resources)文件夹内。
IEC定时器指令的梯形图形式如图5-69所示。
图5-69 IEC定时器指令的梯形图形式
a) TP指令b)TON指令c)TOF指令d)TONR指令
SIMATIC定时器也有直接启动的指令形式,其梯形图指令如图5-67所示。
图5-67 SIMATIC直接启动定时器指令
a) S_PULSE直接启动;b)S_PEXT直接启动;c)S_ODT直接启动;
d) S_ODTS直接启动;e)S_OFFDT直接启动
SIMATIC直接启动定时器指令比SIMATIC定时器指令少了定时器复位端R、剩余时间常数值输出端BI和BCD以及定时器状态输出端Q。可以通过触点指令查询定时器输出端Q的信号状态,通过复位输出指令实现定时器复位,通过“L”指令查询定时器二进制编码格式的当前时间值,通过“LC”指令查询定时器BCD编码格式的当前时间值。
S_OFFDT定时器指令名称为“分配参数并启动关断延时定时器”,指令功能与TOF指令类同,实现当条件S从“0”变为“1”后使Q输出为“1”,当S从“1”变为“0”后开始计时,时间达到后复位Q输出。如果定时器运行期间输入S的信号状态从“0”变为“1”,定时器将停止,只有在检测到输入S的信号下降沿后,才会重新启动定时器。当复位输入端R的信号状态变为“1”时,将复位定时器的当前值和输出Q的信号状态。
S_OFFDT定时器的时序图如图5-65所示。
图5-65 S_OFFDT定时器的时序图
对于自动灌装生产线中电动机正、反转切换时间间隔要在2s以上的控制功能,若使用S_OFFDT定时器指令。
不管是IEC定时器还是SIMATIC定时器,在使用时,如果定时时间不是固定值,需要根据控制要求输入不同的值,那么可先将不同的时间值写入存储器(通过指令或上位监控设备),然后再以存储器的方式赋值给定时器预设时间。
西门子S7-200SMART模块河南代理商