『7x24小时有问必答』
文末有55个实战案例资料
导读:在工业自动化中,PLC是核心设备之一,需要和外部的多个设备进行通信,实时监控与响应。在这些应用中“心跳检测”是一个非常重要的功能,能够有效由于通信中断或者设备失效所带来的重大生产安全隐患。
那么本文就来编写1个通信的“心跳检测”功能块,便于大家参考。
思路:可以对比一个时间范围内,某个状态值有无变化,有变化则通信正常,无变化则是通信中断。
1.SCL语言编程方法
(1)在博途软件中新建FB块
(2)程序行1至4是当定时器的时间没到达时启动定时器。
程序行7至13是判断心跳信号与上一次的状态是否相同,如果不同则将定时器复位,并且将“心跳信号”的状态值赋值给“上一状态”

程序行15至22是判断定时器的时间,当时间到达后,报警输出值为1,否则为0。按下复位按钮可以复位定时器和报警。

(3)主程序调用FB程序块

2.梯形图语言编程方法
(1)在博途软件中新建FB块

(2)程序编写
只要心跳信号是不断0和1在变化的,定时器就会计时,但是计时的时间达不到设定时间,如果信号信号没有变化,则会接通其中的一个定时器,时间到达后输出报警信号。

(3)主程序调用FB程序块

总结:在此案例中,不管是梯形图还是SCL语言编程,它本质上还是需要对方设备发来的信号是0和1在不断变化,也就是程序中的M200.0是对方设备发来的信号。如果在某一时刻通信中断了,值则不会变化了。

最近有很多小伙伴说要案例书籍,说是手机上看文章不是很方便,我抽时间把55个实战案例全部整理出来,案例都是比较典型的,其中包括气缸控制程序、报警程序、程序框架、运动控制程序封装、模拟量控制变频器、通信等实战案例。需要的可以加我微信:biao467524527,如果加不上可以私信我。

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

上一主题上一主题         下一主题下一主题
QQ手机版小黑屋粤ICP备17165530号

关于我们·投诉举报· 用户帮助· 联系我们 · 本站服务 · 版权声明· 隐私政策 · 投搞指南

法律保护:PLC技术网,plcjs.com,plcjs.net等字样
Copyright 2010-2030. All rights reserved. 


微信公众号二维码 抖音二维码 百家号二维码 今日头条二维码哔哩哔哩二维码