Tiago Alexandre Navegação De Drones Via GPS Gonçalves Alvané

Transcription

Departamento deUniversidade de Aveiro Eletrónica, Telecomunicações e Informática2014Tiago AlexandreGonçalves AlvanéNavegação de Drones via GPS(Drones Navigation through GPS)

Departamento deUniversidade de Aveiro Eletrónica, Telecomunicações e Informática2014Tiago AlexandreGonçalves AlvanéNavegação de Drone via GPS(Drone navigation through GPS)Dissertação apresentada à Universidade de Aveiro paracumprimento dos requisitos necessários à obtenção do grau deMestre em Engenharia Eletrónica e Telecomunicações,realizada sob a orientação científica do Professor Doutor NunoMiguel Gonçalves Borges, Professor Catedrático doDepartamento de Eletrónica, Telecomunicações e Informáticada Universidade de Aveiro e coorientação do Professor DoutorJoão Nuno Pimentel da Silva Matos, Professor Associado doDepartamento de Eletrónica, Telecomunicações e Informáticada Universidade de Aveiro

Dedico este trabalho aos meus pais, António e Margarida, por todoo esforço e dedicação.“Our virtues and our failings are inseparable, like force and matter.When they separate, man is no more.”Nikola Tesla

o júri / the jurypresidente / presidentProf. Doutor José Carlos Esteves Duarte PedroProfessor Catedrático do Departamento de Eletrónica, Telecomunicações eInformática da Universidade de Aveirovogais / examiners committeeProf. Doutor Nuno Miguel Gonçalves Borges de Carvalho (Orientador)Professor Catedrático do Departamento de Eletrónica, Telecomunicações eInformática da Universidade de AveiroProf. Doutor Rafael Ferreira da Silva CaldeirinhaProfessor Coordenador do Instituto Politécnico de Leiria

Agradecimentos/AcknowledgementsDedico este trabalho a todas as pessoas que duma forma ou deoutra me acompanharam em todo este percurso e que fizeramcom que este fosse concluído com sucesso.Em primeiro lugar quero agradecer aos meus pais e irmã porterem sido incansáveis no apoio, no amor e na coragem que mederam ao longo deste meu percurso. À minha namorada, AnaLuísa, um enorme obrigado por ter estado ao meu lado,transmitindo sempre a confiança e o amor necessário para quetodas as etapas e obstáculos fossem ultrapassadas com sucesso.Aos meus avós, Emília e Alexandre, um muito obrigado pelo apoioe por serem uma fonte inspiração onde o esforço e adeterminação são denominadores comuns.A todos os meus amigos e colegas com os quais tive um enormegosto de trabalhar e cooperar ao longo do meu percursoacadémico, obrigado por fazerem parte deste trilho fantástico quepercorremos e com o qual sorrimos, aprendemos, discutimos,brincamos e crescemos juntos.Gostaria de agradecer em especial ao Professor Doutor NunoBorges de Carvalho, por me ter cativado e me ter orientado pelocaminho certo, mostrando-se disponível sempre que assim onecessitei.Queria também agradecer a todos os investigadores e colaboresdo Instituto de Telecomunicações, em especial à equipa de RFcom os quais tive um enorme gosto de privar e passar bonsmomentos.A todos vós, um profundo muito obrigado!

