CN108958174A - 一种多类设备控制方法和系统 - Google Patents
一种多类设备控制方法和系统 Download PDFInfo
- Publication number
- CN108958174A CN108958174A CN201710356429.8A CN201710356429A CN108958174A CN 108958174 A CN108958174 A CN 108958174A CN 201710356429 A CN201710356429 A CN 201710356429A CN 108958174 A CN108958174 A CN 108958174A
- Authority
- CN
- China
- Prior art keywords
- equipment
- message
- control
- predeterminable event
- module
- 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
- 238000000034 method Methods 0.000 title claims abstract description 30
- 238000012544 monitoring process Methods 0.000 claims abstract description 34
- 238000006243 chemical reaction Methods 0.000 claims description 29
- 238000004590 computer program Methods 0.000 claims description 7
- 241000208340 Araliaceae Species 0.000 claims 1
- 235000005035 Panax pseudoginseng ssp. pseudoginseng Nutrition 0.000 claims 1
- 235000003140 Panax quinquefolius Nutrition 0.000 claims 1
- 235000008434 ginseng Nutrition 0.000 claims 1
- 238000005516 engineering process Methods 0.000 abstract description 3
- 238000010586 diagram Methods 0.000 description 16
- 230000009471 action Effects 0.000 description 10
- 230000006870 function Effects 0.000 description 10
- 230000008859 change Effects 0.000 description 5
- 230000008569 process Effects 0.000 description 5
- 238000004364 calculation method Methods 0.000 description 4
- 230000006854 communication Effects 0.000 description 4
- 238000004891 communication Methods 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 238000012545 processing Methods 0.000 description 3
- 238000013461 design Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 239000004744 fabric Substances 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 230000005291 magnetic effect Effects 0.000 description 2
- 239000004065 semiconductor Substances 0.000 description 2
- 238000006467 substitution reaction Methods 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000005611 electricity Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/418—Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM]
- G05B19/4185—Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM] characterised by the network communication
- G05B19/4186—Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM] characterised by the network communication by protocol, e.g. MAP, TOP
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02P—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
- Y02P90/00—Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
- Y02P90/02—Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Manufacturing & Machinery (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Automation & Control Theory (AREA)
- Computer And Data Communications (AREA)
Abstract
本发明公开了一种多类设备控制方法和系统,涉及计算机技术领域。该方法的一具体实施方式包括:接收第一设备发送的预设事件消息,并将预设事件消息发布到消息队列;通过预设的监听该预设事件消息的监听程序从消息队列获取预设事件消息,并生成对执行预设事件消息触发的动作的第二设备的控制消息,然后将控制消息发布到消息队列;从消息队列获取发布的控制消息,并将获取的控制消息转换为控制指令,然后下发控制指令到第二设备。该实施方式能够使设备之间解耦,增强可扩展性,可以在不更改多类设备控制系统的情况下更换不同厂商的设备,且不会影响其他设备。
Description
技术领域
本发明涉及计算机技术领域,尤其涉及一种多类设备控制方法和系统、电子设备、计算机可读介质。
背景技术
随着科技发展,库房或分拨中心等作业单位引入了大量的智能设备,这些智能设备之间要协调工作才能完成一个业务流程。在一个业务流程中,同一个作业单位(如库房,分拨中心)中设备的组合通常有多种,例如分拨中心的分拣设备可以是不同分拣设备厂商提供的设备,此外,同一类别设备还可能需要与多个类别的设备协同工作。
图1是现有的设备控制系统的结构示意图,根据图1所示的设备控制系统,每一类别的设备对应一个设备控制器,由该设备控制器控制该类别的设备,并协调另外一个类别的设备。具体控制流程如下:
步骤1:当设备A发生一个事件,设备A控制器会收到此事件;
步骤2:设备A控制器经过逻辑计算,得出需要设备B要执行一预设操作;
步骤3:设备A控制器向设备B控制器发送指示设备B执行该预设操作的消息;
步骤4:设备B控制器根据设备A控制器发送的消息,向设备B发送相应控制消息。
在实现本发明过程中,发明人发现现有技术中至少存在如下问题:
上述现有的设备控制系统中,设备A的控制器和设备B的控制器绑定,如果设备B更换厂家,则需要修改设备A的控制器,不利于更换设备,并且,当业务流程中增加新的智能设备,从而在设备控制系统中增加新的设备控制器时,需要更改原有的设备控制器之间的绑定关系,不利于控制系统扩展。此外,设备之间的消息在各自的控制器之间流转,导致设备状态不独立,如果设备控制系统出现故障,设备事件消息会丢失,不利于设备一天24小时运转。
可见,如何设计控制多类设备协同工作的系统,使得能够方便地协调不同厂商的同类设备以及不同类别的设备是亟需解决的问题。
发明内容
有鉴于此,本发明实施例提供一种多类设备控制方法和系统、电子设备、计算机可读介质,能够使设备之间解耦,增强可扩展性,可以在不更改多类设备控制系统的情况下更换不同厂商的设备,且不会影响其他设备。
为实现上述目的,根据本发明实施例的一个方面,提供了一种多类设备控制方法。
一种多类设备控制方法,预先为所述多类设备的每个类别设备设置一个或多个监听程序,且所述每个类别设备对应的监听程序分别用于监听触发所对应类别设备的各动作的事件消息,所述方法包括:接收所述多类设备中第一设备发送的预设事件消息,并将所述预设事件消息发布到消息队列;通过预设的监听该预设事件消息的监听程序从所述消息队列获取所述预设事件消息,并生成对执行所述预设事件消息触发的动作的第二设备的控制消息,然后将所述控制消息发布到所述消息队列;从所述消息队列获取所述发布的控制消息,并将所述获取的控制消息转换为控制指令,然后下发所述控制指令到所述第二设备。
可选地,将所述预设事件消息发布到消息队列之前,还包括:通过预先配置的与所述第一设备对应的协议转换类,将所述预设事件消息的格式转换为预设的标准消息格式;并且,在所述下发所述控制指令到所述第二设备之前,还包括:通过预先配置的与所述第二设备对应的协议转换类,将所述控制指令转换为所述第二设备可识别的格式。
可选地,执行所述预设事件消息触发的动作的第二设备具有预设的控制逻辑,并且,生成对执行所述预设事件消息触发的动作的第二设备的控制消息包括:根据所述预设事件消息获取执行所述预设的控制逻辑所需的参数信息;根据所述参数信息和所述预设的控制逻辑生成对所述第二设备的控制消息。
可选地,在所述下发所述控制指令到所述第二设备之后,还包括:监控所述第二设备对所述控制指令的执行状态。
可选地,在所述下发所述控制指令到所述第二设备之后,还包括:显示所述第二设备对所述控制指令的执行状态的信息。
可选地,所述消息队列还用于存储所述每个类别设备定时发送的设备状态信息。
根据本发明实施例的另一方面,提供了一种多类设备控制系统。
一种多类设备控制系统,预先为所述多类设备的每个类别设备设置一个或多个监听程序,且所述每个类别设备对应的监听程序分别用于监听触发所对应类别设备的各动作的事件消息,所述系统包括:消息接收模块、消息发布模块、消息监听模块、指令下发模块,其中,所述消息接收模块用于接收所述多类设备中第一设备发送的预设事件消息;所述消息发布模块用于将所述预设事件消息发布到消息队列;所述消息监听模块用于通过预设的监听该预设事件消息的监听程序从所述消息队列获取所述预设事件消息,并生成对执行所述预设事件消息触发的动作的第二设备的控制消息;所述消息发布模块还用于将所述控制消息发布到所述消息队列;所述指令下发模块用于从所述消息队列获取所述发布的控制消息,并将所述获取的控制消息转换为控制指令,然后下发所述控制指令到所述第二设备。
可选地,所述多类设备控制系统还包括消息转换模块,所述消息转换模块用于:通过预先配置的与所述第一设备对应的协议转换类,将所述预设事件消息的格式转换为预设的标准消息格式;并且,所述消息转换模块还用于:通过预先配置的与所述第二设备对应的协议转换类,将所述控制指令转换为所述第二设备可识别的格式。
可选地,执行所述预设事件消息触发的动作的第二设备具有预设的控制逻辑,并且,所述消息监听模块还用于:根据所述预设事件消息获取执行所述预设的控制逻辑所需的参数信息,并根据所述参数信息和所述预设的控制逻辑生成对所述第二设备的控制消息。
可选地,还包括状态监控模块,用于监控所述第二设备对所述控制指令的执行状态。
可选地,还包括状态显示模块,用于显示所述第二设备对所述控制指令的执行状态的信息。
可选地,所述消息队列还用于存储所述每个类别设备定时发送的设备状态信息,并且,所述状态监控模块还用于根据所述设备状态信息监控所述每个类别设备的设备状态。
根据本发明实施例的又一方面,提供了一种电子设备。
一种电子设备,包括:一个或多个处理器;存储器,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器实现多类设备控制方法。
根据本发明实施例的又一方面,提供了一种计算机可读介质。
一种计算机可读介质,其上存储有计算机程序,其特征在于,所述程序被处理器执行时实现多类设备控制方法。
上述发明中的一个实施例具有如下优点或有益效果:通过在消息队列发布事件消息,且通过消息队列维持事件消息流转,能够使设备之间解耦,为每个类别设备设置一个或多个监听程序,增加新类别设备只需设置对应的新的监听程序即可,增强可扩展性,通过与设备对应的协议转换类转换消息格式,可以在不更改多类设备控制系统的情况下更换不同厂商的设备,且不会影响其他设备,此外,通过消息队列发布事件消息,可更方便地监听消息,所有设备状态消息由消息队列存储转发,多类设备控制系统本身无状态,在设备控制系统所在服务器出现故障时可以马上切换到另外一台服务器上运行,并且,状态监控模块和状态显示模块可更方便的得到设备状态的变更,而不必关注设备本身的协议。
上述的非惯用的可选方式所具有的进一步效果将在下文中结合具体实施方式加以说明。
附图说明
附图用于更好地理解本发明,不构成对本发明的不当限定。其中:
图1是现有的设备控制系统的结构示意图;
图2是根据本发明实施例的多类设备控制方法的主要步骤示意图;
图3是根据本发明实施例的多类设备控制系统的主要模块示意图;
图4是根据本发明实施例的多类设备控制系统的优选架构示意图;
图5是根据本发明实施例的控制分拣机与AGV设备协同工作的流程示意图;
图6是适于用来实现本发明实施例的电子设备的计算机系统的结构示意图。
具体实施方式
以下结合附图对本发明的示范性实施例做出说明,其中包括本发明实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本发明的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。
图2是根据本发明实施例的多类设备控制方法的主要步骤示意图。
如图2所示,本发明实施例的多类设备控制方法主要包括如下的步骤S201至步骤S203。
在一个业务流程中,一个设备的动作由另一个设备的事件触发,即,一个设备发生的事件与另一个设备的动作之间存在预设的逻辑关联关系。按照该预设的逻辑关联关系,可预先设置每个类别设备的各动作分别由与该各动作存在逻辑关联关系的各个事件消息触发。
根据本发明实施例的多类设备控制方法,预先为多类设备的每个类别设备设置一个或多个监听程序,且每个类别设备对应的监听程序分别用于监听触发所对应类别设备的各动作的事件消息。由于一个设备发生的事件与另一个设备的动作之间存在预设的逻辑关联关系,因此,每个类别设备对应的监听程序监听的事件消息与该事件消息触发的该类别设备的各动作之间存在上述预设的逻辑关联关系。例如,分拣机满隔时,由AGV(AutomatedGuided Vehicle,自动导引运输车)设备到该满隔的分拣机隔口位置将包裹箱移动到一预设位置,并从空箱区域将空箱运送到该分拣机的隔口下,则分拣机满隔的事件消息与AGV设备到该满隔的分拣机隔口位置将包裹箱移动到一预设位置,并从空箱区域将空箱运送到该分拣机的隔口下的动作存在预设的逻辑关联关系,那么,可设置AGV设备对应一个监听程序,该监听程序用于监听触发AGV设备到该满隔的分拣机隔口位置将包裹箱移动到一预设位置,并从空箱区域将空箱运送到该分拣机的隔口下的动作的事件消息,并且该事件消息为与该AGV设备的该动作存在预设的逻辑关联关系的分拣机满隔的事件消息。
步骤S201:接收多类设备中第一设备发送的预设事件消息,并将预设事件消息发布到消息队列。
将预设事件消息发布到消息队列之前,还可以通过预先配置的与第一设备对应的协议转换类,将预设事件消息的格式转换为预设的标准消息格式。
其中,预设事件消息的格式例如JSON(JavaScript Object Notation,JS对象标记)格式、HTML(超文本标记语言)格式等,预设标准消息格式例如为Avro(数据序列化系统)格式等。
步骤S202:通过预设的监听该预设事件消息的监听程序从消息队列获取预设事件消息,并生成对执行预设事件消息触发的动作的第二设备的控制消息,然后将控制消息发布到消息队列。
其中,执行预设事件消息触发的动作的第二设备具有预设的控制逻辑。生成对执行预设事件消息触发的动作的第二设备的控制消息,具体可以包括:根据预设事件消息获取执行预设的控制逻辑所需的参数信息;根据该参数信息和预设的控制逻辑生成对第二设备的控制消息。假设第一设备为分拣机,第二设备为AGV设备,那么,参数信息例如可以为分拣机隔口的信息,例如位置信息、标识信息等,以便AGV设备按照预设的控制逻辑确定该分拣机隔口的具体位置,并进行相应地移动动作。
步骤S203:从消息队列获取发布的控制消息,并将获取的控制消息转换为控制指令,然后下发控制指令到第二设备。
下发控制指令到第二设备之前,还可以通过预先配置的与第二设备对应的协议转换类,将控制指令转换为第二设备可识别的格式。具体地,例如将Avro(数据序列化系统)格式等预设标准消息格式的控制指令转换为第二设备可识别的JSON(JavaScript ObjectNotation,JS对象标记)格式、HTML格式等。
下发控制指令到第二设备之后,还可以监控第二设备对控制指令的执行状态。例如下发控制指令到AGV设备之后,AGV设备响应控制指令执行相应的动作,并向消息队列回传执行当前动作的执行状态的信息,如果执行状态有误,则执行该监控操作的模块将发出警报消息。
下发控制指令到第二设备之后,还可以显示第二设备对控制指令的执行状态的信息。
此外,消息队列还可以用于存储每个类别设备定时发送的设备状态信息。以AGV设备为例,设备状态信息例如每隔500毫秒向消息队列回传心跳消息,包括AGV设备当前位置信息(如坐标)、设备状态(空载或满载等),以确定AGV设备是否出现运行故障。
图3是根据本发明实施例的多类设备控制系统的主要模块示意图。
如图3所示,根据本发明实施例的多类设备控制系统300中,预先为多类设备的每个类别设备设置一个或多个监听程序,且每个类别设备对应的监听程序分别用于监听触发所对应类别设备的各动作的事件消息,多类设备控制系统300主要包括:消息接收模块301、消息发布模块302、消息监听模块303、指令下发模块304。其中:
消息接收模块301用于接收多类设备中第一设备发送的预设事件消息。
消息接收模块301具体可以为网关,网关中的各种传输协议通道负责和设备交互。
消息发布模块302用于将预设事件消息发布到消息队列。该消息发布模块302具体可以为一个MQ(消息队列)消息系统或MQ消息管理器。
消息监听模块303用于通过预设的监听该预设事件消息的监听程序从消息队列获取预设事件消息,并生成对执行预设事件消息触发的动作的第二设备的控制消息。
执行所述预设事件消息触发的动作的第二设备具有预设的控制逻辑,消息监听模块还可以用于:根据预设事件消息获取执行预设的控制逻辑所需的参数信息,并根据参数信息和预设的控制逻辑生成对第二设备的控制消息。
消息监听模块303通过内部的监听程序监听触发所对应类别设备的动作的事件消息,从而将设备事件消息与事件消息触发的设备动作建立关联关系,实现设备间的协调者功能,因此消息监听模块也可叫作设备协调器。
消息发布模块302还用于将控制消息发布到消息队列。
指令下发模块304用于从消息队列获取发布的控制消息,并将获取的控制消息转换为控制指令,然后下发控制指令到第二设备。指令下发模块304具体可实现为设备控制器。
多类设备控制系统300还可以包括消息转换模块,该消息转换模块用于:通过预先配置的与第一设备对应的协议转换类,将预设事件消息的格式转换为预设的标准消息格式;以及,通过预先配置的与第二设备对应的协议转换类,将控制指令转换为第二设备可识别的格式。
消息转换模块具体可实现为分别封装一个协议转换类的多个协议转换器。
多类设备控制系统300还可以包括状态监控模块,该状态监控模块可用于监控第二设备对所述控制指令的执行状态。以第一设备为分拣机,第二设备为AGV设备为例,分拣机满隔后出发AGV设备移动到相应位置的动作,AGV设备接收控制指令,并根据控制指令执行相应移动动作,并将设备状态信息回传到消息队列,如果消息队列没有收到该回传的信息,则AGV设备执行控制指令有误,状态监控模块发出报警消息。
多类设备控制系统300还可以包括状态显示模块,该状态显示模块可用于显示第二设备对控制指令的执行状态的信息。该状态显示模块具体可以为设备仪表盘,并可通过网页,例如HTML5等方式显示信息。
消息队列还可以用于存储每个类别设备定时发送的设备状态信息,并且,状态监控模块还可以用于根据设备状态信息监控每个类别设备的设备状态。具体地,状态监控模块可定时从消息队列中读取设备状态信息,并通过状态监控模块保存的设备运行规则验证当前读取到的设备状态信息是否正确,如不正确,则发出报警消息。
图4是根据本发明实施例的多类设备控制系统的优选架构示意图。
如图4所示,本发明实施例的多类设备控制系统300协调控制多类设备(设备A,设备B,……设备Z)协同工作,多类设备控制系统300的优选架构主要包括:网关、多个协议转换器、多个设备控制器、多个设备协调器、MQ(消息队列)消息系统、状态监控模块、设备仪表盘。
其中,网关包含多种传输协议通道,传输协议可以包括TCP(传输控制协议)、UDP(用户数据报协议)、HTTP(超文本传输协议),各种传输协议通道负责和设备交互,需要根据设备接收的协议类型给设备设定不同的网关。
多个协议转换器(协议转换器A,协议转换器B,……协议转换器Z)中封装了多个协议转换类,每个协议转换器通过各自的协议转换类执行协议转换,将多类设备控制系统300内的事件消息转换为具体设备接收的消息,或者将设备具体接收的消息转换为多类设备控制系统300内的事件消息。其中,每个类别设备对应一个协议转换器(例如设备A对应协议转换器A)。
多个设备控制器(设备控制器A,设备控制器B,……设备控制器Z),其中每个类别设备对应各自的设备控制器(例如设备A对应设备控制器A)。设备控制器有两个职责:一是从网关接收设备的事件消息,并转发到消息队列;二是消费消息队列中消息,将对执行动作的设备的控制消息通过网关下发给执行动作的设备。
多个设备协调器(设备协调器AB,设备协调器BZ,……,设备协调器AZ)中,每个设备协调器包括各自的监听程序,每个类别设备设置一个或多个监听程序,从而每个类别设备对应一个或多个设备协调器,每个设备协调器通过内部的监听程序监听触发所对应类别设备的动作的事件消息,从而将设备事件消息与事件消息触发的设备动作建立关联关系,实现设备间的协调者功能。例如,例如设备Z对应的两个设备协调器AZ和设备协调器BZ分别用于监听触发设备Z的两个动作的事件消息,其中,设备协调器AZ监听设备A发出的触发设备Z的第一动作的设备A事件消息,设备协调器BZ监听设备B发出的触发设备Z的第二动作的设备A事件消息,设备协调器AZ和设备协调器BZ,分别起到设备A和设备Z之间、以及设备B和设备Z之间的设备协调者的作用,从而分别实现设备A和设备Z之间、以及设备B和设备Z之间的协同工作。
MQ(消息队列)消息系统通过消息队列实现消息的中转,每个设备协调器、设备控制器都可以订阅发布到消息队列中的消息。MQ(消息队列)是一种开源的基于JMS(Java消息服务)的消息总线,可用于系统之间解耦和消息的异步处理。
状态监控模块消费MQ消息系统中的消息,可以用于监控执行动作的设备对控制指令的执行状态,还可以根据预先设定的设备运行规则进行设备运行状况的监控报警。
设备仪表盘消费MQ消息系统中的消息,可用于显示第二设备对控制指令的执行状态的信息,还可以用于根据MQ消息系统中的消息实时显示设备的运转情况。
下面结合图4提供的多类设备控制系统的优选架构,以多类设备控制系统控制分拣机与AGV设备(Automated Guided Vehicle,自动导引运输车)协同工作为例,介绍本发明实施例的多类设备控制系统的工作过程。其中,分拣机是一种用于包裹分拨的自动分拣设备,AGV设备是一种可以自动驾驶搬运货物的小车。
图5是根据本发明实施例的控制分拣机与AGV设备协同工作的流程示意图。
如图5所示,控制分拣机与AGV设备协同工作的流程具体包括:
在控制系统启动时分拣机控制器、设备协调器、AGV控制器分别连接MQ消息系统,以订阅关注的消息主题,消息主题可包括分拣机满隔消息主题、AGV任务消息主题。其中,监听分拣机满隔事件消息的设备协调器订阅该分拣机满隔消息主题,AGV控制器订阅AGV任务消息主题;
分拣机隔口满后,触发调用分拣机满隔的事件消息,分拣机满格的事件消息通过网关提供的HTTP、TCP、UDP等服务的其中一种服务传递给设备网关,其中,具体的服务类型取决于分拣机厂商提供的分拣机所兼容的服务类型;
网关接收到分拣机满隔的事件消息,根据预先设置的配置表获得分拣机的协议转换器,然后调用协议转换器转换消息,其中配置表内配置了当前分拣机的协议转换器;
协议转换器将特定厂家的分拣机的满隔的事件消息转换为多类设备控制系统内部预设的标准消息格式的消息,并将转换后的标准消息格式的消息返回给网关;
网关得到标准消息格式的消息后,调用分拣机控制器,将该标准消息格式的消息传递给分拣机控制器;
分拣机控制器接收到该标准消息格式的消息,根据消息类型将消息放入MQ消息系统的对应的消息主题中;
监听该分拣机的满隔的事件消息的设备协调器监听到MQ消息系统的对应的消息主题中发布了该满隔的事件消息,接收并处理该事件消息,并且,由于该设备协调器被预先设置监听触发AGV设备动作的事件消息,因此,可以确定该分拣机满隔的事件消息对应触发的设备动作为AGV设备动作,且可以预先设置该AGV设备动作具体包括:AGV设备到该满隔的分拣机隔口位置将包裹箱移动到一预设位置,并从空箱区域将空箱运送到该分拣机的隔口下;
将AGV设备的动作信息封装为对AGV设备的控制消息,并将对AGV设备的控制消息发送到MQ消息系统;
AGV控制器监听到MQ消息系统发布的对AGV设备的控制消息,将该控制消息转换为控制指令,然后调用网关以便调度AGV设备;
网关收到对AGV设备的控制指令后,调用AGV设备对应的协议转换器,将该控制指令转换为AGV设备可识别格式的控制指令,然后将该可识别格式的控制指令发送给AGV设备,以便AGV设备根据该控制指令执行相应的动作,从而完成对AGV设备的控制。
以上是以控制分拣机与AGV设备两种设备协同工作为例,介绍本发明实施例的多类设备控制系统的工作过程,本领域技术人员可以理解的是,本发明实施例的多类设备控制系统同样适用于控制多种设备协同工作,当控制多种设备协同工作是,增加对应新增设备的设备控制器和设备协调器即可,而不影响多类设备控制系统的其他模块正常工作。例如,在图5所示实施例的基础上增加用于倾倒货物的倾倒设备,假设分拣机启动时需要倾倒设备往分拣机倾倒货物,那么,该分拣机启动事件与该倾倒设备倾倒货物的动作之间存在逻辑关联关系,则需要在该多类设备控制系统相应地增加倾倒设备控制器和监听触发该倾倒设备的倾倒动作的事件消息的设备协调器,该新增设备协调器监听MQ消息系统的消息队列中发布的分拣机启动的事件消息,当监听到该分拣机启动的事件消息之后,根据分拣机启动的事件消息生成对该倾倒设备执行倾倒货物动作的控制消息。由此可见,增加的与该分拣机协同工作的倾倒设备,对原有的分拣机与AGV设备协同工作过程无影响,可以方便容易的扩展该多类设备控制系统,可扩展性强。
此外,本领域技术人员同样可以理解的是,假设图5所示实施例的多类设备控制系统需更换分拣机的厂商,例如将M厂商的分拣机更换为N厂商的分拣机,由于不同厂商提供的分拣机的设备消息(即设备的事件消息)格式不同,假设M厂商的分拣机的设备消息为JSON格式,N厂商的分拣机的设备消息为HTML格式,那么更换分拣机的厂商时只需将M厂商分拣机对应的协议转换器更换为N厂商分拣机对应的协议转换器,使得更换后的协议转换器能够在HTML格式与预设标准消息格式之间转换消息,具体地,可以通过重新编写一个用于在HTML格式与预设标准消息格式之间转换消息的协议转换类来实现该更换协议转换器的操作。预设标准消息格式例如为Avro(数据序列化系统)格式。由此可见,通过与设备对应的协议转换类转换消息格式,可以在不更改多类设备控制系统的情况下更换不同厂商的设备,且不会影响其他设备正常工作。
下面参考图6,其示出了适于用来实现本发明实施例的终端设备的计算机系统600的结构示意图。图6示出的终端设备仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。
如图6所示,计算机系统600包括中央处理单元(CPU)601,其可以根据存储在只读存储器(ROM)602中的程序或者从存储部分608加载到随机访问存储器(RAM)603中的程序而执行各种适当的动作和处理。在RAM 603中,还存储有系统600操作所需的各种程序和数据。CPU 601、ROM 602以及RAM 603通过总线604彼此相连。输入/输出(I/O)接口605也连接至总线604。
以下部件连接至I/O接口605:包括键盘、鼠标等的输入部分606;包括诸如阴极射线管(CRT)、液晶显示器(LCD)等以及扬声器等的输出部分607;包括硬盘等的存储部分608;以及包括诸如LAN卡、调制解调器等的网络接口卡的通信部分609。通信部分609经由诸如因特网的网络执行通信处理。驱动器610也根据需要连接至I/O接口605。可拆卸介质611,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器610上,以便于从其上读出的计算机程序根据需要被安装入存储部分608。
特别地,根据本发明公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本发明公开的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分609从网络上被下载和安装,和/或从可拆卸介质611被安装。在该计算机程序被中央处理单元(CPU)601执行时,执行本发明的系统中限定的上述功能。
需要说明的是,本发明所示的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本发明中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本发明中,计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:无线、电线、光缆、RF等等,或者上述的任意合适的组合。
附图中的流程图和框图,图示了按照本发明各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,上述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图或流程图中的每个方框、以及框图或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
描述于本发明实施例中所涉及到的模块可以通过软件的方式实现,也可以通过硬件的方式来实现。所描述的模块也可以设置在处理器中,例如,可以描述为:一种处理器包括消息接收模块301、消息发布模块302、消息监听模块303、指令下发模块304。其中,这些模块的名称在某种情况下并不构成对该模块本身的限定,例如,消息接收模块301还可以被描述为“接收多类设备中第一设备发送的预设事件消息的模块”。
作为另一方面,本发明还提供了一种计算机可读介质,该计算机可读介质可以是上述实施例中描述的设备中所包含的;也可以是单独存在,而未装配入该设备中。上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被一个该设备执行时,使得该设备包括:接收多类设备中第一设备发送的预设事件消息,并将预设事件消息发布到消息队列;通过预设的监听该预设事件消息的监听程序从消息队列获取预设事件消息,并生成对执行预设事件消息触发的动作的第二设备的控制消息,然后将控制消息发布到消息队列;从消息队列获取发布的控制消息,并将获取的控制消息转换为控制指令,然后下发控制指令到第二设备。
根据本发明实施例的技术方案,通过在消息队列发布事件消息,且通过消息队列维持事件消息流转,能够使设备之间解耦,为每个类别设备设置一个或多个监听程序,增加新类别设备只需设置对应的新的监听程序即可,增强可扩展性,通过与设备对应的协议转换类转换消息格式,可以在不更改多类设备控制系统的情况下更换不同厂商的设备,且不会影响其他设备,此外,通过消息队列发布事件消息,可更方便地监听消息,所有设备状态消息由消息队列存储转发,多类设备控制系统本身无状态,在设备控制系统所在服务器出现故障时可以马上切换到另外一台服务器上运行,并且,状态监控模块和状态显示模块可更方便的得到设备状态的变更,而不必关注设备本身的协议。
上述具体实施方式,并不构成对本发明保护范围的限制。本领域技术人员应该明白的是,取决于设计要求和其他因素,可以发生各种各样的修改、组合、子组合和替代。任何在本发明的精神和原则之内所作的修改、等同替换和改进等,均应包含在本发明保护范围之内。
Claims (14)
1.一种多类设备控制方法,其特征在于,预先为所述多类设备的每个类别设备设置一个或多个监听程序,且所述每个类别设备对应的监听程序分别用于监听触发所对应类别设备的各动作的事件消息,所述方法包括:
接收所述多类设备中第一设备发送的预设事件消息,并将所述预设事件消息发布到消息队列;
通过预设的监听该预设事件消息的监听程序从所述消息队列获取所述预设事件消息,并生成对执行所述预设事件消息触发的动作的第二设备的控制消息,然后将所述控制消息发布到所述消息队列;
从所述消息队列获取所述发布的控制消息,并将所述获取的控制消息转换为控制指令,然后下发所述控制指令到所述第二设备。
2.根据权利要求1所述的方法,其特征在于,将所述预设事件消息发布到消息队列之前,还包括:
通过预先配置的与所述第一设备对应的协议转换类,将所述预设事件消息的格式转换为预设的标准消息格式;并且,
在所述下发所述控制指令到所述第二设备之前,还包括:
通过预先配置的与所述第二设备对应的协议转换类,将所述控制指令转换为所述第二设备可识别的格式。
3.根据权利要求1所述的方法,其特征在于,执行所述预设事件消息触发的动作的第二设备具有预设的控制逻辑,并且,
生成对执行所述预设事件消息触发的动作的第二设备的控制消息包括:
根据所述预设事件消息获取执行所述预设的控制逻辑所需的参数信息;
根据所述参数信息和所述预设的控制逻辑生成对所述第二设备的控制消息。
4.根据权利要求1所述的方法,其特征在于,在所述下发所述控制指令到所述第二设备之后,还包括:
监控所述第二设备对所述控制指令的执行状态。
5.根据权利要求1所述的方法,其特征在于,在所述下发所述控制指令到所述第二设备之后,还包括:
显示所述第二设备对所述控制指令的执行状态的信息。
6.根据权利要求1所述的方法,其特征在于,所述消息队列还用于存储所述每个类别设备定时发送的设备状态信息。
7.一种多类设备控制系统,其特征在于,预先为所述多类设备的每个类别设备设置一个或多个监听程序,且所述每个类别设备对应的监听程序分别用于监听触发所对应类别设备的各动作的事件消息,所述系统包括:消息接收模块、消息发布模块、消息监听模块、指令下发模块,其中,
所述消息接收模块用于接收所述多类设备中第一设备发送的预设事件消息;
所述消息发布模块用于将所述预设事件消息发布到消息队列;
所述消息监听模块用于通过预设的监听该预设事件消息的监听程序从所述消息队列获取所述预设事件消息,并生成对执行所述预设事件消息触发的动作的第二设备的控制消息;
所述消息发布模块还用于将所述控制消息发布到所述消息队列;
所述指令下发模块用于从所述消息队列获取所述发布的控制消息,并将所述获取的控制消息转换为控制指令,然后下发所述控制指令到所述第二设备。
8.根据权利要求7所述的系统,其特征在于,所述多类设备控制系统还包括消息转换模块,所述消息转换模块用于:
通过预先配置的与所述第一设备对应的协议转换类,将所述预设事件消息的格式转换为预设的标准消息格式;并且,
所述消息转换模块还用于:
通过预先配置的与所述第二设备对应的协议转换类,将所述控制指令转换为所述第二设备可识别的格式。
9.根据权利要求7所述的系统,其特征在于,执行所述预设事件消息触发的动作的第二设备具有预设的控制逻辑,并且,
所述消息监听模块还用于:
根据所述预设事件消息获取执行所述预设的控制逻辑所需的参数信息,并根据所述参数信息和所述预设的控制逻辑生成对所述第二设备的控制消息。
10.根据权利要求7所述的系统,其特征在于,还包括状态监控模块,用于监控所述第二设备对所述控制指令的执行状态。
11.根据权利要求7所述的系统,其特征在于,还包括状态显示模块,用于显示所述第二设备对所述控制指令的执行状态的信息。
12.根据权利要求9所述的系统,其特征在于,所述消息队列还用于存储所述每个类别设备定时发送的设备状态信息,并且,
所述状态监控模块还用于根据所述设备状态信息监控所述每个类别设备的设备状态。
13.一种电子设备,其特征在于,包括:
一个或多个处理器;
存储器,用于存储一个或多个程序,
当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器实现如权利要求1-6中任一所述的方法。
14.一种计算机可读介质,其上存储有计算机程序,其特征在于,所述程序被处理器执行时实现如权利要求1-6中任一所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710356429.8A CN108958174B (zh) | 2017-05-19 | 2017-05-19 | 一种多类设备控制方法和系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710356429.8A CN108958174B (zh) | 2017-05-19 | 2017-05-19 | 一种多类设备控制方法和系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108958174A true CN108958174A (zh) | 2018-12-07 |
CN108958174B CN108958174B (zh) | 2020-03-03 |
Family
ID=64461433
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710356429.8A Active CN108958174B (zh) | 2017-05-19 | 2017-05-19 | 一种多类设备控制方法和系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108958174B (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110794826A (zh) * | 2019-09-24 | 2020-02-14 | 北京旷视机器人技术有限公司 | 混合导航方法及装置、通信方法及装置、设备、存储介质 |
CN112416632A (zh) * | 2020-12-14 | 2021-02-26 | 五八有限公司 | 事件通信方法、装置、电子设备和计算机可读介质 |
CN113315780A (zh) * | 2021-06-10 | 2021-08-27 | 苏州威联加信息科技有限公司 | 一种单系统与多种agv的连接及控制方法和装置 |
CN115086099A (zh) * | 2022-06-07 | 2022-09-20 | 浙江浩瀚能源科技有限公司 | 数据处理方法、装置、存储介质及系统 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105242547A (zh) * | 2015-08-28 | 2016-01-13 | 青岛海尔智能家电科技有限公司 | 一种多个AllJoyn设备联动的方法和装置 |
CN105357277A (zh) * | 2015-10-16 | 2016-02-24 | 上海斐讯数据通信技术有限公司 | 基于无线路由器的智能设备场景控制方法及系统 |
CN105357259A (zh) * | 2015-09-29 | 2016-02-24 | 青岛海尔智能家电科技有限公司 | 一种自动设置设备联动规则的方法、装置及相关设备 |
CN106326016A (zh) * | 2016-07-28 | 2017-01-11 | 武汉票据交易中心有限公司 | 一种多线程事件分发方法和系统 |
CN106371333A (zh) * | 2015-07-20 | 2017-02-01 | 阿里巴巴集团控股有限公司 | 一种智能设备的控制方法、装置及系统 |
CN106468880A (zh) * | 2015-08-18 | 2017-03-01 | 上海哥瑞利软件有限公司 | 监控转换控制系统 |
-
2017
- 2017-05-19 CN CN201710356429.8A patent/CN108958174B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106371333A (zh) * | 2015-07-20 | 2017-02-01 | 阿里巴巴集团控股有限公司 | 一种智能设备的控制方法、装置及系统 |
CN106468880A (zh) * | 2015-08-18 | 2017-03-01 | 上海哥瑞利软件有限公司 | 监控转换控制系统 |
CN105242547A (zh) * | 2015-08-28 | 2016-01-13 | 青岛海尔智能家电科技有限公司 | 一种多个AllJoyn设备联动的方法和装置 |
CN105357259A (zh) * | 2015-09-29 | 2016-02-24 | 青岛海尔智能家电科技有限公司 | 一种自动设置设备联动规则的方法、装置及相关设备 |
CN105357277A (zh) * | 2015-10-16 | 2016-02-24 | 上海斐讯数据通信技术有限公司 | 基于无线路由器的智能设备场景控制方法及系统 |
CN106326016A (zh) * | 2016-07-28 | 2017-01-11 | 武汉票据交易中心有限公司 | 一种多线程事件分发方法和系统 |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110794826A (zh) * | 2019-09-24 | 2020-02-14 | 北京旷视机器人技术有限公司 | 混合导航方法及装置、通信方法及装置、设备、存储介质 |
CN110794826B (zh) * | 2019-09-24 | 2023-10-20 | 北京旷视机器人技术有限公司 | 混合导航方法及装置、通信方法及装置、设备、存储介质 |
CN112416632A (zh) * | 2020-12-14 | 2021-02-26 | 五八有限公司 | 事件通信方法、装置、电子设备和计算机可读介质 |
CN113315780A (zh) * | 2021-06-10 | 2021-08-27 | 苏州威联加信息科技有限公司 | 一种单系统与多种agv的连接及控制方法和装置 |
CN115086099A (zh) * | 2022-06-07 | 2022-09-20 | 浙江浩瀚能源科技有限公司 | 数据处理方法、装置、存储介质及系统 |
CN115086099B (zh) * | 2022-06-07 | 2023-12-29 | 浙江浩瀚能源科技有限公司 | 数据处理方法、装置、存储介质及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN108958174B (zh) | 2020-03-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108958174A (zh) | 一种多类设备控制方法和系统 | |
US10110699B2 (en) | Method and system to enable mobile users to receive personalized notifications | |
CN108960691A (zh) | 用于服务器系统的确定物品库存的方法和装置 | |
CN104967650B (zh) | 第三方电商平台统一发布方法 | |
US10652037B2 (en) | Notifying affected users of feature changes in a software application | |
CN109257320A (zh) | 消息存储方法和装置 | |
CN108733461A (zh) | 分布式任务调度方法和装置 | |
CN108696400A (zh) | 网络监测方法和装置 | |
CN110650203B (zh) | 数据传输方法、装置和系统、计算机存储介质及电子设备 | |
CN105183452A (zh) | 一种用于配电设备监测基于Spring AOP的远程规约服务中间件 | |
CN111885134A (zh) | 一种用于自动售货机的远程控制系统及方法 | |
CN110515741A (zh) | 一种基于本地任务队列的降级处理方法和装置 | |
CN103036775A (zh) | 消息交互装置、系统及方法 | |
CN114677076B (zh) | 基于机器人的外卖接力派送方法、装置、系统及存储介质 | |
CN111222810B (zh) | 一种实时分配格口的方法和装置 | |
CN110865921A (zh) | 数据监控方法、装置、可读存储介质和电子设备 | |
CN109684091A (zh) | 一种任务处理方法及装置 | |
CN108881213A (zh) | 基于内外网安全交互的jms实时消息服务系统 | |
EP3975598B1 (en) | Method, apparatus, and device for subscribing resources in field of internet of things, and storage medium | |
CN110389976A (zh) | 一种多接口数据的调度方法和装置 | |
CN109076008A (zh) | 在用户界面中抑制对到来的通信的指示 | |
CN108989157A (zh) | 用于智能设备控制的方法、装置 | |
CN109190969A (zh) | 称重设备管控方法、系统、称重设备管理中间件及介质 | |
CN103368862B (zh) | 一种负载均衡调度方法和负载均衡调度装置 | |
CN110278133A (zh) | 由服务器执行的检查方法、装置、计算设备以及介质 |
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 |