Índice:

Drone autônomo: 7 etapas
Drone autônomo: 7 etapas

Vídeo: Drone autônomo: 7 etapas

Vídeo: Drone autônomo: 7 etapas
Vídeo: Невероятное Изобретение - Этот Дрон Изменит Все 2024, Julho
Anonim
Drone autônomo
Drone autônomo
Drone autônomo
Drone autônomo

Neste projeto, você aprenderá o processo de construção e configuração de um drone, antes de prosseguir para investigar o voo autônomo usando o Planejador de Missão e o MATLAB.

Observe que este instrutivo é apenas uma orientação. O uso de drones pode ser muito perigoso perto de pessoas e pode causar sérios problemas com a lei se usado de forma inadequada ou no lugar errado. Certifique-se de cumprir todas as leis e regulamentações que cercam o uso de drones. Além disso, os códigos fornecidos no GitHub não foram totalmente testados, portanto, certifique-se de ter outros dispositivos de proteção contra falhas para evitar perder ou danificar seu drone.

Etapa 1: Lista de peças

Para este projeto, você precisará de várias partes. Antes de continuar com o resto deste projeto, certifique-se de comprar os seguintes componentes e baixar os arquivos para impressão 3D e corte a laser das peças personalizadas.

Peças compradas

Quadro: DJI F450 Flame Wheel

www.buildyourowndrone.co.uk/dji-f450-flam…

PDB: Matek PDB-XT60

www.unmannedtechshop.co.uk/matek-pdb-xt60…

Motores x4: Emax 2205s 2300kv

www.unmannedtechshop.co.uk/rs2205-s-races…

Hélices x4: Gemfan Carbon / Nylon 5030

hobbyking.com/en_us/gemfan-propeller-5x3-…

ESCs x4: Little Bee 20A 2-4S

hobbyking.com/en_us/favourite-little-bee-…

Controlador de voo: Navio 2 (com antena GPS / GNSS e módulo de energia)

Raspberry Pi 3B

thepihut.com/collections/raspberry-pi/pro…

Transmissor: FRSKY TARANIS X9D +

www.unmannedtechshop.co.uk/frsky-taranis-…

Receptor: FrSky XSR 2,4 Ghz ACCST

hobbyking.com/en_us/xsr-eu-lbt.html?_st…

Baterias: TATTU 1800mAh 14,8V 45C 4S1P Bateria Lipo

www.unmannedtechshop.co.uk/tattu-1800mah-…

Carregador de bateria: Balanceador / carregador Turnigy Accucell-6 50W 6A

hobbyking.com/en_us/turnigy-accucell-6-50…

Fonte de alimentação para carregador: Fonte de alimentação RS 12V DC

uk.rs-online.com/web/p/plug-in-power-supp…

Sacos de bateria: Pacote de carga de polímero de lítio Hobby King

hobbyking.com/en_us/lithium-polymer-charg…

Conectores Banana

www.amazon.co.uk/gp/product/B013ZPUXZS/re…

Roteador WiFi: TP-LINK TL-WR802N

www.amazon.co.uk/TP-LINK-TL-WR802N-Wirele…

Cartão Micro SD: SanDisk 32GB

www.amazon.co.uk/SanDisk-microSDHC-Memory…

Separadores / espaçadores: fio de nylon M2.5

thepihut.com/products/adafruit-black-nylon…

Computador portátil

Abraçadeiras

Cinta de velcro

Termoencolhível

Peças impressas em 3D

Capa Raspberry Pi / Navio 2 (superior e inferior)

Caixa da bateria (caixa e tampa)

Peças de corte a laser

Camadas de eletrônicos x2

Etapa 2: Hardware

Hardware
Hardware
Hardware
Hardware
Hardware
Hardware

