Drivers de drone¶
Cada drone precisa do próprio driver ou ponte, iniciado em um terminal separado antes da
missão se conectar (os exemplos usam start_driver=False por padrão). Este é o
correspondente no mundo real da ponte de simulação.
Escolha o drone abaixo para instalação, comando do driver e um voo exemplo. Os alvos estão
em scripts/lib/drones.sh.
Escolha seu drone¶
Instala MAVROS e os datasets geoid GeographicLib.
Inicie o driver e depois voe um quadrado de 2 m:
Sem instalação separada: pymavlink vem com o SDK core, então a missão abre o link.
make drone-mavros adiciona os dados geoid usados na altitude GPS.
Outdoor não precisa de ponte; voe direto:
nectar-activate
python3 nectar/nectar/examples/control/basic.py \
--drone mavlink --mode position --side 2.0 --env outdoor \
--connection serial:///dev/ttyUSB0:921600
Indoor (sem GPS): inicie o alimentador de visão primeiro e depois a missão em outro
endpoint MAVLink (exemplo Black Bee com MAVProxy: feeder 14552, missão 14551):
Reutiliza MAVROS, lançado com px4.launch.
Sem instalação separada: pymavlink vem com o SDK core. Outdoor a missão abre o link;
indoor inicia a ponte de vision-pose (make driver DRONE=px4_mavlink ENV=indoor).
Instala px4_msgs e o Micro XRCE-DDS Agent (hardware real; sem SITL).
make driver-px4-dds DEV=/dev/ttyUSB0 BAUD=921600 # terminal 1 (PORT=8888 for UDP)
nectar-activate # terminal 2
python3 nectar/nectar/examples/control/basic.py --drone px4_dds
Para acrescentar um detector de objetos à mesma missão, instale também ai
(make setup → control ai) e use from nectar.ai.detection import Detector.
Instala Crazyswarm2 (apt quando disponível, senão source) mais regras udev do rádio.
Defina o URI em crazyflies.yaml.
Gerenciar drivers
- Instale todos de uma vez com
make drone-all. - Pare todos os drivers e pontes em execução com
make driver-stop. - Sobrescreva conexões com as variáveis
FCU_URL,DEV,BAUD,PORTeIP. - Existem atalhos por tipo (
make driver-mavros,driver-px4, ...).
Para a matriz completa de backends e configuração, veja o módulo Control.