ROS Resources: Documentation | Support | Discussion Forum | Index | Service Status | ros @ Robotics Stack Exchange
Ask Your Question

steph_v's profile - activity

2015-10-13 09:07:10 -0500 received badge  Famous Question (source)
2015-10-12 21:14:26 -0500 answered a question Error running move_base in navigation stack

Hi - I have worked out the underlying problem. I found that running move_base and any transform concurrently would cause move_base to crash. I am currently using ROS on the Linux Mint platform. I reinstalled ROS inside Ubuntu instead, and now move_base and transforms are working correctly. I realise Linux Mint is not an officially supported platform for ROS, but I haven't had any problems with other packages prior to this. As a side note, I'm just wondering if anyone knows why Linux Mint causes issues. Thanks!

2015-10-12 09:35:03 -0500 received badge  Famous Question (source)
2015-10-10 05:08:14 -0500 received badge  Enthusiast
2015-10-08 02:27:45 -0500 received badge  Notable Question (source)
2015-10-07 21:48:09 -0500 received badge  Editor (source)
2015-10-07 11:39:41 -0500 received badge  Popular Question (source)
2015-10-07 05:06:59 -0500 asked a question Error running move_base in navigation stack

Hi,

I am trying to run the ROS navigation stack to take input from two Hokuyo laser sensors and output velocity commands to a robot according to a set goal.

I have set up the navigation stack as in the ROS tutorials http://wiki.ros.org/navigation/Tutori... except that instead of running the AMCL package, I am using gmapping to localise the robot and create a global map.

My launch files are:

wheelchair_config.launch

    <launch>
    <include file="$(find laser_pipeline)/launch/hokuyo.launch"/>
    <include file="$(find odometry)/launch/tf.launch"/>
    </launch>

and move_base.launch

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

    <!--- Run gmapping for localisation -->
    <include file="$(find laser_pipeline)/launch/gmapping.launch" />

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

In the yaml configuration files, I have followed the guidelines set out in the tutorial linked above: - in common config yaml: two laser sensors for my observation sources, robot footprint set up as a rectangle - in global costmap config yaml: global frame = /map, robot_base_frame = /base_link, static_map =false - in local costmap config yaml: global frame = /odom, robot_base_frame = /base_link, static_map = false, rolling_window = true - base local planner yaml identical to tutorial example

When I launch the wheelchair config file, the laser data and transforms appear as expected in rviz. When I then launch the move base file, the gmapping node seems to set up correctly and outputs a map in rviz as expected but I get an error with the move_base node.

process[move_base-2]: started with pid [28781] terminate called after throwing an instance of 'boost::exception_detail::clone_impl<boost::exception_detail::error_info_injector<boost::lock_error> >' what(): boost: mutex lock failed in pthread_mutex_lock: Invalid argument [move_base-2] process has died [pid 28781, exit code -6, cmd /opt/ros/indigo/lib/move_base/move_base __name:=move_base __log:=/home/steph/.ros/log/a82bb134-6cd4-11e5-9cc0-88532ea048df/move_base-2.log]. log file: /home/steph/.ros/log/a82bb134-6cd4-11e5-9cc0-88532ea048df/move_base-2*.log

If I try to proceed to send goals to the navigation stack (despite the error as above) as instructed in the tutorial http://wiki.ros.org/navigation/Tutori... I get an output message stating

[ INFO] [1444210927.061683327]: Waiting for the move_base action server to come up

which makes me think the move_base node was perhaps not initiated correctly.

Does anyone know what causes this error when running the move base package? And is it likely that this error is the reason why the move base action server does not come up?

Thank you.

Addit: After trying to break down my process further, it seems that move_base crashes when I try to launch either my transform file or gmapping, which makes me think the problem is somehow being caused by my transforms?

My tf.launch file is

<launch>

    <!--  **********  TFs **********  -->

    <!-- dynamic ...
(more)
2015-10-02 04:59:08 -0500 received badge  Notable Question (source)
2015-09-14 10:50:18 -0500 received badge  Popular Question (source)
2015-09-14 02:01:59 -0500 received badge  Scholar (source)
2015-09-14 02:01:11 -0500 commented answer Gmapping does not correctly set up map size parameters

Thanks for that. I'll have a look into those.

2015-09-14 01:40:30 -0500 commented answer Gmapping does not correctly set up map size parameters

Thanks ahendrix. The map is being used for short range path planning for a wheelchair. There is no limitation on where the wheelchair can travel so the total map area is potentially infinite, but I only want to keep/use map information in a ~5m radius around the chair.

2015-09-14 00:52:37 -0500 asked a question Gmapping does not correctly set up map size parameters

Hi,

I am using gmapping in ros indigo for the first time (using Hokuyo URG-04LX-UG01 laser scanner and wheel encoders), but I am having problems setting the map size. I am trying to create a 10x10m map with a resolution of 0.05m as an initial test run. I run the gmapping node using this node description in the launch file:

<node pkg = "gmapping" type="slam_gmapping" name="slam_gmapping" output="screen">
    <param name="map_update_interval" value="2.0"/>
    <param name="maxUrange" value="5.0/>
    <param name="xmin" value="-5.0"/>
    <param name="ymin" value="-5.0/>
    <param name="xmax" value="5.0"/>
    <param name="ymax" value="5.0/>
    <param name="delta" value="0.05"/>
    <param name="maxRange" value="6.0"/>
</node>

When the gmapping node launches, at first the parameters seem to initialise correctly.

PARAMETERS
/rosdistro: indigo
/rosversion: 1.11.10
/slam_gmapping/delta: 0.05
/slam_gmapping/map_update_interval: 2.0
/slam_gmapping/maxRange: 6.0
/slam_gmapping/maxUrange: 5.0
/slam_gmapping/xmax: 5.0
/slam_gmapping/xmin: -5.0
/slam_gmapping/ymax: 5.0
/slam_gmapping/ymin: -5.0

NODES
/slam_gmapping (gmapping/slam_gmapping)

However, when I check the map metadata using rostopic echo, I get a map of size 5120x14592. The resolution is correct. I have noticed that each time I launch the gmapping node, the size of the map changes but it is never 10x10 as I intended. The same size problems are reflected when I view the map in rviz.

map_load_time:
secs: 0
nsecs: 0
resolution: 0.0500000007451
width: 5120
height: 14592
origin:
position:
x: -5.0
y: -5.0
z: 0.0
orientation:
x: 0.0
y: 0.0
z: 0.0
w: 1.0

I have seen this issue posted on ros forums before, however I believe I am setting up the launch file as advised and it still doesn't work.

link: http://answers.ros.org/question/11233...

link: http://answers.ros.org/question/56114...

link: http://answers.ros.org/question/30038...

Any help would be appreciated. Thanks.