MyRoboPath
Discipline Hub · 8 Technical Guides

ROS 2 & Robot Middleware

Build industrial-grade robotics software using Robot Operating System 2 (ROS 2). Learn pub/sub architecture, client/service nodes, action servers, robot modeling with URDF/Xacro, TF2 coordinate transforms, and Gazebo simulations.

All Guides in ROS 2 & Robot Middleware

Guide 01
16 min read

ROS 2 Humble Architecture: Nodes, Topics & DDS Explained

Master modern ROS 2 Humble/Iron architecture: Data Distribution Service (DDS), computational graph, publishers, subscribers, parameters, and Quality of Service (QoS).

Key Takeaway:

ROS 2 eliminates the single point of failure (ROS Master) by leveraging industry-standard DDS decentralized discovery.

Difficulty: BeginnerRead Full Tutorial
Guide 02
14 min read

ROS 2 Custom Interfaces: Messages, Services & Actions

Create custom .msg, .srv, and .action definitions in a standalone CMake package, generate C++ and Python headers, and implement preemptible Action Servers.

Key Takeaway:

Topics = Continuous stream (unidirectional); Services = Fast request/response (synchronous blocking); Actions = Long-running tasks with feedback and preemption.

Difficulty: IntermediateRead Full Tutorial
Guide 03
17 min read

URDF & Xacro Robot Modeling: Links, Joints, Visual & Physics

Build modular, maintainable Unified Robot Description Format (URDF) models using Xacro macros, calculate correct 3D inertial tensors, and visualize in RViz 2.

Key Takeaway:

Never write raw repetitive URDF—use Xacro macros to parameterize wheel diameters, mass properties, and colors.

Difficulty: IntermediateRead Full Tutorial
Guide 04
15 min read

TF2 Coordinate Transform Library: Broadcast, Buffer & Lookups

Master coordinate frame transformations in ROS 2: broadcast static/dynamic transforms, handle time-travel buffer lookups, and prevent TF extrapolation errors.

Key Takeaway:

REP 105 specifies: `map` (global continuous, discrete jumps by SLAM) -> `odom` (local continuous, drifts) -> `base_link` (robot center) -> sensors.

Difficulty: IntermediateRead Full Tutorial
Guide 05
13 min read

Modern ROS 2 Python Launch Files & Composable Nodes

Orchestrate multi-node robotics systems with Python launch files, DeclareLaunchArgument, conditions, event handlers, and intra-process zero-copy composable containers.

Key Takeaway:

ROS 2 launch files are written in pure Python, enabling dynamic argument parsing, conditionals, and environment checks.

Difficulty: IntermediateRead Full Tutorial
Guide 06
16 min read

ros2_control Framework: Hardware Interfaces & Differential Controllers

Bridge physical hardware motors to ROS 2 using the standardized ros2_control framework, SystemInterface plugins, and diff_drive_controller.

Key Takeaway:

ros2_control abstracts physical hardware away from high-level software, enabling seamless switching between Gazebo simulation and real robot hardware.

Difficulty: AdvancedRead Full Tutorial
Guide 07
15 min read

Gazebo Simulation (Fortress / Harmonic) with ROS 2 Bridge

Simulate mobile robots and manipulators in Gazebo: configure physics engines, add realistic IMU/LiDAR/Camera sensor plugins, and establish ros_gz_bridge.

Key Takeaway:

New Gazebo (formerly Ignition) features modular architecture, multiple physics backends (DART, Bullet), and rendering via Ogre 2.

Difficulty: IntermediateRead Full Tutorial
Guide 08
18 min read

MoveIt 2 Trajectory Planning & Collision Avoidance for Manipulators

Configure MoveIt 2 for 6-DOF robotic arms: Setup Assistant, OMPL path planners (RRT-Connect), OctoMap 3D collision environments, and pick-and-place execution.

Key Takeaway:

MoveIt 2 coordinates kinematics solvers (KDL/TRAC-IK), trajectory planners (OMPL), and collision checkers (FCL).

Difficulty: AdvancedRead Full Tutorial