Turtlebot3 URDF Editing 20240524
From wikidb
Contents
References
Main References
- URDF Humble Version 2024
Other
- Web-based URDF visualization tool and library opensourced from NASA JPL
- ROS URDF XML Specificaton
- URDF Tutorials 2016
Installing urdf_tutorial
Test Run
$ ros2 launch urdf_tutorial display.launch.py model:=/home/eepp/turtlebot3_ws/src/turtlebot3/turtlebot3_description/urdf/turtlebot3_waffle.urdf [INFO] [launch]: All log files can be found below /home/eepp/.ros/log/2024-05-24-11-49-45-781551-adams-7966 [INFO] [launch]: Default logging verbosity is set to INFO [INFO] [robot_state_publisher-1]: process started with pid [7968] [INFO] [joint_state_publisher_gui-2]: process started with pid [7970] [INFO] [rviz2-3]: process started with pid [7972] [rviz2-3] Warning: Ignoring XDG_SESSION_TYPE=wayland on Gnome. Use QT_QPA_PLATFORM=wayland to run on Wayland anyway. [robot_state_publisher-1] [INFO] [1716576585.961610516] [robot_state_publisher]: got segment base_footprint [robot_state_publisher-1] [INFO] [1716576585.961690756] [robot_state_publisher]: got segment base_link [robot_state_publisher-1] [INFO] [1716576585.961699112] [robot_state_publisher]: got segment base_scan [robot_state_publisher-1] [INFO] [1716576585.961704997] [robot_state_publisher]: got segment camera_depth_frame [robot_state_publisher-1] [INFO] [1716576585.961710258] [robot_state_publisher]: got segment camera_depth_optical_frame [robot_state_publisher-1] [INFO] [1716576585.961715547] [robot_state_publisher]: got segment camera_link [robot_state_publisher-1] [INFO] [1716576585.961720610] [robot_state_publisher]: got segment camera_rgb_frame [robot_state_publisher-1] [INFO] [1716576585.961725931] [robot_state_publisher]: got segment camera_rgb_optical_frame [robot_state_publisher-1] [INFO] [1716576585.961730857] [robot_state_publisher]: got segment caster_back_left_link [robot_state_publisher-1] [INFO] [1716576585.961735832] [robot_state_publisher]: got segment caster_back_right_link [robot_state_publisher-1] [INFO] [1716576585.961740778] [robot_state_publisher]: got segment imu_link [robot_state_publisher-1] [INFO] [1716576585.961746293] [robot_state_publisher]: got segment wheel_left_link [robot_state_publisher-1] [INFO] [1716576585.961752376] [robot_state_publisher]: got segment wheel_right_link [joint_state_publisher_gui-2] Warning: Ignoring XDG_SESSION_TYPE=wayland on Gnome. Use QT_QPA_PLATFORM=wayland to run on Wayland anyway. [rviz2-3] [INFO] [1716576586.227491510] [rviz2]: Stereo is NOT SUPPORTED [rviz2-3] [INFO] [1716576586.227546765] [rviz2]: OpenGl version: 4.6 (GLSL 4.6) [rviz2-3] [INFO] [1716576586.240909522] [rviz2]: Stereo is NOT SUPPORTED [joint_state_publisher_gui-2] [INFO] [1716576586.360249499] [joint_state_publisher]: Waiting for robot_description to be published on the robot_description topic... [joint_state_publisher_gui-2] [INFO] [1716576586.367835448] [joint_state_publisher]: Centering [joint_state_publisher_gui-2] [INFO] [1716576586.438988982] [joint_state_publisher]: Centering ^C
Help
TF Setting
You can manage the amount of clutter in redering using TF Setting in the Display Window. Select and deselect the following check boxes:
- Show Names
- Show Axes
- Show Arrows
Global Options
- Background Color
Make it white
Robot Model Error
- "No transform from front left wheel to base link"
- RVIZ Status Error No Transform
in new Terminal
$ launch turtlebot3_bringup turtlebot3_model.launch Command 'launch' not found, did you mean: command 'launchy' from deb ruby-launchy (2.5.0-3) command '0launch' from deb 0install-core (2.16-2) command 'launchn' from deb csmith (2.3.0-6build1) Try: sudo apt install <deb name>
Or bring up the Turtle3
source scripts/bringup.sh
Or maybe just: To be tested (This must be pretty much the same as doing the bringup script
ros2 launch turtlebot3_bringup robot.launch.py
Tools
Check URDF
$ check_urdf /home/eepp/turtlebot3_ws/src/turtlebot3/turtlebot3_description/urdf/turtlebot3_waffle.urdf robot name is: turtlebot3_waffle ---------- Successfully Parsed XML --------------- root Link: base_footprint has 1 child(ren) child(1): base_link child(1): camera_link child(1): camera_depth_frame child(1): camera_depth_optical_frame child(2): camera_rgb_frame child(1): camera_rgb_optical_frame child(2): caster_back_left_link child(3): caster_back_right_link child(4): imu_link child(5): base_scan child(6): wheel_left_link child(7): wheel_right_link
urdf_to_graphiz Visualizer
$ urdf_to_graphiz turtlebot3_waffle_nuc.urdf WARNING: The executable named 'urdf_to_graphiz' is deprecated. Use 'urdf_to_graphviz' instead. WARNING: OUTPUT not given. This type of usage is deprecated!Usage: urdf_to_graphviz input.xml [OUTPUT] Will create either $ROBOT_NAME.gv & $ROBOT_NAME.pdf in CWD or OUTPUT.gv & OUTPUT.pdf. Created file turtlebot3_waffle.gv Created file turtlebot3_waffle.pdf $ evince turtlebot3_waffle.pdf
Modify the Waffle Model
Create the dev tree
I have forgotten how to do this
mkdir -f edc_ws/src
I think
cd edc_ws/src
This didn't work
$ catkin_make -j2 Command 'catkin_make' not found, but can be installed with: sudo apt install catkin
This didn't help
$ sudo apt install catkin [sudo] password for eepp: Reading package lists... Done Building dependency tree... Done Reading state information... Done Some packages could not be installed. This may mean that you have requested an impossible situation or if you are using the unstable distribution that some required packages have not yet been created or been moved out of Incoming. The following information may help to resolve the situation: The following packages have unmet dependencies: python3-catkin-pkg : Conflicts: catkin but 0.8.10-7 is to be installed python3-catkin-pkg-modules : Conflicts: catkin but 0.8.10-7 is to be installed E: Unable to correct problems, you have held broken packages.
I'll come back to this later
Hack
$ cd turtlebot3_ws/src/turtlebot3/turtlebot3_description/urdf/ $ ls common_properties.urdf turtlebot3_waffle_pi.urdf turtlebot3_burger.urdf turtlebot3_waffle.urdf $ cp turtlebot3_waffle.urdf turtlebot3_waffle_nuc.urdf $ ros2 launch urdf_tutorial display.launch.py model:=/home/eepp/turtlebot3_ws/src/turtlebot3/turtlebot3_description/urdf/turtlebot3_waffle_nuc.urdf
Note: change to turtlebot3_ws done by create a duplicate file. To be fixed