移动机器人的实时定位方法及移动机器人的制作方法

文档序号:9653118阅读:505来源:国知局
移动机器人的实时定位方法及移动机器人的制作方法
【技术领域】
[0001]本发明涉及移动机器人的实时定位方法和移动机器人。
【背景技术】
[0002]随着人类智能化水平的提高,世界各国都很重视自主移动机器人的开发与研究,比如,室内扫地机由于其智能化以及便捷性,被越来越多的人所认可,但是由于家庭环境的复杂性和多变性,这就要求其具有实时感知环境、判断障碍等相关能力,实现其自身定位及地图创建。此外,由于实际中移室内扫地机的轮子会存在侧滑以及打滑的现象,里程计的定位精度会随着时间存在很大的累计误差。
[0003]目前室内扫地机主要分为两类:
一是随机清扫式的传统扫地机,主要采用机械开关、红外二极管、超声波等较为低廉的传感器进行避障,但是由于是采用碰撞式的随机清扫方式或按照预定的清扫路径进行清扫,不具有定位功能,因此清扫效率较低且容易对家居用品造成毁坏;
二是具有定位和导航功能的智能扫地机,该种智能扫地机多采用惯性导航、激光传感器或视觉传感器,具有自身定位以及导航功能。其中,惯性导航以牛顿力学定律为基础,机器人可以在不与外界发生任何光、电、磁等信息联系,仅依靠惯性导航实现自主三维定位、计算位姿和测量速度,但是由于惯导在每次使用之前都需要较长的初始对准时间,且导航信息经过积分而产生,定位误差随时间而增大,长期累计造成精度差;激光雷达测量精度较高,可以直接由测量数据来对环境进行特征提取,但是由于其价格成本较高,且结构设计较为复杂,也限制了其使用范围;视觉传感器可提供丰富的场景信息、探测范围广,具有较高的空间分辨率,且单目视觉传感器已广泛应用在工业机器人、移动机器人等领域,但是现有的单目视觉机器人不能直接获得环境的深度信息,需要添加额外的算法来实现环境识别的能力,运算较为复杂,且精度较低,不能较好地满足定位的实时性。
[0004]上述两种扫地机都未解决移动机器人特别是扫地机的里程计的定位精度会随着时间存在很大的累计误差的问题。

【发明内容】

