回复:【开源】Modbus设备的单FB封装和多设备平行调用的通用架构 ------ 一个温控器案例的完整项目文件

已锁定

宝冬

  • 帖子

    203
  • 精华

    26
  • 被关注

    249

论坛等级:奇侠

注册时间:2016-07-06

黄金 黄金 如何晋级?

发布于 2023-04-07 15:58:45

15楼

整体设备与Modbus


多数人谈及Modbus,习惯把它作为一个单独的模块。回避了设备整体层面的,灵活多变的外在工艺,所导致的与Modbus衔接的,复杂场景的,整体性问题。而当设备的功能,越来越向复杂化演进,这个短板就愈发突出。


Modbus本身,作为协议化的IO,事实上是个死东西,执行固化。不只是Modbus,事实上所有的通信执行本身,都是死东西,因为你只能按照协议去执行基本指令。

而设备的边界功能,经过调度的转化,与公共通信IO的多变的衔接方式,越发成为编程的挑战。真正富于变化的,是因项目需求多变,导致的功能多变。


当功能场景和调度体系的需求,变得越来越复杂的情况下,就会体会到:Modbus本身,在设备整体之中,变得越来越边缘化,独立性越来越弱。这导致高内聚成为自然的趋势,而一个设备的整体封装,就顺其自然的合理化了。


在这整体封装内部,并不是把一切混成一团浆糊,随意摆放。而是尽量把其内部元素化,保持稳定的低耦合多层结构。以此来保证易于维护,易于调试,易于扩展和收缩的增减改造。保证程序员在框架下的演化移植,不易出错和思路清晰高效。


本项目以某品牌温控器做一个完整的实例,向大家展示:站在一个完整设备FB的高度,在复杂且持续功能演变的前景下,如何通过一个通用普适的架构设计,把表层功能转化为底层的协议化且存在公共竞争的IO。重点在于分层解耦的调度结构,而不再是Modbus的执行。

这是一个面向设备的完整方案


绝大多数人都能够读懂表面的代码,都能够大致理解这个案例,会得到一个大体的印象。但同时,又会觉得隐含着一些说不清道不明的东西。

这是诸位需要注意的地方,要把全部的细节一同,从多种角度去联系和扩展,才能更好理解它的设计。


评论
编辑推荐: 关闭

请填写推广理由:

本版热门话题

SIMATIC S7-1200系列

共有15113条技术帖

相关推荐

热门标签

相关帖子推荐

guzhang

恭喜,你发布的帖子

评为精华帖!

快扫描右侧二维码晒一晒吧!

再发帖或跟帖交流2条,就能晋升VIP啦!开启更多专属权限!

  • 分享

  • 只看
    楼主

top
您收到0封站内信:
×
×
信息提示
很抱歉!您所访问的页面不存在,或网址发生了变化,请稍后再试。