This package provides a Real-Time param tune GUI for the Wheeltec Ackermann robots. It allows you to dynamically adjust the parameters of your basic navigation controllers (Follow The Gap and Simple Pursuit) without restarting ROS 2 nodes.
- Real-time Tuning: Adjust safety radii, velocity, and steering sensitivity on the fly.
- Dual Controller Support: Dedicated controls for both
follow_the_gapandsimple_pursuit. - ROS 2 Native: Uses standard service calls (
SetParameters) to communicate with active nodes.
Ensure you have the following installed on your local machine or the robot:
- ROS 2 (Jazzy or Humble)
- PyQt6
sudo apt install python3-pip pip3 install PyQt6 --break-system-packages
Clone this package into your workspace's src folder:
cd ~/ros2_ws/src
# (Copy the package files here)
cd ~/ros2_ws
colcon build --packages-select live_parametisation
source install/setup.bashFirst, ensure your robot drivers and controllers are running (e.g., via start_drivers). Then, launch the tuning GUI:
ros2 run live_parametisation live_parametisationThe GUI is split into two main sections:
- Safety Radius: Adjust how far the robot stays from obstacles.
- Steering Sensitivity: Fine-tune how aggressively the robot reacts to gaps.
- Velocity: Change the target cruising speed.
- Angle Range: Define the field of view (in degrees) for the pursuit logic.
The tool acts as a client to the following ROS 2 parameter services:
/follow_the_gap/set_parameters/simple_pursuit/set_parameters
The application runs the ROS 2 Executor in a background thread using threading, allowing the PyQt6 Event Loop to remain responsive while sending asynchronous service requests to the robot.
- Main Documentation: go.sze.hu/wh
- Robot Repo: JKK Research Center
Created by the Balazs