CN110213385A - 一种工业设备Modbus串行通信的方法 - Google Patents
一种工业设备Modbus串行通信的方法 Download PDFInfo
- Publication number
- CN110213385A CN110213385A CN201910568461.1A CN201910568461A CN110213385A CN 110213385 A CN110213385 A CN 110213385A CN 201910568461 A CN201910568461 A CN 201910568461A CN 110213385 A CN110213385 A CN 110213385A
- Authority
- CN
- China
- Prior art keywords
- equipment
- modbus
- connection
- cloud server
- server terminal
- 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.)
- Pending
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/40—Bus networks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/14—Session management
- H04L67/141—Setup of application sessions
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/40—Bus networks
- H04L2012/40208—Bus networks characterized by the use of a particular bus standard
- H04L2012/40228—Modbus
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开了一种工业设备Modbus串行通信的方法,提出一种基于云的服务架构和对应的通信机制,Modbus从工业设备通过DTU连接互联网与云服务主动建立TCP连接,然后云服务利用建立的连接反向向从设备发送指令,以实现Modbus的主从通信机制,解决了用可伸缩的云服务模式连接大量Modbus设备;SlaveID和IP地址不足以标识一个设备同时由于数据的不兼容,大量的互联网数据处理工具很难直接用于Modbus数据等问题。
Description
技术领域
本发明涉及云和互联网环境下的工业设备服务架构,特别涉及工业设备Modbus串行通信的方法。
技术背景
Modbus是一种在工业自动化领域广泛使用的协议。现存大量的工业设备支持Modbus协议,并通过串行口与外界交换数据。这些设备往往运行在一个点对点或者小规模的串口网络上。设备用1-255的SlaveID作为标识,并通过主-从模式发送指令以及交换数据。指令由主设备发出,从设备收到指令后执行操作,返回结果或相应的数据。
近年来,随着互联网的发展,对于运行于互联网云服务上的监控系统(主设备),如何连接并操作串口Modbus设备渐渐成为工业远程监控的最大的挑战,比如虚拟串口需要系统级别的设置,并且需要占用一台专用机器,难以实现用可伸缩的云服务模式连接大量Modbus设备;其次,互联网环境需要连接大量来自不同网络的设备,SlaveID和IP地址都不足以标识一个设备;还有,由于数据的不兼容,大量的互联网数据处理工具很难直接用于Modbus数据。
发明内容
本发明为解决上述问题,提出一种基于云的服务架构和对应的通信机制。Modbus从工业设备通过DTU连接互联网与云服务主动建立TCP连接,然后云服务利用建立的连接反向向从设备发送指令,以实现Modbus的主从通信机制,具体实现如下所述:
一种工业设备Modbus串行通信的方法,如下所述:
云服务端作为虚拟的Modbus主设备运行,并暴露出一个公网可以访问的IP地址和对应的端口,用于接收来自从设备的TCP连接,包括如下步骤;
S1:工业Modbus设备通过DTU连接互联网,并设置将串口通过TCP协议连接到云服务的公网IP和端口上;
S2:发送连接请求:由工业Modbus从设备在没有接收到任何指令的情况下主动发送一个请求,如果从设备是可编程的,通过运行于设备上的程序实现该请求;如果从设备是不可编程的,通过DTU配置实现该请求;
S3:建立初始连接:
S3.1:步骤S2所述请求触发DTU向指定的云服务端建立连接;
S3.2云服务端接收到TCP连接后,记录该设备的SlaveID并丢弃该请求,保持TCP连接;
优选的,在步骤S3中,云服务端使用互联网字符串格式ID,来标示Modbus设备,从设备需要将自己对应的字符串ID写入自己的Modbus的16位寄存器中的一个约定的位置,在建立初始连接之后,云服务会首先用Modbus命令向从设备发出请求,读约定的Modbus寄存器,并用返回数据拼出字符串ID以确定从设备身份。
优选的,云服务端对每一个设备有配置,记录每个参数的寄存器地址和数据格式,以将数据翻译成互联网数据格式。
优选的,所述互联网字符串格式包括但不限于CUID格式;所述互联网数据格式包括但不限于JSON格式。
综上所述,由于本发明采用了上述技术方案,本发明具有以下技术效果与优点:
1、实现了用可伸缩的云服务模式连接大量Modbus设备,通过虚拟串口方法,解决了用以太网Modbus的方式,由于DTU的动态IP,互联网防火墙和NAT网关的原因,导致云服务基本无法发起向DTU的连接问题。
2、实现了互联网环境需要连接大量来自不同网络的设备,SlaveID和IP地址都不足以标识一个设备。
3、Modbus数据是基于字节的数据,本发明通过云服务端作为虚拟的Modbus主设备,兼容了Modbus服务端与互联网采用的基于文本的数据格式(比如JSON,XML)并不兼容的问题,使得大量的互联网数据处理工具可以直接用于Modbus数据。
附图说明
图1为本发明的流程图。
图2为本发明标示Modbus设备的流程图
具体实施方式
如图1所示的一种工业设备Modbus串行通信的方法,如下所述:
云服务端作为虚拟的Modbus主设备运行,并暴露出一个公网可以访问的IP地址和对应的端口,用于接收来自从设备的TCP连接,包括如下步骤;
S1:工业Modbus设备通过DTU连接互联网,并设置将串口通过TCP协议连接到云服务的公网IP和端口上;
S2:发送连接请求:由工业Modbus从设备在没有接收到任何指令的情况下主动发送一个请求,如果从设备是可编程的,通过运行于设备上的程序实现该请求;如果从设备是不可编程的,通过DTU配置实现该请求;
S3:建立初始连接:
S3.1:步骤S2所述请求触发DTU向指定的云服务端建立连接;
S3.2云服务端接收到TCP连接后,记录该设备的SlaveID并丢弃该请求,保持TCP连接;
如图2所述,在步骤S3中,云服务端使用互联网常用的字符串ID(例如CUID格式)来标示Modbus设备,从设备需要将自己对应的字符串ID写入自己的Modbus的16位寄存器中的一个约定的位置(例如地址0-12),在建立初始连接之后,云服务会首先用Modbus命令向从设备发出请求,读约定的Modbus寄存器,并用返回数据拼出字符串ID以确定从设备身份。
例如,约定设备的16位寄存器0-12存放设备标识,格式为CUID字符串,设备SlaveID:1
在Modbus寄存器中的数据:
寄存器地址 | 数据 |
0 | 63 6A |
1 | 6C 64 |
2 | 32 63 |
3 | 6A 78 |
4 | 68 30 |
5 | 30 30 |
6 | 30 71 |
7 | 7A 72 |
8 | 6D 6E |
9 | 38 33 |
10 | 31 69 |
11 | 37 72 |
12 | 6E 00 |
云服务发出的Modbus读指令:01 04 0000 000C<CRC>
从设备返回的数据转换成字符串:1cjld2cjxh0000qzrmn831i7rn
云服务端对每一个设备有配置,记录每个参数的寄存器地址和数据格式,以将数据翻译成互联网数据格式。
以JSON格式为例,配置和转换结果例子如下:
所述互联网字符串格式使用CUID格式;所述互联网数据格式使用JSON格式。
以上实施方式仅用于说明本发明,而并非对本发明的限制,有关技术领域的普通技术人员,在不脱离本发明的精神和范围的情况下,还可以做出各种变化与变型,因此所有等同的技术方案也属于本发明的范畴,本发明的专利保护范围应由权利要求限定。
Claims (4)
1.一种工业设备Modbus串行通信的方法,其特征在于,包括如下步骤:
云服务端作为虚拟的Modbus主设备运行,并暴露出一个公网可以访问的IP地址和对应的端口,用于接收来自从设备的TCP连接,包括如下步骤;
S1:工业Modbus设备通过DTU连接互联网,并设置将串口通过TCP协议连接到云服务的公网IP和端口上;
S2:发送连接请求:由工业Modbus从设备在没有接收到任何指令的情况下主动发送一个包含SlaveID的Modbus请求,如果从设备是可编程的,通过运行于设备上的程序实现该请求;如果从设备是不可编程的,通过连接设备串口的DTU(data transfer unit)的Modbus.RTU配置实现该请求;
S3:建立初始连接:
S3.1:步骤S2所述请求触发DTU向指定的云服务端建立连接;
S3.2云服务端接收到TCP连接后,记录该设备的SlaveID并丢弃该请求,保持TCP连接;
S3.3云服务端利用该连接持续向DTU发送Modbus指令。
2.根据权利要求1所述的一种工业设备Modbus串行通信的方法,其特征在于:在步骤S3中,云服务端使用互联网字符串格式ID,来标示Modbus设备,从设备将对应的字符串ID写入该设备的Modbus16位寄存器中,建立初始连接之后,云服务端首先用Modbus命令向从设备发出请求,读取Modbus寄存器,并用返回数据拼出字符串ID确定从设备身份。
3.根据权利要求1所述的一种工业设备Modbus串行通信的方法,其特征在于:云服务端对连接的每一个设备进行配置,记录每个参数的寄存器地址和数据格式,将数据翻译成互联网数据格式。
4.根据权利要求2或3所述的一种工业设备Modbus串行通信的方法,其特征在于:所述互联网字符串格式包括但不限于CUID格式;所述互联网数据格式包括但不限于JSON格式。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910568461.1A CN110213385A (zh) | 2019-06-27 | 2019-06-27 | 一种工业设备Modbus串行通信的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910568461.1A CN110213385A (zh) | 2019-06-27 | 2019-06-27 | 一种工业设备Modbus串行通信的方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110213385A true CN110213385A (zh) | 2019-09-06 |
Family
ID=67795035
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910568461.1A Pending CN110213385A (zh) | 2019-06-27 | 2019-06-27 | 一种工业设备Modbus串行通信的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110213385A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114039964A (zh) * | 2020-07-21 | 2022-02-11 | 南京航空航天大学 | 一种基于GPRS和Modbus协议的远程水阀控制方法 |
CN114401305A (zh) * | 2021-12-13 | 2022-04-26 | 国家电投集团数字科技有限公司 | 一种通信连接方法及装置 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103561032A (zh) * | 2013-11-08 | 2014-02-05 | 山东大学 | TCP/IP协议下Modbus设备网络通信的方法 |
CN104635691A (zh) * | 2014-12-31 | 2015-05-20 | 北京清大国华环保科技有限公司 | 一种数据采集与分析的云服务系统 |
CN106790222A (zh) * | 2017-01-12 | 2017-05-31 | 重庆邮电大学 | 一种modbus/全互联制造网络信息服务适配器及其实现方法 |
US20180116022A1 (en) * | 2016-10-26 | 2018-04-26 | General Electric Company | Modular lighting controller and data acquisition platform |
CN208862854U (zh) * | 2018-11-01 | 2019-05-14 | 杭州乐舜信息科技有限公司 | 一种对接modbus设备的可远程动态配置云通讯装置 |
CN109917742A (zh) * | 2019-03-25 | 2019-06-21 | 北京龙鼎源科技股份有限公司 | 可编程逻辑控制器plc系统、数据上传方法 |
-
2019
- 2019-06-27 CN CN201910568461.1A patent/CN110213385A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103561032A (zh) * | 2013-11-08 | 2014-02-05 | 山东大学 | TCP/IP协议下Modbus设备网络通信的方法 |
CN104635691A (zh) * | 2014-12-31 | 2015-05-20 | 北京清大国华环保科技有限公司 | 一种数据采集与分析的云服务系统 |
US20180116022A1 (en) * | 2016-10-26 | 2018-04-26 | General Electric Company | Modular lighting controller and data acquisition platform |
CN106790222A (zh) * | 2017-01-12 | 2017-05-31 | 重庆邮电大学 | 一种modbus/全互联制造网络信息服务适配器及其实现方法 |
CN208862854U (zh) * | 2018-11-01 | 2019-05-14 | 杭州乐舜信息科技有限公司 | 一种对接modbus设备的可远程动态配置云通讯装置 |
CN109917742A (zh) * | 2019-03-25 | 2019-06-21 | 北京龙鼎源科技股份有限公司 | 可编程逻辑控制器plc系统、数据上传方法 |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114039964A (zh) * | 2020-07-21 | 2022-02-11 | 南京航空航天大学 | 一种基于GPRS和Modbus协议的远程水阀控制方法 |
CN114039964B (zh) * | 2020-07-21 | 2023-05-12 | 南京航空航天大学 | 一种利用Modbus协议远程控制水阀设备的方法 |
CN114401305A (zh) * | 2021-12-13 | 2022-04-26 | 国家电投集团数字科技有限公司 | 一种通信连接方法及装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5035480B1 (ja) | データ中継装置、データ送信装置、ネットワークシステム | |
WO2016070628A1 (zh) | 一种电力线载波通讯终端控制装置、系统及方法 | |
WO2020063995A1 (zh) | Pon网络,用于pon网络的方法及装置,以及机器人系统 | |
CN100370788C (zh) | 在网络环境仿真中采用虚拟网卡实现数据通信的方法 | |
US20090177289A1 (en) | Block-orientated control system having wireless gateway for communication with wireless field devices | |
CN106790222B (zh) | 一种modbus/全互联制造网络信息服务适配器及其实现方法 | |
US9467374B2 (en) | Supporting multiple IEC-101/IEC-104 masters on an IEC-101/IEC-104 translation gateway | |
US7269661B2 (en) | Method using receive and transmit protocol aware logic modules for confirming checksum values stored in network packet | |
CN108449250A (zh) | 一种支持多总线的io-link主站装置及方法 | |
CN112866018A (zh) | 物联网管理系统及方法 | |
CN110213385A (zh) | 一种工业设备Modbus串行通信的方法 | |
CN113810271B (zh) | 一种物联网网关南向设备接口代理装置及实现方法 | |
CN105634788B (zh) | 一种单板及单板管理方法、系统 | |
CN109428949A (zh) | 一种基于sdn实现arp代理的方法和装置 | |
CN107222458A (zh) | 一种兼容Modbus协议的BACnet协议栈的数据处理方法及系统 | |
CN112910725B (zh) | 一种网络流量检测方法及装置、计算机可读存储介质 | |
CN106533934A (zh) | 一种适用于全互联制造网络的边界网关 | |
CN113472637A (zh) | 一种lora网关 | |
CN106657377B (zh) | 一种wia-pa/全互联制造网络信息服务适配器及实现方法 | |
CN110086745A (zh) | 一种自动化连线数据采集控制系统 | |
JP2000236348A (ja) | インターネットプロトコルを用いた遠隔機器の管理システム | |
CN114285877A (zh) | 一种通用工业设备通讯系统和方法 | |
JP6096464B2 (ja) | プロキシ装置及び中継装置 | |
CN108809795A (zh) | 一种局域网环境中透明分流方法和装置 | |
CN212463256U (zh) | 一种物联网无线终端设备及通信模块 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20190906 |