Ask Your Question

Raisintoe's profile - activity

2019-09-19 15:26:53 -0500 received badge  Notable Question (source)
2019-09-19 15:26:53 -0500 received badge  Popular Question (source)
2019-09-10 03:54:24 -0500 received badge  Famous Question (source)
2019-09-02 04:26:23 -0500 received badge  Famous Question (source)
2019-07-05 03:36:30 -0500 received badge  Famous Question (source)
2019-05-20 02:30:12 -0500 marked best answer Need help with basic navigation

I am trying to wrap my head around the navigation stack, and how to run it.

My objective is to get my simple, differential-drive robot to navigate using the nav stack. I want to set a simple goal in rviz, and let my robot navigate to that position.

My robot is publishing tf frames: "base_laser" to "base_link", and "base_link" to "odom". It also sends odometry data (I use stepper motors), and laser scan data from a sonar sensor. I have been following the ROS navigation tutorials to get this far.

My robot currently shows this rqt graph shown below:

Nodes only image description

Nodes and topics image description

Right now, it seems that everything is in order, except that I get the tf error "Timed out waiting for transform from base_link to map to become available before running costmap . . . "

isn't the move_base node in charge of publishing the "base_link" to "map" transform?

Screen shot of tf tree: image description

<launch>
  <master auto="start"/>

  <!-- Run the map server -->
  <node name="map_server" pkg="map_server" type="map_server" args="$(find tf_test)/myTestMap.pgm 0.02"/>


  <!--- Run AMCL -->
  <include file="$(find amcl)/examples/amcl_diff.launch" />

  <node pkg="move_base" type="move_base" respawn="false" name="move_base" output="screen">
    <rosparam file="$(find tf_test)/costmap_common_params.yaml" command="load" ns="global_costmap" />
    <rosparam file="$(find tf_test)/costmap_common_params.yaml" command="load" ns="local_costmap" />
    <rosparam file="$(find tf_test)/local_costmap_params.yaml" command="load" />
    <rosparam file="$(find tf_test)/global_costmap_params.yaml" command="load" />
    <rosparam file="$(find tf_test)/base_local_planner_params.yaml" command="load" />
  </node>
</launch>


//[costmap_common_params.yaml]///////////////////////////////////////////////////////////
obstacle_range: 2.5
raytrace_range: 3.0
footprint: [[-0.10, 0.10], [-0.10, -0.10], [0.10, -0.10], [0.10, 0.10]]
#robot_radius: ir_of_robot
inflation_radius: 0.15

observation_sources: laser_scan_sensor

laser_scan_sensor: {sensor_frame: base_laser, data_type: LaserScan, topic: scan, marking: true, clearing: true}

//[local_costmap_params.yaml]////////////////////////////////////////////////////////////
local_costmap:
  global_frame: odom
  robot_base_frame: base_link
  update_frequency: 10.0
  publish_frequency: 10.0
  static_map: false
  rolling_window: true
  width: 2.0
  height: 2.0
  resolution: 0.02

//[global_costmap_params.yaml]///////////////////////////////////////////////////////////
global_costmap:
  global_frame: /map
  robot_base_frame: base_link
  update_frequency: 0.5
  static_map: true

//[base_local_planner_params.yaml]///////////////////////////////////////////////////////
TrajectoryPlannerROS:
  max_vel_x: 0.1409946783
  min_vel_x: 0.0007049734
  max_vel_theta: 2.311388169
  min_in_place_vel_theta: 0.01155694

  acc_lim_theta: 2.311388169
  acc_lim_x: 0.1409946783
  acc_lim_y: 0

  holonomic_robot: true

amcl_diff.launch:

<launch>
<node pkg="amcl" type="amcl" name="amcl" output="screen">
  <!-- 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="transform_tolerance" value="0.2" />
  <param name="gui_publish_rate" value="10.0"/>
  <param name="laser_max_beams" value="30"/>
  <param name="min_particles" value="500"/>
  <param name="max_particles" value="5000"/>
  <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.8"/>
  <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_lambda_short" value="0.1"/>
  <param name="laser_model_type" value="likelihood_field"/>
  <!-- <param name="laser_model_type" value ...
(more)
2019-01-19 00:15:43 -0500 answered a question octomap_server error: "Could not generate key for origin"

OK, I found the problem. Since I was publishing tf frames directly from INS position data. The position of my robot was

2019-01-18 22:08:21 -0500 edited question octomap_server error: "Could not generate key for origin"

