1.7 KiB
1.7 KiB
ArduPilot GPS-Denied Simulation
Realistic flight controller simulation without GPS.
Quick Start (2 Terminals)
Terminal 1:
./scripts/run_ardupilot_sim.sh runway
Terminal 2:
sim_vehicle.py -v ArduCopter -f gazebo-iris --model JSON --console
# GPS-denied mode:
param set ARMING_CHECK 0
mode stabilize
arm throttle force
Installation
./setup/install_ardupilot.sh
source ~/.bashrc
World Options
./scripts/run_ardupilot_sim.sh runway # Iris on runway (default)
./scripts/run_ardupilot_sim.sh warehouse # Iris in warehouse
./scripts/run_ardupilot_sim.sh zephyr # Zephyr plane
./scripts/run_ardupilot_sim.sh gimbal # Gimbal test
./scripts/run_ardupilot_sim.sh parachute # Parachute test
GPS-Denied Configuration
In MAVProxy console:
param set ARMING_CHECK 0 # Disable pre-arm checks
mode stabilize # Manual with stabilization
arm throttle force # Force arm
GPU Support
Auto-detects: NVIDIA > Intel > AMD > Software
Check your GPU:
glxinfo | grep "OpenGL renderer"
MAVProxy Commands
mode stabilize # Manual mode
mode alt_hold # Altitude hold
arm throttle force # Arm motors
takeoff 5 # Takeoff 5m
mode land # Land
Troubleshooting
"No JSON sensor message"
Gazebo isn't sending data to SITL. Check:
- Start Gazebo FIRST, then SITL
- Plugin path is set:
echo $GZ_SIM_SYSTEM_PLUGIN_PATH | grep ardupilot
Simulation laggy
Check GPU is being used (not software):
glxinfo | grep "OpenGL renderer"
# Should NOT show "llvmpipe"
Can't arm
param set ARMING_CHECK 0
arm throttle force