Hardware e fase de construção:

  1. Monte a estrutura do quadrotor F450 e o invólucro da bateria impressa no meio (certifique-se de adicionar os espaçadores M2.5 * 5mm)
  2. Anexe os motores à estrutura.
  3. Solde os conectores banana aos fios ESCs e motores.
  4. Solde os ESCs e o módulo de energia ao PDB. Nota: Certifique-se de não usar a saída de 5 V do PDB (ela não fornecerá energia suficiente).
  5. Adicione a primeira camada de corte a laser na parte superior do quadro F450 usando espaçadores macho-fêmea M2.5 * 10mm; e conecte o PDB e o módulo de energia a esta camada. Nota: certifique-se de colocar os componentes de forma que os fios sejam longos o suficiente para alcançar todos os motores.
  6. Conecte os ESCs aos motores e use laços zip para prender os fios na estrutura.
  7. Prenda o Navio2 ao Raspberry Pi e coloque-o na embalagem impressa.
  8. Adicione a segunda camada de corte a laser no topo da primeira camada e prenda o invólucro Raspberry-Navio usando almofadas adesivas de dupla face.
  9. O GPS pode ser colado na parte superior da caixa, porém aqui ele foi colocado em outra terceira camada que vai em cima da caixa do Raspberry-Navio como mostrado nas fotos, mas fica inteiramente a cargo de quem está construindo. Em seguida, basta conectar o GPS ao Navio.
  10. Fixe o receptor na parte superior da segunda camada usando almofadas adesivas de dupla face. Conecte os ESCs e os fios do receptor aos pinos do Navio. O receptor ocupa a primeira coluna de pinos e, em seguida, os motores ocupam as próximas quatro colunas. Nota: A frente do drone é determinada por qual motor é acoplado primeiro. Qualquer que seja a direção frontal que você escolher, certifique-se de que os motores estejam conectados na imagem no início desta etapa.
  11. Adicione hélices. É aconselhável deixar as hélices bem no final, ou seja, depois de terminar a seção do software e sempre certifique-se de tomar precauções de segurança quando as hélices estiverem ligadas, para o caso de algo dar errado.

Etapa 3: Software

Programas
Programas
Programas
Programas

Fase de software: (documentos de referência do Navio2)

  1. Obtenha a última imagem Emlid Raspbian dos documentos Navio2.
  2. Baixe, extraia e execute o Etcher com direitos de administrador.
  3. Selecione o arquivo compactado com a imagem e a letra da unidade do cartão SD.
  4. Clique em “Flash!”. O processo pode demorar alguns minutos. (Vídeo de exemplo)
  5. Agora, para configurar o acesso WiFi, precisamos editar o arquivo wpa_supplicant.conf localizado no cartão SD. Edite-o para que se pareça com a primeira imagem no topo desta etapa. Nota: o ssid é o nome do TP-Link conforme aparece no seu computador. A melhor maneira de encontrar o SSID exato para seu TP-Link é conectar seu laptop ao TP-Link e, em seguida, executar o comando abaixo em uma janela de terminal:

Para Windows: netsh wlan mostrar perfis

Para mac: os padrões são /Library/Preferences/SystemConfiguration/com.apple.airport.preferences | grep SSIDString

psk é a senha fornecida no cartão que acompanha o TP-Link.

  1. Ejete o cartão SD e coloque-o no Raspberry Pi e ligue-o.
  2. Para verificar se o Raspberry Pi está conectado ao TP-Link, você pode usar qualquer um dos aplicativos disponíveis que mostram todos os dispositivos conectados à sua rede.
  3. É necessário definir endereços IP fixos para dispositivos conectados ao seu TP-Link para que você não precise alterar os endereços IP nos códigos que você escreve todas as vezes. Você pode simplesmente fazer isso abrindo tplinkwifi.net (enquanto você estiver conectado ao TP-Link, é claro). Digite o nome de usuário: admin e a senha: admin. Vá para “DHCP” no menu à esquerda da tela e selecione “Reserva de Endereço” no menu suspenso. Adicione os endereços MAC dos dispositivos aos quais deseja atribuir os endereços IP. Aqui, a estação terrestre (laptop) recebeu um endereço IP de 192.168.0.110 e o Raspberry Pi 192.168.0.111.
  4. Agora precisamos fazer o download do MAVProxy no link a seguir.
  5. Agora crie um arquivo.bat que se pareça com a segunda imagem no início desta etapa e certifique-se de usar o caminho do arquivo onde o mavproxy.exe está salvo em seu laptop. Você precisará executar este arquivo (clicando duas vezes nele) toda vez que quiser se conectar ao drone.
  6. Para que o Raspberry Pi se comunique com o MAVProxy, um arquivo deve ser editado no Pi.
  7. Digite sudo nano / etc / default / arducopter no terminal Linux do Raspberry Pi que hospeda o piloto automático Navio2.

  8. A linha superior do arquivo que abre deve ser TELEM1 =”- A udp: 127.0.0.1: 14550”. Isso precisa ser alterado para que aponte para o endereço IP do seu PC.
  9. Instale o Mission Planner e vá para a seção First Time Setup.

Etapa 4: configuração inicial

