一种基于消息中间件的大规模异构设备集成控制方法技术

技术编号:25598516 阅读:19 留言:0更新日期:2020-09-11 23:56
本发明专利技术公开了一种基于消息中间件的大规模异构设备集成控制方法,将大规模异构设备中所有的被控对象抽象为具有统一接口,且位置无关的设备一致性接入模型;采用该接入模型的控制系统被配置为包括提供设备服务的服务端、提供数据库服务的数据库端、客户端;并通过消息中间件的发布/订阅机制实现了多个设备的命令及属性读写功能。本发明专利技术提供一种基于消息中间件的大规模异构设备集成控制方法,其通过设置一致性接入模型以及与其相配合的控制系统,使得将该方法科学装置控制系统中时,可以方便灵活地实现大规模异构设备的快速集成和群体监控,且具有很好的耦合性、可扩展性和维护性,从而满足装置长周期运行的需求。

【技术实现步骤摘要】
一种基于消息中间件的大规模异构设备集成控制方法
本专利技术涉及一种复杂装置控制系统领域。更具体地说,本专利技术涉及一种基于消息中间件的大规模异构设备集成控制方法。
技术介绍
科学装置控制系统的主要任务是系统集成,控制系统中存在大量仪器仪表和自研设备,同时需要满足实验数据传输和科学计算等复杂控制需求。控制系统具有被控设备种类繁多、通讯协议复杂、控制规模大、运行周期长及控制需求多变等特点,要求集成控制软件有很好的耦合性、维护性和可扩展性,保证科学装置控制系统快速开发和仿真验证,保障装置及控制系统在长生命周期内的高效、安全、可靠运行。传统的SCADA软件使用方便,但较难实现各种异构设备快速的集成及复杂控制需求;直接基于面向对象中间件的分布式软件框架能够较快完成控制系统的集成,但耦合性强,可复用性差且软件升级困难;基于SOA架构的分布式软件框架具有很好的耦合性、可扩展性和维护性,但不能够满足大规模设备群体控制及监控的需求。即现有技术均不能实现集成
技术实现思路
本专利技术的一个目的是解决至少上述问题和/或缺陷,并提供至少后面将说明的优点。本专利技术还有一个目的是提供一种基于消息中间件的大规模异构设备集成控制方法,其通过设置一致性接入模型以及与其相配合的控制系统,使得将该方法科学装置控制系统中时,可以方便灵活地实现大规模异构设备的快速集成和群体监控,且具有很好的耦合性、可扩展性和维护性,从而满足装置长周期运行的需求。为了实现根据本专利技术的这些目的和其它优点,提供了一种基于消息中间件的大规模异构设备集成控制方法,包括:将大规模异构设备中所有的被控对象抽象为具有统一接口,且位置无关的设备一致性接入模型;采用该接入模型的控制系统被配置为包括提供设备服务的服务端、提供数据库服务的数据库端、客户端;其中,在设备一致性接入模型下,数据库服务实现设备配置参数的持久化、权限控制及命名服务;设备服务作为设备容器,实现设备的一致性接入及报警、归档、日志相关的通用功能;客户端API通过参数化设备名称访问设备,并提供同步/异步、发布/订阅及群体调用相关功能,以实现点对点、一对多的通讯;所述控制系统被配置为通过消息中间件的发布/订阅机制实现了多设备的命令及属性读写功能。优选的是,所述接入模型将所有的硬件设备、业务逻辑、算法、总线、封装为具有相同命令和属性的软设备对象;其中,接入模型的软件框架被配置为采用面向服务SOA架构,以使用户可通过客户端应用程序编程API接口实现大规模异构设备的快速集成及实时监控。优选的是,所述接入模型被配置为采用序列化、反射机制实现异构设备的一致性接入,以将所有异构设备抽象为具有相同属性和命令的抽象接口,进而通过键值的方式实现命令名称、命令指针及具体函数功能实现的对应关系,使用户通过相应执行代码段实现相应功能。优选的是,设备服务通过周期性轮询设备属性,判断属性是否触发相应的报警、归档事件,并以事件的形式将数据发布出去,同时相关配置参数可持久化的数据库中。优选的是,所述控制系统被配置为采用zeromq作为通讯中间件,以通过其提供的请求、应答、发布/订阅通讯模式、管道模式实现客户端的同步/异步、发布/订阅及群体调用功能;控制系统将中间件封装为通讯类,将数据库封装为数据访问类,将数据类型封装为设备数据类,将异常信息封装为异常类;控制系统中各设备均包括持久化设备属性、设备命令和设备属性,各设备对象包括对象命令和对象属性,以通过对象命令实现函数调用功能,通过对象属性实现属性值读写功能;控制系统中的各设备均具有唯一的网络地址作为服务ID,每个设备服务具有唯一的服务进程名称作为服务ID,并持久化在数据库中,在设备服务启动时,将服务ID和设备ID注册到数据库中,并确保同一数据库中相关设备服务和设备的唯一性,客户端根据设备名称地址从数据库服务中检索设备服务的网络地址,并与系统服务建立连接关系。优选的是,数据库服务对客户端提供多设备控制接口,数据库通过事件机制将控制命令发布到设备服务,并实现多个设备的控制;通过设备服务进程实现单个进程的多个设备值的读取。优选的是,设备服务为一个进程,在设备服务启动时,根据设备服务进程ID从数据库服务中读取该进程包含的类名称及设备名称,调用相关类动态库,并根据这些信息以键-值的形式创建设备名称与设备类的对应关系。优选的是,客户端将设备对象封装为设备代理,通过设备名称、匿名访问或者通过用户名、密码访问与设备对象建立联系;客户端命令以重载的方式实现多个输入参数和不大于1个输出参数;客户端将组命令操作封装为组代理类,以通过该类实现多个或者层次化设备对象命令和属性操作;客户端通过数据库服务获得设备对象网络地址,并根据网络地址连接设备对象。优选的是,所述控制系统在群体设备控制时,用户通过group设备代理添加多个设备名称,客户端根据设备名称向相关设备服务注册订阅功能,并向该group设置唯一的ID,group设备以发布的方式实现多个设备的命名下达,系统服务通过事件机制同时更新多条设备属性信息,以实现对群体设备的控制与监控。本专利技术至少包括以下有益效果:其一,本专利技术的控制方法,可以满足科学装置或者其它复杂装置各种硬件设备的快速集成和多设备快速控制的需求。该方法将所有的硬件设备、业务逻辑、算法及总线等封装为具有相同命令和属性的软设备对象,用户可通过客户端API接口实现大规模异构设备的快速集成及实时监控,同时软件框架采用SOA架构,具有松耦合、标准化、粗粒度、可重用等特点,满足科学装置控制系统快速集成及长周期运行的控制需求。其二,本专利技术的控制方法允许用户通过控制软件实现各种异构设备的快速集成,通过事件机制实现多个设备的高效控制和实时监控,从而满足科学装置控制系统并行控制的需求,其松耦合架构也保证了控制系统在长生命周期内的高效、安全、可靠运行。本专利技术的其它优点、目标和特征将部分通过下面的说明体现,部分还将通过对本专利技术的研究和实践而为本领域的技术人员所理解。附图说明图1为本专利技术的一个实施例中基于消息中间件的大规模异构设备集成控制方法的结构组成框图;图2为本专利技术中异构设备的集成控制连接框图;图3为本专利技术控制方法中设备服务对象的层次结构分布模型图;图4为本专利技术控制方法中设备服务对象的模型图;图5为本专利技术控制方法中设备服务启动过程的流程图;图6为本专利技术控制方法中客户端访问控制对象的过程图;图7为本专利技术控制方法中客户端请求/应答实现机制图;图8为本专利技术控制方法中客户端发布/订阅实现机制图;图9为本专利技术控制方法中多设备控制通讯机制图。具体实施方式下面结合附图对本专利技术做进一步的详细说明,以令本领域技术人员参照说明书文字能够据以实施。应当理解,本文所使用的诸如“具有”、“包含”以及“包括”术语并不配出一个或多个其它元件或其组合的存在或添加。需要说明的是,在本发本文档来自技高网...