Palavras-chaveDrone, Quadcopter, Ar. Drone 2.0, GPS, Navegação autónoma.ResumoAtualmente vivemos numa era onde a evolução tecnológica cresceexponencialmente e onde novos conceitos surgem diariamente para gáudio deuns e desagrado de outros. Uma das tecnologias mais emergentes e commaior impacto nos últimos anos é a comercialização de quadcopters depequena dimensão, também denominados de drones pertencendo à categoriade Unmanned Aerial Vehicle (UAV). A possibilidade de estes poderem sertripulados através de controladores capacitados de comunicações rádio oumais recentemente por simples tablets ou smartphones, fez com que ointeresse de aquisição atingisse valores sem precedentes, ao ponto de osdepartamentos de defesa e segurança de vários países sentirem anecessidade de legislar, de modo a preservar a segurança e privacidade. Estanecessidade prede-se com o facto de a maioria dos drones comerciaispermitem alcançar uma altitude considerável e estão maioritariamenteequipados com câmaras com alta definição. Com a comercialização de dronesdas mais variadas dimensões, não tardaram a surgir uma infinidade deaplicações civis para cenários de qualquer índole. À medida que as aplicaçõessurgiram, surgiu também a necessidade de integração de vários sensores quecontribuíssem para um voo mais controlado, libertando o piloto da necessidadede um controlo total sobre o drone. A inclusão de tecnologias de localizaçãoGPS surgem assim como uma mais-valia no controlo através oposicionamento geográfico, tal como a possibilidade de serem realizados vooscompletamente autónomos, ficando do lado do utilizador a decisão de definir otrajeto a realizar pelo drone, sendo possível a introdução de vários pontos depassagem (waypoints) ao longo de um percurso definido. Como tal, o objetivodo trabalho desenvolvido e descrito neste documento foi o de desenvolver umaaplicação que permitisse a introdução de waypoints em formato decoordenadas geográficas em graus decimais, ficando do lado da aplicação acapacidade de receção de mensagens de localização através de um recetorGPS, análise das variáveis de controlo do drone e envio de comandos denavegação. São ainda gerados algoritmos de segurança, salvaguardandoassim o sistema de possíveis erros de leitura ou falhas de comunicação.

keywordsDrone, Quadcopter, Ar. Drone 2.0, GPS, Autonomous flight.abstractNowadays, we live in an era where the technological evolution is growingexponentially. New concepts come out daily for the delight of some and thedispleasure of other. In the last two years, one of the most emergingtechnologies with a huge impact on people’s life was the put up for sale ofquadcopters which is a class of Unmanned Aerial Vehicles (UAV) and alsoknown as drones. The fact that they can be controlled by a RC command ormore recently by tablets or smartphones resulted in an unprecedented rise ofthe drone’s purchase. In many countries, this reality forced the defense andsecurity departments to be alert and create laws to ensure the security andprivacy of everyone. This need to protect the privacy and security stemmedfrom the fact that most recent drones are provided with high definition camerasand can achieve a considerable altitude. Due to the drone’s commercializationwith the most varied dimensions, many civil applications were taking shape forany type of scenarios. As new applications emerged, also came up the need forthe integration of sensors to allow smoother flights with a better control,liberating the pilot from the need to take full control of the drone. Thus, theinclusion of navigation systems, such as GPS, becomes a very powerful tool.This technology allows a better control over the location of the drone, as well asthe option of fully autonomous flight. This feature made the piloting task easier,being only essential to define the flight path through the introduction ofwaypoints. Therefore, the purpose of the work developed and presented in thisdocument is to develop an application which allows the instruction of waypointscoordinates in decimal format. The application receives coordinates from aGPS receiver, analyses the control variables and sends the navigationcommands to the drone. The application also contains a security system, tocircumvent eventual communication failures.

ConteúdoConteúdo. iLista de Figuras . vLista de Tabelas . viiAcrónimos. ix12Introdução . 11.1Motivação . 11.2Objetivos e Contribuições. 41.3Estrutura do Documento . 5Conceitos Fundamentais de Navegação . 72.1Sistema de Localização . 72.1.1Desenvolvimento de Técnicas de Posicionamento . 72.1.2Posicionamento Baseado em Satélites . 82.1.3Sistemas Baseados no Posicionamento em Satélites . 92.2Global Position System .112.2.13Segmentos . 12Conceitos Fundamentais do Drone . 193.1Parrot AR.Drone .193.2Movimentos Básicos .213.3Hardware.233.3.13.4Sensores . 23Comunicação.263.4.1Camadas . 273.4.2UDP/TCP . 273.4.3Telnet . 293.4.4FTP . 29i

3.4.53.5API .303.5.1Canal de Transmissão de Dados de Navegação . 313.5.2Canal de Transmissão de Vídeo . 323.5.3Canal de Transmissão de Comandos . 323.5.4Porto de controlo . 323.64Controlador de Navegação .333.6.1Comandos AT . 333.6.2Dados de Navegação . 353.6.3Configuração Inicial . 37Plataforma de Navegação . 394.1Recetor GPS.394.1.1Formato Padrão de Mensagens GPS . 394.1.2Módulo Físico do Recetor GPS . 434.2Arduino .464.2.1Especificações Físicas do Arduino Nano . 464.2.2Comunicação . 484.2.3Bibliotecas . 484.3Sistema de Navegação .494.3.25UART . 29Posicionamento . 53Implementação do Sistema . 555.1Sistema de Controlo .555.1.1Visão Geral do Sistema . 555.1.2Processamento de Comandos e Dados de Navegação . 585.1.3Comandos de Controlo . 615.1.4Dados de Navegação . 655.1.5Co-piloto . 655.2Sistema de Navegação Autónomo .675.2.1Iniciação de Navegação . 695.2.2Atualização dos Dados de Navegação . 695.2.3Atualização do Próximo WP . 705.2.4Processo de Voo . 705.2.5Cessação de Funções . 745.3Sistema Físico .755.4Resultados .77ii

