工控编程吧

标题: 如何获取威纶通触摸屏宏指令GetData等函数的返回结果 [打印本页]

作者: qq263946146    时间: 2019-11-20 10:38
标题: 如何获取威纶通触摸屏宏指令GetData等函数的返回结果
我用HMI屏和PLC进行485通信,我用GetData获取数据、用SetData设置数据,但是有时候可能是通信问题,或者其他问题,导致函数执行失败。我如何才能确定这些函数是否执行成功呢?

另外,我希望能够获取HMI和PLC的连接状态,我知道,如果设置元件直接访问PLC地址,那么如果通信失败,可以弹出窗口提示,
但是这样HMI会一直向PLC发送命令,我无法确定发送命令的频率,更无法设置这个频率。有没有大牛指导一下?

总之,不想频繁的向PLC发送命令,但又希望能够判断PLC和HMI是否通信正常。



回答:
Getdata,GetData函数没有返回值为判断通讯结果,函数会在调用处中断宏往下执行,直到接收完数据。
一般遇通讯异常问题还需要继续执行宏指令,可使用GetdataEX和SetdataEX函数。
函数不等待  PLC  回应,径自往下执行。
是否接收或发送了数据,可以通过硬件的回应数据来判断。用一个空数组接收硬件回应的数据。
数组不为空表示硬件收到了指令并作了回应。



关于硬件通讯状态的获取,可以使用威纶通内部的系统地址指示。
如图,这是对应屏上使用COM1口的,通讯正常指示位状态为ON,通讯不上指示位状态为OFF。
(, 下载次数: 1)