揭秘10种主流PLC在ModbusTCP通信中的速度表现!
大家好!我是付工。
前面给大家介绍了一系列关于Modbus和ModbusTCP的知识。
今天给大家来实测一下,对于不同品牌的PLC或板卡实现ModbusTCP通信时,通信速度有多快。
一、测试界面
我们使用自己开发的通信库进行测试,不同通信库会有细微区别,测试结果仅供参考,并不针对具体产品及厂家。
下面是我们的PLC平台,我们选择其中几个比较常用的支持ModbusTCP通信协议的PLC来进行测试。

测试软件设计界面如下所示:

ModbusTCP默认端口号是502,所以不同设备仅仅只是IP地址不同而已,为了保证数据的准确性,我们使用循环读取的方式,循环三组,每组连续读取10000次,观察总耗时。
同时,我们读取的存储区也是一样的,读取4区从0开始的100个寄存器。
二、西门子200Smart
西门子200Smart PLC,我们采用的是CPU ST40,大家都知道西门子PLC想要支持ModbusTCP通信,是需要写一点PLC程序的,如下图所示:

测试结果如下所示:

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

测试结果如下所示:

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

测试结果如下所示:

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

测试结果如下所示:

六、施耐德M241
施耐德PLC,我们采用的是施耐德M241,这个不需要额外写PLC程序。
测试结果如下所示:

七、信捷XD5E
信捷PLC,我们采用的是信捷XD5E,国产PLC对Modbus协议支持比较好,不需要额外写PLC程序。
测试结果如下所示:

八、台达DVP
台达PLC,我们采用的是台达DVP-32ES,这个不需要额外写PLC程序。
测试结果如下所示:

九、汇川AM600
汇川PLC,我们采用的是汇川AM600-CPU1608TN,这个不需要额外写PLC程序。
测试结果如下所示:

十、汇川H5U
汇川PLC,我们采用的是汇川H5U,这个不需要额外写PLC程序。
测试结果如下所示:

十一、汇川EASY
汇川PLC,我们采用的是汇川EASY521,这个不需要额外写PLC程序。
测试结果如下所示:

十二、正运动板
正运动运动控制卡,我们采用的是ECI1408,这个不需要额外写程序。
测试结果如下所示:

十三、总结
通过以上测试结果,我们可以得出以下几个结论:
1、由于不同设备对ModbusTCP的处理方式不同,因此最终通信速率有所区别,但平均周期均在10ms以内,此时间为单次交互的时间。

2、上位机通信很稳定,连续百万次交互都没有失败次数。

3、读取1个寄存器的耗时与读取100个寄存器耗时时间差别不大,上位机开发中尽量采用批量读取的方式。