6Conclusões e Trabalho Futuro . 816.1Conclusões .816.2Trabalho Futuro .82Anexos . 83A.Comandos Referentes à API do AR.Drone 2.0.83A.1 Descrição de Comandos . 83A.2 Configurações de Multiutilizador . 87A3. Configurações Gerais . 88A4. Comandos de Controlo . 88B.Pinos de Entrada do Recetor GPS.92C.Ligações Físicas: Recetor GPS Arduino Drone .93C.1 Esquema Elétrico do Logic Level Converter . 93C.2 Ligação Arduino Recetor GPS . 93Bibliografia. 95iii

iv

Lista de FigurasFigura 1.1 Segundo quadcopter de Etienne Oehmichen [7] . 2Figura 1.2 Parrot AR.Drone 1.0 [8] . 3Figura 2.1 Princípio do posicionamento baseado em satélites . 8Figura 2.2 Primeiro protótipo do Transit 1A a ser preparado para o lançamento [11] . 9Figura 2.3 Satélite GLONASS [12]. 10Figura 2.4 Satélite Galileo [13] . 10Figura 2.5 Constelação dos 24 satélites GPS dispostos em 6 órbitas distintas [15] . 11Figura 2.6 Segmentos do GPS . 12Figura 2.7 Evolução dos satélites GPS (da esquerda para a direita): Block IIA, BlockIIR(M), Block IIF e GPS III [20] . 14Figura 2.8 Segmento de Controlo [21] . 15Figura 2.9 Exemplo de recetor GPS [22] . 17Figura 2.10 Localização com base na técnica de triangulação . 18Figura 3.1 AR.Drone 2.0 com casco interior (esquerda) e casco exterior (direita) [30]. 21Figura 3.2 Variáveis dos movimentos básicos do quadcopter [31] (imagem editada) . 21Figura 3.3 Movimentos básicos: 1- Aceleração Vertical; 2- Movimento lateral; . 22Figura 3.4 AR.Drone 2.0 main board [32] . 23Figura 3.5 Funcionamento do sensor de ultrassom (esquerda) [34] e módulo físico (direita)[35] . 25Figura 3.6 Camadas do modelo OSI. 27Figura 3.7 Descrição de pacote de dados UDP . 28Figura 3.8 Frame de dados de um bloco de dados pertencente à UART [39] . 30Figura 3.9 Inicialização do processo de transmissão de dados de navegação [25] . 37Figura 4.1 SOP com antena do recetor GPS Mediatek - 3329 . 43Figura 4.2 Design de referência do SOP na configuração UART [42] . 45Figura 4.3 Arduino Nano e respetivo pinout [44]. 46Figura 4.4 Diagrama Básico do sistema de navegação autónomo . 49Figura 4.5 Diagrama de receção de mensagens NMEA GPRMC . 51Figura 4.6 Diferença de ângulo entre direção desejada e atual . 52Figura 5.1 Estrutura de funções adjacentes à rotina principal main do ficheiro ITDrone . 56Figura 5.2 Estrutura base do sistema de controlo . 56Figura 5.3 Main loop da função principal . 57Figura 5.4 Estrutura das funções adjacentes à função processData . 59Figura 5.5 Processo de descodificação de dados de navegação e de envio de comandos . 59Figura 5.6 Verificação do status bit mask (bit correspondente ao processo deBOOSTRAP) . 61v

