Índice:
- Etapa 1: a ideia e as conexões
- Etapa 2: conexões e configuração do Raspberry Pi
- Etapa 3: conexões e configuração de APM
- Etapa 4: configuração do Arduino Leonardo
- Etapa 5: primeiro voo
Vídeo: Drone seguidor de linha autônomo com Raspberry Pi: 5 etapas
2024 Autor: John Day | [email protected]. Última modificação: 2024-01-30 11:37
Este tutorial mostra como você pode fazer o zangão do seguidor de linha eventualmente.
Este drone terá um interruptor de "modo autônomo" que o colocará no modo. Portanto, você ainda pode pilotar seu drone como antes.
Esteja ciente de que levará tempo para construir e ainda mais tempo para se ajustar. Mas o final … faz você pensar que vale a pena.
Para começar a criar seu próprio drone de rastreador de linha autônomo, certifique-se de ter;
- Rasberry Pi 3 ou Raspberry Pi Zero W com acesso SSH
- Drone pronto para voar com controlador de vôo APM ou Pixhawk
- Arduino Leonardo ou outro Arduino com velocidade de relógio rápida
- Pelo menos 6 transmissor CH
- Webcam USB compatível com Raspberry Pi e OpenCV
- Um PC
- 6 transistores de uso geral
- Cabos de fiação
Etapa 1: a ideia e as conexões
APM, também conhecido como ArduPilot, é um controlador de vôo baseado no Arduino Mega. Isso significa que podemos modificá-lo para ser o melhor para o nosso caso. Mas como não tenho as informações para fazer isso, vou seguir outro caminho.
Os Raspberry Pi, infelizmente, não são sensíveis ao tempo, o que significa que não podem lidar com sinais PPM.
É por isso que precisamos da placa Arduino adicional.
Desta forma, o Raspberry Pi processará as imagens e calculará as instruções de vôo e enviará para o Arduino via interface Serial UART. A placa Arduino ficará aqui como um codificador / decodificador PPM, que codifica as instruções de vôo para sinais PPM desejados pelo APM. Para se ter uma ideia, você pode examinar o diagrama de circuito simbólico.
O Raspberry Pi se comportará como um transmissor de telemetria ao lado da linha de detecção.
O circuito essencial é mostrado nas imagens. Vou continuar explicando nas próximas etapas.
Etapa 2: conexões e configuração do Raspberry Pi
O Raspberry Pi será conectado ao adaptador Wi-Fi (opcional), webcam USB, Arduino Leonardo via USB, APM via interface serial integrada. APM - Conexão RPI mostrada com detalhes nas imagens.
Para configurar, você tem duas opções: Raspbian puro com pacotes necessários ou imagem especial para conexão MAVLink chamada APSync. Se você for usar o Raspbian, certifique-se de ter instalado estes pacotes:
sudo apt-get update
sudo apt-get install -y tela python-wxgtk3.0 python-matplotlib sudo apt-get install -y python-opencv python-pip python-numpy python-dev sudo apt-get install -y libxml2-dev libxslt-dev python- lxml sudo pip instalar futuro pymavlink mavproxy pyserial
Para usar a interface serial embutida do Raspberry Pi, você deve dizer ao SO para não usá-lo. Para fazer isso, digite
sudo raspi-config
e siga as opções de interface> interface serial
Você deve desabilitar a interface serial, mas habilitar o hardware serial.
Neste ponto, o resto é adequado para Raspbian e APSync.
No diretório inicial, crie três arquivos: script de reinicialização e script de processador de imagem. A segunda linha torna o script de reinicialização executável.
toque em reboot.sh image_processor.py
chmod + x reboot.sh
Copie todas as linhas dos arquivos fornecidos abaixo para o diretório inicial (/ home / pi) no Raspberry Pi.
O script de reinicialização conterá gatilhos que irão acionar o processador de imagem e os scripts de telemetria. Também algumas configurações. Observe que se você não quiser o recurso de telemetria, adicione # antes dessa linha.
nano reboot.sh
#! / bin / bash
python3 /home/pi/image_processor.py
Salve-o com CTRL + O e saia com CTRL + X. A última etapa é registrá-lo no arquivo de inicialização do sistema operacional, rc.local
sudo nano /etc/rc.local
Anexe esta linha acima da saída 0:
/home/pi/reboot.sh
Nosso script de reinicialização será executado a cada inicialização.
Queremos que o Raspberry Pi grave vídeo ao vivo, processe-o durante o voo, calcule as instruções de voo, envie-o para o controlador de voo e seja telemetria. Mas, como o Raspberry Pi não é capaz de gerar o sinal PPM que o APM deseja, precisamos de outra maneira de fazer isso.
O Raspberry Pi enviará sua saída de processamento de imagem para o Arduino (no meu caso, Arduino Leonardo) por meio da porta serial. O Arduino irá gerar um sinal PPM a partir dessa entrada e enviá-lo para o Flight Controller por meio de fios de jumper. Isso tudo é por Raspberry Pi.
Vamos passar para a próxima etapa.
Etapa 3: conexões e configuração de APM
As coisas sobre o APM são simples, pois já está pronto para voar. Precisamos saber as taxas de transmissão das portas seriais e ter certeza de que a porta TELEM está habilitada.
Em seu software terrestre, no meu caso, planejador de missão, verifique a lista de parâmetros do controlador de vôo e descubra as taxas de transmissão. Por exemplo, SERIAL_BAUD é a taxa de transmissão USB e SERIAL_BAUD1 é a taxa de transmissão da porta TELEM para APM. Observe esses valores.
A parte mais importante são as conexões dos pinos de INPUT. Conforme mostrado na imagem, conecte os pinos digitais 4 a 9. do Arduino. Você pode usar um breadbord para isso, já que iremos adicionar alguns transistores e saídas de receptor. (Veja as imagens) (Os transistores funcionarão caso você queira assumir o controle do seu drone)
ARD 4 ↔ APM ENTRADA 1
ARD 5 ↔ APM ENTRADA 2
ARD 6 ↔ APM ENTRADA 3
ARD 7 ↔ APM ENTRADA 4
ARD 8 ↔ APM ENTRADA 5
ARD 9 ↔ APM ENTRADA 6
Conecte todos os pinos de 5 V na entrada APM ao pino de 5 V do Arduino Leonardo. Da mesma forma, conecte todos os pinos GND de entrada do APM ao pino GND do Arduino Leonardo.
Etapa 4: configuração do Arduino Leonardo
Conectamos todos os fios do Leonardo, então só sobrou o código.
Faça upload do código fornecido abaixo para o seu Arduino Leonardo. Preste atenção às taxas de transmissão.
Etapa 5: primeiro voo
Quando você concluir todas as etapas anteriores, significa que está pronto.
Ligue todos os cartões e conecte-se com SSH ao Raspberry Pi. Digite no terminal:
sudo su
mavproxy.py --master = / dev / [SERIAL INTERFACE] --baudrate [TELEM PORT BAUDRATE] --avião [NOME PERSONALIZADO
A interface serial interna padrão do Raspberry Pi é ttyS0 (/ dev / ttyS0)
A taxa de transmissão da porta APM TELEM padrão é 57600
A taxa de transmissão da porta USB APM padrão é 115200
Você pode dar qualquer nome à sua aeronave, escolhê-lo com sabedoria, para que possa reconhecê-lo mais tarde.
Se tudo estiver bem, agora conecte-se ao seu Raspberry Pi via VNC, para que você possa assistir o que o drone vê em tempo real.
Agora, você pode armar seu drone. Emocionante, certo?
Tire seu drone e voe acima da linha. Agora, você pode ativar o modo de rastreamento de linha usando o interruptor CH6.
Recomendado:
Robô seguidor de linha Siebe Deetens: 4 etapas
Line Follower Robot Siebe Deetens: Bij de opleiding Elektromechanica Automatisering aan HOGENT (3e bachelor), hebben we vanuit het vak Syntheseproject de opdracht gekregen om een line follower robot te maken. sla
Seguidor de linha no Tinkercad: 3 etapas
Line Follower no Tinkercad: O A-Line Follower Robot, como o nome sugere, é um veículo guiado por automação, que segue uma linha visual embutida no piso ou teto. Normalmente, a linha visual é o caminho no qual o robô seguidor de linha vai e será uma linha preta em um
Seguidor de linha PID Atmega328P: 4 etapas
PID Line Follower Atmega328P: INTRODUÇÃOEste instrutivo trata de fazer um Line Follower eficiente e confiável com PID (proporcional-integral-derivative) Control (Mathematical) executado dentro de seu cérebro (Atmega328P) .Line Follower é um robô autônomo que segue b
Robô seguidor de linha com PICO: 5 etapas (com imagens)
Line Follower Robot With PICO: Antes de você ser capaz de criar um robô que pode acabar com a civilização como a conhecemos, e é capaz de acabar com a raça humana. Você primeiro deve ser capaz de criar os robôs simples, aqueles que podem seguir uma linha desenhada no chão, e aqui é onde você
Linha Linha: 5 Etapas
Row Row: Tudo que você precisa é o seu Makey Makey, uma caixa de sapatos e algumas decorações de sua escolha