move_base bug:"Unable to get starting pose of robot, unable to create global plan"
Greetings,
I'm trying to configure move_base on a Jetson Nano board (Ubuntu 18.04, ROS Melodic) equipped with a ZED2 camera. The ZED2 provides the "/odom" topic which updates the robot pose. The package seems to work well and avoids obstacles perfectly well.
Unfortunately though, I frequently get this bug: "Unable to get starting pose of robot, unable to create global plan", and thus the whole system breaks and stops. Not sure if it's a computation or memory problem - but checked for both and it doesn't seem that I hit any limitations.
I am following the tutorial on this page: move_base - ROS Wiki
Here are the config files for move_base on the jetbot:
Complete Launch File:
<launch>
<!-- NODE1: ZED2 NODE CREATION -->
<arg name="svo_file" default="" /> <!-- <arg name="svo_file" default="path/to/svo/file.svo"> -->
<arg name="stream" default="" /> <!-- <arg name="stream" default="<ip_address>:<port>"> -->
<arg name="node_name" default="zed_node" />
<arg name="camera_model" default="zed2" />
<arg name="publish_urdf" default="true" />
<arg name="camera_name" default="zed2" />
<arg name="base_frame" default="base_link" />
<arg name="cam_pos_x" default="0.0" /> <!-- Position respect to base frame (i.e. "base_link) -->
<arg name="cam_pos_y" default="0.0" /> <!-- Position respect to base frame (i.e. "base_link) -->
<arg name="cam_pos_z" default="0.0" /> <!-- Position respect to base frame (i.e. "base_link) -->
<arg name="cam_roll" default="0.0" /> <!-- Orientation respect to base frame (i.e. "base_link) -->
<arg name="cam_pitch" default="0.0" /> <!-- Orientation respect to base frame (i.e. "base_link) -->
<arg name="cam_yaw" default="0.0" /> <!-- Orientation respect to base frame (i.e. "base_link) -->
<group ns="$(arg camera_name)">
<include file="$(find zed_wrapper)/launch/include/zed_camera.launch.xml">
<arg name="camera_name" value="$(arg camera_name)" />
<arg name="svo_file" value="$(arg svo_file)" />
<arg name="stream" value="$(arg stream)" />
<arg name="node_name" value="$(arg node_name)" />
<arg name="camera_model" value="$(arg camera_model)" />
<arg name="base_frame" value="$(arg base_frame)" />
<arg name="publish_urdf" value="$(arg publish_urdf)" />
<arg name="cam_pos_x" value="$(arg cam_pos_x)" />
<arg name="cam_pos_y" value="$(arg cam_pos_y)" />
<arg name="cam_pos_z" value="$(arg cam_pos_z)" />
<arg name="cam_roll" value="$(arg cam_roll)" />
<arg name="cam_pitch" value="$(arg cam_pitch)" />
<arg name="cam_yaw" value="$(arg cam_yaw)" />
</include>
</group>
<remap from="/odom" to="/zed2/zed_node/odom"/>
<!-- NODE 2: POINT CLOUD to LASER SCAN -->
<node pkg="pointcloud_to_laserscan" type="pointcloud_to_laserscan_node" name="pointcloud_to_laserscan"/>
<!-- NODE 3: ROS Jetbot -->
<node name="jetbot_control_node" pkg="ros_jetbot" type="controll.py"/>
<!-- NODE 4: Move Base Wrapper (Configuration) -->
<node pkg="move_base" type="move_base" respawn="false" name="move_base" output="screen">
<rosparam file="$(find zed_move_base)/config/costmap_common_params.yaml" command="load" ns="global_costmap" />
<rosparam file="$(find zed_move_base)/config/costmap_common_params.yaml" command="load" ns="local_costmap" />
<rosparam file="$(find zed_move_base)/config/local_costmap_params.yaml" command="load" ns="local_costmap" />
<rosparam file="$(find zed_move_base)/config ...
Try gradually increasing:
transform_tolerance: 1.0