Skip to content

[Real World Deployment] Issues adapting gbplanner_ros for a real mobile robot #66

@AbbeGo

Description

@AbbeGo

Description
Hi there,
First of all, thank you for this excellent work.

I am currently trying to deploy gbplanner_ros on a real-world mobile robot (migrating from simulation). I have modified the launch files to adapt to my robot's hardware setup (ZED2i camera, generic odometry).

However, after launching the nodes, gbplanner_node crashes immediately with the error: Could not load all required parameters. Consequently, the planner does not run, and nothing shows up in RViz.

Steps to Reproduce / Setup

  1. Hardware: Custom mobile robot with ZED2i Camera.
  2. OS: Ubuntu 20.04 (ROS Noetic).
  3. Modifications: Created a custom launch file smb_realworld.launch mapping /odom and /zed/point_cloud.

Modified Launch File
Here is the content of my smb_realworld.launch:

<launch>
  <arg name="robot_name" default="smb"/>
  <arg name="use_sim_time" default="Ture"/> <arg name="rviz_en" default="true" />
  <arg name="launch_prefix" default=""/>
  
  <param name="use_sim_time" value="$(arg use_sim_time)"/>

  <arg name="odometry_topic" default="/odom"/> 
  <arg name="cloud_topic" default="/zed/point_cloud"/>

  <arg name="gbplanner_config_file" default="$(find gbplanner)/config/$(arg robot_name)/gbplanner_config.yaml"/>
  <arg name="pci_file" default="$(find gbplanner)/config/$(arg robot_name)/planner_control_interface_sim_config.yaml"/>
  <arg name="voxblox_config_file" default="$(find gbplanner)/config/$(arg robot_name)/voxblox_sim_config.yaml"/>
  <arg name="map_config_file" default="$(arg voxblox_config_file)"/>

  <node pkg="gbplanner" type="gbplanner_node" name="gbplanner_node" output="screen" launch-prefix="$(arg launch_prefix)">
    <remap from="odometry" to="$(arg odometry_topic)" />
    <remap from="/pointcloud" to="/zed/point_cloud" />
    
    <rosparam command="load" file="$(arg gbplanner_config_file)" />
    <rosparam command="load" file="$(arg map_config_file)" />
  </node>

  <node pkg="pci_general" type="pci_general_ros_node" name="pci_general_ros_node" output="screen">
    <remap from="command/trajectory" to="$(arg robot_name)/command/trajectory" />
    <remap from="planner_server" to="gbplanner" />
    <remap from="planner_homing_server" to="gbplanner/homing" />
    <remap from="odometry" to="$(arg odometry_topic)"/>
    <rosparam command="load" file="$(arg pci_file)" />
  </node>

  <node pkg="tf" type="static_transform_publisher" name="base_to_camera_tf"
       args="0.437516 0.085521 1.191086 0.610062 -0.566529 0.389033 -0.394364 base_link zed_optical_frame 100" />

  <group if="$(arg rviz_en)">
    <node pkg="rviz" type="rviz" name="gbplanner_ui" output="screen" args="-d $(find gbplanner)/config/rviz/smb.rviz"/>
  </group>

</launch>

Error Log
When running the launch file, the parameters seem to load initially, but the node shuts down at the end:

# ... (Previous logs omitted) ...
PARAMETERS
 * /gbplanner_node/AdaptiveObbParams/bounding_box_size_max: 35
 * /gbplanner_node/BoundedSpaceParams/Global/type: kCuboid
 * /gbplanner_node/PlanningParams/auto_global_planner_enable: True
 * /gbplanner_node/PlanningParams/global_frame_id: map
 * /gbplanner_node/PlanningParams/robot_height: 1.25
 * /gbplanner_node/SensorParams/ZED2i/tf_frame: zed_optical_frame
 * /gbplanner_node/world_frame: map
 * /use_sim_time: Ture

# ... (Node startup logs) ...
[ INFO] [1764683808.096975061]: OpenGl version: 3.1 (GLSL 1.4).

# CRITICAL ERROR HERE:
[ERROR] [1764683808.600264896]: Could not load all required parameters. Shutdown ROS node.
[gbplanner_node-1] process has finished cleanly

Current Behavior in RViz
Because the node crashes, the planner state does not visualize:
<img width="1920" height="1080" alt="Image" src="https://github.com/user-attachments/assets/b071d8b1-09a6-4481-bf1f-75ad619d9c14" />

Environment

  • OS: Ubuntu 20.04
  • ROS Version: Noetic

Any advice on how to debug which specific parameter is missing would be greatly appreciated.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions