主从通讯控制方法、装置、存储介质及主从通讯控制系统

文档序号:1951673 发布日期:2021-12-10 浏览:17次 >En<

阅读说明:本技术 主从通讯控制方法、装置、存储介质及主从通讯控制系统 (Master-slave communication control method, device, storage medium and master-slave communication control system ) 是由 陈楚洪 申伟刚 裘文波 康宇涛 李丽强 于 2021-09-06 设计创作,主要内容包括:本发明提供一种主从通讯控制方法、装置、存储介质及主从通讯控制系统,所述方法包括:当主设备向从设备下发控制指令后,在根据所述控制指令完成一次控制之后,确定是否执行所述控制指令的校验;若确定执行所述控制指令的校验,则将所述控制指令的控制信息分配至预设的用于执行校验的至少一个子任务中的一个子任务,由该子任务执行所述控制指令的校验。本发明提供的方案能够实现控制指令的主动校验,避免控制失败导致主设备获得的参数值与终端设备实际状态不一致的问题。(The invention provides a master-slave communication control method, a master-slave communication control device, a storage medium and a master-slave communication control system, wherein the method comprises the following steps: after the master device issues a control instruction to the slave device, determining whether to execute the verification of the control instruction after completing one-time control according to the control instruction; and if the control instruction is determined to be checked, distributing the control information of the control instruction to one subtask in at least one preset subtask used for checking, and checking the control instruction by the subtask. The scheme provided by the invention can realize the active verification of the control instruction and avoid the problem that the parameter value obtained by the main equipment is inconsistent with the actual state of the terminal equipment due to the control failure.)

主从通讯控制方法、装置、存储介质及主从通讯控制系统

技术领域

本发明涉及控制领域,尤其涉及一种主从通讯控制方法、装置、存储介质及主从通讯控制系统。

背景技术

在自动化控制系统中,设备间通常采用主/从架构,由主设备逐一发送请求,从设备依次响应其请求。以Modbus协议为例,采用主从通讯方式的控制系统可参考图2所示,典型的控制系统包括核心控制层、直接控制层和终端设备层,相邻层级间均采用Modbus协议通讯。相关技术中主/从架构的控制系统存在主设备获得的参数值与终端设备实际状态不一致的问题。

发明内容

本发明的主要目的在于克服上述现有技术的缺陷,提供一种主从通讯控制方法、装置、存储介质及主从通讯设备方法、装置、存储介质及空调,以解决现有技术中主/从架构的控制系统主设备获得的参数值与终端设备实际状态不一致的问题。

本发明一方面提供了一种主从通讯控制方法,包括:当主设备向从设备下发控制指令后,在根据所述控制指令完成一次控制之后,确定是否执行所述控制指令的校验;若确定执行所述控制指令的校验,则将所述控制指令的控制信息分配至预设的用于执行校验的至少一个子任务中的一个子任务,由该子任务执行所述控制指令的校验。

可选地,所述预设的至少一个子任务中的每个子任务对应的校验周期不同;将所述控制指令的控制信息分配至预设的用于执行校验的至少一个子任务中的一个子任务,包括:根据预设的校验周期将所述控制信息分配至所述预设的至少一个子任务中任务周期不大于所述预设的校验周期且与所述预设的校验周期的差值最小的子任务;由所述任务周期不大于所述预设的校验周期且与所述预设的校验周期的差值最小的子任务执行所述控制指令的校验。

可选地,执行所述控制指令的校验,包括:遍历任务队列中的所有控制信息的参数,依次向从设备发送采集请求数据,以获取所述参数的参数值;将采集到的所述参数的参数值与预设的目标值进行比较,判断所述参数值与所述预设的目标值是否相等;若判断所述参数值与所述预设的目标值相等,则向所述主任务发送错误信息,由所述主任务向上位机发送。

可选地,还包括:接收通过上位机配置的校验配置信息,以用于根据所述校验配置信息执行所述控制指令的校验;其中,所述校验配置信息,包括:校验周期。

