2毫秒扫描周期以太网Modbus TCP UDP高速通信:西门子SMART PLC+CANWeb现场总线远程扩展IO模块

副标题1:"西门子SIMATIC S7-200 SMART PLC"与"CANWeb现场总线" 以太网Modbus TCP、UDP通信速度即扫描周期测试步骤详细说明

1.前言:

做中小型分散自动化项目的朋友,应该都遇到过这样的困境:想要通信速度快,就得用Profinet、EtherCAT这类高端总线,但成本高、布线复杂、调试门槛也高;想要省钱省事,用传统串口总线或硬接线,通信速度、通信距离受限、线缆成本惊人、后期维护更是让人头大。

现在,一个真正能打的"王炸组合"来了------

西门子S7-200 SMART PLC + CANWeb开源现场总线 + 以太网Modbus UDP高速通信

实测数据就摆在这里:以太网Modbus TCP同时读写120个WORD,扫描周期仅5毫秒;换成Modbus UDP,直接"干到"2毫秒。2毫秒是什么概念?比很多所谓"高速总线"的实测表现还要猛,而成本却只有它们的零头。

"CANWeb现场总线"与"SMART_CPU_SR20 PLC"用以太网Modbus TCP、UDP通信,测试扫描周期的详细步骤说明见文章下面介绍。

2.S7-200 SMART PLC是中小型自动化项目的"性价比之王":

西门子S7-200 SMART PLC兼具性能与成本优势,是经济型设备控制的理想之选,其核心优势在于:

**性能强劲:运算速度最快0.15μs,G2系列程序空间达100KB。

**联网便捷:标配以太网网口,支持Modbus TCP、UDP、PROFINET,轻松连接伺服与上位机。

**软件轻量:编程软件仅80MB,支持FB块和数组等高级数据类型。

3.CANWeb:把CAN的可靠和以太网的智能揉在一起

CANWeb现场总线深度融合了CAN总线的高实时性与以太网的可视化管理能力。它把节点管理功能和实时数据通信功能分离:什么意思?就是你可以直接用Web页面监控节点通信负载、通信质量(丢包率),甚至直接Web调试节点IO、配置参数,根本不需要控制器或专用调试工具。

跟传统的主从问答通信不同,CANWeb是触发式小包通信:检测到节点信号变化满足条件就立刻发送,实时性更好,通信负载更小。

更硬核的是:从网关、中继器到供电线路,CANWeb全面支持热备冗余,无扰切换,故障零延时。严格符合国标DL/T1083-2019等规范,满足电厂、化工等严苛场景的要求。

常用的DI、DO、AI(mA/V、TC、RTD)、AO、温湿度、电量、步进电机等CANWeb IO模块可选,可为客户定制节点模块;

总线可选屏蔽双绞线并接或光纤串接,全部光电隔离设计,布线简单、接口成本低。铠装光纤不需要桥架或穿管,可以和动力电缆混合敷设。

CANWeb单网现场总线配置:需1个网关+多个(最多99个)节点IO模块,如下图:

CANWeb冗余双网现场总线网络结构:

CANWeb现场总线其他优点:

(一)省线缆: 传统方案每台设备拉一对控制电缆到控制室,成百上千根铜缆塞满桥架。CANWeb用一根屏蔽双绞线或光纤串起最多99个节点,线缆数量断崖式下降。

(二)省桥架和施工: 铠装光纤可以跟动力电缆混合敷设,不需要单独穿管和桥架。

(三)省调试时间: Web页面直接调试和配置节点,不用抱着控制器到处跑。

(四)省维护成本: Web页面实时监控每个节点的通信负载和丢包率,问题在哪一目了然,不用拿着万用表一根根排查。

(五)全面支持与智能设备通信:提供RS485/RS232/TTL接口,可直接与变频器、煤成分分析仪、化水分析仪、智能开关柜、多功能智能电量仪等设备通信。

(六)高端智能采集模块:提供现成的多电量(四象限)测量、设备振动分析、激光雷达等高端智能采集模块。

(七)全面开源技术支持: 提供CANWeb开发板套件,编程简单,无开发技术门槛:用户可在现有的PCB文件及Keil源程序基础上,通过调用少量函数即可开发自己的CANWeb总线定制产品。

4.S7-200 SMART与CANWeb网关模块连接准备工作:

先按下图准备好设备并接好线:

200 SMART_CPU_SR20 PLC 、交换机、CWGW网关、CW_IO开发板、调试计算机

按上图CANWeb冗余双网现场总线网络结构分配IP:

计算机____IP为222.222.221.101

