恭喜,你发布的帖子
发布于 2023-05-13 05:45:08
53楼
协议与IO复合体
单独的数字Input、数字Output、模拟Input、模拟Output,对它们的直接操作,都很单纯且简单。
协议,把这些不同类型的基本IO元素组织在一起,形成了特定的、具有多种空间组合与时序关系的集合属性的,复合在一起的,IO结构体。
这个IO复合体,就成了一个单独存在的IO元素。这就像基本数据类型与UDT的关系。
而针对协议本身的操作,被封装为一个指令,通信指令。
操作指令就是操作IO,指令本身也就成了IO元素。
这与平时任意一个FB或FC,也是把I与O组织在一个单元中,是一样的。
而I和O也不是局限于PLC硬件的I点和Q点。IO是抽象概念,是逻辑单元的进出点,只是人的观念习惯把它自然加载到实物上。
通信IO,与FB或FC的IO,它们的一个主要区别是:通信具有明显的异步特点。
在PLC中一般不把同步的IO理解为通信。
通信本身也是个抽象概念,只是我们总是把它习惯性对应到串口和网口硬件上。
其实不同逻辑模块之间的往来都是通信,比如:不同线程之间往来,与PID单元的往来等等。上位机的设计中尤其如此。
站在这个层面理解,数据结构/元数据/通信协议,这些东西根本就是一回事,都是格式化的约定和载体标识结构。
离散逻辑分为两种,组合逻辑与时序逻辑。
为什么说编程和纯数学的思维完全是一回事呢?因为在这两个领域中的抽象思维方法,是完全对称的。所谓领域,更多是具体知识集合固化出来的观念。
请填写推广理由:
分享
只看
楼主