EAI激光雷达X4使用hector_slam建图(三)

通过上一节:http://blog.csdn.net/zhu751191958/article/details/78970567   我们已经完成在树莓派3B上对EAI X4激光雷达进行了驱动,现在我们使用点云数据通过hector_slam构建地图

进入src文件目录下:
cd ~/eaix4_ws/src
下载hector_slam包:
git clone https://github.com/tu-darmstadt-ros-pkg/hector_slam
cd ~/eaix4_ws
重新编译:
catkin_make
######################################
cd ~/eaix4_ws/src/hector_slam/hector_slam_launch/launch/
sudo vim All_nodes.launch
往里面添加以下代码:
<launch>
 <include file="$(find ydlidar)/launch/x4.launch" />
 <node pkg="tf" type="static_transform_publisher" 
name="map_to_odom" args="0.0 0.0 0.0 0 0 0.0 /odom /base_link 40" 
/>

<node pkg="tf" type="static_transform_publisher" 

name="base_frame_laser" args="0 0 0 0 0 0 /base_link /laser_frame 

40" />
 <!--<node pkg="rviz" type="rviz" name="rviz"
    args="-d $(find 
hector_slam_launch)/rviz_cfg/mapping_demo.rviz"/>-->
  <include file="$(find 
hector_mapping)/launch/mapping_default.launch" />
  <node pkg="rviz" type="rviz" name="rviz" args="-d $(find 
ydlidar)/launch/lidar.rviz" />
  <include file="$(find 
hector_geotiff)/launch/geotiff_mapper.launch" />
</launch>
######################################
进入hector_mapping/launch文件夹下
cd ~/eaix4_ws/src/hector_slam/hector_mapping/launch
######################################
备份原文件为mapping_default_backups.launch
cp mapping_default.launch  ~/eaix4_ws/src/hector_slam/hector_mapping/launch/mapping_default_backups.launch
######################################


打开mapping_default.launch
sudo vim mapping_default.launch
修改以下代码:
<?xml version="1.0"?>
<launch> 
  <arg name="tf_map_scanmatch_transform_frame_name" default="/scanmatcher_frame" /> 
  <arg name="base_frame" default="base_link" /> 
  <arg name="odom_frame" default="base_link" /> 
  <arg name="pub_map_odom_transform" default="true" /> 
  <arg name="scan_subscriber_queue_size" default="5" /> 
  <arg name="scan_topic" default="scan" /> 
  <arg name="map_size" default="2048" /> 
  <node pkg="hector_mapping" type="hector_mapping" name="hector_mapping" output="screen"> 
    <!-- Frame names --> 
    <param name="map_frame" value="map" /> 
    <param name="base_frame" value="$(arg base_frame)" /> 
    <param name="odom_frame" value="$(arg base_frame)" /> 
    <!-- Tf use --> 
    <param name="use_tf_scan_transformation" value="true" /> 
    <param name="use_tf_pose_start_estimate" value="false" /> 
    <param name="pub_map_odom_transform" value="$(arg pub_map_odom_transform)" /> 
    <!-- Map size / start point --> 
    <param name="map_resolution" value="0.050" /> 
    <param name="map_size" value="$(arg map_size)" /> 
    <param name="map_start_x" value="0.5" /> 
    <param name="map_start_y" value="0.5" /> 
    <param name="map_multi_res_levels" value="2" />     
    <!-- Map update parameters --> 
    <param name="update_factor_free" value="0.4" /> 
    <param name="update_factor_occupied" value="0.7" />     
    <param name="map_update_distance_thresh" value="0.2" /> 
    <param name="map_update_angle_thresh" value="0.9" /> 
    <param name="laser_z_min_value" value = "-1.0" /> 
    <param name="laser_z_max_value" value = "1.0" />     
    <!-- Advertising config --> 
    <param name="advertise_map_service" value="true" /> 
    <param name="scan_subscriber_queue_size" value="$(arg scan_subscriber_queue_size)" /> 
    <param name="scan_topic" value="$(arg scan_topic)" /> 
    <!-- Debug parameters --> 
    <!-- 
      <param name="output_timing" value="false" /> 
      <param name="pub_drawings" value="true" /> 
      <param name="pub_debug_output" value="true" /> 
    --> 
    <param name="tf_map_scanmatch_transform_frame_name" value="$(arg tf_map_scanmatch_transform_frame_name)" /> 
  </node> 
  <!--<node pkg="tf" type="static_transform_publisher" name="map_nav_broadcaster" args="0 0 0 0 0 0 map nav 100" />--> 
</launch>


######################################
重新编译
cd ~/eaix4_ws
catkin_make
######################################
添加环境配置
source ~/eaix4_ws/devel/setup.bash
启动launch文件
roslaunch hector_slam_launch All_nodes.launch


hector_slam不依赖里程计,所以launch起来以后,我们可以手持radar水平移动,就可以建造出一幅地图出来

(其次要注意一下,就是EAI X4给出的驱动文件选x4.launch里已经包含了base_link -> base_laser的TF变换在这里我们不需要官方给我们的TF,我们按照自己的机器人底盘来修改TF就可以了)

  • 0
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 10
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 10
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值