Here, we will introduce you to some tools that will be used with ROS to make developing robotics software and applications more streamlined and easier. Most of these are the core reason why ROS is being so widely used in industry and research.
Uses Qt GUI library for a nice interface that helps display a bunch of ROS information.
Consists of many sub-programs that you can sometimes call directly from the terminal, especially rqt_graph
- which is a command you can just run in the terminal and it opens rqt_graph
rqt_graph
lets you view how all the nodes, publishers and subscribers are connected in a system. Each of these sub-components are represented in differing ways so you can actually see what each object is on the robot
an example rqt_graph for an industrial robot
TFs are one of the biggest applications of rQt when it comes to working with robots that have multiple links or components such as quadrupeds (eg. Boston Dynamics Spot) or multi-link arms (eg. UR 5e)
sample TF Tree - shows exactly how the different links are linked with each other from base to each camera and end effector
rQt also lets you view running RGB and depth camera data, so if you ever need to quickly check camera output, there’s an in-build camera viewer
If you have control and trajectory based inputs to a system, then rQt will help you sometimes directly change those to see how your robot responds if you don’t want to fully build and run/launch your package files
gzclient
, gazebo
, gz
, etc. are some commands that launch gazebo<name>_description
directory and maybe even a <name>_gazebo
directory based on structure - that indicates that you should be able to launch something on Gazebo from that workspaceNOTE:
3D models you can view in ROS are required to be made into a specific format inside the <name>_description
directory: URDFs (Unified Robotics Description Format)
ROS developers have made scripts for exporting Fusion360 and Solidworks models into this format where it just directly gives you the <name>_description
directory
Building a visual robot model from scratch — ROS 2 Documentation: Humble documentation