Baseado no PX4 source flight controller firmware. Utiliza ambientes simulados como (Gazebo), implementa modulos de mapeamento, localizcao, planejamento, controle e deteccao.
Necessarios e utilizados:
https://px4.io/
https://www.ros.org/
http://qgroundcontrol.com/
https://mavsdk.mavlink.io/main/en/index.html
https://mavlink.io/en/
https://docs.qgroundcontrol.com/master/en/qgc-user-guide/
https://camera-manager.dronecode.org/en/
https://ardupilot.org/ardupilot/
https://clover.coex.tech/en/ --- https://coex.tech/education
https://www.ecalc.ch/xcoptercalc_mobile.php
http://www.librepilot.org/site/index.html
https://ieeexplore.ieee.org/Xplore/home.jsp
Um livro muito completo em geral. Ele fornece uma visão geral detalhada de todos os tópicos relacionados a quadricópteros, desde o design do chassi até eletrônicos e controle, mergulhando profundamente em práticas e considerações técnicas e práticas de design. Ele fornece intuição por trás de cada assunto e não contém ambiguidades. A matemática pode parecer muito difícil para algumas pessoas lidarem, mas isso não é motivo de preocupação. Uma pessoa sem formação em engenharia mecânica ou elétrica pode facilmente lidar com isso com algum conhecimento de cálculo e geometria básica.
Faça pausas, anote possíveis coisas que você precisa revisar e assista-as depois ou de uma maneira diferente. Isso é muito para absorver e pausas são obrigatórias.
Alguns conceitos podem levar muito mais tempo para serem entendidos completamente. Então, se você não entender imediatamente, não se preocupe. Sugiro revisar algumas partes que pareceram difíceis para você após passar por esta lista de estudos uma vez.
Existem muitas distrações que podem consumir tempo valioso. Foco e concentração são difíceis.
Aprenda a programar. Isso é necessário para entender como os diferentes algoritmos e técnicas que serão apresentados são realmente implementados. Você precisa desse conhecimento para poder entender o código-fonte das implementações populares de estruturas de dados, controladores de voo de código aberto e muito mais. Estruturas de dados básicas e complexidade algorítmica devem ser incluídas.
- C, C++, Python, ROS
- Informações disponíveis na internet são amplamente acessíveis e você pode encontrar muitas coisas pesquisando.
- Posso recomendar começar com Python e progredir para C e C++.
- Você pode aprender a programar em paralelo com este plano de estudos, mas as coisas serão muito mais difíceis e levarão mais tempo.
- Um plano de estudos completo de ciência da computação para se tornar um engenheiro de software
A próxima parte é necessária para poder entender a matemática por trás das coisas que vamos usar. Não é de forma alguma mais difícil em comparação com outras áreas de estudo. Aguenta firme e, no final, você ficará surpreso com o quão fácil é entender tudo. Este não é o único caminho para aprender essas coisas, é apenas o que eu seguiria. (Sim, eu gosto de palestras universitárias e artigos técnicos.)
- Álgebra linear básica, cálculo, probabilidade e física elementar
- Cálculo em Uma Variável - MIT OCW
- Cálculo em Múltiplas Variáveis - MIT OCW
- Álgebra Linear de Gilbert Strang - MIT OCW realmente não há melhor maneira de aprender isso no mundo
- Introdução à Probabilidade e Estatística - MIT OCW
- Processamento Digital de Sinais - Rensselaer Polytechnic Institute
Opcionais
-
Esses podem ser caros, mas aqui está uma lista dos mais populares. A maioria é barata ou gratuita.
-
Modelagem e Mapeamento de Drones 2D & 3D Com Agisoft Metashape
-
Esta é a base dos rotores que será coberta primeiro. Estes poucos recursos farão você entender o que um drone precisa para voar mal, bem, com a ajuda de motores de autonomia extras ou com a ajuda de um piloto.
-
Após esta parte, os detalhes de cada subsistema serão investigados minuciosamente.
-
Palestras Técnicas do Matlab - Compreendendo Sistemas de Controle
-
Palestras Técnicas do Matlab - Simulação e Controle de Drones
-
Introdução à Simulação de 6 Graus de Liberdade de Veículos Aéreos (pdf)
-
PID, LQR e LQR-PID em uma plataforma de quadricóptero (artigo)
Neste ponto, você pode se perguntar: Isso é apenas para quatro rotores. Não se preocupe, os extras são apenas para ter resiliência. No futuro, isso será ampliado com mais tipos de aeronaves de rotores, como submarinos, drones VTOL e asas.
-
Agora que você tem uma compreensão básica de como vai fazer as coisas voarem, é hora de dar uma olhada mais aprofundada nos conceitos matemáticos por trás do controle de sistemas.
-
Palestras Técnicas do Matlab - Sistemas de Controle na Prática
-
Para fazer a teoria de controle funcionar, precisamos obter uma estimativa de estado de melhor esforço observando nosso sistema de aeronaves rotativas.
-
Filtros de Kalman
-
Projeções de Mapa
-
Unidades de Medição de Inércia
-
Câmeras e Sensores Ópticos
- Como Funciona uma Câmera
- Obturador Rolante e Global
- Fluxo Óptico
- Percepção de Profundidade
- PX4: Controle de Gimbal (site)
- MAVLink: Protocolo de Gimbal (site)
-
Correções e Calibração
-
Protocolos de Comunicação
-
O subsistema de sensores está completo. Agora podemos prosseguir para construir um mapa do ambiente, bem como descobrir onde nosso UAV está localizado no mundo.
-
Octomap: Uma Estrutura de Mapeamento 3D Probabilística Eficiente Baseada em Octrees (site)
-
Condução Autônoma: Localização e Mapeamento com Aprendizado Profundo
-
Após uma localização adequada, estamos prontos para planejar a trajetória ou missão, para fazer com que o UAV complete um curso de trajetória predefinido junto com ações
-
3DVFH+: Esquiva de Obstáculos Tridimensional em Tempo Real Usando um Octomap (artigo)
- Como funcionam os motores brushless e como controlá-los
- Vantagens e Desvantagens de Motores Brushed e Brushless
- Como escolher o motor brushless certo para seu drone
- Trem de Pouso Retrátil Lento para Drones
- Drone com Braços de Robô Duplos
-
Para seu próprio interesse. Dê uma olhada no código-fonte e no rastreador de problemas, talvez participe das chamadas de desenvolvimento semanais.
-
Autopilotos:
-
SDKs:
-
Estações de Controle em Terra:
-
Simuladores:
-
Middleware:
-
Protocolos:
-
Ferramentas de Design:
-
Avaliação de Voo - Projeto e avaliação de estrutura aérea baseada em regras e restrições
-
Para o seu próprio interesse também.
- Betaflight: Diagramas de Arquitetura de Software
- Betaflight: Alvos de Placas Unificadas
- Pixhawk: Visão Arquitetural
- ArduPilot: Modos de Voo
- Pixhawk: Revisão de Voo
-
Para fazer isso, você precisa encontrar um conjunto de hardware necessário que seja compatível, gravar e configurar o firmware do controlador de voo desejado.
-
Hardware Mínimo
- Estrutura. Para corridas/controle totalmente manual, geralmente de fibra de carbono, mas você pode até mesmo imprimir em 3D ou esculpir em madeira. Considere 2 dimensões: tamanho do conjunto do controlador de voo e tamanho da hélice. A maioria das hélices comuns teria cerca de 5".
- Controlador de Voo. Você já sabe o suficiente para escolher um. Eu usaria o Betaflight.
- ESCs. Você pode optar por um ESC 4 em 1 ou uma placa combo all-in-one. Cada um tem vantagens e desvantagens, pesquise sobre isso. Mas primeiro, verifique sua bateria. Deve ser capaz de lidar com a corrente de pico.
- PDB. Você precisa de uma placa de distribuição de energia. Estas são relativamente pequenas e simples. Você pode encontrar combos PDB+ESC+FC que incluem redução de tensão da bateria e tudo mais. Mas primeiro, verifique sua bateria.
- Bateria. LiPo. No momento desta escrita, você pode ir de 4s a 6s. O preço depende da capacidade, classificação de descarga e contagem de células.
- Motores Brushless. Você sabe, para fazer a coisa se mover.
- Transceptor RC. Deve ser compatível com seu controlador RC e seu protocolo deve ser compatível com sua placa FC. Tipicamente 2.4GHz.
- Controlador RC. Flysky, Taranis, há muitos para listar.
- Após configurar o firmware, você deve ser capaz de voar com isso, mas há várias coisas faltando.
-
Hardware Opcional
- Câmera. Não é do tipo que você está acostumado. Esta envia vídeo (analógico) PAL/VTSC e deve suportar OSD
- VTX. Significa transmissor de vídeo. Isso é usado para transmitir o vídeo geralmente em 5.8GHz. Pesquise quantos mW você precisa.
- Óculos FPV. Para visualizar o vídeo. Deve ter antena compatível com o VTX. Módulos de diversidade que escolhem dinamicamente a melhor fonte de sinal de uma antena onidirecional e uma direcional são melhores.
- Antenas Aftermarket. Para melhor recepção.
- Buzzer. Apita se você perder.
- Carregador de Bateria com Balanceamento. Você não pode usar baterias descarregadas.
- Fonte de Alimentação do Carregador de Bateria com Balanceamento. Se seu carregador não vier com um. (A maioria dos IMAX B6s não vem, por exemplo)
- Caixa 3D Impressa para GoPro Session
- Fita Isolante
- Abraçadeiras
- LEDs para a parte inferior da aeronave
- Fitas de Velcro para Bateria
-
Software e Configuração Adicional
- Registro Blackbox. Informações importantes sobre o seu voo. Pode ajudar na análise pós-voo.
- Mapeamento de Canais RC
- Certifique-se de que os ESCs girem nas direções corretas. Você pode mudar isso no software do ESC ou do controlador de voo.
- Emparelhe o Transceptor RC com seu Controlador RC.
- Ajuste de PID e Taxas
- Mantenha um backup da configuração junto com o número exato do firmware para que você não se esqueça.
Pilotos experientes de corridas recomendam começar voando no modo 'acro'/'freestyle' desde o início. Não faça isso com hardware de drone real, a probabilidade de colisão dentro de 2 segundos é quase 100%. Dedique seu tempo primeiro a um simulador. Existem muitos disponíveis nas plataformas de jogos mais populares, como Steam. Por exemplo: Liftoff, DRL Sim, etc.
Voar no modo 'angle'/'aided' é muito mais fácil e é o mesmo que voar com seu drone DJI/Parrot/etc típico. Você pode voar dessa maneira mesmo sem óculos.
-
Construir um Rotorcraft Totalmente Autônomo é muito mais difícil e requer mais recursos do que construir um com assistência computacional. Você precisa de uma calibração melhor porque não há um piloto voando diretamente, apenas supervisionando.
-
Hardware Básico. Básico no sentido de que você precisa pelo menos disso para voar autonomamente. Talvez você possa deixar o GPS de fora, mas você precisa pelo menos de fluxo óptico para estabilização exata.
- Controlador de Voo. Prefira um pré-ajustado e pré-construído que seja resistente e robusto o suficiente. O Pixhawk 4 é uma opção muito boa, com duplos IMUs, uma tonelada de sensores, conectores padronizados e uma variedade de opções de conectividade.
- GPS
- e/ou Câmera(s) Montada(s) na Parte Inferior. Um exemplo de um drone que possui câmeras na parte inferior, mas não GPS, é o da série de palestras sobre tecnologia MATLAB.
- Estrutura
- Hélices
- Motores Brushless
- Placa de Distribuição de Energia
- Bateria LiPo
- Conectividade
- Alguma forma de enviar dados de controle de missão e receber informações
- Controlador RC para sobreposição do piloto à trajetória
-
Hardware Opcional
- Esquiva Básica de Obstáculos
- Câmera Montada na Frente (ou RGB-D ou ultrassônico de longo alcance para drones de movimento lento)
- Co-processador básico se o firmware do controlador de voo não conseguir lidar com a esquiva de obstáculos por conta própria
- Pouso Automático e Manual
- Sensor ultrassônico montado na parte inferior
- e/ou câmera(s) montada(s) na parte inferior - são necessárias duas câmeras para a profundidade, a fim de serem mais confiáveis do que o fluxo óptico
- Transporte de Carga
- Algum tipo de ímã ou servo para soltar cargas
- Operações Avançadas de Câmera
- Gimbal rotativo. Para não acoplar o campo de visão com o movimento do drone.
- Câmera RGB-D (para melhor SLAM)
- LiDAR (também para SLAM)
- Trem de Pouso Retrátil
- Conectividade Extra
- WiFi
- LoRa
- E-3G-4G-5G
- Bluetooth
- Esquiva Básica de Obstáculos
-
Placas de Computação Co-processadoras Úteis
Normalmente, você começa com os requisitos do 'trabalho', por exemplo, mapeamento, pulverização de culturas, inspeção e, em seguida, decide qual hardware é capaz de fazer esse trabalho em um cenário de custo-benefício. Configure tudo e você estará pronto para ir.
Parabéns!
Continue aprendendo.
Você nunca está realmente pronto. Mas ainda assim, bom trabalho :).
- Asas
- VTOL
- Subaquático
-
Enxames de UAVs
-
Reabastecimento Automático e Retomada de Missão
-
Aprendizado Profundo
Agora que você chegou tão longe, aqui estão os últimos recursos aos quais posso direcioná-lo. A partir deste ponto, você deve ter um bom entendimento de como os drones funcionam e como ter uma percepção digital do ambiente. As últimas partes são exatamente algumas peças que faltam e como juntar tudo:
- Rastreamento Eficiente e Preciso de Objetos Através de Vídeo
- Filtros de Correlação Kernelizados. Esta é a abordagem eficiente #1. Uma etapa de treinamento muito simples com uma detecção muito simples e uma etapa de atualização online.
- Aprendizado de Representação de Ponta a Ponta para Rastreamento Baseado em Filtros de Correlação. Esta é a etapa #2, sacrificando algum poder computacional e complexidade para obter um rastreamento mais robusto e invariante à transformação e oclusão.
- Computações Leves de Redes Neurais Profundas para Plataformas Móveis e Embarcadas
- MobileNets: Redes Neurais Convolucionais Eficientes para Aplicações de Visão Móvel. Há também uma versão V2 do MobileNets.
- Intel OpenVINO. Otimizando modelos de aprendizado profundo para a borda. A nVidia e outras empresas fornecem suas próprias ferramentas, mas todas trabalham em uma poda semelhante e reduzem os neurônios enquanto mantêm métricas de desempenho suficientemente altas.
- Em Direção a uma Plataforma Robusta de Cinematografia Aérea: Localização e Rastreamento de Alvos em Ambientes Não Estruturados. AKA o paper da Skydio. Os autores deste paper publicaram muitos trabalhos sobre o assunto e provavelmente continuarão a fazê-lo. Sugiro que você os procure no Google Scholar.
Por fim, espero que tenha gostado de ler e aprender com este simples arquivo de texto tanto quanto eu gostei de pesquisar e escrever sobre ele.