Files
RDC_Simulation/README.md

1.7 KiB

Drone Landing Simulation (GPS-Denied)

Land a drone on a moving platform using only relative sensors (IMU, altimeter, camera).

Quick Start

Standalone (1 Terminal - Any Platform)

source activate.sh
python standalone_simulation.py --pattern circular

Gazebo + ROS 2 (2 Terminals)

Terminal 1:

ros2 launch gazebo/launch/drone_landing.launch.py

Terminal 2:

source activate.sh
python run_gazebo.py --pattern circular

ArduPilot SITL (2 Terminals)

Terminal 1:

gz sim -v4 -r ~/ardupilot_gazebo/worlds/iris_runway.sdf

Terminal 2:

sim_vehicle.py -v ArduCopter -f gazebo-iris --model JSON --console

Installation

# Ubuntu/Debian
./setup/install_ubuntu.sh

# ArduPilot SITL (optional)
./setup/install_ardupilot.sh

# Activate environment
source activate.sh

Files

File Description
standalone_simulation.py All-in-one simulation
run_gazebo.py Gazebo controllers
drone_controller.py Your landing algorithm
camera_viewer.py Drone camera window
config.py Configuration

Sensors

Sensor Data
IMU Orientation, angular velocity
Altimeter Altitude, vertical velocity
Camera 320x240 downward image
Landing Pad Relative position (when visible)

Options

--pattern, -p   stationary, linear, circular, square, random
--speed, -s     Speed in m/s (default: 0.5)

Documentation

Document Description
Installation Setup guide
Architecture System overview
ArduPilot ArduPilot SITL
Drone Guide Algorithm guide