Figura 5.7 Estrutura dos comandos de controlo do drone . 62Figura 5.8 Processo de ajuste de direção . 66Figura 5.9 Estrutura das funções adjacentes ao sistema de navegação autónomo . 67Figura 5.10 Processo do Sistema de Navegação Autónoma . 68Figura 5.11 Processo de navegação autónoma . 69Figura 5.12 Gestão do processo de voo autónomo . 71Figura 5.13 Rotina de direcionamento para o WP pretendido . 72Figura 5.14 Processo de Verificação de Rota . 73Figura 5.15 Ligações físicas entre o recetor GPS, arduino e drone [3] [47] . 75Figura 5.16 Montagem do sistema de navegação no drone . 76Figura 5.17 Ligação da porta série (TX, RX e GND) do Drone para o Arduino . 76Figura 5.18 Janela de execução do controlador interno do drone . 77Figura 5.19 Leituras GPS a uma frequência de 1Hz . 78Figura 5.20 Leituras GPS a uma frequência de 5Hz . 78Figura 5.21 Resultados finais de voo . 79Figura A.1 Sinal precedente do 2D-fix . 92Figura A.2 Esquema Elétrico do Logic Level Converter [47] . 93Figura A.3 Ligações físicas entre arduino e recetor GPS . 93vi

Lista de TabelasTabela 3.1 Resumo dos comandos AT [25] . 35Tabela 3.2 Composição de um pacote de navdata [25]. 35Tabela 4.1 Tipos de mensagens NMEA [41] . 40Tabela 4.2 Descrição dos termos individualmente do tipo de mensagem GPGGA [41] . 41Tabela 4.3 Descrição dos termos individualmente do tipo de mensagem GPRMC [41] . 42Tabela 4.4 Descrição dos portos do recetor GPS [42] . 44Tabela 4.5 Características DC do Recetor [42] . 45Tabela A.1 Especificação dos termos do comando AT*REF [25] . 83Tabela A.2 Especificação dos termos do comando AT*PCMD [25] . 85vii

viii

AcrónimosAGPS – Assisted Global Positioning SystemAMCS – Alternate Master Control StationAPI – Application Programming InterfaceARM – Architecture RISC MachineASCII – American Standard Code for Information InterchangeAVL – Auto Vehicle LocationBDS – BeiDou Satellite Navigation SystemBPS – Bits per SecondC/A – Coarse AcquisitionCES – Consumer Electronic ShowCMOS – Complementary Metal-Oxide SemiconductorCOM – Component Object ModelCR – Carriage ReturnCRC – Cyclic Redundancy CheckDDR – Double Data RateDGPS – Differential Global Positioning SystemDHCP – Dynamic Host Configuration ProtocolDOD – Department of DefenseDOF – Degrees Of FreedomEEPROM – Electric-Erasable Programmable Read-Only Memoryix

EGNOS – European Geostationary Navigation Overlay ServiceEPO – European Patent OfficeESA – European Space AgencyFAI - Fédération Aéronautique InternationaleFCC – Federal Communications CommissionFIFO – First In First OutFPS – Frames per SecondFTDI – Future Technology Devices InternationalFTP – File Transfer ProtocolGA – Ground AntennasGLONASS – Global Navigation Satellite SystemGNSS – Global Navigation Satellite SystemGPS – Global Position SystemHDOP – Horizontal Dilution of PrecisionIC – Integrated CircuitsID – IdentifierIDE – Integrated Development EnvironmentIEEE – Institute of Electrical and Electronics EngineersIMU – Inertial Measurement UnitsIP – Internet ProtocolLBS – Location-based serviceLED – Light-emitting DiodeLF – Line FeedMAV – Micro Aerial VehicleMCS – Master Control StationMEMS - Micro-Electro-Mechanical SystemMISO – Master In Slave Outx

MOSI – Master Out Slave InMS – Monitor StationNAVSTAR – Navigation Satellite with Time and RangingNGS – National Geodetic SurveyNMEA – Nation Marine Electronics AssociationNNSS – Navy Navigation Satellite SystemOSI – Open Systems InterconnectionP-code – Precision CodePOT – Patch on topPRN – Pseudorandom NoisePWM – Pulse Width ModulationQCIF – Quarter Common Intermediate FormatRAM – Random Access MemoryRC – Radio ControlledRINEX – Receiver Independent Exchange FormatRISC – Reduced Instruction Set ComputingRMS – Root Mean SquareRoHS – Restriction of Certain Hazardous SubstancesRPM – Rotations per MinuteRTC – Real Time ClockRTCM SC – Radio Technical Commission for Maritime Services Special CommitteeSBAS – Satellite-based Augmentation SystemSCK – Serial ClockSCL – Serial ClockSDA – Serial Data LineSDK – Software Development KitSO – Sistema Operativoxi

