CN102929619A - 一种跨硬件平台的过程自动化软件开发系统 - Google Patents
一种跨硬件平台的过程自动化软件开发系统 Download PDFInfo
- Publication number
- CN102929619A CN102929619A CN2012104007388A CN201210400738A CN102929619A CN 102929619 A CN102929619 A CN 102929619A CN 2012104007388 A CN2012104007388 A CN 2012104007388A CN 201210400738 A CN201210400738 A CN 201210400738A CN 102929619 A CN102929619 A CN 102929619A
- Authority
- CN
- China
- Prior art keywords
- data
- software development
- process automation
- database
- hardware platform
- 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
Images
Landscapes
- Stored Programmes (AREA)
Abstract
本发明公开了一种跨硬件平台的过程自动化软件开发系统,属于工业系统计算机自动控制技术。从物理网络结构上,该系统由服务器和客户端构成;从软件体系层次结构上分,该系统结构包括数据源层、数据持久层、业务逻辑层、表示层。本发明实现了与各制造商自动化系统硬件平台的兼容,减少了用户的学习成本,节约了人力财力;采用基于命名管道的客户端、服务器架构模式,本工具支持多人协同工作模式,有利于提高配置工作效率,同时由于该架构并易于集成第三方的软件开发工具,因而有利于整个行业的开放化、标准化的发展。
Description
技术领域
本发明涉及跨硬件平台的工业过程自动化软件开发系统,属于工业系统计算机自动控制技术。
背景技术
过程自动化系统,广泛应用于电力、石化、冶金等各种工业过程控制领域,在工业生产过程中已发挥重要作用,成为生产过程安全、稳定、自动化运行不可缺乏的工具。
以DCS或PLC为代表的过程自动化系统,是一个多级的计算机系统,通常以通信网络为纽带由过程控制级和过程监控级组成。过程控制级,主要包括下位DPU控制器与IO卡件;过程监控级,即位于监控中心的上位SCADA系统。
过程自动化系统既包括硬件,也包括软件。过程自动化系统的开发工具软件,一般采用数据库为媒介,按照定义的数据结构来组织、存储和管理数据,并为其他上层应用(如网络组态、IO设备组态、控制逻辑组态、画面组态等)提供统一的接口和服务。目前国际上没有针对过程自动化系统数据模型的统一标准,不同制造商的软件工具,无论是数据库平台、还是数据库的组织形式上都存在着巨大的差异,因此当前各种PLC或DCS的开发工具软件都是和制造商的硬件系统设备捆绑,即某一制造商的PLC或DCS的开发工具软件,只能在该制造商提供的硬件上使用。对于使用多种PLC和DCS的用户,就需要投入大量的人力和财力,以掌握多种PLC和DCS的硬件和软件。同时硬件设备的封闭性严重制约了某些具有高技术含量的开发工具软件的推广应用。因此设计一种跨硬件平台的DCS和PLC的软件开发工具,对于解除硬件设备对自动化软件开发工具制造商发展束缚、提高整个过程自动化行业的开放性具有重大意义。
发明内容
为了解决过程自动化系统制造商之间的软件开发工具的不兼容性的问题,本发明了提出一种跨硬件平台的过程自动化软件开发系统,实现了与各制造商自动化系统硬件平台的兼容,减少了用户的学习成本,节约了人力财力。
为了解决上述问题,本发明所采取的技术方案是:
一种跨硬件平台的过程自动化软件开发系统,包括客户端和服务器,其特征在于:服务器,实现访问各自动化系统软件开发工具的数据库,对其进行操作;以及接收客户发送的业务操作消息,并响应该消息进行相应的业务逻辑处理;客户端,采用图形界面实现相应的人机交互操作,并将相应的操作指令发送给指定的服务器,并且接收服务器返回的操作结果。
前述的一种跨硬件平台的过程自动化软件开发系统,其特征在于:所述服务器包括数据源层、数据持久层和业务逻辑层;数据源层,指各个厂家、各种平台的工业控制与监控软件的变量数据库;数据持久层,是系统的核心,用于将各个异构数据库数据进行融合,数据持久层是数据源层与业务逻辑表示层之间的纽带;业务逻辑层,根据相应有消息指令,从数据持久层中获取相应的数据,对数据进行相应的业务逻辑操作,最终将操作的结果发送给客户端。
前述的一种跨硬件平台的过程自动化软件开发系统,其特征在于:客户端为整个系统的表示层,采用各种人机界交互模式,响应用户的各种操作,并采用进程间通信机制,将各种操作消息发送给相应的服务器,以及接收服务器的操作处理结果。
前述的一种跨硬件平台的过程自动化软件开发系统,其特征在于:所述的变量数据库采用通用的Oracle、DB2商业数据库,或采用各个厂家自定制的数据模型文件。
前述的一种跨硬件平台的过程自动化软件开发系统,其特征在于:所述的业务逻辑层包括业务逻辑处理与进程间通信接口两个模块;
业务逻辑处理模块,是预先定义的各种数据操作,用于接收进程间通信接口发送来的操作命令,对内存数据库中相应的数据进行逻辑处理与操作,以及将操作的结果返回给进程通信接口;
进程间通信接口,用于接收人机交互进程发出的数据库操作请求,转发给业务逻辑处理模块,以及将业务逻辑处理模块返回的操作结果发送给相应客户端的人机交互界面。
前述的一种跨硬件平台的过程自动化软件开发系统,其特征在于:所述数据持久层包括异构数据库访问接口和内存数据库两个模块;
异构数据库访问接口,用于接收内存数据库发出的异构数据库操作请求并发送到目的数据库执行,并将结果返回至内存数据库;
内存数据库,响应业务逻辑处理模块发来的数据操作请求,并同时转发给异构数据库接口,同时接收异构数据库访问接口返回的数据库操作结果,并将其返回给业务逻辑处理模块。
前述的一种跨硬件平台的过程自动化软件开发系统,其特征在于:所述进程间通信接口采用基于命名管道的进程间通信机制,实现基于构架下的业务逻辑表示层与数据持久层之间的信息交互。
本发明的有益效果是:本发明通过集成各种异构数据库的访问接口,并采用了统一的数据模型表示方法,有效消除了各制造商硬件设备对软件开发工具的约束,有利于过程自动化系统开放性的提高;本发明支持多种硬件平台,降低了用户的学习成本,节约了工程的人力与财力;另外,本发明易于实现多人协同工作,有效的提高了系统的开发配置进度。
附图说明
图1是本发明跨硬件平台的过程自动化系统的结构图。
图2 单客户端对多硬件平台进行组态示意图。
图3 多客户端对单硬件平台进行组态示意图。
具体实施方式
下面结合附图对本发明做进一步的描述。
如图1所示描述了本发明的整个系统结构。
本系统采用传统的C/S构架模式,客户端与服务器采用命名管道实现数据与消息指令的通信。客户端主要是系统的表示层,用户在客户端进行相应的配置,即可连接到对应的服务器。客户端提供了过程自动化软件开发系统的人机交互的配置界面,以接收用户的操作命令以及显示各种数据的图形化展示。
服务器,包括了系统的业务逻辑处理层、数据持久层与数据源层,主要用于响应人机交互所发送的各种数据处理与业务操作指令。数据源层,即为各自动化系统平台自身所固定的数据文件。
数据持久层,由异构数据访问接口与内存数据库两个部分组成。异构数据访问接口,将各种异构数据库中的数据,采用统一的数据模型表示方法,映射到内存数据库中。当业务逻辑层,只需按照预先定义好的数据表示模型,对内存数据库进行相应的操作,即实现了原异构数据库的相应更新。因此,当有新的异构数据源添加时,只需要集成新数据源的访问接口,业务逻辑层无需更改,就可以实现新数据源的集成操作。
业务逻辑层,由业务逻辑处理模块与进程间通信接口组成。进程间通信接口,基于一个多线程的命名管道服务器,实时监听管道中的数据,以接收各个客户端发送的操作与请求指令,并将这个操作请求消息发送业务逻辑处理模块的消息队列。业务逻辑处理模块,采用消息队列的先进先出机制,从内存数据中获取相应的数据,并执行相应的业务逻辑操作,并且将操作结果通过进程间通信接口发送给相应的客户端。在多人协同工作模式下,这种消息队列模式,有效避免了数据库的并发操作,从而提高了系统的可靠性。
由于各制造商的软件开发工具,针对数据变量、网络结构、IO设备、SCADA界面等采用各自不同的文件格式进行定义,本系统在内存数据库建立统一的数据模型表示方法对上述对象进行描述,消除差异,从而极大的提高了系统的扩展性与开放性。各制造商的软件开发工具,所采用的数据库不同,对象模型的数据表示方法也不尽相同,因而本系统的异构数据库的集成访问接口,主要用于将各不同格式的多数据源转化为具有标准模型格式的单数据源,实现与各自动化系统的硬件平台的兼容。
如图2所示描述了单客户端对多硬件平台的组态结构图。客户端上运行了各种组态配置界面进程,每一个进程都作为一个命名管道的客户端,用户在进行启动配置界面前,可以预先指定任一台命名管道服务器的地址,从而连接当前网络下的所有的自动化系统平台。用户在配置界面中,可以通过图形化的方式修改相应的配置数据,交互界面也可以根据用户的需求,以图形化的方式对内存数据库中的数据模型进行有效的展示。服务器循环监听客户端的连接请求,并为客户端的每一个连接,创建一个消息监听与处理线程,响应用户的各种操作。当用户需要连接其他的硬件平台时,只需断开当前的连接,重新指定其他硬件平台对应的服务器的地址,就可以在相同的配置界面中采用相同的配置方法对其他的硬件平台进行操作。
如图3所示描述了多客户端对单硬件平台的组态结构。命名管道服务器单独开辟一个线程以循环监听客户端的每一个连接请求。针对每一个连接,主进程又开辟一个独立的监听线程,以响应对应客户端发送的各种指令 。即当有两个客户端都请求连接同一个硬件平台对应的服务器时,服务器针对这两个客户端,创建两个单独的线程,负责监听处理这两个客户端的消息命令。因而客户端A的用户可以对硬件平台进行数据变量的配置,客户端B可以对同一个硬件平台进行控制逻辑的配置。两个客户端同时操作底层的对象数据库,互不影响。同时为了避免多个线程同时操作同一段数据造成数据混乱,服务器引入Mutex的互斥机制,保证数据资源的互斥访问(即同一时间最多只有一个线程访问)。
以上显示和描述了本发明的基本原理、主要特征及优点。本行业的技术人员应该了解,本发明不受上述实施例的限制,上述实施例和说明书中描述的只是说明本发明的原理,在不脱离本发明精神和范围的前提下,本发明还会有各种变化和改进,这些变化和改进都落入要求保护的本发明范围内。本发明要求保护范围由所附的权利要求书及其等效物界定。
Claims (7)
1.一种跨硬件平台的过程自动化软件开发系统,包括客户端和服务器,其特征在于:服务器,实现访问各自动化系统软件开发工具的数据库,对其进行操作;以及接收客户发送的业务操作消息,并响应该消息进行相应的业务逻辑处理;客户端,采用图形界面实现相应的人机交互操作,并将相应的操作指令发送给指定的服务器,并且接收服务器返回的操作结果。
2.根据权利要求1所述的一种跨硬件平台的过程自动化软件开发系统,其特征在于:所述服务器包括数据源层、数据持久层和业务逻辑层;数据源层,指各个厂家、各种平台的工业控制与监控软件的变量数据库;数据持久层,是系统的核心,用于将各个异构数据库数据进行融合,数据持久层是数据源层与业务逻辑表示层之间的纽带;业务逻辑层,根据相应有消息指令,从数据持久层中获取相应的数据,对数据进行相应的业务逻辑操作,最终将操作的结果发送给客户端。
3.根据权利要求2所述的一种跨硬件平台的过程自动化软件开发系统,其特征在于:客户端为整个系统的表示层,采用各种人机界交互模式,响应用户的各种操作,并采用进程间通信机制,将各种操作消息发送给相应的服务器,以及接收服务器的操作处理结果。
4.根据权利要求2或3所述的一种跨硬件平台的过程自动化软件开发系统,其特征在于:所述的变量数据库采用通用的Oracle、DB2商业数据库,或采用各个厂家自定制的数据模型文件。
5.根据权利要求4所述的一种跨硬件平台的过程自动化软件开发系统,其特征在于:所述的业务逻辑层包括业务逻辑处理与进程间通信接口两个模块;
业务逻辑处理模块,是预先定义的各种数据操作,用于接收进程间通信接口发送来的操作命令,对内存数据库中相应的数据进行逻辑处理与操作,以及将操作的结果返回给进程通信接口;
进程间通信接口,用于接收人机交互进程发出的数据库操作请求,转发给业务逻辑处理模块,以及将业务逻辑处理模块返回的操作结果发送给相应客户端的人机交互界面。
6.根据权利要求5所述的一种跨硬件平台的过程自动化软件开发系统,其特征在于:所述数据持久层包括异构数据库访问接口和内存数据库两个模块;
异构数据库访问接口,用于接收内存数据库发出的异构数据库操作请求并发送到目的数据库执行,并将结果返回至内存数据库;
内存数据库,响应业务逻辑处理模块发来的数据操作请求,并同时转发给异构数据库接口,同时接收异构数据库访问接口返回的数据库操作结果,并将其返回给业务逻辑处理模块。
7.根据权利要求6所述的一种跨硬件平台的过程自动化软件开发系统,其特征在于:所述进程间通信接口采用基于命名管道的进程间通信机制,实现基于构架下的业务逻辑表示层与数据持久层之间的信息交互。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2012104007388A CN102929619A (zh) | 2012-10-19 | 2012-10-19 | 一种跨硬件平台的过程自动化软件开发系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2012104007388A CN102929619A (zh) | 2012-10-19 | 2012-10-19 | 一种跨硬件平台的过程自动化软件开发系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN102929619A true CN102929619A (zh) | 2013-02-13 |
Family
ID=47644432
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2012104007388A Pending CN102929619A (zh) | 2012-10-19 | 2012-10-19 | 一种跨硬件平台的过程自动化软件开发系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102929619A (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103338156A (zh) * | 2013-06-17 | 2013-10-02 | 南京国电南自美卓控制系统有限公司 | 一种基于线程池的命名管道服务器并发通信方法 |
CN104243172A (zh) * | 2013-06-07 | 2014-12-24 | 国家电网公司 | 一种分散控制系统的扩展输入输出装置和方法 |
CN106547551A (zh) * | 2016-11-02 | 2017-03-29 | 合肥微梦软件技术有限公司 | 一种基于设备远程控制管理的web服务器系统 |
CN108900607A (zh) * | 2018-06-28 | 2018-11-27 | 郑州云海信息技术有限公司 | 一种smb协议请求的处理方法、装置及服务器 |
CN110287434A (zh) * | 2019-07-02 | 2019-09-27 | 郑州悉知信息科技股份有限公司 | 网站处理方法、装置及存储介质 |
CN112633844A (zh) * | 2020-12-29 | 2021-04-09 | 广州极飞科技有限公司 | 数据适配处理方法、工作流系统、电子设备及存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060265385A1 (en) * | 2005-05-17 | 2006-11-23 | International Business Machines Corporation | Common interface to access catalog information from heterogeneous databases |
CN1904935A (zh) * | 2005-07-26 | 2007-01-31 | 同济大学 | 用网格技术实现交通信息服务的系统和方法 |
CN102271156A (zh) * | 2011-07-20 | 2011-12-07 | 武汉爱迪智能工程有限公司 | 基于物联网的数据共享服务系统 |
CN203149551U (zh) * | 2012-10-19 | 2013-08-21 | 南京国电南自美卓控制系统有限公司 | 一种跨硬件平台的过程自动化软件开发系统 |
-
2012
- 2012-10-19 CN CN2012104007388A patent/CN102929619A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060265385A1 (en) * | 2005-05-17 | 2006-11-23 | International Business Machines Corporation | Common interface to access catalog information from heterogeneous databases |
CN1904935A (zh) * | 2005-07-26 | 2007-01-31 | 同济大学 | 用网格技术实现交通信息服务的系统和方法 |
CN102271156A (zh) * | 2011-07-20 | 2011-12-07 | 武汉爱迪智能工程有限公司 | 基于物联网的数据共享服务系统 |
CN203149551U (zh) * | 2012-10-19 | 2013-08-21 | 南京国电南自美卓控制系统有限公司 | 一种跨硬件平台的过程自动化软件开发系统 |
Non-Patent Citations (3)
Title |
---|
丁龙远: "分布式异构地理空间数据管理技术应用研究", 《现代测绘》 * |
伍杰华: "基于XML的J2EE框架研究与设计", 《现代计算机》 * |
李小平: "基于J2EE多层架构的Web开发框架研究", 《计算机应用研究》 * |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104243172A (zh) * | 2013-06-07 | 2014-12-24 | 国家电网公司 | 一种分散控制系统的扩展输入输出装置和方法 |
CN104243172B (zh) * | 2013-06-07 | 2018-04-27 | 国家电网公司 | 一种分散控制系统的扩展输入输出装置和方法 |
CN103338156A (zh) * | 2013-06-17 | 2013-10-02 | 南京国电南自美卓控制系统有限公司 | 一种基于线程池的命名管道服务器并发通信方法 |
CN103338156B (zh) * | 2013-06-17 | 2016-08-24 | 南京国电南自美卓控制系统有限公司 | 一种基于线程池的命名管道服务器并发通信方法 |
CN106547551A (zh) * | 2016-11-02 | 2017-03-29 | 合肥微梦软件技术有限公司 | 一种基于设备远程控制管理的web服务器系统 |
CN108900607A (zh) * | 2018-06-28 | 2018-11-27 | 郑州云海信息技术有限公司 | 一种smb协议请求的处理方法、装置及服务器 |
CN110287434A (zh) * | 2019-07-02 | 2019-09-27 | 郑州悉知信息科技股份有限公司 | 网站处理方法、装置及存储介质 |
CN112633844A (zh) * | 2020-12-29 | 2021-04-09 | 广州极飞科技有限公司 | 数据适配处理方法、工作流系统、电子设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102375731B (zh) | 一种免编码集成应用软件平台系统 | |
CN103441900B (zh) | 集中式跨平台自动化测试系统及其控制方法 | |
US9009006B2 (en) | Generating active links between model objects | |
US9105006B2 (en) | Generating floating desktop representation of extracted model object | |
US9336288B2 (en) | Workflow controller compatibility | |
CN105205766B (zh) | 基于云平台的移动互联网医院就诊系统 | |
US9152435B2 (en) | Generating a set of linked rotational views of model objects | |
CN102929619A (zh) | 一种跨硬件平台的过程自动化软件开发系统 | |
US8417739B2 (en) | Systems and methods for object-based modeling using hierarchical model objects | |
US8930487B2 (en) | Object-based modeling using model objects exportable to external modeling tools | |
CN111459671B (zh) | 一种数据处理方法、装置及数据交换服务器和存储介质 | |
CN109690524A (zh) | 分布式事件处理系统中的数据序列化 | |
CN201993811U (zh) | 云融合商业智能终端 | |
CN111694888A (zh) | 基于微服务架构的分布式etl数据交换系统及方法 | |
CN104636421A (zh) | 使用云计算的工业监视 | |
CN113282795B (zh) | 数据结构图生成及更新方法、装置、电子设备及存储介质 | |
CN102937964B (zh) | 基于分布式系统的智能数据服务方法 | |
CN103455540A (zh) | 从数据仓库模型生成内存模型的系统和方法 | |
CN102034152A (zh) | 基于soa架构的异构软件系统数据的集成整合方法与系统 | |
CN105554123A (zh) | 大容量感知云计算平台系统 | |
CN114691050B (zh) | 基于kubernetes的云原生存储方法、装置、设备及介质 | |
CN110704465A (zh) | 一种处理业务工单表的方法、装置及存储介质 | |
EP1993016A2 (en) | Embedded historians with data aggregator | |
US20190250968A1 (en) | Smart Multiple Display Calculator with Input Output Data Matrix | |
CN110851123A (zh) | 基于SpringMVC的WebGIS电网可视化框架的构建方法、系统及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C12 | Rejection of a patent application after its publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20130213 |