0
$\begingroup$

Rosanswers logo

I'm trying to use amcl on the turtlebot robot. My amcl launch file is modified from the android app_manager amcl launcher. I have authored several of my own rapp files, and that part seems to work for now. I am able to load amcl and a map file, and then once one is loaded I can try to programmatically designate start (/initialpose) and stop (/move_base_simple/goal) coordinates. After doing so I even observe a small blue line on rviz that covers what I expect would be the path of the robot, BUT the robot doesn't move. I get the following two errors. The first on I get on the rviz computer. The second one I get on the Turtlebot computer.

[ERROR] [1394045389.663173820]: TF_NAN_INPUT: Ignoring transform for child_frame_id "odom" from authority "/app_manager/application/amcl" because of a nan value in the transform (-nan -nan nan) (-nan -nan -nan -nan)

[ERROR] [1394045392.583904722]: You must specify at least three points for the robot footprint, reverting to previous footprint.

EDIT 1: This is my launcher file. It comes almost directly from the android example. BTW I would like to get rid of the functionality that sends images to the android phone. I'm actually using a rosbridge server interface to control the robot and I don't need to see images from the kinect. Maybe I don't need the optimization code too. Also I'm using hydro on an ubuntu 12.04 system.

<launch>
  <include file="$(find turtlebot_bringup)/launch/minimal.launch"/>
  <include file="$(find tele_presence)/launch/minimal.launch"/>
  
  <!-- *********************** Teleoperation ********************** -->
  <param name="camera/rgb/image_color/compressed/jpeg_quality" value="22"/>

  <include file="$(find turtlebot_bringup)/launch/3dsensor.launch">
    <arg name="rgb_processing" value="true" />
    <arg name="depth_registration" value="false" />
    <arg name="depth_processing" value="false" />
  </include>

  <!-- Make a slower camera feed available. -->
  <node pkg="topic_tools" type="throttle" name="camera_throttle" args="messages camera/rgb/image_color/compressed 5"/>

  <node pkg="nodelet" type="nodelet" name="teleop_velocity_smoother"
        args="load yocs_velocity_smoother/VelocitySmootherNodelet /mobile_base_nodelet_manager">
    <rosparam file="$(find turtlebot_bringup)/param/defaults/smoother.yaml" command="load"/>
    <remap from="teleop_velocity_smoother/raw_cmd_vel" to="android/virtual_joystick/cmd_vel"/>
    <remap from="teleop_velocity_smoother/smooth_cmd_vel" to="/cmd_vel_mux/input/teleop"/>

    <!-- Robot velocity feedbacks; use the one configured as base default -->
    <remap from="teleop_velocity_smoother/odometry" to="/odom"/>
    <remap from="teleop_velocity_smoother/robot_cmd_vel" to="/mobile_base/commands/velocity"/>
  </node>

  <!-- *********************** Optimisation *********************** -->
  <node pkg="tf" type="tf_change_notifier" name="tf_throttle_for_android_gui">
    <param name="polling_frequency" value="5"/>
    <param name="translational_update_distance" value="-1"/>
    <param name="angular_update_distance" value="-1"/>
    <rosparam param="frame_pairs">
      - {source_frame: base_footprint, target_frame: map}
      - {source_frame: camera_depth_frame, target_frame: map}
    </rosparam>
  </node>


  <!-- *************************** Navi *************************** -->
  <include file="$(find turtlebot_navigation)/launch/includes/move_base.launch.xml">
    <arg name="odom_topic" value ="/odom" />
  </include>
  <include file="$(find turtlebot_navigation)/launch/includes/amcl.launch.xml">
    <arg name="use_map_topic" value ="true"/>
  </include>


  <!-- *************************** Maps *************************** -->
  <!-- this launcher lets me use some map_store services -->
  
    <include file="$(find tele_presence)/launch/manage_map.launch"/>
</launch>

How do I specify the robot footprint? Will doing so help at all with the TF amcl error?


Originally posted by david.c.liebman on ROS Answers with karma: 125 on 2014-03-05

Post score: 1


Original comments

Comment by bit-pirate on 2014-03-05:
Please specify, which code versions you use (ROS, Android apps etc.). There have been errors in the old versions of the make and navigate a map Android apps, but those should be fixed by now.

Comment by david.c.liebman on 2014-03-07:
OK. I have modified the question.

Comment by jihoonl on 2014-03-10:
It is failing to find transform. How are you setting up the goal pose? from remote workstation or from the robot's laptop? If you are using two computers to control the robot, check network time protocol. http://wiki.ros.org/turtlebot/Tutorials/hydro/Workstation%20Installation

Comment by david.c.liebman on 2014-03-11:
OK. thanks for the link, I had not done that. Still, the robot does not navigate in amcl to a new location. I don't know why.

$\endgroup$

1 Answer 1

0
$\begingroup$

Rosanswers logo

I think this problem is fixed (sort of). It could be that the laser turned off before the error messages. I don't know how. I don't want to double post. right now I don't have any error messages to report. i DONT have the results I want, but no errors (which is more difficult)


Originally posted by david.c.liebman with karma: 125 on 2014-03-13

This answer was ACCEPTED on the original site

Post score: 1

$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.