基于ros的多导盲机器人及在未知环境中的地图创建方法_2

文档序号:9644638阅读:来源:国知局
] 本发明设及一种基于R0S的多导盲机器人及在未知环境中的地图创建方法。该方 法中使用的多导盲机器人包括至少两台导盲机器人个体,每台导盲机器人个体结构相同, 可W自主移动。每台导盲机器人个体都是独立的智能体,能够独立探测自己周围的环境。每 台导盲机器人个体都运行R0S操作系统。导盲机器人个体之间采用分布式控制结构,导盲 机器人个体之间可W通过WiFi连接传输数据,实现导盲机器人个体之间的信息交互。导盲 机器人个体之间的WiFi连接主要是各自笔记本间的WiFi连接。多导盲机器人所处的区域 环境中的标志性特征点上预设有错点,即RFID标签,其中存储该特征点在全局地图下的坐 标,该坐标值是利用导盲机器人个体半径和定位误差之和进行膨胀,扩大尺寸后的坐标值。 启动所有导盲机器人个体的数据采集模块3和RFID模块2后,手动控制其在区域中运行一 圈,通过数据采集模块3获取区域环境中的障碍物数据信息,RFID模块2采集区域环境中的 错点信息。为保证安全,将导盲机器人个体上的数据采集模块3获取的区域环境中的障碍 物数据信息,利用导盲机器人个体半径和定位误差之和进行膨胀,将障碍物尺寸进行扩大, 运行R0S提供的功能包中的EKF-SLAM算法,建立并保存各自区域的带有错点坐标的SLAM 地图。导盲机器人个体之间通过各自的笔记本5的WiFi连接进行生成的带有错点坐标的 SLAM地图的交互。
[0040] 本发明的导盲机器人个体外形如图1所示,包括车身,所述车身为Ξ层构造,底层 设有车轮组7 (车轮组包括两个驱动轮和一个万向轮),电机6,电机驱动器8和电源转换模 块1 ;第二层设有运动控制器9,电源10和语音识别模块4 ;第Ξ层设置有RFID模块2,数据 采集模块3和笔记本5,车身采用分层结构,在每一层间里都合理的布置了相应的模块,在 充分利用导盲机器人车身空间的基础上,避免了各个模块工作时所带来的干扰问题。
[0041] 本发明的导盲机器人个体控制结构如图2所示,笔记本5通过USB串口分别与 RFID模块2,数据采集模块3,语音识别模块4和运动控制器9进行通信;运动控制器9输 出驱动信号至电机驱动器8,电机驱动器8驱动电机6从而带动驱动轮,电源10通过电源转 换模块1分别给RFID模块2,数据采集模块3和语音识别模块4供电。本发明将整体分割 为几个部分,思路清晰,控制效果显著,各部分功能互相独立,笔记本5和数据采集模块3, 运动控制器9,语音识别模块4和RFID模块2间采用标准接口,整个通信过程稳定、条理清 晰、扩展性好,与盲人之间保持了良好的交互性。
[0042] 本发明的多导盲机器人所处的未知环境如图3所示,包括Ξ个区域,区域A,区域B 和区域C,区域A内放置有导盲机器人个体A和两个尺寸不同的长方形障碍物,在障碍物的 角点上分别设置一个RFID标签,在区域A的墙角处同样设置一个RFID标签,运些预先设置 的RFID标签中存储有坐标系Χι〇ιΥι下的坐标值,分别为a1 (Xal,yai),曰2 (Xa2,ya2),曰3 (Xa3,ya3); 区域B内放置有导盲机器人个体B和一个长方形的障碍物,区域B内障碍物的角点处设置 有一个RFID标签,在区域B的两个不同的墙角处同样各设置一个RFID标签,标签中存储有 坐标系X2O2Y2下的坐标值,分别为b1 (而1,ybi),bz(而2,yb2),bs(而3,yb3);区域C内放置有导盲 机器人个体C和一个长方形的障碍物,区域C内障碍物的角点上设置有一个RFID标签,区 域C中的两个不同的墙角处各设置一个RFID标签,标签中存储有坐标系X3O3Y3下的坐标值, 分别为Cl沁1,yei),C2沁2,yc2),沁3,yc3)。运些预设的RFID标签称之为错点。
[0043] 如图4所示,本发明的基于R0S的多导盲机器人在未知环境中地图创建方法,步骤 如下: W44] (1)在区域A,区域B和区域C中各设置3个错点,即在所处区域中的重要标志性 特征点上设置封装有该位置坐标信息的RFID标签; W45] 似启动导盲机器人个体A,B和C的数据采集模块3和RFID模块2 ;
[0046] (3)手动控制导盲机器人个体A,B和C在各自所在的区域中运行一圈,数据采集模 块3获取区域中的障碍物数据信息,数据采集模块3采用激光雷达,一次扫描可W得到1080 个环境特征点数据(扫描范围270°,扫描体征点间隔0.25° ),运些数据是W激光雷达中 屯、为极点的极坐标系表示的局部坐标(心目i),其中目i= 1*0. 25*π/270
[0047] 第i个特征点在全局坐标下的坐标为:
[0048] Xi=Xk+di cos白icos口k+di sin白isin口k
[0049] Yi=y k+di cos白isin口k+di sin白icos口k
[0050] 其中(Xk,yj是k时刻激光雷达在全局坐标系中的坐标,因为激光雷达设置在导盲 机器人个体上,因此认为导盲机器人个体的坐标值即为激光雷达的坐标值,α为k时刻激 光雷达主轴与全局坐标系X轴的夹角,di表示k时刻激光雷达与第i个特征点之间的距离。
[0051] RFID模块2采集区域中的错点信息,即区域中标志性特征点的坐标,该坐标值 是利用导盲机器人个体半径r和定位误差Δ之和进行膨胀之后,在各自全局坐标系下的 全局坐标值,A房间:日1 (Xal,yai),日2 (Xa2,ya2),日3 (Xa3,ya3);B房间:bi(而1,ybi),bz(而2,yb2), b3(Xb3,yb3);C房间:Cl(Xci,y"),C2(Xc2,yc2),C3(Xc3,yc3);
[0052] (4)为保障安全,防止导盲机器人个体距离障碍物过近,发生碰撞,将步骤3)中导 盲机器人个体获取的区域中的障碍物数据信息利用导盲机器人个体半径和定位误差之和 进行膨胀,将障碍物尺寸进行扩大,使得导盲机器人个体与障碍物间始终保持一定的安全 距离; 阳05引 妨运用R0S提供的功能包中EKF-SLAM算法,创建并保存区域A,区域B和区域C的带有错点坐标的SLAM地图,记为Sa,Sb和SC;
[0054] (6)导盲机器人个体A,B,C通过各自笔记本巧)的WiFi连接进行数据交互,即步 骤5)中生成的带有错点坐标的SLAM地图的交互。即每个导盲机器人个体都拥有Ξ个区域 的带有错点坐标的SLAM地图。
[0055] 如图5所示,本发明的多导盲机器人在未知环境中地图创建方法,所采用的 EKF-SLAM算法步骤如下:
[0056] 在基于特征的导盲机器人个体的实时定位与地图创建中,把导盲机器人个体在运 动过程中的位姿X和地图中所有特征点Μ存储在一个独立的状态空间向量X中,X可表示 为:
[0057]X似=[Xk,Mk]T 阳〇5引其中Μ=如,m2, . . .,1%)表示区域中所有特征点的集合,mi=(X1,yi)表示地图 环境中第i个特征点的坐标。
[0059] 导盲机器人个体运动过程模型为:Xk=f(Xk1,Uki) +?k W60] 式中非线性函数f(*)将k-1时刻的状态映射到k时刻的状态,Xk表示k时刻的导 盲机器人个体的位姿,Uk1表示由k-2时刻到k-1时刻的导盲机器人个体的运动控制量,随 机信号ωk表示导盲机器人个体运动过程中的过程控制噪声,其均值为0,协方差为Qk。
[0061] 导盲机器人个体的观测模型为:Zk=h狂化))+Vk
[0062] 式中非线性函数h(*)为导盲机器人个体的观测函数,随机信号Vk表示导盲机器 人个体观测过程中的观测噪声,其均值为0,协方差为Rk。 阳06引 EKF-SLAM算法包括W下步骤: W64] 1)初始化:对导盲机器人个体的SLAM状态空间向量X(0),误差协方差矩阵P。,导 盲机器人个体运动过程噪声协方差矩阵Q。,导盲机器人个体观测噪声协方差矩阵R。,导盲 机器人个体运控过程控制量U。,等参数进行
当前第2页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1