异构主备调度自动化系统之间操作信息同步的方法及系统与流程

文档序号:11959621阅读:368来源:国知局
异构主备调度自动化系统之间操作信息同步的方法及系统与流程
本发明属于电网调度自动化
技术领域
,具体涉及一种异构主备调度自动化系统之间进行操作信息同步的方法。
背景技术
:随着三层或多层体系结构分布式环境在企业信息系中的应用,需要通过标准的消息中间件可以使各个独立业务系统灵活可靠的组合起来,从而提高系统的扩展性和伸缩性,JMS消息服务(JavaMessageService)是由Sun提出的基于面向消息中间件MOM(MessageOrientedMiddleware)的统一技术规范,通过消息收发服务路由可以实现从一个消费者客户端向另外一个客户端发送消息而与平台无关,利用JMS的高效、跨平台性可以实现实时数据通信。由于国内主流电网调度自动化系统生产厂商的各种电网调度自动化产品的系统架构不同,在建设备用调度自动化系统时相应地就有同构系统和异构系统两种建设方案。在主备调系统共同正常运行的情况下,主调系统进行的调度员操作,如挂牌、摘牌、人工置数、遥信封锁等,都需要完全实时地同步到备调系统。技术实现要素:针对上述问题,本发明提供了一种利用JMS消息服务(JavaMessageService)实现异构主备调系统之间操作信息的实时同步方法,主调系统的生产者客户端利用消息总线把操作消息发送到JMS服务端,备调系统的消费者客户端收到订阅的消息后再做相应的处理,从而实现操作的同步,其通过消息收发服务路由可以实现从一个客户端向另外一个客户端发送消息而与平台无关,利用JMS的高效、跨平台性可以实现异构主备调系统之间操作信息实时同步。实现上述技术目的,达到上述技术效果,本发明通过以下技术方案实现:一种异构主备调度自动化系统之间进行操作信息同步的方法,包括以下步骤:主调度系统作为生产者客户端、备调系统作为消费者客户端均连接到JMS服务器;生产者客户端通过JMS服务器发布操作信息消息,并接受消费者客户端的响应消息;消费者客户端订阅了与生产者客户端相同的主题,通过JMS服务器接收生产者客户端发布的操作信息消息,并通过JMS服务器发送响应消息到生产者客户端,实现点对点的操作信息的同步。所述备调系统至少包括一个,每个备调系统分别作为消费者客户端;所述主调度系统与备调系统通过队列实现点对点的操作信息的同步。所述操作信息以JMS消息的形式进行传送,包括:a)消息头,消息头包含消息的识别信息和路由信息;b)消息体。所述操作信息消息还包括:c)消息属性,当需要除消息头字段以外的值,使用消息属性。所述生产者客户端通过JMS服务器发布操作信息消息,具体包括以下步骤:创建连接、会话、队列、生产者;从图形浏览器获取各种实时操作信息,并确认是否需要发送至备调系统;按照信息同步报文规范组织键值对报文;调用JMS接口发送并提交消息,确认是否结束发布操作;关闭生产者、会话、连接。所述键值对报文包括:报文头、报文体;所述报文体包括:操作类型、具体类型的报文信息;每个键值对都用“属性名:属性值”的方式表述,多个属性之间用分号隔开。所述操作类型包括:遥信封锁同步、遥信解锁同步、遥测封锁同步、遥测解决封锁同步、设备挂牌同步、设备摘牌同步。所述消费者客户端通过JMS服务器接收生产者客户端发布的操作信息消息,具体包括以下步骤:创建连接、会话、队列、消费者;接收消息并判断确认出属于设定的操作类型;判断结束后,关闭消费者、会话、连接。一种异构主备调度自动化系统,包括主调度系统、备调系统和JMS服务器,主调度系统通过JMS消息服务器发布操作信息消息,备调系统通过JMS消息服务器订阅与主调度系统相同的主题,接收主调度系统发布出来的操作信息消息,备调系统通过JMS服务器来对主调度系统进行消息响应,通过队列实现点对点的操作信息同步。所述备调系统至少包括一个,每个备调系统分别作为消费者客户端。本发明的有益效果:本发明的一种异构主备调度自动化系统之间进行操作信息同步的方法及系统,主调系统的生产者客户端利用消息总线把操作消息发送到JMS服务端,备调系统的消费者客户端收到订阅的消息后再做相应的处理,从而实现操作的同步,其通过消息收发服务路由可以实现从一个客户端向另外一个客户端发送消息而与平台无关,利用JMS的高效、跨平台性可以实现异构主备调系统之间操作信息实时同步。本发明的一种异构主备调度自动化系统之间进行操作信息同步的方法,操作简单,实现方便,同步实时性高。附图说明图1为本发明一种实施例的结构示意图。图2为本发明一种实施例的主调系统侧运行流程示意图。图3为本发明一种实施例的备调系统侧运行流程示意图。具体实施方式为了使本发明的目的、技术方案及优点更加清楚明白,以下结合实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。下面结合附图对本发明的应用原理作详细的描述。一种异构主备调度自动化系统之间进行操作信息同步的方法,包括以下步骤:主调度系统作为生产者客户端、备调系统作为消费者客户端均连接到JMS服务器;生产者客户端通过JMS服务器发布操作信息消息,并接受消费者客户端的响应消息;消费者客户端订阅了与生产者客户端相同的主题,通过JMS服务器接收生产者客户端发布的操作信息消息,并通过JMS服务器发送响应消息到生产者客户端,实现点对点的操作信息的同步。所述备调系统至少包括一个,每个备调系统分别作为消费者客户端;所述主调度系统与备调系统通过队列实现点对点的操作信息的同步。所述操作信息以JMS消息的形式进行传送,包括:a)消息头,消息头包含消息的识别信息和路由信息;b)消息体。所述操作信息消息还包括:c)消息属性,当需要除消息头字段以外的值,使用消息属性。所述生产者客户端通过JMS服务器发布操作信息消息,具体包括以下步骤:创建连接、会话、队列、生产者;从图形浏览器获取各种实时操作信息,并确认是否需要发送至备调系统;按照信息同步报文规范组织键值对报文;调用JMS接口发送并提交消息,确认是否结束发布操作;关闭生产者、会话、连接。所述键值对报文包括:报文头、报文体;所述报文体包括:操作类型、具体类型的报文信息;每个键值对都用“属性名:属性值”的方式表述,多个属性之间用分号隔开。所述操作类型包括:遥信封锁同步、遥信解锁同步、遥测封锁同步、遥测解决封锁同步、设备挂牌同步、设备摘牌同步。所述消费者客户端通过JMS服务器接收生产者客户端发布的操作信息消息,具体包括以下步骤:创建连接、会话、队列、消费者;接收消息并判断确认出属于设定的操作类型;判断结束后,关闭消费者、会话、连接。一种异构主备调度自动化系统,包括主调度系统、备调系统和JMS服务器,主调度系统通过JMS消息服务器发布操作信息消息,备调系统通过JMS消息服务器订阅与主调度系统相同的主题,接收主调度系统发布出来的操作信息消息,备调系统通过JMS服务器来对主调度系统进行消息响应,通过队列实现点对点的操作信息同步。进一步地,所述备调系统至少包括一个,每个备调系统分别作为消费者客户端。实施例一1、通信链路、参数、方式一种异构主备调度自动化系统,包括主调度系统(消息生成者)、备调系统(消息消费者),主调度系统作为生产者客户端连接到JMS服务器,备调系统作为消费者客户端连接到JMS服务器,通过JMS服务器来进行消息的转发,如图1所示,生产者客户端A通过JMS消息服务器发布消息,消费者客户端B、C,通过JMS消息服务器订阅了与生产者客户端A相同的主题,则都可以接收到生产者客户端A发布出来的消息,消费者客户端B、C也可以通过JMS服务器来对生产者客户端A进行消息响应,通过队列实现点对点的消息生产与消费。根据JMS规范,交互消息由以下三部分组成:a)消息头(Header)。消息头包含消息的识别信息和路由信息;b)消息体(Body);c)消息属性(Properties)。如果需要除消息头字段以外的值,那么可以使用消息属性。JMS定义的消息类型有TextMessage、MapMessage、BytesMessage、StreamMessage和ObjectMessage,其中TextMessage是String对象字符串内容;MapMessage是键值对的集合,键名是String对象,值类型可以是任何基本类型。BytesMessage是字节流内容,StreamMessage是输入输出流,ObjectMessage为可序列化对象。链路:JMS服务器搭建在备调。端口:JMS默认的端口号61616。Topic名称:约定SCADA操作信息同步的topic名称为“scada_opt_sync”。报文方式:文本。报文用键值对的方式表达,即每个键值对都用“属性名:属性值”的方式,多个属性之间用分号隔开。为了避免字符串类型的属性值中含有特殊字符如空格、分号、冒号,所以一律都对属性值加上双引号,同时字符串类型的属性值中不允许有冒号和分号。2、操作信息报文的总体结构主备调操作信息同步报文的总体格式:报文头+报文体;报文头包括应用名appName、操作人optMan、操作时间optTime。报文体需要根据不同应用的特点来定义。3、SCADA操作信息报文规范目前SCADA包括如下几种操作:遥测封锁、遥测解封锁、遥信封锁、遥信解封锁、挂牌、摘牌,因此需要在报文体的前面增加报文类型,即SCADA的报文体=操作类型+具体类型的报文信息。a、遥信封锁操作类型:YX_LOCK名称类型描述取值范围subRdfID字符串厂站RDFIDsubName字符串厂站名(调试用,不影响逻辑)measRdfID字符串量测RDFIDmeasName字符串测点名(调试用,不影响逻辑)value整型人工置入的值0=分;1=合;comment字符串注释信息(可选)遥信封锁:“应用名、操作人、操作时间、操作类型、厂站RDFID、量测RDFID、置入值、注释”举例:appName:“SCADA”;optMan:”刘洋”;optTime:“2015-08-2709:23:45”;optType:“YX_LOCK”;subRdfID:“4586548752”;subName:“北郊站”;measRdfID:“58469878547”;measName:“XXX开关状态”;value:“5.3”;comment:“置数原因XXX”b、遥信解封锁操作类型:YX_UNLOCK名称类型描述取值范围subRdfID字符串厂站RDFIDsubName字符串厂站名(调试用,不影响逻辑)measRdfID字符串量测RDFIDmeasName字符串测点名(调试用,不影响逻辑)comment字符串注释信息(可选)遥信解封锁:“应用名、操作人、操作时间、操作类型、厂站RDFID、量测RDFID、置入值、注释”举例:appName:“SCADA”;optMan:“刘洋”;optTime:“2015-08-2709:23:45”;optType:“YX_UNLOCK”;subRdfID:“4586548752”;subName:“北郊站”;measRdfID:“58469878547”;measName:“XXX开关状态”;comment::“置数原因XXX”。c、遥测封锁操作类型:YC_LOCK名称类型描述取值范围subRdfID字符串厂站RDFIDsubName字符串厂站名(调试用,不影响逻辑)measRdfID字符串量测RDFIDmeasName字符串测点名(调试用,不影响逻辑)value浮点型人工置入的值comment字符串注释信息(可选)遥测封锁:“应用名、操作人、操作时间、操作类型、厂站RDFID、量测RDFID、置入值、注释”举例:appName:“SCADA”;optMan:“刘洋”;optTime:“2015-08-2709:23:45”;optType:“YC_LOCK”;subRdfID:“4586548752”;subName:“北郊站”;measRdfID:“58469878547”;measName:“XXX线有功”;value:“5.3”;comment:“置数原因XXX”。d、遥测解封锁操作类型:YC_UNLOCK遥测解封锁:“应用名、操作人、操作时间、操作类型、厂站RDFID、量测RDFID、置入值、注释”名称类型描述取值范围subRdfID字符串厂站RDFIDsubName字符串厂站名(调试用,不影响逻辑)measRdfID字符串量测RDFIDmeasName字符串测点名(调试用,不影响逻辑)comment字符串注释信息(可选)举例:appName:“SCADA”;optMan:“刘洋”;optTime:“2015-08-2709:23:45”;optType:“YC_UNLOCK”;subRdfID:“4586548752”;subName:“北郊站”;measRdfID:“58469878547”;measName:“XXX线有功”;comment:“置数原因XXX”。e、设备挂牌操作类型:AddDevTag挂牌:“应用名、操作人、操作时间、操作类型、厂站RDFID、设备RDFID、牌类型名、注释”名称类型描述取值范围subRdfID字符串厂站RDFIDsubName字符串厂站名(调试用,不影响逻辑)devRdfID字符串设备RDFIDdevName字符串设备名(调试用,不影响逻辑)equType字符串设备类型名tagTypeName字符串牌类型名称comment字符串注释信息(可选)举例:appName:“SCADA”;optMan:“刘洋”;optTime:“2015-08-2709:23:45”;optType:“AddDevTag”;subRdfID:“458654458”;subName:“北郊站”;devRdfID:“5846988846”;devName:“XXX线路”;tagTypeName:“开关检修牌”;comment:“开关现场检修所以挂牌”。f、设备摘牌操作类型名称:RemoveDevTag名称类型描述取值范围subRdfID字符串厂站RDFIDsubName字符串厂站名(调试用,不影响逻辑)devRdfID字符串设备RDFIDdevName字符串设备名(调试用,不影响逻辑)equType字符串设备类型名tagTypeName字符串牌类型名称comment字符串注释信息(可选)摘牌:“应用名、操作人、操作时间、操作类型、厂站RDFID、设备RDFID、牌类型名、注释”举例:appName:“SCADA”;optMan:“刘洋”;optTime:“2015-08-2709:23:45”;optType:“RemoveDevTag”;subRdfID:“458654458”;subName:“北郊站”;devRdfID:“5846988846”;devName:“XXX线路”;tagTypeName:“开关检修牌”;comment:“开关现场检修完毕摘牌”。在本发明的一种实施例中,设备类型名取值范围如上表所示。namedes1Substation厂站2PowerTransformer变压站3TransformerWinding变压器4VlotageLevel电压等级5BusbarSection母线6Bay间隔7Breaker开关8ACLineSegment线路9Swithc刀闸10Compensator电容电抗器11EnergyConsumer负荷12SynchronousMachine发电机4、SCADA操作信息同步流程如图2和3所示,本发明的异构主备调度自动化系统中的SCADA操作信息同步流程分为主调侧程序流程和备调侧程序流程。主调侧程序流程具体包括以下步骤:创建连接、会话、队列、生产者;从图形浏览器获取各种实时操作信息,并确认是否需要发送至备调系统;按照信息同步报文规范组织键值对报文;调用JMS接口发送并提交消息,确认是否结束发布操作;关闭生产者、会话、连接。备调侧程序流程具体包括以下步骤:创建连接、会话、队列、消费者;接收消息并判断确认出属于设定的操作类型;判断结束后,关闭消费者、会话、连接。在本发明中,生产者客户端经过服务端发布订阅消息就是信息传输的过程。从而完成异构主备调度自动化系统之间的操作信息同步。以上显示和描述了本发明的基本原理和主要特征和本发明的优点。本行业的技术人员应该了解,本发明不受上述实施例的限制,上述实施例和说明书中描述的只是说明本发明的原理,在不脱离本发明精神和范围的前提下,本发明还会有各种变化和改进,这些变化和改进都落入要求保护的本发明范围内。本发明要求保护范围由所附的权利要求书及其等效物界定。当前第1页1 2 3 
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1