恭喜,你发布的帖子
发布于 2022-12-10 05:15:11
29楼
设备的物理状态,与FB中和UI中的状态同步
完善的程序,需要把物理设备的全部状态,实时读取到FB中,并反映到UI上。
对于串口modbus设备,这需要知道最近一次通信任务是否成功,最近一次通信任务的序号是多少,任务数组中每一个任务的最近一次执行都是否成功。
通信任务分为连续循环执行的,有定期执行的,有偶发执行的,和不执行的。只有连续循环执行的任务成功与否,才能反应当前的通信质量是否良好,是否通信被淘汰。
上述信息,结合通信淘汰策略,决定了设备物理状态同步的可靠性。
基于这些,才能安全可靠的保证,对设备的操作满足任何工艺的要求。有些控制命令,需要以最新可靠的设备物理状态的确认为前提,才能触发。
任何写任务总是以一些组合条件为前提才能成立的,比如:设备是否在线、是否淘汰、工艺是否允许、某些前置参数是否满足要求,等等。
下图Trace,在设备FB中加入上一个通信任务的序号。依然保证视觉分割效果。
分层解耦,可以随时加入细节变化,完全不用考虑其它,调整非常快。
对设备中同一个数据的读写,是两个不同的任务。
对于设备读数据,尽量连成大片一起读,这比单一数据读取的综合效率高。所以对于一个设备,写任务的数量总是远远多于读任务,读任务和写任务的规划不是对称的。
在一个设备的任务数组中,读任务尽量靠前,便于写任务在后面可以增减。所以品牌设备的通信任务表是要面向长期规划的,而不是眼前的项目。
请填写推广理由:
分享
只看
楼主