octomap_server error: "Could not generate key for origin" I have successfully run octomap_server to create a 3D grid, an

2019-01-18 22:07:41 -0500 edited question octomap_server error: "Could not generate key for origin"

octomap_server error: "Could not generate key for origin" I have successfully run octomap_server to create a 3D grid, an

2019-01-18 22:05:34 -0500 edited question octomap_server error: "Could not generate key for origin"

octomap_server error: "Could not generate key for origin" I have successfully run octomap_server to create a 3D grid, an

2019-01-18 22:00:41 -0500 asked a question octomap_server error: "Could not generate key for origin"

octomap_server error: "Could not generate key for origin" I have successfully run octomap_server to create a 3D grid, an

2019-01-18 21:48:10 -0500 commented answer pointclouds2 tf from map frame to sensor frame for octomap

I am also having trouble with a moving tf frame and octomap_server. I believe it is because pointcloud2 data and tf fram

2019-01-15 23:03:50 -0500 received badge  Notable Question (source)
2018-12-20 22:25:02 -0500 received badge  Popular Question (source)
2018-12-13 19:04:19 -0500 asked a question build octomap using pointcloud2 data

build octomap using pointcloud2 data I could use a little help getting Octomap to publish occupancy grid cell data. I ha

2018-12-10 05:43:47 -0500 received badge  Notable Question (source)
2018-11-30 21:12:27 -0500 asked a question Where is the File Menu in Gazebo 7?

Where is the File Menu in Gazebo 7? I installed Gazebo 7 on my Jetson TX2, and it has no File menu. Is this just how Gaz

2018-11-07 02:33:25 -0500 received badge  Notable Question (source)
2018-09-30 21:50:32 -0500 received badge  Great Question (source)
2018-08-30 20:34:00 -0500 commented answer How to Install ROS Kinetic Ubuntu 16.04

Your answer saved me, thank you!

2018-07-26 01:50:14 -0500 received badge  Popular Question (source)
2018-06-27 01:39:35 -0500 received badge  Popular Question (source)
2018-06-06 17:20:58 -0500 answered a question ROS cannot find a node

I found the solution after a bit more searching in the ROS forums: https://answers.ros.org/question/264109/cannot-find-

2018-06-06 17:10:48 -0500 asked a question ROS cannot find a node

ROS cannot find a node I have successfully installed teb_local_planner on my machine using 'sudo apt-get install ros-kin

2018-06-04 12:52:08 -0500 asked a question No /clock topic being published when running map_server map_saver

No /clock topic being published when running map_server map_saver Hello, I have been following the ROS gmapping tutoria

2017-09-18 03:22:30 -0500 marked best answer Localization vs Navigation

I am learning ROS for my first time, and I am confused about the difference between localization and navigation. As I understand it, amcl is the package used for localization, but then the navigation stack is a separate package. I am having a hard time seeing the difference between the two, because it seems the nav_stack is performing localization tasks; I do not see the need for localization. Is it possible to run a robot only using the nav_stack with sensors and actuators; without using any sort of localization?

2017-09-18 03:17:24 -0500 marked best answer How to install packages from github

So, I know how to clone a repository from github, but that's all. I would like to install the common_msgs collection of packages onto my Raspberry Pi which is running debian jessie. How do I go about installing ROS packages, or a collection of ROS packages from github?

2017-08-14 00:36:57 -0500 commented question Need help with basic navigation

I am running ROS kinetic, do I need to install an earlier ROS distribution in order to run the turtlesim? I am having tr

2017-08-13 03:25:28 -0500 commented question Need help with basic navigation

Oooh! Something a little exciting happened, my robot will spin around, trying to locate itself when I set a goal in rviz

2017-08-13 03:10:43 -0500 commented answer Need help with basic navigation

I did the full ROS kinetic desktop installation. It did not include the nav stack; I installed that later. I don't know

2017-08-13 03:04:23 -0500 commented question Need help with basic navigation

I know that the sonar sensor will not work well, I am just using it to learn the ROS system. I have done as you suggeste

2017-08-13 01:50:40 -0500 edited question Need help with basic navigation

Need help with basic navigation I am trying to wrap my head around the navigation stack, and how to run it. My objectiv

2017-08-13 01:49:49 -0500 edited question Need help with basic navigation

Need help with basic navigation I am trying to wrap my head around the navigation stack, and how to run it. My objectiv

2017-08-13 01:48:40 -0500 edited question Need help with basic navigation

Need help with basic navigation I am trying to wrap my head around the navigation stack, and how to run it. My objectiv