移动机器人所处状态识别方法以及装置
技术领域
本申请涉及机器人技术领域,特别是涉及一种移动机器人所处状态识别方法、装置、计算机设备以及存储介质。
背景技术
移动机器人是自动执行工作的机器装置。它既可以接受人类指挥,又可以运行预先编排的程序,也可以根据以人工智能技术制定的原则纲领行动。它的任务是协助或取代人类工作的工作,例如生产业、建筑业,或是危险的工作。
移动机器人需要在各种复杂环境中正常行走,但复杂的环境中可能存在木棍、台阶等障碍物,导致移动机器人(如扫地机器人、割草机器人等)顶死或倾斜卡住。
而目前尚无一种移动机器人所处状态识别的方案,导致处于倾斜卡住的移动机器人无法准确感知这一状态,也就无法执行下一步(预设的)脱困操作。
发明内容
基于此,有必要针对目前尚无移动机器人倾斜卡住状态识别方案的问题,提供一种能够识别移动机器人当前所处状态的识别方法、装置、计算机设备以及存储介质。
一种移动机器人所处状态识别方法,所述方法包括:
获取移动机器人的第一预设位置相对当前地面的第一离地距离,获取所述移动机器人的第二预设位置相对当前地面的第二离地距离;
获取各时刻对应的所述第一离地距离与所述第二离地距离的离地距离差;
当所述离地距离差大于预设状态变更判定距离阈值时,计时所述离地距离差大于所述预设状态变更判定距离阈值的持续时间,所述预设状态变更判定距离阈值根据当前移动机器人所处环境确定;
当所述持续时间超过预设状态变更判定时间阈值时,判定所述移动机器人处于倾斜被困状态。
在其中一个实施例中,所述获取移动机器人的第一预设位置相对当前地面的第一离地距离,获取所述移动机器人的第二预设位置相对当前地面的第二离地距离具体包括:
通过脉冲宽度调制控制位于所述移动机器人第一预设位置的第一红外发射单元定时发送红外信号,通过第一红外接收端接收反射的光能量;
通过脉冲宽度调制控制位于所述移动机器人第二预设位置的第二红外发射单元定时发送红外信号,通过第二红外接收端接收反射的光能量;
获取当前地面的漫反射率,根据所述当前地面的漫反射率以及所述第一红外接收端接收反射的光能量获取移动机器人的第一预设位置相对当前地面的第一离地距离,根据所述当前地面的漫反射率以及所述第二红外接收端接收反射的光能量,获取移动机器人的第二预设位置相对当前地面的第二离地距离。
在其中一个实施例中,所述根据所述当前地面的漫反射率以及所述第一红外接收端接收反射的光能量,获取移动机器人的第一预设位置相对当前地面的第一离地距离具体包括:
获取以当前时刻为中心的预设采样时间段内各采样时间点第一红外接收端接收到的光能量;
通过中值滤波算法获取所述采样时间段内接收端接收到的光能量中值;
通过反射能量法根据所述当前地面的漫反射率以及所述光能量中值获取获取移动机器人的第一预设位置相对当前地面的第一离地距离。
在其中一个实施例中,所述当所述离地距离差大于预设状态变更判定距离阈值时,记录所述预设状态变更识别阈值小于所述离地距离差的持续时间之前包括:
获取当前移动机器人所处地面的障碍物信息;
根据所述障碍物信息模拟移动机器人倾斜被困状态,根据模拟时所述移动机器人处于倾斜状态时所述离地距离差的最小值确定预设状态变更判定距离阈值。
在其中一个实施例中,所述判定所述移动机器人处于被困状态之后还包括:
获取所述移动机器人移动轨迹;
根据所述移动机器人的移动轨迹,生成脱困移动方案;
根据所述脱困移动方案控制所述移动机器人沿所述移动轨迹反向移动;
返回获取移动机器人的第一预设位置相对当前地面的第一离地距离,获取所述移动机器人的第二预设位置相对当前地面的第二离地距离的步骤;
当检测到所述移动机器人不处于倾斜被困状态时,停止反向移动。
一种移动机器人所处状态识别装置,所述装置包括:
距离信息获取模块,用于获取移动机器人的第一预设位置相对当前地面的第一离地距离,获取所述移动机器人的第二预设位置相对当前地面的第二离地距离;
距离差计算模块,用于获取各时刻所述第一离地距离与所述第二离地距离的离地距离差获取各时刻对应的所述第一离地距离与所述第二离地距离的离地距离差;
计时判定模块,用于当所述离地距离差大于预设状态变更判定距离阈值时,计时所述离地距离差大于所述预设状态变更判定距离阈值的持续时间,所述预设状态变更判定距离阈值根据当前移动机器人所处环境确定;
状态变更判定模块,用于当所述持续时间超过预设状态变更判定时间阈值时,判定所述移动机器人处于倾斜被困状态。
在其中一个实施例中,所述距离信息获取模块具体包括:
第一红外传感单元,用于通过脉冲宽度调制控制位于所述移动机器人第一预设位置的第一红外发射单元定时发送红外信号,通过第一红外接收端接收反射的光能量;
第二红外传感单元,用于通过脉冲宽度调制控制位于所述移动机器人第二预设位置的第二红外发射单元定时发送红外信号,通过第二红外接收端接收反射的光能量;
距离计算单元,用于获取当前地面的漫反射率,根据所述当前地面的漫反射率以及所述第一红外接收端接收反射的光能量获取移动机器人的第一预设位置相对当前地面的第一离地距离,根据所述当前地面的漫反射率以及所述第二红外接收端接收反射的光能量获取移动机器人的第二预设位置相对当前地面的第二离地距离。
在其中一个实施例中,还包括识别距离估计模块,所述识别距离估计模块用于获取当前移动机器人所处地面的障碍物信息;
根据所述障碍物信息模拟移动机器人倾斜被困状态,根据模拟时所述移动机器人处于倾斜状态时所述离地距离差的最小值确定预设状态变更判定距离阈值。
一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现以下步骤:
获取移动机器人的第一预设位置相对当前地面的第一离地距离,获取所述移动机器人的第二预设位置相对当前地面的第二离地距离;
获取各时刻对应的所述第一离地距离与所述第二离地距离的离地距离差;
当所述离地距离差大于预设状态变更判定距离阈值时,计时所述离地距离差大于所述预设状态变更判定距离阈值的持续时间,所述预设状态变更判定距离阈值根据当前移动机器人所处环境确定;
当所述持续时间超过预设状态变更判定时间阈值时,判定所述移动机器人处于倾斜被困状态。
一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:
获取移动机器人的第一预设位置相对当前地面的第一离地距离,获取所述移动机器人的第二预设位置相对当前地面的第二离地距离;
获取各时刻对应的所述第一离地距离与所述第二离地距离的离地距离差;
当所述离地距离差大于预设状态变更判定距离阈值时,计时所述离地距离差大于所述预设状态变更判定距离阈值的持续时间,所述预设状态变更判定距离阈值根据当前移动机器人所处环境确定;
当所述持续时间超过预设状态变更判定时间阈值时,判定所述移动机器人处于倾斜被困状态。
上述移动机器人所出状态识别方法、装置、计算机设备以及存储介质,首先获取移动机器人的第一预设位置相对当前地面的第一离地距离,获取移动机器人的第二预设位置相对当前地面的第二离地距离;获取各时刻对应的第一离地距离与第二离地距离的离地距离差;当离地距离差大于预设状态变更判定距离阈值时,计时离地距离差大于预设状态变更判定距离阈值的持续时间;当持续时间超过预设状态变更判定时间阈值时,判定移动机器人处于倾斜被困状态。本申请通过获取移动机器人不同预设位置的离地距离,通过离地距离之差来识别判定移动机器人是否处于倾斜被困状态,通过本申请的状态识别方法,可以实现对移动机器人当前是否处于倾斜被困的状态进行有效判断。
附图说明
图1为一个实施例中移动机器人所处状态识别方法的应用环境图;
图2为一个实施例中移动机器人所处状态识别方法的流程示意图;
图3为一个实施例中图2的步骤S200的子流程示意图;
图4为另一个实施例中移动机器人所处状态识别方法的流程示意图;
图5为一个实施例中移动机器人所处状态识别装置的结构框图;
图6为一个实施例中计算机设备的内部结构图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
本申请提供的移动机器人所处状态识别方法,可以应用于如图1所示的控制装置100上,其中,控制装置100安装在移动机器人上,通过轮组模块102控制移动机器人进行移动,电源模块104用于为移动机器人以及控制装置100供电,距离检测装置106用于根据移动机器人各个预设位置的离地距离,处理器108以及预设状态变更判定距离阈值和预设状态变更判定时间阈值,来判定移动机器人处于倾斜被困状态,进而确定是否控制移动机器人进行脱困处理。
如图2所示,在其中一个实施例中,本申请的移动机器人所处状态识别方法,通过处理器实现,具体包括以下步骤:
S200,获取移动机器人的第一预设位置相对当前地面的第一离地距离,获取移动机器人的第二预设位置相对当前地面的第二离地距离。
移动机器人是自动执行工作的机器装置。它既可以接受人类指挥,又可以运行预先编排的程序,也可以根据以人工智能技术制定的原则纲领行动。移动机器人具体包括了扫地机器人、割草机器人等。第一预设位置以及第二预设位置位于移动机器人身上的不同位置,在其中一个实施例中,第一预设位置与第二预设位置分别设置于移动机器人相对为前后的两端。第一预设位置与第二预设位置上安装有距离检测装置,距离检测装置包括红外测距传感器、超声波测距传感器以及激光测距传感器,处理器可以通过距离检测装置检测对各预设位置的离地距离进行准确估计。
S400,获取各时刻对应的第一离地距离与第二离地距离的离地距离差。
处理器可以获取不同时刻的第一离地距离与第二离地距离,并查找同时刻第一离地距离与第二离地距离的离地距离差,通过各个不同时刻第一离地距离与第二离地距离的离地距离差来判定当前移动机器人是否处于倾斜被困状态。
S600,当离地距离差大于预设状态变更判定距离阈值时,计时离地距离差大于预设状态变更判定距离阈值的持续时间,预设状态变更判定距离阈值根据当前移动机器人所处环境确定。
预设状态识别判定距离阈值,是指判断当前移动机器人是否处于倾斜状态的阈值,该阈值可以根据移动机器人所在地面的障碍物情况进行设置。由于移动机器人发生倾斜被困时,移动机器人一端将会处于悬空的状态,此时第一预设位置与第二预设位置的离地距离的距离差会产生变动,当两者间的距离差大于预设的预设状态变更判定距离阈值时,可以判定此时移动机器人处于倾斜状态,此时可以开始记录移动机器人的处于倾斜状态时间的持续时间。
S800,当持续时间超过预设状态变更判定时间阈值时,判定移动机器人处于倾斜被困状态。
由于预设状态变更判定距离阈值只能判断当前移动机器人是否处于倾斜状态,而当移动机器人处于倾斜状态时,不一定是被困住,也可能是在移动过程中产生的剧烈晃动,处理器通过预设状态变更判定距离阈值无法识别当前移动机器人是否被困住,此时可以通过距离移动机器人的处于倾斜状态时间的持续时间来对移动机器人是否处于被困状态进行判断,当持续时间超过预设状态变更判定时间阈值时,判定移动机器人处于倾斜被困状态。预设状态变更判定时间阈值为经验阈值,可以根据
上述移动机器人所处状态识别方法,首先获取移动机器人的第一预设位置相对当前地面的第一离地距离,获取移动机器人的第二预设位置相对当前地面的第二离地距离;获取各时刻对应的第一离地距离与第二离地距离的离地距离差;当离地距离差大于预设状态变更判定距离阈值时,计时离地距离差大于预设状态变更判定距离阈值的持续时间;当持续时间超过预设状态变更判定时间阈值时,判定移动机器人处于倾斜被困状态。本申请通过获取移动机器人不同预设位置的离地距离,通过离地距离之差来识别判定移动机器人是否处于倾斜被困状态,通过本申请,可以实现对移动机器人当前是否处于倾斜被困的状态进行有效判断。
如图3所示,在其中一个实施例中,S200具体包括:
S210,通过脉冲宽度调制控制位于移动机器人第一预设位置的第一红外发射单元定时发送红外信号,通过第一红外接收端接收反射的光能量;
S230,通过脉冲宽度调制控制位于移动机器人第二预设位置的第二红外发射单元定时发送红外信号,通过第二红外接收端接收反射的光能量;
S250,获取当前地面的漫反射率,根据当前地面的漫反射率以及第一红外接收端接收反射的光能量获取移动机器人的第一预设位置相对当前地面的第一离地距离,根据当前地面的漫反射率以及第二红外接收端接收反射的光能量获取移动机器人的第二预设位置相对当前地面的第二离地距离。
在该实施例中,位于移动机器人第一预设位置以及第二预设位置的距离检测装置具体为红外测距传感器,红外测距传感器包括了红外发射单元以及红外接收端,处理器通过脉冲宽度调制,控制红外发射单元定时发射红外信号(如每隔500ms发射一次),而后通过红外接收端接收地面反射的红外光能量,继而根据当前移动机器人所处的环境地面的漫反射率来获取第一预设位置相对当前地面的第一离地距离以及的第二预设位置相对当前地面的第二离地距离。通过位于不同位置的红外测距单元,可以对当前位置的离地距离进行准确计算,
在其中一个实施例中,根据当前地面的漫反射率以及第一红外接收端接收反射的光能量获取移动机器人的第一预设位置相对当前地面的第一离地距离具体包括:
获取以当前时刻为中心的预设采样时间段内各采样时间点第一红外接收端接收到的光能量;
通过中值滤波算法获取采样时间段内接收端接收到的光能量中值;
通过通过反射能量法根据当前地面的漫反射率以及光能量中值获取获取移动机器人的第一预设位置相对当前地面的第一离地距离。
发射能量法的公式具体为:
获取移动机器人的第一预设位置相对当前地面的第一离地距离,公式中Lf移动机器人的第一预设位置相对当前地面的第一离地距离,Pm为接收端接收到的能量,K为常数,K的大小由红外发射端的输出功率以及能量转换效率决定,d为当前地面的漫反射率。
中值滤波算法即把n次采样值按大小排列,取这些采样值的中位值为本次有效值。具体地,在通过红外接收端接收到能量后,可以获取以当前时刻为中心的预设采样时间段内各采样时间点第一红外接收端接收到的光能量,而后通过中值滤波算法求出该预设采样时间段内红外接收端接收到能量的中值Pm,通过中值滤波,能有效克服因偶然因素引起的波动干扰。而后根据反射能量法可求出预设第一位置相对地面的距离。反射能量法是由发射控制电路控制红外发射端发出信号射向地面,经地面反射后传回系统的红外接收端,通过光电转换器接收的光能量大小进而计算出前红外发射端所在的预设第一位置相对地面的距离Lf。
如图4所示,在其中一个实施例中,S600之前还包括:
S520,获取当前移动机器人所处地面的障碍物信息;
S540,根据障碍物信息模拟移动机器人倾斜被困状态,根据模拟时移动机器人处于倾斜状态时第一离地距离与第二离地距离的离地距离差的最小值确定预设状态变更判定距离阈值。
在获取预设状态变更识别阈值前,还可以获取当前地面的障碍物信息,根据障碍物信息来确定当前地面环境下的预设状态变更判定距离阈值。障碍物信息具体包括当前地面上常见障碍物的高度信息以及类型信息,将这些障碍物的高度信息输入处理器后,处理器会根据障碍物高度信息以及类型信息来判断哪些障碍物可能会让移动机器人处于倾斜被困状态,进而模拟移动机器人的倾斜被困状态,并确定预设状态变更判定距离阈值。地面场景内常见的障碍物包括门槛、电缆等。而预设状态变更判定距离阈值的阈值范围一般设置在1-3cm。
在其中一个实施例中,S800之后还包括:
获取移动机器人移动轨迹;
根据移动机器人的移动轨迹,生成脱困移动方案;
根据脱困移动方案控制移动机器人沿移动轨迹反向移动;
返回步骤S200检测移动机器人是否处于被困状态;
当检测到移动机器人不处于倾斜被困状态时,停止反向移动。
当处理器判定当前移动机器人处于倾斜被困状态后,可以基于当前的情况生成对应脱困方案,用于帮助移动机器人摆脱当前倾斜被困状态。当移动机器人处于被困状态时,如果按照原有移动方案的话,移动机器人可能会一直处于倾斜被困的状态,此时可以通过处理器生成新的脱困方案,控制移动机器人按照新的运动轨迹运动,以脱离被困状态。具体地,可以通过获取原先移动机器人的移动轨迹,根据移动轨迹生成对应的脱困方案,即通过沿原先的移动轨迹反向移动来摆脱当前的状态。服务器生成用于控制移动机器人反向移动的脱困移动方案后,通过控制轮组模块来使得移动机器人沿反向轨迹移动,进而让移动机器人摆脱当前的被困状态。同时返回步骤S200检测当前移动机器人是否仍然处于被困状态,当处理器检测到当前移动机器人摆脱了被困状态时,停止反向移动。通过反向移动的脱困方案,可以有效帮助当前被困的移动机器人脱离倾斜被困状态。
在其中一个实施例中,本申请的移动机器人所处状态识别方法包括:通过脉冲宽度调制控制位于移动机器人第一预设位置的第一红外发射单元定时发送红外信号,通过第一红外接收端接收反射的光能量;通过脉冲宽度调制控制位于移动机器人第二预设位置的第二红外发射单元定时发送红外信号,通过第二红外接收端接收反射的光能量;获取当前地面的漫反射率,根据当前地面的漫反射率以及第一红外接收端接收反射的光能量获取移动机器人的第一预设位置相对当前地面的第一离地距离,根据当前地面的漫反射率以及第二红外接收端接收反射的光能量获取移动机器人的第二预设位置相对当前地面的第二离地距离。获取各时刻对应的第一离地距离与第二离地距离的离地距离差;获取当前移动机器人所处地面的障碍物信息,根据障碍物信息模拟移动机器人倾斜被困状态,根据模拟时移动机器人处于倾斜状态时第一离地距离与第二离地距离的离地距离差的最小值确定预设状态变更判定距离阈值。当离地距离差大于预设状态变更判定距离阈值时,计时离地距离差大于预设状态变更判定距离阈值的持续时间。当持续时间超过预设状态变更判定时间阈值时,判定移动机器人处于倾斜被困状态。获取移动机器人移动轨迹;根据移动机器人的移动轨迹,生成脱困移动方案;根据脱困移动方案控制移动机器人沿移动轨迹反向移动;返回获取移动机器人的第一预设位置相对当前地面的第一离地距离,获取移动机器人的第二预设位置相对当前地面的第二离地距离的步骤;当检测到移动机器人不处于倾斜被困状态时,停止反向移动。
应该理解的是,虽然图2-4的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图2-4中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
一种移动机器人所处状态识别装置,装置包括:
距离信息获取模块200,用于获取移动机器人的第一预设位置相对当前地面的第一离地距离,获取移动机器人的第二预设位置相对当前地面的第二离地距离;
距离差计算模块400,用于获取各时刻第一离地距离与第二离地距离的离地距离差获取各时刻对应的第一离地距离与第二离地距离的离地距离差;
计时判定模块600,用于当离地距离差大于预设状态变更判定距离阈值时,计时离地距离差大于预设状态变更判定距离阈值的持续时间,预设状态变更判定距离阈值根据当前移动机器人所处环境确定;
状态变更判定模块800,用于当持续时间超过预设状态变更判定时间阈值时,判定移动机器人处于倾斜被困状态。
在其中一个实施例中,距离信息获取模块200具体包括:
第一红外传感单元,用于通过脉冲宽度调制控制位于移动机器人第一预设位置的第一红外发射单元定时发送红外信号,通过第一红外接收端接收反射的光能量;
第二红外传感单元,用于通过脉冲宽度调制控制位于移动机器人第二预设位置的第二红外发射单元定时发送红外信号,通过第二红外接收端接收反射的光能量;
距离计算单元,用于获取当前地面的漫反射率,根据当前地面的漫反射率以及第一红外接收端接收反射的光能量获取移动机器人的第一预设位置相对当前地面的第一离地距离,根据当前地面的漫反射率以及第二红外接收端接收反射的光能量获取移动机器人的第二预设位置相对当前地面的第二离地距离。
在其中一个实施例中,还包括识别距离估计模块,识别距离估计模块用于获取当前移动机器人所处地面的障碍物信息;
根据障碍物信息模拟移动机器人倾斜被困状态,根据模拟时移动机器人处于倾斜状态时离地距离差的最小值确定预设状态变更判定距离阈值。
在其中一个实施例中,距离计算单元具体用于:
获取以当前时刻为中心的预设采样时间段内各采样时间点第一红外接收端接收到的光能量;
通过中值滤波算法获取采样时间段内接收端接收到的光能量中值;
通过反射能量法根据当前地面的漫反射率以及光能量中值获取获取移动机器人的第一预设位置相对当前地面的第一离地距离。
在其中一个实施例中,当离地距离差大于预设状态变更判定距离阈值时,记录预设状态变更识别阈值小于离地距离差的持续时间之前包括:
获取当前移动机器人所处地面的障碍物信息;
根据障碍物信息模拟移动机器人倾斜被困状态,根据模拟时移动机器人处于倾斜状态时离地距离差的最小值确定预设状态变更判定距离阈值。
在其中一个实施例中,还包括脱困模块,脱困模块用于
获取移动机器人移动轨迹;
根据移动机器人的移动轨迹,生成脱困移动方案;
根据脱困移动方案控制移动机器人沿移动轨迹反向移动;
返回获取移动机器人的第一预设位置相对当前地面的第一离地距离,获取移动机器人的第二预设位置相对当前地面的第二离地距离的步骤;
当检测到移动机器人不处于倾斜被困状态时,停止反向移动。
关于移动机器人所处状态识别装置的具体限定可以参见上文中对于移动机器人所处状态识别方法的限定,在此不再赘述。上述移动机器人所处状态识别装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是终端,其内部结构图可以如图6所示。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口、显示屏和输入装置。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统和计算机程序。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种移动机器人所处状态识别方法。该计算机设备的显示屏可以是液晶显示屏或者电子墨水显示屏,该计算机设备的输入装置可以是显示屏上覆盖的触摸层,也可以是计算机设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。
本领域技术人员可以理解,图6中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现以下步骤:
获取移动机器人的第一预设位置相对当前地面的第一离地距离,获取移动机器人的第二预设位置相对当前地面的第二离地距离;
获取各时刻对应的第一离地距离与第二离地距离的离地距离差;
当离地距离差大于预设状态变更判定距离阈值时,计时离地距离差大于预设状态变更判定距离阈值的持续时间,预设状态变更判定距离阈值根据当前移动机器人所处环境确定;
当持续时间超过预设状态变更判定时间阈值时,判定移动机器人处于倾斜被困状态。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:通过脉冲宽度调制控制位于移动机器人第一预设位置的第一红外发射单元定时发送红外信号,通过第一红外接收端接收反射的光能量;通过脉冲宽度调制控制位于移动机器人第二预设位置的第二红外发射单元定时发送红外信号,通过第二红外接收端接收反射的光能量;获取当前地面的漫反射率,根据当前地面的漫反射率以及第一红外接收端接收反射的光能量获取移动机器人的第一预设位置相对当前地面的第一离地距离,根据当前地面的漫反射率以及第二红外接收端接收反射的光能量,获取移动机器人的第二预设位置相对当前地面的第二离地距离。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:获取以当前时刻为中心的预设采样时间段内各采样时间点第一红外接收端接收到的光能量;通过中值滤波算法获取采样时间段内接收端接收到的光能量中值;通过反射能量法根据当前地面的漫反射率以及光能量中值获取获取移动机器人的第一预设位置相对当前地面的第一离地距离。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:获取当前移动机器人所处地面的障碍物信息;根据障碍物信息模拟移动机器人倾斜被困状态,根据模拟时移动机器人处于倾斜状态时离地距离差的最小值确定预设状态变更判定距离阈值。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:获取移动机器人移动轨迹;根据移动机器人的移动轨迹,生成脱困移动方案;根据脱困移动方案控制移动机器人沿移动轨迹反向移动;返回获取移动机器人的第一预设位置相对当前地面的第一离地距离,获取移动机器人的第二预设位置相对当前地面的第二离地距离的步骤;当检测到移动机器人不处于倾斜被困状态时,停止反向移动。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:
获取移动机器人的第一预设位置相对当前地面的第一离地距离,获取移动机器人的第二预设位置相对当前地面的第二离地距离;
获取各时刻对应的第一离地距离与第二离地距离的离地距离差;
当离地距离差大于预设状态变更判定距离阈值时,计时离地距离差大于预设状态变更判定距离阈值的持续时间,预设状态变更判定距离阈值根据当前移动机器人所处环境确定;
当持续时间超过预设状态变更判定时间阈值时,判定移动机器人处于倾斜被困状态。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:通过脉冲宽度调制控制位于移动机器人第一预设位置的第一红外发射单元定时发送红外信号,通过第一红外接收端接收反射的光能量;通过脉冲宽度调制控制位于移动机器人第二预设位置的第二红外发射单元定时发送红外信号,通过第二红外接收端接收反射的光能量;获取当前地面的漫反射率,根据当前地面的漫反射率以及第一红外接收端接收反射的光能量获取移动机器人的第一预设位置相对当前地面的第一离地距离,根据当前地面的漫反射率以及第二红外接收端接收反射的光能量,获取移动机器人的第二预设位置相对当前地面的第二离地距离。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:获取以当前时刻为中心的预设采样时间段内各采样时间点第一红外接收端接收到的光能量;通过中值滤波算法获取采样时间段内接收端接收到的光能量中值;通过反射能量法根据当前地面的漫反射率以及光能量中值获取获取移动机器人的第一预设位置相对当前地面的第一离地距离。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:获取当前移动机器人所处地面的障碍物信息;根据障碍物信息模拟移动机器人倾斜被困状态,根据模拟时移动机器人处于倾斜状态时离地距离差的最小值确定预设状态变更判定距离阈值。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:获取移动机器人移动轨迹;根据移动机器人的移动轨迹,生成脱困移动方案;根据脱困移动方案控制移动机器人沿移动轨迹反向移动;返回获取移动机器人的第一预设位置相对当前地面的第一离地距离,获取移动机器人的第二预设位置相对当前地面的第二离地距离的步骤;当检测到移动机器人不处于倾斜被困状态时,停止反向移动。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。