通过程序判断触摸屏与plc通讯故障 点击:1322 | 回复:4



就爱大螃蟹

    
  • 精华:0帖
  • 求助:0帖
  • 帖子:4帖 | 5回
  • 年度积分:0
  • 历史总积分:3
  • 注册:2015年4月26日
发表于:2017-04-20 10:41:09
楼主

本人小白一枚,刚刚接触PLC,看到这个例子时,在PLC程序块中编程,让“PLC秒开关”每0.5秒反转,再用TON延时指令让"人机响应开关”1秒内没有动作就输出 人机通信失败, 因为人机通信异常后"人机响应开关”将不再会发生变化。这段程序怎么编写,没看懂,求高人指点,最好能有梯形图,谢谢了

通常方法是用心跳检测,定义一个bool,HMI固定频率将该点置位,PLC收到该点为ON信号后将其复位。若在一段时间内,比如5s内没有收到该点为ON的信号,则认为通许中断。

  plc把memory clock字节传到屏上,屏用脚本把这个字节的值赋值给另外的一个plc内的地址,然后plc内判断返回的字节两个扫描周期是否一样,如果一样说明通讯中断。

  举个例子,请看图,步骤如下:

1、在PLC里建立DB1数据块,里面设两个开关量“PLC秒开关”和"人机响应开关”,

  2、人机变量中连接这两个变量

  3、在人机“PLC秒开关”变量的属性----事件----数值变更中添加”取反位“,让”人机响应开关“变量随着“PLC秒开关”变化而变化。

  4、在PLC程序块中编程,让“PLC秒开关”每0.5秒反转,再用TON延时指令让"人机响应开关”1秒内没有动作就输出 人机通信失败, 因为人机通信异常后"人机响应开关”将不再会发生变化。





CZ198841

  • [版主]
  • 精华:0帖
  • 求助:0帖
  • 帖子:603帖 | 6481回
  • 年度积分:1031
  • 历史总积分:153827
  • 注册:2011年4月25日
发表于:2017-04-20 15:25:23
1楼

不错,我也跟小白学了不少

courage__sky

  • 精华:0帖
  • 求助:0帖
  • 帖子:0帖 | 126回
  • 年度积分:0
  • 历史总积分:103
  • 注册:2016年5月16日
发表于:2017-07-20 08:51:03
2楼

学到了!!!!!!!

徐虎先生

  • 精华:0帖
  • 求助:0帖
  • 帖子:1帖 | 101回
  • 年度积分:0
  • 历史总积分:91
  • 注册:2016年10月03日
发表于:2017-08-01 18:19:33
3楼

不错,我也跟小白学了不少

哥们儿

  • 精华:0帖
  • 求助:0帖
  • 帖子:0帖 | 49回
  • 年度积分:0
  • 历史总积分:60
  • 注册:2009年6月22日
发表于:2017-08-25 14:24:58
4楼

谢谢楼主分享,学习学习!


相关主题

官方公众号

智造工程师