恭喜,你发布的帖子
发布于 2023-10-16 12:21:10
113楼
@宝冬 您好,有个问题 #设备Modbus反馈.MyModbusChannel = -1 这个条件应该是来判断当前设备是否被指定通道,那么这个值是否需要初始化?被设定通道后,就一直不变的了吗?包括被剔除出队列的时候,谢谢
在这个案例中,我是这样自动分配通道的,但它不必如此,也可以在HMI上手动分配通道,在现场改变设备轮询次序。这是个解耦的单独元素,随你怎么做。
设备被剔除IO公共资源的竞争队列的时候,通道并未丧失,因为这个案例中我没有更多的空闲设备来争夺通道。这其实也是管理策略的选择,可以变化。
这个程序设计的目标:尽量把设备宏观功能,解耦为诸多单独元素构成的一个集合。每个元素的处理策略不是固定的,而是根据程序员的需求来选择,这就是开放性,可以构建不同的具体个性化故事。
这个程序框架就是用来应对,根据不同需求可以自由改写和跨设备跨工艺移植,但同时保持架构思想不变。所以一定要有变化,在变化中反映出不变的架构抽象理念。
请填写推广理由:
分享
只看
楼主