【技术保护点】
1.一种基于消息中间件的大规模异构设备集成控制方法,其特征在于,包括:/n将大规模异构设备中所有的被控对象抽象为具有统一接口,且位置无关的设备一致性接入模型;/n采用该接入模型的控制系统被配置为包括提供设备服务的服务端、提供数据库服务的数据库端、客户端;/n其中,在设备一致性接入模型下,数据库服务实现设备配置参数的持久化、权限控制及命名服务;设备服务作为设备容器,实现设备的一致性接入及报警、归档、日志相关的通用功能;客户端API通过参数化设备名称访问设备,并提供同步/异步、发布/订阅及群体调用相关功能,以实现点对点、一对多的通讯;/n所述控制系统被配置为通过消息中间件的发布/订阅机制实现了多设备的命令及属性读写功能。/n

【技术特征摘要】
20200224 CN 20201011206991.一种基于消息中间件的大规模异构设备集成控制方法,其特征在于,包括:
将大规模异构设备中所有的被控对象抽象为具有统一接口,且位置无关的设备一致性接入模型;
采用该接入模型的控制系统被配置为包括提供设备服务的服务端、提供数据库服务的数据库端、客户端;
其中,在设备一致性接入模型下,数据库服务实现设备配置参数的持久化、权限控制及命名服务;设备服务作为设备容器,实现设备的一致性接入及报警、归档、日志相关的通用功能;客户端API通过参数化设备名称访问设备,并提供同步/异步、发布/订阅及群体调用相关功能,以实现点对点、一对多的通讯;
所述控制系统被配置为通过消息中间件的发布/订阅机制实现了多设备的命令及属性读写功能。


2.如权利要求1所述的基于消息中间件的大规模异构设备集成控制方法,其特征在于,所述接入模型将所有的硬件设备、业务逻辑、算法、总线、封装为具有相同命令和属性的软设备对象;
其中,接入模型的软件框架被配置为采用面向服务SOA架构,以使用户可通过客户端应用程序编程API接口实现大规模异构设备的快速集成及实时监控。


3.如权利要求1所述的基于消息中间件的大规模异构设备集成控制方法,其特征在于,所述接入模型被配置为采用序列化、反射机制实现异构设备的一致性接入,以将所有异构设备抽象为具有相同属性和命令的抽象接口,进而通过键值的方式实现命令名称、命令指针及具体函数功能实现的对应关系,使用户通过相应执行代码段实现相应功能。


4.如权利要求1所述的基于消息中间件的大规模异构设备集成控制方法,其特征在于,设备服务通过周期性轮询设备属性,判断属性是否触发相应的报警、归档事件,并以事件的形式将数据发布出去,同时相关配置参数可持久化的数据库中。


5.如权利要求1所述的基于消息中间件的大规模异构设备集成控制方法,其特征在于,所述控制系统被配置为采用zeromq作为通讯中间件,以通过其提供的请求、应答、发布/订阅通讯模式、管道模式实现客户端的同步/异步、发布/订阅及群体调用功能;
控制系统将中间件封...

【专利技术属性】
技术研发人员:余冰安宝冉曾司凤孙黎李立邓金华刘子龙吴淮任强
申请(专利权)人:中国工程物理研究院计算机应用研究所
类型:发明
国别省市:四川;51

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1