Simulation Stack In Progress¶
What Runs Inside Each Container¶
| Component | Version | Role |
|---|---|---|
| Gazebo Harmonic | gz-harmonic | 3D physics simulation and world rendering |
| PX4 SITL | v1.14+ | Real flight controller firmware in software |
| ROS 2 | Humble | Middleware connecting nodes to PX4 |
| Vehicle | gz_my_drone | Quadrotor model with onboard camera |
| World | lawn | Indoor environment with obstacles |
ROS 2 Nodes¶
| File | What it does |
|---|---|
| offboard_control.py | Publishes velocity and position setpoints to PX4, handles arm and disarm, manages waypoint missions |
| pid_tuner.py | Applies PID gain parameters to the PX4 rate controller, runs the straight-line CTE test path |
| crash_detector.py | Subscribes to the IMU topic and flags crash events when acceleration exceeds a threshold |
🚧
Being Written
This tab will cover the PX4 SITL configuration used by DeepFlyer.
- PX4 parameters set per activity
- Offboard mode enable sequence
- uXRCE-DDS bridge configuration
- Rate controller gain parameter names used in the PID Tuning activity
- Vehicle model files and sensor configuration
🚧
Being Written
This tab will document each ROS 2 node with full topic and message type references.
- offboard_control.py: published topics, subscribed topics, service calls
- pid_tuner.py: gain parameter mapping to PX4 parameter IDs
- crash_detector.py: IMU threshold values and reset procedure
- WebSocket to ROS 2 message mapping table
🚧
Being Written
This tab will describe the reinforcement learning training implementation.
- Observation space: what sensor inputs the policy receives
- Action space: what velocity commands the policy outputs
- Reward function components and weights
- Episode reset logic
- Training loop and checkpoint saving
- Model export format for sim-to-real transfer