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 […]

How to Build and Test a ROS 2 Service Client in C++

In the previous tutorial, we learned how to build a ROS 2 Service Server that takes two integers and returns their sum.Now it’s time to create the client node that sends requests to that service — this time, using C++. This tutorial will guide you through: Understanding how a ROS 2 service client works. Implementing […]

Building Smarter Robots with Behavior Trees in ROS 2

Discover how Behavior Trees can help you structure intelligent robot behaviors in ROS 2 using modular logic, clear control flow, and intuitive tools like Groot. 🤖 Why Behavior Matters in Robotics Robots that operate in the real world face much more than just navigation tasks. They need to handle dynamic environments, unpredictable humans, and ambiguous […]

How to Develop a Custom Alexa Skill to Control Your ROS 2 Robot

👉 How to Develop a Custom Alexa Skill to Control Your ROS 2 Robot  In this step-by-step lab, you’ll learn how to create a custom Alexa Skill from scratch that can send commands to your ROS 2 robot. We’ll use the Alexa Developer Console to define intents and invocation phrases, and configure the skill to […]

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

In the previous tutorial, we built a simple ROS 2 service server that takes two integers and returns their sum. Now it’s time to create a Python client node that uses this service and communicates with the server to request the calculation. 🤔 What’s a ROS 2 Service Client? A service client is a node […]

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

In robotics, especially with ROS 2, it’s common for different nodes to interact and collaborate to accomplish tasks. So far, we’ve used the publisher/subscriber model to communicate between them — which works well for data streaming. But what if you just need to trigger a specific operation and get a result back? That’s where Services […]

en_US