[0005]本发明专利申请的目的在于提供一种移动机器人的实时定位和地图创建方法及移动机器人,解决【背景技术】中的问题。
[0006]本发明专利申请公开的移动机器人的时定位和地图创建方法的技术方案如下: 一种移动机器人的实时定位方法,所述移动机器人包括里程计模块、陀螺仪模块和双目摄像机模块,所述方法包括:
51:标定双目摄像机t吴块的相关参数;
52:设定移动机器人的初始定位信息posetQ;
53:实时获取里程计信息和陀螺仪信息;
54:对里程计信息和陀螺仪信息进行融合后以得到移动机器人当前定位信息?08^并保存;
55:移动机器人每运动预定距离或每运动预定时间后,将此时记为时刻t’ i,通过双目摄像机获取移动机器人在t’ i时刻周围环境的两帧图像信息;
56:对双目摄像机的两帧图像进行矫正;
57:对两帧图像进行环境特征点提取和立体匹配;
58:计算环境特征点的三维坐标;
59:通过SLAM算法修订移动机器人在t’ i时刻的定位信息并保存。
[0007]进一步地,所述移动机器人在任意时刻t的定位信息扫地机的定位信息pose (t)=poset.1 mod+poset0+ poset - poset,i,其中,i 表示在 t 时刻扫地机已进行了 i 次 SLAM计算,poset.1 mcid表示扫地机在ti时刻的经SLAM算法修订后的定位信息,pose t。表示扫地机初始位置信息,p0Set表示扫地机在t时刻经融合里程计信息和陀螺仪信息得到的定位信息,posen表示扫地机在ti时刻经融合里程计信息和陀螺仪信息得到的定位信息。
[0008]可选地,所述步骤S5中的预定距离为0.5m。
[0009]可选地,所述步骤S5中的预定时间为2s。
[0010]本发明专利申请公开的移动机器人的技术方案如下:
一种移动机器人,包括MCU模块、双目摄像机模块、图像采集模块、里程计模块、陀螺仪模块、数据采集模块、运动模块、通信模块和存储模块;所述MCU模块用于标定双目摄像机模块的相关参数、设定移动机器人的初始定位信息poset。、对里程计信息及陀螺仪信息进行融合以得到移动机器人的当前定位信息pose t、对图像进行环境特征点提取和立体匹配、计算环境特征点的三维坐标、计算移动机器人的修订后定位信息poSetnicld;所述图像采集模块用于采集双目摄像机模块的图像信息并传输至MCU模块;所述数据采集模块用于采集里程计模块数据信息及陀螺仪模块数据信息;所述运动模块用于将移动机器人驱动至指定位置;所述通信模块用于将数据采集模块采集到的里程计信息及陀螺仪信息传输至MCU模块和将MCU模块的指令传输至运动模块;所述存储模块用于存储定位信息。
[0011 ] 进一步地,所述MCU模块为ARM模块。
[0012]进一步地,所述通信模块为串口通信模块。
[0013]进一步地,所述数据采集模块为STM32。
[0014]进一步地,所述移动机器人为扫地机,所述运动模块为扫地机的左右驱动轮,所述里程计模块和陀螺仪模块分别用于测量左右驱动轮的位移变量和角度变量。
[0015]进一步地,所述扫地机还避障模块,所述避障模块用于检测扫地机周围障碍并通过数据采集模块传输至MCU模块。
[0016]本发明申请具有以下优点:
1、将里程计信息与陀螺仪信息相融合的算法,实时矫正移动机器人的定位信息,提高了定位精度,减小系统的累计误差;
2、使用双目视觉SLAM算法,将里程计信息与陀螺仪信息经卡尔曼滤波融合成定位信息,作为SLAM算法的预测值,结合双目摄像机获得的场景信息进行一次SLAM算法,进而实现定位,可以有效地降低里程计的累计误差;
3、在本发明的优化方案中,本发明在移动机器人每运动预定时间或预定距离运行预定时进行一次SLAM算法,在每次SLAM算法运行期间,将此期间的里程计信息与陀螺仪信息经融合的定位信息结合最近一次SLAM算法得到的定位信息进行修订后进行存储,该处理方式降低了对SLAM时间的限制,解决因一次SLAM算法耗时较长而不能在此期间对移动机器人进行定位的问题,提高了定位精度。
【附图说明】
[0017]图1是本发明方法的流程图。
[0018]图2是本发明【具体实施方式】的移动机器人的组成方框图。
【具体实施方式】
[0019]下面结合附图和【具体实施方式】对本发明方案进行进一步详细说明。
[0020]如图1所示,本发明方法中的移动机器人包括包括MCU模块、双目摄像机模块、图像采集模块、里程计模块、陀螺仪模块、数据采集模块、运动模块、通信模块和存储模块,所述MCU模块用于标定双目摄像机模块的相关参数、设定移动机器人的初始定位信息poSet。、对里程计模块数据信息及陀螺仪模块数据信息进行卡尔曼滤波融合以得到移动机器人的在t时刻的定位信息pose t和执行SLAM算法得到修订后的t时刻的移动机器人的定位信息p0Set 所述图像采集模块用于采集双目摄像机模块的图像信息并传输至MCU模块;所述数据采集模块用于采集里程计模块数据信息及陀螺仪模块数据信息;所述运动模块用于将移动机器人驱动至指定位置;所述通信模块用于将移动控制模块采集到的里程计模块数据信息及陀螺仪模块数据信息传输至MCU模块和将MCU模块的指令传输至运动模块;所述存储模块用于存储定位信息poset。、pose jP pose t mcid。
[0021]本实施例中,移动机器人以扫地机为例进行说明,如图2所示,扫地机包括MCU模块(本实施例中为ARM模块)、双目摄像机模块、图像采集模块、里程计模块、陀螺仪模块、数据采集模块(本实施例中采用STM32)、运动模块(本实施例中为扫地机的左右驱动轮)、通信模块(本实施例中采用串口通信模块)、存储模块以及避障模块(如地检、墙检等),避障模块主要使用红外传感器、超声波传感器或碰撞开关,避障模块用于产生避障信号,并通过数据采集模块进行采集并通过通信模块传输给MCU模块以控制扫地机的左右轮执行回避动作。
[0022]本发明公开的扫地机机器人的定位方法包括以下步骤。
[0023]S1:标定双目摄像机的相关参数。
[0024]初次使用时,需要标定双目摄像机的相关参数,下次使用时,在不更换扫地机的初始位置和不更换摄像头的可以不需要再次标定。双目摄像机标定的目的是确定摄像机的几何位置、属性参数和建立成像模型,以便确定世界坐标系中的物体与它在摄像机的成像平面上的像点之间的对应关系,包括确定摄像机内部几何光学特性(内部参数)和确定摄像机在世界坐标系中的三维位置和方向(外部参数)。双目摄像机的标定需要标定每个摄像头的内部参数矩阵K,还需要标定两个摄像头之间的相对位置,即右摄像头相对于左摄像头的平移矩阵t和旋转矩阵R,其中摄像机内参数为,,。为摄像机主点坐标,摄像机外参数矩阵为[R, t] ο
[0025]S2:设定扫地机的初始定位信息poset。。
[0026]本实施例中,将扫地机的初始位置poset。的坐标(X,y, phi)设置为(0,0,0),其中,x、y分别为横纵坐标,phi为角度;将扫地机中心位置设为坐标原点,X轴、y轴垂直相交于
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1