Drone Simulator — Simulador de Voo com ROS2
Um quadricóptero virtual completo, com física própria e sensores simulados, para testar lógica de autopiloto sem precisar de um drone real.
O que é
Um simulador de voo de drone (quadricóptero) construído para testar algoritmos de navegação e desvio de obstáculos sem risco nem custo de hardware físico. O drone virtual decola, navega por um percurso em slalom desviando de obstáculos, pode executar manobras (como um flip) e retorna automaticamente ao ponto de origem para pousar — tudo visualizado em 3D em tempo real.
Como funciona
O núcleo é um nó ROS2 rodando a 60 quadros por segundo. A cada frame, um autopiloto (implementado como máquina de estados) decide os comandos de voo — decolagem, navegação, manobra, retorno e pouso — que alimentam um modelo físico simplificado de quadricóptero em configuração X, com mixagem individual de cada motor. O simulador publica dados de GPS, IMU e LIDAR nos mesmos formatos que hardware real usaria em ROS2, permitindo que qualquer sistema externo consuma esses sensores como se estivesse controlando um drone de verdade. A cena é renderizada em 3D com VPython, mostrando o drone, o ambiente e a trilha percorrida.
Stack técnica
- Python 3 + ROS2 (rclpy)
- VPython para visualização 3D
- NumPy para física e cálculo vetorial
Destaques técnicos
- Máquina de estados de voo completa: decolagem, navegação com desvio de obstáculos, manobra, retorno ao ponto de origem e pouso
- Modelo físico de quadricóptero com mixagem individual de motor (throttle, roll, pitch, yaw)
- Sensores simulados (GPS, IMU, LIDAR) publicados como tópicos ROS2 padrão, prontos para serem consumidos por qualquer nó externo
- Detecção de colisão contra obstáculos e limites da arena, encerrando a missão em caso de acidente
- Visualização 3D em tempo real com trilha de voo