本发明另一方面提供了一种主从通讯控制装置,包括:确定单元,用于当主设备向从设备下发控制指令后,在根据所述控制指令完成一次控制之后,确定是否执行所述控制指令的校验;分配单元,用于若所述确定单元确定执行所述控制指令的校验,则将所述控制指令的控制信息分配至预设的用于执行校验的至少一个子任务中的一个子任务,由该子任务执行所述控制指令的校验。

可选地,所述预设的至少一个子任务中的每个子任务对应的校验周期不同;所述分配单元,将所述控制指令的控制信息分配至预设的用于执行校验的至少一个子任务中的一个子任务,包括:根据预设的校验周期将所述控制信息分配至所述预设的至少一个子任务中任务周期参数所述预设的校验周期且与所述预设的校验周期的差值最小的子任务;由所述任务周期参数所述预设的校验周期且与所述预设的校验周期的差值最小的子任务执行所述控制指令的校验。

可选地,执行所述控制指令的校验,包括:遍历任务队列中的所有控制信息的参数,依次向从设备发送采集请求数据,以获取所述参数的参数值;将采集到的所述参数的参数值与预设的目标值进行比较,判断所述参数值与所述预设的目标值是否相等;若判断所述参数值与所述预设的目标值相等,则向所述主任务发送错误信息,由所述主任务向上位机发送。

可选地,还包括:接收单元,用于接收通过上位机配置的校验配置信息;其中,所述校验配置信息,包括:校验周期。

本发明又一方面提供了一种存储介质,其上存储有计算机程序,所述程序被处理器执行时实现前述任一所述方法的步骤。

本发明再一方面提供了一种主从通讯控制系统,包括处理器、存储器以及存储在存储器上可在处理器上运行的计算机程序,所述处理器执行所述程序时实现前述任一所述方法的步骤。

本发明再一方面提供了一种空调,包括前述任一所述的主从通讯控制装置。

根据本发明的技术方案,提供控制指令校验功能的执行方式,能够主动获取控制后的实际参数值,以校验控制是否成功,避免控制失败导致主设备获得的参数值与终端设备实际状态不一致的问题;采用多任务的控制校验调度方法,根据校验周期分配任务周期合适的子任务进行控制指令校验,有效缩短校验时间。

附图说明

此处所说明的附图用来提供对本发明的进一步理解,构成本发明的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:

图1是本发明提供的主从通讯控制方法的一实施例的方法示意图;

图2示出了采用主从通讯方式的控制系统的一种

具体实施方式

的示意图;

图3示出了控制信息的数据格式;

图4示出了根据本发明一具体实施方式的配置界面示意图;

图5示出了根据本发明一具体实施方式的执行校验前的预处理的流程图;

图6示出了执行控制指令的校验的一具体实施方式的流程图;

图7示出的错误信息的数据格式;

图8是本发明提供的主从通讯控制装置的一实施例的结构框图。

具体实施方式

为使本发明的目的、技术方案和优点更加清楚,下面将结合本发明具体实施例及相应的附图对本发明技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。

相关技术中,请求主要分为采集与控制两类。采集请求数据中包含参数唯一标识;对于采集请求,从设备获取自身存储的相应参数的值,并立即向主设备发送采集应答数据(含参数唯一标识、参数值);控制请求数据中包含参数唯一标识、参数值,对于控制请求,从设备除立即向主设备发送控制应答数据(含参数唯一标识、参数值)外,并更改自身存储的相应参数的值。上述控制方法存在以下问题:a)当接收到控制请求时,从设备对主设备进行应答,该应答仅能体现从设备正确接收到该请求,无法确保参数被最终正确控制,从而导致在主设备获得的参数值与终端设备实际状态不一致的问题;b)主设备采用轮询方式依次请求所有参数的值,轮询周期T与参数数量n、请求间隔t1、从设备(平均)应答时间t2有关,即T=n*(t1+t2)。当控制失败导致上述状态不一致的问题时,可在T时间内完成数值更正,但数值更正时间长。

本发明提供一种主从通讯控制方法。本发明方法适用于采用主从通讯方式的控制系统中。

图1是本发明提供的主从通讯控制方法的一实施例的方法示意图。

如图1所示,根据本发明的一个实施例,所述主从通讯控制方法至少包括步骤S110和步骤S120。

步骤S110,当主设备向从设备下发控制指令后,在根据所述控制指令完成一次控制之后,确定是否执行所述控制指令的校验。

具体地,完成一次控制后,首先判断该控制指令是否启用了控制校验功能。若未启用,则不执行后续逻辑。控制信息包括参数与值;参数即属性

步骤S120,若确定执行所述控制指令的校验,则将所述控制指令的控制信息分配至预设的用于执行校验的至少一个子任务中的一个子任务,由该子任务执行所述控制指令的校验。

控制信息具体可以包括参数与参数值;参数即属性,例如空调的温度。具体地,校验通过至少一个子任务实现,一个程序包含多个子任务,每个子任务用于实现特定功能;当发生了一次需要进行校验的控制指令,需要对每一个校验进行合理分配。若启用了校验控制功能,则将所述控制指令的控制信息分配至预设的用于执行校验的至少一个子任务中的一个子任务,由所述子任务执行所述控制指令的校验。所述预设的至少一个子任务中的每个子任务对应的任务周期不同。图3示出了控制信息的数据格式。控制信息的数据格式可以参考图3所示,包括参数位移标识、参数值和校验周期。更具体而言,由主任务负责完成分配,将所述控制指令的控制信息分配至预设的用于执行校验的至少一个子任务中的一个子任务,由该子任务执行所述控制指令的校验。

将所述控制指令的控制信息分配至预设的用于执行校验的至少一个子任务中的一个子任务具体包括:根据预设的校验周期将所述控制信息分配至所述预设的至少一个子任务中任务周期不大于所述预设的校验周期且与所述预设的校验周期的差值最小的子任务;由所述任务周期不大于所述预设的校验周期且与所述预设的校验周期的差值最小的子任务执行所述控制指令的校验。将控制信息的分配至任务周期不大于预设的校验周期的子任务,确保能够在校验周期内完成控制指令的校验。

例如,预设100ms、500ms、1s、5s四个子任务。子任务的选择依据为:任务周期不小于校验周期,且最接近校验周期。待校验的参数A的预设校验周期为110ms,应分配至100ms子任务;待校验的参数B的校验周期为2s,应分配至1s子任务。

可选地,所述方法还可以包括:接收通过上位机配置的校验配置信息,以用于根据所述校验配置信息执行所述控制指令的校验;其中,所述校验配置信息,包括:校验周期。也就是说,所述校验周期可以通过上位机进行配置,例如可以在上位机上设置配置界面。图4示出了根据本发明一具体实施方式的配置界面示意图。如图4所示,在配置界面中可以选择是否启用控制校验以及校验周期(即校验周期)。可选地,校验配置信息还可以预先设置默认值或者建议值(例如在配置界面显示建议值)。

图5示出了根据本发明一具体实施方式的执行校验前的预处理的流程图。如图5所示,当发生了一次需要进行校验的控制指令,完成一次控制后,首先判断该参数是否启用了控制校验功能,若启用控制校验功能,则根据预设的校验周期(校验周期)将该控制信息(控制信息数据格式如图3所示)发送至其中一个子任务,例如图4中示出了100ms、1s、…的子任务;若未启用控制校验功能,则不执行后续逻辑,结束。

控制信息具体可以包括参数与参数值;参数即属性,例如空调的温度。参数值即参数的值,例如空调的温度的具体数值。将控制信息分配至一个子任务时,将该控制信息(包括参数(例如参数唯一标识)、参数值)加入该子任务的任务队列中;执行所述控制指令的校验具体可以包括:遍历任务队列中的所有控制信息的参数(例如参数唯一标识),依次(例如数据插入的时间顺序)向从设备发送采集请求数据,以获取所述参数的的参数值;将采集到的所述参数的参数值与预设的目标值进行比较,判断所述参数的值与所述预设的目标值是否相等;若判断所述参数值与所述预设的目标值相等,则向所述主任务发送错误信息,由所述主任务向上位机发送。可选地,所述上位机可以对错误信息进行提示。上位机具体可以作为的客户端,可以是软件管理系统、控制器等。

每个子任务使用定时器进行时间控制,确保子任务按照预设的任务周期执行。图6示出了执行控制指令的校验的一具体实施方式的流程图。如图6所示,子任务开始后,定时器触发,若任务队列不为空,则遍历队列中的参数,依次向从设备发送采集请求数据,以获得该参数的值;将采集到的值与保存的目标值作比较,判断是否相等;若两值不相等,则该子任务将错误信息(错误信息的数据格式例如可以参考如图7示出的错误信息的数据格式)发送至主任务(负责完成指令分配)。主任务再将该信息发送至上位机进行提示,例如显示“上一次对参数X的控制失败,期望值为V1,控制后实际值为V2”。

图8是本发明提供的主从通讯控制装置的一实施例的结构示意图。如图8所示,所述主从通讯控制装置100包括确定单元110和分配单元120。

确定单元110用于当主设备向从设备下发控制指令后,在根据所述控制指令完成一次控制之后,确定是否执行所述控制指令的校验。

具体地,完成一次控制后,首先判断该控制指令是否启用了控制校验功能。若未启用,则不执行后续逻辑。控制信息包括参数与值;参数即属性,例如空调的温度。

分配单元120用于若所述确定单元确定执行所述控制指令的校验,则将所述控制指令的控制信息分配至预设的用于执行校验的至少一个子任务中的一个子任务,由该子任务执行所述控制指令的校验。

控制信息具体可以包括参数与参数值;参数即属性,例如空调的温度。具体地,校验通过至少一个子任务实现,一个程序包含多个子任务,每个子任务用于实现特定功能;当发生了一次需要进行校验的控制指令,需要对每一个校验进行合理分配。若启用了校验控制功能,则分配单元120将所述控制指令的控制信息分配至预设的用于执行校验的至少一个子任务中的一个子任务,由所述子任务执行所述控制指令的校验。所述预设的至少一个子任务中的每个子任务对应的任务周期不同。图3示出了控制信息的数据格式。控制信息的数据格式可以参考图3所示,包括参数位移标识、参数值和校验周期。更具体而言,由主任务负责完成分配,将所述控制指令的控制信息分配至预设的用于执行校验的至少一个子任务中的一个子任务,由该子任务执行所述控制指令的校验。

在一种具体实施方式中,分配单元120将所述控制指令的控制信息分配至预设的用于执行校验的至少一个子任务中的一个子任务具体包括:根据预设的校验周期将所述控制信息分配至所述预设的至少一个子任务中任务周期不大于所述预设的校验周期且与所述预设的校验周期的差值最小的子任务;由所述任务周期不大于所述预设的校验周期且与所述预设的校验周期的差值最小的子任务执行所述控制指令的校验。将控制信息的分配至任务周期不大于预设的校验周期的子任务,确保能够在校验周期内完成控制指令的校验。

例如,预设100ms、500ms、1s、5s四个子任务。子任务的选择依据为:任务周期不小于校验周期,且最接近校验周期。待校验的参数A的预设校验周期为110ms,应分配至100ms子任务;待校验的参数B的校验周期为2s,应分配至1s子任务。

可选地,所述装置100还可以包括接收单元(图未示),用于接收通过上位机配置的校验配置信息,以用于根据所述校验配置信息执行所述控制指令的校验;其中,所述校验配置信息,包括:校验周期。也就是说,所述校验周期可以通过上位机进行配置,例如可以在上位机上设置配置界面。图4示出了根据本发明一具体实施方式的配置界面示意图。如图4所示,在配置界面中可以选择是否启用控制校验以及校验周期(即校验周期)。可选地,校验配置信息还可以预先设置默认值或者建议值(例如在配置界面显示建议值)。

图5示出了根据本发明一具体实施方式的执行校验前的预处理的流程图。如图5所示,当发生了一次需要进行校验的控制指令,完成一次控制后,首先判断该参数是否启用了控制校验功能,若启用控制校验功能,则根据预设的校验周期(校验周期)将该控制信息(控制信息数据格式如图3所示)发送至其中一个子任务,例如图4中示出了100ms、1s、…的子任务;若未启用控制校验功能,则不执行后续逻辑,结束。

控制信息具体可以包括参数与参数值;参数即属性,例如空调的温度。参数值即参数的值,例如空调的温度的具体数值。将控制信息分配至一个子任务时,将该控制信息(包括参数(例如参数唯一标识)、参数值)加入该子任务的任务队列中;执行所述控制指令的校验具体可以包括:遍历任务队列中的所有控制信息的参数(例如参数唯一标识),依次(例如数据插入的时间顺序)向从设备发送采集请求数据,以获取所述参数的的参数值;将采集到的所述参数的参数值与预设的目标值进行比较,判断所述参数的值与所述预设的目标值是否相等;若判断所述参数值与所述预设的目标值相等,则向所述主任务发送错误信息,由所述主任务向上位机发送。可选地,所述上位机可以对错误信息进行提示。上位机具体可以作为的客户端,可以是软件管理系统、控制器等。

每个子任务使用定时器进行时间控制,确保子任务按照预设的任务周期执行。图6示出了执行控制指令的校验的一具体实施方式的流程图。如图6所示,子任务开始后,定时器触发,若任务队列不为空,则遍历队列中的参数,依次向从设备发送采集请求数据,以获得该参数的值;将采集到的值与保存的目标值作比较,判断是否相等;若两值不相等,则该子任务将错误信息(错误信息的数据格式例如可以参考如图7示出的错误信息的数据格式)发送至主任务。主任务再将该信息发送至上位机进行提示,例如显示“上一次对参数X的控制失败,期望值为V1,控制后实际值为V2”。

本发明还提供对应于所述主从通讯控制方法的一种存储介质,其上存储有计算机程序,所述程序被处理器执行时实现前述任一所述方法的步骤。

本发明还提供对应于所述主从通讯控制方法的一种主从通讯控制系统,包括处理器、存储器以及存储在存储器上可在处理器上运行的计算机程序,所述处理器执行所述程序时实现前述任一所述方法的步骤。

本发明还提供对应于所述主从通讯控制装置的一种主从通讯控制系统,包括前述任一所述的主从通讯控制装置。

据此,本发明提供的方案,在执行控制指令的校验时,将控制指令的控制信息分配至预设的用于执行校验的至少一个子任务中的一个子任务执行控制指令的校验,实现了控制指令的主动校验,根据校验周期分配任务后期合适的子任务执行控制指令的校验,能够有效缩短校验时间,可缩短重新下发原控制指令的时间,提高系统控制的可靠性。

本文中所描述的功能可在硬件、由处理器执行的软件、固件或其任何组合中实施。如果在由处理器执行的软件中实施,那么可将功能作为一或多个指令或代码存储于计算机可读媒体上或经由计算机可读媒体予以传输。其它实例及实施方案在本发明及所附权利要求书的范围及精神内。举例来说,归因于软件的性质,上文所描述的功能可使用由处理器、硬件、固件、硬连线或这些中的任何者的组合执行的软件实施。此外,各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。

在本申请所提供的几个实施例中,应该理解到,所揭露的技术内容,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,可以为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。

所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为控制装置的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。

所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。

以上所述仅为本发明的实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的权利要求范围之内。

14页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:一种巡视器周期式自主运行控制方法

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!