1.机器人必备条件
1.1机器人的硬件要求
1.2机器人的深度信息
使用kinect虽然可以让三维的点云深度信息转化为激光雷达的二维信息,但是一般的误差有十几几十厘米
而激光雷达的传感器的信息的误差接近几厘米
1.3里程计信息
1.4仿真环境
2.ROS SLAM功能包应用方法
2.1gmapping
//最好把包全部重新导进去,这样就更能顺利进行每一步操作
roslaunch mbot_gazebo mbot_laser_nav_gazebo.launch
roslaunch mbot_navigation gmapping_demo.launch
roslaunch mbot_teleop mbot_teleop.launch
之后如果遇到之前的小车加载不出来的话,在新的终端中运行killall gzserver 就行了,再运行killall gzclient就会出错,但是上面描述的问题已经解决。
2.2hector_slam
因为改变了小车的速度信息,在旋转的时候小车的计算能力有限,无法承受的计算力,导致建图效果很差。
如果把小车的速度降下来,就可以得到比较好的效果。
2.3cartographer
2.4 ORB_SLAM
3.ROS中的导航框架
3.1move_base
3.2amcl
4.ROS机器人自主导航
4.1导航示例
4.2导航仿真
roslaunch mbot_navigation nav_cloister_demo.launch
roslaunch mbot_gazebo mbot_laser_nav_gazebo.launch
在模型箭头最密集的地方就是估算机器人的位置,障碍物上都进行了膨胀,产生一个安全区域,机器人要避免进入蓝色区域
2D Pose Estimeate :表示机器人的初始位置
2D Nav Goal:表示机器人的可以规划路径
被我一卡,小车真的好像卡住了。。没法从全局去寻找最优的路径
4.3导航SLAM仿真
4.4自主探索SLAM仿真