Pioneer 3dx is starting changing position when ros_base_local_planner and amcl are launched.

asked 2016-06-07 17:44:53 -0500

M_wasiel13 gravatar image

Hi ! I have a really big problem with ros_base_local planner configuration. When I launch the move_base.launch file and launch 'AMCL' node the module stars to jumping between couple position on the mp in the RVIZ but in gazebo is stable. Below I included my rqt_graph and tf_frames_view

In my opinion everything looks quite good. Below I've attached my launch file for starting the whole simulation with pioneer in it:


  <!-- these are the arguments you can pass this launch file, for example paused:=true -->
  <arg name="paused" default="false"/>
  <arg name="use_sim_time" default="true"/>
  <arg name="gui" default="true"/>
  <arg name="headless" default="false"/>
  <arg name="debug" default="false"/>

  <!-- We resume the logic in empty_world.launch, changing only the name of the world to be launched -->
  <include file="$(find gazebo_ros)/launch/empty_world.launch">
    <arg name="world_name" value="$(find gazebo_worlds)/worlds/"/>
    <arg name="debug" value="$(arg debug)" />
    <arg name="gui" value="$(arg gui)" />
    <arg name="paused" value="$(arg paused)"/>
    <arg name="use_sim_time" value="$(arg use_sim_time)"/>
    <arg name="headless" value="$(arg headless)"/>

  <!-- No namespace here as we will share this description. 
       Access with slash at the beginning -->
  <!-- Load the URDF into the ROS Parameter Server -->
  <param name="robot_description"
     command="$(find xacro)/ '$(find pioneer_description)/urdf/pioneer3dx.xacro'" />

  <!-- BEGIN PIONEER 1-->

    <include file="$(find pioneer_description)/launch/one_pioneer.launch" >
      <arg name="init_pose" value="-x 0 -y -55 -z 0" />


  <param name="/use_sim_time" value="true"/>

  <!-- Run the map server -->
  <node name="map_server" pkg="map_server" type="map_server" args="$(find gazebo_worlds)/maps/FactoryWorld.yaml" >
    <param name="frame_id" value="/map" />
    <param name="robot_description"
    command="$(find xacro)/ '$(find pioneer_description)/urdf/pioneer3dx.xacro'" />

  <!-- Show in Rviz   -->
  <node name="rviz" pkg="rviz" type="rviz" args="-d $(find pioneer_description)/launch/pioneer.rviz"/>


here I attached the amcl launch file:


  <node pkg="amcl" type="amcl" name="amcl" output="screen">
    <param name="use_map_topic" value="true"/>
    <!-- Publish scans from best pose at a max of 10 Hz -->
    <param name="odom_model_type" value="diff"/>
    <param name="odom_alpha5" value="0.1"/>
    <param name="gui_publish_rate" value="10.0"/>
    <param name="laser_max_beams" value="60"/>
    <param name="laser_max_range" value="12.0"/>
    <param name="min_particles" value="500"/>
    <param name="max_particles" value="2000"/>
    <param name="kld_err" value="0.05"/>
    <param name="kld_z" value="0.99"/>
    <param name="odom_alpha1" value="0.2"/>
    <param name="odom_alpha2" value="0.2"/>
        <!-- translation std dev, m -->
    <param name="odom_alpha3" value="0.2"/>
    <param name="odom_alpha4" value="0.2"/>
    <param name="laser_z_hit" value="0.5"/>
    <param name="laser_z_short" value="0.05"/>
    <param name="laser_z_max" value="0.05"/>
    <param name="laser_z_rand" value="0.5"/>
    <param name="laser_sigma_hit" value="0.2"/>
    <param name="laser_lambda_short" value="0.1"/>
    <param name="laser_model_type" value="likelihood_field"/>
    <!-- <param name="laser_model_type" value="beam"/> -->
    <param name="laser_likelihood_max_dist" value="2.0"/>
    <param name="update_min_d" value="0.25"/>
    <param name="update_min_a" value="0.2"/>
    <param name="base_frame_id" value="/base_link"/> 
    <param name="odom_frame_id" value="/odom"/> 
    <param name="global_frame_id" value="/map"/>
    <param name="resample_interval" value="1"/>
    <!-- Increase tolerance because the computer can get quite busy -->
    <param name="transform_tolerance" value="1 ...
edit retag flag offensive close merge delete


Also I'm not able to set initial position in RVIZ by using 2d pose estimate button.The postion of particle cloaud is changing the odomotery is changing but the robot is still jumping.

M_wasiel13 gravatar image M_wasiel13  ( 2016-06-07 17:49:12 -0500 )edit