以下是几种常见PLC设置定时器监控通讯超时的方法: ### 西门子S7-1200/1500系列PLC - **使用TON定时器**:在编程软件中,如博图软件,找到“TON”定时器指令。创建一个新的定时器变量,例如“T_CommTimeout”,设置其预设时间值“PT”,该值应根据通讯的正常响应时间来确定,一般要略大于正常通讯所需的Zui长时间。在通讯指令发送后,使用一个上升沿触发信号来启动定时器“T_CommTimeout”,当定时器的当前时间“ET”达到预设时间“PT”时,定时器输出“Q”置位,表示通讯超时. - **使用系统时钟与比较指令**:利用PLC的系统时钟功能,读取当前系统时间并存储在一个变量中,如“t1”,在发送通讯指令时记录该时间。然后在程序中周期性地读取系统时间“t2”,并使用比较指令计算“t2 - t1”的时间差。当时间差大于设定的通讯超时时间时,判定为通讯超时。 ### 西门子S7-200系列PLC - **使用TONR定时器**:在STEP7-Micro/WIN编程软件中,选择“TONR”(保持型接通延时定时器)指令。为定时器分配一个地址,如T37等,并设置其预设值。在通讯发送指令的同时,使能定时器开始计时。当定时器的当前值达到预设值时,对应的常开触点闭合,可将此触点与一个报警输出线圈相连,触发通讯超时报警. - **使用计数器与定时器配合**:可以使用一个定时器和一个计数器配合来实现。定时器设定一个较短的时间间隔,如100ms,计数器则设置为通讯超时对应的计数值,例如通讯超时时间为5秒,则计数器预设值为50(5秒 / 100ms)。定时器每到设定时间就触发计数器计数一次,当计数器计数值达到预设值时,即表示通讯超时。 ### 三菱FX系列PLC - **使用T0-T199普通定时器**:在GX Works2等编程软件中,选择合适的普通定时器,如T0,设置其定时时间常数K值,该值根据通讯超时时间确定,假设通讯超时时间为3秒,定时器时基为100ms,则K值设为30。在通讯指令执行时,启动该定时器,当定时器计时到达设定值时,其常开触点闭合,可将此触点用于触发通讯超时的相关处理程序. - **使用M8013特殊辅助继电器配合计数器**:M8013是1秒脉冲的特殊辅助继电器。可以利用它来驱动一个计数器,如C0。当通讯指令发出时,计数器开始计数,若在规定的通讯时间内没有收到正确的响应,计数器计数值达到设定的通讯超时间隔对应的数值时,即判定为通讯超时 。 ### 欧姆龙PLC - **使用TIM定时器**:在CX-Programmer编程软件中,找到“TIM”定时器指令。定义一个定时器符号,如“TIM_CommTimeout”,设置其设定值SV,同样根据通讯正常响应时间来确定该值。在通讯相关操作的触发条件下启动该定时器,当定时器的当前值PV达到设定值SV时,定时器的完成标志位变为ON,可通过该标志位来判断通讯超时. - **使用间隔定时器STIM**:通过设置间隔定时器的时间间隔和计数次数来监控通讯超时。例如,设置时间间隔为1秒,计数次数为通讯超时时间对应的秒数。当通讯指令执行后启动间隔定时器,定时器每间隔1秒计数一次,当计数次数达到设定值时,即表示通讯超时 。