CN102855143A - 一种scada系统中通用通信框架 - Google Patents
一种scada系统中通用通信框架 Download PDFInfo
- Publication number
- CN102855143A CN102855143A CN2012103725210A CN201210372521A CN102855143A CN 102855143 A CN102855143 A CN 102855143A CN 2012103725210 A CN2012103725210 A CN 2012103725210A CN 201210372521 A CN201210372521 A CN 201210372521A CN 102855143 A CN102855143 A CN 102855143A
- Authority
- CN
- China
- Prior art keywords
- data
- communication protocol
- communications
- module
- application
- 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
- Communication Control (AREA)
Abstract
本发明公开了一种SCADA系统中通用通信框架,其特征在于:它包括通信规约模块、通信传输模块与应用接口模块,所述通信规约模块负责应用数据的封装与解析;所述通信传输模块负责通过通信通道传输数据;所述应用接口模块负责上层应用与通信规约模块之间的交互。通信框架中每个组件定义了一套接口作为基类,满足组件之间的数据交互。每个针对具体实现定义的子类继承相应的基类,实现基类中定义的接口。本发明通过应用现代计算机软件技术,将数据通信各过程分开实现,独立工作,并为各过程模块之间的组合提供了灵活方便的配置方法,可依据特定需求对过程进行配置与裁剪,从而达到适应各种不同应用场景的目的。
Description
技术领域
本设计通过解构数据通信过程,将各过程模块分开实现,通过面向对象与中间件技术减少各模块之间的藕合度,同时为各模块保留了足够的自定义空间,在适应各种复杂通信需求的情况下最大限度复用已有的功能模块,提高开发效率,扩大通信模块在SCADA领域的使用范围。
背景技术
数据通信作为一项公共功能,是各种网络应用的重要组成部分。单就SCADA系统的上位机来说,需要收集各种下位机设备上送的现场状态数据,这些下位机设备上送数据时使用的通信方式、通信规约、数据格式等都各不相同,给SCADA上位机带来了繁重的通信规约维护工作。实际上,数据通信功能涉及到的无非通信方式、通信规约、数据格式与后台数据库读写四个方面。在实际工作中,通信工作的复杂性主要由四者各自的细节要求与互相之间的不同组合带来。
在目前SCADA领域的数据通信功能实现方式中,一般采用的是将通信方式单独实现,而将规约报文处理与后台数据库读写捆绑在一起。这种方式复用了通信功能模块,又由于大多数SCADA系统集成商只使用一套后台系统,因此这种方式在很多时候能够显著减少通信规约开发的工作量。
然而,随着SCADA系统应用的日益广泛,系统集成商已很难使用一套后台系统来应对各种不同规模的SCADA应用,这样就意味着需要大量的数据通信功能移植的工作。此外,数据通信的需求广泛存在于一套SCADA系统实施的各个阶段,与后台数据库紧密耦合的通信模块面向特定应用,限制了模块的复用范围,而同一种功能的多次实现也为后期的管理与维护带来了很多麻烦。
发明内容
针对现有技术中存在的不足,本发明提出了一种可以涵盖SCADA领域各种数据通信需求的软件框架,通过应用现代计算机软件技术,将数据通信各过程分开实现,独立工作,并为各过程模块之间的组合提供了灵活方便的配置方法,可依据特定需求对过程进行配置与裁剪,从而达到适应各种不同应用场景的目的。在软件框架上,遵循如下四个原则:
1) 过程解构。将数据通信解构为通信方式、通信规约与数据解析、应用交互三个过程,每个过程分别实现为一个独立的模块加以复用。
2) 面向接口。为每个模块分别定义一套统一的接口,各模块之间利用多态技术通过接口进行交互。同时,通过接口继承为模块的每个具体实现定义一个类型。
3) 面向数据。通过中间件技术,降低应用交互模块与应用的藕合度。
4) 分层配置。分层配置指的是各模块本身的细节配置与模块实例组合配置。
本发明的技术方案为:一种SCADA系统中通用通信框架,其特征在于:它包括通信规约模块、通信传输模块与应用接口模块,所述通信规约模块负责应用数据的封装与解析;所述通信传输模块负责通过通信通道传输数据;所述应用接口模块负责上层应用与通信规约模块之间的交互。
通信框架中每个组件定义了一套接口作为基类,满足组件之间的数据交互。每个针对具体实现定义的子类继承相应的基类,实现基类中定义的接口。
附图说明
图1为本发明实施例的通信框架示意图。
图2为本发明实施例的配置功能示意图。
图3为本发明实施例的组件工厂注册流程示意图。
具体实施方式
以下结合附图和具体实施例对本发明作进一步详细阐述。
本发明的通信框架将数据通信功能划分到通信规约模块、通信传输模块与应用接口模块。在整个应用逻辑中,上层应用是通信功能的使用者;通信规约模块负责应用数据的封装与解析;通信传输模块负责通过通信通道传输数据;应用接口模块负责上层应用与通信规约模块之间的交互。如图1所示,本发明实施例的通信框架示意图。
通信框架中每个组件定义了一套接口作为基类,满足组件之间的数据交互。每个针对具体实现定义的子类继承相应的基类,实现基类中定义的接口。
1.应用接口
应用接口的工作是将通信规约解析后数据传递给上层应用,并接收上层应用下传的数据,将其交由通信规约打包并发送出去。由此可见应用接口的工作方式是由通信规约决定的,而且一个通信规约可应用于多个上层应用,相对于上层应用来说,通信规约是变化较少的,因此此处将应用接口设计为与通信规约模块紧密藕合,与上层应用通过中间件交互的松散藕合方式。
应用接口的基类中仅定义了异常处理与配置载入接口,在实际使用时,需扩充其接口以适应某一特定的规约,再根据每一种中间件实现不同的子类。
2.通信规约
通信规约组件的工作可抽象为接收数据并解析与打包数据并发送。从逻辑上来看,数据通信的核心是数据的打包与解析,通信规约组件使用通信传输组件来收发数据,使用应用接口组件与上层应用传递数据。因此,通信规约组件的基类中除了定义打包与解析数据的接口外,还实现了与通信传输组件与应用接口组件的交互功能。
3.通信传输
通信传输组件的工作是通过读写IO设备传输数据。通信传输组件为底层不同的IO设备提供了统一的数据发送与数据通知接口。通信传输功能的用户可通过数据发送接口将需要发送的数据传递给通信传输组件,也可以通过注册数据通知,获得从IO设备中读取的数据。
4.配置功能
对于每一类组件的特定实现,需同时提供相应的配置接口,接口中提供了特定实现的信息配置功能。框架仅对配置接口的形式与内容格式进行了定义。在运行时,框架取出配置节点后交由相应组件进行解析,因此在细节的实现上保留了足够的灵活性。
框架将组件配置与组件实例化分开处理,先由用户对组件进行配置,再依照配置的内容实例化组件。组件配置分为两个层次,一个是组件本身的信息配置,另一个是对使用组件的选择进行配置。如图2所示,为本实施的配置功能示意图。
5.组件工厂
每一个组件的特定实现要在组件工厂中加以注册,用户在使用组件时,统一通过组件工厂来创建实例。针对组件的功能与配置两块内容,组件工厂分为实例工厂与配置工厂,组件的功能类型与配置类型须分别在两个工厂中进行注册。如图3所示,组件工厂注册流程示意图。
6.控制流
通信框架的控制流从将配置文件传递组件工厂开始。按先后顺序如下所列:
应用读取配置文件,取得应用接口配置节点;
根据应用接口配置节点中的应用接口类型名称在组件工厂中创建其实例,并将应用接口配置信息传递给新建的实例;
应用接口组件根据配置信息中的内容初始化,如初始化成功,从配置信息取得通信规约配置节点,否则,返回“错误”信号给应用;
应用接口组件根据通信规约配置节点中的通信规约类型名称在组件工厂中创建其实例,并将通信规约配置信息传递给新建的通信规约组件实例;
通信规约组件根据配置信息中的内容初始化,如初始化成功,从配置信息中取得通信传输配置节点,否则,返回“错误”信号给应用接口组件;
通信规约组件根据通信传输配置节点中的通信传输类型名称在组件工厂中创建其实例,并将通信传输配置信息传递给新建的通信传输组件实例;
通信传输组件根据配置信息中的内容初始化,如初始化成功,返回“准备好”信号给通信规约组件,否则,返回“错误”信号;
通信规约组件接收到信号后,将信号如实上送给应用接口组件;
应用接口组件将收到的信号送给应用,由应用决定后续操作。
虽然本发明通过具体实施例和附图进行了描述,但实施例并非用来限定本发明。本领域技术人员可在本发明的精神范围内,做出各种变形和改进,其同样在本发明的保护范围之内。因此本发明的保护范围应当以本申请的权利要求保护所界定的相同或等同的范围为准。
Claims (10)
1.一种SCADA系统中通用通信框架,其特征在于:它包括通信规约模块、通信传输模块与应用接口模块,所述通信规约模块负责应用数据的封装与解析;所述通信传输模块负责通过通信通道传输数据;所述应用接口模块负责上层应用与通信规约模块之间的交互。
2.根据权利要求1所述的通信框架,其特征在于:每个模块定义一套接口作为基类,满足模块之间的数据交互;每个针对具体实现定义的子类继承相应的基类,实现基类中定义的接口。
3.根据权利要求2所述的通信框架,其特征在于:
所述应用接口模块的基类中定义了异常处理与配置载入接口。
4.根据权利要求1所述的通信框架,其特征在于,
所述应用接口模块:将所述通信规约模块解析后数据传递给上层应用,并接收上层应用下传的数据,将其交由所述通信规约模块打包并发送出去。
5.根据权利要求4所述的通信框架,其特征在于:
所述应用接口模块与所述通信规约模块紧密藕合,与上层应用通过中间件交互的松散藕合方式。
6.根据权利要求1所述的通信框架,其特征在于,
所述通信规约模块:接收数据并解析与打包数据并发送,通信规约模块使用通信传输模块来收发数据,使用应用接口模块与上层应用传递数据。
7.根据权利要求2所述的通信框架,其特征在于:
所述通信规约模块的基类中定义了打包与解析数据的接口,实现与通信传输模块与应用接口模块的交互功能。
8.根据权利要求1所述的通信框架,其特征在于,
所述通信传输模块:通过读写IO设备传输数据,通信传输模块为底层不同的IO设备提供统一的数据发送与数据通知接口。
9.根据权利要求2所述的通信框架,其特征在于:
所述通信传输模块的基类中定义了数据发送与数据通知接口,通信传输功能的用户可通过数据发送接口将需要发送的数据传递给通信传输组件,也可以通过注册数据通知,获得从IO设备中读取的数据。
10.一种权利要求1至9之一所述的SCADA系统中通用通信框架的控制方法,其步骤为:
1)应用读取配置文件,取得应用接口配置节点;
2)根据应用接口配置节点中的应用接口类型名称在组件工厂中创建其实例,并将应用接口配置信息传递给新建的实例;
3)应用接口组件根据配置信息中的内容初始化,如初始化成功,从配置信息取得通信规约配置节点,否则,返回“错误”信号给应用;
4)应用接口组件根据通信规约配置节点中的通信规约类型名称在组件工厂中创建其实例,并将通信规约配置信息传递给新建的通信规约组件实例;
5)通信规约组件根据配置信息中的内容初始化,如初始化成功,从配置信息中取得通信传输配置节点,否则,返回“错误”信号给应用接口组件;
6)通信规约组件根据通信传输配置节点中的通信传输类型名称在组件工厂中创建其实例,并将通信传输配置信息传递给新建的通信传输组件实例;
7)通信传输组件根据配置信息中的内容初始化,如初始化成功,返回“准备好”信号给通信规约组件,否则,返回“错误”信号;
8)通信规约组件接收到信号后,将信号如实上送给应用接口组件;
9)应用接口组件将收到的信号送给应用,由应用决定后续操作。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210372521.0A CN102855143B (zh) | 2012-09-29 | 2012-09-29 | 一种scada系统中通用通信框架 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210372521.0A CN102855143B (zh) | 2012-09-29 | 2012-09-29 | 一种scada系统中通用通信框架 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102855143A true CN102855143A (zh) | 2013-01-02 |
CN102855143B CN102855143B (zh) | 2015-10-21 |
Family
ID=47401754
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201210372521.0A Active CN102855143B (zh) | 2012-09-29 | 2012-09-29 | 一种scada系统中通用通信框架 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102855143B (zh) |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103853558A (zh) * | 2014-03-11 | 2014-06-11 | 西安科技大学 | 一种通用的虚拟操控装置数据接口及其实现方法 |
CN105160457A (zh) * | 2015-08-07 | 2015-12-16 | 北京思特奇信息技术股份有限公司 | 一种信用控制管理系统及其实现方法 |
CN105549437A (zh) * | 2015-12-25 | 2016-05-04 | 大连陆海科技股份有限公司 | 船舶数据采集设备及方法 |
CN105704205A (zh) * | 2015-12-29 | 2016-06-22 | 浪潮(北京)电子信息产业有限公司 | 一种多控制器间的通信架构系统及方法 |
CN106131073A (zh) * | 2016-08-29 | 2016-11-16 | 武汉精伦电气有限公司 | 一种适用于多应用场景的通信框架和通信方法 |
CN107562479A (zh) * | 2017-09-05 | 2018-01-09 | 成都市九阵科技有限公司 | 一种基于组件化技术的软件系统及方法 |
CN108337256A (zh) * | 2018-01-30 | 2018-07-27 | 环球大数据科技有限公司 | 协议实例化的方法和系统 |
CN109687984A (zh) * | 2017-10-18 | 2019-04-26 | 中车株洲电力机车研究所有限公司 | 一种风电scada系统的配置系统及配置方法 |
CN111147510A (zh) * | 2019-12-31 | 2020-05-12 | 中国兵器装备集团自动化研究所 | 一种基于soa反射工厂架构的数据采集系统及方法 |
CN111382469A (zh) * | 2018-12-29 | 2020-07-07 | 北京淳中科技股份有限公司 | 信号传输管理方法及系统 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN201550117U (zh) * | 2009-09-30 | 2010-08-11 | 东北电网有限公司 | 低速光接口传输设备 |
CN102290851A (zh) * | 2011-08-15 | 2011-12-21 | 许继电源有限公司 | 一种大规模储能装置及其主电路 |
-
2012
- 2012-09-29 CN CN201210372521.0A patent/CN102855143B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN201550117U (zh) * | 2009-09-30 | 2010-08-11 | 东北电网有限公司 | 低速光接口传输设备 |
CN102290851A (zh) * | 2011-08-15 | 2011-12-21 | 许继电源有限公司 | 一种大规模储能装置及其主电路 |
Non-Patent Citations (3)
Title |
---|
张东海等: "SCADA系统中开放式通信模型的设计及应用", 《化工自动化及仪表》 * |
张雅萱: "电力系统运动通讯规约辅助分析", 《中国优秀博硕士学位论文全文数据库(硕士)信息科技辑》 * |
李晓峰等: "基于IEC61850的输变电设备在线监测中心的关键技术", 《高电压技术》 * |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103853558A (zh) * | 2014-03-11 | 2014-06-11 | 西安科技大学 | 一种通用的虚拟操控装置数据接口及其实现方法 |
CN105160457A (zh) * | 2015-08-07 | 2015-12-16 | 北京思特奇信息技术股份有限公司 | 一种信用控制管理系统及其实现方法 |
CN105549437A (zh) * | 2015-12-25 | 2016-05-04 | 大连陆海科技股份有限公司 | 船舶数据采集设备及方法 |
CN105704205A (zh) * | 2015-12-29 | 2016-06-22 | 浪潮(北京)电子信息产业有限公司 | 一种多控制器间的通信架构系统及方法 |
CN106131073A (zh) * | 2016-08-29 | 2016-11-16 | 武汉精伦电气有限公司 | 一种适用于多应用场景的通信框架和通信方法 |
CN107562479A (zh) * | 2017-09-05 | 2018-01-09 | 成都市九阵科技有限公司 | 一种基于组件化技术的软件系统及方法 |
CN109687984A (zh) * | 2017-10-18 | 2019-04-26 | 中车株洲电力机车研究所有限公司 | 一种风电scada系统的配置系统及配置方法 |
CN108337256A (zh) * | 2018-01-30 | 2018-07-27 | 环球大数据科技有限公司 | 协议实例化的方法和系统 |
CN111382469A (zh) * | 2018-12-29 | 2020-07-07 | 北京淳中科技股份有限公司 | 信号传输管理方法及系统 |
CN111147510A (zh) * | 2019-12-31 | 2020-05-12 | 中国兵器装备集团自动化研究所 | 一种基于soa反射工厂架构的数据采集系统及方法 |
Also Published As
Publication number | Publication date |
---|---|
CN102855143B (zh) | 2015-10-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102855143A (zh) | 一种scada系统中通用通信框架 | |
EP2888858B1 (en) | Method and apparatus of generalized network controller for a software defined network (sdn) | |
CN102255903B (zh) | 一种云计算虚拟网络与物理网络隔离安全方法 | |
CN102857566B (zh) | 一种可软件定制的物联网智能网关 | |
CN102148800B (zh) | 基于面向服务架构的软件无线电系统 | |
EP2852103B1 (en) | Apparatus and method supporting wireless communications between devices using different application protocols in industrial control and automation systems | |
CN106134133B (zh) | 隧道化通过wan在分站之间的时间关键消息 | |
CN102255908A (zh) | 一种物联网网关协议一致性的方法 | |
CN106034052B (zh) | 一种对虚拟机间二层流量进行监控的系统及方法 | |
CN105554540B (zh) | 一种网络接口在条件接收卡中的实现方法和装置 | |
CN103095565A (zh) | 一种软件定义网络操作系统及其实现方法 | |
CN104468219A (zh) | 虚拟组网网络拓扑发现方法和设备 | |
CN104317661A (zh) | 嵌入式双系统的系统间通信方法及装置 | |
CN104965700A (zh) | VxWorks操作系统下实现驱动SPI设备的方法和系统 | |
CN103095538A (zh) | 一种多类工业以太网总线集成主站 | |
CN105162673A (zh) | 数据传输接口及方法 | |
CN104243198B (zh) | 一种基于网络配置协议的网络管理方法和系统 | |
CN102866925A (zh) | 一种中间件与用户界面的通信方法和系统 | |
CN105391719A (zh) | 一种基于tcp/ip网络的智能设备远程控制系统及其交互方法 | |
WO2022005738A1 (en) | Gap and gatt adaptation protocol over internet protocol | |
CN103117881A (zh) | 一种物联网资源管理系统 | |
CN204360184U (zh) | 一种基于实时数据库的Modbus设备主从站通讯管理系统 | |
CN103728957B (zh) | 一种基于实时数据库的hart现场设备管理方法及系统 | |
CN104407591A (zh) | 一种基于实时数据库的Modbus设备主从站通讯管理方法及系统 | |
CN101529807A (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 |