SRAM – Static Random Access MemorySS – Slave SelectTCP – Transmission Control ProtocolTTL – Transistor-Transistor LogicVANT – Veiculo Aéreo Não TripuladoVGA – Video Graphics ArrayUART – Universal Asynchronous Receiver/TransmitterUAV – Unmanned Aerial VehicleUDP – User Datagram ProtocolUSB – Universal Serial BusWP - Waypointxii

Capítulo 1Introdução1.1MotivaçãoNo panorama tecnológico atual, os quadcopters ou também conhecidos como drones estão a atingirum patamar de tal forma relevante, que deixaram de ter um reconhecimento equiparável a umobjeto perigoso utilizado para fins militares, passando a serem vistos com um objeto comum paraseres comuns. Este facto veio contribuir para a idealização de um número infindável de aplicaçõescivis, devido a serem vistos como objetos úteis em inúmeras manobras que poderiam colocar emrisco de vida de um ser humano, ou simplesmente devido a proporcionarem benefícios narealização de determinadas tarefas tanto a nível de dificuldade operacional como a nível monetário.Existem diversos exemplos em que os drones foram e são utilizados com sucesso. Casos como aavaliação dos estragos nos reatores nucleares danificados na central de Fukushima [1] no desastrede Março de 2011 ou a prevenção e investigação de incêndios [2], são apenas dois exemplos desucesso das potencialidades a reter.Surgem então, vários cenários de aplicações civis [3] onde estes poderão desempenhar um papelimportante, entre eles: Aplicações de proteção civiloVigilância contra atos ilegais na costa marítima;oVigilância de florestas contra incêndios;oCriação de redes de comunicações de emergência;oControlo de fronteiras;oControlo e rastreamento contra cultivo de drogas ilegais;oVigilância de eventos desportivos ou sociais com um elevado risco de confrontosfísicos.1

Investigação:oInvestigação arqueológica;oMedição de possíveis contaminações em ambientes de difícil acesso humano;oInvestigação de glaciares ou oceanos;oIdentificação de novas espécies de animais ou plantas.Captação de vídeo e fotografia, permitindo realizar um registo de imagem para vários tiposde desígnios: oContagem de aglomerados de animais;oMonotorização de florestas;oEventos sociais públicos ou particulares.Inspeções industriais:oInspeções de oleodutos ou gasodutos;oInspeções de linhas de energia elétrica ou postes de alta tensão;oManutenção de eólicas ou pontes.Em suma, existe uma panóplia de tarefas de difícil execução, onde os drones se revelam ser umaferramenta indispensável.Historicamente, o primeiro quadcopter surgiu em 1920 num projeto da Força Aérea Americana[4]. Após várias tentativas, Etienne Oehmichen apresentou o seu segundo, composto por quatromotores de duas pás, controlados por um único motor, presente na Figura 1.1. A aeronaveapresentava uma estabilidade e controlabilidade considerável para a época.Figura 1.1 Segundo quadcopter de Etienne Oehmichen [7]Realizou mais de mil voos e registou o primeiro recorde de distância da Fédération AéronautiqueInternationale (FAI) em 360 metros [5] para um helicóptero, batendo esse próprio recorde três diasmais tarde em 525 metros [6].2

Com o surgimento dos helicópteros convencionais de dois motores, com uma menor complexidademecânica e maior estabilidade e controlo relativamente aos quadcopters, fez com que estes caíssemem desuso deixando de ser um foco de interesse durante décadas.Na última década, devido à investigação desenvolvida em redor dos quadcopters, estesrecuperaram a sua popularidade, tornando-se numa aeronave muito mais simples de controlar doque os helicópteros convencionais.Existem diversos tipos de UAVs, sendo que um dos mais comuns e dos mais utilizados é oquadcopter. Com um comportamento similar aos helicópteros, tem a capacidade de descolarverticalmente e permanecer estaticamente no ar, deslocando-se em qualquer direção sem anecessidade de realizar um movimento semelhante ao dos aviões tradicionais. Como tal, permiteuma condução muito mais ágil para o piloto, libertando-o de movimentos co

Navegação de D Gonçalves Alvané ( Departamento de Eletrónica, Telecomunicações e InformáticaUniversidade de Aveiro 2014 rones via GPS Drones Navigation through GPS)