ROS 2 package for coordinating PX4 SIH multi-drone swarm missions via
XRCE-DDS. Includes:
- swarm_controller.py: orchestrates N drones through 6 phases
(EV lock, arm/takeoff, grid hold, circle transition, circle hold,
kamikaze dive) with DDS cross-talk filtering for multi-instance
XRCE-DDS setups
- vision_provider.py: publishes noisy VehicleOdometry from ground
truth for EKF2 external vision fusion (placeholder for non-GPS)
- swarm_launch.py: ROS 2 launch file for N vision providers + controller
- run_swarm.sh: Docker entrypoint that launches PX4 instances,
XRCE-DDS agent, and ROS 2 nodes
- Dockerfile + build_docker.sh: containerized build with ROS 2 Jazzy,
px4_msgs from PX4 source, and the swarm package
Validated with 4 drones: all phases complete, 4/4 impacts, ULogs
generated per instance (~16 MB each).
Signed-off-by: Ramon Roche <mrpollo@gmail.com>