LM小型可编程控制器软件(基于CoDeSys)笔记十四:Modbus 通讯

LM 系列 PLC 可以通过 Modbus 协议与触摸屏或组态软件等第三方设备进行通讯。默认状态下,
LM 系列 PLC 作为 Modbus RTU 从站。
LM 系列 PLC RS232 端口和 RS485 端口均支持 Modbus RTU 从站协议。
Modbus 协议是主从站通讯协议,用异步串行口完成通讯,物理层采用 RS485 RS232 。传输
速率可以达到 115kbps ,理论上可接(寻址)一台主站和至多 247 台从站。受线路和设备的限制, 最多可接一台主站和 32 台从站。
Modbus 协议的某些特性是固定的,如帧格式、帧顺序、通讯错误和异常情况的处理以及所执
行的功能等,都不能随便改动。其他特性属于用户可选的,如传输介质、波特率、字符奇偶校验、
停止位的个数等等,传输模式为 RTU 。用户所选择的参数对于各个站必须一致,在系统运行时不能改变。
Modbus 通讯功能
LM 系列 PLC 所支持的 Modbus RTU 通讯功能码如表 10-1-1 所示。
LM小型可编程控制器软件(基于CoDeSys)笔记十四:Modbus 通讯_第1张图片

Modbus RTU 协议能访问的数据区包括:
输入区(I)、输出区( Q )、中间区( M
这三个数据区,均可通过 BOOL 型或 WORD 型数据访问。这些数据区与 Modbus 协议地址映
射关系,如表 10-1-2 所示:
LM小型可编程控制器软件(基于CoDeSys)笔记十四:Modbus 通讯_第2张图片

LM小型可编程控制器软件(基于CoDeSys)笔记十四:Modbus 通讯_第3张图片

 

这里有些不好理解,举一个例子,比如我想用工控机(主站)给plc(从站)发送一条指令,读取plc某个地址(% MW800)的数据,我应该这样发01030D48000F8774

为啥?

因为800是plc的地址,按照上面的公式转换一下,800%2+3000=3400,这里的3400是十进制数,转换为16进制数就是0D48,于是按照modbus协议,工控机应该查询0D48的数据(这里的0d48其实对应的是plc的一个寄存器,理解为这个寄存器的地址,同时在plc内部是把这个寄存器识别为% MW800)

LM小型可编程控制器软件(基于CoDeSys)笔记十四:Modbus 通讯_第4张图片

LM小型可编程控制器软件(基于CoDeSys)笔记十四:Modbus 通讯_第5张图片

LM小型可编程控制器软件(基于CoDeSys)笔记十四:Modbus 通讯_第6张图片

Modbus是一种串行通信协议,是Modicon公司(现在的施耐德电气 Schneider Electric)于1979年为使用可编程逻辑控制器(PLC)通信而发表。Modbus已经成为工业领域通信协议的业界标准(De facto),并且现在是工业电子设备之间常用的连接方式。

Modbus 协议的变体是:

Modbus RTU

为了建立协议通信,它以二进制格式表示数据,主要用于串行通信。此版本中的消息按空闲时间段划分。RTU 版本遵循的格式是循环冗余校验验证机制,这确保了数据的可靠性。

对于串行连接,存在两个变种,它们在数值数据表示不同和协议细节上略有不同。Modbus RTU是一种紧凑的,采用二进制表示数据的方式,Modbus ASCII是一种人类可读的,冗长的表示方式。这两个变种都使用串行通信(serial communication)方式。RTU格式后续的命令/数据带有循环冗余校验的校验和,而ASCII格式采用纵向冗余校验的校验和。被配置为RTU变种的节点不会和设置为ASCII变种的节点通信,反之亦然。

HMI人机界面,HMI是Human Machine Interface 的缩写,“ 人机接口”,也叫 人机界面,是交互和信息交换的媒介。
什么是HMI?了解HMI或人机界面的一些基础知识 (baidu.com)

组态软件

组态软件哪个好_组态软件推荐_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
 

你可能感兴趣的:(plc学习笔记系列,CoDeSys,plc,通讯,Modbus)