Skip to main content
Back to Knowledge Hub
ROS / ROS245 minsDifficulty: INTERMEDIATE

ROS2 Humble Fundamentals: Nodes, Topics, and Actions

An architectural guide to understanding the Robot Operating System (ROS2) DDS middleware, publisher-subscriber communication, and action servers.

Authored by KRS Technical Core•Published 15 Aug 2026
# ROS2 Architecture Overview The Robot Operating System (ROS2) has emerged as the global industry benchmark for cyber-physical robotics software. Unlike ROS1 which relied on a centralized roscore master, ROS2 is engineered upon the Object Management Group Data Distribution Service (OMG DDS) standard, providing peer-to-peer discovery, deterministic real-time communication, and strict quality-of-service (QoS) policies. ## 1. Core Abstractions ### Nodes A Node in ROS2 represents a single, focused process responsible for an atomic robotics task (such as reading an IMU sensor, computing kinematics, or executing motor control loops). Distributed nodes communicate over standardized message structures. ### Topics & QoS Topics implement asynchronous many-to-many publish-subscribe communication. In mission-critical environments, Quality of Service profiles dictate whether messages prioritize reliability (lossless delivery) or "best effort" low latency (ideal for high-frequency sensor streams like LiDAR and camera feeds). ### Services vs Actions - **Services**: Synchronous request-response RPC calls designed for brief queries (e.g. toggling a camera or requesting battery status). - **Actions**: Long-running goal-oriented tasks with periodic progress feedback and cancelability (e.g. instructing a mobile rover to navigate 50 meters to a waypoint). ## 2. Setting Up Your Development Environment Begin by creating a clean ROS2 workspace using colcon build tooling: ```bash mkdir -p ~/krs_ws/src cd ~/krs_ws colcon build --symlink-install source install/setup.bash ```
#ROS2#Robotics#Linux#Software Architecture

See these concepts deployed in real hardware

Explore the YUVAAN semi-autonomous rover engineering case study.

Explore YUVAAN Rover