移动清洁机器人的预防性维护
1.优先申请
2.本技术要求2019年12月11日提交的美国专利申请16/710,126的优先权权益,其全部内容通过引用并入本文。
技术领域
3.本文件总体上涉及移动机器人,并且更具体地,涉及用于预测性维护移动清洁机器人的系统,设备和方法。
背景技术:4.自主移动机器人可以在环境中绕表面移动。自主移动机器人的示例包括在环境(例如,家庭)内自主执行清洁任务的清洁机器人。许多类型的清洁机器人在一定程度上以不同的方式是自主的。清洁机器人可以执行“清洁任务”,其中,机器人横越其环境的地板表面并同时从该地板表面摄取(例如,吸取)碎屑。
5.移动清洁机器人可以包括清洁头,例如刷,打浆辊等,其拾起或帮助拾起碎屑。但是,尽管清洁头可以搅动并从地板表面抽走碎屑和污垢,但是细丝(例如头发,细线,细绳,地毯纤维)可能会紧紧缠绕在滚筒上。尤其是,宠物毛发容易迅速累积并且难以去除。清洁头中可能会积聚碎屑。此外,清洁头可能会随着时间而磨损。日常维护对于有效清洁至关重要。
技术实现要素:6.本文描述了用于自动确定移动清洁机器人中清洁头状态的系统、设备和方法,清洁头状态例如清洁头或其清洁构件的磨损水平或碎屑累积水平(即清洁头的“脏污”水平)。可以在移动机器人的正常操作过程中确定清洁头的状态,从而确定维护要求。使用预测性维护方法,将基于清洁头的实际状况而不是预期寿命的总体合计估计值(例如,平均数或其他基于聚集的统计数据)来确定清洁头状态。示例性系统可以接收由移动清洁机器人横越环境而产生的机器人数据,提取所接收的机器人数据的一部分,该部分与由移动清洁机器人横越的具有特定表面条件的地板区域相对应,使用提取的机器人数据部分来确定机器人参数,基于机械人参数确定清洁头的状态,并估计清洁头的剩余使用寿命。该系统可以为用户生成对清洁头进行清洁的建议,或更换磨损的清洁头的建议。
7.示例1是用于评估移动清洁机器人中清洁头组件的健康状态的系统,清洁头组件包括由马达驱动并且可旋转地接合地板表面以提取碎屑的清洁构件。所述系统包括:处理器电路,被配置为:接收由横越环境的移动清洁机器人产生的机器人数据;使用所接收的机器人数据的一部分来确定机器人参数,机器人数据的所述部分与由移动清洁机器人横越的环境中的地板区域相对应,所述地板区域具有表面状况;和基于所确定的机器人参数,确定清洁头的状态,清洁头的状态指示清洁构件的磨损水平或碎屑累积水平中的至少一项;和用户界面,被配置为通知用户清洁头的确定状态。
8.在示例2中,示例1的主题可选地包括处理器电路,该处理器电路可以被配置为生成包括多个清洁任务的机器人参数的趋势,所述多个清洁任务分别包括所述移动清洁机器人横越相同的地板区域,并且所述处理器电路被配置为基于生成的机器人参数的趋势来确定所述清洁头的状态。
9.在示例3中,示例1-2中的任一项或多项的主题可选地包括处理器电路,所述处理器电路还被配置为使用所确定的机器人参数来产生所述清洁构件的剩余使用寿命(erl)的估计。
10.在示例4中,示例1-3中的任一项或多项的主题可选地包括以下一项或多项的测量:提供给马达的电压;马达电流;清洁构件的角速度;或清洁构件处产生的扭矩。
11.在示例5中,示例3-4中的任一项或多项的主题可选地包括处理器电路,该处理器电路可以配置为:使用(1)代表清洁头动态的清洁头组件的数学模型,以及(2)对应于具有表面状况的地板区域的数据部分,来估计清洁构件的状态变量;和使用估计的状态变量生成清洁构件的erl。
12.在示例6中,示例5的主题可选地包括状态变量,其包括与所述清洁构件中的碎屑累积或所述清洁构件的磨损相关的干扰扭矩。
13.在示例7中,示例5-6中的任一项或多项的主题可选地包括数学模型,所述数学模型包括状态空间模型,并且所述处理器电路可以被配置为使用(1)供应给马达以驱动所述清洁构件的电压和(2)当移动清洁机器人在一个或多个表面状况下操作时产生的马达电流,来生成状态空间响应模型。
14.在示例8中,示例1-7中的任一项或多项的主题可选地包括处理器电路,所述处理器电路被配置为,基于包含关于环境中的一个或多个地板区域的表面状况的信息的地板地图,来提取所接收的机器人数据的与具有表面状况的地板区域相对应的部分,所述表面状况包括以下一项或多项:地板类型;在环境的特定空间位置处的地板表面;用于移动清洁机器人的对接站的平台表面;或具有特定尺寸或形状的地板表面。
15.在示例9中,示例1-8中的任一项或多项的主题可选地包括处理器电路,所述处理器电路被配置为根据清洁任务的阶段来提取所接收的机器人数据的所述部分,所述清洁任务的阶段包括以下至少一项:对接阶段,在对接阶段移动清洁机器人返回到对接站;或解除对接阶段,在解除对接阶段移动清洁机器人离开对接站。
16.在示例10中,示例1-9中的任一项或多项的主题可选地包括机器人参数,所述机器人参数包括由所述马达产生的、用于驱动所述清洁构件越过具有表面状况的地板区域的能量,并且其中,所述处理器电路被配置为:产生包括多个清洁任务的马达能量的趋势,所述多个清洁任务分别包括所述移动清洁机器人横越相同的地板区域;在第一监视时段期间,基于马达能量的增加趋势确定碎屑累积水平;和在比第一监视时段更长的第二监视时段期间,基于马达能量的减少趋势确定磨损水平。
17.在示例11中,示例10的主题可选地包括在所述清洁头的两个连续维护服务之间的第一监视时段。
18.在示例12中,示例10-11中的任一项或多项的主题可选地包括处理器电路,所述处理器电路被配置为在多个清洁任务上趋势化马达能量,每个清洁任务在关于检测到的清洁头的维护指示的特定时间发生。
19.在示例13中,示例12的主题可选地包括联接到一个或多个传感器的维护检测器电路,以检测正在对清洁头执行维护的指示。
20.在示例14中,示例1-13中的任一项或多项的主题可选地包括机器人参数,所述机器人参数包括驱动所述清洁构件以可旋转地接合所述移动清洁机器人的对接站的平台表面的马达的动态响应;其中,处理器电路被配置为基于所确定的马达的动态响应与用于磨损的清洁头的第一马达响应模板或用于碎屑累积的清洁头的第二马达响应模板中的一个或多个的比较,来确定清洁头的状态;和其中,第一马达响应模板和第二马达响应模板分别使用与可旋转地接合对接站的平台表面的清洁构件相对应的机器人数据生成。
21.在示例15中,示例14的主题可选地包括处理器电路,所述处理器电路被配置为:生成参数模型以拟合所确定的马达的动态响应;确定参数模型的一个或多个模型参数,以使拟合满足特定标准;和使用所确定的一个或多个模型参数确定清洁头的状态。
22.在示例16中,示例1-15中的任一项或多项的主题可选地包括多个估计器,所述多个估计器与环境中具有相应表面状况的相应地板区域相关联。所述多个估计器中的每一个可以被配置为使用接收到的机器人数据中的与相应地板区域相对应的部分来确定相应机器人参数。所述处理器电路被配置为:使用在清洁任务中由多个估计器分别确定的机器人参数来生成复合机器人参数;在多个清洁任务上生成复合机器人参数的趋势,每个清洁任务包括移动清洁机器人横越一个或多个相应的地板区域;和基于复合机器人参数的生成趋势确定清洁头的状态。
23.在示例17中,示例16的主题可选地包括处理器电路,所述处理器电路被配置为为所述多个估计器中的每一个确定相应的权重因子,并使用由相应的权重因子加权的所述机器人参数的组合来生成所述复合机器人参数。
24.在示例18中,示例17的主题可选地包括多个估计器,每个估计器被配置为产生清洁构件的估计剩余使用寿命(erl);和处理器电路被配置为使用由相应权重因子加权的erl的组合来生成合计的erl。
25.在示例19中,示例17-18中的任一项或多项的主题可选地包括处理器电路,所述处理器电路可以被配置为基于与相应估计器相关联的地板区域的地板类型来确定所述权重因子。
26.在示例20中,示例17-19中的任一项或多项的主题可选地包括处理器电路,所述处理器电路可以被配置为基于当所述移动清洁机器人在清洁任务中横越与相应估计器相关联的地板区域时所获取的机器人数据的可变性度量来确定所述加权因子。
27.在示例21中,示例1-20中的任一项或多项的主题可选地包括用户界面,所述用户界面可以被配置为将所述清洁构件的erl通知给用户。
28.在示例22中,示例1-21中的任一项或多项的主题可选地包括用户界面,所述用户界面可以被配置为响应于所确定的碎屑累积水平来产生清洁所述清洁构件的推荐,或者基于所确定的磨损水平来产生更换所述清洁构件的推荐。
29.在示例23中,示例1-22中的任一项或多项的主题可选地包括用户界面,所述用户界面可以被配置为提示用户购买新的清洁头,以更换具有确定的磨损水平的清洁头。
30.示例24是用于评估移动清洁机器人中清洁头组件的健康状态的方法,清洁头组件包括由马达驱动并且可旋转地接合地板表面以提取碎屑的清洁构件。所述方法包括以下步
骤:接收由横越环境的移动清洁机器人产生的机器人数据;经由处理器电路使用所接收的机器人数据的一部分来确定机器人参数,机器人数据的所述部分与由移动清洁机器人横越的环境中的地板区域相对应,所述地板区域具有表面状况;经由处理器电路基于所确定的机器人参数,确定清洁头的状态,清洁头的状态指示清洁构件的磨损水平或碎屑累积水平中的至少一项;和在用户界面上呈现清洁头的确定状态。
31.在示例25中,示例24的主题可选地包括基于包含关于环境中的一个或多个地板区域的表面状况的信息的地板地图来提取所接收的机器人数据的与具有表面状况的地板区域相对应的部分。所述表面状况可以包括以下一项或多项:地板类型;在环境中的特定位置处的地板表面;用于移动清洁机器人的对接站的平台表面;或具有特定尺寸或形状的地板表面。
32.在示例26中,示例24-25中的任一项或多项的主题可选地包括基于清洁任务的特定阶段来提取所接收的机器人数据的所述部分,所述清洁任务的特定阶段包括以下至少一项:对接阶段,在对接阶段移动清洁机器人返回到对接站;或解除对接阶段,在解除对接阶段移动清洁机器人离开对接站。
33.在示例27中,示例24-26中的任一项或多项的主题可选地包括使用所确定的机器人参数来产生所述清洁构件的剩余使用寿命(erl)的估计。
34.在示例28中,示例27的主题可选地包括使用(1)代表清洁头动态的清洁头组件的数学模型,以及(2)对应于具有表面状况的地板区域的数据部分,来估计清洁构件的状态变量;和使用估计的状态变量生成清洁构件的erl。
35.在示例29中,示例28的主题可选地包括状态变量,其包括与所述清洁构件中的碎屑累积或所述清洁构件的磨损相关的干扰扭矩。本示例还可以包括生成数学模型,所述数学模型包括表示(1)提供给马达以驱动清洁构件的电压和(2)当移动清洁机器人在一个或多个表面状况下操作时产生的马达电流之间的关系的状态空间模型。
36.在示例30中,示例24-29中的任一项或多项的主题可选地包括机器人参数,所述机器人参数包括由所述马达产生的、用于驱动所述清洁构件越过具有表面状况的地板区域的能量。本示例还可以包括:产生包括多个清洁任务的机器人参数的趋势,所述多个清洁任务分别包括所述移动清洁机器人横越相同的地板区域;在第一监视时段期间,基于马达能量的增加趋势确定碎屑累积水平;和在比第一监视时段更长的第二监视时段期间,基于马达能量的减少趋势确定磨损水平。
37.在示例31中,示例30的主题可选地包括:检测或接收正在对清洁头进行维护的指示;在清洁头的两个连续维护服务之间的第一监视时段期间,基于马达能量的增加趋势确定碎屑累积水平;和基于在多个清洁任务上马达能量的减少趋势确定磨损水平,每个清洁任务在关于检测到的清洁头的维护指示的特定时间发生。
38.在示例32中,示例24-31中的任一项或多项的主题可选地包括机器人参数,所述机器人参数可以包括驱动所述清洁构件以可旋转地接合所述移动清洁机器人的对接站的平台表面的马达的动态响应。确定清洁头的状态的步骤可以基于所确定的马达的动态响应与用于磨损的清洁头的第一马达响应模板或用于碎屑累积的清洁头的第二马达响应模板中的一个或多个的比较。第一马达响应模板和第二马达响应模板分别可以使用与可旋转地接合对接站的平台表面的清洁构件相对应的机器人数据生成。
39.在示例33中,示例24-35中的任一项或多项的主题可选地包括:使用所接收的机器人数据中的与环境中具有第一表面状况的第一地板区域相对应的第一部分来至少确定第一机器人参数,以及使用所接收的机器人数据中的与环境中具有第二表面状况的第二地板区域相对应的第二部分来确定第二机器人参数,第一地板区域和第二地板区域每个由移动清洁机器人横越;至少使用第一和第二机器人参数来生成复合机器人参数;在多个清洁任务上生成复合机器人参数的趋势,每个清洁任务包括移动清洁机器人横越第一或第二地板区域中的一个或多个;和基于复合机器人参数的生成趋势确定清洁头的状态。
40.在示例34中,示例33的主题可选地包括生成由相应权重因子加权的至少第一机器人参数和第二机器人参数的加权组合。
41.在示例35中,示例24-34中的任一项或多项的主题可选地包括:使用第一机器人参数至少生成清洁构件的剩余使用寿命(erl)的第一估计,以及使用第二机器人参数生成清洁构件的第二erl;和至少使用由相应权重因子加权的第一和第二erl来生成合计的erl。
42.示例36是用于评估移动清洁机器人中的清洁头组件的健康状态的设备。所述设备包括:通信电路,其被配置为通信地联接至所述移动机器人以接收由横越环境的所述移动清洁机器人产生的机器人数据;存储器电路,其被配置为存储包含关于表面状况的信息的地板地图,所述表面状况包括环境中一个或多个地板区域的地板类型;处理器电路,被配置为:使用地板地图提取所接收的机器人数据的与由移动清洁机器人横越的地板区域相对应的部分,所述地板区域具有特定地板类型;使用所提取的数据部分来确定机器人参数;和基于所确定的机器人参数,确定清洁头的状态,清洁头的状态指示清洁头组件的清洁构件的磨损水平或碎屑累积水平中的至少一个;和用户界面,被配置为通知用户清洁头的确定状态。
43.在示例37中,示例36的主题可选地包括处理器电路,所述处理器电路还可以被配置为使用所确定的机器人参数来产生所述清洁构件的剩余使用寿命(erl)的估计。
44.在示例38中,示例36-37中的任一项或多项的主题可选地包括机器人参数,所述机器人参数包括由所述马达产生的,用于驱动所述清洁构件越过具有特定地板类型的地板区域的能量,并且其中,所述处理器电路被配置为:产生包括多个清洁任务的马达能量的趋势,所述多个清洁任务分别包括所述移动清洁机器人横越相同的地板区域;在第一监视时段期间,基于马达能量的增加趋势确定碎屑累积水平;和在比第一监视时段更长的第二监视时段期间,基于马达能量的减少趋势确定磨损水平。
45.在示例39中,示例36-38中的任一项或多项的主题可选地包括机器人参数,所述机器人参数包括驱动所述清洁构件以可旋转地接合所述移动清洁机器人的对接站的平台表面的马达的动态响应;其中,处理器电路被配置为基于所确定的马达的动态响应与用于磨损的清洁头的第一马达响应模板或用于碎屑累积的清洁头的第二马达响应模板中的一个或多个的比较,来确定清洁头的状态。第一和第二马达响应模板分别可以使用与可旋转地接合对接站的平台表面的清洁构件相对应的机器人数据生成。
46.在示例40中,示例36-39中的任一项或多项的主题可选地包括处理器电路,所述处理器电路可以被配置为:使用所接收的机器人数据中与具有第一地板类型的第一地板区域相对应的第一部分来至少确定第一机器人参数,以及使用所接收的机器人数据中的与具有第二地板类型的第二地板区域相对应的第二部分来确定第二机器人参数,第一和第二地板
区域每个由移动清洁机器人横越;至少使用由相应权重因子加权的第一和第二机器人参数来生成复合机器人参数;在多个清洁任务上生成复合机器人参数的趋势,每个清洁任务包括移动清洁机器人横越第一或第二地板区域中的一个或多个;和基于复合机器人参数的生成趋势确定清洁头的状态。
47.该概述是本技术的一些教导的概述,并且不旨在作为本主题的排他性或详尽的处理。在详细描述和所附权利要求中可以找到关于本主题的更多细节。在阅读和理解以下详细描述并查看形成其一部分的附图之后,本公开的其他方面对于本领域技术人员将是显而易见的,每个附图都不应理解为限制性的。本公开的范围由所附权利要求及其合法等同物限定。
附图说明
48.在附图的图中通过示例的方式示出了各种实施例。这样的实施例是说明性的,并且不意图是本主题的穷举或排他的实施例。
49.图1、2a和2b是移动机器人的侧面剖视图,底部透视图和顶部透视图。
50.图3是示出用于操作移动清洁机器人的控制架构的示例的图。
51.图4a是示出通信网络的示例的图,其中移动清洁机器人在该网络中进行操作和数据传输。
52.图4b是示出在通信网络中的移动机器人与其他设备之间交换信息的示例性过程的图。
53.图5是示出了移动机器人预测性维护(pdm)系统的示例的图。
54.图6是示出移动机器人的对接和解除对接的图,在此期间,获取机器人数据并将其用于评估清洁头状态。
55.图7a-7b是示出基于机器人参数的趋势确定清洁头状态的示例性方法的图。
56.图8是示出检测在移动机器人的清洁头上执行的维护动作的示例性方法的图。
57.图9a-9c示出了基于清洁头马达的动态响应来确定清洁头状态的示例性方法。
58.图10是示出用于估计清洁头的清洁构件的剩余使用寿命的线性回归模型的示例的图。
59.图11a-11b是示出配置为显示关于清洁头状态的信息的智能电话上的示例性用户界面的图。
60.图12是示出配置为使用基于数学模型的美感传感器来确定清洁头状态的移动机器人pdm系统的示例的图。
61.图13是示出配置为基于多估计器融合来确定清洁头状态的示例性移动机器人pdm系统的图。
62.图14a至图14b是示出了分别由与环境中的不同区域相关联的多个估计器确定的机器人参数的融合的图。
63.图15是示出评估移动清洁机器人中的清洁头的健康状态的方法的示例的流程图。
64.图16是示出了基于多估计器融合来评估清洁头的健康状态的方法的示例的流程图。
65.图17是示出了示例机器的框图,本文所讨论的任何一种或多种技术(例如方法)可
以在其上执行。
具体实施方式
66.重复使用后,移动清洁机器人可能会在其清洁头中积聚碎屑,例如紧紧缠绕在旋转的刷或滚筒周围的细丝(例如,头发,细线,细绳,地毯纤维)。清洁头可能会随着时间而磨损。例行维护对于移动机器人的有效清洁、健康的操作条件以及延长使用寿命至关重要。传统上,机器人维护(例如,清洁碎屑,修理或更换清洁头)通常是定期进行的。这称为计划维护或预防性维护,其特征在于定期或在设定的时间进行例行检查。例如,当从参考时间(例如,自上次维护以来的时间)起经过了一定量的运行时间后,可以触发警报以提醒用户清洁清洁刷或检查清洁刷的磨损状态。一些移动机器人以里程表或移动机器人行进的距离为基础进行计划维护,其中当移动机器人行进了预定距离量时会触发维护警报。在执行维护(例如,清洁刷)之后,用户可以手动重置相应的计时器或里程表。
67.计划维护(无论是经过的时间还是行进的距离)基本上取决于启发式方法,即假定所有机器人和所有环境中的碎屑均以固定的速率均匀地累积。但是,实际上,各个机器人之间的碎屑累积通常会有所不同。由于机器人环境中不同的地面条件,碎屑的数量和分布,清洁任务的变化,或清洁频率或时间表等原因,移动机器人很少保持固定的碎屑累积率。另外,对于许多传统的移动机器人,计划的维护计划(例如触发维护警报的阈值时间或阈值距离)是基于清洁头的劣化过程(例如,碎屑累积,或正常磨损)的总体聚集估计值而预先确定的。这种基于聚集的估计可能与单个移动机器人的清洁头状态的实际检测或推断有所不同,并且可能错误或不合时宜地触发清洁头碎屑或磨损状态的警报。例如,当清洁头不脏或没有足够磨损而需要立即注意时,计划维护可能是不必要的或过早的。另一方面,当清洁头在下一次定期维护之前变脏或早已磨损时,计划维护可能会过期。此外,计划维护很可能会错过在下次计划维护之前对清洁头造成的意外损坏。由于上述原因,至少在某些情况下,计划维护可能会导致不良的清洁性能,损坏的部件以及负面的用户满意度。
68.本文件讨论了预测性维护(pdm)范式,该范式预测移动清洁机器人中的清洁头状态,包括对清洁头或其清洁构件的碎屑累积或磨损水平的个性化估计。pdm,也称为基于状况的维护,是在正常操作期间监视设备性能和状况以预测特定类型事件(例如设备的故障或失效)的发生的维护。与预防性维护不同,pdm依靠设备的实际状况,而不是平均或预期寿命统计信息(例如,基于聚集的碎屑累积周期估计或清洁头的预期寿命)来预测何时需要维护。
69.当估计移动清洁机器人中清洁头的磨损和碎屑累积状态时,从移动机器人收集的代表磨损或碎屑累积的数据(例如,通过配置为感测机械或电气参数的传感器)可能会因环境条件而混淆。例如,机器人所横越的地板类型可以控制机器人数据的特征。专用传感器可用于添加附加的感测能力,以自动检查清洁头的运行状态,例如通过目视检查,扭矩或力感测等。但是,这些附加部件会为集成系统增加成本和复杂性。替代地,已经在其他机器人操作(例如,导航,清洁和运动控制)中使用并且已经合并到移动机器人中的传感器或派生信号可以被重新使用并重新用于评估清洁头碎屑的累积和磨损状态。例如,从驱动清洁头的马达测得的电流表示清洁头上的负载。该负载可包括由于碎屑累积(例如,头发)引起的第一分量,以及由于清洁构件(例如,刷)与地板之间的相互作用而引起的主要的第二分量。马
达电流的测量主要取决于要清洁的地板的表面状况,例如地板类型(例如,硬木,瓷砖或地毯)。本发明人已经认识到移动清洁机器人的预测性维护中的挑战,特别是对于估计在不同地板条件下的磨损和碎屑累积水平的改进方法的未满足的需求。
70.本文件讨论了移动清洁机器人的预测性维护(pdm)。清洁头组件包括一个或多个清洁构件,清洁构件由一个或多个电马达驱动,可旋转地接合地板表面以搅动和提取碎屑。示例性系统包括:数据接收器,用于接收由移动清洁机器人横越环境而产生的机器人数据;以及控制器,其估计清洁构件的碎屑累积和磨损水平。为了消除地板相互作用的影响以及清洁头的碎屑或磨损状态对测量的机器人数据的影响,控制器可以使用对应于移动机器人横越的特定地板区域的接收到的机器人数据的一部分来确定机器人参数。地板区域具有特定的表面状况,例如特定的地板类型,环境中的特定空间位置,或具有特定大小或尺寸的特定区域等。在这种受控(即,基本固定)的地板状况下,控制器可以基于确定的机器人参数确定指示磨损水平或碎屑累积水平的清洁头状态。该系统可以包括用户界面,以基于确定的碎屑或磨损状态提示用户进行清洁头的维护或更换。
71.与常规的计划或预防性维护相比,本文件中讨论的移动清洁机器人的pdm具有多个优点。第一,监视清洁头的实际操作状况可以减少移动机器人的故障或失效的数量,减少维修停机时间,并降低维护成本。第二,使用基于现有传感器的算法估计碎屑和磨损水平,这些现有传感器已用于其他机器人操作,例如机器人导航和清洁控制。避免使用用于磨损和碎屑状态检测的专用传感器可以降低集成机器人系统的复杂性,并降低总成本。第三,本文件中的移动机器人pdm范例还包括消除地板相互作用的影响以及清洁头的碎屑和磨损对测量的机器人数据的影响的方法。本发明人已经认识到地板的空间信息和地板表面状况(例如地板类型)可以提供控制清洁头与地板表面之间的地板类型相互作用的手段。而机器人数据(例如,马达响应的瞬时测量(例如,其电流提取,能量消耗,频域变换等))主要是与地板表面的相互作用,并根据地板位置和地板状况跟踪这些机器人数据,然后随时间推移对这些观察进行趋势化(例如,使用当前的测量机器人数据和历史机器人数据),可以提供用于将由于碎屑和磨损而导致的部件与所测得的马达信号隔离开的手段。例如,假设房屋中的地板类型不经常变化,则在多个清洁任务过程中获取的机器人数据的趋势可以有效地控制由于地板交互作用而导致的数据变化,并且预计会由于碎屑累积和磨损产生其他影响。一旦隔离了地板的空间位置和地板状况的影响并将其从观察结果中移除,就可以从机器人数据中得出有关清洁头状态的更可靠和准确的推论,包括磨损水平或碎屑累积水平,并且随后用于将维护需求传达给机器人所有者。因此,利用如本文所讨论的用于评估机器人清洁头状态的系统,设备和方法,可以实现移动机器人的更有效的维护和改善的操作。
72.在下文中,将参考图1-3简要讨论移动机器人及其工作环境。参照图4-15讨论根据本文描述的各种实施例的覆盖路径规划的系统,设备和方法的详细描述。
73.自主移动机器人示例
74.图1和图2a-2b描绘了移动地板清洁机器人100的示例的不同视图。参照图1,当机器人100横越地板表面10时,机器人100从地板表面10收集碎屑105。参照图2a,机器人100包括机器人壳体基础设施108。壳体基础设施108可以限定机器人100的结构外围。在一些示例中,壳体基础设施108包括底盘,盖,底板和保险杠组件。机器人100是具有小的轮廓的家用机器人,使得机器人100可以适用在房屋内的家具下面。例如,机器人100相对于地板表面的
高度h1(如图1所示)例如不超过13厘米。机器人100也是紧凑的。机器人100的总长度l1(图1所示)和总宽度w1(图2a所示)分别在30至60厘米,例如在30至40厘米,40至50厘米,或50至60厘米。总宽度w1可以对应于机器人100的壳体基础设施108的宽度。
75.机器人100包括具有一个或多个驱动轮的驱动系统110。驱动系统110进一步包括一个或多个电马达,电马达包括形成电路106的一部分的电驱动部分。壳体基础设施108支持机器人100内的电路106,至少包括控制器电路109。
76.驱动系统110可操作以推动机器人100越过地板表面10。可以沿向前驱动方向f或向后驱动方向r推动机器人100。还可以推动机器人100,使得机器人100就地转动,或在向前驱动方向f或向后驱动方向r移动的同时转动。在图2a中描绘的示例中,机器人100包括延伸穿过壳体基础设施108的底部113的驱动轮112。驱动轮112由马达114旋转以引起机器人100沿着地板表面10运动。机器人100还包括被动脚轮115,被动脚轮115延伸穿过壳体基础设施108的底部113。脚轮115未通电。驱动轮112和脚轮115一起协作以将壳体基础设施108支撑在地板表面10上方。例如,脚轮115沿着壳体基础设施108的后部121设置,并且驱动轮112设置在脚轮115的前方。
77.参照图2b,机器人100包括基本为矩形的前部122和基本为半圆形的后部121。前部122包括侧表面150、152,前表面154和拐角表面156、158。前部122的拐角表面156、158将侧表面150、152连接到前表面154。
78.在图1和2a-2b所示的示例中,机器人100是自主移动地板清洁机器人,其包括可操作以清洁地板表面10的清洁头组件116(图2a中示出)。例如,机器人100是真空清洁机器人,其中清洁头组件116可操作以通过从地板表面10摄取碎屑105(图1所示)来清洁地板表面10。清洁头组件116包括清洁入口117,机器人100通过该清洁入口收集碎屑。清洁入口117位于机器人100的中心(例如中心162)的前方,并且沿着机器人100的前部122位于前部122的侧表面150、152之间。
79.清洁头组件116包括一个或多个可旋转构件,例如,由辊马达120驱动的可旋转构件118。可旋转构件118跨过机器人100的前部122水平延伸。可旋转构件118沿着壳体基础设施108的前部122定位,并且沿着壳体基础设施108的前部122的宽度的75%至95%延伸,例如,前部122的宽度对应于机器人100的总宽度w1。还参考图1,清洁入口117位于可旋转构件118之间。
80.如图1所示,可旋转构件118是彼此相对旋转的辊。例如,可旋转构件118包括前辊和后辊,其平行于地板表面安装并且彼此间隔开小的细长间隙。可旋转构件118可绕平行的水平轴线146、148(在图2a中示出)旋转,以搅动地板表面10上的碎屑105并将碎屑105朝向清洁入口117引导到清洁入口117中,并进入机器人100中的抽吸路径145中(如图1所示)。再次参考图2a,可旋转构件118可完全定位在机器人100的前部122内。可旋转构件118包括弹性体外壳,当可旋转构件118相对于壳体基础设施108旋转时,弹性体外壳与地板表面10上的碎屑105接触,以将碎屑105引导通过可旋转构件118之间的清洁入口117并进入机器人100的内部,例如进入碎屑箱124(如图1所示)。可旋转构件118进一步接触地板表面10以搅动地板表面10上的碎屑105。在图2a所示的示例中,诸如前辊和后辊的可旋转构件118均可以具有沿着其圆柱形外部分布的人字形叶片的图案,并且至少一个辊的叶片沿着辊的长度与地板表面接触,并在旋转过程中受到持续施加的摩擦力,这在具有柔韧刷毛的刷中是不
存在的。
81.可旋转构件118可以采取其他合适的构造。在一个示例中,前辊和后辊中的至少一个可以包括用于搅拌地板表面的刷毛和/或细长的柔韧翼片。在一个示例中,可旋转地联接至清洁头组件壳体的挡板刷可包括顺应的翼片,其从芯部径向向外延伸以在辊被驱动旋转时扫掠地板表面。翼片构造成防止错误的细丝紧紧缠绕在芯部上,以帮助随后的细丝去除。挡板刷包括轴向端部保护件,轴向端部保护件安装在芯部上,靠近外芯部表面的端部,并且构造成防止绕线的细丝从芯部外表面轴向地横越到安装特征上。挡板刷可包括从芯部径向向外延伸的多个地板清洁刷毛。
82.机器人100还包括真空系统119,真空系统119可操作以产生通过可旋转构件118之间的清洁入口117进入碎屑箱124的气流。真空系统119包括叶轮和使叶轮旋转以产生气流的马达。真空系统119与清洁头组件116协作以将碎屑105从地板表面10吸入碎屑箱124中。在一些情况下,由真空系统119产生的气流产生足够的力,以将地板表面10上的碎屑105通过可旋转构件118之间的间隙向上抽吸到碎屑箱124中。在某些情况下,可旋转构件118接触地板表面10以搅动地板表面10上的碎屑105,从而允许碎屑105更容易被真空系统119产生的气流摄取。
83.机器人100还包括刷126(也称为侧刷),该刷绕非水平轴线旋转,该非水平轴线例如是与地板表面10形成介于75度至90度的角度的轴线。非水平轴线例如与可旋转构件118的纵向轴线形成75度至90度的角度。机器人100包括可操作地连接到侧刷126以旋转侧刷126的刷马达128。
84.刷126是从机器人100的前后轴线fa横向偏移的侧刷,使得刷126延伸超过机器人100的壳体基础设施108的外周。例如,刷126可以延伸超过机器人100的侧表面150、152之一,并且从而能够接合地板表面10的可旋转构件118通常不能到达的部分上的碎屑,例如,地板表面10的位于机器人10正下方的地板表面10部分的外部的部分。刷126也从机器人100的侧向轴线la向前偏移,使得刷126也延伸超过壳体基础设施108的前表面154。如图2a所示,刷126延伸到壳体基础设施108的侧表面150,拐角表面156和前表面154之外。在一些实施例中,刷126延伸超过侧表面150的水平距离d1至少为例如0.2厘米,例如,至少0.25厘米,至少0.3厘米,至少0.4厘米,至少0.5厘米,至少1厘米或更多。刷126被定位成在其旋转期间接触地板表面10,使得刷126可以容易地接合地板表面10上的碎屑105。
85.刷126可绕非水平轴线旋转,其方式为随着机器人100的移动将地板表面10上的碎屑刷入清洁头组件116的清洁路径中。例如,在机器人100沿向前驱动方向f移动的示例中,刷126可沿顺时针方向旋转(当从机器人100上方的视角观察时),使得刷126接触的碎屑朝向清洁头组件移动,并在向前驱动方向f上朝向清洁头组件116前方的地板表面10的部分移动。结果,当机器人100在向前驱动方向f上移动时,机器人的清洁入口117 100可以收集被刷126扫过的碎屑。在机器人100沿向后驱动方向r移动的示例中,刷126可沿逆时针方向旋转(当从机器人100上方的视角观察时),使得刷126接触的碎屑在向后驱动方向r上朝向清洁头组件116后方的地板表面的部分移动。结果,当机器人100在向后驱动方向r上移动时,机器人100的清洁入口117可以收集被刷126扫过的碎屑。
86.除了控制器电路109之外,电路106还包括例如存储器存储元件144和具有一个或多个电传感器的传感器系统。如本文所述,传感器系统可以产生指示机器人100的当前位置
的信号,并且可以产生指示在机器人100沿着地板表面10行进时机器人100的位置的信号。控制器电路109被配置为执行指令以执行如本文所述的一个或多个操作。存储器存储元件144可由控制器电路109访问并且被布置在壳体基础设施108内。一个或多个电传感器被配置为检测机器人100的环境中的特征。例如,参考图2a,传感器系统包括沿着壳体基础设施108的底部113设置的悬崖传感器134。每个悬崖传感器134是光学传感器,其可以检测光学传感器下方的物体(例如地板表面10)的存在或不存在。悬崖传感器134因此可以在机器人100的设置有悬崖传感器134的部分下方检测诸如下落和悬崖之类的障碍物,并相应地重定向机器人。下面例如参考图3讨论传感器系统和控制器电路109的更多细节。
87.参照图2b,传感器系统包括一个或多个接近传感器,其可以检测沿着地板表面10的靠近机器人100的物体。例如,传感器系统可以包括接近传感器136a,136b,136c,接近传感器136a,136b,136c被布置成靠近壳体基础设施108的前表面154。接近传感器136a,136b,136c中的每一个都包括光学传感器,光学传感器从壳体基础设施108的前表面154面向外,并且可以检测光学传感器前方是否存在物体。例如,可检测物体包括机器人100的环境中的障碍物,例如家具,墙壁,人和其他物体。
88.传感器系统包括保险杠系统,其包括保险杠138和检测保险杠138与环境中的障碍物之间的接触的一个或多个碰撞传感器。保险杠138形成壳体基础设施108的一部分。例如,保险杠138可以形成侧表面150、152以及前表面154。传感器系统例如可以包括碰撞传感器139a,139b。碰撞传感器139a,139b可以包括断束传感器,电容传感器或可以检测机器人100(例如,保险杠138)与环境中的物体之间的接触的其他传感器。在一些实施方式中,碰撞传感器139a可以用于检测保险杠138沿着机器人100的前后轴线fa(在图2a中示出)的运动,并且碰撞传感器139b可以用于检测保险杠138沿着机器人100的横向轴线la(在图2a中示出)的运动。接近传感器136a,136b,136c可以在机器人100接触物体之前检测物体,并且碰撞传感器139a,139b可以例如响应于机器人100接触物体而检测接触保险杠138的物体。
89.传感器系统包括一个或多个障碍物跟随传感器。例如,机器人100可以包括沿着侧表面150的障碍物跟随传感器141。障碍物跟随传感器141包括光学传感器,光学传感器从壳体基础设施108的侧表面150面向外,并且可以检测与壳体基础设施108的侧表面150相邻的物体的存在或不存在。障碍物跟随传感器141可以在垂直于机器人100的向前驱动方向f并且垂直于机器人100的侧表面150的方向上水平地发射光束。例如,可检测物体包括机器人100的环境中的障碍物,例如家具,墙壁,人和其他物体。在一些实施方式中,传感器系统可以包括沿着侧表面152的障碍物跟随传感器,并且障碍物跟随传感器可以检测与侧表面152相邻的物体的存在或不存在。沿着侧表面150的障碍物跟随传感器141是右障碍物跟随传感器,并且沿着侧表面152的障碍物跟随传感器是左障碍物跟随传感器。一个或多个障碍物跟随传感器,包括障碍物跟随传感器141,也可以用作障碍物检测传感器,例如,类似于本文所述的接近传感器。就这一点而言,左障碍物跟随可用于确定机器人100左侧的物体(例如障碍物表面)和机器人100之间的距离,而右障碍物跟随传感器可用于确定机器人100右侧的物体(例如障碍物表面)和机器人100之间的距离。
90.在一些实施方式中,接近传感器136a,136b,136c中的至少一些以及障碍物跟随传感器141中的每一个均包括光学发射器和光学检测器。光学发射器从机器人100向外,例如在水平方向上向外发射光束,并且光学检测器检测从机器人100附近的物体反射回来的光
束的反射。机器人100,例如,使用控制器电路109,可以确定光束的飞行时间,从而确定光学检测器与物体之间的距离,从而确定机器人100与物体之间的距离。
91.在一些实施方式中,接近传感器136a包括光学检测器180和多个光学发射器182、184。可以将光学发射器182、184中的一个定位为向外和向下引导光束,而可以将光学发射器182、184中的另一个定位为向外和向上引导光束。光学检测器180可以检测光束的反射或从光束的散射。在一些实施方式中,光学检测器180是成像传感器,照相机或用于感测光学信号的某种其他类型的检测装置。在一些实施方式中,光束照亮沿机器人100前方的平面垂直表面的水平线。在一些实施方式中,光学发射器182、184各自朝向障碍物表面向外发射光束的扇形,使得一维点阵出现在一个或多个障碍物表面上。一维点阵可以位于水平延伸线上。在一些实施方式中,点阵可以在多个障碍物表面上延伸,例如,彼此相邻的多个障碍物表面。光学检测器180可以捕获表示由光学发射器182形成的点阵和由光学发射器184形成的点阵的图像。基于图像中点的大小,机器人100可以确定点出现在其上的物体相对于光学检测器180(例如相对于机器人100)的距离。机器人100可以针对每个点进行该确定,从而允许机器人100确定在其上出现点的物体的形状。另外,如果多个物体在机器人100的前方,则机器人100可以确定每个物体的形状。在一些实施方式中,物体可以包括从机器人100正前方的地板表面10的一部分横向偏移的一个或多个物体。
92.传感器系统还包括指向壳体基础设施108的顶部142的图像捕获装置140,例如照相机。当机器人100绕地板表面10移动时,图像捕获装置140生成机器人100的环境的数字图像。图像捕获装置140在向上方向上成角度,例如,与机器人100绕其导航的地板表面10成30度至80度的角度。当向上倾斜时,照相机能够捕获环境的墙壁表面的图像,使得对应于墙壁表面上的物体的特征可以用于定位。
93.当控制器电路109使机器人100执行任务时,控制器电路109操作马达114以驱动驱动轮112并沿着地板表面10推动机器人100。另外,控制器电路109操作辊马达120以使可旋转构件118旋转,操作刷马达128以使侧刷126旋转,并且操作真空系统119的马达以产生气流。为了使机器人100执行各种导航和清洁行为,控制器电路109执行存储在存储器存储元件144上的软件,以通过操作机器人100的各种马达来使机器人100执行。控制器电路109操作机器人100的各种马达以使机器人100执行行为。
94.传感器系统可以进一步包括用于跟踪机器人100行进的距离的传感器。例如,传感器系统可以包括与用于驱动轮112的马达114相关联的编码器,并且这些编码器可以跟踪机器人100已经行进的距离。在一些实施方式中,传感器系统包括向下面向地板表面的光学传感器。光学传感器可以是光学鼠标传感器。例如,光学传感器可以被定位成将光通过机器人100的底表面引向地板表面10。光学传感器可以检测光的反射,并且可以随着机器人100沿着地板表面10行进时基于地板特征的变化来检测机器人100行进的距离。
95.控制器电路109使用由传感器系统的传感器收集的数据来在任务期间控制机器人100的导航行为。例如,控制器电路109使用由机器人100的障碍物检测传感器(例如,悬崖传感器134,接近传感器136a,136b,136c和碰撞传感器139a,139b)收集的传感器数据来使机器人100能够在执行任务期间在机器人100的环境中避免障碍物或防止从楼梯上掉下来。在一些示例中,控制器电路109使用关于环境的信息(诸如环境的地图)来控制机器人100的导航行为。通过适当的导航,机器人100能够尽可能有效且可靠地到达目标位置或完成覆盖任
务。根据本文讨论的各种实施例,控制器电路109可以包括覆盖计划器,其被配置为识别覆盖计划,例如路径,以使机器人100至少一次穿过环境的全部或特定部分,同时最小化或减少总行进时间。在本文件中,路径指的是包括一组线性路径段的轨迹,该线性路径段通过线性路径段之间的许多转动连接。机器人100转动以从一个线性路径段切换到另一线性路径段。为了减少机器人100的总行进时间,覆盖计划器可以识别包括通过线性路径段之间的若干转动连接的一组线性路径段的路径。覆盖计划器可以使用根据本文件中所述的各个实施例的环境划分和路径计划技术来确定与在基本正交的方向上具有至少一部分(例如在路径的两个部分之间大约80-100度的范围或大约60-120度的范围)的路径相比减少转动数量的路径。在某些示例中,两个或更多机器人的团队可以根据它们各自的路径共同覆盖环境。覆盖计划器可以标识相应的路径,从而使机器人团队中最慢的机器人所花费的时间最小化或减少。下面讨论覆盖计划器的示例以及识别转动数量减少的路径的方法,例如参考图4-15。
96.传感器数据可以由控制器电路109用于同时定位和映射(slam)技术,在该技术中,控制器电路109提取由传感器数据表示的环境的特征,并构建该环境的地板表面10的地图。由图像捕获装置140收集的传感器数据可以用于诸如基于视觉的slam(vslam)之类的技术,其中控制器电路109提取与环境中的物体相对应的视觉特征并使用这些视觉特征来构建地图。由于在执行任务期间控制器电路109在地板表面10周围引导机器人100,控制器电路109使用slam技术通过检测收集的传感器数据中表示的特征并将这些特征与以前储存的特征进行比较,从而确定机器人100在地图中的位置。由传感器数据形成的地图可以指示环境内可横越和不可横越空间的位置。例如,障碍物的位置在地图上被表示为不可横越的空间,而开放地板空间的位置在地图上被表示为可横越的空间。
97.由任何传感器收集的传感器数据可以存储在存储器存储元件144中。另外,为slam技术生成的其他数据,包括形成地图的地图数据,可以存储在存储器存储元件144中。任务期间产生的这些数据可以包括任务期间产生的持久数据,这些持久数据可以在另一任务中使用。例如,任务可以是第一任务,并且另一任务可以是在第一任务之后发生的第二任务。除了存储用于使机器人100执行其行为的软件之外,存储器存储元件144还存储传感器数据或由传感器数据的处理产生的数据,以供控制器电路109从一个任务到另一任务访问。例如,该地图可以是永久地图,该永久地图可由机器人100的控制器电路109从一个任务到另一任务使用和更新,以在地板表面10周围导航机器人100。根据本文件中讨论的各种实施例,可以响应于从用户接收到的指令命令来更新持久地图。控制器电路109可以根据更新的持久地图来修改机器人100的后续或将来的导航行为,例如通过修改计划路径或更新避障策略。下面讨论修改计划路径的示例,例如参考图10-12。
98.包括永久地图的永久数据使机器人100能够有效地清洁地板表面10。例如,永久地图使控制器电路109能够将机器人100引导向开放的地板空间并避免不可横越的空间。另外,对于后续任务,控制器电路109能够使用永久地图来计划机器人100在环境中的导航,以优化在任务期间采取的路径。
99.在一些实施方式中,机器人100可以包括位于机器人100的顶部142上的光指示器系统137。光指示器系统137可以包括位于覆盖碎屑箱124(在图2a中示出)的盖子147内的光源。可以定位光源以将光引导至盖子147的外围。定位光源,使得可以照亮机器人100的顶部142上的连续环143的任何部分。连续环143位于机器人100的顶部142的凹入部分上,使得光
源在被激活时可以照亮机器人100的表面。
100.图3是示出用于操作移动清洁机器人的控制架构300的示例的图。控制器电路109可以通信地联接到机器人100的各个子系统,包括通信系统305,清洁系统310,驱动系统110和导航传感器系统320。控制器电路109包括存储单元144,其存储由处理器324处理的数据和指令。处理器324从存储单元144接收程序指令和反馈数据,执行程序指令所要求的逻辑操作,并生成用于操作机器人100的各个子系统部件的命令信号。输入/输出单元326发送命令信号并从各种示出的部件接收反馈。
101.通信系统305可以包括信标通信模块306和无线通信模块307。信标通信模块306可以通信地联接到控制器电路109。在一些实施例中,信标通信模块306可操作以向远程设备发送信号和从远程设备接收信号。例如,信标通信模块306可以检测从导航或虚拟墙壁信标的发射器投影的导航信号或从对接站的发射器投影的归位信号。对接,限制,归位基座和归位技术在美国专利us7,196,487和us7,404,000,美国专利申请公开us20050156562,美国专利申请公开us20140100693中讨论(其全部内容通过引用并入本文)。如美国专利公开us2014/0207282(其全部内容通过引用并入本文)中所述,无线通信系统模块307有助于通过合适的无线网络(例如,无线局域网络)与一个或多个移动设备(例如,图4所示的移动设备404)通信描述机器人100的状态的信息。下面例如参考图4讨论通信系统305的更多细节。
102.清洁系统310可以包括辊马达120,驱动侧刷126的刷马达128以及为真空系统119供电的抽吸风扇马达316。清洁系统310进一步包括多个马达传感器317,其监视辊马达120,刷马达128和抽吸风扇马达316的操作,以促进通过控制器电路109对马达进行闭环控制。在一些实施例中,辊马达120由控制器电路109(或合适的微控制器)操作以根据特定速度设置经由闭环脉冲宽度调制(pwm)技术来驱动辊(例如,可旋转构件118),其中从马达传感器317接收反馈信号,马达传感器监测指示辊马达120的旋转速度的信号。例如,可以以马达电流传感器(例如,分流电阻器,电流感测变压器和/或霍尔效应电流传感器)的形式来提供这种马达传感器317。
103.驱动系统110可以包括用于响应于来自控制器电路109的驱动命令或控制信号来操作驱动轮112的驱动轮马达114,以及多个驱动马达传感器161,以促进对驱动轮的闭环控制(例如,通过如上所述的合适的pwm技术)。在一些实施方式中,分配给驱动系统110的微控制器被配置为解密具有x,y和θ分量的驱动命令。控制器电路109可以向驱动轮马达114发出单独的控制信号。无论如何,控制器电路109可以经由驱动轮马达114独立地控制每个驱动轮112的旋转速度和方向,从而跨过清洁表面沿任何方向操纵机器人100。
104.控制器电路109可以响应于从导航传感器系统320接收的信号来操作驱动系统110。例如,控制器电路109可以操作驱动系统110以重定向机器人100,以避免在处理地板表面时遇到障碍物和混乱。在另一示例中,如果机器人100在使用过程中被卡住或缠绕,则控制器电路109可以根据一个或多个逃逸行为来操作驱动系统110。为了实现可靠的自主运动,导航传感器系统320可以包括可以彼此结合使用的几种不同类型的传感器,以允许机器人100做出关于特定环境的智能决策。作为示例而非限制,导航传感器系统320可以包括一个或多个接近传感器336(例如接近传感器136a-136c),悬崖传感器134,视觉传感器324(例如图像捕获装置140),如上所述,其配置为检测操作环境中的特征和地标并构建虚拟地图,例如使用vslam技术。
105.导航传感器系统320还可以响应于保险杠138的激活而包括保险杠传感器339(诸如保险杠传感器139a和139b)。传感器系统320可以包括惯性测量单元(imu)164,其部分地响应于机器人100相对于基本垂直于地板的垂直轴线的位置的变化,并且感测机器人100何时俯仰在具有高度差异的地板类型界面上,这可能归因于地板类型的改变。在一些示例中,imu 164是具有陀螺仪传感器的六轴imu,其测量机器人100相对于垂直轴线的角速度。但是,也可以考虑其他合适的配置。例如,imu 164可以包括对机器人100沿垂直轴线的线性加速度敏感的加速度计。无论如何,来自imu 164的输出被控制器电路109接收并且被处理以检测机器人100行进跨过的地板表面中的不连续性。在本公开的上下文中,术语“地板不连续性”和“阈值”是指机器人100可横越但会导致离散的垂直运动事件(例如,向上或向下的“颠簸”)的地板表面中的任何不规则性(例如,地板类型的改变或地板界面处的高度的改变)。取决于imu 164的配置和位置,垂直运动事件可以指驱动系统的一部分(例如,驱动轮112之一)或机器人壳体108的底盘。地板阈值或地板界面的检测可以促使控制器电路109预期地板类型的改变。例如,当机器人100从高绒毛地毯(软地板表面)移动到瓷砖地板(硬地板表面)时,机器人100可能经历显着的向下垂直颠簸,而在相反情况下,机器人100可能经历向上的颠簸。
106.尽管未示出或未结合所示出的示例描述,但是各种各样的其他类型的传感器可以结合在导航传感器系统320(或任何其他子系统)中,而不脱离本公开的范围。这样的传感器可以用作障碍物检测单元,障碍物检测避障(odoa)传感器,轮掉落传感器,障碍物跟随传感器,失速传感器单元,驱动轮编码器单元,保险杠传感器等。
107.通信网络示例
108.图4a是通过示例而非限制地示出使移动机器人100与一个或多个其他设备(诸如移动设备404,云计算系统406或与移动机器人404独立的另一自主机器人408)之间联网的通信网络的图。使用通信网络410,机器人100,移动设备404,机器人408和云计算系统406可以彼此通信以相互发送数据并从彼此接收数据。在一些实施方式中,机器人100,机器人408或机器人100和机器人408两者都通过云计算系统406与移动设备404通信。替代地或附加地,机器人100,机器人408或机器人100和机器人408两者直接与移动设备404通信。通信网络410可以采用无线网络(例如,蓝牙,射频,基于光学的等)和网络架构(例如,网状网络)的各种类型和组合。
109.在一些实施方式中,如图4所示的移动设备404是可以链接到云计算系统406的远程设备,并且可以使用户能够在移动设备404上提供输入。移动设备404可以包括用户输入元件,例如,响应于用户提供的输入的触摸屏显示器,按钮,麦克风,鼠标,键盘或其他设备中的一个或多个。移动设备404可替代地或另外地包括用户与之交互以提供用户输入的沉浸式媒体(例如,虚拟现实)。在这些情况下,移动设备404例如是虚拟现实耳机或头戴式显示器。用户可以提供与用于移动机器人404的命令相对应的输入。在这种情况下,移动设备404向云计算系统406发送信号,以使云计算系统406向移动机器人100发送命令信号。在一些实施方式中,移动设备404可以呈现增强现实图像。在一些实施方式中,移动设备404是智能电话,膝上型计算机,平板计算设备或其他移动设备。
110.根据本文讨论的各种实施例,移动设备404可以包括被配置为显示机器人环境的地图的用户界面。诸如由控制器电路109的覆盖计划器标识的机器人路径也可以显示在地
图上。该界面可以接收用户指令以修改环境地图,例如通过添加,移除或以其他方式修改环境中的禁止横越区域;添加,删除或以其他方式修改环境中的重复横越区域(例如需要反复清洁的区域);在部分环境中限制机器人的横越方向或横越图案;或增加或改变清洁等级等。
111.在一些实施方式中,通信网络410可以包括另外的节点。例如,通信网络410的节点可以包括附加的机器人。替代地或附加地,通信网络410的节点可以包括网络连接的设备。在一些实施方式中,网络连接的设备可以生成关于环境20的信息。网络连接的设备可以包括一个或多个传感器,以检测环境20中的特征,例如声传感器,图像捕获系统或生成可以从中提取特征的信号的其他传感器。网络连接的设备可以包括家用摄像机,智能传感器等。
112.在图4所示的通信网络410中以及在通信网络410的其他实施方式中,无线链路可以利用各种通信方案,协议等,例如,蓝牙类,wi-fi,低蓝牙能源,也称为ble,802.15.4,全球微波访问互操作性(wimax),红外信道或卫星频段。在某些情况下,无线链路包括用于在移动设备之间通信的任何蜂窝网络标准,包括但不限于符合1g,2g,3g或4g的标准。如果使用网络标准,则通过满足规范或标准(例如由国际电信联盟维护的规范),可以将网络标准作为例如一代或多代移动电信标准。如果使用了3g标准,则它对应于例如国际移动电信2000(imt-2000)规范,而4g标准可以对应于国际高级移动电信(imt-advanced)规范。蜂窝网络标准的示例包括amps,gsm,gprs,umts,lte,高级lte,移动wimax和高级wimax。蜂窝网络标准可以使用各种信道访问方法,例如fdma,tdma,cdma或sdma。
113.图4b是示出了在通信网络410中的设备之间交换信息的示例性过程400的图,设备包括移动机器人100,云计算系统406和移动设备404。清洁任务可以通过按下移动机器人100上的按钮来发起,或者可以被安排为将来的时间或将来的一天。用户可以在清洁任务期间选择要清洁的一组房间,或者可以指示机器人清洁所有房间。用户还可以选择在清洁任务期间在每个房间中使用的一组清洁参数。
114.在清洁任务期间,移动机器人100跟踪410其状态,包括其位置,在清洁期间发生的任何操作事件以及花费的清洁时间。移动机器人100将状态数据(例如,位置数据,操作事件数据,时间数据中的一个或多个)发送412到云计算系统406,云计算系统406由处理器442计算414要清洁的区域的时间估计。例如,可以通过对房间的多次(例如两次或更多次)先前清洁任务期间已经收集的房间的实际清洁时间进行平均来计算清洁房间的时间估计。云计算系统406将时间估计数据与机器人状态数据一起发送416到移动设备404。移动设备404通过处理器444在显示器上呈现418机器人状态数据和时间估计数据。机器人状态数据和时间估计数据可以作为许多图形表示可编辑任务时间线和/或映射界面中的任何呈现在移动设备的显示器上。
115.用户402在显示器上查看420机器人状态数据和时间估计数据,并且可以输入422新的清洁参数,或者可以操纵要清洁的房间的顺序或标识。用户402可以例如从移动机器人100的清洁时间表中删除房间。在其他情况下,用户402可以例如对要清洁的房间选择边缘清洁模式或深度清洁模式。当用户输入清洁参数或清洁时间表的变化时,移动设备404的显示更新424。例如,如果用户将清洁参数从单程清洁更改为双程清洁,则系统将更新估计时间以提供基于新参数的估计。在单程清洁与双程清洁的此示例中,估计值将大约翻倍。在另一个示例中,如果用户从清洁计划中移走了房间,则总时间估计值大约减少了清洁移走的
房间所需的时间。基于来自用户402的输入,云计算系统406计算426要清洁的区域的时间估计,然后将该时间估计发送428(例如,通过无线传输,通过应用协议,通过广播无线传输)回到移动设备404并显示。另外,与所计算426的时间估计有关的数据被发送446到机器人的控制器430。基于移动机器人100的控制器430接收到的来自用户402的输入,控制器430生成432命令信号。命令信号命令移动机器人100执行434行为,该行为可以是清洁行为。执行清洁行为时,控制器继续跟踪410机器人状态,包括其位置,在清洁期间发生的任何操作事件以及花费的清洁时间。在一些情况下,可以经由推送通知另外向移动设备或家用电子系统(例如,交互式扬声器系统)提供与机器人的状态有关的实时更新。
116.在执行434行为之后,控制器430检查436以查看所接收的命令信号是否包括用于完成清洁任务的命令。如果命令信号包括完成清洁任务的命令,则命令机器人返回其对接站,并且在返回时发送信息以使云计算系统406能够生成438任务概要,该任务概要被发送至移动设备404并由移动设备404显示440。任务概要可以包括时间线和/或地图。时间线可以显示,清洁的房间,清洁每个房间花费的时间,每个房间中跟踪的操作事件等。该地图可以显示清洁的房间,每个房间中跟踪的操作事件,在每个房间中执行的清洁的类型(例如,扫地或拖地)等。
117.可以以分布式方式执行用于本文中描述的过程400和其他过程的操作。例如,云计算系统406,移动机器人100和移动设备404可以彼此协作地执行一个或多个操作。在一些实施方式中,描述为由云计算系统406,移动机器人100和移动设备404中的一个执行的操作至少部分地由云计算系统406,移动机器人100,和移动设备404中的两个或全部执行。
118.移动机器人预测性维护(pdm)系统示例
119.下面参考图5-17讨论诸如移动机器人100之类的马达清洁机器人的预测性维护的系统,设备和过程的各种实施例。尽管一些部件,模块和操作可以描述为在机器人100中实现并由机器人100执行,由用户,由计算设备或由其他参与者执行,但在某些实施方式中,这些操作可以由描述的那些之外的其他参与者执行。例如,在一些实施方式中,由机器人100执行的操作可以由云计算系统406或另一计算设备(或多个设备)执行。在其他示例中,由用户执行的操作可以由计算设备执行。在一些实施方式中,云计算系统406不执行任何操作。相反,其他计算设备执行被描述为由云计算系统406执行的操作,并且这些计算设备可以彼此(以及与机器人100)进行直接(或间接)通信。在一些实施方式中,除了被描述为由机器人100执行的操作之外,机器人100还可以执行被描述为由云计算系统406或移动设备404执行的操作。其他变型是可能的。此外,尽管在此描述的方法,过程和操作被描述为包括某些操作或子操作,但是在其他实施方式中,可以省略这些操作或子操作中的一个或多个,或者可以添加另外的操作或子操作。
120.图5是示出了移动机器人pdm系统500的示例的图。系统500可以被配置为评估移动清洁机器人中的清洁头组件(诸如移动机器人100的清洁头组件116)的健康状态。作为示例而非限制,清洁头的健康状态可以包括关于清洁头组件或其清洁构件的碎屑累积水平,磨损水平和剩余使用寿命的信息。
121.系统500可以包括数据接收器510,处理器电路520,存储器电路530和用户界面540中的一个或多个。系统500的至少一部分可以在移动机器人100,移动设备404,自主机器人408或云计算系统406中的一个或多个中实现。例如,在一个实施例中,系统500的一些或全
部可以在移动机器人100中实现并由其执行,其中,参考图3,数据接收器510可以是联接到传感器系统320以接收机器人数据的输入/输出单元326的一部分,处理器电路520可以是处理器324的一部分,而存储器电路530可以是移动机器人100中的存储单元144的一部分。在另一实施例中,系统500的一些或全部可以在移动设备404中实现并由其执行,例如通信联接到移动机器人100的智能电话,其中数据接收器510可以被配置为从移动机器人100通过通信链路接收机器人数据。智能电话中的存储器电路530可以存储地板地图和关于地板表面状况的信息。处理器电路520可以在智能电话上执行应用程序(“app”)以确定清洁头状态,和/或估计清洁头的剩余使用寿命,以及其他预测性维护任务。
122.数据接收器510可以接收由移动清洁机器人在其主动操作期间(例如,横越环境(例如房屋)并在该环境中清洁地板区域时)产生的机器人数据。数据接收器510可以联接到一个或多个传感器,例如马达传感器317,其被配置为感测并获取指示清洁头组件的操作状态的机器人数据。机器人数据的示例可以包括测量提供给驱动清洁头组件的清洁构件的马达(例如,驱动可旋转构件118的辊马达120或驱动驱动侧刷126的刷马达128)的电压,马达电流例如由马达电流传感器(例如,分流电阻器,电流感测变压器和/或霍尔效应电流传感器)感测的电流,清洁构件的角速度,马达转速或在清洁构件处产生的扭矩。在一个示例中,可以使用位于马达的转子处或沿着马达与清洁构件之间的传动系的位置处的编码器传感器来测量转速。编码器技术的示例可以包括光学,电阻,电容或电感测量。在一个示例中,可以使用一个或多个应变计(例如安装在马达上或沿着驱动马达之间的传动系的位置处)来测量扭矩负载,或使用由马达汲取的电流来估计扭矩负载。
123.在一些示例中,传感器数据的测量(例如,马达电流或角速度)可以被转换成一个或多个频域度量,例如主频,共振或频谱密度等。例如,清洁构件(例如,可旋转构件118)通常是由柔性材料构造的圆柱形元件,并且因此在被激发时表现出机械共振。这些共振或其他频域特性的变化可用于估计碎屑累积水平或磨损水平。
124.处理器电路520可以执行pdm任务,包括确定清洁头状态,以及决定是否需要维护或更换清洁头。处理器电路520可以被实现为微处理器电路的一部分,该微处理器电路可以是专用处理器,例如数字信号处理器,专用集成电路(asic),微处理器,或用于处理包括物理活动信息的信息的其他类型的处理器。替代地,微处理器电路可以是处理器,其可以接收并执行用于执行本文中描述的功能、方法或技术的一组指令。
125.处理器电路520可以包括电路组,该电路组包括一个或多个其他电路或子电路,例如空间滤波器522,机器人参数生成器524,清洁头状态检测器526和剩余寿命估计器528。这些电路或模块可以单独或组合地执行本文描述的功能,方法或技术。在示例中,电路组的硬件可以被不变地设计为执行特定的操作(例如,硬连线)。在示例中,电路组的硬件可以包括可变地连接的物理部件(例如,执行单元,晶体管,简单电路等),包括物理地修改(例如,磁地,电学,可移动地放置不变质量的粒子等)的计算机可读介质,以对特定操作的指令进行编码。在连接物理部件时,硬件构成的基础电性能会发生变化,例如从绝缘体更改为导体,反之亦然。指令使嵌入式硬件(例如,执行单元或加载机制)能够通过可变连接在硬件中创建电路组的构件,以在操作时执行特定操作的一部分。因此,当设备工作时,计算机可读介质通信地联接到电路组构件的其他部件。在一个示例中,任何物理部件可以在一个以上电路组的一个以上构件中使用。例如,在操作下,执行单元可以在一个时间点用在第一电路组
的第一电路中,并且可以在不同时间由第一电路组中的第二电路或第二电路组中的第三电路重用。
126.空间滤波器522可以处理接收到的机器人数据,并且提取所述机器人数据的与移动机器人所横越的地板区域相对应的部分。地板区域可以具有特定的地板表面状况。在本文中,“表面状况”尤其可以包括地板区域的空间,几何和纹理信息。地板区域的表面状况的示例可以包括特定的空间位置(例如,特定的房间或区域,例如厨房,或房间中的子区域,例如房间或部分环境的网格化地图中的一个或多个m乘n区域);具有特定大小,形状或尺寸的地板区域;或具有特定表面类型的地板区域(例如,硬木或地毯)。
127.存储器电路530可以存储包括关于环境中不同地板区域的地板表面状况532的信息的地板地图。地板区域和相应的地板表面状况可以在地板图上标记或以其他方式标识。用户可以在地板地图上指定具有已知表面状况并由移动机器人反复横越和清洁的地板区域,或者为空间滤波器522指定具有相同表面状况(例如,相同表面类型)的多个地板区域。例如,用户可以在地板地图上选择走廊中具有硬木表面的地板区域。基于地板地图和指定地板区域的位置,空间滤波器522可以提取与行进跨过并清洁指定地板区域的移动机器人相对应的数据部分。
128.在一些示例中,用户可以将对接站的平台表面指定为关注区域。当移动机器人在命令的“刷特征模式”下运行时,可以获取机器人数据,在该模式下,移动机器人执行“清洁”操作(即,清洁构件可旋转地接合对接站的平台表面),而移动清洁机器人在对接站上保持静止。
129.如上所述,机器人数据,例如刷马达电压,清洁构件的电流和转速,由清洁构件与地板表面的相互作用所决定。通过分析与具有固定和已知表面状况(或“受控”表面状况)的特定地板区域相对应的机器人数据部分,可以将由于碎屑和磨损引起的部件与机器人数据隔离开。因此,由空间滤波器522进行的空间滤波提供了用于消除地板相互作用的影响以及碎屑累积和清洁头的磨损对测量的机器人数据的影响的手段。与地毯表面相比,硬表面(例如,硬木地板,瓷砖或对接站的平台表面)更光滑且更坚硬,并且不太可能吸引和保留错误的细丝,例如头发和地毯纤维。这样,当在硬表面上操作时,清洁构件通常在硬表面上经受的摩擦小于在地毯上经受的摩擦,并且清洁头-地板相互作用对所测量的机器人数据的影响通常不那么显着并且更可预测。在一些示例中,空间滤波器522可以提取与仅具有硬地板表面并且由移动机器人反复横越的地板区域相对应的机器人数据部分。
130.除了或代替诸如地板区域的空间、几何和纹理信息之类的表面状况,空间滤波器522可以基于移动清洁机器人横越特定地板区域的模式来提取机器人数据部分。横越模式的示例可以包括覆盖路径(例如,进入和离开地板区域的位置和方向,以及地板区域内的路径取向),横越图案(例如,路径的顺序或排列)或横越速度。在一个示例中,用户可以在地板地图上指定由移动机器人反复横越和清洁的地板区域以及指定的覆盖路径或横越图案。空间滤波器522可以根据指定的横越路径或图案提取与行进跨过并清洁指定的地板区域的移动机器人相对应的数据部分。在另一示例中,用户可以指定移动机器人的地板区域以及横越速度要求。例如,空间滤波器522可以提取与在全速行进的同时清洁指定地板区域的移动机器人相对应的数据部分。
131.在一些示例中,空间滤波器522可以可替代地提取机器人数据的与清洁任务的特
定阶段相对应的部分。清洁任务通常从解除对接环节开始,在此期间清洁机器人从对接站出发,然后进行清洁阶段,包括对环境中多个区域进行一系列地板清洁,然后在对接阶段结束,在对接阶段中清洁机器人返回到对接站。对接站用作移动清洁机器人开始和结束清洁环节的标志。现在参考图6,在清洁任务之前,清洁机器人100保持在对接站610的平台612上。清洁任务以解除对接阶段开始,此时移动清洁机器人100离开对接站610并且沿反方向632沿着解除对接路径620a向后行进。在对接期间,移动机器人100可以主动清洁解除对接路径620a的地板表面。当移动机器人100后退一定距离时,解除对接阶段结束。然后,移动机器人100沿方向640旋转特定角度,相对于对接站610从面向前的方向切换为面向后的方向,然后向前行驶以继续执行清洁任务。
132.在对接阶段期间,移动机器人100沿着对接路径620b沿向前方向634行进,同时主动清洁对接路径620b的地板表面。在接近对接站610时,移动机器人100相对于对接站610从面向前的方向旋转到面向后的方向,并返回对接站610的平台612上以完成清洁任务。
133.解除对接路径620a和对接路径620b可以分别是具有确定的地板状况的直线路径。解除对接和对接操作可在不同的清洁任务上重复进行,使得移动机器人100在解除对接期间以固定和已知的地板表面状况覆盖基本相同的解除对接路径620a,并且类似地在对接期间以固定和已知的地板表面状况覆盖基本相同的对接路径620b。在一些示例中,解除对接路径620a和对接路径620b可以是相同的路径。当移动机器人100横越解除对接路径620a并清洁其地板表面时,空间滤波器522可以识别并提取与解除对接阶段相对应的机器人数据的第一部分。另外地或可替代地,当移动机器人100横越对接路径620b并清洁其地板表面时,空间滤波器522可以识别并提取与对接阶段相对应的机器人数据的第二部分。由于对接和解除对接路径是具有已知且基本固定的地板表面状况的确定性地板区域,因此基于对接或解除对接阶段的机器人数据的空间滤波即使在没有地板地图的情况下也可以有效地控制不同清洁任务的地板状况。由于其与要求地板地图以识别在清洁任务中具有受控(即,基本上固定的)表面状况的地板区域的空间滤波相比的简单性,这可能是有利的。对于缺乏创建或存储地板地图能力的非映射移动机器人,这也可能是有益的。
134.在一些示例中,空间滤波器522可以附加地或替代地识别并提取与关于对接或解除对接的指定时间段,例如紧接在解除对接阶段之后的t1秒,或者紧接在对接阶段之前的t2秒相对应的机器人数据的第三部分。尽管清洁阶段通常与可变的(或特定于任务的)路径和具有可变的地板表面状况的可变的地板区域相关联,但是在清洁阶段的某些部分(例如在时间上接近对接和解除对接阶段)期间,移动机器人更有可能基本覆盖具有相同地板区域状况的相同地板区域,因此可用于机器人数据的空间滤波。
135.再次参考图5,机器人参数生成器524可以使用所接收的机器人数据的与具有特定表面状况的地板区域相对应的部分来确定机器人参数。在一个示例中,机器人参数可以包括驱动清洁头以可旋转地接合地板区域的地板表面,搅动并提取碎屑的清洁头马达,例如驱动可旋转构件118的辊马达120或驱动侧刷126的刷马达128消耗的功率(p)。除了对应于地板交互作用和清洁的第一功率分量(p1)外,功耗p还可以包括第二功率分量p2,也称为干扰功率,用于克服由于累积在清洁头中的碎屑而产生的摩擦或张力(例如,错误的细丝缠绕在辊或旋转的刷周围)。干扰功率p2可以与碎屑累积水平相关。另外,清洁头的磨损或损坏,例如用于搅动地板表面的可旋转构件118上的刷毛或翼片,也会影响马达功率。例如,与具
有完全脊状的翼片或厚而有弹性的刷毛的清洁构件相比,具有扁平的翼片或软而钝的刷毛的磨损或损坏的清洁构件在地板接合期间遇到的摩擦较小,因此可以用更少的功率更容易地由马达驱动。因此,马达功率p或其分量(例如,干扰功率p2)可用于确定清洁头组件的清洁构件的磨损程度。
136.可以使用驱动清洁构件的马达的电参数测量来计算马达功率。例如,可以根据马达电流,电池电压和马达速度中的一项或多项来计算马达功率。在一些示例中,辊马达120或刷马达128可通过闭环脉冲宽度调制(pwm)技术根据特定的速度设置来驱动相应的清洁构件,并且马达功率p可基于提供给辊马达120或刷马达128的测量电压,在各个马达处产生的测量电流,以及馈送到各个马达的pwm控制信号特性(例如切换频率或占空比)来计算。共同转让的题为“具有地板类型检测的移动地板清洁机器人(mobile floor-cleaning robot with floor-type detection)”的美国专利us9,993,129描述了使用马达参数确定马达功率的技术,该专利的描述通过引用整体并入本文。
137.在一些示例中,机器人参数生成器524可以确定由清洁头马达消耗的能量(e),以横越并清洁具有特定表面状况的整个或部分地板区域。马达能量(e)可以计算为移动机器人可横越清洁地板区域随时间推移的功率(p)的整数,。与包括p1和p2分量的马达功率(p)相似,马达能量(e)可以包括与清洁构件与地板表面的相互作用相对应的第一能量分量(e1)和克服清洁期间清洁头中累积的碎屑引起的摩擦的第二干扰能量分量(e2)。
138.如上所述的马达功率和马达能量是可用于确定清洁头的状态的机器人参数的非限制性示例。在各种示例中,机器人参数生成器524可以生成其他机器人参数,这些机器人参数表示地板-清洁头的相互作用(例如,清洁构件处产生的扭矩),空间滤波的机器人数据的统计特征(例如,在地板区域的横越期间的平均马达电流),或空间滤波的机器人数据的频域特征(例如,横越地板区域期间电流测量的主频率或峰值频谱密度)。
139.清洁头状态检测器526可以基于所确定的机器人参数来确定清洁头的状态。清洁头状态指示清洁构件(例如,可旋转构件118或侧刷126)的磨损水平或碎屑累积水平中的至少一个。在示例中,机器人参数生成器524可以生成与由移动清洁机器人重复横越相同地板区域相对应的机器人参数的多次测量(例如,马达功率或马达能量)。重复横越相同的地板区域可以发生在多个清洁任务上,分别由移动清洁机器人横越相同的地板区域。在一个示例中,清洁头状态检测器526可以基于机器人参数的趋势来确定清洁头的状态,例如在监视周期期间执行多个清洁任务。附加地或可替代地,在一个清洁任务中可以发生相同地板区域的重复横越,例如在一个任务中重复清洁用户指定的环境中的重复横越区域。清洁头状态检测器526可以基于机器人参数的多个测量来确定清洁头的状态。下面讨论诸如参考图7a-7b的基于机器人参数趋势确定清洁头状态的示例。
140.清洁头状态检测器526可以另外地或替代地基于清洁头马达的动态响应来确定清洁头的状态。当移动机器人在固定的已知位置操作,并且马达激励清洁头使清洁构件以与在清洁任务期间现场机器人类似的方式与地板表面相互作用,但是不执行有用的清洁时,可以测量动态响应。这种操作模式在下文中称为清洁头表征模式,以与现场操作中的常规清洁模式区分开。下面例如参照图9a-9c讨论基于机器人在清洁头表征模式下操作时清洁头马达的动态响应来确定清洁头状态的示例。
141.剩余寿命估计器528可以生成清洁构件的剩余使用寿命(erl)的估计。在一个示例
中,可以使用回归模型来估计erl,该模型将清洁头的剩余使用寿命与用作剩余使用寿命的代理的信号相关联。可以使用历史数据(例如代理信号特性和相应的剩余寿命,例如由人类专家提供的)来生成模型。图10是示出用于估计清洁构件的erl的线性回归模型的示例的图。如图10所示,可以使用在受控状况(例如,已知的地板表面状况)下收集的训练数据1010来生成线性回归模型。训练数据1010的每个数据点代表对于对应代理信号值(x轴)的估计erl值(y轴)。代理信号的示例可以包括来自空间滤波器522的一个或多个过滤的机器人数据(例如,马达电流,角速度,扭矩),其对应于具有特定地板状况的特定地板区域,例如由机器人参数生成器524确定的机器人参数,或过滤的机器人数据或机器人参数的度量(例如,机器人参数的趋势),或当机器人在清洁头表征模式下操作时清洁头马达的动态响应。替代地,可以使用非线性回归模型,例如多项式,指数或对数回归模型之一。可以使用最小二乘法,最小绝对偏差或贝叶斯回归方法等估计回归模型的参数,例如回归线1020的斜率和截距。剩余寿命估计器528可以从训练数据1010中另外确定估计erl对代理信号值的置信区间,如置信线1030和1040所示。在一个示例中,置信线1030和1040定义了关于回归线1020的95%置信带。剩余寿命估计器528可以使用生成的回归模型来预测或推断测量的代理信号值的剩余使用寿命。
142.在一些示例中,可以使用由“虚拟传感器”估计的参数来估计erl,例如与清洁头中的碎屑累积或磨损或损坏有关的在旋转的清洁头上产生的扰动扭矩。虚拟传感器,干扰扭矩和erl确定的示例在下面进行了讨论,例如参考图12。
143.用户界面540可以使用户能够提供用于控制移动机器人的操作的输入,并向用户通知机器人的操作状态和健康状态,例如清洁头的状态和/或清洁头的erl。在示例中,用户界面540可以被集成到通信联接到移动机器人100的移动设备404中。如上所述,可以以智能电话的形式来提供移动设备404,该智能电话可操作以执行在显示屏上显示从机器人100接收到的状态信息的软件应用(“app”)。现在参考图11a-11b,其以非限制性示例的方式示出了智能电话1100的用户界面,即移动设备404的示例。如图11a所示,可以在显示屏1102上显示辊清洁构件118或侧刷126的磨损或损坏的状态或水平的警告。可以经由文本1104用户界面元素和图形1106用户界面元素中的一个或多个来提供警告。相似的用户界面元素可以部署在显示屏1102上,以指示碎屑累积在清洁构件118或侧刷126中的状态或水平。可以在显示屏1102上显示其他消息,例如响应于确定的碎屑累积水平推荐清洁清洁构件,或基于确定的磨损水平建议更换清洁构件。在示例中,当检测到的清洁头状态(例如碎屑水平或磨损水平)超过相应阈值时,或者当erl降至阈值以下时,可以生成警告或推荐消息。在一些示例中,推荐包括切换到与磨损的清洁头不同型号或类型的清洁头或清洁构件。例如,如果推荐的更换次数超过某个频率,则可以向用户显示一条消息以推荐不同的清洗头。图11b示出了显示屏1102,其提供一个或多个“一键式”选择选项1108,其提示用户购买新的清洁头(例如,清洁辊)以替换例如由于过度磨损或损坏而不再正常工作的当前组。此外,在所示示例中,文本用户界面元素1110呈现与相应的在线供应商的名称一起表示的一个或多个定价选项。
144.在前述示例中,由移动设备1100执行的软件应用被示出和描述为向用户提供需要维护机器人100的警告类型指示。在某些示例中,软件应用程序可以配置为定期(例如以预定的时间间隔)提供状态更新,或者在接收到用户对移动机器人的健康状态(例如清洁头的
碎屑或磨损水平)的询问后提供状态更新。
145.确定清洗头状态的方法示例
146.下面参考图7a-7b,8和9a-9c讨论用于确定清洁头状态的方法的各种实施例,诸如从磨损或损坏水平差异地确定碎屑累积水平。图7a是示出了基于诸如由机器人参数生成器524确定的机器人参数的趋势来确定清洁头状态的示例性方法710的图。该处理的至少一部分可以由清洁头状态检测器526执行。本发明人已经认识到,清洁头的碎屑累积和磨损导致马达参数(例如马达功率或马达能量)的变化方式不同。例如,磨损和碎屑累积可以在不同的时间尺度上作用于机器人参数,并且参数趋势可以表现出不同的变化方向(即具有不同代数符号的斜率)。如方法710中所用,用于检测清洁头的碎屑累积和磨损状态的机器人参数的示例是马达能量。在711,可以计算由驱动辊马达120或刷马达128以可旋转地清洁具有特定表面状况的特定地板区域的马达产生的能量。如前所述,可以使用与特定地板区域相对应的机器人数据来计算马达能量,例如提供给马达的电压,电流输出或pwm控制信号特性中的一项或多项以及移动机器人清洁地板区域所花费的时间。
147.在712处,可以接收到对清洁头执行维护的指示,例如辊马达120或刷马达128被从移动机器人中取出的指示(例如,用于清洁,维修或更换)。维护指示可以由用户例如经由用户界面540提供。可替代地,可以是处理器电路520的一部分的维护检测器电路可以自动检测正在执行的清洁头的维护,下面参考图8描述其示例。
148.可以使用对机器人数据和历史机器人数据的电流测量来趋势化马达能量,或者可以当马达机器人横越具有特定地板状况(例如,特定地板大小,尺寸或地板类型)的相同地板区域时随时间趋势化,例如在多次清洁任务中或者在一次任务中重复清洁用户指定的重复横越区域。马达能量可能会在不同的时间范围内变化。在713处,在两个连续的维护服务之间的第一监视时段期间,可以通过多个清洁任务来趋势化马达能量。在714处,可以将马达能量趋势与预定的或用户指定的碎屑检测标准进行比较。例如,如果检测到增加趋势,或者如果马达能量超过碎屑指示的能量阈值,则在715处,视为检测到碎屑累积状态。可以生成警告并将其报告给用户。在一些示例中,多个碎屑指示的能量阈值可以用于将碎屑累积分类为多个碎屑水平之一。如果未检测到增加趋势,或者马达能量未超过碎屑指示的能量阈值,则视为清洁头是干净的,并且没有碎屑累积状态。马达能量的趋势可以在713处继续。
149.在716处,马达能量可以附加地或替代地在第二时间范围内通过多个清洁任务而趋势化。第二时间范围可以长于第一时间范围。在使用几天或几周后,污垢和错误的细丝通常会累积在清洁头中,并且磨损通常在数月后发生。这样,在第一短时间范围内的能量趋势可以用于检测碎屑累积水平,而在第二较长时间范围内的能量趋势可以用于检测清洁头的磨损水平。在一个示例中,第一时段为数周(例如1-3周),第二时段为数月(例如1-6个月)。
150.为了改善磨损水平确定的性能,当清洁头处于基本相同的任务前碎屑状态时,可以在清洁任务上生成716处的长期能量趋势。在一个示例中,马达能量趋势包括与多个清洁任务相对应的马达能量值,每个马达清洁任务相对于在清洁头上执行的维护服务在特定时间发生,例如在清洁头的维护之后或之前。任务前的碎屑状态受控可以帮助减少马达能量短期增加(可能与碎屑堆积有关)对长期减少趋势(可能与磨损有关)的影响。
151.与代表碎屑累积的马达能量的短期增加相反,磨损的清洁头可能会在清洁构件(例如,挡板,金属屑或刷毛)与地板之间产生较小的相互作用力,从而降低清洁头马达上的
负载扭矩。这可以通过马达能耗随时间的减少趋势(或负斜率)来表示。在717处,可以将马达能量趋势与磨损检测标准进行比较。例如,如果检测到减少趋势,或者如果马达能量降低到磨损指示的能量阈值以下,则在718处,视为检测到磨损状态。可以生成警告并将其报告给用户。如果未检测到减少趋势,或者马达能量未降低到磨损指示的能量阈值以下,则不会声明磨损状态,并且马达能量的趋势可在716处继续。
152.图7b通过非限制性示例示出了根据图7a的步骤713在第一监视时段t1期间的短期能量趋势720,以及根据图7a的步骤716在第二监视时段t2期间的长期能量趋势730。每个马达能量值都对应清洁任务。例如,能量值722对应于t1期间的第k次清洁任务。在一个示例中,t1可以为数周(例如1-3周)的数量级。在一个示例中,监视时段t1可以被定义为两个连续维护服务之间的时间范围。清洁头的维护时间可以从步骤712获得。在t1期间,第一次清洁任务在清洁头维护之后进行,最后一次清洁任务在下一次维护之前进行。
153.碎屑的累积会导致清洁头马达上的负载扭矩增加,这可以通过随时间推移马达作用力或马达能耗的增加趋势723(或正斜率)来表示。在一个示例中,清洁头状态检测器526可以在第一监视时段内比较不同任务下的马达能量值,并基于马达能量的增加量或增加比率(例如,增加趋势723的斜率)确定碎屑累积的状态,或分类累积的不同水平。替代地,清洁头状态检测器526可以将马达能量值与碎屑指示的能量阈值725进行比较,并且如果马达能量值超过阈值725,则确定碎屑累积的状态。
154.可以在比第一监视时段t1更长的第二监视时段t2期间生成长期能量趋势730。第二监视时段t2可以足够长以覆盖清洁头的多个维护环节期间的清洁任务,使得每个短期能量趋势720是长期能量趋势730的子集。如图7b所示,长期能量趋势730可以包括多个短期能量趋势720,其由清洁头的维护环节分开,每个维护环节重置清洁头状态。清洁头状态检测器526可以基于第二监视时段期间马达能量的减少量或减少速率(例如,上升趋势723的斜率)来确定清洁头的磨损状态。替代地,清洁头状态检测器526可以将马达能量值与能量阈值735进行比较,并且如果马达能量值降低至阈值735以下,则确定磨损的状态。在一些示例中,可以使用多个磨损阈值来对不同的磨损水平进行分类。
155.图8是示出自动维护检测的图,方法710的步骤712的示例。维护检测器电路可以联接到一个或多个传感器,以检测对清洁头执行的维护的指示。在一个示例中,维护检测器电路联接至开关以检测可释放地将旋转清洁构件118锁定在清洁头组件壳体中的闩锁812的打开,清洁构件118的移除,和清洁构件118(例如,清洁或维修)或更换的清洁构件118的重新安装。附加地或可替代地,维护检测器电路联接到陀螺仪或加速度计传感器,以检测与维护动作(例如,移动清洁机器人100的翻转或旋转)兼容的移动清洁机器人100的取向,或驱动轮112不与地面接触的状态。基于检测到的维护指示,清洁头状态检测器526可以在检测到的维护之前或之后立即使用用于那些清洁任务的马达能量值来生成长期能量趋势720,并基于诸如以上参考图7a-7b所述的趋势确定清洁头的磨损水平。
156.图9a-9c示出了基于清洁头马达的动态响应来确定清洁头状态的示例性方法。当移动机器人以清洁头表征模式操作时,可以测量动态响应。图9a示出了清洁头表征模式的示例,在该模式下,移动机器人100在对接站610上保持静止。机器人100的清洁构件可旋转地接合对接站的平台表面612。因为对接平台612具有已知表面状况的固定位置,所以移动机器人所经历的地面状况(例如,不同的地面类型)的空间影响在控制之下。对接平台通常
具有坚硬且光滑的表面,或者可以专门设计为具有坚硬且光滑的表面。这可以帮助控制和减少马达功率分量p1或能量分量e1。在一些示例中,清洁构件被驱动为使得其旋转但是不主动地搅动和提取碎屑。这样,马达功率p或能量消耗e分别较少地由马达功率分量p1和能量分量e1决定。取而代之的是,由于清洁头的碎屑累积或磨损状态,马达功率p和能量消耗e分别由功率或能量消耗决定。
157.图9b示出了检测清洁头状态检测的示例性过程,清洁头状态检测的至少一部分可以由清洁头状态检测器526执行。在910,确认移动机器人在对接平台上。在920,将诸如激励电压u(t)的激励信号施加至马达。激励信号可以是阶跃函数,也可以是扫掠的正弦曲线等,其目的是激发揭示清洁头的碎屑累积或磨损的动态。在930处,可以使用输入电压u(t)和合成马达电流输出i(t)来确定马达动态响应,例如频率响应。在940,可以将马达动态响应拟合到参数模型(f)中。模型f可以是一个或多个模型参数的函数,θ=(θ1,θ2,
…
,θk)。建模拟合包括通过优化过程调整一个或多个模型参数,直到满足特定的拟合标准,例如动态响应与模型输出f(θ)之间的拟合误差降至阈值以下。马达动态响应可以由相应的优化模型参数θ
opt
表示。因为清洁头表征模式有效地控制了地板状况的空间影响,并且清洁头以特定和确定性的方式被激发,所以优化的模型参数θ
opt
可以更可靠地表示清洁头的状态。
158.在一个示例中,参数模型f可以是传递函数模型h(s),它描述电压输入u(t)和电流输出i(t)之间的关系,可以表示如下:
159.h(s)=i(s)/u(s)
ꢀꢀꢀꢀꢀ
(1)
160.其中i(s)是i(t)的拉普拉斯变换,而u(s)是u(t)的拉普拉斯变换。传递函数h(s)可以采用多项式的形式,具有一组传递函数系数θ=(θ1,θ2,
…
,θn)。h(s)的非限制性示例如下:
[0161][0162]
现在参考图9c,其以非限制性示例的方式示出了清洁头的频率响应942。频率响应942可以由不同频率(水平轴线)上的幅度响应(垂直轴线)表示。图9c还示出了传递函数模型944的幅度响应,其根据特定的拟合准则拟合频率响应942。马达动态响应然后可以由传递函数系数θ=(θ1,θ2,θ3)表示,也称为测量拟合模型参数集。
[0163]
返回参考图9b,可以在950处接收一个或多个马达响应模板。马达响应模板的示例可以包括用于碎屑累积的清洁头的第一马达动态响应模板(yd),或用于磨损的清洁头的第二马达动态响应模板(yw)。当移动机器人以相同的清洁头表征模式操作时,例如当移动机器人在对接站上保持静止,而清洁构件可旋转地接合对接站的平台表面时,可以分别创建马达响应模板yd和yw。可以在不同的已知碎屑累积水平下通过实验创建模板yd。可以在不同的已知磨损水平下通过实验创建模板yw。在一些示例中,当移动机器人以相同的清洁头表征模式操作时,可以创建代表清洁健康的清洁头的第三模型动态响应模板(yc)。可以创建马达响应模板并将其存储在存储器中,例如存储器电路530。
[0164]
在各种示例中,当移动机器人以相同的清洁头表征模式进行操作时,模板yd,yw和可选的yc中的任何一个都可以由马达动态响应(例如马达频率响应)表示。可以通过对各种已知碎屑水平运行多个激励/响应实验来创建模板yd,由具有参数集θd=(θ
d1
,θ
d2
,
…
,θ
di
)的参数模型表示。类似地,可以通过对各种已知的磨损水平运行多个激励/响应实验来创建
模板yw,由具有参数集θw=(θ
w1
,θ
w2
,
…
,θ
wj
)的模型表示。可以通过在清洁头保持已知的清洁和健康状态下运行多个激励/响应实验来创建可选模板yc,由具有参数集θc=(θ
c1
,θ
c2
,
…
,θ
ck
)的模型表示。在一个示例中,yd,yw和yc可以通过各自的传递函数hd(s),hw(s)和hc(s)建模,类似于用于马达动态响应x的传递函数h(s)。参数集θd,θw和θc包括各自的传递函数系数。然后可以将参数集θd,θw和θc存储在存储器中。
[0165]
在960,可以使用来自步骤940的马达动态响应x(例如,传递函数系数θ)以及模板yd,yw和yc中的任何一个(例如,对应的参数集θd,θw和θc)来确定清洁头状态。可以基于马达动态响应x和马达响应模板yd之间的相似性度量,或基于θ和θd之间的比较来确定碎屑水平。可以基于马达动态响应x和马达响应模板yw之间的相似性度量,或基于θ和θw之间的比较,确定磨损水平。可以基于马达动态响应x和马达响应模板yc之间的相似性度量,或者基于θ和θc之间的比较,确定清洁头的清洁和健康状态。在一个示例中,测量的拟合模型参数集θ与训练的模型参数集(例如θd,θw和θc)之间的比较可以包括对θ的一个或多个参数以及θd,θw和θc的相应的一个或多个参数的聚类分析。测得的θ中的拟合模型参数可以与θd,θw和θc之一中最接近的训练模型参数关联。在某些示例中,可以使用θ中参数的子集(而不是全部)以及θd,θw和θc中的相应参数子集来执行聚类分析。例如,如果已知参数子集(例如,θ中的参数θk)表示例如比代表共振频率的其他参数更有助于清洁头状态的阻尼比或能量耗散,则聚类分析可以在θj和训练的模型参数集中的对应参数(例如θd中的θ
dj
,θw中的θ
wj
或θc中的θ
cj
)之间执行。
[0166]
如先前参考图7所描述的,当移动机器人处于主动清洁任务中时,可以基于参数趋势执行清洁头状态的检测。相反,清洁头表征模式要求移动机器人位于固定的已知表面位置,例如对接平台。当在这种清洁头表征模式下操作移动机器人时,检测清洁头状态不需要重复测量机器人参数(例如,马达功率p或马达能量e),例如在多个任务上进行重复测量,以控制与地板表面状况的相互作用的影响。因此,清洁头状态检测器526可以在移动机器人位于对接站的任意时间确定清洁头的状态。在一个示例中,可以在不参考历史数据(例如用于历史清洁任务的机器人参数值)的情况下即时识别碎屑或磨损状态。
[0167]
使用虚拟传感器的移动机器人预测性维护(pdm)系统
[0168]
图12是示出了移动机器人pdm系统1200的示例的图。系统1200是移动机器人pdm系统500的实施例,并且可以包括数据接收器510,作为处理器电路520的变体的处理器电路1220,存储器电路530和用户界面540。系统1200可以另外包括虚拟传感器1250,该虚拟传感器1250被配置为生成一个或多个参数,这些参数不是由物理传感器直接测量的,而是表示代表清洁头的状态的状态变量。在示例中,虚拟传感器1250可以包括代表清洁头动态的清洁头组件的数学模型1252。数学模型的一个示例是清洁头频率响应的线性状态空间模型:
[0169]
x
k+1
=φxk+u+τd[0170]
ym=hxkꢀꢀꢀꢀꢀꢀꢀ
(3)
[0171]
其中u表示系统的激励输入,ym表示可以直接测量的系统输出(或观察值),xk表示系统在时间步k处的状态,τd表示对系统的干扰(也称为系统或过程噪声),φ是(从时间步k到时间步k+1的)状态转移矩阵,而h是当前观察值和当前状态之间的观察矩阵。干扰τd的一个示例是在旋转的清洁头上产生的与清洁头的碎屑累积,磨损或损坏相关的干扰扭矩。
[0172]
可以在实验室中在人工建立的已知清洁头状态(例如各种已知碎屑水平或磨损水
平)下创建用于系统频率响应的状态空间模型。在每个清洁头状态下,用激励信号u(例如,电压)以各种不同的频率激励系统,并且可以收集系统响应数据(例如,阶跃电压,测量电流,角速度等)。
[0173]
可以针对参数化虚拟传感器的矩阵(例如φ和h)求解状态空间模型。可以使用卡尔曼滤波器1254求解状态空间模型。卡尔曼滤波器算法的离散形式可以由以下测量更新和时间更新方程式表示:
[0174]kk
=p
′
kht
(hp
′
kht
+r)-1
[0175][0176]
pk=(i-kkh)p
′k[0177][0178]
p
k+1
=φpkφ
t
+q
ꢀꢀꢀꢀ
(4)
[0179]
其中k是卡尔曼增益函数(矩阵),r是测量误差协方差,q是干扰(系统或过程)协方差,pk'是先验估计误差协方差矩阵。使用在人工建立的已知清洁头状态下收集的实验室数据,可以确定包括矩阵f,h,r和q在内的卡尔曼滤波器模型参数,并将其存储在存储器中。
[0180]
处理器电路1220包括类似于图5所示的处理器电路520的空间滤波器522,以及状态变量估计器1221,状态变量估计器1221被配置为使用(1)从空间滤波器522接收的空间滤波后的机器人数据以及(2)卡滤波器参数先前已求解并保存在存储器中的尔曼滤波器,来估计干扰扭矩τd。空间滤波后的机器人数据(例如,由空间滤波器522指定的与具有特定表面状况的地板区域相对应的马达电流的测量值)用于更新由卡尔曼滤波器的矩阵f,h,r和q定义的先前建立的虚拟传感器。类似于处理器电路520,处理器电路1220还可包括机器人参数生成器524,清洁头状态检测器526或剩余寿命估计器528中的一个或多个。在一个示例中,清洁头状态检测器526可使用估计的干扰扭矩τd以及其他机器人数据或机器人参数来确定清洁头的状态。在另一示例中,除其他机器人数据或机器人参数之外,剩余寿命估计器528可以使用估计的干扰扭矩τd来确定清洁头的erl。
[0181]
基于多估计器融合的清洗头状态诊断示例
[0182]
图13是示出了基于多估计器融合的清洁头的预测性维护的系统1300的示例的图。系统1300可以包括数据接收器510和处理器电路1310。处理器电路1310可以包括空间滤波器522和分别联接到空间滤波器522的多个估计器1320a,1320b,
…
,1320n。空间滤波器522可以例如通过使用环境的地板地图,对于多个估计器,识别并提取与具有特定表面状况的各个地板区域相对应的各个数据部分。如以上参考图5所述,表面状况尤其可以包括地板区域的空间,几何和纹理信息。空间滤波器522可以基于地板的空间位置;地板的大小,形状或尺寸;地板表面类型;横越特定地板区域的方式;或清洁任务的特定阶段例如对接或解除对接阶段中的一个或多个来为多个估计器1320a-1320n提取不同的机器人数据部分。例如,估计器1320a可以接收与卧室地板相对应的机器人数据部分,估计器1320b可以接收与厨房地板相对应的机器人数据部分,并且估计器1320c可以接收与餐厅地板相对应的机器人数据部分等。在另一个示例中,空间滤波器522可以将环境中的特定房间或区域划分为多个区域(例如,网格地图中的m
×
n区域)。然后,可以提取与划分区域相对应的机器人数据部分(即,当机器人在划分区域中执行清洁任务时收集的机器人数据),并提供给各个估计器。在另一个示例中,空间滤波器522可以基于诸如硬木地板,瓷砖或地毯地板的地板类型来识别不同
的区域。估计器1320a可以从空间滤波器522接收与硬木地板的区域相对应的机器人数据部分,估计器1320b可以接收与瓷砖地板的区域相对应的机器人数据部分,并且估计器1320c可以接收与地毯地板的区域相对应的机器人数据部分。
[0183]
估计器1320a-1320n中的每一个可以包括相应的机器人参数生成器和剩余寿命估计器。类似于系统500的机器人参数生成器524,每个机器人参数生成器1324a-1324n可以使用与具有相应地板状况的相应地板区域相对应的机器人数据部分来确定相应的机器人参数。在示例中,当移动机器人行进跨过与一些或所有估计器1320a-1320n相关联的各个地板区域时,机器人参数生成器1324a-1324n在每个清洁任务期间生成相应的机器人参数。当移动机器人多次前往相同的地板区域(例如,执行多次清洁任务,或在一次任务中重复清洁用户指定的重复横越区域)时,与该地板区域相关联的估计器可以为每次横越地板区域相应地生成机器人参数。
[0184]
处理器电路1310可以包括第一融合电路1330,第一融合电路1330被配置为使用在清洁任务中分别由多个估计器1324a-1324n确定的机器人参数来生成复合机器人参数(x
total
)。在一个示例中,x
total
可以是由估计器1324a-1324n确定的机器人参数的线性或非线性组合,例如分别由各自的权重因子缩放的机器人参数的加权组合:
[0185][0186]
其中xi代表第i个估计器(例如,估计器1320i)生成的机器人参数,wi代表xi的权重因子。如上所述,例如参考图5,机器人参数可以包括驱动清洁头旋转以与地板相互作用并从中提取碎屑的马达的功率消耗或能量消耗。
[0187]
处理器电路1310可以包括权重因子生成器1370,用于基于相应的机器人参数基于清洁头状态(例如,磨损或碎屑累积)的估计的可靠性来确定由各个估计器所估计的机器人参数(例如,xi)的权重因子(例如,wi)。在一个示例中,权重因子生成器1370可以基于与各个估计器相关联的地板区域的地板类型来确定权重因子。硬而光滑的地板表面(例如,硬木或瓷砖)通常会在主动清洁期间对地板-清洁头的相互作用产生较小的摩擦。因此,来自相应估计器的机器人参数(例如,马达功率或马达能量)受地板相互作用的影响较小,并且更可靠地指示清洁头的碎屑或磨损状态。相反,地板清洁头的交互作用可支配与地毯地板相对应的机器人参数,因此,为地毯地板估计的机器人参数不太可靠地指示碎屑或磨损状态。因此,可以将较大的权重因子应用于与非地毯硬地板相关联的机器人参数,而将较小的权重因子应用于与地毯非硬地板相关联的机器人参数。
[0188]
地板类型信息可以由用户提供给系统,例如通过用户界面540在地板地图上标记,并与不同空间位置的地板区域相关联。可替代地,地板类型信息可以由与一个或多个传感器联接的地板类型检测器自动检测。所获取的地板类型信息可以被整合到环境的地板地图中。在一个示例中,当机器人横越具有特定地板类型的地板表面时,可以基于功耗来确定地板类型。高功率消耗表明高摩擦表面相互作用,而低功率消耗表明低摩擦表面相互作用。在一些示例中,地板类型分类还可以包括针对不同地板类型预先确定并存储在存储器中的概率密度函数。在另一示例中,可以基于诸如陀螺仪传感器或加速度计的惯性测量单元(imu)来确定地板类型。由陀螺仪检测到的俯仰变化可用于确定机器人是否已横越地板表面阈值或地板类型界面。对阈值或地板不连续性的这种检测可能暗示地板类型的改变。在又一示例中,可以通过分析由照相机或成像传感器捕获的图像来识别地板类型。在一些示例中,可
以使用诸如来自如上所述的不同传感器的信息源的整合来确定地板类型。共同转让的题为“具有地板类型检测的移动地板清洁机器人(mobile floor-cleaning robot with floor-type detection)”的美国专利us9,993,129描述了自动检测各种地板类型过渡地板类型,该专利的描述通过引用整体并入本文。然后,可以使用用户提供或自动检测到的地板类型信息来确定各个机器人参数的权重因子。
[0189]
附加地或替代地,权重因子生成器1370可以基于当在清洁任务中移动清洁机器人横越与各自估计器相关联的地板区域时获取的机器人数据的统计度量(诸如可变性度量),来确定由各个估计器估计的机器人参数的权重因子。在一个示例中,该可变性可以被计算为清洁任务内的马达电流测量值的方差或标准偏差。当前测量包括以数据采集系统的特定采样率(例如200hz)的采样。与变化较大的机器人数据相比,变化较小的机器人数据更可靠地指示清洁头的碎屑或磨损状态。因此,可以将较大的权重因子应用于与变化较小的机器人数据相关联的机器人参数,而将较小的权重因子应用于与变化较大的机器人数据相关联的机器人参数。
[0190]
处理器电路1310可以包括清洁头状态检测器1340,该清洁头状态检测器1340被配置为在多个清洁任务上生成复合机器人参数的趋势,每个清洁任务包括移动清洁机器人对一个或多个相应地板区域的横越,并配置为基于生成的复合机器人参数的趋势检测清洁头的状态。类似于系统500的清洁头状态检测器526,清洁头的状态可以包括碎屑累积水平或磨损或损坏水平。清洁头状态的检测可以基于相应时间范围内的变化方向(即具有不同代数符号的斜率),如上面参考图7所述。清洁头状态的监测可以呈现给用户,例如经由用户界面540。
[0191]
处理器电路1310可以包括第二融合电路1350,第二融合电路1350被配置为使用在清洁任务中由多个估计器1324a-1324n分别确定的erl来生成清洁头的剩余使用寿命的总计估计(erl
agg
)。在一个示例中,erl
agg
可以是由估计器1324a-1324n确定的erl的线性或非线性组合,例如分别由各自的权重因子缩放的机器人参数的加权组合:
[0192][0193]
其中erli代表第i个估计器(例如,估计器1320i)估计的erl,wi代表erli的权重因子。剩余使用寿命的总计估计可以呈现给用户,例如经由用户界面540。可以为每个清洁任务估计erl
agg
。可替代地,可以周期性地或在接收到用户关于清洁头的健康状况的询问时对erl
agg
进行估计。如果erl
agg
下降到阈值以下,则估计的erl
agg
可以向用户触发警告或警报消息。
[0194]
图14a至图14b是示出了分别由与环境中的不同区域相关联的多个估计器确定的机器人参数的融合的图。图14a以非限制性示例的方式示出了机器人清洁环境的地板地图1410,以及由各个估计器监视的环境中的三个区域(区域i,区域j和区域k)。图14b示出了由各个估计生成的各个机器人参数,其可以由系统1300的第一融合电路1330执行。在该示例中,机器人参数是如以上参考图7所述计算的马达能量值1422。在多个任务中的每个任务之后,估计器确定各自的马达能量值。可以使用来自各个估计器的马达能量的组合1424来确定复合马达能量,每个由基于区域的地板类型或所测量的机器人数据的统计信息(例如,可变性度量)确定的权重因子1423加权,如以上参考权重因子生成器1370所述。然后可以在多个清洁任务上生成复合马达能量的趋势1426,例如通过清洁头状态检测器1340,从其可以
得到清洁头状态(例如,碎屑累积状态或磨损状态)。
[0195]
图15是示出评估移动清洁机器人(例如配置为横越和清洁地板表面的移动机器人100)中的清洁头组件的健康状态的方法的示例的流程图1500。方法1500可以在移动机器人pdm系统500中实现并由其执行。清洁头的健康状态可以包括有关清洁头的碎屑累积水平和磨损水平以及清洁头的剩余使用寿命的信息。
[0196]
方法1500在1510处开始,以接收由移动清洁机器人在其主动操作期间(例如,横越环境(例如房屋)并在该环境中清洁地板区域时)产生的机器人数据。机器人数据的示例可以包括测量提供给驱动清洁头组件的清洁构件的马达的电压,马达电流,清洁构件的角速度,马达旋转速度或在清洁构件处产生的扭矩等。机器人数据可以由一个或多个传感器(例如马达传感器317)感测。在一些示例中,感测的机器人数据可以被转换成一个或多个频域度量,例如主频,共振或频谱密度等。在一些示例中,感测的机器人可以包括由虚拟传感器生成的参数,例如代表清洁头动态的清洁头组件的数学模型1252。虚拟传感器参数代表清洁头的操作状态,其中某些参数可能无法通过物理传感器直接测量。虚拟传感器参数的一个示例是对系统的干扰(也称为系统或过程噪声),例如干扰扭矩。图12示出了用于估计干扰扭矩的示例性虚拟传感器或数学模型。除其他机器人数据外,可以对估计的干扰扭矩进行分析,以确定清洁头的健康状态。
[0197]
在1520,可以提取所接收的机器人数据的一部分(包括由物理传感器或由虚拟传感器感测的数据),其对应于由移动清洁机器人反复横越的环境中的地板区域。地板区域具有特定的表面状况。机器人数据的提取也称为机器人数据的空间滤波,并且可以例如通过使用空间滤波器522来执行。地板区域的表面状况可以包括特定的空间位置,特定尺寸、形状或尺寸的地板区域;或具有特定表面类型的地板区域(例如,硬木或地毯),以及地板区域的其他空间、几何和纹理信息。在一示例中,环境中一个或多个地板区域的表面状况的信息可以存储在地板地图中。
[0198]
附加地或替代地,可以在1520处基于地板地图的其他状况来提取数据部分。在示例中,可以根据移动机器人在特定地板区域上的横越模式(例如覆盖路径,横越图案或横越速度)来提取机器人数据。例如,用户可以在地板地图上指定具有特定覆盖路径或横越图案的地板区域。当移动机器人根据指定横越路径或图案行进并清洁指定的地板区域时,收集机器人数据以分析清洁头状态。
[0199]
附加地或替代地,可以在1520处根据清洁任务的阶段来提取数据部分。如图6所示,清洁任务通常从解除对接环节开始,在此期间清洁机器人从对接站出发,然后进行清洁阶段,包括对环境中多个区域进行一系列地板清洁,然后在对接阶段结束,在对接阶段中清洁机器人返回到对接站。在示例中,提取的数据部分可以包括与对接阶段相对应的第一部分。在另一个示例中,所提取的数据部分可以包括与解除对接阶段相对应的第二部分。在又一示例中,所提取的数据部分可以包括与关于对接或解除对接的指定时间段,例如紧接在解除对接阶段之后的t1秒,或者紧接在对接阶段之前的t2秒相对应的第三部分。
[0200]
在1530处,可以使用机器人数据的与具有特定表面状况的地板区域相对应的提取部分来确定机器人参数。机器人参数可以表示地板-清洁头的相互作用(例如,清洁构件处产生的扭矩),空间滤波的机器人数据的统计特征(例如,在地板区域的横越期间的平均马达电流),或空间滤波的机器人数据的频域特征。机器人参数的一个示例是驱动清洁头的清
洁头马达消耗的功率(p),其可以使用马达电流,电池电压和马达速度中的一项或多项进行计算。机器人参数的另一个示例是横越并清洁具有特定表面状况地板区域由清洁头马达消耗的能量(e),其可以计算为用于清洁整个或部分地板区域的时间段内功率(p)的积分。
[0201]
在1540处,可以基于所确定的机器人参数来确定清洁头的状态,例如使用清洁头状态检测器526。清洁头状态指示清洁构件(例如,可旋转构件118或侧刷126)的磨损水平或碎屑累积水平中的至少一个。在一个示例中,可以基于对机器人参数的多次测量来确定清洁头状态,例如在指定的监视时间段内机器人参数在多次清洁任务中的趋势。在使用几天或几周后,污垢和错误的细丝通常会累积在清洁头中,并且磨损通常在数月后发生。这样,在第一短时间范围内的能量趋势可以用于检测碎屑累积水平,而在第二较长时间范围内的能量趋势可以用于检测清洁头的磨损水平。如图7a-7b所示,可以使用第一较短的监视时段内的马达能量的增加趋势来检测碎屑累积状态,而可以使用较长的监视时段内的马达能量的减少趋势来检测磨损状态。
[0202]
清洁头状态可以附加地或替代地基于清洁头马达的动态响应来确定,该动态响应是在移动机器人以清洁头表征模式(例如在对接站的平台处或具有已知的表面状况的固定位置处)估计的。如图9a-9c所示,可以使用与可旋转地接合对接站的平台表面的清洁构件相对应的机器人数据来生成用于磨损的清洁头的一个或多个第一马达响应模板或用于碎屑累积的清洁头的第二马达响应模板。可以基于所确定的马达频率响应与第一或第二马达响应模板中的至少一个的比较来确定清洁头的状态。
[0203]
在1550处,可以使用在1530处提供的确定的机器人参数,或者替代地使用在步骤1520提供的空间滤波的机器人数据,来产生清洁构件的剩余使用寿命(erl)的估计。可以使用回归模型来估计erl,该模型将清洁头的剩余使用寿命与用作剩余使用寿命的代理的信号相关联。回归模型的示例可以包括线性回归模型或非线性回归模型,例如多项式,指数,对数回归模型。可以另外或替代地使用虚拟传感器估计的参数(例如干扰扭矩)估计erl,以上参考图12描述了其示例。
[0204]
在1560处,可以例如经由用户界面向用户呈现关于移动机器人操作状态和健康状态的信息,诸如清洁头的状态和/或清洁头的erl。该信息可以包括文本和/或图形通知,以上参考图11a-11b描述了其示例。该通知可以包括关于清洁头的磨损或损坏的状态或水平、清洁头中的碎屑累积的状态或水平的警告,响应于确定的碎屑累积水平而清洁清洁构件的推荐,基于确定的磨损水平而更换清洁构件的推荐,或切换到与磨损的清洁头不同的清洁头型号的推荐等。
[0205]
图16是示出了基于多估计器融合来评估移动清洁机器人中的清洁头组件的健康状态的方法1600的示例的流程图。方法1600可以在移动机器人pdm系统1300中实现并由其执行。方法1600开始于1610,其中多个估计器可以与具有各自的表面状况的各自地板区域(或环境中的区域)相关联。地板区域的表面状况可以包括例如地板的空间位置;地板的大小,形状或尺寸;地板表面类型;横越特定地板区域的模式;或清洁任务的特定阶段,例如对接或接对接阶段;以及地板区域的其他空间,几何和纹理信息。在1620,向估计器查询对应于具有特定表面状况的地板区域的机器人数据。在示例中,当移动机器人横越相应的地板区域时,每个估计器可以接收机器人数据(例如,由传感器感测的马达电流)。可以创建估计器和相应地板区域之间的关联并将其存储在地板地图中。
[0206]
在1630,可以分别为多个估计器确定权重因子,诸如使用权重因子生成器1370,如上面参考图13所述。在一个示例中,用于估计器的权重因子可以基于与估计器相关联的地板区域的地板类型来确定。硬而光滑的地板表面(例如,硬木或瓷砖)通常会在主动清洁期间对地板-清洁头的相互作用产生较小的摩擦。因此,来自相应估计器的机器人参数(例如,马达功率或马达能量)受地板相互作用的影响较小,并且更可靠地指示清洁头的碎屑或磨损状态。因此,可以将较大的权重因子分配给与非地毯硬地板相关联的估计器,而将较小的权重因子分配给与地毯地板相关联的估计器。
[0207]
可替代地或附加地基于当在清洁任务期间移动机器人横越并清洁与估计器相关联的地板区域时估计器获取的机器人数据的统计来确定权重因子。作为非限制性示例,机器人数据的统计可以包括清洁任务中由估计器所接收的马达电流测量值的变化性(例如,方差或标准偏差)。与变化较大的机器人数据相比,变化较小的机器人数据更可靠地指示清洁头的碎屑或磨损状态。因此,可以将较大的权重因子应用于与变化较小的机器人数据相关联的机器人参数,而将较小的权重因子应用于与变化较大的机器人数据相关联的机器人参数。
[0208]
在1640每个估计器可以生成机器人参数,和/或在1670产生清洁头的剩余使用寿命(erl)的估计。在1640,可以使用估计器接收的各个机器人数据来确定各个机器人参数。当移动机器人多次前往同一地板区域(通过在一次任务中重复清洁用户指定的重复横越区域或在多次清洁任务中)时,与该区域相关联的估计器可以为每次横越地板区域相应地生成机器人参数。
[0209]
在1650,可以使用分别由估计器确定的机器人参数的线性或非线性组合来生成复合机器人参数(p
totoal
),例如,机器人参数的加权组合分别由在1630提供的相应权重因子进行缩放。在1660,可以使复合机器人参数在多个清洁任务上趋势化,并且可以基于复合机器人参数的趋势来检测清洁头的状态。在一个示例中,清洁头的碎屑累积状态和/或磨损状态可以基于相应时间范围内的变化方向(即具有不同代数符号的斜率)来确定,如上面参考图7所述。
[0210]
可以将在1670处针对多个估计器分别估计的erl进行组合以生成总计的erl(erl
agg
)。可以使用各个估计器的erl的线性或非线性组合来确定erl
agg
,例如,机器人参数的加权组合分别由在1630提供的相应权重因子进行缩放。可以为每个清洁任务估计erl
agg
,或以定期确定。可以向用户呈现在1660确定的清洁头状态以及在1680确定的剩余寿命的总计估计(erl
agg
),或者可以响应于碎屑累积或磨损状态或erl
agg
下降到阈值以下来触发警告。
[0211]
图17总体示出了示例机器1700的框图,本文所讨论的任何一种或多种技术(例如方法)可以在其上执行。该描述的部分可以应用于移动机器人100,移动设备404或其他计算系统(诸如本地计算机系统或云计算系统406)的各个部分的计算框架。
[0212]
在替代实施例中,机器1700可以作为独立设备操作,或者可以连接(例如联网)到其他机器。在网络部署中,机器1700可以在服务器-客户端网络环境中以服务器机器,客户端机器或两者的能力运行。在示例中,机器1700可以在对等(p2p)(或其他分布式)网络环境中充当对等机器。机器1700可以是个人计算机(pc),平板电脑,机顶盒(stb),个人数字助理(pda),移动电话,网络设备,网络路由器,交换机或网桥,或任何能够执行指令(顺序或其他
方式)的机器,这些指令指定了该机器要执行的操作。此外,虽然仅示出了单个机器,但是术语“机器”也应被理解为包括机器的任何集合,这些机器单独地或共同地执行一组(或多组)指令以执行本文讨论的任何一个或多个方法,例如云计算,软件即服务(saas),其他计算机集群配置。
[0213]
如本文所述,示例可以包括逻辑或可以由逻辑或多个组件或机制来操作。电路组是在包括硬件(例如,简单电路,门,逻辑等)的有形实体中实现的电路的集合。电路组成员可以随时间推移以及潜在的硬件可变性而变得灵活。电路组包括在操作时可以单独或组合执行指定操作的成员。在示例中,电路组的硬件可以被不变地设计为执行特定的操作(例如,硬连线)。在示例中,电路组的硬件可以包括可变地连接的物理部件(例如,执行单元,晶体管,简单电路等),包括物理地修改(例如,磁地,电学,可移动地放置不变质量的粒子等)的计算机可读介质,以对特定操作的指令进行编码。在连接物理部件时,硬件构成的基础电性能会发生变化,例如从绝缘体更改为导体,反之亦然。指令使嵌入式硬件(例如,执行单元或加载机制)能够通过可变连接在硬件中创建电路组的构件,以在操作时执行特定操作的一部分。因此,当设备工作时,计算机可读介质通信地联接到电路组构件的其他部件。在一个示例中,任何物理部件可以在一个以上电路组的一个以上构件中使用。例如,在操作下,执行单元可以在一个时间点用在第一电路组的第一电路中,并且可以在不同时间由第一电路组中的第二电路或第二电路组中的第三电路重用。
[0214]
机器(例如,计算机系统)1700可以包括硬件处理器1702(例如,中央处理单元(cpu),图形处理单元(gpu),硬件处理器核或其任意组合),主存储器1704和静态存储器1706,其中一些或全部可以经由互连链路(例如,总线)1708彼此通信。机器1700可以进一步包括显示单元1710(例如,光栅显示器,矢量显示器,全息显示器等),字母数字输入设备1712(例如键盘)和用户界面(ui)导航设备1714(例如鼠标)。在示例中,显示单元1710,输入设备1712和ui导航设备1714可以是触摸屏显示器。机器1700可以另外包括存储设备(例如,驱动单元)1716,信号生成设备1718(例如,扬声器),网络接口设备1720以及一个或多个传感器1721,例如全球定位系统(gps)传感器,指南针,加速度计或其他传感器。机器1700可以包括输出控制器1728,诸如串行(例如,通用串行总线(usb),并行或其他有线或无线(例如,红外(ir),近场通信(nfc)等))连接,以通信或控制一个或多个外围设备(例如打印机,读卡器等)。
[0215]
存储设备1716可以包括机器可读介质1722,其上存储了由本文描述的任何一种或多种技术或功能体现或利用的一组或多组数据结构或指令1724(例如,软件)。在机器1700执行指令1724期间,指令1724还可以全部或至少部分地驻留在主存储器1704内,静态存储器1706内或硬件处理器1702内。在示例中,硬件处理器1702,主存储器1704,静态存储器1706或存储设备1716的一个或任意组合可以构成机器可读介质。
[0216]
尽管机器可读介质1722被示为单个介质,但是术语“机器可读介质”可以包括被配置为存储一个或多个指令1724的单个介质或多个介质(例如,集中式或分布式数据库和/或相关联的缓存和服务器)。
[0217]
术语“机器可读介质”可以包括能够存储,编码或携带由机器1700执行的指令并且使得机器1700执行本公开的任何一种或多种技术的任何介质,或者能够存储,编码或携带由此类指令使用或与之关联的数据结构。非限制性机器可读介质示例可以包括固态存储器
以及光学和磁性介质。在一个示例中,大容量机器可读介质包括具有多个具有不变(例如,静止)质量的粒子的机器可读介质。因此,大容量机器可读介质不是暂时传播的信号。大容量机器可读介质的特定示例可以包括:诸如半导体存储设备的非易失性存储器(例如,电可编程只读存储器(eprom),电擦除可编程只读存储器(epsom))和闪存设备;磁盘,例如内部硬盘和可移动磁盘;磁光盘;以及cd-rom和dvd-rom磁盘。
[0218]
指令1724还可以使用多种传输协议(例如,帧中继,网际协议(ip),传输控制协议(tcp),用户数据报协议(udp),超文本传输协议(http)等)中的任何一种,经由网络接口设备1720,使用传输介质通过通信网络1726来发送或接收。示例性通信网络可以包括局域网(lan),广域网(wan),分组数据网络(例如,因特网),移动电话网络(例如,蜂窝网络),普通老式电话(pots)网络,和无线数据网络(例如,称为的电气和电子工程师协会(ieee)802.11系列标准,称为的ieee 802.16系列标准),ieee 802.15.4系列标准,对等(p2p)网络等。在一个示例中,网络接口设备1720可以包括一个或多个物理插孔(例如,以太网,同轴或电话插孔)或一个或多个天线以连接到通信网络1726。在示例中,网络接口设备1720可以包括多个天线,以使用单输入多输出(simo),多输入多输出(mimo)或多输入单输出(miso)技术中的至少一个进行无线通信。术语“传输介质”应被认为包括能够存储,编码或携带由机器1700执行的指令的任何无形介质,并且包括数字或模拟通信信号或其他无形介质以促进这种软件的通信。
[0219]
上面的图中示出了各种实施例。这些实施例中的一个或多个的一个或多个特征可以组合以形成其他实施例。
[0220]
本文描述的方法示例可以至少部分地是机器或计算机实现的。一些示例可以包括编码有指令的计算机可读介质或机器可读介质,所述指令可操作以配置电子设备或系统以执行如以上示例中所述的方法。这样的方法的实现可以包括代码,例如微代码,汇编语言代码,高级语言代码等。这样的代码可以包括用于执行各种方法的计算机可读指令。该代码可以构成计算机程序产品的一部分。此外,可以在执行期间或在其他时间将代码有形地存储在一个或多个易失性或非易失性计算机可读介质上。
[0221]
上面的详细描述意图是说明性的,而不是限制性的。因此,本公开的范围应该参考所附权利要求以及这些权利要求所赋予的等同物的全部范围来确定。