机器人、机器人控制方法和存储介质
技术领域
本申请实施例涉及人工智能技术领域,尤其涉及一种机器人、机器人控制方法和存储介质。
背景技术
随着人工智能技术的发展,机器人的种类越来越多,可以应用于多种行业以协助或取代人类工作。例如,机房巡检机器人是辅助或者替代人工在数据机房执行巡检任务的智能化设备。
实际运用中,部分数据机房在建设过程中存在有高度落差的台阶,或者数据机房在正常运维过程中会有掀开地板维修的场景,巡检机器人需要能自主识别这种台阶或者掀开的地板(或者称之为障碍物)以防跌倒。现有技术中,通过在巡检机器人的底盘下方安装一个红外测距传感器方式来识别这种台阶或者掀开的地板。
在实现本申请过程中,发明人发现现有技术中至少存在如下问题:为了便于数据机房的计算机设备散热,数据机房的部分地板是镂空带网孔的地板,当巡检机器人的红外测距传感器移动到地板的镂空网孔上方时,红外测距传感器测量出的地面高度变化会使巡检机器人误认为前方有障碍物,从而导致无法巡检机房中地板为镂空带网孔的区域。可见,现有技术识别前方障碍物的准确度较低。
发明内容
本申请实施例提供一种机器人、机器人控制方法和存储介质,用以解决现有技术识别前方障碍物的准确度较低的问题。
第一方面,本申请实施例提供一种机器人,所述机器人的底盘前侧同一水平位置上设置有多个测距传感器;所述机器人包括:
获取模块,用于获取所述多个测距传感器的测距数据;
识别模块,用于根据所述多个测距传感器的测距数据和所述多个测距传感器的位置信息,识别所述机器人的前方预设距离内障碍物的尺寸;
控制模块,用于在所述障碍物的尺寸大于预设越障尺寸时,调整所述机器人的前进方向。
在一种可能的实现方式中,所述识别模块,包括:
确定单元,用于根据所述多个测距传感器的测距数据和所述多个测距传感器的测距角度,确定所述多个测距传感器的测距数据所对应的地面高度数据;
识别单元,用于根据所述多个测距传感器的测距数据所对应的地面高度数据和所述多个测距传感器的位置信息,识别所述机器人的前方预设距离内障碍物的尺寸。
在一种可能的实现方式中,所述识别单元具体用于:
根据所述多个测距传感器的测距数据所对应的地面高度数据,从所述多个测距传感器中确定至少两个相邻的目标测距传感器;其中,所述目标测距传感器为所述多个测距传感器中测量的测距数据所对应的地面高度数据不同于所述测距传感器的位置高度数据;
根据所述多个测距传感器的位置信息确定所述至少两个相邻的目标测距传感器之间的间隔距离,并根据所述至少两个相邻的目标测距传感器之间的间隔距离确定所述机器人的前方预设距离内障碍物的尺寸。
在一种可能的实现方式中,所述控制模块还用于:
在所述障碍物的尺寸不大于所述预设越障尺寸时,控制所述机器人沿着原始前进方向继续前进。
在一种可能的实现方式中,所述多个测距传感器的测距角度的差值小于预设角度差。
在一种可能的实现方式中,所述多个测距传感器中任意相邻的两个测距传感器之间的间隔距离小于预设间隔距离。
在一种可能的实现方式中,任意所述测距传感器的测距数据所对应的探测水平距离大于所述机器人的制动距离阈值。
第二方面,本申请实施例提供一种机器人控制方法,机器人的底盘前侧同一水平位置上设置有多个测距传感器;所述方法包括:
获取所述多个测距传感器的测距数据;
根据所述多个测距传感器的测距数据和所述多个测距传感器的位置信息,识别所述机器人的前方预设距离内障碍物的尺寸;
在所述障碍物的尺寸大于预设越障尺寸时,调整所述机器人的前进方向。
在一种可能的实现方式中,所述根据所述多个测距传感器的测距数据和所述多个测距传感器的位置信息,识别所述机器人的前方预设距离内障碍物的尺寸,包括:
根据所述多个测距传感器的测距数据和所述多个测距传感器的测距角度,确定所述多个测距传感器的测距数据所对应的地面高度数据;
根据所述多个测距传感器的测距数据所对应的地面高度数据和所述多个测距传感器的位置信息,识别所述机器人的前方预设距离内障碍物的尺寸。
在一种可能的实现方式中,所述根据所述多个测距传感器的测距数据所对应的地面高度数据和所述多个测距传感器的位置信息,识别所述机器人的前方预设距离内障碍物的尺寸,包括:
根据所述多个测距传感器的测距数据所对应的地面高度数据,从所述多个测距传感器中确定至少两个相邻的目标测距传感器;其中,所述目标测距传感器为所述多个测距传感器中测量的测距数据所对应的地面高度数据不同于所述测距传感器的位置高度数据;
根据所述多个测距传感器的位置信息确定所述至少两个相邻的目标测距传感器之间的间隔距离,并根据所述至少两个相邻的目标测距传感器之间的间隔距离确定所述机器人的前方预设距离内障碍物的尺寸。
在一种可能的实现方式中,所述根据所述多个测距传感器的测距数据和所述多个测距传感器的位置信息,识别所述机器人的前方预设距离内障碍物的尺寸之后,所述方法还包括:
在所述障碍物的尺寸不大于所述预设越障尺寸时,控制所述机器人沿着原始前进方向继续前进。
第三方面,本申请实施例提供一种机器人,所述机器人的底盘前侧同一水平位置上设置有与控制单元电性连接的多个测距传感器;
其中,所述控制单元用于:
获取所述多个测距传感器的测距数据;
根据所述多个测距传感器的测距数据和所述多个测距传感器的位置信息,识别所述机器人的前方预设距离内障碍物的尺寸;
当所述障碍物的尺寸大于预设越障尺寸时,调整所述机器人的前进方向。
在一种可能的实现方式中,所述控制单元具体用于:
根据所述多个测距传感器的测距数据和所述多个测距传感器的测距角度,确定所述多个测距传感器的测距数据所对应的地面高度数据;
根据所述多个测距传感器的测距数据所对应的地面高度数据和所述多个测距传感器的位置信息,识别所述机器人的前方预设距离内障碍物的尺寸。
在一种可能的实现方式中,所述控制单元具体用于:
根据所述多个测距传感器的测距数据所对应的地面高度数据,从所述多个测距传感器中确定至少两个相邻的目标测距传感器;其中,所述目标测距传感器为所述多个测距传感器中测量的测距数据所对应的地面高度数据不同于所述测距传感器的位置高度数据;
根据所述多个测距传感器的位置信息确定所述至少两个相邻的目标测距传感器之间的间隔距离,并根据所述至少两个相邻的目标测距传感器之间的间隔距离确定所述机器人的前方预设距离内障碍物的尺寸。
在一种可能的实现方式中,所述控制单元还用于:
当所述障碍物的尺寸不大于所述预设越障尺寸时,控制所述机器人沿着原始前进方向继续前进。
在一种可能的实现方式中,所述控制单元包括:第一控制器和第二控制器;
其中,所述第一控制器用于根据所述多个测距传感器的测距数据和所述多个测距传感器的测距角度,确定所述多个测距传感器的测距数据所对应的地面高度数据,并将所述多个测距传感器的测距数据所对应的地面高度数据发送给所述第二控制器;
所述第二控制器用于根据所述多个测距传感器的测距数据所对应的地面高度数据和所述多个测距传感器的位置信息,识别所述机器人的前方预设距离内障碍物的尺寸。
在一种可能的实现方式中,所述第二控制器还用于:在所述障碍物的尺寸大于预设越障尺寸时,调整所述机器人的前进方向。
在一种可能的实现方式中,所述第二控制器还用于:在所述障碍物的尺寸不大于所述预设越障尺寸时,控制所述机器人沿着原始前进方向继续前进。
在一种可能的实现方式中,所述控制单元包括:第一控制器;
其中,所述第一控制器用于:
根据所述多个测距传感器的测距数据和所述多个测距传感器的测距角度,确定所述多个测距传感器的测距数据所对应的地面高度数据;
根据所述多个测距传感器的测距数据所对应的地面高度数据和所述多个测距传感器的位置信息,识别所述机器人的前方预设距离内障碍物的尺寸。
在一种可能的实现方式中,所述控制单元还包括:第二控制器,所述第一控制器还用于:
当所述障碍物的尺寸大于预设越障尺寸时,向所述第二控制器发送第一提示信息,其中,所述第一提示信息用于指示所述机器人的前方预设距离内存在大于所述预设越障尺寸的障碍物;
所述第二控制器用于根据所述第一提示信息确定所述机器人的前方预设距离内存在大于所述预设越障尺寸的障碍物,并调整所述机器人的前进方向。
在一种可能的实现方式中,所述控制单元还包括:第二控制器,所述第一控制器还用于:
当所述障碍物的尺寸不大于所述预设越障尺寸时,向所述第二控制器发送第二提示信息,其中,所述第二提示信息用于指示所述机器人的前方预设距离内未存在大于所述预设越障尺寸的障碍物;
所述第二控制器用于根据所述第二提示信息确定所述机器人的前方预设距离内未存在大于所述预设越障尺寸的障碍物,并控制所述机器人沿着原始前进方向继续前进。
在一种可能的实现方式中,所述多个测距传感器的测距角度的差值小于预设角度差。
在一种可能的实现方式中,所述多个测距传感器中任意相邻的两个测距传感器之间的间隔距离小于预设间隔距离。
在一种可能的实现方式中,任意所述测距传感器的测距数据所对应的探测水平距离大于所述机器人的制动距离阈值。
第四方面,本申请实施例提供一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机执行指令,所述计算机执行指令被处理器执行时用于实现如上述第二方面中任一项所述的机器人控制方法。
本申请实施例提供的机器人、机器人控制方法和存储介质,通过根据位于机器人的底盘前侧的多个测距传感器的测距数据和所述多个测距传感器的位置信息,可以准确地识别出机器人前方的障碍物的尺寸,然后在检测到所述障碍物的尺寸大于预设越障尺寸时,调整所述机器人的前进方向,也就是说在前方障碍物的尺寸不大于预设越障尺寸时,无需调整所述机器人的前进方向,克服了现有技术识别前方障碍物的准确度较低的技术问题,进而达到可以准确地识别出机器人前方的障碍物,实现了巡检机器人可以在巡检机房中地板为镂空带网孔的区域过程中对障碍物的准确探测的效果。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。
图1为本申请实施例提供的机器人的结构原理示意图;
图2为本申请实施例提供的巡检机器人的正视图;
图3为本申请实施例提供的巡检机器人的侧视图一;
图4为本申请实施例提供的巡检机器人的侧视图二;
图5为本申请一实施例提供的机器人控制方法的流程示意图;
图6为本申请另一实施例提供的机器人控制方法的流程示意图;
图7为本申请另一实施例提供的机器人控制方法的流程示意图;
图8为本申请实施例提供的机器人的结构示意图。
通过上述附图,已示出本公开明确的实施例,后文中将有更详细的描述。这些附图和文字描述并不是为了通过任何方式限制本公开构思的范围,而是通过参考特定实施例为本领域技术人员说明本公开的概念。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面相一致的装置和方法的例子。
首先对本申请实施例所涉及的名词进行解释:
本申请实施例涉及的前侧或者前方是指沿机器人的前进方向的位置。
本申请实施例涉及的测距传感器可以包括但不限于:红外测距传感器。
本申请实施例涉及的任意测距传感器的测距角度(或者安装角度)是指所述测距传感器可探测的角度范围。
本申请实施例涉及的多个测距传感器的位置信息可以包括但不限于:所述多个测距传感器的位置关系,和/或,任意两个所述测距传感器之间的间隔距离。
本申请实施例涉及的预设越障尺寸是指所述机器人可跨越的障碍物的最大尺寸。
本申请实施例提供的机器人、机器人控制方法和存储介质能够应用在机器人识别前方障碍物的场景。示例性地,本申请实施例的机器人、机器人控制方法和存储介质可以应用在机房巡检机器人在数据机房执行巡检任务过程中识别前方障碍物的场景。
实际运用中,部分数据机房在建设过程中存在有高度落差的台阶,或者数据机房在正常运维过程中会有掀开地板维修位于地板下方的空调或线缆的场景,巡检机器人需要能自主识别这种台阶或者掀开的地板(或者称之为障碍物)以防跌倒。现有技术中,通过在巡检机器人的底盘下方安装一个红外测距传感器方式来识别这种台阶或者掀开的地板。
通常情况下,为了便于数据机房的计算机设备散热,数据机房的部分区域(例如冷风道等)的地板是镂空带网孔的地板,当巡检机器人的红外测距传感器移动到地板的镂空网孔上方时,红外测距传感器测量出的地面高度变化会使巡检机器人误认为前方有障碍物,从而导致无法巡检机房中地板为镂空带网孔的区域。可见,现有技术识别前方障碍物的准确度较低。
针对上述技术问题,本申请实施例提供的机器人、机器人控制方法和存储介质,通过根据位于机器人的底盘前侧的多个测距传感器的测距数据和所述多个测距传感器的位置信息,可以准确地识别出机器人前方的障碍物的尺寸,然后在检测到所述障碍物的尺寸大于预设越障尺寸时,调整所述机器人的前进方向,也就是说在前方障碍物的尺寸不大于预设越障尺寸时,无需调整所述机器人的前进方向,从而实现了巡检机器人可以在巡检机房中地板为镂空带网孔的区域过程中对台阶或者掀开的地板等障碍物的准确探测。
图1为本申请实施例提供的机器人的结构原理示意图。如图1所示,本申请实施例提供的机器人可以包括但不限于:测距传感器阵列(包括多个测距传感器)A、控制单元B和驱动单元C。示例性地,所述多个测距传感器可以挂载在数据总线D上,然后通过接口转换单元E与所述控制单元B连接,所述控制单元B和所述驱动单元C连接;当然,所述测距传感器阵列A、所述控制单元B和所述驱动单元C还可以通过其它方式连接,本申请实施例对此并不作限定。
示例性地,所述控制单元B用于根据所述多个测距传感器的测距数据识别出机器人前方的障碍物的尺寸,然后根据所述障碍物的尺寸和预设越障尺寸的对比结果,通过所述驱动单元C控制所述机器人的移动方向。
示例性地,测距传感器阵列A可以包括但不限于:测距传感器A1、测距传感器A2、测距传感器A3、测距传感器A4、……、测距传感器An。
示例性地,所述控制单元B可以包括但不限于:单片机B1和/或主控制器B2。例如,所述控制单元B可以包括主控制器B2;又例如,所述控制单元B可以包括单片机B1和主控制器B2。
示例性地,所述驱动单元C可以包括但不限于:电机驱动器C1、运动电机C2和编码器C3。其中,所述电机驱动器C1用于在所述控制单元B的控制下驱动所述运动电机C2旋转,从而带动所述机器人移动;所述编码器C3用于向所述电机驱动器C1反馈所述运动电机的旋转信息(例如旋转速度和/或旋转圈数等)以形成闭环控制。
为了便于理解,本申请下述实施例以巡检机器人为例对上述测距传感器阵列A的设置位置进行介绍。
图2为本申请实施例提供的巡检机器人的正视图,图3为本申请实施例提供的巡检机器人的侧视图一,图4为本申请实施例提供的巡检机器人的侧视图二。结合图2-图4所示,上述多个测距传感器设置于机器人底盘前侧的同一水平位置,以便于准确地探测机器人前方的障碍物尺寸。
示例性地,如图2所示,从左往右依次为测距传感器A1、测距传感器A2、测距传感器A3、测距传感器A4、……、测距传感器An,多个测距传感器中任意相邻的两个测距传感器之间的间隔距离w小于预设间隔距离(例如数据机房中地板上的镂空网孔的缝隙间隔),以便于上述控制单元可以根据所述多个测距传感器的测距数据识别出机器人前方的机房地板上的镂空网孔的尺寸。
示例性地,为了准确地识别机器人前方的障碍物尺寸,多个测距传感器的测距角度的差值小于预设角度差。需要说明的是,所述预设角度差非常小,相当于认为上述多个测距传感器的测距角度相同。
如图3所示,上述多个测距传感器的测距角度γ相同,任意测距传感器的测距数据d,则所述测距传感器的测距数据d所对应的地面高度数据H=d*cos(γ),所述测距传感器的测距数据d所对应的探测水平距离s=H*tan(γ)=d*sin(γ)。应理解,如图3所示,若机器人的前方没有障碍物,则上述H应该等于所述测距传感器的位置高度数据(或者称之为安装高度数据)h;如图4所示,若机器人的前方有坑或者向下的台阶,则所述测距传感器阵列中的至少一个测距传感器的测距数据d所对应的地面高度数据H会大于所述测距传感器的位置高度数据h;若机器人的前方有向上的台阶,则所述测距传感器阵列中的至少一个测距传感器的测距数据d所对应的地面高度数据H会小于所述测距传感器的位置高度数据h。
示例性地,任意测距传感器的测距数据d所对应的探测水平距离s大于所述机器人的制动距离阈值,从而可以保证机器人不会发生碰撞。其中,所述机器人的制动距离阈值是指所述机器人处于预设最大时速阈值的情况下从开始制动到机器人完全静止时,所述机器人所驶过的距离。
下面以具体地实施例对本申请的技术方案以及本申请的技术方案如何解决上述技术问题进行详细说明。下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例中不再赘述。下面将结合附图,对本申请的实施例进行描述。
图5为本申请一实施例提供的机器人控制方法的流程示意图。示例性地,本申请实施例提供的机器人控制方法可以应用于如图1所示的机器人的控制单元。如图2-图4所示,所述机器人的底盘前侧同一水平位置上设置有与所述控制单元电性连接的多个测距传感器。如图5所示,本申请实施例提供的机器人控制方法可以包括:
步骤S501、获取所述多个测距传感器的测距数据。
本步骤中,所述控制单元可以接收所述多个测距传感器主动上报的实时测量的测距数据,或者,所述控制单元可以接收所述多个测距传感器在接收到所述控制单元发送的测距指令后所测量的测距数据。当然,所述控制单元还可以通过其它方式获取所述多个测距传感器的测距数据,本申请实施例中对此并不作限定。
例如,所述控制单元可以接收如图1和图2所示的测距传感器A1上报的测距数据d1、测距传感器A2上报的测距数据d2、测距传感器A3上报的测距数据d3、测距传感器A4上报的测距数据d4、……、测距传感器An上报的测距数据dn。
步骤S502、根据所述多个测距传感器的测距数据和所述多个测距传感器的位置信息,识别所述机器人的前方预设距离内障碍物的尺寸。
本申请实施例涉及的多个测距传感器的位置信息可以包括但不限于:所述多个测距传感器的位置关系(例如,如图1和图2所示的各测距传感器的位置关系),和/或,任意两个所述测距传感器之间的间隔距离(例如,如图1和图2所示的任意相邻的两个测距传感器之间的间隔距离,和/或,任意两个测距传感器之间的间隔距离)。
本申请实施例中,所述控制单元中可以预配置有所述多个测距传感器的位置信息和所述多个测距传感器的测距角度等信息。
本步骤中,所述控制单元根据所述多个测距传感器的位置信息和上述步骤S501中获取的所述多个测距传感器的测距数据,识别所述机器人的前方预设距离内障碍物的尺寸,其中,所述预设距离可以等于所述多个测距传感器的测距数据所对应的探测水平距离(其中,探测水平距离的计算公式同上述关于图3所述的相关内容)。
应理解,如图3和图4所示,若所述机器人的前方没有障碍物,所述多个测距传感器的测距数据所对应的探测水平距离相同,则所述预设距离可以等于任意所述测距传感器的测距数据所对应的探测水平距离;若所述机器人的前方有坑或者台阶,所述多个测距传感器中的部分测距传感器的测距数据所对应的探测水平距离,不同与所述测距传感器中的其它测距传感器的测距数据所对应的探测水平距离,则所述预设距离可以等于所述多个测距传感器的测距数据所对应的探测水平距离中的最大距离。
一种可能的实现方式中,所述控制单元可以判断上述步骤S501中获取的所述多个测距传感器的测距数据是否均相同。需要说明的是,若任意两个测距数据之间的差值小于预设差值(所述预设差值非常小),则所述控制单元可以认为所述两个测距数据相同。
进一步地,如图3和图4所示,若所述多个测距传感器的测距数据均相同,则所述控制单元可以确定所述机器人的前方预设距离内没有障碍物;若所述多个测距传感器中的部分测距传感器的测距数据,不同与所述多个测距传感器中的其它测距传感器的测距数据,则所述控制单元可以根据所述多个测距传感器的位置信息确定出所述部分测距传感器的位置信息,然后根据所述部分测距传感器的位置信息确定出所述机器人的前方预设距离内障碍物的尺寸。
例如,所述多个测距传感器的测距数据可以包括:如图1和图2所示的测距传感器A1上报的测距数据d1、测距传感器A2上报的测距数据d2、测距传感器A3上报的测距数据d3、测距传感器A4上报的测距数据d4、……、测距传感器An上报的测距数据dn,任意相邻的两个测距传感器之间的间隔距离为w。
若所述控制单元判断出上述测距传感器A2上报的测距数据d2、测距传感器A3上报的测距数据d3和测距传感器A4上报的测距数据d4,不同与其它测距传感器上报的测距数据,则所述控制单元可以根据所述多个测距传感器的位置信息确定出上述测距传感器A2、测距传感器A3和测距传感器A4的位置信息(例如上述测距传感器A2、测距传感器A3和测距传感器A4的位置关系、上述测距传感器A2与测距传感器A4之间的间隔距离L,和/或,任意相邻的两个测距传感器之间的间隔距离w),然后根据上述测距传感器A2、测距传感器A3和测距传感器A4的位置信息便可确定出所述机器人的前方预设距离内障碍物的尺寸W可以约等于L或者2*w。
另一种可能的实现方式中,所述控制单元根据所述多个测距传感器的测距数据和所述多个测距传感器的测距角度,确定所述多个测距传感器的测距数据所对应的地面高度数据;进一步地,所述控制单元根据所述多个测距传感器的测距数据所对应的地面高度数据和所述多个测距传感器的位置信息,识别所述机器人的前方预设距离内障碍物的尺寸。
本实现方式中,所述控制单元可以首先根据所述多个测距传感器的测距角度将所述多个测距传感器的测距数据转换成对应的地面高度数据。例如,所述控制单元可以根据所述多个测距传感器的测距角度γ分别将上述步骤S601中获取的测距传感器A1上报的测距数据d1、测距传感器A2上报的测距数据d2、测距传感器A3上报的测距数据d3、测距传感器A4上报的测距数据d4、……、测距传感器An上报的测距数据dn转换成对应的地面高度数据H1、H2、H4、H4、……、Hn。其中,地面高度数据H1为测距数据d1所对应的地面高度数据、地面高度数据H2为测距数据d2所对应的地面高度数据、地面高度数据H3为测距数据d3所对应的地面高度数据、地面高度数据H4为测距数据d4所对应的地面高度数据、……、地面高度数据Hn为测距数据dn所对应的地面高度数据。
进一步地,如图3和图4所示,若上述多个测距传感器的测距数据所对应的地面高度数据均相同(例如均为上述测距传感器的位置高度数据h),则所述控制单元可以确定所述机器人的前方预设距离内没有障碍物;若上述多个测距传感器中的部分测距传感器(以下称之为目标测距传感器)的测距数据所对应的地面高度数据,不同与上述多个测距传感器中的其它测距传感器的测距数据所对应的地面高度数据,则所述控制单元可以根据上述多个测距传感器的测距数据所对应的地面高度数据,从上述多个测距传感器中确定出至少两个相邻的目标测距传感器,其中,所述目标测距传感器为上述多个测距传感器中测量的测距数据所对应的地面高度数据不同于所述测距传感器的位置高度数据h。然后,所述控制单元可以根据上述多个测距传感器的位置信息确定出上述至少两个相邻的目标测距传感器之间的间隔距离,并根据上述至少两个相邻的目标测距传感器之间的间隔距离确定出所述机器人的前方预设距离内障碍物的尺寸。
例如,若所述控制单元判断出上述测距传感器A2上报的测距数据d2所对应的地面高度数据H2、测距传感器A3上报的测距数据d3所对应的地面高度数据H3和测距传感器A4上报的测距数据d4所对应的地面高度数据H4,不同与其它测距传感器上报的测距数据所对应的地面高度数据,则所述控制单元可以从上述多个测距传感器的测距数据所对应的地面高度数据,从上述多个测距传感器中确定出至少两个相邻的目标测距传感器,例如上述测距传感器A2、测距传感器A3和测距传感器A4。
进一步地,所述控制单元可以根据上述多个测距传感器的位置信息确定出上述测距传感器A2、测距传感器A3和测距传感器A4之间的间隔距离(例如上述测距传感器A2与测距传感器A4之间的间隔距离L,和/或,任意相邻的两个测距传感器之间的间隔距离w),然后根据上述测距传感器A2、测距传感器A3和测距传感器A4之间的间隔距离便可确定出所述机器人的前方预设距离内障碍物的尺寸W可以约等于L或者2*w。
当然,所述控制单元根据所述多个测距传感器的测距数据和所述多个测距传感器的位置信息,还可以通过其它方式识别所述机器人的前方预设距离内障碍物的尺寸,本申请实施例中对此并不作限定。
步骤S503、在所述障碍物的尺寸大于预设越障尺寸时,调整所述机器人的前进方向。
本步骤中,所述控制单元在所述机器人的前方预设距离内障碍物的尺寸大于预设越障尺寸时,调整所述机器人的前进方向;其中,所述预设越障尺寸是指所述机器人可跨越的障碍物的最大尺寸。即,所述控制单元在所述机器人的前方预设距离内障碍物的尺寸不大于所述预设越障尺寸时,无需调整所述机器人的前进方向,可以控制所述机器人沿着原始前进方向继续前进。可见,本申请实施例实现了巡检机器人可以在巡检机房中地板为镂空带网孔的区域过程中对台阶或者掀开的地板等障碍物的准确探测。
示例性地,本申请实施例中,所述控制单元可以通过所述机器人中的驱动单元来控制所述机器人的移动方向。例如,若所述控制单元在所述机器人的前方预设距离内障碍物的尺寸大于预设越障尺寸时,可以向所述驱动单元发送调整指令,以便于所述驱动单元根据所述调整指令调整所述机器人的前进方向;若所述控制单元在所述机器人的前方预设距离内障碍物的尺寸不大于所述预设越障尺寸时,可以向所述驱动单元发送前进指令,以便于所述驱动单元根据所述前进指令控制所述机器人沿着原始前进方向继续前进。
综上所述,本申请实施例中,通过获取设置于所述机器人的底盘前侧同一水平位置上的多个测距传感器的测距数据,并根据所述多个测距传感器的测距数据和所述多个测距传感器的位置信息,识别所述机器人的前方预设距离内障碍物的尺寸。然后,在检测到所述障碍物的尺寸大于预设越障尺寸时,调整所述机器人的前进方向,也就是说在前方障碍物的尺寸不大于预设越障尺寸时,无需调整所述机器人的前进方向。可见,本申请实施例可以准确地识别出机器人前方的障碍物,从而实现了巡检机器人可以在巡检机房中地板为镂空带网孔的区域过程中对台阶或者掀开的地板等障碍物的准确探测。
示例性地,本申请实施例涉及的上述机器人的控制单元可以包括如图1所示的主控制器B2,或者,本申请实施例涉及的上述机器人的控制单元可以包括:第一控制器(如图1所示的单片机B1)和第二控制器(如图1所示的主控制器B2)。应理解,当上述机器人的控制单元包括:如图1所示的主控制器B2时,本申请提供的机器人控制方法的可实现方式,可以参见本申请上述图5所示实施例的相关内容。
在上述实施例的基础上,本申请下述实施例部分对上述机器人的控制单元包括:第一控制器(如图1所示的单片机B1)和第二控制器(如图1所示的主控制器B2)时,本申请提供的机器人控制方法的可实现方式进行介绍。
图6为本申请另一实施例提供的机器人控制方法的流程示意图。在上述实施例的基础上,本申请实施例对上述机器人的控制单元包括:第一控制器(如图1所示的单片机B1)和第二控制器(如图1所示的主控制器B2)时,本申请提供的机器人控制方法的一种可实现方式进行介绍。如图6所示,本申请实施例提供的机器人控制方法可以包括:
步骤S601、所述第一控制器获取所述多个测距传感器的测距数据。
示例性地,当所述机器人开始运行(例如开始执行机房巡检任务等)时,所述第二控制器可以向所述第一控制器发送用于指示检测前方障碍物的指令,以便于所述第一控制器通过如图1所示的接口转换单元E向挂载上述测距传感器阵列A的数据总线D发送测距指令。进一步地,上述测距传感器阵列A中的各测距传感器在接收到所述测距指令后开始测量,并分别将测量的测距数据通过数据总线D上报给所述第一控制器。
又一示例性地,上述测距传感器阵列A中的各测距传感器可以主动地将测量的测距数据通过数据总线D上报给所述第一控制器。
当然,所述第一控制器还可以通过其它方式获取所述多个测距传感器的测距数据,本申请实施例中对此并不作限定。
步骤S602、所述第一控制器根据所述多个测距传感器的测距数据和所述多个测距传感器的测距角度,确定所述多个测距传感器的测距数据所对应的地面高度数据。
本步骤的可实现方式,可以参考本申请上述实施例的步骤S502中关于“所述控制单元根据所述多个测距传感器的测距数据和所述多个测距传感器的测距角度,确定所述多个测距传感器的测距数据所对应的地面高度数据”的相关内容,本申请实施例中对此并不作限定。
步骤S603、所述第一控制器将所述多个测距传感器的测距数据所对应的地面高度数据发送给所述第二控制器。
步骤S604、所述第二控制器根据所述多个测距传感器的测距数据所对应的地面高度数据和所述多个测距传感器的位置信息,识别所述机器人的前方预设距离内障碍物的尺寸。
本步骤的可实现方式,可以参考本申请上述实施例的步骤S502中关于“所述控制单元根据所述多个测距传感器的测距数据所对应的地面高度数据和所述多个测距传感器的位置信息,识别所述机器人的前方预设距离内障碍物的尺寸”的相关内容,本申请实施例中对此并不作限定。
进一步地,若所述机器人的前方预设距离内障碍物的尺寸大于预设越障尺寸,则执行步骤S605;若所述机器人的前方预设距离内障碍物的尺寸不大于所述预设越障尺寸,则执行步骤S606。
步骤S605、所述第二控制器调整所述机器人的前进方向。
示例性地,所述第二控制器可以向所述驱动单元发送调整指令,以便于所述驱动单元根据所述调整指令调整所述机器人的前进方向。
步骤S606、所述第二控制器控制所述机器人沿着原始前进方向继续前进。
示例性地,所述第二控制器可以向所述驱动单元发送前进指令,以便于所述驱动单元根据所述前进指令控制所述机器人沿着原始前进方向继续前进。
综上所述,本申请实施例中,通过机器人的第一控制器根据获取的所述多个测距传感器的测距数据和所述多个测距传感器的测距角度,确定所述多个测距传感器的测距数据所对应的地面高度数据,然后将所述多个测距传感器的测距数据所对应的地面高度数据发送给所述机器人的第二控制器。进一步地,所述第二根据所述多个测距传感器的测距数据所对应的地面高度数据和所述多个测距传感器的位置信息,识别所述机器人的前方预设距离内障碍物的尺寸,并在所述障碍物的尺寸大于预设越障尺寸时调整所述机器人的前进方向,以及在前方障碍物的尺寸不大于预设越障尺寸时控制所述机器人沿着原始前进方向继续前进。可见,本申请实施例通过所述第一控制器和所述第二控制器相结合的方式,不仅可以准确且快速地识别出机器人前方的障碍物,还可以减轻所述第二控制器的处理任务,有利于提高所述第二控制器对机器人的控制效率。
图7为本发明另一实施例提供的机器人控制方法的流程示意图。在上述实施例的基础上,本申请实施例对上述机器人的控制单元包括:第一控制器(如图1所示的单片机B1)和第二控制器(如图1所示的主控制器B2)时,本申请提供的机器人控制方法的另一种可实现方式进行介绍。如图7所示,本申请实施例提供的机器人控制方法可以包括:
步骤S701、所述第一控制器获取所述多个测距传感器的测距数据。
本步骤的可实现方式,可以参考本申请上述实施例的步骤S601的相关内容,本申请实施例中对此并不作限定。
步骤S702、所述第一控制器根据所述多个测距传感器的测距数据和所述多个测距传感器的测距角度,确定所述多个测距传感器的测距数据所对应的地面高度数据。
本步骤的可实现方式,可以参考本申请上述实施例的步骤S502中关于“所述控制单元根据所述多个测距传感器的测距数据和所述多个测距传感器的测距角度,确定所述多个测距传感器的测距数据所对应的地面高度数据”的相关内容,本申请实施例中对此并不作限定。
步骤S703、所述第一控制器根据所述多个测距传感器的测距数据所对应的地面高度数据和所述多个测距传感器的位置信息,识别所述机器人的前方预设距离内障碍物的尺寸。
本步骤的可实现方式,可以参考本申请上述实施例的步骤S502中关于“所述控制单元根据所述多个测距传感器的测距数据所对应的地面高度数据和所述多个测距传感器的位置信息,识别所述机器人的前方预设距离内障碍物的尺寸”的相关内容,本申请实施例中对此并不作限定。
进一步地,若所述机器人的前方预设距离内障碍物的尺寸大于预设越障尺寸,则执行步骤S704;若所述机器人的前方预设距离内障碍物的尺寸不大于所述预设越障尺寸,则执行步骤S706。
步骤S704、所述第一控制器向所述第二控制器发送第一提示信息,其中,所述第一提示信息用于指示所述机器人的前方预设距离内存在大于所述预设越障尺寸的障碍物。
步骤S705、所述第二控制器根据所述第一提示信息确定所述机器人的前方预设距离内存在大于所述预设越障尺寸的障碍物,并调整所述机器人的前进方向。
步骤S706、所述第一控制器向所述第二控制器发送第二提示信息,其中,所述第二提示信息用于指示所述机器人的前方预设距离内未存在大于所述预设越障尺寸的障碍物。
步骤S707、所述第二控制器根据所述第二提示信息确定所述机器人的前方预设距离内未存在大于所述预设越障尺寸的障碍物,并控制所述机器人沿着原始前进方向继续前进。
综上所述,本申请实施例中,通过机器人的第一控制器根据获取的所述多个测距传感器的测距数据和所述多个测距传感器的测距角度,确定所述多个测距传感器的测距数据所对应的地面高度数据,并根据所述多个测距传感器的测距数据所对应的地面高度数据和所述多个测距传感器的位置信息,识别所述机器人的前方预设距离内障碍物的尺寸。进一步地,所述第一控制器根据所述障碍物的尺寸与预设越障尺寸的对比结果向所述机器人的第二控制器发送指示信息,以便于所述第二控制器根据所指示信息控制所述机器人的移动。可见,本申请实施例通过所述第一控制器和所述第二控制器相结合的方式,不仅可以准确且快速地识别出机器人前方的障碍物,还可以减轻所述第二控制器的处理任务,有利于提高所述第二控制器对机器人的控制效率。
图8为本申请实施例提供的机器人的结构示意图。本申请实施例提供的机器人的底盘前侧同一水平位置上设置有多个测距传感器。如图8所示,本申请实施例提供的机器人可以包括:
获取模块801,用于获取所述多个测距传感器的测距数据;
识别模块802,用于根据所述多个测距传感器的测距数据和所述多个测距传感器的位置信息,识别所述机器人的前方预设距离内障碍物的尺寸;
控制模块803,用于在所述障碍物的尺寸大于预设越障尺寸时,调整所述机器人的前进方向。
示例性地,本申请实施例中的上述获取模块801、识别模块802和控制模块803可以设置于如图1所示的控制单元B中。
例如,上述获取模块801、识别模块802和控制模块803可以设置于如图1所示的控制单元B的主控制器B2中。
又例如,上述获取模块801可以设置于如图1所示的控制单元B的单片机B1中,上述控制模块803可以设置于上述控制单元B的主控制器B2中,上述识别模块802的一部分功能可以设置于上述单片机B1中以及另一部分功能可以设置于上述主控制器B2中(可以参考本申请上述关于图6所示的方法实施例)。
又例如,上述获取模块801和上述识别模块802可以设置于如图1所示的控制单元B的单片机B1中,上述控制模块803可以设置于上述控制单元B的主控制器B2中(可以参考本申请上述关于图7所示的方法实施例)。
本申请实施例提供的机器人,上述识别模块802根据上述获取模801块所获取到的位于机器人的底盘前侧的多个测距传感器的测距数据和所述多个测距传感器的位置信息,可以准确地识别出机器人前方的障碍物的尺寸;进一步地,上述控制模块803在检测到所述障碍物的尺寸大于预设越障尺寸时,调整所述机器人的前进方向,也就是说在前方障碍物的尺寸不大于预设越障尺寸时,无需调整所述机器人的前进方向,克服了现有技术识别前方障碍物的准确度较低的技术问题,进而达到可以准确地识别出机器人前方的障碍物,实现了巡检机器人可以在巡检机房中地板为镂空带网孔的区域过程中对障碍物的准确探测的效果。
在一种可能的实现方式中,所述识别模块802,包括:
确定单元,用于根据所述多个测距传感器的测距数据和所述多个测距传感器的测距角度,确定所述多个测距传感器的测距数据所对应的地面高度数据;
识别单元,用于根据所述多个测距传感器的测距数据所对应的地面高度数据和所述多个测距传感器的位置信息,识别所述机器人的前方预设距离内障碍物的尺寸。
在一种可能的实现方式中,所述识别单元具体用于:
根据所述多个测距传感器的测距数据所对应的地面高度数据,从所述多个测距传感器中确定至少两个相邻的目标测距传感器;其中,所述目标测距传感器为所述多个测距传感器中测量的测距数据所对应的地面高度数据不同于所述测距传感器的位置高度数据;
根据所述多个测距传感器的位置信息确定所述至少两个相邻的目标测距传感器之间的间隔距离,并根据所述至少两个相邻的目标测距传感器之间的间隔距离确定所述机器人的前方预设距离内障碍物的尺寸。
在一种可能的实现方式中,所述控制模块803还用于:
在所述障碍物的尺寸不大于所述预设越障尺寸时,控制所述机器人沿着原始前进方向继续前进。
在一种可能的实现方式中,所述多个测距传感器的测距角度的差值小于预设角度差。
在一种可能的实现方式中,所述多个测距传感器中任意相邻的两个测距传感器之间的间隔距离小于预设间隔距离。
在一种可能的实现方式中,任意所述测距传感器的测距数据所对应的探测水平距离大于所述机器人的制动距离阈值。
本申请实施例提供的机器人,用于执行本申请上述机器人控制方法实施例中的技术方案,其技术原理和技术效果相似,此处不再赘述。
本申请实施例还提供一种机器人,所述机器人的结构可以参考上述图2-图4所示,所述机器人的底盘前侧同一水平位置上设置有与控制单元电性连接的多个测距传感器;
其中,所述控制单元用于:
获取所述多个测距传感器的测距数据;
根据所述多个测距传感器的测距数据和所述多个测距传感器的位置信息,识别所述机器人的前方预设距离内障碍物的尺寸;
当所述障碍物的尺寸大于预设越障尺寸时,调整所述机器人的前进方向。
在一种可能的实现方式中,所述控制单元具体用于:
根据所述多个测距传感器的测距数据和所述多个测距传感器的测距角度,确定所述多个测距传感器的测距数据所对应的地面高度数据;
根据所述多个测距传感器的测距数据所对应的地面高度数据和所述多个测距传感器的位置信息,识别所述机器人的前方预设距离内障碍物的尺寸。
在一种可能的实现方式中,所述控制单元具体用于:
根据所述多个测距传感器的测距数据所对应的地面高度数据,从所述多个测距传感器中确定至少两个相邻的目标测距传感器;其中,所述目标测距传感器为所述多个测距传感器中测量的测距数据所对应的地面高度数据不同于所述测距传感器的位置高度数据;
根据所述多个测距传感器的位置信息确定所述至少两个相邻的目标测距传感器之间的间隔距离,并根据所述至少两个相邻的目标测距传感器之间的间隔距离确定所述机器人的前方预设距离内障碍物的尺寸。
在一种可能的实现方式中,所述控制单元还用于:
当所述障碍物的尺寸不大于所述预设越障尺寸时,控制所述机器人沿着原始前进方向继续前进。
在一种可能的实现方式中,所述控制单元包括:第一控制器和第二控制器;
其中,所述第一控制器用于根据所述多个测距传感器的测距数据和所述多个测距传感器的测距角度,确定所述多个测距传感器的测距数据所对应的地面高度数据,并将所述多个测距传感器的测距数据所对应的地面高度数据发送给所述第二控制器;
所述第二控制器用于根据所述多个测距传感器的测距数据所对应的地面高度数据和所述多个测距传感器的位置信息,识别所述机器人的前方预设距离内障碍物的尺寸。
示例性地,所述第一控制器可以为如图1所示的单片机B1,所述第二控制器可以为如图1所示的主控制器B2。
在一种可能的实现方式中,所述第二控制器还用于:在所述障碍物的尺寸大于预设越障尺寸时,调整所述机器人的前进方向。
在一种可能的实现方式中,所述第二控制器还用于:在所述障碍物的尺寸不大于所述预设越障尺寸时,控制所述机器人沿着原始前进方向继续前进。
在一种可能的实现方式中,所述控制单元包括:第一控制器;
其中,所述第一控制器用于:
根据所述多个测距传感器的测距数据和所述多个测距传感器的测距角度,确定所述多个测距传感器的测距数据所对应的地面高度数据;
根据所述多个测距传感器的测距数据所对应的地面高度数据和所述多个测距传感器的位置信息,识别所述机器人的前方预设距离内障碍物的尺寸。
示例性地,所述第一控制器可以为如图1所示的单片机B1。
在一种可能的实现方式中,所述控制单元还包括:第二控制器,所述第一控制器还用于:
当所述障碍物的尺寸大于预设越障尺寸时,向所述第二控制器发送第一提示信息,其中,所述第一提示信息用于指示所述机器人的前方预设距离内存在大于所述预设越障尺寸的障碍物;
所述第二控制器用于根据所述第一提示信息确定所述机器人的前方预设距离内存在大于所述预设越障尺寸的障碍物,并调整所述机器人的前进方向。
示例性地,所述第二控制器可以为如图1所示的主控制器B2。
在一种可能的实现方式中,所述控制单元还包括:第二控制器,所述第一控制器还用于:
当所述障碍物的尺寸不大于所述预设越障尺寸时,向所述第二控制器发送第二提示信息,其中,所述第二提示信息用于指示所述机器人的前方预设距离内未存在大于所述预设越障尺寸的障碍物;
所述第二控制器用于根据所述第二提示信息确定所述机器人的前方预设距离内未存在大于所述预设越障尺寸的障碍物,并控制所述机器人沿着原始前进方向继续前进。
在一种可能的实现方式中,所述多个测距传感器的测距角度的差值小于预设角度差。
在一种可能的实现方式中,所述多个测距传感器中任意相邻的两个测距传感器之间的间隔距离小于预设间隔距离。
在一种可能的实现方式中,任意所述测距传感器的测距数据所对应的探测水平距离大于所述机器人的制动距离阈值。
本申请实施例提供的机器人,用于执行本申请上述机器人控制方法实施例中的技术方案,其技术原理和技术效果相似,此处不再赘述。
本申请实施例还提供一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机执行指令,所述计算机执行指令被处理器执行时用于实现本申请上述机器人控制方法实施例中的技术方案,其技术原理和技术效果相似,此处不再赘述。
示例性地,所述计算机可读存储介质可以是ROM、随机存取存储器(RAM)、CD-ROM、磁带、软盘和光数据存储设备等。
应该理解,可以使用上面所示的各种形式的流程,重新排序、增加或删除步骤。例如,本申请实施例中记载的各步骤可以并行地执行也可以顺序地执行也可以不同的次序执行,只要能够实现本申请实施例公开的技术方案所期望的结果,本文在此不进行限制。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其它实施方案。本申请旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由下面的权利要求书指出。
应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求书来限制。