CN106549864B - 一种云网关的通信实现方法 - Google Patents
一种云网关的通信实现方法 Download PDFInfo
- Publication number
- CN106549864B CN106549864B CN201611114058.4A CN201611114058A CN106549864B CN 106549864 B CN106549864 B CN 106549864B CN 201611114058 A CN201611114058 A CN 201611114058A CN 106549864 B CN106549864 B CN 106549864B
- Authority
- CN
- China
- Prior art keywords
- data
- cloud
- cloud platform
- communication
- gateway
- 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.)
- Active
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/66—Arrangements for connecting between networks having differing types of switching systems, e.g. gateways
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
-
- 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/143—Termination or inactivation of sessions, e.g. event-controlled end of session
- H04L67/145—Termination or inactivation of sessions, e.g. event-controlled end of session avoiding end of session, e.g. keep-alive, heartbeats, resumption message or wake-up for inactive or interrupted session
Abstract
本发明提供了一种云网关,其特征在于,包括:注册处理单元;数据交互处理单元;通信保活处理单元;控制命令处理单元;数据采集控制单元。本发明的另一个技术方案是提供了一种上述的云网关的通信实现方法。本发明的目的在于提供一种云网关与云平台的通信方法,改变原先主站掌握网络主控权的通信方式,由云网关掌握主控权,实现本地设备与云平台的数据交互。
Description
技术领域
本发明涉及一种云网关。本发明还涉及一种云网关与云平台间以及现场设备通过云网关与云平台间的通信方法。
背景技术
随着计算机技术、通信技术和控制技术的发展,传统的控制领域开始向网络化方向发展。控制系统的结构从最初的CCS(计算机集中控制系统),到第二代的DCS(分散控制系统),发展到九十年代流行的FCS(现场总线控制系统),主流的现场总线如Profibus-DP、DeviceNet、CANopen等,组建的系统图如图1所示。主站为整个系统的灵魂,掌握主控权,负责管理网络内所有从站。以 Profibus-DP为例,主站与从站的通信一般分为周期性通信与非周期性通信,用户根据实际需求,在上位机配置软件中选择配置多少个从站,从站的基本通信参数等信息,下载到主站中,主站即按照配置信息与每个从站通信。主站周期性(比如200ms)轮询所有从站,主站把输出数据(控制命令)传递给从站,从站把输入数据(采集数据)传递给主站。当主站轮询完所有从站后,会查看是否有给某个从站的非周期读写需求,如果有,则发送相应非周期报文,交互相应数据。若有些设备本体具有通信接口,则可直接连接到该通信网络。有些设备本体只有 Modbus、或其它通信接口,若要连接到指定网络,如Profibus-DP网络,则需要通过网关实现协议的中转,一个网关可连接多个设备。
2000年前后,Internet迅速发展,线缆和接口设备价格相对较低、通信速率高、软硬件资源丰富、可持续发展潜力大,工业以太网应运而生,在工业企业综合自动化系统中的资源管理层、执行制造层得到广泛应用,同时已向下延伸直接应用于工业控制现场,如Modbus/TCP、EtherNet/IP、Profinet等,但系统架构也如图1所示,只是通信速率大幅度提升、通信数据量大幅提高,通信的机制、本质没有改变。
而近年来,随着互联网、物联网、云计算、大数据等新技术的发展,工业自动化也发生了变革,慢慢走向“广域自动化”。工业现场的数据需要与云平台发生交互,而云平台的数据处理能力、管理能力有了本质的飞跃,可能管理成千上万台设备,且可以随着服务器的扩展不断灵活增加。这些设备可以部署在全国各地,乃至全世界,如果采用传统的通信方式,则需要云平台去与每台设备连接,这就需要事先知道每台设备的配置信息,如IP地址,数据定义等,这极大增加了系统配置、组网的难度;且传统的工业控制系统,主站定期轮询所有从站设备,无论从站设备数据有没有发生改变,主站都会定期接收这些数据,当设备数据没有发生改变的时候,这些数据毫无意义,却占用了通信带宽,提高了主站、从站设备的运行处理负荷,而云平台需要管理的从站设备众多,无谓的数据会极大降低云平台的通信处理实时性。
发明内容
本发明的目的是实现设备与云平台的数据交互。
为了达到上述目的,本发明的一个技术方案是提供了一种云网关,其特征在于,包括:
注册处理单元,用于依据获得的云平台的授权码完成注册,注册时,云平台向注册处理单元发送所需交互数据内容,注册处理单元依据所需交互数据内容相云平台反馈相应的包含有授权码的交互数据,从而完成注册;
数据交互处理单元,用于将接收自数据采集控制单元的数据发送给云平台;
通信保活处理单元,用于确保当前云网关与云平台之间保持正常的数据通信,通信保活处理单元定期向云平台发送保活请求,云平台收到后反馈相应状态,通信保活处理单元根据接收到的状态信息判断当前云网关与云平台之间是否保持正常的数据通信;
控制命令处理单元,用于处理发送自云平台的用于远程控制现场设备的控制命令,并把控制命令发送给数据采集控制单元;
数据采集控制单元,一方面用于采集与当前云网关相连的各个现场设备的数据,并判断采集到的数据是否发生变化,仅在数据发生变化时将采集到的数据发送给数据交互处理单元,另一方面将接受控制命令处理单元的控制命令发送至相应的现场设备。
优选地,所述通信保活处理单元定期向云平台发送保活请求,云平台收到后反馈相应状态,所述通信保活处理单元根据接收到的状态信息判断当前云网关与云平台之间是否保持正常的数据通信。
优选地,所述控制命令处理单元周期性地向云平台发送控制命令查询信息,云平台如果有控制命令要下发,则把控制命令数据发送给所述控制命令处理单元,云平台如果没有控制命令要下发,则反馈给控制命令处理单元无控制命令。
优选地,所述数据采集控制单元采用Modbus现场总线协议与各个现场设备交互数据。
优选地,所述数据采集控制单元与所述数据交互处理单元之间通过mysql 数据库中转数据。
优选地,所述通信保活处理单元及所述控制命令处理单元都依赖系统时间片轮转的方式进行调度。
本发明的另一个技术方案是提供了一种上述的云网关的通信实现方法,其特征在于,包括以下步骤:
步骤1、云网关将授权码发送到云平台,等待云平台回复激活信息,若在设定的时间内未获得激活信息,则云网关重复发送授权码至云平台,若云网关获得激活信息,则开启设备数据采集线程、命令线程、云数据发送线程、云命令处理线程;
云平台收到授权码后,若确认此云网关合法,则云平台把激活信息发送给此云网关;
步骤2、执行数据采集线程:根据用户配置的设备信息、通信参数,逐个轮询现场设备,把收到的采集数据存放到相应的采集数据库中,再查看采集数据库,检索数据是否有变化,如果有,则压入采集数据更新消息队列;
执行命令线程:查看控制指令消息队列,看是否有新的控制命令产生,如果有,则向相应的现场设备直接发送控制命令;
步骤3、执行云数据发送线程:首先,查询采集数据更新消息队列是否有更新,如果有更新,则对更新的数据进行打包处理,压入数据包队列,其次,判断保活时间是否到,如果到了,则组保活数据包,压入数据包队列;同时开始轮询数据包队列,如果数据包队列中有数据,则发送数据,并接收云平台的反馈信息,判断发送是否成功,如果没有成功,则压入待重发队列,如果成功,则循环发送数据包队列的数据,直至队列空,最后轮询待重发队列,若有重发数据且重发时间间隔到,则取相应数据包处理,同时判断数据包重发次数,若超过规定次数,则丢弃数据。
步骤4:执行云命令处理线程,定期发送轮询云端指令数据的报文,根据云平台反馈的信息判断是否有新的控制命令,如果有则压入控制指令消息队列,如果没有,则定期轮询。
优选地,在所述步骤1中,所述的激活信息包括所需交互的数据类型、数据定义。
本发明的目的在于提供一种云网关与云平台的通信方法,改变原先主站掌握网络主控权的通信方式,由云网关掌握主控权,实现本地设备与云平台的数据交互,其具有如下优点:
1)云平台无需配置组网,只需注册认证,减少了系统配置、组网的难度。
2)只有在采集数据发生改变的时候才向云平台传递,极大减少了网络数据流量,极大提升了云平台数据的整体处理能力和数据反馈的实时性。
3)保活机制确保了云网关与云平台双方都能确定彼此通信是否正常,能及时发现异常情况,并报警处理。
4)云平台无法向云网关发送数据,通过轮询的方式解决云平台向本地设备发出控制指令,远程控制设备。
5)通过注册认证机制确保无关或有某些威胁的设备无法与云平台交互数据,提升云平台与云网关数据通信的安全性。
6)从应用角度,云网关与云平台实现通信交互,用户通过云平台能够随时了解设备所处位置、实时运行参数等信息;特别是设备发生故障时,设备维护人员不必马上奔赴现场排查,可通过云网关对现场设备进行远程诊断,判断故障类型,做进一步处理,可极大降低设备维护成本。
附图说明
图1为传统工业控制系统架构;
图2为云网关应用框图;
图3为云网关数据交互图;
图4为云网关通信流程。
具体实施方式
为使本发明更明显易懂,兹以优选实施例,并配合附图作详细说明如下。
如图3所示,本发明提供的一种云网关包括以下五个单元:
1)注册处理单元
注册处理单元主要完成云网关的身份认证,每台网关在出厂前需获得云平台的授权码,作为云网关能与云平台正常通信的凭证,这样云平台只与合法的云网关进行数据交互,确保网络通信安全。注册过程中,云平台同时向云网关发送所需交互数据内容,云网关注册成功后,按照云平台的需求进行数据交互。
2)数据交互处理单元
数据交互处理单元主要完成采集数据向云平台的发送,当采集数据发生改变时,能及时发送给云平台,云平台能正确收到相应数据。
3)通信保活处理单元
通信保活处理单元主要为了确保云网关与云平台之间的通信正常,云网关定期向云平台向云平台发送保活请求,云平台收到后反馈相应状态。
4)控制命令处理单元
控制命令处理单元主要实现云平台发送控制命令远程控制本地设备。云网关周期性向云平台发送控制命令查询信息,云平台如果有控制要求,则把控制命令数据发送给云网关,云网关接收数据后进行处理,并把控制命令发送给相应设备;若没有控制要求,则反馈给云网关无控制命令,云网关不做任何处理。
5)数据采集控制单元
数据采集控制单元主要实现设备采集数据的获取,并把接收到的云网关的控制命令发送给相应设备。云网关与本地设备的通信还是采取传统的通信模式,采用Modbus现场总线协议与每个设备交互数据。
数据交互处理单元与数据采集控制单元之间通过mysql数据库中转数据。通信保活处理单元与控制命令处理单元都依赖系统时间片轮转的方式进行调度。数据交互处理单元的执行方式是COS(change of state)的,而单元3与单元4的执行具有固定频率。数据交互处理单元与数据采集控制单元组成了云网关的数据处理模块,而通信保活处理单元与控制命令处理单元则组成了云网关的状态控制模块。
本发明提供的一种云网关通信实现方法如图4所示包括以下步骤:
步骤1:
将出厂配置的注册通信码发送到云平台,等待云平台的回复信息,若未获得激活信息,则重复发送注册通信码至云平台;如果云平台确认此云网关合法,则云平台把所需交互的数据类型、数据定义发送给此网关,网关获得激活信息后,开启设备数据采集、命令线程、云数据发送线程、云命令处理线程。
步骤2:
执行数据采集、命令线程,根据用户配置的设备信息、通信参数,根据Modbus 通信要求,逐个轮询设备,把收到的采集数据存放到相应的采集数据库中。在此过程中,查看控制指令消息队列,看是否有新的控制命令产生,如果有,则向设备直接发送控制命令。同时查看采集数据库,检索数据是否有变化,如果有,则压入采集数据更新消息队列。
步骤3:
执行云数据发送线程,首先查询是否有采集数据更新消息,如果有新消息,则对数据进行打包处理,压入数据包队列;其次判断保活时间(如间隔6分钟) 是否到,如果到了,则组保活数据包,压入数据包队列。同时开始轮询数据包队列,如果队列中有数据,则发送数据,并接收云平台的反馈信息,判断发送是否成功,如果没有成功,则压入待重发队列。如果成功,则循环发送数据包队列的数据,直至队列空。最后轮询待重发队列,若有重发数据且重发时间间隔到,则取相应数据包处理,同时判断数据包重发次数,若超过规定次数,如3次,则丢弃数据。
步骤4:
执行云命令处理线程,定期(如1s)发送轮询云端指令数据的报文,根据云平台反馈的信息判断是否有新的控制命令,如果有则压入控制指令消息队列,如果没有,则定期轮询。
通信API统一采用Restful风格的接口。Restful机制基于HTTP基本语义实现,将一切数据视为资源对象,建立全局唯一标识ID(GUID);将所有的通信行为简化为GET,POST,PUT,DELETE四种基于数据对象的操作。在执行具体的数据交互任务时,Restful机制可利用GUID以及其自身的路由算法迅速定位到数据资源位置,无需建立客户端-服务器长连接,无需关心数据资源的当前状态或者考虑通信连接状态位上下文,一切操作均是面向对象的、原子性的。其数据传输格式采用XML或JSON,描述清晰简单,易于扩展。相较于工业通信领域中普遍采用的长连接模式,Restful机制显得更加轻量级,对网关及服务器的性能消耗更小,具有更强的容错性,亦能适应巨量数据传输任务。
Claims (2)
1.一种云网关的通信实现方法,所述云网关包括:注册处理单元,用于依据获得的云平台的授权码完成注册,注册时,云平台向注册处理单元发送所需交互数据内容,注册处理单元依据所需交互数据内容向云平台反馈相应的包含有授权码的交互数据,从而完成注册;数据交互处理单元,用于将接收自数据采集控制单元的数据发送给云平台;通信保活处理单元,用于确保当前云网关与云平台之间保持正常的数据通信,通信保活处理单元定期向云平台发送保活请求,云平台收到后反馈相应状态,通信保活处理单元根据接收到的状态信息判断当前云网关与云平台之间是否保持正常的数据通信;控制命令处理单元,用于处理发送自云平台的用于远程控制现场设备的控制命令,并把控制命令发送给数据采集控制单元;数据采集控制单元,一方面用于采集与当前云网关相连的各个现场设备的数据,并判断采集到的数据是否发生变化,仅在数据发生变化时将采集到的数据发送给数据交互处理单元,另一方面将接收到的控制命令处理单元的控制命令发送至相应的现场设备,其特征在于,所述通信实现方法包括以下步骤:
步骤1、云网关将授权码发送到云平台,等待云平台回复激活信息,若在设定的时间内未获得激活信息,则云网关重复发送授权码至云平台,若云网关获得激活信息,则开启设备数据采集线程、命令线程、云数据发送线程和云命令处理线程;
云平台收到授权码后,若确认此云网关合法,则云平台把激活信息发送给此云网关;
步骤2、执行设备数据采集线程:根据用户配置的设备信息和通信参数,逐个轮询现场设备,把收到的采集数据存放到相应的采集数据库中,再查看采集数据库,检索数据是否有变化,如果有,则压入采集数据更新消息队列;
执行命令线程:查看控制指令消息队列,查看是否有新的控制命令产生,如果有,则向相应的现场设备直接发送控制命令;
步骤3、执行云数据发送线程:首先,查询采集数据更新消息队列是否有更新,如果有更新,则对更新的数据进行打包处理,压入数据包队列,其次,判断保活时间是否到,如果到了,则组成保活数据包,压入数据包队列;同时开始轮询数据包队列,如果数据包队列中有数据,则发送数据,并接收云平台的反馈信息,判断发送是否成功,如果没有成功,则压入待重发队列,如果成功,则循环发送数据包队列的数据,直至队列空,最后轮询待重发队列,若有重发数据且重发时间间隔到,则取相应数据包处理,同时判断数据包重发次数,若超过规定次数,则丢弃数据;
步骤4:执行云命令处理线程,定期发送轮询云端指令数据的报文,根据云平台反馈的信息判断是否有新的控制命令,如果有则压入控制指令消息队列,如果没有,则定期轮询。
2.如权利要求1所述的一种云网关的通信实现方法,其特征在于,在所述步骤1中,所述的激活信息包括所需交互的数据类型和数据定义。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201611114058.4A CN106549864B (zh) | 2016-12-06 | 2016-12-06 | 一种云网关的通信实现方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201611114058.4A CN106549864B (zh) | 2016-12-06 | 2016-12-06 | 一种云网关的通信实现方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106549864A CN106549864A (zh) | 2017-03-29 |
CN106549864B true CN106549864B (zh) | 2019-11-22 |
Family
ID=58396254
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201611114058.4A Active CN106549864B (zh) | 2016-12-06 | 2016-12-06 | 一种云网关的通信实现方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106549864B (zh) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE102017108539A1 (de) * | 2017-04-21 | 2018-10-25 | Endress+Hauser Process Solutions Ag | Verfahren und Cloud Gateway zum Überwachen einer Anlage der Automatisierungstechnik |
GB2568871B (en) * | 2017-11-23 | 2021-09-22 | Advanced Risc Mach Ltd | Devices and methods for control of internet of things (IoT) devices |
CN109743046B (zh) * | 2019-01-16 | 2021-04-27 | 深圳市显控科技股份有限公司 | 一种逐脉冲调制方法和系统 |
CN109819044A (zh) * | 2019-02-20 | 2019-05-28 | 深圳市显控科技股份有限公司 | 远程数据采集方法、装置、设备及存储介质 |
CN110213379B (zh) * | 2019-06-10 | 2022-05-10 | 深圳云里物里科技股份有限公司 | 一种网关设置方法、系统、网关及计算机可读存储介质 |
CN110377610A (zh) * | 2019-06-27 | 2019-10-25 | 腾讯科技(深圳)有限公司 | 一种基于云平台的数据库更新方法、装置、设备及介质 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9065800B2 (en) * | 2011-03-18 | 2015-06-23 | Zscaler, Inc. | Dynamic user identification and policy enforcement in cloud-based secure web gateways |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101478485B (zh) * | 2009-01-19 | 2012-04-04 | 成都市华为赛门铁克科技有限公司 | 局域网访问控制的方法以及网关设备 |
US9866635B2 (en) * | 2014-03-26 | 2018-01-09 | Rockwell Automation Technologies, Inc. | Unified data ingestion adapter for migration of industrial data to a cloud platform |
-
2016
- 2016-12-06 CN CN201611114058.4A patent/CN106549864B/zh active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9065800B2 (en) * | 2011-03-18 | 2015-06-23 | Zscaler, Inc. | Dynamic user identification and policy enforcement in cloud-based secure web gateways |
Also Published As
Publication number | Publication date |
---|---|
CN106549864A (zh) | 2017-03-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106549864B (zh) | 一种云网关的通信实现方法 | |
CN110537360B (zh) | 物联网pub-sub数据发布者 | |
CN111031034A (zh) | 多协议融合边缘计算网关 | |
CN110557437B (zh) | 基于自定义协议的普适性拟态分发表决调度装置及方法 | |
Wang et al. | An integrated industrial ethernet solution for the implementation of smart factory | |
CN108400917B (zh) | 一种面向智能制造的边缘计算网关及系统 | |
CN108847979B (zh) | 一种基于scada的自适应组态系统及方法 | |
CN109159125A (zh) | 基于ros系统机器人的云服务系统 | |
Bohuslava et al. | TCP/IP protocol utilisation in process of dynamic control of robotic cell according industry 4.0 concept | |
CN111142487A (zh) | 一种基于opc ua统一架构协议的设备数据采集系统 | |
CN106292518B (zh) | 远程plc监控和调试系统及方法 | |
CN110708239B (zh) | 一种基于opc和mqtt的工业物联网网关 | |
EP2804361B1 (en) | Integrated interface system for power-system monitoring and control system | |
da Cunha et al. | Proposal for an IoT architecture in industrial processes | |
CN108809949A (zh) | profinet、FF H1、CAN和profibus协议之间转换和调度的方法 | |
CN110300055B (zh) | 异构现场总线用网关系统 | |
CN102904967A (zh) | 一种基于五金机电领域的智能物联网数据交换平台方案 | |
CN114338274A (zh) | 一种异构工业现场总线融合方法及系统 | |
CN112381346A (zh) | 一种基于api网关的产品工艺配方参数下发校验方法及系统 | |
EP3576376A1 (de) | Datenübermittlung innerhalb eines industriellen automatisierungssystems | |
US11750334B2 (en) | Data collection management device and data collection system | |
CN113848834B (zh) | 一种基于边云协同的车间设备接入系统及方法 | |
CN116319729A (zh) | 机器人控制方法、装置、服务器、系统及存储介质 | |
Polianytsia et al. | Survey of the IoT data transmission protocols | |
EP2677693B1 (en) | Communication system |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |