机器人测距校准方法、装置、机器人和介质转让专利

申请号 : CN201910312237.6

文献号 : CN109932726B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 李华强李琼

申请人 : 北京石头世纪科技股份有限公司

摘要 :

本公开提供一种机器人测距校准方法、装置、机器人及介质,其中,所述机器人设置有测距单元测距单元,当所述机器人与障碍物发生碰撞时执行所述方法,所述方法包括:获取检测并标记所述机器人上碰撞点的位置;根据所述碰撞点的位置计算所述测距单元测距单元与所述碰撞点的位置的理论距离;获取所述测距单元测距单元所测得的检测碰撞点与所述测距单元测距单元传感器之间的测量距离;根据所述理论距离和测量距离对所述测距单元测距单元进行校准。通过本公开的测距校准方法,能够使机器人在不断的碰撞过程中或者周期性的对机器人进行测距传感器的校准,用以使机器人能够进行经常性校准,保证机器人距离数据的准确性。

权利要求 :

1.一种机器人测距校准方法,所述机器人设置有测距单元,其特征在于,当所述机器人与障碍物发生碰撞时执行所述方法,所述方法包括:获取所述机器人上碰撞点的位置;

根据所述碰撞点的位置计算所述测距单元与所述碰撞点的理论距离;

获取所述测距单元所测得的碰撞点与所述测距单元之间的测量距离;以及根据所述理论距离和测量距离对所述测距单元进行校准。

2.根据权利要求1所述的方法,其特征在于,所述根据所述理论距离和测量距离对所述测距单元进行校准,包括:计算所述测量距离与理论距离的误差值;

将所述测距单元的调整值设置为所述误差值对所述测距单元进行校准。

3.根据权利要求1所述的方法,其特征在于,所述机器人具有圆形的轮廓。

4.根据权利要求3所述的方法,其特征在于,所述根据所述碰撞点的位置计算所述测距单元与所述碰撞点的理论距离,包括:确定碰撞点的位置;

根据所述碰撞点的位置,确定其与测距装置圆心在机器人中心点构成的夹角;根据所述夹角,机器人半径,机器人中心点与测距单元圆心的距离确定所述理论距离。

5.根据权利要求4所述的方法,其特征在于,所述理论距离的计算公式如下:其中x为理论距离,为测距单元圆心与碰撞点之间的计算得到的距离,r为机器人的半径,l为机器人中心点与测距装置圆心之间的距离,α为所述碰撞点其与测距单元圆心在机器人中心点构成的夹角,即所述碰撞点、测距单元圆心点与机器人中心点构成的三角形中的以机器人中心点为顶点的夹角。

6.根据权利要求1所述的方法,其特征在于,所述机器人在每次碰撞时对测距单元进行校准。

7.根据权利要求1所述的方法,其特征在于,所述机器人周期性对测距单元进行校准。

8.根据权利要求7所述的方法,其特征在于,所述周期性对测距单元进行校准包括一定时间周期或者一定碰撞周期。

9.根据权利要求1所述的方法,其特征在于,所述测距单元包括激光测距传感器、红外测距传感器、超声波传感器和雷达传感器中的至少其中之一。

10.根据权利要求1所述的方法,其特征在于,所述机器人为扫地机器人、拖地机器人、除尘机器人、清障机器人、割草机器人和绘图机器人其中之一。

11.一种机器人测距校准装置,其特征在于,包括:

感知单元,获取所述机器人上碰撞点的位置;

数据单元,用于根据所述碰撞点的位置计算测距单元与所述碰撞点的理论距离;

测距单元,获取所述测距单元所测得的碰撞点与所述测距单元之间的测量距离;

校准单元,用于根据所述理论距离和测量距离对所述测距单元进行校准。

12.根据权利要求11所述的装置,其特征在于,所述测距单元包括测距传感器,所述测距传感器设置在测距单元的中心点。

13.根据权利要求11所述的装置,其特征在于,所述校准单元在每次碰撞时对测距单元进行校准或者周期性对测距单元进行校准。

14.根据权利要求11所述的装置,其特征在于,所述测距单元包括激光测距传感器、红外测距传感器、超声波传感器和雷达传感器中的至少其中之一。

15.一种机器人,包括处理器和存储器,所述存储器存储有能够被所述处理器执行的计算机程序指令,所述处理器执行所述计算机程序指令时,实现如权利要求1-10任一所述的方法步骤。

16.一种机器人,其特征在于,包括如权利要求11-14任一项所述的装置。

17.根据权利要求15或16所述的机器人,其特征在于,所述机器人为扫地机器人、拖地机器人、除尘机器人、清障机器人、割草机器人和绘图机器人其中之一。

18.一种非瞬时性计算机可读存储介质,其特征在于,存储有计算机程序指令,所述计算机程序指令在被处理器调用和执行时实现权利要求1-10任一所述的方法步骤。

说明书 :

机器人测距校准方法、装置、机器人和介质

技术领域

[0001] 本申请涉及控制技术领域,尤其涉及一种机器人测距校准方法、装置、机器人和介质。

背景技术

[0002] 随着技术的发展,出现了各种各样的具有智能系统的机器人,比如扫地机器人、拖地机器人、吸尘器、除草机等。这些机器人可以在无使用者操作的情况下,在某一区域自动行进并进行清洁或清除操作。机器人中通常安装有LDS(Laser Distance Sensor,激光测距传感器),机器人通过LDS测量与所在区域中的各种障碍物之间的距离,从而绘制所在区域的地图、躲避障碍物以及在区域中对自身所在位置进行定位等。
[0003] LDS通常包括半导体激光器、CMOS(Complementary Metal Oxide Semiconductor,互补金属氧化物半导体)传感器、数字信号处理芯片以及激光器驱动等元件。机器人在使用LDS测量与物体之间的距离时,在激光器驱动的驱使下,半导体激光器发射激光脉冲,激光脉冲照射到障碍物上后逆反射至CMOS传感器上,机器人通过确定CMOS传感器中接收到逆反射光的感光单元的位置来确定与障碍物之间的距离。
[0004] 由于CMOS传感器和激光器驱动性能容易受温度影响,从而影响LDS的测量结果,因此需要对LDS进行经常性校准。

发明内容

[0005] 有鉴于此,本申请实施例提供一种机器人测距校准方法、装置、机器人以及存储介质,用以使机器人能够进行经常性测距校准,保证机器人距离数据的准确性。
[0006] 第一方面,本申请实施例提供一种机器人测距校准方法,所述机器人设置有测距单元,当所述机器人与障碍物发生碰撞时执行所述方法,所述方法包括:
[0007] 获取所述机器人上碰撞点的位置;
[0008] 根据所述碰撞点的位置计算所述测距单元与所述碰撞点的理论距离;
[0009] 获取所述测距单元所测得的碰撞点与所述测距单元之间的测量距离;以及[0010] 根据所述理论距离和测量距离对所述测距单元进行校准。
[0011] 在一些可能的实现方式中,
[0012] 所述根据所述理论距离和测量距离对所述测距单元进行校准,包括:
[0013] 计算所述测量距离与理论距离的误差值;
[0014] 将所述测距单元的调整值设置为所述误差值对所述测距单元进行校准。
[0015] 在一些可能的实现方式中,所述机器人具有圆形的轮廓,所述测距单元具有圆形的轮廓。
[0016] 在一些可能的实现方式中,
[0017] 所述根据所述碰撞点的位置计算所述测距单元与所述碰撞点的理论距离,包括:
[0018] 确定碰撞点的位置;
[0019] 根据所述碰撞点的位置,确定其与测距单元圆心在机器人中心点构成的夹角;根据所述夹角,机器人半径,机器人中心点与测距单元圆心的距离确定所述理论距离。
[0020] 在一些可能的实现方式中,所述理论距离x的计算公式如下:
[0021]
[0022] 其中x为理论距离,为测距单元圆心与碰撞点之间的计算得到的距离,r为机器人的半径,l为机器人中心点与测距单元圆心之间的距离,α为所述碰撞点其与测距单元圆心在机器人中心点构成的夹角,即所述碰撞点、测距单元圆心点与机器人中心点构成的三角形中的以机器人中心点为顶点的夹角。
[0023] 在一些可能的实现方式中,所述机器人在每次碰撞时对测距装置进行校准。
[0024] 在一些可能的实现方式中,所述机器人周期性对测距单元进行校准。
[0025] 在一些可能的实现方式中,所述周期性对测距单元进行校准包括一定时间周期或者一定碰撞周期。
[0026] 在一些可能的实现方式中,所述测距单元包括激光测距传感器、红外测距传感器、超声波传感器和雷达传感器中的至少其中之一。
[0027] 在一些可能的实现方式中,所述所述机器人为扫地机器人、拖地机器人、清障机器人、割草机器人和绘图机器人其中之一。
[0028] 第二方面,本申请实施例提供一种机器人测距校准装置,包括:
[0029] 感知单元,获取所述机器人上碰撞点的位置;
[0030] 测距单元,用于测量碰撞点与所述测距单元之间的测量距离;
[0031] 数据单元,用于根据所述碰撞点的位置计算所述测距单元与所述碰撞点的理论距离;
[0032] 校准单元,用于根据所述理论距离和测量距离对所述测距单元进行校准。
[0033] 在一些可能的实现方式中,所述测距单元包括测距传感器,所述测距传感器设置在测距单元的中心点。
[0034] 在一些可能的实现方式中,所述校准单元在每次碰撞时对测距单元进行校准或者周期性对测距单元进行校准。
[0035] 在一些可能的实现方式中,所述测距单元包括激光测距传感器、红外测距传感器、超声波传感器和雷达传感器中的至少其中之一。
[0036] 第三方面,本申请实施例提供一种机器人,包括处理器和存储器,所述存储器存储有能够被所述处理器执行的计算机程序指令,所述处理器执行所述计算机程序指令时,实现第一方面任一所述的方法步骤。
[0037] 第四方面,本申请实施例提供一种机器人,包括第二方面任一所述的机器人控制装置。
[0038] 其中,第四和第五方面中的所述机器人为扫地机器人、拖地机器人、清障机器人、割草机器人和绘图机器人其中之一。
[0039] 第五方面,本申请实施例提供一种非瞬时性计算机可读存储介质,存储有计算机程序指令,所述计算机程序指令在被处理器调用和执行时实现第一方面任一所述的方法步骤。
[0040] 本申请实施例至少具有以下技术效果:
[0041] 机器人(尤其清洁机器人)在工作过程中不可避免会与障碍物发生碰撞,根据本申请实施例所提供技术方案,使机器人在不断的碰撞过程中或者周期性的对机器人进行测距传感器的校准,本申请实施例利用该特点对测距单元(例如激光测距单元LDS)进行校准,在自动清扫装置的工作过程中自动实现测距单元的校准。