PLC_______IP为222.222.221.1

CANWeb网关IP为222.222.221.151

需准备3根质量好的网线。

5.Web浏览器浏览网关模块以太网Modbus通信协议状态:

GW网关模块地址为 222.222.221.151;

Web页面 输入:222.222.221.151

用户名:admin,密码默认:abc1234

点击"Modbus 从站参数显示"

红框内可显示 CANWeb网关 与 西门子Smart PLC以太网通信的状态:

"ENTMBCnt:F03=0L0F04=120L63166F16=120L63153F06=0F23=0WL0RL0"

功能码:

F03通信包读寄存器长度及命令累计次数

F04通信包读寄存器长度及命令累计次数

F16通信包写寄存器长度及命令累计次数

F06通信包命令累计次数,写寄存器长度固定为1

F23通信包写、读寄存器长度及命令累计次数

**累计次数范围1~65535,大于65535反转为0),寄存器为16位WORD

6.PLC通过以太网Modbus TCP读写CANWeb网关数据:

TCP:面向连接,可靠,慢,有序(如网页/文件)。

以太网Modbus TCP高速通信同时读写120个WORD扫描周期测试为5mS

6.1.WORD输出数据块定义:PLC用以太网Modbus对开发板写数据

PLC MBUS_CLIENT指令设置:

Modbus从站IP(是GW网关模块的IP)为222.222.221.151,端口502,RW=1

对应输出地址Addr为40009(9为上面起始地址8加1)

Count为120(最大值为120)

DataPtr为VB300

点选模块,按"F1"可调出在线帮助

6.2.WORD输入数据块定义:PLC用以太网Modbus从开发板读数据

PLC MBUS_CLIENT指令设置:

Modbus从站IP(是GW网关模块的IP)为222.222.221.151,端口502,RW=0

对应输入地址Addr为30014(14为上面起始地址13加1)

Count为120(最大值为120)

DataPtr为VB600

点选模块,按"F1"可调出在线帮助

6.3.以太网TCP通信质量监测

6.4.TCP通信速度 扫描周期计算

调出"Modbus从站参数显示"窗口

红框内可显示 CANWeb网关 与 西门子Smart PLC以太网通信的状态:

F04=120L63166F04功能码 对应的读寄存器长度为120,正好对应PLC程序中的 读120个参数的FB

F16=120L63153F16功能码 对应的写寄存器长度为120,正好对应PLC程序中的 写120个参数的FB

刷新Web页面并开始用手机秒表计时(0秒)!!!

并拷贝下Web页面的累计计数:

ENTMBCnt:F03=0L0F04=120L4149F16=120L4147F06=0F23=120WL120RL58899

100秒计时到 刷新web页面,拷贝下Web页面的累计计数:

ENTMBCnt:F03=0L0F04=120L27862F16=120L27860F06=0F23=120WL120RL58899

27862(100秒计数)- 4149(0秒计数)=23713(计数差)

每次命令扫描时间: 100*1000/23713=4.2毫秒

结论:

西门子S7-200 SMART PLC(CPU_SR20)通过以太网Modbus TCP指令同时读、写CANWeb网关内120个寄存器(WORD)扫描周期为5毫秒;

实际测试通信质量很好,通信中断计数长期保持为0。

7.PLC通过以太网Modbus UDP读写CANWeb网关数据:

UDP:无连接,不可靠(尽最大努力),快,无序(如视频/游戏等需实时通信的场景)。

以太网Modbus UDP高速通信同时读写120个WORD扫描周期测试为2mS

7.1.扫描脉冲2mS及UDP_CONNECT指令定义:

点选模块,按"F1"可调出在线帮助

7.2.UDP_SEND指令定义:

7.3.UDP_RECV 指令定义:

7.4.UDP通信质量监视,问答丢包计数

7.5.UDP通信速度 扫描周期计算

调出"Modbus从站参数显示"窗口

红框内可显示 CANWeb网关 与 西门子Smart PLC以太网通信的状态:

F23=120WL120RL25112F23功能码 对应的写寄存器长度为120,读寄存器长度为120,正好对应PLC程序中的 UDP_SEND及UDP_RECV指令的参数配置;

刷新Web页面并开始用手机秒表计时(0秒)!!!

并拷贝下Web页面的累计计数:

ENTMBCnt:F03=0L0F04=120L13414F16=120L13412F06=0F23=120WL120RL1530

100秒计时到 刷新web页面,拷贝下Web页面的累计计数:

ENTMBCnt:F03=0L0F04=120L13414F16=120L13412F06=0F23=120WL120RL51565

