View on GitHub

ROS 2 Robotics & Embedded Control Workspaces

Consolidated modular ROS 2 packages: motor actuation, state telemetry, actions, services, and Gazebo rover SLAM.

🤖 ROS 2 Robotics & Embedded Control Workspaces

ROS 2 Humble Build Status License: MIT GitHub Pages

A consolidated, modular collection of ROS 2 packages covering motor telemetry, actuator controllers, action servers, service clients, and autonomous mobile rover simulations (Gazebo & SLAM).


🏗️ Repository Architecture

This repository organizes modular ROS 2 nodes into two core domain workspaces:

ros2-workspaces/
├── motor_control_ws/             # Motor actuation, thermal telemetry & custom state interfaces
│   ├── motor_build_up/           # Multi-node launch orchestration
│   ├── motor_ctrl/               # Closed-loop motor controller node
│   ├── motor_interfaces/         # Custom ROS 2 messages (MotorState.msg)
│   ├── motor_state/              # Real-time state publisher & telemetry logger
│   └── motor_temp/               # Temperature sensor publisher & thermal threshold alerts
│
└── robotics_and_rover_ws/        # Mobile rover, action/service interfaces & system controllers
    ├── my_rover/                 # URDF model, SLAM launch, Gazebo world & RViz configs
    ├── battery_manager/          # Service server/client for power & battery health monitoring
    ├── distance_action/          # Goal-oriented action server/client for distance tracking
    ├── led_controller/           # Dynamic parameter-driven LED matrix status indicators
    ├── custom_interfaces/        # Custom Actions (Maps, Navigation) & Services (Battery, Arithmetic)
    └── my_package/               # Core utility clients, servers & asynchronous handlers

⚡ Core Modules Overview

1. Motor Control & Telemetry (motor_control_ws)

2. Autonomous Rover & SLAM (robotics_and_rover_ws/my_rover)

3. Asynchronous Actions & Services


🚀 Getting Started

Prerequisites

sudo apt update
sudo apt install python3-colcon-common-extensions python3-rosdep

Building the Workspaces

Building the Motor Control Workspace:

cd motor_control_ws
colcon build --symlink-install
source install/setup.bash

Building the Rover & Robotics Workspace:

cd robotics_and_rover_ws
colcon build --symlink-install
source install/setup.bash

🎮 Execution & Launch Examples

1. Launching Motor Telemetry System

ros2 launch motor_build_up motor_ctrl.launch.py

2. Visualizing Rover in RViz

ros2 launch my_rover display.launch.py

3. Running SLAM Mapping Simulation

ros2 launch my_rover slam.launch.py

4. Calling Battery Service

ros2 run battery_manager battery_client

👨‍💻 Author & Maintenance