附图说明

[0042] 为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0043] 图1本申请实施例提供的机器人结构立体图;
[0044] 图2为本申请实施例提供的一应用场景示意图;
[0045] 图3为本申请实施例提供的机器人结构俯视图;
[0046] 图4为本申请实施例提供的机器人结构仰视图;
[0047] 图5为本申请实施例提供的机器人结构正视图;
[0048] 图6为本申请一实施例提供的机器人的测距校准方法流程图;
[0049] 图7是图6中的测距校准方法中的理论距离计算方法示意图;
[0050] 图8为本申请又一实施例提供的机器人测距校准装置示意图;
[0051] 图9为本申请实施例提供的机器人的电子结构示意图。

具体实施方式

[0052] 为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
[0053] 应当理解,尽管在本申请实施例中可能采用术语第一、第二、第三等来描述……,但这些……不应限于这些术语。这些术语仅用来将……彼此区分开。例如,在不脱离本申请实施例范围的情况下,第一……也可以被称为第二……,类似地,第二……也可以被称为第一……。
[0054] 为了更加清楚地描述机器人的行为,进行如下方向定义:
[0055] 如图1所示,机器人100可通过相对于由主体110界定的如下三个相互垂直轴的移动的各种组合在地面上行进:前后轴X、横向轴Y及中心垂直轴Z。沿着前后轴X的前向驱动方向标示为“前向”,且沿着前后轴X的向后驱动方向标示为“后向”。横向轴Y实质上是沿着由驱动轮模块141的中心点界定的轴心在机器人的右轮与左轮之间延伸。
[0056] 机器人100可以绕Y轴转动。当机器人100的前向部分向上倾斜,向后向部分向下倾斜时为“上仰”,且当机器人100的前向部分向下倾斜,向后向部分向上倾斜时为“下俯”。另外,机器人100可以绕Z轴转动。在机器人的前向方向上,当机器人100向X轴的右侧倾斜为“右转”,当机器人100向X轴的左侧倾斜为“左转”。
[0057] 请参阅图2,为本申请实施例提供的一种可能的应用场景,该应用场景包括机器人,例如扫地机器人、拖地机器人、除尘机器人、清障机器人、割草机器人和绘图机器人等等。在某些实施例中,该机器人可以是机器人,具体可以为扫地机器人、拖地机器人。在实施中,机器人可以设置有路径规划系统,机器人按照系统设置的路径进行运动,实施清扫、除尘、擦拭、绘图等操作。机器人还设置有测距单元,用来测量机器人与障碍物之间的距离,机器人在工作过程中不可避免会与障碍物发生碰撞,本申请实施例中可在每次碰撞发生时对机器人的测距单元进行校准,也可在碰撞。在其他实施例中,机器人可以设置有触敏显示器,以接收用户输入的操作指令。机器人还可以设置有WIFI模块、Bluetooth模块等无线通讯模块,以与智能终端连接,并通过无线通讯模块接收用户利用智能终端传输的操作指令。
[0058] LDS(Laser Distance Sensor,激光测距传感器):先由激光二极管对准目标发射激光脉冲。经目标反射后激光向各方向散射。部分散射光返回到传感器接收器,被光学系统接收后成像到光电转换器件,例如雪崩光电二极管上。其中,雪崩光电二极管是一种内部具有放大功能的光学传感器,因此它能检测极其微弱的光信号。记录并处理从光脉冲发出到返回被接收所经历的时间,即可测定目标距离。
[0059] 相关机器人的结构描述如下,如图3-5所示:
[0060] 机器人100包含机器主体110、感知系统120、控制系统、驱动系统140、清洁系统、能源系统和人机交互系统170。如图2所示。
[0061] 机器主体110包括前向部分111和后向部分112,具有近似圆形形状(前后都为圆形),也可具有其他形状,包括但不限于前圆后方的近似D形形状。
[0062] 如图3-5所示,感知系统120包括位于机器主体110上方的位置确定装置121、位于机器主体110的前向部分111的缓冲器122、悬崖传感器123和超声传感器、红外传感器、磁力计、加速度计、陀螺仪、里程计等传感装置,向控制系统130提供机器的各种位置信息和运动状态信息。位置确定装置121包括但不限于摄像头、LDS。下面以三角测距法的激光测距单元为例说明如何进行位置确定。三角测距法的基本原理基于相似三角形的等比关系,在此不做赘述。
[0063] 激光测距单元包括发光单元和受光单元。发光单元可以包括发射光的光源,光源可以包括发光元件,例如发射红外光线或可见光线的红外或可见光线LED(Light Emitting Diode,发光二极管)。优选地,光源可以是发射激光束的发光元件。在本实施例中,将LD(Laser Diode,激光二极管)作为光源的例子。具体地,由于激光束的单色、定向和准直特性,使用激光束的光源可以使得测量相比于其它光更为准确。例如,相比于激光束,LED发射的红外光线或可见光线受周围环境因素影响(例如对象的颜色或纹理),而在测量准确性上可能有所降低。LD可以是点激光,测量出障碍物的二维位置信息,也可以是线激光,测量出障碍物一定范围内的三维位置信息。
[0064] 受光单元可以包括图像传感器,在该图像传感器上形成由障碍物反射或散射的光点。图像传感器可以是单排或者多排的多个单位像素的集合。这些受光元件可以将光信号转换为电信号。图像传感器可以为CMOS(Complementary Metal Oxide Semiconductor,互补金属氧化物半导体)传感器或者CCD(Charge-coupled Device,电荷耦合元件)传感器等,本发明实施例不做限制,由于成本上的优势优选可以是CMOS传感器。而且,受光单元可以包括受光透镜组件。由障碍物反射或散射的光可以经由受光透镜组件行进以在图像传感器上形成图像。受光透镜组件可以包括单个或者多个透镜。
[0065] 基部可以支撑发光单元和受光单元,发光单元和受光单元布置在基部上且彼此间隔一特定距离。为了测量机器人周围360度方向上的障碍物情况,可以使基部可旋转地布置在主体110上,也可以基部本身不旋转而通过设置旋转元件而使发射光、接收光发生旋转。旋转元件的旋转角速度可以通过设置光耦元件和码盘获得,光耦元件感应码盘上的齿缺,通过齿缺间距的滑过时间和齿缺间距离值相除可得到瞬时角速度。码盘上齿缺的密度越大,测量的准确率和精度也就相应越高,但在结构上就更加精密,计算量也越高;反之,齿缺的密度越小,测量的准确率和精度相应也就越低,但在结构上可以相对简单,计算量也越小,可以降低一些成本。
[0066] 与受光单元连接的数据处理装置将相对于机器人0度角方向上的所有角度处的障碍物距离值记录并传送给控制系统130中的数据处理单元,如包含CPU的AP(Application Processor,应用处理器),CPU运行基于粒子滤波的定位算法获得机器人的当前位置,并根据此位置制图,供导航使用。定位算法可以使用SLAM(Simultaneous Localization And Mapping,即时定位与地图构建)。
[0067] 基于三角测距法的激光测距单元虽然在原理上可以测量一定距离以外的无限远距离处的距离值,但实际上远距离测量,例如6米以上,的实现是很有难度的,主要因为受光单元的传感器上像素单元的尺寸限制,同时也受传感器的光电转换速度、传感器与连接的DSP(Digital Signal Processor,数字信号处理器)之间的数据传输速度、DSP的计算速度影响。激光测距单元受温度影响得到的测量值也会发生系统无法容忍的变化,主要是因为发光单元与受光单元之间的结构发生的热膨胀变形导致入射光和出射光之间的角度变化,发光单元和受光单元自身也会存在温漂问题。激光测距单元长期使用后,由于温度变化、振动等多方面因素累积而造成的形变也会严重影响测量结果。测量结果的准确性直接决定了绘制地图的准确性,是机器人进一步进行策略实行的基础,尤为重要。
[0068] 机器主体110的前向部分111可承载缓冲器122,在清洁过程中驱动轮模块141推进机器人在地面行走时,缓冲器122经由传感器系统,例如红外传感器、激光传感器、超声传感器、雷达传感器等,检测机器人100的行驶路径中的一或多个事件,机器人可通过由缓冲器122检测到的事件,例如障碍物、墙壁,而控制驱动轮模块141使机器人来对所述事件做出响应,例如远离障碍物。并且可以在碰撞时对碰撞点位置进行检测和标记。
[0069] 控制系统130设置在机器主体110内的电路主板上,包括与非暂时性存储器,例如硬盘、快闪存储器、随机存取存储器,通信的计算处理器,例如中央处理单元、应用处理器,应用处理器根据激光测距单元反馈的障碍物信息利用定位算法,例如SLAM,绘制机器人所在环境中的即时地图。并且结合缓冲器122、悬崖传感器123和超声传感器、红外传感器、磁力计、加速度计、陀螺仪、里程计等传感装置反馈的距离信息、速度信息综合判断扫地机当前处于何种工作状态,如过门槛,上地毯,位于悬崖处,上方或者下方被卡住,尘盒满,被拿起等等,还会针对不同情况给出具体的下一步动作策略,使得机器人的工作更加符合主人的要求,有更好的用户体验。进一步地,控制系统130能基于SLAM绘制的即时地图信息规划最为高效合理的清扫路径和清扫方式,大大提高机器人的清扫效率。
[0070] 驱动系统140可基于具有距离和角度信息,例如x、y及θ分量,的驱动命令而操纵机器人100跨越地面行驶。驱动系统140包含驱动轮模块141,驱动轮模块141可以同时控制左轮和右轮,为了更为精确地控制机器的运动,优选驱动轮模块141分别包括左驱动轮模块和右驱动轮模块。左、右驱动轮模块沿着由主体110界定的横向轴对置。为了机器人能够在地面上更为稳定地运动或者更强的运动能力,机器人可以包括一个或者多个从动轮142,从动轮包括但不限于万向轮。驱动轮模块包括行走轮和驱动马达以及控制驱动马达的控制电路,驱动轮模块还可以连接测量驱动电流的电路和里程计。驱动轮模块141可以可拆卸地连接到主体110上,方便拆装和维修。驱动轮可具有偏置下落式悬挂系统,以可移动方式紧固,例如以可旋转方式附接,到机器人主体110,且接收向下及远离机器人主体110偏置的弹簧偏置。弹簧偏置允许驱动轮以一定的着地力维持与地面的接触及牵引,同时机器人100的清洁元件也以一定的压力接触地面10。
[0071] 清洁系统可为干式清洁系统和/或湿式清洁系统。作为干式清洁系统,主要的清洁功能源于滚刷、尘盒、风机、出风口以及四者之间的连接部件所构成的清扫系统151。与地面具有一定干涉的滚刷将地面上的垃圾扫起并卷带到滚刷与尘盒之间的吸尘口前方,然后被风机产生并经过尘盒的有吸力的气体吸入尘盒。扫地机的除尘能力可用DPU(Dust pick up efficiency,垃圾的清扫效率)进行表征,清扫效率DPU受滚刷结构和材料影响,受吸尘口、尘盒、风机、出风口以及四者之间的连接部件所构成的风道的风力利用率影响,受风机的类型和功率影响,是个复杂的系统设计问题。相比于普通的插电吸尘器,除尘能力的提高对于能源有限的清洁机器人来说意义更大。因为除尘能力的提高直接有效降低了对于能源要求,也就是说原来充一次电可以清扫80平米地面的机器,可以进化为充一次电清扫100平米甚至更多。并且减少充电次数的电池的使用寿命也会大大增加,使得用户更换电池的频率也会增加。更为直观和重要的是,除尘能力的提高是最为明显和重要的用户体验,用户会直接得出扫得是否干净/擦得是否干净的结论。干式清洁系统还可包含具有旋转轴的边刷152,旋转轴相对于地面成一定角度,以用于将碎屑移动到清洁系统的滚刷区域中。
[0072] 能源系统包括充电电池,例如镍氢电池和锂电池。充电电池可以连接有充电控制电路、电池组充电温度检测电路和电池欠压监测电路,充电控制电路、电池组充电温度检测电路、电池欠压监测电路再与单片机控制电路相连。主机通过设置在机身侧方或者下方的充电电极与充电桩连接进行充电。如果裸露的充电电极上沾附有灰尘,会在充电过程中由于电荷的累积效应,导致电极周边的塑料机体融化变形,甚至导致电极本身发生变形,无法继续正常充电。
[0073] 人机交互系统170包括主机面板上的按键,按键供用户进行功能选择;还可以包括显示屏和/或指示灯和/或喇叭,显示屏、指示灯和喇叭向用户展示当前机器所处状态或者功能选择项;还可以包括手机客户端程序。对于路径导航型清洁设备,在手机客户端可以向用户展示设备所在环境的地图,以及机器所处位置,可以向用户提供更为丰富和人性化的功能项。
[0074] 参照图6,为本实施例的智能机器人的测距校准方法流程图,在该实施例中,LDS中的图像传感器可以为CMOS传感器。
[0075] 由于CMOS传感器和激光器驱动性能容易受温度影响,从而影响测距单元的测量结果,在本实施例中,测量单元可以是LDS,为消除或减小温度对LDS测量结果的影响,需要对LDS进行经常性校准。清洁机器人在工作过程中,会发生与障碍物,例如墙壁、桌椅等的碰撞,本实施例借助自动清扫装置与障碍物的碰撞进行例如LDS的校准。根据碰撞点的位置计算其与测距单元的理论距离,而根据机器人上的测距单元中的传感器检测的检测距离,将理论距离与检测距离进行比较,得到校准误差,根据所述校准误差对测距传感器进行校准。
[0076] 具体的,该实施例中,LDS校准方法可以包括步骤S601至步骤S604。
[0077] 步骤S601,检测并标记所述机器人上碰撞点的位置B。其中所述机器人包括感知系统120,感知系统120中包括:位置确定装置121、位于机器主体110的前向部分111的缓冲器122、悬崖传感器123和超声传感器、红外传感器、磁力计、加速度计、陀螺仪、里程计等传感装置,向控制系统130提供机器的各种位置信息和运动状态信息。位置确定装置121包括但不限于摄像头、振动传感器,机器人可通过由缓冲器检测到的事件,例如障碍物、墙壁,感知系统中用于感知位于机器主体上的碰撞位置。
[0078] 步骤S602,根据所述碰撞点的位置计算所述测距单元与所述碰撞点的位置的理论距离。机器人中包括测距单元,其中,测距单元包括红外传感器、激光传感器、超声传感器、雷达传感器等,检测机器人的行驶路径中的一或多个事件。在本实施例中,清洁机器人可以具有圆形轮廓,其半径已知,其上设置的测距单元也具有圆形轮廓,其中的测距传感器设置在测距单元的中心点,根据清洁机器人半径、清洁机器人中心点(圆形机器人为圆心)与测距单元中心点(圆形测距单元的圆心)间距以及其之间的夹角来计算测距单元中心点与碰撞点之间的距离,该距离为计算所得,为理论距离x。除此以外,在本实施例中,清洁机器人也可具有其他形状,清洁机器人的缓冲器122具有圆形轮廓或是圆形的一部分。
[0079] 步骤S603,检测碰撞点与传感器之间的测量距离。本实施例中的清洁机器人中的测距单元例如可采用激光测距传感器(例如LDS):先由激光二极管对准目标发射激光脉冲。经目标反射后激光向各方向散射。部分散射光返回到传感器接收器,被光学系统接收后成像到光电转换器件上,例如雪崩光电二极管等。其中,雪崩光电二极管是一种内部具有放大功能的光学传感器,因此它能检测极其微弱的光信号。记录并处理从光脉冲发出到返回被接收所经历的时间,即可测定目标距离。由此可测量机器人在碰撞时与障碍物之间的测量距离x1。
[0080] 步骤S604,根据所述理论距离和测量距离对所述测距单元进行校准。其中,校准基于测距单元与碰撞点的理论距离与测量距离之间的误差作为校准值,具体的,清洁机器人在碰撞时计算得到的测距单元与碰撞点之间的理论距离x与所述测距单元中的测距传感器测量的碰撞点(障碍物)之间的测量距离x1的误差值△x,作为测距单元的校准值对其进行校准,即该误差值作为测距传感器的基准调整值,进行基准点的校准。
[0081] 具体的,将测距传感器测量的校准值设置为△x,其中△x=x-x1,对测距传感器进行计算校准,将测量基准增加△x作为校准后的测量基准进行复位,注意,如果△x为负值,则增加△x等效于减小︱△x︱。另外,如果测距传感器能够确定碰撞点角度(例如各种传感器阵列),则可根据碰撞点的角度和距离偏差对测距传感器进行坐标基准复位。
[0082] 另外,清洁机器人在每次碰撞时对测距单元进行校准会增加数据单元的数据处理容量和速度,造成数据卡顿,可定期清除校准数据,例如,可每天、每周、每月等机器人会自动清除相关校准数据。
[0083] 在一些可能的实现方式中,清洁机器人并不会设置成每次碰撞都会对测距单元进行校准,可对机器人进行周期性校准操作,例如,具体的,可采用每碰撞n次对测距单元进行校准,也可采用在机器人每工作一定时长对测距单元进行校准。另外,也可采用当使用温度超过出一定范围时,再对LDS进行校准。本实施例对此不做限制。
[0084] 图7是图6中的测距校准方法中的理论距离计算方法示意图。
[0085] 下面以三角测距法的激光测距单元为例说明如何进行位置确定。三角测距法的基本原理基于三角形的余弦定理。
[0086] 如图所示,A点为清洁机器人的中心点,清洁机器人具有圆形的轮廓,则A点即机器人的圆心,C点为测距单元121的中心点,测距单元具有圆形的轮廓,则C点为测距单元的圆心,此时,测距传感器设置在所述测距单元的圆心点,以激光测距传感器(LDS)为例,l为测距单元圆心与清洁机器人圆心的距离,r为清洁机器人的半径。当清洁机器人与障碍物发生碰撞时,B点为碰撞点,由于l和r均为已知项,并可获取清洁机器人圆心与测距单元圆心连线以及碰撞点连线所构成的夹角α,根据三角形的余弦定理,进而进一步得出测距单元圆心与碰撞点之间的距离,具体公式如下:
[0087] 根据所述夹角α,机器人半径r,机器人中心点与测距单元中心点的距离l确定所述理论距离x。
[0088] 在一些可能的实现方式中,所述理论距离x的计算公式如下:
[0089]
[0090] 其中x为理论距离,为测距单元中心点与碰撞点之间的计算得到的距离,r为机器人的半径,l为机器人中心点与测距传感器之间的距离,α为所述碰撞点、测距单元中心点与机器人中心点构成的三角形中的以机器人中心点为顶点的夹角。
[0091] 将计算所获取的数值x与测距单元(例如LDS)实际测量的数值x1进行比较,获取实际测量值与理论值之间的误差△x,作为测距单元的校准值对其进行校准,即该误差值作为测距传感器的基准调整值,进行基准点的校准。
[0092] 图8是根据本发明的智能机器人的距离校准装置图。
[0093] 根据当前实施例的清洁机器人可以包括:用于识别用户的语音的麦克阵列单元、用于与远程控制设备或其他设备通信的通信单元、用于驱动主体的移动单元、清洁单元、以及用于存储信息的存储器单元。输入单元(扫地机器人的按键等)、测距传感器、充电单元、方向检测单元、位置检测单元、通信单元、语音单元、驱动单元以及存储器单元可以连接到控制单元,以将预定信息传送到控制单元或从控制单元接收预定信息。
[0094] 具体的,清洁机器人的校准装置包括:
[0095] 感知单元801,获取所述机器人上碰撞点的位置。其中,感知系统120中包括:位置确定装置121、位于机器主体110的前向部分111的缓冲器122、悬崖传感器123和超声传感器、红外传感器、磁力计、加速度计、陀螺仪、里程计等传感装置,向控制系统130提供机器的各种位置信息和运动状态信息。位置确定装置121包括但不限于摄像头、振动传感器,机器人可通过由缓冲器检测到的事件,例如障碍物、墙壁,感知系统中用于感知位于机器主体上的碰撞位置。
[0096] 数据单元802,用于计算测距单元与所述碰撞点的位置的理论距离。即数据处理器,用于存储与处理清洁机器人的位置、导航、操作等有关的预定信息。例如,扫地机器人所布置的区域的地图信息、碰撞时产生的位置和距离信息、由方向检测单元检测到的方向角信息、由位置检测单元检测到的位置信息以及由物体检测传感器检测到的障碍物信息等。
[0097] 测距单元803,用于测量碰撞点与测距单元的距离。其中,测距单元包括红外传感器、激光传感器、超声传感器、雷达传感器等,检测机器人的行驶路径中的一或多个事件,机器人可通过由缓冲器检测到的事件,例如障碍物、墙壁等。检测机器人的行驶路径中的一或多个事件。其中所述清洁机器人具有圆形的轮廓,其半径已知,其上设置的测距单元也具有圆形轮廓,其中的测距传感器设置在测距单元的中心点,根据清洁机器人半径、清洁机器人中心点(圆形机器人为圆心)与测距单元中心点(圆形测距单元的圆心)间距以及其之间的夹角来计算测距单元中心点与碰撞点之间的距离,该距离为计算所得,为理论距离测距单元。
[0098] 校准单元804,用于根据所述理论距离和测量距离对所述测距单元进行校准。所述校准根据所述理论距离和测量距离对所述测距单元进行校准。其中,校准基于测距单元与碰撞点的理论距离与测量距离之间的误差作为校准值,具体的,清洁机器人在碰撞时计算得到的测距单元与碰撞点之间的理论距离x与所述测距单元中的测距传感器测量的碰撞点(障碍物)之间的测量距离x1的误差值△x,作为测距单元的校准值对其进行校准,即该误差值作为测距传感器的基准调整值,进行基准点的校准。
[0099] 另外,清洁机器人还包括以下相关单元:
[0100] 方向检测单元,可以通过使用输入到多个接收单元的语音的时间差或水平来检测语音的方向。方向检测单元将检测到的语音的方向传送到控制单元。控制单元可以通过使用由方向检测单元检测到的语音方向来确定移动路径。
[0101] 位置检测单元,可以检测主体在预定地图信息内的坐标。在一个实施例中,由摄像头检测到的信息与存储在存储器单元中的地图信息可以相互比较以检测主体的当前位置。除了摄像头之外,位置检测单元还可以使用GPS(Global Positioning System,全球定位系统)。
[0102] 从广义上说,位置检测单元可以检测主体是否布置在特定的位置上。例如,位置检测单元可以包括用于检测主体是否布置在充电桩上的单元。
[0103] 例如,在用于检测主体是否布置在充电桩上的方法中,可以根据电力是否输入到充电单元中来检测主体是否布置在充电位置处。又例如,可以通过布置在主体或充电桩上的充电位置检测单元来检测主体是否布置在充电位置处。
[0104] 通信单元,可以将预定信息传送到/接收自远程控制设备或者其他设备。通信单元可以更新扫地机器人的地图信息。
[0105] 驱动单元,可以操作移动单元和清洁单元。驱动单元可以沿由控制单元确定的移动路径移动所述移动单元。
[0106] 存储器单元中存储与扫地机器人的操作有关的预定信息。例如,扫地机器人所布置的区域的地图信息、与麦克阵列单元所识别的语音相对应的控制命令信息、由方向检测单元检测到的方向角信息、由位置检测单元检测到的位置信息以及由物体检测传感器检测到的障碍物信息可以存储在存储器单元中。
[0107] 控制单元,可以接收由接收单元、摄像头以及物体检测传感器检测到的信息。控制单元可以基于所传送的信息识别用户的语音、检测语音发生的方向、以及检测扫地机器人的位置。此外,控制单元还可以操作移动单元和清洁单元。
[0108] 本申请实施例提供一种机器人,包括上述实施例中任一所述的机器人校准装置。
[0109] 本申请实施例提供一种机器人,包括处理器和存储器,所述存储器存储有能够被所述处理器执行的计算机程序指令,所述处理器执行所述计算机程序指令时,实现前述任一实施例的方法步骤。
[0110] 上述机器人为扫地机器人、拖地机器人、除尘机器人、清障机器人、割草机器人和绘图机器人其中之一。
[0111] 本申请实施例提供一种非瞬时性计算机可读存储介质,存储有计算机程序指令,所述计算机程序指令在被处理器调用和执行时实现前述任一实施例的方法步骤。
[0112] 如图9所示,机器人900可以包括处理装置(例如中央处理器、图形处理器等)901,其可以根据存储在只读存储器(ROM)902中的程序或者从存储装置908加载到随机访问存储器(RAM)903中的程序而执行各种适当的动作和处理。在RAM 903中,还存储有电子机器人900操作所需的各种程序和数据。处理装置901、ROM 902以及RAM 1203通过总线904彼此相连。输入/输出(I/O)接口905也连接至总线904。
[0113] 通常,以下装置可以连接至I/O接口905:包括例如触摸屏、触摸板、键盘、鼠标、摄像头、麦克风、加速度计、陀螺仪等的输入装置906;包括例如液晶显示器(LCD)、扬声器、振动器等的输出装置907;包括例如磁带、硬盘等的存储装置908;以及通信装置909。通信装置909可以允许电子机器人900与其他机器人进行无线或有线通信以交换数据。虽然图9示出了具有各种装置的电子机器人900,但是应理解的是,并不要求实施或具备所有示出的装置。可以替代地实施或具备更多或更少的装置。
[0114] 特别地,根据本申请的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本申请的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信装置909从网络上被下载和安装,或者从存储装置908被安装,或者从ROM 902被安装。在该计算机程序被处理装置901执行时,执行本申请实施例的方法中限定的上述功能。
[0115] 需要说明的是,本申请实施例上述的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、RAM(Random Access Memory,随机访问存储器)、ROM(Read-Only Memory,只读存储器)、EPROM(Erasable Programmable Read-Only Memory,可擦式可编程只读存储器)、光纤、CD-ROM(Compact Disc Read-Only Memory,便携式紧凑磁盘只读存储器)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本申请实施例中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本申请实施例中,计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读信号介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:电线、光缆、RF(Radio Frequency,射频)等等,或者上述的任意合适的组合。
[0116] 上述计算机可读介质可以是上述机器人中所包含的;也可以是单独存在,而未装配入该机器人中。
[0117] 可以以一种或多种程序设计语言或其组合来编写用于执行本申请实施例的操作的计算机程序代码,上述程序设计语言包括面向对象的程序设计语言—诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括LAN(Local Area Network,局域网)或WAN(Wide Area Network,广域网)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
[0118] 附图中的流程图和框图,图示了按照本申请各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,该模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
[0119] 描述于本申请实施例中所涉及到的单元可以通过软件的方式实现,也可以通过硬件的方式来实现。其中,单元的名称在某种情况下并不构成对该单元本身的限定。
[0120] 以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
[0121] 最后应说明的是:以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围。