51565(100秒计数)- 1530(0秒计数)=50035(计数差)

每次命令扫描时间:100*1000/50035=1.99毫秒

结论:

西门子S7-200 SMART PLC(CPU_SR20)通过以太网Modbus UDP指令同时读、写CANWeb网关内120个寄存器(WORD)扫描周期为2毫秒,并能保持长时间不丢包,即问答丢包计数长期保持不变;

实际测量1毫秒扫描周期,通信也能正常,只是偶尔会丢包。

8.谁最适合这套方案?

中小型分散自动化项目的"王炸"------污水处理、楼宇自控、小型生产线、能源管理、化工配套......凡是需要远程IO、又不想被昂贵总线绑架的项目,这套组合都是最优解。

9.怎么上手?

(一)国产兼容200SMART PLC控制器,CR20带网口只要99元。

(二)西门子官方编程软件STEP-7-MicroWIN-SMART-V2.8.2.1免费下载。

STEP 7 MicroWIN SMART V3.0.1.0.iso及以上不支持 CPU SR20 CR20

https://w2.siemens.com.cn/smart/

(三)CANWeb开发板套件已在各大技术社区开放测试,含网关、IO开发板、源程序,几百元押金即可借用。

从选型到调试,从PLC到现场总线,全套方案一步到位。超高性价比的PLC加上高可靠的冗余总线:这套"王炸组合",值得你认真看一看。

期待您来借用测试!!推广测试用押金3xx元

CWIOKFB开发板套件含:

  • CANWeb网关×1

  • CWIO开发板×1

电源、USB下载器、调试笔记本电脑需用户自备。

开发板套件如下图:

下图为CWIO开发板:

CWIO开发板硬件含:5VDC供电输入,1路CAN接口、6DI(Dip)、6DO(LED)、1AI(旋钮)、1AO(LED电压输出)、1个温度测量探头、GD32F303RC芯片及1个SWD编程接口;

软件功能(源程序):6DI\\6DO\\1AI\\1AO测试程序及Web页面监控,配置参数设置及调用,DI\\AI滤波处理,AO\\DO掉电保持,掉电累计参数保持,通信中断处理,温度测量程序等。下图为开发板套件:

邮箱获取详细的工程案例及使用步骤说明:

  • SMART PLC与CANWeb开发板以太网Modbus通信工程项目文件.zip

  • SMART PLC与CANWeb开发板以太网Modbus通信详细步骤说明.pdf

  • 通信确定性可视化冗余现场总线CANWeb介绍.pdf

  • 冗余现场总线节点IO开发板套件说明.pdf

介绍链接:

好的标题可以获得更多的推荐及关注者

冗余现场总线节点IO开发板套件说明链接

类似参考文章:

通讯速度哪家强:PN通讯 VS Modbus TCP通讯 VS S7通讯

https://cloud.tencent.com/developer/news/576015

揭秘10种主流PLC在ModbusTCP通信中的速度表现!

https://zhuanlan.zhihu.com/p/18373327894

同等条件下,西门子PLC以太网通讯测试modbus TCP、S7、profinet效果对比

https://www.bilibili.com/video/BV1ivAnenEdj/

西门子PLC MODBUS TCP 与 UDP 通讯哪个更快?

https://www.ad.siemens.com.cn/club/bbs/Post_1439687_50_0_0_0_0_0__0.html

相关推荐
阿pin2 小时前
HTTP 协议的演进
网络·网络协议·http
bksczm2 小时前
Linux之网络层协议(IP协议)
linux·网络·tcp/ip
跨境技工小黎2 小时前
IPFoxy动态住宅IP实测:做数据采集和爬虫可行吗?
爬虫·网络协议·tcp/ip
秋田君2 小时前
QT_一个UDP通信程序(单播+广播)
开发语言·qt·udp
Mortalbreeze2 小时前
深入理解TCP协议(一):TCP报文格式详解
linux·服务器·网络·tcp/ip
SendTomo3 小时前
send.wang(私传网)P2P直连加速文件传输
网络·网络协议·webrtc·html5·p2p
学计算机的计算基3 小时前
TCP 传输层硬核整理:三次握手、四次挥手、拥塞控制一次讲透
java·网络·笔记·网络协议·算法
海鸥两三3 小时前
【websocket合集2】websocket.js源码解析和页面调用示例
javascript·websocket·网络协议
游戏开发爱好者813 小时前
带签名时间戳接口的重放与压力测试实战,用动态值在发送前现算签名
网络协议·计算机网络·网络安全·ios·adb·https·压力测试