Creating and Managing a Lifecycle Node in ROS 2 with C++

When developing complex robotic systems, managing the operational state of each node precisely is essential to ensure stability, safety, and predictability.ROS 2 introduces a key concept to meet this need: Lifecycle Nodes.   Unlike standard nodes, which start operating as soon as they are launched, Lifecycle Nodes allow you to explicitly control their behavior through […]

Managing and Creating Lifecycle Nodes in ROS 2

When developing complex robotic systems, the ability to precisely control the operational state of each node is essential to ensure reliability, safety, and maintainability. ROS 2 addresses this need through a key concept: Lifecycle Nodes.Unlike regular nodes that start operating as soon as they are launched, Lifecycle Nodes allow you to manage their life cycle […]

Safety in Human–Robot Interaction: Speed and Separation Monitoring with ROS 2

When robots and humans share the same workspace, functional safety becomes a first-class requirement. A collaborative robot must be able to adapt its motion according to the level of risk in the environment, slowing down or stopping entirely when a person comes too close.Unlike traditional setups with cages or physical barriers, this approach relies on […]

Integrating a 2D LiDAR into Your ROS 2 Robot Model

One of the key elements that enables a mobile robot to navigate autonomously is its ability to perceive the surrounding environment.Among the most widespread and reliable sensors used in robotics is the 2D LiDAR (Light Detection and Ranging). This device has revolutionized mobile robotics thanks to its accuracy and the ease with which it can […]

How to Build and Test a ROS 2 Action Client in Python

In the previous article, we implemented a ROS 2 Action Server in Python that calculates the Fibonacci sequence. We also saw how to interact with it using the ROS 2 CLI (ros2 action send_goal). Now, we’ll take a step further and implement a ROS 2 Action Client in Python.This client node will connect directly to […]

How to Build and Test a ROS 2 Action Server in C++

When working with robots, not every task is instantaneous. Some operations take time: navigating across a room, picking up an object, scanning an area, or performing a long computation.In ROS 2, these “long-running” tasks need a special way for nodes to talk to each other — one that allows progress updates and the ability to […]

Launching the Complete Robot Simulation in ROS 2

Up to this point, we have built and tested individual parts of our robot: the URDF description, Gazebo simulation, controllers, and even integration with MoveIt and a remote Alexa interface. Now it’s time to bring everything together into a single launch file that runs the complete robot simulation with all components working in harmony. This […]

How to Build and Test a ROS 2 Action Server in Python

When working with robots, not every task is instantaneous. Some operations take time: navigating across a room, picking up an object, scanning an area, or performing a long computation. In ROS 2, these “long-running” tasks need a special way for nodes to talk to each other — one that allows progress updates and the ability […]

How to Build a Voice Interaction Model in ROS 2

Voice control has become one of the most natural and intuitive ways to interact with robots. From simple voice commands to complex conversational systems, enabling a robot to understand and respond to spoken language opens the door to more human-like and user-friendly experiences. In this tutorial, we will build a Voice Interaction Model in ROS […]

en_US

Discover BumperBot Kit

Assemble your robot and get started to learn Robotics!