Para se conectar ao seu UAV, siga este procedimento:

  1. Execute o arquivo MAVProxy.bat e o Planejador de missão.
  2. Conecte a bateria ao seu UAV e aguarde aproximadamente 30-60 segundos. Isso lhe dará tempo para se conectar à rede sem fio.
  3. Clique no botão de conexão no canto superior direito do Mission Planner. Na primeira caixa de diálogo que aparece, digite 127.0.0.1 e clique em OK. Na próxima caixa, digite o número da porta 14551 e clique em OK. Depois de alguns segundos, o Planejador de Missão deve se conectar ao VAM e começar a exibir os dados de telemetria no painel esquerdo.

Quando você configura seu UAV pela primeira vez, é necessário configurar e calibrar certos componentes de hardware. Os documentos do ArduCopter têm um guia completo sobre como configurar o tipo de quadro, calibração da bússola, calibração do controle de rádio, calibração do acelerômetro, configuração do modo do transmissor rc, calibração ESC e configuração do intervalo do motor.

Dependendo de como você montou seu Raspberry Pi no drone, pode ser necessário alterar a orientação da placa no planejador de missão. Isso pode ser feito ajustando o parâmetro Board Orientation (AHRS_ORIENTATION) na lista de parâmetros avançados na guia Config / Tuning no Mission Planner.

Etapa 5: primeiro voo

Primeiro voo
Primeiro voo
Primeiro voo
Primeiro voo

Assim que o hardware e o software estiverem prontos, é hora de se preparar para o primeiro voo. Recomenda-se que antes de tentar o vôo autônomo, o UAV deve voar manualmente usando o transmissor para ter uma ideia do manuseio da aeronave e para corrigir quaisquer problemas que possam existir.

A documentação do ArduCopter possui uma seção muito detalhada e informativa sobre o seu primeiro vôo. Ele discute os vários modos de vôo que vêm com o ArduCopter e o que cada um desses modos faz. Para o primeiro vôo, o modo de estabilização é o modo de vôo mais apropriado para usar.

O ArduCopter possui muitos recursos de segurança integrados. Um desses recursos são as verificações de segurança do pré-arme, que evitam que a aeronave se arme se algum problema for detectado. A maioria dessas verificações é importante para ajudar a reduzir a chance de acidente ou perda da aeronave, mas podem ser desativadas, se necessário.

Armar os motores é quando o piloto automático aplica energia aos motores para permitir que girem. Antes de armar os motores, é essencial que a aeronave esteja em uma área aberta e desimpedida, bem longe de quaisquer pessoas ou obstáculos ou em uma arena de vôo segura. Também é muito importante que nada esteja perto das hélices, principalmente partes do corpo e outras coisas que serão danificadas por elas. Depois que tudo estiver limpo e o piloto estiver satisfeito com a segurança para dar a partida, os motores podem ser armados. Esta página fornece um conjunto detalhado de instruções sobre como armar a aeronave. As únicas diferenças entre esse guia e o Navio2 estão na etapa 7 de armar e na etapa 2 de desarme. Para armar o Navio2, os dois manípulos devem ser mantidos pressionados e no centro por alguns segundos (veja a imagem). Para desarmar, os dois bastões devem ser pressionados para baixo e para os lados por alguns segundos (veja a imagem).

Para realizar seu primeiro vôo, siga este guia.

Após o primeiro voo, pode ser necessário fazer algumas alterações. Contanto que o hardware esteja funcionando perfeitamente e tenha sido configurado corretamente, essas alterações serão principalmente na forma de ajuste de PID. Este guia tem algumas dicas úteis para ajustar o quadricóptero, entretanto, em nosso caso, simplesmente reduzir um pouco o ganho P foi o suficiente para tornar a aeronave estável. Depois que a aeronave estiver pilotável, é possível usar a função de ajuste automático do ArduCopter. Isso ajusta automaticamente os PIDs para fornecer a resposta mais rápida enquanto permanece estável. A documentação do ArduCopter fornece um guia detalhado de como realizar o autotuning.

Se você encontrar problemas em qualquer uma dessas etapas, o guia de solução de problemas pode ajudar.

Etapa 6: vôo autônomo

Image
Image

Planejador de missão

Agora que seu helicóptero foi ajustado e pode voar bem sob controle manual, o vôo autônomo pode ser investigado.

A maneira mais fácil de entrar em um vôo autônomo é usar o Mission Planner, pois ele contém uma grande variedade de coisas que você pode fazer com sua aeronave. O vôo autônomo no Mission Planner se enquadra em duas categorias principais; missões pré-planejadas (modo automático) e missões ao vivo (modo guiado). A tela do planejador de voo no planejador de missão pode ser usada para planejar um voo que consiste em pontos de passagem para visitar e ações a executar, como tirar fotos. Os waypoints podem ser escolhidos manualmente ou a ferramenta de waypoint automático pode ser usada para gerar missões de levantamento de uma área. Uma vez que uma missão foi planejada e enviada ao drone, o modo de vôo Auto pode ser usado para que a aeronave siga autonomamente a missão pré-planejada. Aqui está um guia útil sobre o planejamento de missões.

