设计需求
使用西门子 TIA Portal SCL 语言设计一个双手安全冲压机系统,该系统通过双手控制来操作冲压机,其目的是确保操作员必须同时使用双手才能启动冲压机,从而最大限度降低工伤事故的风险。
功能设计
初始化:
-
PLC 以待机模式启动。
-
只有同时按下两个安全按钮,冲压机才能启动。
双手安全逻辑:
-
必须同时按下左右两个安全按钮。
-
如果只按下一个按钮,冲压机不会启动。
-
按下两个按钮后,冲压机将启动并保持 8 秒钟,然后恢复到初始状态。
操作终止:
-
如果松开任一按钮,压力机将立即停止。
-
系统将统计已完成的冲压次数。
-
系统返回待机模式,等待再次按下两个按钮。
程序设计
添加一个 FB,命名为:TwoHandBtn。
定义接口变量:
编写程序代码:
第一段,系统启动运行,停止按钮优先,当按下停止按钮时将初始化左右两个启动按钮的初始状态。
第二段,右手按钮状态判断,通过一个中间计数器变量记录右手按钮的按下或释放状态。
第三段,左手按钮状态判断,通过一个中间计数器变量记录左手按钮的按下或释放状态。
第四段,冲压机启停控制,当系统处于运行状态且右手按钮和左手按钮同时按下时启动冲压机,当时间定时器时间到达后停止冲压机。
第五段,冲压计数,当冲压时间到达且冲压机停机后,进行计数,计数值可以被复位。
第六段,特定变量值输出。
实参数据块设计
添加一个全局 DB 数据块,命名为:GdbData。
添加如下变量:
功能块调用
在循环组织块中调用 FB TwoHandBtn,并连接实参。
如下图:
定义 IO 变量
在 CPU 的属性选项卡或 PLC 变量表中定义 IO 变量。
如下图:
IO 变量地址映射
添加一个 FC,命名为:IOAddrMapping。
编写如下代码:
在循环组织块中调用:
功能测试
启动仿真并下载程序,在线监视运行结果。
此处不再详述。
总结
通过该实例主要学习了 R_TRIG 上升沿语句、F_TRIG 下降沿语句、IF 条件语句和 TON 定时器语句的使用方法和应用场景。