揭秘10种主流PLC在ModbusTCP通信中的速度表现!的更多相关文章
- C#/VB.NET与西门子PLC进行ModbusTcp通信
进入自动化行业半年多了,每天都与机器打交道. 前段时间接手一个任务,需要将我们机台与下站机台进行通讯,我们机台是PC,下站机台为西门子S7-1200. 想想完成这个任务,领导就会对我这个新人刮目相看, ...
- Vue通信的10种方式
1.10种通信方式 10种:https://juejin.im/post/5bd18c72e51d455e3f6e4334 2.除此之外,还有children和ref. 需要注意 $children ...
- 性能追击:万字长文30+图揭秘8大主流服务器程序线程模型 | Node.js,Apache,Nginx,Netty,Redis,Tomcat,MySQL,Zuul
本文为<高性能网络编程游记>的第六篇"性能追击:万字长文30+图揭秘8大主流服务器程序线程模型". 最近拍的照片比较少,不知道配什么图好,于是自己画了一个,凑合着用,让 ...
- python三大web框架Django,Flask,Flask,Python几种主流框架,13个Python web框架比较,2018年Python web五大主流框架
Python几种主流框架 从GitHub中整理出的15个最受欢迎的Python开源框架.这些框架包括事件I/O,OLAP,Web开发,高性能网络通信,测试,爬虫等. Django: Python We ...
- Django,Flask,Tornado三大框架对比,Python几种主流框架,13个Python web框架比较,2018年Python web五大主流框架
Django 与 Tornado 各自的优缺点Django优点: 大和全(重量级框架)自带orm,template,view 需要的功能也可以去找第三方的app注重高效开发全自动化的管理后台(只需要使 ...
- 10 种最常见的 Javascript 错误(频率最高)
本文是小编给大家收藏的JavaScript 中频度最高的 10 种错误,我们会告诉你什么原因导致了这些错误,以及如何防止这些错误发生.写的十分的全面细致,具有一定的参考价值,对此有需要的朋友可以参考学 ...
- 【新阁教育】台达DVP-ES3 ModbusTCP通信案例
本文主要针对台达DVP-ES3系列PLC,实现上位机与PLC之间的ModbusTCP通信. 一.硬件说明 DVP-ES3 系列为高阶应用可编程控制器, CPU 内置4 组高速计数器输入.4组轴输出(脉 ...
- 支持10种格式的 HTML 表格导出 jQuery 插件
HTML 表格导出 jQuery 插件可以帮助用户导出 HTML 表格到 JSON.XML.PNG.CSV.TXT.SQL.MS-Word.MS-Excel.MS-PowerPoint 和 PDF 格 ...
- 让C程序更高效的10种方法(转)
原文:http://blog.jobbole.com/1198/ 代码之美,不仅在于为一个给定问题找到解决方案,而且还在代码的简单性.有效性.紧凑性和效率(内存).代码设计比实际执行更难 .因此,每一 ...
- 30个深度学习库:按Python、C++、Java、JavaScript、R等10种语言分类
30个深度学习库:按Python.C++.Java.JavaScript.R等10种语言分类 包括 Python.C++.Java.JavaScript.R.Haskell等在内的一系列编程语言的深度 ...
随机推荐
- 很干,但实用——4G模组供电设计及其选型推荐
4G模组的外部电源供电设计十分重要,对系统稳定.射频性能都有直接影响. 怎么让工程师朋友们在应用开发中少走弯路呢? 我将以Air780E为例,陆续分享系列实用干货.无论你是专家还是菜鸟,无论你是否 ...
- delphi Image32 图形处理 图层
图形图层处理是Image32的主要功能,矢量图形,分层类似 Photoshop看人图层,直接上代码效果. unit uFrmLayer; interface uses Winapi.Windows, ...
- 2023NOIP A层联测28 T4 小猫吃火龙果
2023NOIP A层联测28 T4 小猫吃火龙果 分块题,跟赛时的一个倍增部分分做法很像. 思路 如果没有动态操作,可以设 \(dp[i][T][k]\) 为:在 \(i\) 时为 \(T(T\in ...
- NZOJ 模拟赛8
T1 布尔(CF2030C) CF2030C 爱丽丝和鲍勃正在玩一个游戏.游戏中有一个由 n 个布尔值组成的列表,每个布尔值要么为真,要么为假,以长度为 n 的二进制字符串表示(其中 1 表示为真,0 ...
- (Python基础教程之十四)Python将tuple开箱为变量或参数
Python示例将N元素元组或序列开箱缩为N个变量的集合.将元组开箱缩为变量的 Python示例. 1. Python开箱元组示例 可以使用简单的赋值操作将任何序列(或可迭代)开箱缩为变量.唯一的要求 ...
- think in java interview-高级开发人员面试宝典(二)
从现在开始,以样题的方式一一列出各种面试题以及点评,考虑到我在前文中说的,对于一些大型的外资型公司,你将会面临全程英语面试,因此我在文章中也会出现许多全英语样题. 这些题目来自于各个真实的公司,公司名 ...
- 三菱电梯综合监控系统适配 lonele.exe 由 20180418 降级至 20150930 而调整相应的 msde2000 数据库
win10 x86 系统下程序文件的部分目录可能是 电梯综合监控系统 C:\PROGRAM FILES\上海三菱电梯有限公司 ├─电梯综合监控系统 │ │ AxInterop.BRTMFSHX.dll ...
- 在window 使用 docker 安装redis 踩坑记
1. 安装REDIS 在安装的时候,使用 docker pull redis 就可以了. 但是 实际上 发现镜像居然拉不下来. 修改了一下 docker 镜像. 配置如下: "registr ...
- C# 和 SQL Server中 PadLeft和PadRight 的用法
C# 中 PadLeft和PadRight 的用法 需求:需要一个字符串实现自增.是根据数据库中一个自增的int类型的值,实现自增的.但是要加上前缀.比如,数据库中有一个自增的值,为,2.那么这个自增 ...
- OS之《线程管理》
进程是系统资源分配的最小单位,线程是最小的执行单位. 然而,现在的高级设计底层还是基于这个理论基础实现的.比如java的线程,还有最新版本的JDK的协程都是在为了更好的让CPU执行任务. 线程是为了使 ...