西门子plc和触摸屏通信不上,经常有师傅遇到这样的问题:怎么我的触摸屏和PLC通讯不上?比方说下面遇到的两个问题:
1、威纶通触摸屏和西门子PLC通讯不上,老是提示PLC没反应,该怎么设置呢?
解决思路:
你设置同样的波特率,同样的位数,同样的停止位,站号不能相同,就是说plc和触摸屏地址不能相同,确定通讯线是否正常……
2、如何通过程序判断触摸屏与PLC通讯出现故障?
解决思路:
通常方法是用心跳检测,定义一个bool,HMI固定频率将该点置位,PLC收到该点为ON信号后将其复位。若在一段时间内,比如5s内没有收到该点为ON的信号,则认为通许中断。
PLC把memoryclock字节传到屏上,屏用脚本把这个字节的值赋值给的一个PLC内的地址,plc内判断返回的字节两个扫描周期是否一样,如果一样说明通讯中断。
举个例子,请看图,步骤如下:
1、在PLC里建立DB1数据块,里面设两个开关量“PLC秒开关”和“人机响应开关”;
2、人机变量中连接这两个变量;
3、在人机“PLC秒开关”变量的属性----事件----数值变更中添加“取反位”,让“人机响应开关”变量随着“PLC秒开关”变化而变化;
4、在PLC程序块中编程,让“PLC秒开关”每0.5秒反转,再用TON延时指令让“人机响应开关”1秒内没有动作就输出人机通信失败,因为人机通信异常后“人机响应开关”将不再会发生变化。
其实,市场上任何触摸屏与PLC通讯不上不外乎要确认四个问题:
1、plc参数和工程里的是否一致
2、通讯线是否按照接线图的引脚接线
3、工程里设置的com口在屏上接的时候是否正确
4、参数和线确认OK,的情况下,看看是不是plc程序或是plc的地址问题。
方法:
先判断参数:
1、用PLC的编程软件接上PLC测试看看PLC的参数是多少,工程里设置的参数是否和测试出来的一致。
2、在线模拟:用我们的组态软件,用PLC本身的通讯电缆和电脑相连接,在线模拟看看工程是否通讯的上。可以用个数值输入部件或是开关,对其操作,看看关掉模拟器之后再开在线模拟后之前的操作是否还在,是否直接提示NC。(NC和之前操作没有写下去即为没有通上)原因1:安装完驱动程序后,在进行校正位置时,没有垂直触摸靶心正中位置。解决1:重新校正位置。 现象2:部分区域触摸准确,部分区域触摸有偏差。原因2:表面声波触摸屏四周边上的声波反射条纹上面积累了大量的尘土或水垢,影响了声波信号的传递所造成的。解决2:清洁触摸屏,特别注意要将触摸屏四边的声波反射条纹清洁干净,清洁时应将触摸屏控制卡的电源断开。 (2) 故障二:触摸屏触摸无反应现象:触摸屏幕时鼠标箭头无任何动作,没有发生位置改变。 原因:造成此现象产生的原因如下: ①表面声波触摸屏四周边上的声波反射条纹上面所积累的尘土或水垢非常严重,导致触摸屏无法工作; ② 触摸屏发生故障; ③触摸屏控制卡发生故障; ④ 触摸屏信号线发生故障; ⑤ 串口发生故障; ⑥ 操作系统发生故障; ⑦触摸屏驱动程序安装错误,西门子plc和触摸屏通信不上