Step 1:确定硬件

  • PLC:S7-1200
  • 报警按钮:I0.0
  • 报警灯:Q0.0

Step 2:确定程序流程

  • 当报警按钮I0.0=1时,报警灯Q0.0以亮0.5秒,灭0.5秒的频率闪烁
  • 一分钟后自动停止

Step 3:编写程序

VAR
    Start_Time : TIME := T#0S;   // 报警开始时间
    Elapsed_Time : TIME := T#0S; // 报警已经持续的时间
END_VAR

IF I0.0 THEN // 报警按钮按下
    IF Elapsed_Time < T#1M THEN // 报警持续时间不超过1分钟
        IF (TIME_TO_DINT(T#0S - Start_Time) MOD 1000) < 500 THEN // 亮0.5秒
            Q0.0 := TRUE;
        ELSE // 灭0.5秒
            Q0.0 := FALSE;
        END_IF
        Elapsed_Time := T#0S - Start_Time; // 计算报警已经持续的时间
    ELSE // 报警持续时间超过1分钟,停止报警
        Q0.0 := FALSE;
    END_IF
ELSE // 报警按钮未按下,停止报警
    Q0.0 := FALSE;
    Start_Time := T#0S;
    Elapsed_Time := T#0S;
END_IF

Step 4:测试程序

将程序下载到PLC中,按下报警按钮I0.0,报警灯Q0.0开始闪烁。一分钟后,报警灯Q0.0自动停止闪烁。


原文地址: https://www.cveoy.top/t/topic/bRp6 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录