登录
首页 PLC论坛 施耐德电气PLC
回帖 发帖
正文

主题:从Modbus开始说现场总线(六)

点击:2304 回复:13

从Modbus开始说现场总线(六)
前面介绍了Modbus和Modbus Plus,继续介绍和Modbus相关的TCP-Modbus。这三种总线的应用层协议都是Modbus,但通过不同的传输与机制和介质的升级,一直使Modbus的字样活跃在工业现场。
TCP-Modbus是运行在TCP/IP上的Modbus 报文传输协议。通过此协议,控制器相互之间通过网络(例如以太网)和其它设备之间可以通信。和Modbus的关系如下图。
附件 Tcp modbus 6-1.jpg
熟不熟悉? 惊不惊喜?前面出现过类似的图了。
IANA(Internet Assigned Numbers Authority,互联网编号分配管理机构)给Modbus协议赋予TCP端口号为502,这在网关和防火墙设置时是必备参数。
TCP-Modbus也属于开放协议,所以市面上的网关也很便宜,可以很容易的实现不同网络的互联,尤其是和Modbus,基本上“脱了马甲”(去掉TCP包头)加上校验码就可以了。帧格式如下图。
附件 Tcp modbus 6-2.jpg
(第一篇中已经出现过了,复习一下。)
ModbusTCP数据帧:
事务处理标识:一般每次通信之后就要加1以区别不同的通信数据报文。
协议标识符:00 00表示TCP-Modbus协议。
长度:表示接下来的数据长度,单位为字节。
单元标识符:设备地址(在很多软件设置中叫Unit ID)。
ModbusTCP通信过程如下图:
附件 Tcp modbus 6-3.jpg
1.connect 建立TCP连接
2.准备modbus报文
3.使用send命令发送报文
4.在同一连接下等待应答
5.使用recv命令读取报文,完成一次数据交换
6.通信任务结束时,关闭TCP连接
完整的TCP-Modbus通信过程是客户机建立一个连接,向服务器发送3 个MODBUS请求,而不等待第一个请求的应答到来。在收到所有的应答后,客户机正常地关闭连接。
TCP-Modbus的优点是:用户可免费获得协议及样板程序;
网络实施价格低廉,可全部使用通用网络部件;易于集成不同的设备,几乎可以找到任何现场总线连接到Modbus-TCP的网关 ;
网络的传输能力强大,100M以太网的传输结果为:每秒4000个Modbus TCP报文,而每个报文可传输125个字(16bit),故相当于4000×125=500000个模拟量数据(8000000开关量!);
缺点呢,就和Modbus一样,传输的是寄存器的值,没有定义数据的语义,所以读来的大量数据需要一个一个和发送方核实处理,这在现代的控制系统里会带来很大的工作量,设置也都是手工设置,不是面向对象的嵌入技术,限制了其在大型系统中的使用效率。
19-09-25 19:34
绑定下,看不懂的路过。
其实吧,大家都是应用下,感觉也没必要了解太深。
平时编程组态,能动起来就好。
19-09-25 22:16
日常工作是这样,但了解多一些原理后,再碰到疑难问题的时候就能很快找到原因。
19-09-26 08:55
楼主讲得很深入,感谢分享!
19-09-26 08:57
不知不觉楼主的现场总线都更新到第六节了,时间过得也太快了表情
19-09-26 09:56

引用 jint 在 2019/9/26 9:56:08 发言【内容省略】

感觉时间过得快是件好事!
19-09-26 12:23
能不能全面点。
19-09-26 13:23
还需要哪方面?
要是能坚持下去,我准备把几十种总线都啰嗦一下。。。
19-09-26 16:10

bsz

支持楼主!
19-09-26 17:17
向楼主多学习学习通讯理论知识
19-09-26 21:24

上一页下一页

工控新闻

更多新闻资讯