CN102938728A - 一种Modbus TCP/IP转Modbus串行网关的实现方法 - Google Patents
一种Modbus TCP/IP转Modbus串行网关的实现方法 Download PDFInfo
- Publication number
- CN102938728A CN102938728A CN2012103974054A CN201210397405A CN102938728A CN 102938728 A CN102938728 A CN 102938728A CN 2012103974054 A CN2012103974054 A CN 2012103974054A CN 201210397405 A CN201210397405 A CN 201210397405A CN 102938728 A CN102938728 A CN 102938728A
- Authority
- CN
- China
- Prior art keywords
- gateway
- order
- data
- server
- modbus
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明涉及一种Modbus TCP/IP转Modbus串行网关的实现方法,服务器和串行网络间设置的网关存储有设备响应数据,在服务器向网关发送读命令后,网关在命令列表中查找该读命令,存在该读命令则直接从命令对应的缓存中读取数据返回给服务器;不存在该读命令则由网关转换并向串行网络发送该读命令,在该读命令得到响应后返回服务器对应的设备响应数据,同时网关记录该读命令并缓存该读命令对应的设备响应数据;在服务器向网关发送写命令后,网关直接转换并向串行网络发送该写命令,成功则更新网关中的数据缓存。
Description
技术领域
本发明涉及一种工业以太网的数据传输方法,尤其是涉及一种ModbusTCP/IP转Modbus串行网关的实现方法。
背景技术
随着工业现场监控和信息化管理的进程,工业以太网应用技术不断的发展。工业以太网是西门子公司提出的一种基于以太网通讯的一种工业用的通讯模式。与传统的基于RS485,CAN等总线相比,显著地优越性是:速度快,稳定性高,抗干扰能力强,互联性和兼容性好。
目前,主流的工业以太网标准有Ethernet/IP,PROFINET,ModbusTCP/IP,都是基于标准TCP/IP协议实现的,正在逐步取代传统的网络。
但是工业现场目前还存在着大量的串行口设备,他们支持Modbus串行协议,但是串行网络只支持短距离传输,不能满足网络远程监控和信息化管理的需求。为了解决该问题,出现了Modbus网关。附图1为Modbus网络的拓扑结构,其中Modbus网关的作用就是转换两种网络的数据协议。
标准的Modbus TCP/IP转Modbus串行网关,仅实现了TCP/IP网络和串行网络的协议转换。还有专利号为200920213351.5的发明专利,在标准Modbus TCP/IP转Modbus串行网关的基础上,增加了主站的功能,但是主站的命令需要额外软件手工配置,不够灵活,不能满足命令动态变化的要求。
由于网关两端网络不同,数据的传输速率不同,导致数据传输缓慢的一侧网络成为了数据传输的瓶颈。例如,网关一侧是以太网,10M/100Mbps,另一侧是RS485串行线,9600bps,如果多个服务器同时访问串行网络的话,传统网关将多个请求排序,依次向串行网络发送数据,等待串行网络的响应完成,这样数据传输速度就限制在串行网络的速度上。对于工业现场有很多设备的情况下,完成所有设备的数据读取,需要很长时间,影响了用户的体验,不能满足现场监控的需求。
发明内容
为了解决上述问题,本发明采用了类似于CPU内部的高速缓存(cache)的设计思想,实现命令和数据的换入换出功能,对于不经常访问的以及掉电的设备,命令和数据将被网关换出,释放存储空间以换入访问频率较高的命令和数据,实现了命令和数据的动态更新。这样将服务器经常访问的数据实时的映射到网关的存储中,实现了网关和设备的数据同步。
其实现方法如下所述:
一种Modbus TCP/IP转Modbus串行网关的实现方法,服务器和串行网络间设置的网关存储有设备响应数据,在服务器向网关发送读命令后,网关在命令列表中查找该读命令,存在该读命令则直接从命令对应的缓存中读取数据返回给服务器;不存在该读命令则由网关转换并向串行网络发送该读命令,在该读命令得到响应后返回服务器对应的设备响应数据,同时网关记录该读命令并缓存该读命令对应的设备响应数据;在服务器向网关发送写命令后,网关直接转换并向串行网络发送该写命令,成功则更新网关中的数据缓存。
网关中读命令对应的缓存数据更新由网关自动完成,网关周期性的向串行网络发送命令列表中记录的命令,并将设备响应的数据更新各命令对应的数据缓存;网关中写命令对应的数据更新,由服务器发送命令成功时更新。
服务器在设定时间内不再发送相同的命令,则该命令被视为无效,该命令以及对应的缓存数据将被换出,以减小数据缓存的空间占用和网关中缓存数据的更新周期。
服务器的命令比网关轮询命令有更高的优先级,在完成当前轮询命令之后立刻响应服务器请求。
服务器读取设备数据时,直接从网关中获取数据,而不再从设备获取数据,这样数据在服务器和网关之间的高速工业以太网中传输,极大地提高了传输速度,即使多个服务器并发访问,也可以完全满足要求。
附图说明
图1是Modbus网络的拓扑结构;
图2是本方法实施例中的初始化流程图;
图3是本方法实施例中的监听线程流程图;
图4是本方法实施例中的Client线程流程图;
图5是本方法实施例中的数据更新线程流程图。
具体实施方式
图1是Modbus网络的拓扑结构,在服务器和串行设备间设置有网关,在多个服务器发送命令后,网关对命令进行排队处理,一一响应,在第一个命令没有得到处理完全后,会影响之后的命令,所以本发明提出了一种新的数据传输方式,服务器和串行网络间设置的网关存储有设备响应数据,命令处理如下所述:
Modbus读命令
服务器向网关发送读命令,网关查找命令列表中是否存在该命令,如果命令不存在,网关转换并向串行网络发送命令,如果命令得到响应,则网关记录命令,并缓存命令对应的设备响应数据;
如果服务器发送网关中存在的命令,则网关直接从命令对应的缓存中读取数据返回给服务器,此时数据在TCP/IP高速网络中传输,比从串行网络上再次请求数据快很多,缩短了数据的采集时间;
Modbus写命令
服务器向网关发送写命令,网关并不记录写命令,而是直接转换并向串行网络发送命令,成功则更新网关中的数据缓存,所以该方法不提高写命令的速度。
图2到图5表示了数据处理的流程图,网关初始化后开始启动数据更新线程,然后开始启动监听线程,进而启动Client线程。图4更确切的表达了整个数据处理的流程。其中,网关中读命令对应的缓存数据更新由网关自动完成,网关周期性的向串行网络发送命令列表中记录的命令,并使用设备响应的数据更新各命令对应的数据缓存;网关中写命令对应的数据更新,由服务器发送命令成功时更新。
网关命令和数据的换入换出方法见图5,如果服务器在设定时间内不再发送相同的命令,则该命令被视为无效,该命令以及对应的缓存数据将被换出,以减小数据缓存的空间占用和网关中缓存数据的更新周期,换入方法参见Modbus读命令。
对于命令优先级处理方法,由于网关在轮询更新缓存数据时,会占用串行网络总线,服务器命令和网关记录的命令访问串行网络时,需要进行排队。在实现时,服务器的命令,比轮询命令有更高的优先级,优先响应服务器的请求,即在完成当前轮询命令之后立刻响应服务器请求,这样实现基本不会增加服务命令的响应时间。
服务器读取设备数据时,直接从网关中获取数据,而不再从设备获取数据,这样数据在服务器和网关之间的高速工业以太网中传输,极大地提高了传输速度,即使多个服务器并发访问,也可以完全满足要求。
Claims (4)
1.一种Modbus TCP/IP转Modbus串行网关的实现方法,其特征在于:服务器和串行网络间设置的网关存储有设备响应数据,在服务器向网关发送读命令后,网关在命令列表中查找该读命令,存在该读命令则直接从命令对应的缓存中读取数据返回给服务器;不存在该读命令则由网关转换并向串行网络发送该读命令,在该读命令得到响应后返回服务器对应的设备响应数据,同时网关记录该读命令并缓存该读命令对应的设备响应数据;在服务器向网关发送写命令后,网关直接转换并向串行网络发送该写命令,成功则更新网关中的数据缓存。
2.根据权利要求1所述的Modbus TCP/IP转Modbus串行网关的实现方法,其特征在于:网关中读命令对应的缓存数据更新由网关自动完成,网关周期性的向串行网络发送命令列表中记录的命令,并将设备响应的数据更新各命令对应的数据缓存;网关中写命令对应的数据更新,由服务器发送命令成功时更新。
3.根据权利要求1所述的Modbus TCP/IP转Modbus串行网关的实现方法,其特征在于:服务器在设定时间内不再发送相同的命令,则该命令被视为无效,该命令以及对应的缓存数据将被换出,以减小数据缓存的空间占用和网关中缓存数据的更新周期。
4.根据权利要求2所述的Modbus TCP/IP转Modbus串行网关的实现方法,其特征在于:服务器的命令比网关轮询命令有更高的优先级,在完成当前轮询命令之后立刻响应服务器请求。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210397405.4A CN102938728B (zh) | 2012-10-18 | 2012-10-18 | 一种Modbus TCP/IP转Modbus串行的网关的实现方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210397405.4A CN102938728B (zh) | 2012-10-18 | 2012-10-18 | 一种Modbus TCP/IP转Modbus串行的网关的实现方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102938728A true CN102938728A (zh) | 2013-02-20 |
CN102938728B CN102938728B (zh) | 2015-08-19 |
Family
ID=47697598
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201210397405.4A Active CN102938728B (zh) | 2012-10-18 | 2012-10-18 | 一种Modbus TCP/IP转Modbus串行的网关的实现方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102938728B (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103595625A (zh) * | 2013-11-27 | 2014-02-19 | 上海电器科学研究院 | 一种通信网关的实现方法 |
CN107483463A (zh) * | 2017-08-30 | 2017-12-15 | 郑州众智科技股份有限公司 | 一种上位机与发电机组控制器通过ModbusTCP/IP通讯的方法 |
CN113949604A (zh) * | 2021-10-19 | 2022-01-18 | 成都亿佰特电子科技有限公司 | Modbus网关指令处理方法、装置以及网关设备 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1645852A (zh) * | 2004-12-15 | 2005-07-27 | 上海大学 | Modbus/tcp工业以太网和profibus—dp现场总线间的协议转换方法和装置 |
CN201557131U (zh) * | 2009-12-18 | 2010-08-18 | 上海电器科学研究所(集团)有限公司 | Modbus/TCP-MODBUS通信网关 |
CN101895462A (zh) * | 2010-01-28 | 2010-11-24 | 袁亚军 | 串行通信网关 |
EP2378713A1 (en) * | 2010-04-14 | 2011-10-19 | Yokogawa Electric Corporation | Register configurator, register configuration method and field control system |
CN102546619A (zh) * | 2011-12-29 | 2012-07-04 | 浙江工业大学 | 基于3G上网的Modbus协议转换系统 |
-
2012
- 2012-10-18 CN CN201210397405.4A patent/CN102938728B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1645852A (zh) * | 2004-12-15 | 2005-07-27 | 上海大学 | Modbus/tcp工业以太网和profibus—dp现场总线间的协议转换方法和装置 |
CN201557131U (zh) * | 2009-12-18 | 2010-08-18 | 上海电器科学研究所(集团)有限公司 | Modbus/TCP-MODBUS通信网关 |
CN101895462A (zh) * | 2010-01-28 | 2010-11-24 | 袁亚军 | 串行通信网关 |
EP2378713A1 (en) * | 2010-04-14 | 2011-10-19 | Yokogawa Electric Corporation | Register configurator, register configuration method and field control system |
CN102546619A (zh) * | 2011-12-29 | 2012-07-04 | 浙江工业大学 | 基于3G上网的Modbus协议转换系统 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103595625A (zh) * | 2013-11-27 | 2014-02-19 | 上海电器科学研究院 | 一种通信网关的实现方法 |
CN103595625B (zh) * | 2013-11-27 | 2016-07-06 | 上海电器科学研究院 | 一种通信网关的实现方法 |
CN107483463A (zh) * | 2017-08-30 | 2017-12-15 | 郑州众智科技股份有限公司 | 一种上位机与发电机组控制器通过ModbusTCP/IP通讯的方法 |
CN113949604A (zh) * | 2021-10-19 | 2022-01-18 | 成都亿佰特电子科技有限公司 | Modbus网关指令处理方法、装置以及网关设备 |
Also Published As
Publication number | Publication date |
---|---|
CN102938728B (zh) | 2015-08-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2015078219A1 (zh) | 一种信息缓存方法、装置和通信设备 | |
US20140165119A1 (en) | Offline download method, multimedia file download method and system thereof | |
US10057368B1 (en) | Method and system for incremental cache lookup and insertion | |
WO2017128789A1 (zh) | 一种通信方法及系统 | |
CN103905572A (zh) | 域名解析请求的处理方法及装置 | |
CN101656985B (zh) | 一种管理url资源缓存的方法和装置 | |
CN103067529B (zh) | 一种远程监控系统 | |
US20140321480A1 (en) | Named data networking in local area networks | |
CN103546467A (zh) | 在TCP/IP网络上传输Modbus RTU协议的方法 | |
CN103312751A (zh) | 一种基于浏览器的即时通信方法 | |
CN103227826A (zh) | 一种文件传输方法及装置 | |
CN102906715B (zh) | 优化缓存存储器管理的方法和对应装置 | |
EP1850196B1 (en) | Programmable controller with communication unit capable of responding in real time to request of I/O data | |
CN102938728B (zh) | 一种Modbus TCP/IP转Modbus串行的网关的实现方法 | |
CN101237415A (zh) | 一种实现arp协议ip核的方法 | |
CN112104451B (zh) | 一种数据包传输端口的刷新方法和装置 | |
CN112202833B (zh) | Cdn系统、请求处理方法以及调度服务器 | |
CN102572011B (zh) | 数据处理方法、装置和系统 | |
CN103138965B (zh) | 一种查询物联网设备状态的方法、装置和系统 | |
CN102075584B (zh) | 一种分布式文件系统及其访问方法 | |
WO2019052299A1 (zh) | 一种sdn交换机和sdn交换机的应用管理方法 | |
CN110805991A (zh) | 一种控制终端与中央空调的状态同步的方法及装置 | |
CN202103713U (zh) | 访问系统 | |
CN105681489A (zh) | 一种域名系统dns查询的方法及装置 | |
CN103220260A (zh) | 更新数据的方法、服务器、客户端及系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |