一种清洁装置的控制方法、控制系统及逻辑模块与流程

文档序号:30972376发布日期:2022-08-02 22:11阅读:91来源:国知局
一种清洁装置的控制方法、控制系统及逻辑模块与流程

1.本发明涉及智能清洁领域,特别涉及一种清洁装置的控制方法、控制系统及逻辑模块。


背景技术:

2.随着电子集成技术的不断发展以及用户对清洁要求的不断提高,清洁装置上集成了越来越多的模块,以扩展清洁装置的功能。
3.现有技术普遍是在逻辑模块中划分设定多个功能逻辑单元,以此来实现对各个功能的控制。功能逻辑单元并非实体,而是在cpu等逻辑模块中设定相关功能代码来实现。在逻辑代码的编辑过程中,各功能逻辑单元在代码上相互交叉,代码结构极其复杂。当修改某一功能的相关参数时,往往需要改动其他功能的参数。功能与功能之间存在交叉。
4.例如,扫地机器人的工作逻辑牵涉到全局定位、地图探索、覆盖扫地和回充电桩等各个功能环节,过程比较复杂,因此大多采用条件分支等逻辑方式实现各功能模块。


技术实现要素:

5.有鉴于此,本发明提出了一种清洁装置的控制方法、控制系统及逻辑模块,具体方案如下:
6.一种清洁装置的控制方法,包括多个子流程,每个子流程对应清洁装置的至少两个工作节点;其中一个或多个子流程包括如下:
7.确定清洁装置当前的工作节点,并上报至预设第一状态机;
8.通过所述第一状态机确定第一工作节点,构建关于所述第一工作节点的节点任务并下发至预设第二状态机;所述第一工作节点为当前的工作节点所对应下一步的工作节点;
9.通过所述第二状态机判断该节点任务是否具备执行条件或是否执行完毕;并在具备执行条件时,执行所述节点任务;并在执行完毕后,将所述第一工作节点作为清洁装置当前的工作节点;
10.将所述节点任务的执行情况上报至所述第一状态机,所述执行情况包括节点任务是否具备执行条件、是否执行完毕以及执行进度。
11.在一个具体实施例中,所述第二状态机在执行节点任务之前,还包括:
12.通过所述第二状态机将所述节点任务上报至预设主逻辑机构;
13.通过所述主逻辑机构启动与所述节点任务相关的工作模式,并发送与所述节点任务相关的任务信息;
14.在该工作模式下,通过所述第二状态机分析该任务信息在预设时段内的有效性,来判断所述节点任务是否具备执行条件;
15.在该工作模式下,通过所述第二状态机执行该节点任务,直至符合预设完成条件。
16.在一个具体实施例中,当该节点任务具备执行条件时:
17.通过所述第一状态机发布第一任务至所述第二状态机,同时发布第一辅助任务至所述主逻辑机构,以使所述主逻辑机构启动关于所述第一辅助任务的工作模式,并在该工作模式下辅助所述第二状态机执行所述第一任务,进而实现所述节点任务的执行。
18.在一个具体实施例中,当该节点任务不具备执行条件时,通过所述第一状态机发布关于修补该节点任务执行条件的修补任务,所述修补任务包括第二任务和第二辅助任务,具体包括:
19.通过所述第一状态机发布所述第二任务至所述第二状态机,同时发布所述第二辅助任务至所述主逻辑机构,以使所述主逻辑机构启动关于所述第二辅助任务的工作模式;
20.通过所述第二状态机将所述节点任务上报至预设主逻辑机构;
21.在该工作模式下,辅助所述第二状态机执行所述第二任务,进而使所述节点任务具备执行条件。
22.在一个具体实施例中,清洁装置的工作节点包括空闲节点和非空闲节点;
23.每当清洁装置进入所述非空闲节点时,则同步启动定时装置;
24.当所述定时装置的时间耗尽时,清洁装置由所述非空闲节点自动转换为所述空闲节点。
25.在一个具体实施例中,通过所述主逻辑机构采集清洁装置的传感器数据,以为一个或多个子流程确定清洁装置当前的工作节点;
26.当所述主逻辑机构发布关于启动的传感器数据时,与当前的工作节点相对应的一个或多个子流程开始执行。
27.一种清洁装置的控制系统,包括多个子流程单元,每个子流程单元对应执行清洁装置的至少两个工作节点;其中一个或多个子流程单元包括如下:
28.节点确定模块,用于确定清洁装置当前的工作节点,并上报至预设第一状态机;
29.任务构建模块,用于通过所述第一状态机确定第一工作节点,所述第一工作节点为当前的工作节点所对应下一步的工作节点,构建关于所述第一工作节点的节点任务并下发至预设第二状态机;
30.执行模块,用于通过所述第二状态机判断该节点任务是否具备执行条件或是否执行完毕;并在具备执行条件时,执行所述节点任务;并在执行完毕后,将所述第一工作节点作为清洁装置当前的工作节点;
31.汇报模块,用于将所述节点任务的执行情况上报至所述第一状态机,所述执行情况包括节点任务是否具备执行条件、是否执行完毕以及执行进度。
32.在一个具体实施例中,所述执行模块还包括:所述第二状态机执行节点任务之前,通过所述第二状态机将所述节点任务上报至预设主逻辑机构;
33.通过所述主逻辑机构启动与所述节点任务相关的工作模式,并发送与所述节点任务相关的任务信息;
34.在该工作模式下,通过所述第二状态机分析该任务信息在预设时段内的有效性,来判断所述节点任务是否具备执行条件;
35.在该工作模式下,通过所述第二状态机执行该节点任务,直至符合预设完成条件。
36.在一个具体实施例中,清洁装置的工作节点包括空闲节点和非空闲节点;所述控制系统还包括:
37.定时模块,设置有定时装置,用于当清洁装置进入所述非空闲节点时,则同步启动定时装置;当所述定时装置的时间耗尽时,清洁装置由所述非空闲节点自动转换为所述空闲节点。
38.一种清洁装置的逻辑模块,用于执行上述任一项所述的控制方法,包括第一状态机、第二状态机和主逻辑机构;
39.所述主逻辑机构分别通信连接第一状态机和所述第二状态机,所述第一状态机与所述第二状态机存在通信连接;
40.其中,所述第一状态机和所述第二状态机相互独立,以实现当所述第一状态机和所述第二状态机中的一个控制逻辑发生更改时,不会影响所述第一状态机和所述第二状态机中的另一个的控制逻辑。
41.有益效果:本发明提供了一种清洁装置的控制方法、系统及逻辑模块,将清洁装置中抽象的功能逻辑模块化、实体化,采用状态机实现各个复杂的功能逻辑。采用状态机实现功能逻辑,可独立进行编辑,在修改相应的功能逻辑时,只需查找对应的状态机进行单独修改即可,无需修改其它存在交叉关系的功能逻辑,便于添加新的功能逻辑,使得整体框架具有极强的可扩展性。
附图说明
42.图1是本发明实施例提出的控制方法流程图;
43.图2是本发明实施例提出的完整的控制方法流程示意图;
44.图3是本发明实施例提出的具备执行条件的原理示意图;
45.图4是本发明实施例提出的不具备执行条件的原理示意图;
46.图5是本发明实施例提出的逻辑模块结构示意图;
47.图6是本发明实施例提出的控制系统模块示意图。
48.附图标记:a1-节点确定模块;a2-任务构建模块;a3-执行模块;a4-汇报模块;a5-定时模块;1-第一状态机;2-第二状态机;3-主逻辑机构。
具体实施方式
49.在下文中,将更全面地描述本发明公开的各种实施例。本发明公开可具有各种实施例,并且可在其中做出调整和改变。然而,应理解:不存在将本发明公开的各种实施例限于在此公开的特定实施例的意图,而是应将本发明公开理解为涵盖落入本发明公开的各种实施例的精神和范围内的所有调整、等同物和/或可选方案。
50.本发明提供了一种清洁装置的控制方法、系统及逻辑模块,方案参考说明书附图1-6。
51.实施例1
52.本发明实施例1公开了一种清洁装置的控制方法,将清洁装置中抽象的功能逻辑模块化、实体化,采用状态机实现各个复杂的功能逻辑。控制方法的具体流程如说明书附图1所示。
53.一种清洁装置的控制方法,包括多个子流程。一个功能逻辑可通过一个或多个子流程实现,使得整体框架具有极强的可扩展性。在本实施例中,每个子流程对应清洁装置的
至少两个工作节点,清洁装置在每个工作节点都对应有相关的工作状态。工作状态包括空闲状态、充电状态、等待状态以及不同程度的清洁状态。例如,在充电相关的子流程中,清洁装置由充电前的工作节点进入充电时的节点,充电前的工作节点可为清洁状态、空闲状态等,充电时的节点即为充电状态。
54.优选地,不同的子流程可能包括相同或不同的逻辑。其中一个或多个子流程的流程示意图如说明书附图1所示,方案如下:
55.101、确定清洁装置当前的工作节点,并上报至预设第一状态机;
56.102、通过第一状态机确定第一工作节点,第一工作节点为当前的工作节点所对应下一步的工作节点,构建关于第一工作节点的节点任务并下发至预设第二状态机;
57.103、通过第二状态机判断该节点任务是否具备执行条件或是否执行完毕;并在具备执行条件时,执行节点任务;并在执行完毕后,将第一工作节点作为清洁装置当前的工作节点;
58.104、将节点任务的执行情况上报至第一状态机,执行情况包括节点任务是否具备执行条件、是否执行完毕以及执行进度。
59.本实施例的控制方法,适用于包括第一状态机、第二状态机和主逻辑机构的清洁装置中。完整的流程如说明书附图2所示。第一状态机、第二状态机和主逻辑机构之间通过发送消息的方式实现信息传递,相互配合,即可实现清洁装置全部或部分的复杂控制逻辑,使得整体框架具有极强的可扩展性。其中,主逻辑机构用于控制清洁装置上的各类硬件模块,以实现控制机器人移动、转弯、采集数据等功能。例如,在扫地机器人中,主逻辑机构包括控制模块、建图模块、物联网客户端等,建图模块涉及扫地机器人中地图信息的构建、确认等,物联网客户端用于实现扫地机器人和服务器之间的交互。
60.其中,第一状态机和第二状态机之间相互独立,在实际运行过程中,第一状态机和第二状态机又相互沟通交互。第一状态机执行某一任务时,则必需第二状态机参与其中。但第一状态机和第二状态机又分属两个独立的状态机,当修改第一状态机的控制逻辑时,不会影响第二状态机内部的控制逻辑,无需修改第二状态机的控制逻辑。现有技术中,清洁装置中各功能模块虚拟化,模块之间存在大量交叉关系,“牵一发而动全身”。本实施的控制方法将功能模块实体化,可独立进行编辑,在修改相应的功能逻辑时,只需查找对应的状态机进行单独修改即可,无需修改其它存在交叉关系的功能逻辑,便于添加新的功能逻辑,使得整体框架具有极强的可扩展性。
61.需要说明的是,本实施例的状态机,由状态寄存器和组合逻辑电路构成,能够根据控制信号按照预先设定的状态进行状态转移,是协调相关信号动作、完成特定操作的控制中心,通过响应一系列事件而运行。每个事件都在属于当前节点的转移函数的控制范围内,包括moore状态机和mealy状态机,能够将复杂的控制逻辑分解成有限个稳定状态,在每个状态上判断事件,变连续处理为离散数字处理。
62.其中,第二状态机执行节点任务之前,还包括:通过第二状态机将节点任务上报至预设主逻辑机构;通过主逻辑机构启动与节点任务相关的工作模式,并发送与节点任务相关的任务信息,任务信息可体现为各种数据,包括传感器数据。在该工作模式下,通过第二状态机分析该任务信息在预设时段内的有效性,来判断节点任务是否具备执行条件;在该工作模式下,通过第二状态机执行该节点任务,直至符合预设完成条件。
63.在部分子流程中,执行节点任务需要扫地机器人的其他硬件进行辅助,本实施例通过主逻辑机构实现这一方式,并将其作为工作模式。在扫地机器人中,工作模式包括定位模式、映射模式等。在本实施例中,第二状态机会通过发送信息使主逻辑机构运行相关的工作模式,主逻辑机构在工作模式运行过程中会通过传感器检测清洁装置的状态,并采集部分数据反馈给第二状态机
64.全局定位过程中需要判断主逻辑机构获取的反馈姿势是否有效,若姿势有效,则全局定位有效。因此,执行节点任务前,需要准确判断该任务能否执行,即是否具备执行条件。只有具备执行条件,才能控制清洁装置中的硬件模块实施相关的动作。当不具备执行条件时,需要构建或修补执行条件以使任务能够执行。例如,当由于地图原因无法进行全局定位时,此时执行全局定位便不具备执行条件,需要构建地图信息,以弥补执行条件,使全局定位任务能顺利进行。
65.具体地,如说明书附图3所示,当该节点任务具备执行条件时:通过第一状态机发布第一任务至第二状态机,同时发布第一辅助任务至主逻辑机构,以使主逻辑机构启动关于第一辅助任务的工作模式,并在该工作模式下辅助第二状态机执行第一任务,进而实现节点任务的执行。例如,第一状态机下发全局定位的节点任务至第二状态机,第二状态机会将该任务发送给主逻辑机构中的建图模块以开启全局定位模式,同时还会将该任务发送给主逻辑机构中的控制模块,控制模块控制扫地机器人中的硬件结构执行过该任务,开始全局定位。
66.具体地,如说明书附图4所示,当该节点任务不具备执行条件时,通过第一状态机发布关于修补该节点任务执行条件的修补任务。其中,修补任务包括第二任务和第二辅助任务。具体包括:通过第一状态机发布第二任务至第二状态机,同时发布第二辅助任务至主逻辑机构,以使主逻辑机构启动关于第二辅助任务的工作模式;通过第二状态机将节点任务上报至预设主逻辑机构;并在该工作模式下辅助第二状态机执行第二任务,进而使节点任务具备执行条件。例如,全局定位失效,需要构建地图以执行该任务。第一状态机下发地图探索的节点任务至第二状态机,第二状态机会将该任务发送给主逻辑机构中的建图模块以开启映射模式,并初始化探索。在探索过程中,第二状态机会计算下一目标区域,并将清洁装置的速去发送给主逻辑机构。当完成全部区域的探索,第二状态机向第一状态机发送地图已创建的信息。当地图构建有效,第一状态机发布全部清扫的任务,第二状态机会计算清扫的路径再开始执行清扫任务。
67.优选地,清洁装置的工作节点包括空闲节点和非空闲节点;针对空闲节点到非空闲节点的执行过程,需要进行时间监测。每当有空闲状态进入一个非空闲状态,或者有由一个非空闲状态进入另一个非空闲状态,都会启动计时器进行计时。当计时器上的时间耗尽,则会将当前状态返回为空闲状态。引入计时器,能避免某一任务执行时间过长的问题,有效提高清洁装置的逻辑执行效率。
68.优选地,通过主逻辑机构采集清洁装置的传感器数据,以为一个或多个子流程确定清洁装置当前的工作节点;当主逻辑机构发布关于启动的传感器数据时,与当前的工作节点相对应的一个或多个子流程开始执行。主逻辑机构作为清洁装置的硬件控制中心,能够检测清洁装置各部分的运行情况,通过传感器可确定当前的工作节点。传感器数据会反馈至第一状态机和第二状态机。例如,当清洁装置正在充电时,可通过相关传感器监测电路
信息,以确定清洁装置当前的工作节点。
69.第一状态机、第二状态机和主逻辑机构之间的交互关系如说明书附图5所示。主逻辑机构会发送相应的传感器数据至第一状态机和第二状态机,方便判断清洁装置各硬件对任务的执行情况。第一状态机发布节点任务、第一任务给第二状态机,第二状态机会反馈任务执行情况。第一状态机发布第二辅助任务、第一辅助任务至主逻辑机构,主逻辑机构也可通过传感器数据来反馈任务执行情况。第二状态机会将任务发送至主逻辑机构,以使主逻辑机构启动相关的工作模式。
70.本实施例提供了一种清洁装置的控制方法,将清洁装置中抽象的功能逻辑模块化、实体化,采用状态机实现各个复杂的功能逻辑。采用状态机实现功能逻辑,可独立进行编辑,在修改相应的功能逻辑时,只需查找对应的状态机进行单独修改即可,无需修改其它存在交叉关系的功能逻辑,便于添加新的功能逻辑,使得整体框架具有极强的可扩展性。
71.实施例2
72.本发明实施例2公开了一种清洁设备的控制装置,将实施例1的一种清洁设备的控制方法系统化,使其更具实用性。控制装置的整体结构图如说明书附图6所示,具体方案如下:
73.一种清洁装置的控制系统,包括多个子流程单元,每个子流程单元对应执行清洁装置的至少两个工作节点;其中一个或多个子流程单元包括如下:
74.节点确定模块a1,用于确定清洁装置当前的工作节点,并上报至预设第一状态机1;
75.任务构建模块a2,用于通过第一状态机1确定第一工作节点,构建关于第一工作节点的节点任务并下发至预设第二状态机2;其中,第一工作节点为当前的工作节点所对应下一步的工作节点;
76.执行模块a3,用于通过第二状态机2判断该节点任务是否具备执行条件或是否执行完毕;并在具备执行条件时,执行节点任务;并在执行完毕后,将第一工作节点作为清洁装置当前的工作节点;
77.汇报模块a4,用于将节点任务的执行情况上报至第一状态机1,执行情况包括节点任务是否具备执行条件、是否执行完毕、执行进度。
78.其中,执行模块a3还包括:第二状态机2执行节点任务之前,通过第二状态机2将节点任务上报至预设主逻辑机构3;
79.通过主逻辑机构3启动与节点任务相关的工作模式,并发送与节点任务相关的任务信息;
80.在该工作模式下,通过第二状态机2分析该任务信息在预设时段内的有效性,来判断节点任务是否具备执行条件;
81.在该工作模式下,通过第二状态机2执行该节点任务,直至符合预设完成条件。
82.其中,清洁装置的工作节点包括空闲节点和非空闲节点;控制系统还包括:
83.定时模块a5,设置有定时装置,用于当清洁装置进入非空闲节点时,则同步启动定时装置;当定时装置的时间耗尽时,清洁装置由非空闲节点自动转换为空闲节点。
84.本实施例提供了一种清洁装置的控制系统,将实施例1的控制方法系统化,使其更具实用性。
85.实施例3
86.本实施例提供了一种清洁装置的逻辑模块,该逻辑模块可应用于清洁装置中。逻辑模块中各组成部分之间的关系如说明书附图5所示。具体方案如下:
87.一种清洁装置的逻辑模块,用于执行实施例1的控制方法,逻辑模块包括第一状态机1、第二状态机2和主逻辑机构3;
88.主逻辑机构3分别通信连接第一状态机1和第二状态机2,第一状态机1与第二状态机2存在通信连接;
89.其中,第一状态机1和第二状态机2相互独立,以实现当第一状态机1和第二状态机2中的一个控制逻辑发生更改时,不会影响第一状态机1和第二状态机2中的另一个的控制逻辑。
90.本实施例提供了一种清洁装置的逻辑模块,能够实现实施例1的控制方法。
91.本发明提供了一种清洁装置的控制方法、系统及逻辑模块,将清洁装置中抽象的功能逻辑模块化、实体化,采用状态机实现各个复杂的功能逻辑。采用状态机实现功能逻辑,可独立进行编辑,在修改相应的功能逻辑时,只需查找对应的状态机进行单独修改即可,无需修改其它存在交叉关系的功能逻辑,便于添加新的功能逻辑,使得整体框架具有极强的可扩展性。
92.本领域技术人员可以理解附图只是一个优选实施场景的示意图,附图中的模块或流程并不一定是实施本发明所必须的。本领域技术人员可以理解实施场景中的装置中的模块可以按照实施场景描述进行分布于实施场景的装置中,也可以进行相应变化位于不同于本实施场景的一个或多个装置中。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1