O modo guiado é uma forma de comandar interativamente o UAV para fazer certas coisas. Isso é feito usando a guia de ações no Planejador de Missão ou clicando com o botão direito no mapa. O UAV pode ser comandado para fazer muitas coisas, como decolar, retornar ao lançamento e voar para um local escolhido clicando com o botão direito do mouse no mapa no local desejado e selecionando Voar para aqui.

Failsafes são uma coisa importante a se considerar durante o vôo autônomo para garantir que, se algo der errado, a aeronave não será danificada e as pessoas não serão feridas. O Mission Planner possui uma função Geo-Fence integrada que pode ser usada para limitar onde o UAV pode voar e impedir que ele se afaste muito ou muito alto. Pode valer a pena considerar amarrar o UAV ao solo em seus primeiros voos como outro backup. Finalmente, é importante que você tenha seu transmissor de rádio ligado e conectado ao drone para que, se necessário, você possa mudar do modo de voo autônomo para um modo de voo manual, como estabilizar ou alt-hold para que o UAV possa ser pilotado com segurança pousar.

MATLAB

O controle autônomo usando MATLAB é muito menos simples e requer algum conhecimento prévio de programação.

Os scripts do MATLAB real_search_polygon e real_search permitem que você gere missões pré-planejadas para pesquisar um polígono definido pelo usuário. O script real_search_polygon planeja um caminho sobre o polígono definido pelo usuário, enquanto o script real_search planeja um caminho sobre o retângulo mínimo que envolve o polígono. As etapas para fazer isso são as seguintes:

  1. Abra o Mission Planner e vá para a janela Flight Plan.
  2. Desenhe um polígono sobre a área de pesquisa desejada usando a ferramenta polígono.
  3. Salve o polígono como ‘search_area.poly’ na mesma pasta do script MATLAB.
  4. Vá para MATLAB e execute real_search_polygon ou real_search. Certifique-se de escolher a largura de caminho desejada e altere o file_path na linha 7 para o diretório correto onde você está trabalhando.
  5. Assim que o script for executado e você estiver satisfeito com o caminho gerado, volte para o Planejador de Missão.
  6. Clique em Load WP File no lado direito e escolha o arquivo de waypoint ‘search_waypoints.txt’ que você acabou de criar.
  7. Clique em Write WPs no lado direito para enviar os waypoints para o drone.
  8. Arme o drone e decole manualmente ou clicando com o botão direito no mapa e selecionando decolagem.
  9. Uma vez em uma altura razoável, mude o modo para automático e o drone iniciará a missão.
  10. Depois que a missão terminar, clique em RTL na guia de ações para trazer o drone de volta ao local de lançamento.

O vídeo no início desta etapa é uma simulação no Mission Planner do UAV pesquisando uma área.

Etapa 7: Visão

Visão
Visão

A missão do drone é voar sobre montanhas ou regiões selvagens e localizar humanos ou objetos irregulares e, em seguida, processar isso para ver se a pessoa precisa de ajuda. Idealmente, isso seria feito usando uma câmera infravermelha cara. No entanto, devido aos altos custos das câmeras infravermelhas, em vez disso, a detecção infravermelha está sendo semelhante à detecção de todos os objetos não verdes usando uma câmera Pi normal.

  1. ssh no Raspberry Pi
  2. Em primeiro lugar, precisamos instalar o OpenCV no Raspberry Pi. O seguinte guia fornecido por pyimagesearch é um dos melhores disponíveis na Internet.
  3. Baixe o código no Raspberry Pi do GitHub por meio deste link. Para baixar o código para o Raspberry Pi, você pode baixar o arquivo para o seu computador e, em seguida, transferi-lo para o Raspberry Pi.
  4. Para executar o código, vá para o diretório onde o código está no Raspberry Pi e execute o comando:

python colour_target_detection.py --conf conf.json

USO CONTÍNUO Cada vez que você reinicia o raspberry pi, você precisa executar os seguintes comandos:

sudo ssh [email protected] -X

fonte ~ /.profile

workon cv

Em seguida, continue com a etapa 4 acima.

Nota importante: NEM todos os terminais são capazes de mostrar vídeos. No mac, use o terminal XQuartz.

Recomendado: