[Robot projection]step3:rrt_exploration真机自主建图

rrt_exploration理论理解

ros_wiki的翻译

rrt_exploration源码git

注意事项

1、rrt_exploration包中的python节点文件需要赋予可执行权限
2、当某节点连接不对时,可以单独启动该节点,在此终端下查看输出
3、movebase的启动我采用的是rrt_exploration_tutorial/launch/includes/move_baseSafe.launch中的movebese内容,修改了节点名字,用自己的movebase配置节点正确,可以自己用rviz发布目标点进行导航,但是没办法用assigner.py发布的点作为导航点

实操展示

视频链接
代码链接
在这里插入图片描述

修改提示

1.运行auto_slam.launch
其中启动、建图改成自己的launch文件即可

<launch>
  <!-- 启动 -->
  <include file="$(find control)/launch/ready.launch" /> 
  <!-- 建图 -->
  <include file="$(find control)/launch/gmapping.launch"/>
  <!-- 导航 -->
  <include file="$(find control)/launch/move_base.launch"/>
  <!-- rrt -->
  <include file="$(find rrt_exploration)/launch/single.launch"/>
  <!-- Rviz -->
  <node pkg="rviz" type="rviz" name="rviz" args="-d $(find control)/rviz/rrtslam.rviz"/> 

</launch>

2.修改move_base.launch
其中修改name后面的move_base_node为move_base(因为威我已经把源码的move_base_node改为move_base了),global_costmap和local_costmap开头的参数改成自己机器人对应的frame和topic名字(用rosrun rqt_tf_tree rqt_tf_tree和rostopic list可以查看)

  <node pkg="move_base" type="move_base" respawn="false" name="move_base" output="screen">
    <param name="footprint_padding" value="0.01" />
    <param name="controller_frequency" value="5.0" />
    <param name="controller_patience" value="3.0" />
    <param name="oscillation_timeout" value="30.0" />
    <param name="oscillation_distance" value="0.5" />
    <param name="planner_patience" value="1" />
    <param name="controller_patience" value="1" /> 
    <remap from="cmd_vel" to="/cmd_vel"/>
    <param name="recovery_behavior_enabled" value="false" />
    <rosparam file="$(find rrt_exploration_tutorials)/param/costmap_common_params.yaml" command="load" ns="global_costmap" />
    <rosparam file="$(find rrt_exploration_tutorials)/param/costmap_common_params.yaml" command="load" ns="local_costmap" />
    <rosparam file="$(find rrt_exploration_tutorials)/param/local_costmap_params.yaml" command="load" />
    <rosparam file="$(find rrt_exploration_tutorials)/param/global_costmap_params.yaml" command="load" />
    <rosparam file="$(find rrt_exploration_tutorials)/param/base_local_planner_params.yaml" command="load" />  
    <param name="global_costmap/global_frame" value="/map"/>
    <param name="global_costmap/robot_base_frame" value="/base_link"/>
    <param name="global_costmap/laser_scan_sensor/sensor_frame" value="/laser_link"/>
    <param name="global_costmap/laser_scan_sensor/topic" value="/scan"/>    
    <param name="local_costmap/global_frame" value="/odom"/>
    <param name="local_costmap/robot_base_frame" value="/base_link"/>
    <param name="local_costmap/laser_scan_sensor/sensor_frame" value="/laser_link"/>
    <param name="local_costmap/laser_scan_sensor/topic" value="/scan"/>
    <param name="local_costmap/obstacle_layer/laser_scan_sensor/topic" value="/scan"/>
  </node>

3.如果单独启动python节点,在single.launch中注释掉启动,且修改源码中的接收节点名字
单独启动,正常情况下,filter.py的终端下有"the map and global costmaps are received"提示
如果不需要单独启动,取消注释即可
其中一般都是/map和/base_link,如果是/base_footprint的请自行搜索文件中的base_link进行替换修改

  • 3
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 5
    评论
移动机器人项目组任务安排表 Day 01 上午 1.gmapping参数配置(李超) 2.总体launch文件的编写(钟浩) 3.机器人tf,状态,滤波器launch文件的编写(李博) 4.移动机器人调试(李超,钟浩,李博) 5.完成gmapping建图修图(李超,钟浩,李博) 下午 1.move_base参数配置(李超,钟浩) 2.amcl参数配置(李博) 3.调试机器人导航参数(李超,钟浩,李博) 4.在rviz中完成机器人单点导航(李超,钟浩) 5.记录多个导航目标点(李超,钟浩) 6.查阅随机循环导航函数的资料(李博) 7.完成随机循环导航功能节点函数(李超,钟浩,李博) 8.完成随机循环导航功能测试(李超,钟浩,李博) 里程碑事件: 1.完成gmapping建图修图 2.调试机器人导航参数 3.完成随机循环导航功能测试 Day 02 上午 1.完成循环导航代码的编写(李超,钟浩,李博) 2.调试循环导航功能(李超,钟浩,李博) 下午 1.完成自主探索建图代码的编写(李超,钟浩,李博) 2.调试自主探索功能(李超,钟浩,李博) 3.优化自主探索功能代码(李超,钟浩,李博) Day 03 上午 1.完成初始化位姿功能 2.完成里程计清零功能 下午 1.完成可设置循环次数导航功能 2.调试初始化位姿,里程计清零,循环导航功能 Day 04 上午 1.完成单点设定导航插件 下午 1.完善单点设定导航插件 2.调试单点设定导航插件功能 Day 05 上午 1.完成多导航点记录插件 2.完成多点循环导航节点 下午 1.完成多点循环导航插件 2.调试多点循环导航插件功能 Day 06 上午 1.查找关于巡墙算法的解决方案 2.完成rrt_exploration(快速随机搜索树)的下载和demo测试 下午 1.修改rrt_exploration接口 Day 07 上午 1.修改rrt_exploration接口 下午 1.修改rrt_exploration接口 Day 08 上午 1.在仿真机器人上完成快速随机搜索树自主探索建图功能 2.优化导航UI界面 下午 1.在真实机器人上完成快速随机搜索树自主探索建图功能 2.优化导航UI界面 Day 09 上午 1.分别完成导航和自主建图的move_base参数的配置 下午 1.完成rviz中marker标记 Day 10 上午 1.将marker功能添加到真实机器人上,并完成各项参数优化。 下午 1.完成代码整理,说明文档撰写。
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值