导读:在自动化设备中通常会有气缸控制,那么如何编写1个可以多次调用的气缸报警程序呢?由于本程序是用西门子200SMART PLC编写,而西门子200SMART PLC带参数的子程序要多次调用的话,不能使用“沿脉冲”和“定时器”功能,那么有什么办法可以解决这个问题呢?通过本案例即可学到解决方法!1.控制要求: (1)当气缸没有动作时,在设定的时间内没有感应到原点传感器则报警输出 (2)当气缸动作时,在设定的时间内没有感应到动点传感器则报警输出 2.程序编写 (1)新建SBR28子程序,并且定义接口变量
(2)程序段1是沿脉冲生成。由于带参数的子程序不能使用上升沿指令,所以通过这个程序来生成沿脉冲。当气缸没有动作,气缸也没在原点位置,L21.2线圈接通,L21.3线圈也会接通,在下个扫描周期时断开L21.2线圈·,故让L21.2线圈输出1个扫描周期时间,生成了沿脉冲。L21.4线圈的动作也类似,在此不赘述。 (3)将触摸屏上设定的时间乘以1000,转换成毫秒单位。比如触摸屏上设置的是0.5秒,转换后就是500毫秒。 (4)程序段3是当L21.2接通时,通过BGN_ITIME来实现开始计时功能,计算的时间差值通过CAL_TIME指令读取出来,然后判断计算的时间是否大于设定的时间,如果大于则输出“原点报警”。 (5)程序段4是当气缸动作了,在设定的时间内气缸的动点传感器没有接收到信号,则“动点报警”输出。 (6)主程序中调用子程序,并且分配参数,调试。
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作! |