ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

Modbus到底有多快!

2022-05-19 11:33:37  阅读:211  来源: 互联网

标签:结果 报文 到底 通信 Modbus PLC 测试


前言

大家好!我是付工!

前面写了一篇关于基于Modbus读取运动控制卡的文章,发现很多小伙伴对Modbus的实时性比较感兴趣,想知道Modbus通信能达到多快的速度。

首先,我们要明确一点,Modbus本身只是一个应用层的协议规约,意思就是Modbus本身是没有速度一说的,当运行在传输层以太网或者串口介质上的时候,才会存在实时性的说法。

那么至于Modbus通信速度到底是多少,本文以ModbusTCP为例,配合西门子200Smart PLC、西门子1200 PLC、西门子1500 PLC、三菱FX5U、台达DVP-ES3以及正运动的运动控制卡,来做一个通信测试,测试结果仅表示当前环境、当前电脑配置、当前网络环境下的结果,仅供参考。

测试程序

这里采用的通信库是我们自己开发的通信库xktComm,不同的通信库测试结果可能有所不同。

首先设计界面如下所示:

 

 

不同设备都使用默认端口502,所以仅仅只是IP地址不同而已,为了增加数据的准确性,我们使用循环读取的方式,默认是循环1000次,同时为了证明实时通信的过程,增加了显示报文的选择,可以将实时通信的报文显示出来。

同时,我们读取的存储区也是一样的,读取4区从0开始的100个寄存器。

西门子200Smart

西门子200Smart PLC,我们采用的是CPU ST40,大家都知道西门子PLC想要支持ModbusTCP通信,是需要写一点PLC程序的,如下图所示:

 

 

测试结果如下:

不显示报文结果:

 

 

显示报文结果:

 

 

最后一帧报文的前两个字节表示序号:0B B8=3000,因为这是第三次通信。

西门子1200

西门子1200 PLC,我们采用的是CPU 1212 DC/DC/DC,西门子1200 同样是需要写一点PLC程序的,如下图所示:

 

 

测试结果如下:

不显示报文结果:

 

 

显示报文结果:

 

 

结果可以看到,1200PLC的ModbusTCP通信比200Smart还要慢,更换1214的PLC测试结果也是一样的。

测试的通信负载是20%,将通信负载改成50%,再次测试,测试结果如下:

不显示报文结果:

 

 

显示报文结果:

 

 

通信负载在一定程度上可以提高通信效率,可以根据实际情况适当提高。

西门子1500

西门子1500 PLC,我们采用的是CPU 1511T-1 PN,西门子1500 同样是需要写一点PLC程序的,如下图所示:

 

 

测试结果如下:

不显示报文结果:

 

 

显示报文结果:

 

 

三菱FX5U

三菱FX5U PLC,我们采用的是FX5U-32MT/ES,三菱FX5U PLC是直接支持ModbusTCP的,但是需要做下配置,在以太网配置里加上ModbusTCP连接设备,端口号设置为502。

 

 

测试结果如下:

不显示报文结果:

 

 

显示报文结果:

 

 

台达DVP

台达PLC,我们采用的是DVP32-ES3,国产PLC对Modbus协议支持的很好,不需要做任何配置即可实现Modbus通信。

测试结果如下:

不显示报文结果:

 

 

显示报文结果:

 

 

图片

正运动运动控制卡

正运动运动控制卡,我们采用的是ECI1408,同样也不需要任何配置,即可实现Modbus通信。

测试结果如下:

不显示报文结果:

 

 

图片

测试发现,连接之后的第一个循环会比后续的时间多一些,连续测试的结果,大约在200ms左右。

显示报文结果:

 

 

图片

测试结果汇总

以不显示报文的结果来进行汇总,如下表所示:

 

设备1000次平均周期
200Smart 3500ms 3.5ms
1200 PLC 4600ms 4.6ms
1500 PLC 5300ms 5.3ms
FX5U PLC 2000ms 2ms
台达 PLC 1500ms 1.5ms
正运动 200ms 0.2ms

从测试结果来看,ModbusTCP的通信速率,不同的PLC大约在1.5ms-5ms之间,而正运动运动控制卡可以达到0.2ms,比PLC的通信效率要高10倍以上。

标签:结果,报文,到底,通信,Modbus,PLC,测试
来源: https://www.cnblogs.com/xiketang/p/16287871.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有