Software Stack Overview
Welcome to the Stinger software stack documentation. This guide covers setup, node architecture, and deployment procedures for the software stack.
๐ Quick Navigation
-
๐ ๏ธ Environment Setup
Prerequisites, container setup, dependency installation, and workspace configuration.
-
ROS 2 node hierarchy, messaging protocols, data pipelines, and behavior tree execution.
-
๐ก Interfaces & Drivers
Sensor driver configurations, actuator protocols, and communication bridge specifications.
-
๐งช Testing & Simulation
Gazebo simulation execution, unit testing, integration tests, and hardware-in-the-loop (HIL).
๐ System Requirements & Status
| Component | Target / Version | Status |
|---|---|---|
| OS | Ubuntu 24.04 LTS (Noble Numbat) | โ Supported |
| Middleware | ROS 2 Jazzy Jalisco | โ Supported |
| Container Engine | Docker Engine / Apptainer | โ Recommended |
| Python | 3.12+ | โ Supported |
โก Quick Start
Execute the following commands to clone the workspace, install dependencies, and build the stack:
# 1. Clone repository
git clone [https://github.com/your-org/stinger-software.git](https://github.com/your-org/stinger-software.git)
cd stinger-software
# 2. Build environment using container runner
docker compose up -d
# 3. Build workspace
colcon build --symlink-install
source install/setup.bash
๐ ๏ธ Software Stack Architecture
+-----------------------------------------------+
| Behavior & Mission Control |
+-----------------------------------------------+
|
v
+-----------------------------------------------+
| Navigation / State Estimation / Vision |
+-----------------------------------------------+
|
v
+-----------------------------------------------+
| Hardware Interfaces & Low-Level Drivers |
+-----------------------------------------------+
Key Operational Guidelines
- Safety First: Always test mission nodes in simulation prior to deployment on hardware.
- Deterministic Builds: Run
colcon buildwith clean workspaces before field tests. - Logging: Standard node output must route through ROS logging levels (
INFO,WARN,ERROR).