本发明属于机器人控制,具体涉及一种基于改进cartographer的slam的四足机器人控制方法。
背景技术:
1、移动机器人是集计算机技术、传感器技术、信息处理、电子工程、自动化以及人工智能于一体的复杂系统,随着经济社会的高速发展和科学技术的不断进步,从低端产业向着高端技术产业不断升级,移动机器人领域也有了更为广阔的发展。
2、即时定位与地图构建技术和自主导航技术是目前机器人领域研究的热点,当机器人在室内环境中或是在信号屏蔽的环境中工作,无法通过全球定位系统(gps)获得绝对位置信息,很不完善的环境知识,此时slam技术可以很好地解决这个难题。当外界信息构建完成后,机器人便可以根据环境地图进行自主导航,通过路径规划技术规划出一条合理的路线,到达指定目标点并完成任务。但发现在使用cartographer算法构建地图的时候,会有一点卡顿的情况,这是由于cartographer算法为了好的结果添加了太多冗余的优化约束,相对传统slam算法较为复杂,占用的计算资源也很大。
3、因此,需要一种既能解决占用资源大的问题,又能提高地图精度的机器人控制方法。
技术实现思路
1、本发明的目的在于克服传统技术中存在的上述问题,提供一种基于改进cartographer的slam的四足机器人控制方法。
2、为实现上述技术目的,达到上述技术效果,本发明是通过以下技术方案实现:
3、本发明提供一种基于改进cartographer的slam的四足机器人控制方法,包括如下步骤:
4、s1、搭建机器人硬件平台;
5、s2、建立实验室地图;
6、s3、进行重定位;
7、s4、路径规划;
8、s5、线速度和角速度标定;
9、s6、进行导航。
10、进一步地,步骤s1中,包括传感器的选型,选择最优的cartographer激光slam算法,然后规划机器人的路径,使路径更加平滑且高效。
11、进一步地,步骤s2中,具体过程如下:
12、四足机器人处于初始位置时位于实验室门旁边,启动机器人,自检完成后,通过环境特征信息提取设备提取的环境特征,基于cartographer slam算法提取特征点,建立环境模型;环境特征信息提取设备包括imu模块和激光雷达;优化后的cartographer slam应用在搭载于四足机器人上的jetsonnano开发板里,通过四足机器人底层发出的信息与上层匹配进行控制。
13、进一步地,cartograhper生成地图由两部分组成:
14、第一部分是生成基于局部坐标系的子图;
15、第二部分是生成一个全局地图,该地图是由子图组合而成,当识别出回环时对其进行校正;
16、生成子图是一个迭代过程,将激光雷达扫描的点云于子图坐标系进行比较,激光雷达的一次扫描提供一帧点云;
17、每帧点云记为p={pk}k=1,2,3...k,pk∈r2;点云坐标系到子图坐标系的位姿变换为tδ,则每个点在子图坐标系中的位姿由定义。
18、进一步地,优化的slam算法:
19、基于图优化的slam算法存储移动机器人所有的位姿信息及位姿间的空间约束,根据检测到的回环约束对所有位姿及其约束关系进行优化,将位姿和子图进行距离大小匹配来查找回环,判断是否合适,来实现机器人的地图构建。
20、进一步地,距离匹配的具体分步骤如下:
21、1)把每个位姿与所有的子图进行匹配来查找回环,并把所有满足距离要求的位姿都添加到约束里面;
22、2)查找与该位姿最近的2个子图submap,其余的子图不要,当有新的子图产生,把所有位姿与该新子图一一匹配,找到合适的就添加约束;
23、3)查找与该子图最近的2个位姿node;
24、4)为了更好地对比优化前后的程度,通过测量特征点进行比较,对这两个算法的相对误差绝对值数据、绝对误差数据进行计算,同时在slam算法运行期间,通过实时监测cpu占用率。
25、进一步地,步骤s3中,具体过程如下:
26、当地图构建完毕后,利用cartographer在已有地图中定位,称为cartographer定位模式;定位模式的原理与建图定位模式类似,前端负责构建子图与定位,但是后端优化时,构建的约束会考虑已有的地图,直观理解为将新构建子图优化至已有地图上;cartographer在建图时会构建许多由多个scans组成的submap,扫描匹配是通过将当前帧的雷达数据与submap进行匹配,来定位当前的位姿,从而达到重定位的目的。
27、进一步地,步骤s4中,具体过程如下:
28、1)实验室地图模型建立后,设置目标点,机器人按路径到达指定位置;
29、2)采用最小二乘法的一元线性回归模型数学方法,设样本回归模型为:
30、
31、其中:xi表示第i点的自变量,yi表示与xi相关的因变量,ei为随机扰动项,为回归方程常数项;
32、3)残差平方和为:
33、
34、其中:yi为因变量yi的对应估计值,有效说明了算法估计的路径;
35、4)为求出符合回归模型的极值,对其求偏导即可,求出回归模型方程即可根据实际情况,规划下一刻的路径。
36、进一步地,步骤s5中,具体过程如下:
37、利用测量仪器多次测量线速度和角速度,然后用最小二乘法进行数据拟合,得到线速度和角速度的函数关系,同时得到四足机器人所需要的通道初始值,最后提供给四足机器人实现slam导航所需要底层发布的cmd_vel数据。
38、进一步地,步骤s6中,具体过程如下:
39、运用rviz中的插件2d goal pose在地图上发布一个点,四足机器人能够避开障碍物后到达指定地点。
40、本发明的有益效果是:
41、1、本发明优化后的cartographer slam算法耗用cpu的时间更短,在构建地图时cpu占用率的峰值稍低,计算压力相对较小。
42、2、本发明优化后的cartographer slam算法建图效果要明显更优,测量误差减少,有更好的鲁棒性。
43、3、本发明相较于传统的gps而言,实现机器人自主导航,成本低,实用性强,可使用的范围更加广泛。
44、当然,实施本发明的任一产品并不一定需要同时达到以上的所有优点。
1.一种基于改进cartographer的slam的四足机器人控制方法,其特征在于,包括如下步骤:
2.根据权利要求1所述的基于改进cartographer的slam的四足机器人控制方法,其特征在于,步骤s1中,包括传感器的选型,选择最优的cartographer激光slam算法,然后规划机器人的路径,使路径更加平滑且高效。
3.根据权利要求2所述的基于改进cartographer的slam的四足机器人控制方法,其特征在于,步骤s2中,具体过程如下:
4.根据权利要求3所述的基于改进cartographer的slam的四足机器人控制方法,其特征在于,cartograhper生成地图由两部分组成:
5.根据权利要求4所述的基于改进cartographer的slam的四足机器人控制方法,其特征在于,优化的slam算法:
6.根据权利要求5所述的基于改进cartographer的slam的四足机器人控制方法,其特征在于,距离匹配的具体分步骤如下:
7.根据权利要求6所述的基于改进cartographer的slam的四足机器人控制方法,其特征在于,步骤s3中,具体过程如下:
8.根据权利要求7所述的基于改进cartographer的slam的四足机器人控制方法,其特征在于,步骤s4中,具体过程如下:
9.根据权利要求8所述的基于改进cartographer的slam的四足机器人控制方法,其特征在于,步骤s5中,具体过程如下:
10.根据权利要求9所述的基于改进cartographer的slam的四足机器人控制方法,其特征在于,步骤s6中,具体过程如下: