![](https://img-blog.csdnimg.cn/12bce9d50cd24d4eaf9839b138ed8b48.png)
![](https://img-blog.csdnimg.cn/2dba38ff03f84611a25a97ce858f176a.png)
这里有些不好理解,举一个例子,比如我想用工控机(主站)给plc(从站)发送一条指令,读取plc某个地址(% MW800)的数据,我应该这样发01030D48000F8774
为啥?
因为800是plc的地址,按照上面的公式转换一下,800%2+3000=3400,这里的3400是十进制数,转换为16进制数就是0D48,于是按照modbus协议,工控机应该查询0D48的数据(这里的0d48其实对应的是plc的一个寄存器,理解为这个寄存器的地址,同时在plc内部是把这个寄存器识别为% MW800)
Modbus是一种串行通信协议,是Modicon公司(现在的施耐德电气 Schneider Electric)于1979年为使用可编程逻辑控制器(PLC)通信而发表。Modbus已经成为工业领域通信协议的业界标准(De facto),并且现在是工业电子设备之间常用的连接方式。
Modbus 协议的变体是:
Modbus RTU
为了建立协议通信,它以二进制格式表示数据,主要用于串行通信。此版本中的消息按空闲时间段划分。RTU 版本遵循的格式是循环冗余校验验证机制,这确保了数据的可靠性。
对于串行连接,存在两个变种,它们在数值数据表示不同和协议细节上略有不同。Modbus RTU是一种紧凑的,采用二进制表示数据的方式,Modbus ASCII是一种人类可读的,冗长的表示方式。这两个变种都使用串行通信(serial communication)方式。RTU格式后续的命令/数据带有循环冗余校验的校验和,而ASCII格式采用纵向冗余校验的校验和。被配置为RTU变种的节点不会和设置为ASCII变种的节点通信,反之亦然。
组态软件
组态软件哪个好_组态软件推荐_wishfly的博客-CSDN博客_组态软件
简单理解,组态软件是用来开发人机界面的软件。现场的设备PLC,各种采集卡,各种仪表,这些设备都能产生数据,电脑可以通过串口,以太网或者专门的通信线路来获取这些数据。但是这些数据通常是不适合人类直接阅读和理解的,所以需要一个人机界面来展示这些数据,而组态软件的功能就是转化和展示这些数据。
作者:卢云汉
链接:https://www.zhihu.com/question/19818456/answer/34121618
来源:知乎
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
组态,是英文configure翻译过来的,工业上用得比较多似乎~~
configure也解释为配置、设置
那么组态软件的意思也就是配置软件。
工业中分布式控制系统DCS的软件多被称为组态软件:系统结构组态软件、网络结构组态软件、人机界面组态软件、控制逻辑组态软件、数据库组态软件……
像网络结构组态软件的功能就是配置、组建整个网络的结构、确定各个网络节点的IP、站号等等,系统结构组态软件的功能是对系统中各个硬件及其结构进行配置,硬件中CPU的主备机状态、IO模块的地址等等。
另外,控制逻辑组态软件就实现了组态编程的功能,工业中,向PLC写逻辑、写控制策略,国际上有标准的5种编程语言:梯形图、功能块、结构化文本等,梯形图与功能块的操作过程类似于组态的过程,将一个一个东西搭建起来,配置参数,而结构化文本的操作过程就类似于编程,因此很多时候也听到组态编程的概念。
因此,我的理解就是组态就像搭积木,摆好各个块后,在配置他们之间的关系。
作者:曾其鋆
链接:https://www.zhihu.com/question/19818456/answer/13232607