Você está na página 1de 92

Universidade do Minho Escola de Engenharia

Adriana Isabel Martins de Amorim Sistema de navegao inercial aplicvel a mltiplas plataformas mveis
de navegao inercial Adriana Isabel Martins de Amorim Sistema aplicvel a mltiplas plataformas mveis
UMinho | 2012

Outubro de 2012

Universidade do Minho Escola de Engenharia

Adriana Isabel Martins de Amorim Sistema de navegao inercial aplicvel a mltiplas plataformas mveis

Tese de Mestrado Ciclo de Estudos Integrados Conducentes ao Grau de Mestre em Engenharia Eletrnica Industrial e Computadores Trabalho efetuado sob a orientao do Professor Doutor Agostinho Gil Teixeira Lopes

Outubro de 2012

Agradecimentos
Em primeiro lugar, gostaria de agradecer ao meu orientador, Professor Doutor Agostinho Gil Teixeira Lopes, pelo seu incentivo na realizao deste trabalho, bem como pela disponibilidade e auxlio prestado. Um grande obrigado, ao meu amigo Jorge Aires que se mostrou sempre prestvel, tendo dado um especial auxlio nas formataes desta tese. Gostaria tambm de agradecer aos meus pais, Joaquim e Ana Amorim, pela oportunidade que me deram, bem como pela pacincia e compreenso demonstrada durante o decorrer do curso. Um agradecimento especial minha av que, embora no compreenda o meu trabalho, sempre me motivou. Um especial obrigado ao meu namorado Filipe Salgado, pela sua ateno e ajuda prestada. Adriana Amorim

iii

Resumo
Sistema de navegao inercial aplicvel a mltiplas plataformas mveis Keywords: Navegao Sensorial, fuso sensorial, INS, AHRS, IMU, MEMES, quaternion, mbed, Qt. Este trabalho tem com fundamento a implementao de sistemas IMU (Inertial Measurement Unit), AHRS (Attitude and Heading Reference system) e INS (Inertial Navigation System) com recurso apenas a sensores inerciais de baixo custo com vista sua integrao em diferentes aplicaes, tais como robots autnomos indoor, que requeiram sistemas de orientao no espao e que no possam, ou no seja desejvel, recorrer a tecnologias de localizao absoluta (ex., GPS). A implementao do trabalho tem por base o mtodo de quaternions, e um algoritmo de fuso sensorial para eliminao de drift e correo de erros. A determinao da orientao e reproduo da mesma foi conseguido com sucesso, verificando-se o correto funcionamento do mecanismo de eliminao de drift. O algoritmo de fuso sensorial utilizado foi estendido com mtodos de clculo da acelerao dinmica a que o referencial dos sensores est sujeito e determinao da sua velocidade linear e deslocamento. No entanto este mtodo revelou-se ineficaz para a determinao da posio e velocidade linear, devido acumulao sucessiva de erros. O trabalho revela que tal como para a determinao da orientao baseada em integrao, tambm a determinao da posio requer um mecanismo complementar de eliminao de erros.

iv

Abstract
Inertial navigation system applicable to multiple mobile platforms The scope of this work is the implementation of a IMU, AHRS and a INS, recurring only to low cost inertial sensors, foreseeing its integration in different applications, such as autonomous indoor robots, that require spatial orientation systems and do not recur to absolute localization technologies (e.g., GPS). The work is built on quaternions and a sensor fusion algorithm to compensate drift and correct errors. The determination and reproducing of orientation was successful achieved, verifying the proper operation of drift compensation mechanism. The sensor fusion algorithms used were extended with a dynamic acceleration estimation method to determine the linear velocity and displacement which affect the sensors. However, this method has proved inefficient in dealing with displacement and velocity estimation due to successive error accumulation. The works reveals that to precisely determine orientation based in integration, and similarly to the attitude and heading sensor fusion methods, also position estimation requires a complementary mechanism of error elimination.

ndice
CAPTULO 1 1.1 1.2 1.3 INTRODUO ............................................................................................... 1 Enquadramento .............................................................................................................. 1 Objetivos ......................................................................................................................... 4 Organizao da dissertao ............................................................................................ 4 ESTADO DA ARTE ...................................................................................... 6

CAPTULO 2 2.1 2.2

Produtos comercializados ............................................................................................... 6 Projetos de cdigo aberto ................................................................................................ 7 FUNDAMENTOS TERICOS E TECNOLGICOS ..................................... 10 Dados histricos dos acelermetros ...................................................................... 12 Acelermetros Piezoeltricos ................................................................................. 14 Acelermetros Capacitivos .................................................................................... 15 Acelermetros Capacitivos de Superfcie Micromaquinada .................................... 16 Dados histricos dos Giroscpios .......................................................................... 18 Giroscpios Mecnicos.......................................................................................... 19 Giroscpios ticos (I-FOG) ..................................................................................... 20 Giroscpios MEMS ................................................................................................ 21 Dados Histricos dos Magnetmetros ................................................................... 24 Magnetmetros de Fluxgate .................................................................................. 24 Magnetmetros de Sensor de Efeito de Hall .......................................................... 26 Magnetmetros de Sensor Magneto-indutivo ......................................................... 26 Magnetmetros de Sensor Magneto-resistivo ......................................................... 27 IMU - Inertial measurement Unit e MARG - Magnetic, Angular Rate and Gravity ..... 28 AHRS - Atittude Heading Reference System ........................................................... 29 INS - Inertial Navigation System ............................................................................ 29

CAPTULO 3 3.1 3.1.1 3.1.2 3.1.3 3.1.4 3.2 3.2.1 3.2.2 3.2.3 3.2.4 3.3 3.3.1 3.3.2 3.3.3 3.3.4 3.3.5 3.4 3.4.1 3.4.2 3.4.3 3.5

Acelermetros ............................................................................................................... 10

Giroscpios ................................................................................................................... 17

Magnetmetros ............................................................................................................. 23

Sistemas de navegao ................................................................................................ 28

Algoritmos ..................................................................................................................... 30
vi

3.5.1 3.5.2 CAPTULO 4 4.1 4.2 4.3 4.4 4.5

Quaternions .......................................................................................................... 31
DCM ..................................................................................................................... 33 DESCRIO DO SISTEMA DE DESENVOLVIMENTO .................................. 36

MBED ........................................................................................................................... 36
Placa sensorial de 4DOFs ............................................................................................. 39 Interface Grfico ........................................................................................................... 40 Fuso sensorial ............................................................................................................. 41 Aquisio da placa sensorial de 9DOFs ......................................................................... 42 IMPLEMENTAO ........................................................................................ 44

CAPTULO 5 5.1 5.2

Passos relevantes no desenvolvimento do trabalho ....................................................... 44

Framework QT .............................................................................................................. 54
Aspeto geral e funcionalidades .............................................................................. 55 Algoritmo e detalhes de implementao ................................................................ 58 RESULTADOS E DISCUSSO .................................................................... 63

5.2.1 5.2.2 CAPTULO 6 6.1 6.2 6.3 6.4 6.5

Sistema IMU com 4DOFs.............................................................................................. 64 Sistema MARG com 9DOFs .......................................................................................... 66 Sistema AHRS com 4DOFs ........................................................................................... 68 Sistema AHRS com 9DOFs ........................................................................................... 70 Sistema INS de 9DOFs ................................................................................................. 72 CONCLUSO ............................................................................................ 74

CAPTULO 7 7.1 7.2

Concluses ................................................................................................................... 74 Trabalho Futuro ............................................................................................................ 75

vii

Lista de Abreviaturas
AHRS Attitude Heading Reference System DCM - Direction Cosine Matrix DMA Direct Memory Address DOF Degree Of Freedom GAR Gabinete de Automao e Robtica GPS Global Positioning System IDE Integrated Development Environment IMU Inertial Measurement Unit INS Inertial Navigation System MARG Magnetic Angular Rate Gravity MEMS - MicroElectroMechanical Systems PC Personal Computer UAV - Unmanned Aerial Vehicle

viii

ndice de Figuras
Figura 1: Bssola[1] ....................................................................................................................... 1 Figura 2: Dispositivos com tecnologia GPS [2] ................................................................................ 2 Figura 3: Placa ArduPilot-Mega [10] ................................................................................................ 9 Figura 4: Acelermetro McCollum-Peters [16] ............................................................................... 12 Figura 5: Composio de um acelermetro piezoeltrico [18]. ...................................................... 14 Figura 6: Esquema de um acelermetro capacitivo [13]. .............................................................. 15 Figura 7: Processo de fabrico de uma estrutura em ponte[11]. ..................................................... 17 Figura 8: Giroscpio de Foucault [24]. .......................................................................................... 18 Figura 9: Representao dos eixos de um giroscpio, A [25] e B [26]. .......................................... 20 Figura 10: Giroscpio tico- Desfasamento dos feixes de luz [27]. ................................................ 21 Figura 11: Efeito de acelerao de Coriolis[29]. ............................................................................ 22 Figura 12: Estrutura de tipo pente [29]. ........................................................................................ 23 Figura 13: Bssola magntica [32]. .............................................................................................. 24 Figura 14: Relao entre os eixos de um magnetmetro e o norte magntico [33]........................ 25 Figura 15: Vetor do campo magntico de um sensor magneto-resistivo [30]. ................................ 27 Figura 16: Esquemtico de um sistema INS. ................................................................................ 30 Figura 17: Representao espacial de um quaternion [3]. ............................................................ 32 Figura 18: [39]. ............................................................................................................................ 37 Figura 19:Ambiente de Programao - KeiluVision ........................................................................ 38 Figura 20: Ambiente de Programao IDE on-line do mbed........................................................ 38 Figura 21: ArduIMU Sensor Board- Top (A), Bottom (B) [40]. ........................................................ 40 Figura 22: Breakout Board [40]. ................................................................................................... 40 Figura 23: Ambiente Grfico QT. ................................................................................................... 41 Figura 24: Exemplificao dos ngulos roll, pitch e yaw num objeto [42]. ..................................... 42 Figura 25: Placa 9 Degrees of Freedom - Sensor Stick [43]. ......................................................... 43 Figura 26: Prottipo final com cobertura (A) e sem cobertura (B). .............................................. 43 Figura 27:Eixos de Referncia ....................................................................................................... 53 Figura 28: Interface grfico - QT .................................................................................................... 55
ix

Figura 29:Interface Grfico - Comandos ........................................................................................ 56 Figura 30:Ambiente Grfico Janela de Registo ............................................................................ 57 Figura 31:Ambiente Grfico - Grfico ............................................................................................. 57 Figura 32:Fluxograma geral do Interface Grfico QT ...................................................................... 58 Figura 33:Fluxograma Envio de Comandos ................................................................................ 59 Figura 34:Fluxograma Novo Dado Recebido ............................................................................... 60 Figura 35:Fluxograma Nova Trama Recebida ............................................................................. 61 Figura 36: Ambiente Grfico Sistema IMU (4DOFs) em Repouso ............................................... 65 Figura 37: Grficos Sistema IMU (4DOFs) em Repouso ............................................................. 65 Figura 38:Grfico Perturbaes em cada Eixo e Estabilizao (IMU) .......................................... 66 Figura 39:Grfico Saturao dos Acelermetros do Sistema IMU (4DOFs) ................................. 66 Figura 40:Grfico Saturao do Giroscpio do Sistema IMU (4DOFs) ......................................... 66 Figura 41:Grfico Sistema MARG (9DOFs) em Repouso ............................................................. 67 Figura 42:Grfico No Saturao dos Acelermetros do Sistema MARG ..................................... 67 Figura 43: Grfico No Saturao dos Giroscpios do Sistema MARG (Eixo do Z) ...................... 68 Figura 44:Widget - Representao Inicial ....................................................................................... 69 Figura 45:Widget Representao Final da Posio Inicial ........................................................... 69 Figura 46:widget Representao Final (plano horizontal) ............................................................ 70 Figura 47:widget Representao Final ........................................................................................ 71 Figura 48:widget - Posio Aleatria I ............................................................................................ 71 Figura 49:widget - Posio Aleatria II ........................................................................................... 72 Figura 50:Grfico - Erro em Regime Estacionrio .......................................................................... 73 Figura 51:Grfico Funcionamento do INS................................................................................... 73

ndice de Tabelas
Tabela 1:Formatos de Trama ........................................................................................................ 51 Tabela 2:Comandos ...................................................................................................................... 52

xi

ndice de Equaes
Equao 1:Instanciao do quaternion (BA) ................................................................................. 31 Equao 2:Instanciao do quaternion (AB) ................................................................................. 31 Equao 3:Matriz de Rotao (BA) ................................................................................................ 32 Equao 4:ngulos de Euler a partir de quaternions ..................................................................... 33 Equao 5:Matriz de Transformao (BA) ..................................................................................... 33 Equao 6:Propriedades de matrizes ortonormais ......................................................................... 33 Equao 7:Matrizes Elementares de Transformao ..................................................................... 34 Equao 8:Instanciao de sequncia de rotaes ....................................................................... 34 Equao 9:Matriz de Rotao Final ............................................................................................... 35 Equao 10:ngulos de Euler a partir de DCM.............................................................................. 35

xii

Captulo 1 Introduo
1.1 Enquadramento
A tecnologia est cada vez mais presente no dia-a-dia e recorre-se cada vez mais a ela com o objetivo de se simplificar processos, diminuir mo-de-obra, substituir o prprio Homem na execuo de tarefas com alto nvel de risco, entre muitos outros motivos. Os avanos tecnolgicos so acompanhados por necessidades do Homem, no sentido de melhorar e simplificar processos. Neste sentido, pode dizer-se que, desde cedo, o Homem sentiu necessidade de conhecer a sua prpria localizao ou a de outros pontos ou locais, tendo recorrido frequentemente ao desenho de mapas para meio de orientao. Esta necessidade proliferou at aos dias de hoje, tendo tido pontos de viragem histricos importantes, como o caso da bssola magntica representada na Figura 1.

Figura 1: Bssola [1]

A bssola magntica fora dos primeiros dispositivos de orientao desenvolvidos, tendo sido usada por navegadores durante a descoberta do mundo, sendo ainda utilizada nos dias de hoje. A necessidade de saber a localizao e orientao de um corpo fora tambm sentida durante a segunda guerra mundial, tendo causado um grande impulso no desenvolvimento de dipositivos capazes de determinar a orientao e localizao de determinado objeto, por exemplo misseis comandados remotamente. Estes dispositivos, designados por sistemas de navegao inerciais so utilizados nos dias de hoje em vrias reas, tendo particular destaque a rea militar e aeroespacial, que como referido anteriormente, foram reas impulsionadoras ao desenvolvimento destes dispositivos. O recurso a sistemas de navegao inercial permite a explorao de territrio sem colocar em risco a vida humana, por exemplo em situaes de resgate a quando de uma catstrofe ou mesmo na explorao de outros planetas. Estes sistemas so tambm usados, por exemplo em submarinos e, tal como fora referido anteriormente, em msseis comandados, pois no necessitam de uma referncia externa ao sistema. Outro ponto de viragem histrico foi o aparecimento do GPS (Global Positioning System). Esta inveno do sculo XX utiliza tecnologia de ponta e satlites de milhares de euros a fim de obter a localizao especfica de um corpo. A Figura 2 ilustra dispositivos com tecnologia GPS que so possveis encontrar no mercado.

Figura 2: Dispositivos com tecnologia GPS [2]

Porm esta tecnologia tem limitaes no que diz respeito receo de sinal. No possvel usar GPS em situaes de condies atmosfricas adversas, bem como em cidades caracterizadas pela elevada densidade de grandes edifcios ou mesmo dentro dos prprios edifcios. Esta limitao pe fim possibilidade de utilizao desta tecnologia em robots indoor. Esta mesma limitao compromete a utilizao de GPS em robots de salvamento, ou seja no que diz respeito procura de sobreviventes em caso de uma catstrofe, por exemplo busca por entre destroos de um edifcio, ou no caso de um desabamento de uma mina numa busca no subsolo. Esta limitao estende-se tambm ao meio subaqutico, onde no possvel a receo de sinal, ou seja, por exemplo os submarinos, no podem utilizar este sistema de localizao. Visto isto, so necessrios sistemas alternativos, como sistemas de navegao inerciais, com vista a determinar o comportamento de um determinado corpo/robot dentro de edifcios, em meios subterrneos ou subaquticos sem qualquer limitao [3]. Os sistemas de navegao inerciais so normalmente dotados de, pelo menos, dois tipos de sensores, acelermetros e giroscpios. Os acelermetros, em particular, servem para medir a fora de acelerao a que determinado corpo est sujeito. Sendo muito utilizados, por exemplo na indstria automvel no sistema de controlo do airbag. Os giroscpios so sensores que permitem saber a orientao de um determinado corpo. Estes dois tipos de sensores tm vindo a ter uma grande relevncia no que diz respeito evoluo dos jogos de consolas. Nos dias que correm, jogar numa consola no significa necessariamente ter um comando cheio de botes nas mos. Foi possvel com este tipo de tecnologia reconhecer o movimento humano e repercuti-lo na imagem, dando um carcter diferente aos jogos e forma de jogar que era habitual at ao final dos anos 90. Este conceito alargou-se tambm aos dispositivos mveis, os smartphones e tabletes, que tm surgido com grade fora no mercado neste ltimos anos. Embora de um modo mais simplista, os jogos de telemvel tambm tm vindo a acompanhar este boom tecnolgico que continua em crescimento.

1.2 Objetivos
Este trabalho tem como objetivo a criao de sistemas IMU, AHRS e INS, utilizando sensores MEMS (Microelectromechanical systems) de baixo custo, sem recurso a fontes de informao externas aos sistemas. Tendo como objetivo inicial o desenvolvimento de um prottipo que permita a simulao de uma plataforma mvel. Estes sistemas tm em vista uma integrao futura em robots indoor de forma a auxiliar a determinao da localizao e orientao do mesmo em tempo real. Inerente aos objetivos enunciados vem o objetivo de avaliar e comparar as caractersticas de cada um dos sistemas, bem como analisar os resultados obtidos de forma a avaliar a fiabilidade de cada um. Como objetivo final, tem-se o desenvolvimento de um conjunto de bibliotecas que permita a integrao deste sistema de orientao inercial em diversas plataformas robticas, bem como permitir a utilizao de diferentes sensores no sistema inercial.

1.3 Organizao da dissertao


Este documento encontra-se dividido em sete partes, sendo uma delas este primeiro captulo onde feita uma introduo do mbito do trabalho e descritos os objetivos do mesmo. No segundo captulo consta o estudo do estado da arte, onde so citados alguns produtos comercializados e projetos de cdigo abertos no mesmo mbito que o deste trabalho. Encontra-se no terceiro captulo toda a informao terica e tecnolgica associada ao desenvolvimento deste trabalho, contendo as descries genricas dos trs tipos de sensores utilizados neste trabalho, bem como a diferenciao de algumas das diferentes tecnologias de cada um. Ainda neste captulo so clarificados os conceitos de IMU, AHRS e INS e explicitadas duas diferentes teorias, muito usadas em algoritmos de projetos atuais. No quarto captulo descrito o sistema de desenvolvimento utilizado para a realizao deste trabalho.

O quinto captulo inteiramente dedicado implementao, visando salientar todo o procedimento do trabalho, bem como enquadramento de alguns contratempos associados a ele. No sexto captulo so apresentados os resultados obtidos e respetiva discusso. No stimo e ltimo captulo apresentada a concluso deste trabalho e referidas algumas sugestes para implementao futura.

Captulo 2 Estado da Arte


Neste Captulo feita uma exposio do levantamento de informao realizado durante a fase inicial deste trabalho, constando neste ponto diferentes produtos que so possveis de encontrar no mercado com fins similares ao deste projeto, bem como projetos no mesmo mbito de cdigo aberto.

2.1 Produtos comercializados


Atualmente, no mercado, possvel encontrar uma vasta e alargada gama deste tipo de produtos. Os preos acompanham a variedade, variando sensivelmente desde centenas de euros at vrios milhares. Podem-se diferenciar trs grandes gamas de produtos disponveis: as de baixo custo, gama mdia e gama militar/aeronutica. As solues de baixo custo variam entre cem e quinhentos euros e baseiam-se em tecnologia MEMS, de reduzidas dimenses e resoluo relativamente baixa. Destinam-se aplicaes de pilotos automticos para aeromodelismo, robots com fins recreativos, ou rastreio do movimento corporal para fins de multimdia, treino e simulaes ou bioengenharia. Neste ramo destacam-se a VectorNav, LP-Research e a XSENS.

Na gama mdia, os preos variam amplamente desde mil a nove mil euros e destinam-se a aplicaes de teste em ambientes industriais, monitorizao de veculos, bem como embarcaes de recreio e robots para aplicaes onde existe algum fator de risco (vidas humanas, perdas materiais volutadas). Nesta gama, a tecnologia MEMS complementada com FOG. Os preos, na gama alta, atingem at varias dezenas de milhares de euros e a tecnologia utilizada varia tambm entre giroscpios de fibra tica, de lazer e MEMS de alta preciso. Destinam-se sobretudo ao ramo aeronutico e aplicaes militares, sendo alguns dos grandes nomes a KVH, a Chelton Avionics, a Crossbow, entre outras.

2.2 Projetos de cdigo aberto


Encontram-se disponveis, online, um grande leque de cdigos abertos que usam diferentes algoritmos com a finalidade de determinar o comportamento de determinado objeto. Neste subponto sero referenciados alguns exemplos, com vista a explicar sucintamente para que servem e quais as circunstncias de funcionamento. Como primeiro exemplo tem-se o XmegaPilot [4], que se trata de um conjunto de hardware e

software aberto direcionado a aplicaes de pilotos automticos para avies e quadcopters


telecomandados para amadores, investigadores, estudantes e entusiastas. O processador utilizado no XmegaPilot tem uma frequncia de relgio de 32MHz e possui uma avanada arquitetura e perifricos com DMA e sistema de eventos. Este oferece mais que o dobro do desempenho do processador padro do Arduino (ATmega1280) que permite apenas uma frequncia de 16MHz. O

XmegaPilot usa algoritmos de fuso sensorial de MARGs para estimar a orientao. Baseia-se na
implementao de Madgwick, usando quaternions (este mtodo encontra-se explicitado mais adiante no captulo 3) e nove DOFs de forma a obter maior preciso e eliminar o drift dos giroscpios. Outro exemplo o sf9domahrs [5], este usa como hardware a plataforma Razor 9DOF IMU AHRS e a sua implementao usa o DCM (Direction Cosine Matrix). Tem por base um sistema AHRS com a

correo do drift dos giroscpios a partir dos acelermetros e magnetmetros. O cdigo do sf9domahrs baseia-se no cdigo 6 DOF IMU ao qual fora adicionado a componente dos magnetmetros. O sf9domahrs, segundo os programadores envolvidos na implementao do referido cdigo, aparentemente apresenta bons resultados. Este possuiu uma taxa de transferncia de bits, referida pelos mesmos, de 57600 bits/s. Mais um bom exemplo o FreeIMU [6], trata-se de um projeto realizado desde raiz, contemplando toda a construo da placa onde se encontram os sensores, bem como a implementao do cdigo. O FreeIMU tem como finalidade determinar a orientao de um objeto com base em trs tipos de sensores, acelermetros, giroscpios e magnetmetros. A implementao do cdigo tem por base o mtodo de Sebastian Madgwick e usa a estimativa de MARG, sendo compatvel com o

Arduino. Este projeto teve vrias etapas no seu desenvolvimento, sendo constitudo na sua ltima
verso pelo MPU6050 (acelermetros e giroscpios) e pelo HMC5883L (magnetmetros). Para finalizar os exemplos neste mbito, temos em ltima instncia um conjunto de trs diferentes projetos, ArduPlane [7], ArduCopter [8] e ArduRover [9]. Ambos os projetos usam a placa de desenvolvimento ArduPilot Mega, sendo considerada das mais avanadas placas existentes no mercado que permite a integrao de projetos baseados em sistemas IMU de cdigo aberto para pilotagem automtica. Esta placa, ilustrada na Figura 3, permite a integrao de projetos de avies, barcos, carros, helicpteros e mult-icpteros, tendo na sua constituio trs acelermetros, trs giroscpios e trs magnetmetros [10].

Figura 3: Placa ArduPilot-Mega [10]

ArduPlane [7] um projeto que fornece um controlo para UAVs completo com trajetos
programveis, permite o reconhecimento de pontos em 3D e o envio de comandos durante o voo, possui tambm um poderoso software ao nvel do solo. O ArduPlane permite carregar dados seja no solo como em meio areo, analis-los, desenhar grficos, bem como exportar os dados para o Google Earth. Pode ainda ser feito o comando a partir do PC no sendo necessrio o tradicional comando por RC.

ArduCopter [8] um projeto direcionado a helicpteros e variantes como quadcopter. O ArduCopter, semelhana do ArduPlane fornece um controlo para UAVs completo com trajetos
programveis, bem como o controlo remoto ou automtico durante o voo, reconhecimento de pontos em 3D e um poderoso software ao nvel do solo. um projeto em tudo semelhante com o anterior, mas direcionado para helicpteros. O terceiro projeto, ArduRover [9], baseado no primeiro, ArduPlane, porm direcionado para o meio terrestre. Este projeto sem componente area permite percorrer uma lista de pontos prdefinidos, cuja definio pode ser realizada previamente ou mesmo durante a navegao atravs do modo manual. Quando terminada a definio dos pontos possvel repetir o percurso atravs do modo automtico.

Captulo 3 Fundamentos Tericos e Tecnolgicos


Neste subcaptulo feita uma breve descrio do funcionamento geral de cada sensor utilizado neste trabalho e um breve enquadramento histrico dos mesmos. feita tambm uma exposio de algumas das diferentes tecnologias existentes relativamente a cada um deles, sendo eles acelermetros, giroscpios e magnetmetros (bssolas eletrnicas). Sero tambm introduzidos alguns conceitos e realizadas comparaes relativas aos sistemas IMU, AHRS e INS. Finalmente, e no menos importante, feita uma abordagem dos diferentes mtodos usualmente utilizados em implementaes atuais de sistemas do mbito deste trabalho, o mtodo dos quaternions e o mtodo DCM.

3.1 Acelermetros
Um acelermetro um sensor que permite medir a fora de acelerao de um corpo. Estas foras podem ser estticas ou dinmicas. Entenda-se por estticas foras com uma intensidade constante, tal como a fora da gravidade e por dinmicas qualquer fora que varie de intensidade no tempo, provocando movimento ou vibrao de um corpo [11]. Neste sentido, estes dispositivos permitem medir a acelerao, vibrao, inclinao e o impacto de um choque [12].

10

Existem vrios tipos de acelermetros e por isso, diferentes aplicaes e limitaes. No que diz respeito ao conceito base de funcionamento dos acelermetros na sua generalidade, estes regemse essencialmente pela segunda Lei de Newton, F=m*a. Significa que a fora a que um corpo est sujeito igual ao produto da sua massa pela acelerao. Sendo este o princpio de funcionamento de um acelermetro, o dispositivo ter na sua constituio uma massa de teste (tambm designada por massa ssmica) e esta mover-se- aquando de uma acelerao [13]. Entenda-se que um acelermetro simplesmente um transdutor que transforma um tipo de energia num outro tipo, ou seja, converte a acelerao mecnica num sinal eltrico [13] [14]. Sucintamente, no que diz respeito leitura da medio propriamente dita, esta pode ter por base diferentes tecnologias. Por exemplo, os primeiros acelermetros mecnicos conhecidos usavam uma caneta acoplada a um pndulo, traduzindo diretamente a acelerao sentida pelo pndulo num grfico registado num papel que se movia por baixo da caneta [15]. Por outro lado os acelermetros modernos, baseados em tecnologia MEMS traduzem a acelerao sentida numa massa de silcio microscpica numa variao de tenso na ordem dos milivolts [12]. Mais frente, neste mesmo subcaptulo sero explicitadas vrias tecnologias com algum pormenor. Como j fora referido, os acelermetros podem ser usados para medir aceleraes, vibraes, inclinaes ou impactos a que um corpo esteja sujeito. Esta diversidade de situaes faz com que seja possvel a sua aplicao nas mais diversas reas e com diferentes intuitos. So, por exemplo, usados na indstria automvel no sistema de controlo do airbag, neste caso particular, o objetivo medir o impacto de um choque e acionar o sistema de airbag. Esto tambm presentes, por exemplo, nas turbinas dos avies com o objetivo de medir a vibrao a que as mesmas esto sujeitas para fins de segurana. Estes dispositivos so cada vez mais utilizados para a monotorizao do movimento humano, por exemplo em jogos de consolas. Para finalizar os exemplos, salienta-se o facto de serem utilizados tambm para o controlo de aviao durante o modo de navegao de piloto automtico [12].

11

3.1.1 Dados histricos dos acelermetros


O primeiro acelermetro comercializado de que h registo fora desenvolvido por Burton McCollum e Orville Peters. Este usa uma configurao de meia-ponte wheatstone e constitudo por uma seco em forma de E, possuindo na sua constituio discos de carbono. O seu funcionamento tem por base a compresso do topo da seco em E aquando de uma acelerao, causando consequentemente tenso na sua parte inferior. Em 1923 fora escrito um documento explicativo do seu funcionamento, desempenho e aplicaes. Este acelermetro fora usado na Alemanha e comercializado nos Estados Unidos da Amrica no ano de 1927 por Southwark, posteriormente por Baldwin-Southwark e mais recentemente pela BLH Electronics. A sua frequncia de ressonncia era entre 250Hz e 2kHz [16]. Em 1942 V. Bruel e Viggo Kjaer formaram a Bruel and Kjaer. Em 1943 a empresa vendeu o primeiro modelo de acelermetro piezoeltrico, o modelo 4301. A Figura 4 mostra ao que possivelmente se pareceria este acelermetro [16].

Figura 4: Acelermetro McCollum-Peters [16]

12

O material piezoeltrico utilizado foi o sal de La Rochelle (Tartarato de sdio e potssio). Porm este material no era o indicado para funcionar como transdutor. Algumas das suas limitaes eram o reduzido espectro trmico de funcionamento, apenas entre aproximadamente 49C a 54C e o facto de a humidade afetar o seu desempenho [16]. Sensivelmente na mesma poca, Walter Kistler iniciou o desenvolvimento de um transdutor de presso de quartzo, o qual viria a concluir 7 anos depois, valendo-lhe uma patente na Sua pelo amplificador de carga desenvolvido [16]. Um forte incentivo ao desenvolvimento da tecnologia de acelermetros foi a segunda guerra mundial, tendo sido sugerido em 1949 a uma empresa de fabrico de condensadores o desenvolvimento de um acelermetro leve capaz de testar a vibrao de aeronaves e misseis [16]. Em 1951 a empresa Endevco, fabricou o seu primeiro acelermetro piezoeltrico, utilizando tambm como material piezoeltrico o titanato de brio [16]. Durante os anos 60 Kistler desenvolveu um tipo de transdutores de fora de quartzo, servindo esse modelo ainda hoje como referncia para a maioria dos martelos para testes modais de impacto [16]. Uma outra empresa, a Wilcoxon Research Incorporated lanou em 1960 a cabea de impedncia mecnica automtica. Esta inveno fora patenteada em 1959 e era composta por um gerador de vibrao controlvel, um acelermetro piezoeltrico e transdutor de fora. Embora os testes de impedncia mecnica tenham tido o seu pico nos anos 60 e 70, estes testes de vibrao por fora controlada so realizados ainda nos dias de hoje [16]. Na dcada de 70 os modelos dos transdutores continuaram a evoluir, tornando-se mais sofisticados. As empresas da poca comearam a focar-se na miniaturizao dos acelermetros. Neste mesmo perodo o titanato zirconato de chumbo (PZT) ganhou estatuto de material de transduo standard [16].

13

3.1.2 Acelermetros Piezoeltricos


Os acelermetros piezoeltricos constam entre os primeiros tipos de acelermetros a surgir no mercado e proliferaram at aos dias de hoje. Assentam na mesma base de funcionamento de todos os acelermetros, contm uma massa de teste em contacto com um material piezoeltrico, baseando-se nas propriedades destes materiais para medir a acelerao da massa. Neste caso, a massa de teste encontra-se em contacto com material piezoeltrico e aquando de uma acelerao, exerce presso sobre o mesmo, carregando-o eletricamente. Este fenmeno, designado por efeito piezoeltrico, permite obter uma tenso de sada proporcional acelerao da massa. Para uma melhor perceo a Figura 5 ilustra a constituio deste tipo de acelermetros [17].

Figura 5: Composio de um acelermetro piezoeltrico [18]. Os materiais piezoeltricos podem recair sobre dois tipos, os cristais simples como o quartzo ou materiais cermicos como o titanato de brio, que fora o material utilizado nos primeiros acelermetros piezoeltricos. Os cristais tm maior longevidade, mas menor sensibilidade que os cermicos. Estes ltimos tm tambm um menor custo associado sua produo [16]. Na sua generalidade, os acelermetros piezoeltricos so utilizados para medir vibrao e impacto, no se adequando a aplicaes com fim de medir a acelerao gravtica. Atendendo a esta
14

caracterstica limitativa deste tipo de acelermetros, a sua gama de aplicaes recai, por exemplo, sobre a rea da construo civil no que diz respeito a pontes, grandes torres, centros comerciais entre outros, e tambm sobre motores, turbinas e toda a maquinaria industrial que necessite de controlo de vibrao [17].

3.1.3 Acelermetros Capacitivos


A tecnologia dos acelermetros capacitivos , mais uma vez, uma tcnica de converso de energia mecnica num sinal eltrico, neste caso particular a converso realizada por meio de um condensador diferencial. Este tipo de tecnologia est presente em diferentes acelermetros, e nesse sentido esta elucidao uma simplificao generalizada. A Figura 6 ilustra a constituio deste tipo de dispositivos [13].

Figura 6: Esquema de um acelermetro capacitivo [13]. Quando sujeito a uma fora de acelerao, a massa de teste que se encontra acoplada a uma mola movimenta-se, fazendo variar a distncia entre as placas do condensador e consequentemente provocando uma variao de capacidade do mesmo. atravs deste fenmeno que a medio da acelerao realizada, pois a linearidade deste sistema permite determinar a acelerao a que um corpo est sujeito com base na variao da capacidade do condensador. Ou

15

seja, se um determinado corpo sofrer uma acelerao constante, a capacidade do condensador permanecer tambm constante. Este tipo de acelermetro tem um melhor desempenho em baixa frequncia, podendo operar em modo servo de forma a atingir uma maior estabilidade e linearidade [13].

3.1.4 Acelermetros Capacitivos de Superfcie Micromaquinada


Tal como o nome indica, os acelermetros Capacitivos de Superfcie Micromaquinada tm por base de funcionamento a metodologia de funcionamento de um acelermetro capacitivo. Este tipo de acelermetros surgiu com a necessidade de criar um dispositivo de menores dimenses, posto isto, recorreu-se microeletrnica e foi ento possvel criar acelermetros com tecnologia MEMS [19] [20] [11]. Estes so constitudos por uma superfcie micromaquinada de polissilcio no topo, designada por massa de teste, sendo esta suportada por molas, tambm elas do mesmo material. As molas assentam numa base de silcio, sendo elas as responsveis por oferecer resistncia fora de acelerao. A deflexo da estrutura, ou seja a extenso ou compresso das molas de polissilcio, medida atravs de um condensador diferencial. O condensador diferencial consiste em placas fixas estrutura, independentes da massa em movimento e placas ligadas massa em movimento. A variao da distncia entre as placas faz variar a capacidade do condensador resultando desta forma um valor de sada [11] [19] [20]. A estrutura da superfcie micromaquinada construda atravs da adio de materiais, camada por camada, na superfcie do substrato. As finas camadas tm normalmente 15 micrmetros de espessura e so genericamente de dois tipos, as designadas por camadas estruturais e as camadas sacrificiais, estas ltimas so eliminadas durante o processo de fabrico. A Figura 7 ilustra o processo tpico de obteno de uma estrutura em ponte [11] [19] [20].

16

Figura 7: Processo de fabrico de uma estrutura em ponte [11].

3.2 Giroscpios
Os giroscpios na sua essncia so sensores que permitem determinar a orientao de um corpo baseando-se no princpio do momento angular. Neste sentido, estes dispositivos so capazes de detetar e medir o momento angular a que um determinado corpo est sujeito relativamente a um sistema de eixos de referncia. Um giroscpio capaz de determinar o movimento exato de um corpo e a sua orientao sem recurso a uma fonte de informao externa ao sistema. Estes dispositivos so utilizados em diversas reas, podendo ser combinados com acelermetros de forma a criar um sistema de navegao inercial [21]. Os giroscpios so utilizados na rea militar, industrial, mdica e mesmo a nvel do consumidor. Nos dias que correm os smatphones e tabletes esto muitas vezes dotados de giroscpios, bem como comandos de consolas de jogos. Este tipo de dispositivos esto cada vez mais presentes no dia-a-dia das pessoas e com uma tendncia positiva de crescimento. No que diz respeito rea militar, que prima pela preciso, so

17

utilizados os giroscpios ticos, porm com o avano da tecnologia MEMS, o desempenho destes ltimos no fica muito aqum do desempenho dos ticos [22].

3.2.1 Dados histricos dos Giroscpios


Foi no incio de 1700 que se iniciou o recurso a sistemas de orientao para fins de navegao martima em condies nublosas. O giroscpio mais tradicional foi inventado nos anos de 1800 pelo cientista francs Jean Bernard Leon Foucault, sendo o prprio a apelidar o seu invento pelo nome de giroscpio no ano de 1852. A Figura 8 mostra ao que se pareceria o invento de Foucault [23].

Figura 8: Giroscpio de Foucault [24]. No final dos anos 1800 e incio dos anos 1900 os giroscpios foram patenteados para uso a bordo de navios. Sensivelmente em 1916 iniciou-se a aplicao destes dispositivos em aeronaves, tendo sido feitos melhorias ao longo do sculo vinte, continuando a ser, ainda hoje, aplicados nessa rea. Nos anos 60 os giroscpios a laser foram introduzidos pela primeira vez no mercado, tendo vindo a fazer sucesso na rea aeronutica e na rea militar. Mais recentemente surgiram os giroscpios de tecnologia MEMS, que trouxeram consigo um grande avano, as suas dimenses, muito inferiores s dos giroscpios tradicionais, fizeram a grande diferena nas aplicaes deste tipo de dispositivos

18

[23]. Os giroscpios de tecnologia MEMS proliferaram no mercado no s graas s suas dimenses, mas tambm ao facto de terem um baixo consumo energtico, baixo custo e um desempenho promissor [22].

3.2.2 Giroscpios Mecnicos


Os giroscpios mecnicos foram o primeiro tipo de giroscpios a surgir, sendo caraterizados por duas propriedades fundamentais, inrcia giroscpica e a precesso. No que diz respeito inrcia giroscpica, entenda-se que a rigidez do espao fsico do giroscpio consequncia da primeira lei de Newton, resumidamente, o estado em que o corpo se encontra manter-se- enquanto no seja sujeito a foras externas. Ou seja, um corpo em repouso permanecer em repouso e um corpo em movimento uniforme tende a continuar em movimento no mesmo plano e sobre o mesmo eixo no espao. Um exemplo da inercia giroscpica o disparo de uma bala de espingarda, que rodando sobre si mesma, a bala tende a manter um voo em linha reta, o que no se verificaria se esta no rodasse sobre si mesma durante o voo. Quanto precesso, entenda-se que quando um corpo se encontra em movimento e experimenta uma fora externa tender a alterar a direo do eixo de rotao, mais precisamente numa direo que resultar em um ngulo reto relativamente ao vetor representante da fora aplicada e o prprio eixo de rotao. Os trs eixos dos giroscpios so designados por eixo de rotao, entrada e sada. O eixo de rotao onde o rotor se encontra a girar. O eixo de entrada perpendicular ao eixo de rotao, sendo o eixo em torno do qual a rotao provoca uma sada mxima. O eixo de sada em torno do qual o conjunto anteriormente mencionado gira. A Figura 9 ilustra o que se acaba de referir.

19

Figura 9: Representao dos eixos de um giroscpio, A [25] e B [26].

3.2.3 Giroscpios ticos (I-FOG)


Em 1913 G. Sagnac fez a primeira demonstrao da deteo da rotao inercial por meio de interfermetro tico. Os giroscpios ticos so uma miniatura dos dispositivos ticos de estado slido com o fim de medir com preciso a rotao mecnica segundo o princpio de Sagnac. De acordo com o efeito Sagnac, so emitidos dois feixes de luz idnticos em direes opostas em torno de um circuito fechado, sendo que, a variao do tempo de propagao dos feixes de luz proporcional taxa de rotao sobre o eixo normal que caracteriza o circuito tico fechado. De outra forma, se o sistema estiver em repouso os feixes de luz iro partir simultaneamente de um mesmo ponto e iro regressar ao ponto de origem precisamente ao mesmo tempo, ou seja em fase. Por outro lado, se houver um movimento de rotao num determinado sentido, o feixe de luz emitido nesse mesmo sentido demorar mais tempo a atingir a origem do que o tempo que demoraria em repouso. Por sua vez, o feixe de luz com direo oposta ir demorar menos tempo do que a que demoraria com o sistema em repouso. Esta diferena de tempo traduzida pelo desfasamento dos feixes de luz pode ser medida atravs de um interfermetro. A Figura 10 ilustra o desfasamento dos feixes de luz aquando de uma rotao no sentido horrio [27].

20

Figura 10: Giroscpio tico- Desfasamento dos feixes de luz [27]. As vantagens dos giroscpios de fibra tica em relao aos giroscpios mecnicos so o facto de estes estarem isentos de partes mveis, a rpida inicializao, serem mais leves, terem baixo consumo e no serem afetados pela fora gravtica. Os giroscpios interferomtricos de fibra tica foram desenvolvidos nos ltimos 80 anos, sendo considerados nos dias que correm o tipo de giroscpio tico mais popular e usado numa vasta variedade de aplicaes. So utilizados, por exemplo, em aeronaves, perfuradores de petrleo, sistemas de navegao inercial, estabilizadores de antena, sistema de navegao para automveis e robots [27] [28].

3.2.4 Giroscpios MEMS


Os sensores inerciais micromaquinados consistem em acelermetros e giroscpios, sendo estes os sensores mais importantes baseados em silcio. No caso particular dos giroscpios, estes usam na maior parte das vezes uma massa de teste para medir a rotao. Todos os giroscpios deste tipo baseiam-se na transferncia de energia entre dois mdulos vibratrios de uma estrutura, causada
21

pela acelerao de Coriolis. A acelerao de Coriolis uma acelerao aparente que surge em relao a um referencial de rotao, sendo esta acelerao proporcional taxa de rotao. A Figura 11 ilustra o conceito da acelerao de Coriolis [29].

Figura 11: Efeito de acelerao de Coriolis [29]. Os giroscpios vibratrios foram demonstrados pela primeira vez no incio dos anos 80, contudo o primeiro lote de giroscpios micromaquinados de silcio foi produzido em 1991. No caso particular dos tuning fork gyroscopes estes contm duas massas que oscilam com igual amplitude, mas em direes opostas. Aquando de uma rotao, a fora de Coriolis cria uma vibrao ortogonal que pode ser sentida atravs de vrios mecanismos. Por exemplo, usar uma estrutura do tipo pente e leva-la ao estado de ressonncia, de modo a que qualquer rotao sobre qualquer eixo resulte numa elevao da massa, estas alteraes podem ser detetadas atravs de eltrodos capacitivos colocados por debaixo dessa mesma massa. A Figura 12 ilustra a tecnologia utilizada por este tipo de giroscpios [29].

22

Figura 12: Estrutura de tipo pente [29].

3.3 Magnetmetros
Um magnetmetro um instrumento de medida que serve para medir a intensidade e direo de campos magnticos, incluindo tanto os campos prximos da terra como os do espao. Os magnetmetros tm uma utilizao generalizada no que diz respeito a sistemas de referncia de atitude e rumo (AHRS), sendo exemplos destes casos as aplicaes em aeronaves, satlites, navios e submarinos operados remotamente. So tambm vulgarmente usados em GPS, quer em mo como aplicados em veculos, recebendo estimativas de qual ser a sua posio. Os magnetmetros tambm tm vindo a encontrar espao no mundo dos telemveis, sendo muitas vezes combinados com o GPS e tambm com acelermetros e giroscpios com vista ao aumento da preciso [30]. Para determinar com preciso a posio do sistema, o campo magntico dever ter um baixo nvel de distoro. Enquanto no mar, no espao ou no ar existem relativamente poucas fontes de distoro, no caso do solo terrestre existe um grande leque de potenciais fontes de interferncia. So exemplos dessas fontes de distoro, a maioria das estruturas artificiais, veculos, cabos eltricos, depsitos naturais de minrio de ferro, entre outros. O conhecimento da magnitude destas distores necessrio para determinar se possvel usar o magnetmetro como referncia [30].

23

3.3.1 Dados Histricos dos Magnetmetros


O primeiro dispositivo que surgiu com o mesmo fim que os magnetmetros, fora a bssola magntica, tendo sido durante sculos o modelo utilizado pelos navegadores martimos para fins de orientao de navegao. Ainda hoje se baseia nos mesmos princpios, porm com avanos no que diz respeito sua preciso, conceo e construo. A bssola magntica um dispositivo atravs do qual possvel determinar de forma simples e econmica a direo em funo dos polos magnticos da Terra. Este dispositivo consiste simplesmente numa agulha magnetizada apoiada num piv de baixa frico, permitindo que a agulha gire livremente quando interage com um campo magntico externo. A Figura 13 apresenta uma bssola magntica [31].

Figura 13: Bssola magntica [32]. Graas evoluo nesta matria, foram criadas verses eletrnicas de bssolas, sendo os magnetmetros os sensores mais utilizados neste mbito. Diferentes magnetmetros operam segundo diferentes princpios, sendo alguns desses exemplos os sensores de efeito de Hall, os magneto-resistivos, os magneto-indutivos e os de Fluxgate [33].

3.3.2 Magnetmetros de Fluxgate


Fluxgate essencialmente um transformador com ncleo feito de uma liga, por exemplo nquel e
ferro, cujos domnios magnticos so facilmente alinhados. Se a corrente no enrolamento primrio variar, ento a corrente no enrolamento secundrio ir variar em funo do campo magntico. O princpio bsico para a medio do campo comparar a intensidade de corrente que necessria

24

no enrolamento primrio de forma a saturar o ncleo num determinado sentido, sentido esse oposto ao do campo magntico terrestre. A diferena resulta do campo magntico, no sendo necessria a saturao total, pois qualquer no-linearidade suficiente [33]. O ncleo pode ser uma haste ou um toride. Se for uma haste, as bobines do primrio e do secundrio estaro lado a lado ou uma em cima da outra, sendo que o fluxgate responder em funo da componente do campo magntico terrestre ao longo da haste. Por outro lado ao usar-se um ncleo toroidal pode medir-se duas componentes do campo magntico terrestre, atravs de dois enrolamentos exteriores ao ncleo com um ngulo de 90 entre eles. A construo de uma bssola requer dois eixos, medindo o campo magntico terrestre sentido por cada um deles [33]. Como ilustra a Figura 14 possvel determinar o ngulo entre um desses eixos e o norte magntico. Usando os dados da Figura 14 pode dizer-se que o ngulo entre o eixo do X e o norte magntico calculado atravs do arco-tangente da diviso do valor de X pelo valor de Y, correspondendo cada um destes valores intensidade do campo magntico terrestre sentido ao longo dos referidos eixos [33].

Figura 14: Relao entre os eixos de um magnetmetro e o norte magntico [33]. Claramente que o fluxgate ter de ser horizontal, sendo que qualquer inclinao do mesmo causar um erro de preciso. No sentido de se eliminar este erro pode recorrer-se a um sistema de

25

compensao. Pode tambm construir-se bssolas insensveis inclinao usando um fluxgate de trs eixos e acoplando um sensor de inclinao [33].

3.3.3 Magnetmetros de Sensor de Efeito de Hall


Em 1879 Edwin Hall descobriu que se fizesse atravessar longitudinalmente uma corrente atravs de um fino condutor na presena de um campo magntico, surgiria uma tenso ao longo da largura do condutor [33]. Esta descoberta permitiu a construo de circuitos integrados de efeito de Hall com transstores para a amplificao do valor de tenso. Quando um comutador de efeito de Hall exposto a uma corrente polarizada superior ao valor de threshold, o transstor comuta para o estado on, caso o valor da corrente seja demasiado baixo este comuta para o estado off. Com isto, possvel construir uma bssola eletrnica simples que indique o quo perto ou longe esto os ponto cardeais e intercardeais atravs de quatro comutadores de efeito de Hall distribudos de forma circular em volta de uma agulha magnetizada que gira livremente. Quando a agulha se alinha com um dos interruptores, esse ficar a on, fazendo fluir a corrente e podendo fazer-se sinalizar atravs de um led. No caso de a agulha ficar entre dois interruptores, ambos os interruptores ficaro a on, podendo iluminar um led que sinalize um ponto intercardinal [33]. Bssolas de maior preciso necessitam um sensor de efeito de Hall, podendo avaliar a direo e alteraes da mesma atravs do valor de tenso de sada do sensor. Na ausncia de campo magntico o valor de tenso de sada , idealmente, metade do valor de tenso de operao, com o aumento do campo magntico do polo sul este valor de tenso ir aumentar, e diminuir com a intensificao do campo magntico do polo norte. Neste sentido, colocando dois sensores ortogonalmente possvel determinar com um baixo erro de preciso a direo da agulha magnetizada [33].

3.3.4 Magnetmetros de Sensor Magneto-indutivo


Os magnetmetros magneto-indutivos medem o campo magntico atravs da indutncia de uma bobina ou solenoide. A bobina utilizada como elemento indutivo num oscilador de relaxamento
26

indutor ou resistivo. Com as alteraes do campo magntico a induo da bobine sofre tambm alteraes, alterando a frequncia dos osciladores. A alterao de frequncia pode ser medida e interpretada em termos da componente da fora do campo magntico paralelo ao eixo da bobina. Este tipo de sensor relativamente recente, tendo sido patenteado pela primeira vez em 1989. Tal como nos outros sensores necessrio colocar dois sensores ortogonalmente para determinar o campo magntico horizontal, norte magntico. Esta configurao de dois eixos apenas permite medir o campo magntico horizontal, podendo recorrer-se a um inclinmetro para obter uma configurao de trs eixos [33].

3.3.5 Magnetmetros de Sensor Magneto-resistivo


Os sensores magneto-resistivos anisotrpicos so especialmente resistivos, sendo constitudos por uma fina pelcula de material ferromagntico, por exemplo de metal e nquel, colocada numa base de silcio. Sendo sujeitos, durante a sua produo, a um intenso campo magntico de forma a magnetizar o metal segundo o vetor de magnetizao estabelecido. Subsequentemente aplicado um campo magntico perpendicular ao metal causando uma rotao do vetor de magnetizao e consequente alterao do ngulo, Figura 15 [30].

Figura 15: Vetor do campo magntico de um sensor magneto-resistivo [30].

27

Este processo causa uma alterao da resistncia da pelcula, que pode ser detetada atravs da variao da tenso e da interferncia a fora do campo magntico aplicado. Esta deteo pode ser feita por meio de um circuito eltrico, como por exemplo, uma ponte Wheastone. Os sensores magneto-resistivos foram descritos pela primeira vez em 1856 e podem apresentar um, dois ou trs eixos. Estes sensores de dimenso reduzida tm um baixo erro de preciso e so utilizados em alguns sistemas de GPS [30] [33].

3.4 Sistemas de navegao


Neste subcaptulo sero explicitados alguns sistemas de navegao, os IMUs e MARGs, os AHRSs e os INSs. Sendo brevemente mencionadas as caractersticas e limitaes de cada um deles, bem como os custos associados e aplicaes. A apresentao respeita a cronologia associada s potencialidades de cada um, abordando os sistemas INS, sistemas inerciais de navegao, no ltimo ponto, pois contemplam o formato mais completo e com maior potencial. Em ltima instncia apresentada uma imagem elucidativa onde apresentado um esquemtico representativo de um sistema INS, constando tambm a indicao da obteno de cada uma das pequenas partes (IMU e AHRS).

3.4.1 IMU - Inertial measurement Unit e MARG - Magnetic, Angular Rate

and Gravity
Um IMU um sistema de medio inercial, composto por dois tipos de sensores, acelermetros e giroscpios, suportando um mximo de trs de cada um destes sensores, um por cada eixo. A cada sensor -lhe correspondido um DOF, sendo no caso particular de um IMU um mximo de seis DOFs [3] [34]. Um sistema IMU tem como funcionalidade a recolha de dados em tempo real a partir dos referidos sensores cuja aquisio feita a partir dos mesmos, podendo ou no serem convertidos para as unidades de acelerao e velocidade angular por um microprocessador. Desta forma, atravs de

28

acelermetros possvel obter a acelerao linear e a partir de giroscpios a acelerao angular sem recurso a fontes de informao externa ao sistema [3] [34]. Adicionando um magnetmetro a um sistema IMU, este passa a ser denominado por MARG, auferindo da capacidade de medir campos magnticos, nomeadamente o campo magntico terrestre e podendo ter at nove DOFs. A este tipo de sistemas no lhes conferido qualquer tratamento de dados no que diz respeito obteno de velocidade, distncia ou ngulos. De forma a diminuir o erro associado construo dos sistemas, pode ser realizada uma calibrao dos sensores [3] [34].

3.4.2 AHRS - Atittude Heading Reference System


Um AHRS um sistema idntico a um IMU, com a vantagem de este ter incorporado ao sistema o tratamento de dados com clculo dos valores dos ngulos de Euler. Ou seja, um sistema AHRS no s permite obter as leituras dos sensores como tambm os valores de atitude e rumo atravs do processamento dos dados por algoritmos sofisticados. Os Mini-AHRS so caracterizados pelas suas dimenses largamente reduzidas, pela sua alta preciso no processo de medio atravs de sensores baseados na tecnologia MEMS e por algoritmos altamente sofisticados [35] [36]. O custo deste tipo de sistemas tem vindo a ser largamente reduzido com a integrao de componentes de tecnologia MEMS, os quais tm vindo a ser produzidos em massa. Este tipo de sistema usado em vrias reas, como robots, sistemas de automao e controlo, jogos, brinquedos telecomandados como avies e helicpteros, entre outros [35] [36].

3.4.3 INS - Inertial Navigation System


Um sistema INS um sistema de navegao inercial dotado de todas as potencialidades de um sistema AHRS com a vantagem de poder determinar no s a orientao de um corpo bem como a posio do mesmo e a sua velocidade. Ou seja com um sistema INS possvel determinar o deslocamento que determinado corpo sofreu, permitindo acompanhar o percurso do mesmo em

29

tempo real e a sua orientao. Esta diferena assenta essencialmente no processamento de algoritmos capazes de determinar a posio e velocidade de um corpo [3]. Recorre-se frequentemente fuso de sistemas INS a sistemas de GPS, pois a fiabilidade de um ISN no que diz respeito ao clculo da posio ao longo do tempo relativamente baixa, sendo ento necessrio realimentar o sistema com uma localizao obtida a partir de uma fonte externa a uma certa frequncia capaz de impedir que o erro acumulado exceda os limites tolerados. Por outro lado quando se trata de um curto perodo de tempo, mais precisamente alguns segundos, os sistemas INS tm maior preciso do que os sistemas de GPS. Na Figura 16 encontra-se um esquemtico representativo de um sistema INS. [3] [37].

Figura 16: Esquemtico de um sistema INS.

3.5 Algoritmos
A maior parte dos algoritmos utilizados nas implementaes atuais usam, ou tem por base, os algoritmos de Sebastian Madgwick e de Mahoney. Estes por sua vez, usam diferentes

30

implementaes e diferentes teorias para a obteno dos ngulos de Euler, Madgwick usa na sua implementao quaternions e Mahoney usa DCM. Admitindo que a implementao de Mahoney mais elegante, Madgwick passara a adotar a implementao de Mahoney, contudo mantendo a utilizao dos quaternions. Embora tenha adotado a implementao de Mahoney, Madgwick ressalva o facto de que a sua prpria implementao no nem melhor nem pior que a de Mahoney, caracterizando-as como equivalentes. Neste subponto sero explicitados os mtodos utilizados por cada um deles de forma a clarificar as teorias.

3.5.1 Quaternions
Quaternion um nmero complexo de quatro dimenses que pode ser usado para representar a
orientao de um corpo rgido ou um sistema coordenado tridimensional no espao [3]. Com base na Figura 17, digamos que uma rotao arbitrria do sistema de eixos B em relao ao sistema de eixos A pode ser determinada pela rotao de ngulo sobre o vetor , , e , , , que caracteriza o sistema

de eixos coordenados A. Na Figura 17 esta tambm representado graficamente os vetores unitrios , que representam os sistemas de eixos coordenados A e B respetivamente , definido pela seguinte equao: [3]. O quaternion que descreve esta orientao,

Equao 1:Instanciao do quaternion (BA) , onde , e so as componentes do vetor unitrio . Por outro lado, , o conjugado de

, que representa a orientao do sistema coordenado A em relativamente ao B e definido pela seguinte equao: Equao 2:Instanciao do quaternion (AB) .

31

Figura 17: Representao espacial de um quaternion [3]. Os quaternions no tm a propriedade comutativa, admitindo que temos que matriz de rotao . A orientao descrita pelo quaternion definida abaixo [3]. Equao 3:Matriz de Rotao (BA) e so quaternions, ento

pode ser representada pela

O quaternion pode ento ser obtido atravs da resoluo de um sistema de equaes a partir da matriz de rotao descrita acima. Para matrizes de rotao imprecisas ou no ortogonais no possvel obter o quaternion a partir deste mtodo, existindo outros (ex., Bar-Itzhack) que no sero aqui explicitados [3]. Os ngulos de Euler descrevem a orientao dos eixos coordenados B por meio de rotaes sequenciais a partir dos eixos coordenados A, sendo que o ngulo em torno do eixo ngulo em torno de e o ngulo em torno de ,o . O clculo dos ngulos de Euler realizado a

partir das equaes abaixo, cujos clculos intermedios no so aqui apresentados [3].

32

Equao 4:ngulos de Euler a partir de quaternions

3.5.2 DCM
DCM trata-se de uma matriz transformada, composta pelo valor do cosseno do ngulo resultante entre os sistemas de eixos coordenados A e B. semelhana do exemplo anterior consideremos o sistema de eixos A o sistema de eixos inicial e o sistema de eixos B o resultante da transformao. Considerem-se os seguintes vetores unitrios, designa-se por , , e , , que definem o sistema de eixos coordenados A e B respetivamente. A matriz que traduz a transformao do sistema A em B , definida na equao abaixo descrita [38]. Equao 5:Matriz de Transformao (BA)

A DCM

uma matriz ortonormal, pois consideramos apenas sistemas de eixos ortogonais,

deste modo a matriz transposta desta igual sua matriz inversa, bem como os determinantes sero iguais [38]. Equao 6:Propriedades de matrizes ortonormais

33

A transformao do sistema de coordenadas por uma rotao de ngulo descrita abaixo pelas matrizes elementares de transformao para cada um dos eixos [38]. Equao 7:Matrizes Elementares de Transformao

A multiplicao de matrizes no tem a propriedade comutativa, considerando uma sequncia de rotaes e respetivas matrizes, o produto das mesmas tem de ser realizado da direita para a esquerda, respeitando a ordem das operaes [38]. De forma a clarificar este mtodo e explicar a obteno dos ngulos de Euler, considere-se o seguinte exemplo, um conjunto de trs rotaes a primeira sobre o eixo do segunda sobre o eixo do de ngulo e a terceira sobre o eixo do de ngulo , a de ngulo . Esta sequncia

de rotaes pode ser explicitada da seguinte forma: Equao 8:Instanciao de sequncia de rotaes

Atendendo ao que fora referido em relao s propriedades das matrizes, a primeira operao ser a multiplicao de , cuja matriz resultante ser multiplicada por respeitando a ordem. O conjunto destas operaes resulta na matriz apresentada abaixo [38].

34

Equao 9:Matriz de Rotao Final

Por fim apresentam-se as equaes referentes obteno dos respetivos ngulos [38]. Equao 10:ngulos de Euler a partir de DCM

35

Captulo 4 Descrio do sistema de desenvolvimento


Neste captulo constam algumas das diferentes fases do desenvolvimento do trabalho, dando maior ateno aos contornos relativos ao hardware. Inicialmente feita uma introduo ferramenta

MBED utilizada neste trabalho, passando a explicar o porqu da sua utilizao, bem como em que
consiste. Segue-se uma pequena descrio da primeira placa sensorial usada neste trabalho, sendo explicado o porqu de ter sido a escolhida e enumeradas algumas das suas vantagens e desvantagens. Depois de completa a descrio do hardware, passa-se a uma sucinta explicao da

Framework QT usada para a criao de um interface grfico e gesto de dados, que ser abordada
com maior pormenor no captulo seguinte. Seguidamente feita uma exposio do problema do

drift dos giroscpios, do qual se tomou conhecimento com o avanar do trabalho e que
comprometeu o uso da primeira placa sensorial. Passando ento a descrever a segunda placa sensorial entretanto adquirida, bem como o porqu da escolha e quais as suas vantagens em relao anterior.

4.1 MBED
Para a realizao deste trabalho utilizou-se a placa mbed LPC1768. A utilizao deste hardware deve-se a esta ser uma plataforma de desenvolvimento em utilizao pelo GAR, Gabinete de Automao e Robtica da Universidade do Minho. Uma vez que esta plataforma oferece um

36

desempenho bastante justo para este tipo de aplicaes, fora ento tomada a deciso de utiliz-la neste trabalho.

MBED uma ferramenta para prototipagem rpida constituda pela placa mbed LPC1768,
ilustrada na Figura 18, com um microcontrolador, um IDE on-line e um vasto nmero de bibliotecas. O microcontrolador utilizado na placa um ARM Cortex-M3 da NXP, com uma frequncia de relgio de 96MHz, memria FLASH de 512KB e memria RAM de 32KB. Nesta placa encontram-se tambm os seguintes perifricos, pinos de entrada e sada analgica, sada de PWM, I2C, SPI, CAN, USB hoste e device e Ethernet [39].

Figura 18: [39]. A placa programvel por USB, sendo compatvel com os sistemas operativos Windows, Mac OS X e Linux sem necessitar de drivers. O programa pode ser facilmente gerado no compilador on-line do

mbed ou usando outros compiladores como o KeiluVision, Code Red ou GCC. Possui tambm
suporte para porta srie virtual via interface por USB, permitindo a comunicao com um terminal, Labview, Matlab, entre muitos outros que possam comunicar por porta srie [39]. O uso de um compilador on-line tem vantagens e desvantagens. A vantagem que pode aceder-se ao compilador atravs de qualquer computador que disponha de internet, no sendo necessrio instal-lo. Como desvantagem tem-se que na ausncia de internet, no possvel trabalhar, bem como que a qualidade de ligao rede acaba por tornar todo o processo moroso. Atendendo a estes aspetos, inicialmente fora utilizado o compilador on-line, porm com o avanar do trabalho e com o sucessivo aumento de linhas de cdigo optou-se por uma opo off-line, utilizado o KeilVision. Na Figura 19 e Figura 20 esto ilustrados os dois ambientes de programao.
37

Figura 19:Ambiente de Programao - KeiluVision

Figura 20: Ambiente de Programao IDE on-line do mbed

38

4.2 Placa sensorial de 4DOFs


Como fora referido nos objetivos deste trabalho, este prende-se pela obteno de um Sistema de Navegao Inercial, com a finalidade de este ser aplicado num qualquer robot indoor de forma a determinar a localizao e orientao do mesmo em tempo real. No caso particular de um robot indoor, se garantirmos que este se desloca num plano estvel horizontal, sem qualquer movimento no eixo do Z, poder dispensar-se o uso do acelermetro deste mesmo eixo. Uma vez que se assume que o robot no sofre qualquer tipo de movimento angular em eixos que no o do Z, poder dispensar-se tambm os giroscpios dos eixos X e Y. Partindo deste pressuposto e com base no material disponvel, foi usado numa fase inicial a placa

ArduIMU Sensor Board - Six Degrees of Freedom (Main) (GPS-09372). Embora anunciada com seis
DOFs, a placa Main (sem adio de duas Breakout Boards com um giroscpio cada) dispe apenas de um conjunto de trs acelermetros e um giroscpio, ou seja o conjunto providencia quatro DOFs. Os sensores desta placa so os acelermetros ADXL335 e o giroscpio LISY300AL, ambos analgicos. Para utilizao desta placa com os anunciados seis DOFs, necessrio adicionar as duas referidas Breakout Boards. Na Figura 21 est ilustrada a placa sensorial segundo uma vista superior (A) e inferior (B), bem como as suas dimenses, na Figura 22 encontra-se ilustrada a Breakout Board.

39

Figura 21: ArduIMU Sensor Board- Top (A), Bottom (B) [40].

Figura 22: Breakout Board [40].

4.3 Interface Grfico


Para a receo de dados, fora utilizado em primeira instncia o software Terminal 1.9b by

Br@y++, um programa que permite receber e enviar comunicao atravs de porta srie. Para que
fosse possvel visualizar os dados, traar grficos ilustrativos de forma a avaliar mais facilmente o comportamento do sistema e permitir uma interao mais apelativa com o mesmo, decidiu-se utilizar a framework QT para a criao de um interface grfico e gesto de dados. A escolha deste ambiente de programao da Nokia veio pela facilidade de portabilidade de cdigo e a familiarizao com um novo ambiente de programao, sendo que, o facto de este ser um

40

ambiente de programao bastante utilizado no GAR, promovera um acrescido incentivo na tomada de deciso. Na Figura 23 encontra-se ilustrado este ambiente de programao.

Figura 23: Ambiente Grfico QT.

4.4 Fuso sensorial


Com o avanar do trabalho, e com uma pesquisa mais profunda acerca dos algoritmos de fuso sensorial, chegou-se concluso que o problema de drift que se verifica nos giroscpios, neste caso particular no nico giroscpio que a placa sensorial dispe, poderia ser resolvido com a integrao de magnetmetros neste projeto. Os algoritmos de fuso sensorial usam os giroscpios como fonte para orientao, porm depois de algum tempo de estimativa da orientao, estes sensores sofrem de drift, que consiste em um desvio entre o real e o estimado. Com o objetivo de medir o drift realizou-se um procedimento prtico, colocou-se o prottipo numa determinada posio inicial e registou-se os valores dos respetivos ngulos. Seguidamente forou-se um movimento aleatrio do prottipo recolocando-o por fim na sua posio inicial. Registou-se os valores dos ngulos e comparou-se com os anteriores, resultando um valor de drift. O problema do

drift dos giroscpios solucionado em parte atravs dos acelermetros, que compensam o drift nos
ngulos pitch e roll, referentes aos eixos Y e X respetivamente, que neste caso particular no trata o ngulo em questo, seria necessrio corrigir o drift do ngulo yaw referente ao eixo Z. Esta correo
41

possvel com a adio de magnetmetros que compensam o drift do ngulo yaw. Basicamente a ideia adicionar a gravidade e o norte magntico estimativa da atitude e rumo. A Figura 24, que se encontra abaixo, ilustra os ngulos roll, pitch e yaw referenciados a um avio de forma a simplificar o processo de compreenso do que fora at agora mencionado [41].

Figura 24: Exemplificao dos ngulos roll, pitch e yaw num objeto [42]. Com base no problema de drift dos giroscpios e atendendo ao facto de que a placa sensorial apenas suportaria um mximo de seis DOFs, sem suporte para os magnetmetros, fora ento necessrio adquirir uma nova placa.

4.5 Aquisio da placa sensorial de 9DOFs


A necessidade de adquirir uma nova placa sensorial trouxe consigo a possibilidade de alargar este trabalho a outras aplicaes, no se cingindo a robots indoor que se desloquem num plano estvel horizontal, podendo tirar partido de todas as potencialidades de um sistema de navegao inercial de nove DOFs. Adquiriu-se a nova placa sensorial, 9 Degrees of Freedom - Sensor Stick (SEN-

10724) [43], com base na disponibilidade do produto e preo. Esta nova placa encontra-se
ilustrada na Figura 25.

42

Figura 25: Placa 9 Degrees of Freedom - Sensor Stick [43]. Com esta aquisio, fora necessrio adaptar os algoritmos de forma a explorar as potencialidades dos 9DOFs dos quais a nova placa dispe. Esta nova placa sensorial composta por trs conjuntos de acelermetros, giroscpios e magnetmetros, um por cada eixo, conferindo-lhe nove DOFs. Os acelermetros so os ADXL345, os giroscpios os ITG-3200 e os magnetmetros so os HMC5883L, todos eles digitais. Associado aquisio da nova placa, houve necessidade de refazer o prottipo inicial. Decidiu-se manter a primeira placa sensorial e juntar ao prottipo a segunda, de forma a ser possvel comparar dois diferentes sistemas sob semelhantes condies. Infelizmente o espao livre de que dispunha o primeiro prottipo no permitia a acoplao de uma nova placa sensorial, tendo sido necessrio refazer a montagem, da qual resultou o prottipo final ilustrado na Figura 26.

Figura 26: Prottipo final com cobertura (A) e sem cobertura (B).

43

Captulo 5 Implementao
Este captulo apresenta os passos relevantes no desenvolvimento do projeto, assim como a implementao de interface grfico.

5.1 Passos relevantes no desenvolvimento do trabalho


Neste subcaptulo so mencionadas as etapas da realizao do projeto e consequentes problemas que foram encontrados na sua realizao. Estas etapas esto divididas em cinco partes: A. Conexo entre o dispositivo mbed e o computador B. Recolha dos dados C. Calibrao dos sensores D. Tratamento dos dados E. Evoluo da Interface grfica e do prottipo. As quatro primeiras etapas foram realizadas de uma forma sequencial, no obstando a modificao do prottipo (adio da placa 9DOF). A etapa E fora realizada/alterada com a evoluo do projeto. As seces seguintes retratam cada uma destas etapas de uma forma pormenorizada.

44

A. Conexo entre o dispositivo mbed e o computador.


O primeiro objetivo deste projeto foi estabelecer a comunicao, via porta srie, entre o mbed e o

host (computador). Para tal fora necessrio interagir com o ADC do mbed para a obteno de
leituras a partir dos sensores analgicos. Neste primeira instncia usou-se o software Terminal, tendo sido posteriormente substitudo por um ambiente grfico criado a partir da Framework QT. Nos primeiros teste realizados, verificou-se que comunicao era corrompida quando o baudrate tinha um valor diferente a 9600bits/s. O problema arrastou-se por algum tempo, vindo-se a descobrir que o problema no incidia sobre o cdigo desenvolvido, mas sim sobre a biblioteca usada para a comunicao da porta srie. A biblioteca que alegadamente suportaria diferentes valores de baudrate, possua erros, no lhe permitindo suportar valores de baudrate diferentes de 9600bits/s. Este valor encontrava-se abaixo dos requisitos mnimos de comunicao e no permita terminar o envio de dados em tempo til. O volume de informao que era possvel enviar com sucesso ficava aqum do necessrio, resultando naturalmente numa saturao do buffer quando enviado um volume de dados superior ao que seria possvel com essa velocidade. Este problema veio a resolver-se com a substituio da biblioteca referente comunicao da porta srie, porm o diagnstico no fora simples.

B. Recolha dos dados


Este subtpico descreve o procedimento realizado na leitura dos sensores, quer para calibrao, quer para aquisio de dados. Para a recolha dos dados, configurou-se um Timer e criou-se uma rotina de atendimento interrupo associada ao ADC para a placa com os sensores analgicos. O Timer comparado com o registo TimerCompareRegister e quando igualados, comutado um

bit e reinicia contagem. O bit que comuta d incio a uma converso do ADC que ao concluir a
converso gera a interrupo do ADC. Na ISR, consoante o canal que gerou a interrupo
45

recolhido o valor e dado incio converso do prximo canal. Aquando da interrupo gerada pelo ltimo canal a amostrar, d-se por concluda esta tarefa e o ADC posto em modo inativo at nova despoletagem do ADC por parte do Timer. Resultando desta forma numa sequncia de recolha de dados de tempo a tempo coordenadas pelo Timer, que assegura a temporizao correta para a realizao da converso por parte do ADC.

C. Calibrao dos sensores e remoo do offset


Para a calibrao dos sensores criou-se uma rotina, que consiste em calcular a mdia de um conjunto de 16 amostras que tm de ser recolhidas com o sistema em repouso. Este nmero de amostras deve-se a dois motivos, o primeiro pelo facto de ser aconselhado pelo fabricante a recolha de pelo menos 10 amostras [19], o segundo pelo facto de 16 ser uma potncia de 2, facilitando o clculo da mdia e respeitando a indicao do fabricante. No caso dos sensores analgicos, a recolha tem de ser realizada em trs partes, colocando um eixo de cada vez perpendicularmente superfcie terrestre. Durante cada uma das trs partes so recolhidos os valores de todos os eixos. Assumindo que quando qualquer eixo est paralelo superfcie terrestre deve apresentar o valor zero e quando perpendicular mesma deve apresentar o valor de 1G, pode calcular-se o valor de offset, bem como o fator de escala dos acelermetros. Assumindo que em repouso os giroscpios devem apresentar um valor igual a zero, a mdia resultante da recolha em cada um dos eixos dos giroscpios traduzir-se- no seu respetivo valor de

offset.
No caso dos sensores digitais, presentes na placa sensorial de nove DOFs, no necessrio as trs fases de recolha de dados, pois consta nos datasheets dos acelermetros e giroscpios os valores dos fatores de escala, bastando uma simples recolha para a obteno dos valores de cada um dos eixos, tendo que o valor de z ter de ser igual a 1G e os restantes iguais a zero. A diferena entre o valor real e o ideal traduz-se no valor de offset. No caso dos magnetmetros, que esto constantemente sujeitos ao campo magntico terrestre, necessrio outro processo de calibrao. O utilizado foi o processo sugerido pelo fabricante, para o qual o sensor tem dois modos especficos de funcionamento: POSITIVE BIAS e NEGATIVE BIAS.
46

Nestes modos forada uma corrente pela camada magneto-resistiva do sensor, que gera uma leitura equivalente a uma intensidade de fluxo magntico de 0,55 gauss. Como nesta leitura est implcito o fluxo magntico terrestre, feita uma segunda leitura sem a corrente de polarizao. Subtraindo o valor do campo magntico terrestre leitura composta, obtm -se o resultado referente apenas a 0,55 gauss. A implementao da rotina de calibrao para os sensores digitais no fora realizada neste ponto do trabalho, porm fica j explicitado o seu funcionamento de forma a se compreender melhor as diferenas entre o processo de calibrao de cada um dos sistemas. Depois de calculados os valores de offset e de fator escala de cada um dos sensores, criaram-se macros para eliminar o offset das amostras e para converso dos dados para valores adequados, G, rad/s e gauss. Infelizmente este processo fora rpido, pois inicialmente a interpretao dos valores recebidos a partir da primeira placa sensorial no era clara. Em primeiro plano e com base nos datasheets dos respetivos sensores, recolheu-se toda a informao referente forma como seriam interpretados os valores de tenso de modo a obter os dados segundo as unidades desejadas. Porm os valores recolhidos no faziam qualquer sentido, tendo-se colocando em causa se os processos de converso dos valores de tenso em valor de acelerao linear e velocidade angular estariam corretos. Mais uma vez o problema no incidia sobre o que seria espectvel, alis no se tratava propriamente de um problema, mas sim de uma caracterstica do ADC do microprocessador. O ADC ao converter o valor analgico para um valor digital, resultando um dado de 12bits, guarda esse valor numa half-word (16 bits) alinhado esquerda e preenche os quatro bits menos significativos com zeros. Desconhecendo esta caracterstica do ADC, partiu-se do pressuposto de que este alinharia os bits direita, e por isso no se compreendiam os resultados obtidos. Depois de se averiguar as caractersticas do ADC, chegou-se concluso que este alinhava os dados direita, tendo sido resolvido o problema com um simples shift de quatro posies.

47

D. Tratamento de dados
Aps realizar a aquisio de dados e a calibrao dos sensores, foi necessrio efetuar o tratamento dos dados. Este tratamento foi efetuado recorrendo a uma biblioteca que implementa a fuso sensorial de todos os sensores usando quaternions. Esta biblioteca foi adaptada de linguagem C para linguagem C++, contudo veio a ser mais tarde substituda por uma verso mais recente proveniente de um projeto designado FreeIMU. A nova verso baseada na verso anterior, que embora use a implementao de Mahoney, continua utilizar quaternions para a computao da orientao, acrescentando a fuso sensorial dos magnetmetros. A escolha do mtodo de quaternions prendeu-se ao facto de este ter uma computao mais leve que o mtodo DCM. Embora mais difcil de compreender e visualizar, esta apenas uma diferente forma de representao. A biblioteca usada permitiu, com base nos acelermetros, estimar o campo gravtico terrestre e remover o drift nos ngulos roll e pitch. Contudo era necessrio eliminar o drift no ngulo yaw recorrendo a determinao do campo magntico terrestre. Nesse sentido adquiriu-se uma nova placa sensorial1 com nove DOFs, entre os quais trs magnetmetros, permitindo assim estimar os ngulos de Euler para fins de orientao. Os algoritmos de fuso sensorial, clculo de acelerao dinmica, de velocidade e de posio encontram-se descritos abaixo. Algoritmo de fuso sensorial: Update (AHRS) { Se (magnetmetros vlidos) { Normalizar magnetmetros

Com esta alterao na modelao do projeto, foi necessrio refazer os passos de aquisio dos dados e calibrao dos sensores para a nova placa, o que requereu um esforo de implementao suplementar e a alterao do prottipo.
1

48

Estimar direo do campo magntico terrestre (quaternions) Estimar direo do campo magntico real (magnetmetros) Calcular o erro de orientao } Se (Acelermetros vlidos) { Normalizar acelermetros Estimar direo do campo gravtico (quaternions) Calcular erro de orientao relativo ao campo gravtico Adicionar o erro gravtico ao erro magntico } Se (Existir erro derivado dos acelermetros e magnetmetros) { Se (ganho integrativo > 0) { Calcular e aplicar realimentao integrativa } Seno {realimentao integrativa = 0} Aplicar ganho proporcional } Integrar velocidade angular Calcular orientao do quaternion Normalizar o quaternion }

49

Clculo da acelerao dinmica (Filtro de Banda Morta): Se (Acelerao < Banda Morta) Ento, Acelerao = 0 Se ( - Acelerao > - Banda Morta) Ento, Acelerao = 0 Se (Acelerao > Banda Morta) Ento, Acelerao = Acelerao Banda Morta Se ( - Acelerao < - Banda Morta) Ento, - Acelerao = - Acelerao + Banda Morta Clculo da velocidade: Velocidade = Velocidade + Acelerao dinmica * Tempo de Amostragem Clculo da posio: Posio = Posio + Velocidade * Tempo de Amostragem

E. Evoluo da Interface grfica e do prottipo


De forma a simplificar a comunicao entre o prottipo e o interface grfico do PC estabeleceramse formatos de tramas. O formato escolhido encontra-se na Tabela 1, sendo explicado de seguida. Tabela 1:Exemplo de Formato de Trama A Exemplo ~ B %c C a D x E %+08.3f F y G %+08.3f H z I %+08.3f J \n

Estipulou-se que todas as tramas contendo medies e orientao devem ser iniciadas pelo caracter ~ (A). Aps o caracter de incio de trama enviado um segundo byte que indica o

50

tamanho da trama (B). Este byte inserido na trama sob a forma de um caracter ASCII, tendo o seu lugar na posio assinalada com %c. De seguida tem lugar o caracter que indica de que tipo de trama se trata (C), tendo sido definido q o envio de um quaternion, a para um conjunto de leituras de acelerao, g para um conjunto de leituras de velocidade angular, c para um conjunto de medidas de fluxo magntico, e para uma trama de orientao segundo os ngulos de Euler, d para acelerao dinmica, v para velocidade linear e p para deslocamento, (Tabela 2). Aps esta informao passado o caracter referente ao eixo (D, F, H) e o valor do respetivo eixo (E, G, I), terminando todas as tramas com um caracter de pargrafo \n (J). O formato do valor em vrgula flutuante descrito quanto ao nmero de casas decimais, zeros no significativos esquerda e sinal. Na Tabela 2 constam os diferentes formatos e a descrio de cada um deles e na Tabela 3 os respetivos comandos que so reconhecidos pelo prottipo e comandam o seu modo de funcionamento. Tabela 2:Formatos de Trama ~%cqq%+09.6fq%+09.6fq%+09.6fq%+09.6f\n Formato de uma trama de um quaternion ~%cax%+08.3fy%+08.3fz%+08.3f\n ~%cgx%+08.3fy%+08.3fz%+08.3f\n ~%ccx%+08.3fy%+08.3fz%+08.3f\n ~%cex%+08.3fy%+08.3fz%+08.3f\n ~%cdx%+08.3fy%+08.3fz%+08.3f\n ~%cvx%+08.3fy%+08.3fz%+08.3f\n ~%cpx%+08.3fy%+08.3fz%+08.3f\n Formato de uma trama de acelerao nos eixos X, Y e Z, em G Formato de uma trama de velocidade angular em torno dos eixos X, Y e Z, em rad/s Formato de uma trama de fluxo magntico sentido nos eixos X, Y e Z, em gauss Formato de uma trama de orientao segundo Euler, Yaw, Pitch e Roll, em graus Formato de uma trama de acelerao dinmica nos eixos X, Y e Z, em m/s2 Formato de uma trama de velocidade linear em X, Y e Z, em m/s Formato de uma trama de deslocamento ao longo dos eixos X, Y e Z, em metros

51

Tabela 3:Comandos c f u a w e s Ordem de calibrao dos sensores Ordem de funcionamento no modo IMU Ordem de funcionamento no modo AHRS Pedido de disponibilizao de ngulos de posio e orientao Ordem de funcionamento apenas com 4DOF Ordem de funcionamento com 9DOF Ordem de suspenso de funcionamento

Com a adio da nova placa, o prottipo deixou de ser considerado um IMU e atingiu a maturidade de um MARG, ou seja, possibilitava a leitura do campo magntico terrestre, velocidade angular e gravidade. Aps testes e avaliao do comportamento do sistema atravs dos valores de leitura, foram alinhados os eixos dos sensores com os eixos deliberados para o prottipo, encontrando-se ilustrados na Figura 27. Foi necessrio proceder ao alinhamento dos sensores da nova placa, porque estes no esto coerentemente alinhados entre si, isto porque o fabricante no teve o cuidado de alinhar os eixos dos sensores quando desenhou a placa. A correo feita por software, sendo por isso necessrio reatribuir a alguns dos eixos a adequada designao e inverter o sinal quando necessrio. Este processo foi iterativo, tendo tido por base os resultados apresentados no interface grfico.

52

Figura 27:Eixos de Referncia Devido ao facto de nesta nova placa existirem nove sadas, foi necessrio reimplementar a parte do interface grfico que permitia a visualizao dos valores em tempo real. Tendo surgido a necessidade de usar uma ferramenta de desenho de grficos mais eficiente. A biblioteca utilizada foi a QCustomPlot, uma biblioteca baseada em QT para desenho de grficos em 2D. Atendendo que no desejvel proceder calibrao dos sensores todas as vezes que o sistema inicializado, dedicou-se ateno criao de uma rotina para salvar os valores de calibrao na memria FLASH presente no mbed. Os valores so guardados num ficheiro .txt no localfilesystem do mbed. Criada esta rotina, toda a vez que o sistema inicializado feita uma tentativa de abertura do ficheiro, caso ele exista so carregados os valores para as variveis de eliminao de

offset e de fator de escala, caso no exista enviada uma mensagem de alerta.


Considerando-se que se tinha um sistema MARG com alguma robustez, deu-se seguimento criao de um AHRS. Para isso foi implementada uma verso mais recente do cdigo de Madgwick, tal como fora referido anteriormente. Nesta nova verso do projeto, foram feitas algumas alteraes, para que fosse possvel escolher entre a placa de seis DOFs e a de nove. Para realimentar o sistema a uma taxa constante e contnua, procedeu-se programao de um

Timer e subsequente rotina de atendimento interrupo com o fim de realizar leituras a partir dos
sensores e realimentar o filtro nessa rotina. O Timer usado foi o Timer1, estando a ser utilizado o

Timer3 pelas bibliotecas do mbed, deixando livres o Timer0 e o Timer2.


Aps superados os desafios inerentes a esta implementao, obteve-se um sistema AHRS capaz de seguir em tempo real a orientao do prottipo. Para verificao dos resultados foi adicionado um

53

widget ao interface grfico com uma reproduo em 3D do prottipo, a qual possvel ser movida
em trs eixos, yaw, pitch e roll. Uma vez que um AHRS usa um MARG, ou seja dispe de nove DOFs dos quais trs so referentes aos magnetmetros, a orientao do sistema absoluta (em relao ao campo magntico terrestre) e no relativa posio inicial do prottipo. Para ser possvel uma correta visualizao da orientao do prottipo necessrio orientar o monitor, onde mostrado o interface grfico, de costas para o norte magnticos. Com este procedimento, a representao em 3D no monitor estar corretamente alinhada com o prottipo, no dando a impresso de desalinhamento. Seguidamente procedeu-se determinao dos valores de ganho proporcional e integrativo com o objetivo de o filtro compensar os erros de drift. Este processo foi iterativo, tendo-se obtido resultados aceitveis com um ganho proporcional de 5 e um ganho integrativo de 0,002. De notar que o filtro duplica estes valores de ganho com o fim de serem usados no algoritmo, sendo portanto os valores efetivos de ganho proporcional e ganho integrativo, de 10 e 0,004 respetivamente. Atravs da manipulao aleatria do prottipo determinou-se que este respondia com eficincia determinao da orientao do prottipo, dado que a posio final do representado em 3D, reproduzia fielmente a posio real. Em regime estacionrio o ganho integrativo atua eficazmente, corrigindo pequenos desalinhamentos na ordem de um ou dois graus, concluindo-se assim, que esta implementao vlida e eficaz para a determinao da orientao e atitude de um corpo.

5.2 Framework QT
A ferramenta de interface grfico foi desenvolvida usando a Framework QT. Trata-se de um programa de software desenvolvido para visualizar em tempo real as medies e os resultados provenientes do sistema desenvolvido (prottipo), de forma a que esta visualizao seja mais intuitiva quer para o utilizador, quer para fins de desenvolvimento, esta, sempre que possvel, apresenta grficos e animaes que ilustram as sadas/medies. A ferramenta permite ainda comunicar com o prottipo de forma a selecionar o seu modo de operao e requisitar informao. No fundo, a interao entre este interface grfico e o prottipo a mesma que se espera existir

54

entre o mesmo e uma aplicao real (ex., robot). A comunicao entre os dois intervenientes feita por porta srie a um baurate de 15200bits/s, inicialmente fora adotado o baurate de 9600bits/s, mas este mostrou-se incapaz de dar resposta aos tempos mximos de comunicao. Foram utilizadas bibliotecas para a interao com a porta srie, bem como para o desenho de grficos e animaes. O algoritmo do interface grfico, bem como alguns detalhes relevantes de implementao sero explicados neste captulo.

5.2.1 Aspeto geral e funcionalidades


A Figura 28 mostra o aspeto geral do interface grfico, deste destacam-se 3 partes. Sendo a primeira a parte da configurao, comandos da porta srie e envio de comandos para o INS, uma segunda parte referente janela de registo de mensagens complementares e de debug e uma ltima parte para fins de visualizao grfica de resultados.

Figura 28: Interface grfico - QT Relativamente parte da configurao, comandos da porta srie e envio de comandos para o

mbed, possvel selecionar a porta COM onde o dispositivo se encontra mapeado, bem como
definir a taxa de envio e receo de bits e proceder coneco e desconeco da mesma. tambm apresentado um radiobutton que permite comutar entre as placas sensoriais de seis e

55

nove DOFs, botes de comandos para selecionar os modos de funcionamento, IMU ou AHRS e proceder calibrao dos sensores e desativar o sistema a partir do boto de STOP. A Figura 29 ilustra o agora referido.

Figura 29:Interface Grfico - Comandos A janela de registo de mensagens, ilustrada na Figura 30 destina-se a apresentar tudo o que sejam comunicaes provenientes da porta srie, mas que no sigam nenhum formato de trama prestabelecido. Desta forma possvel visualizar facilmente informao relativa ao estado do sistema, informao relativa ao processo de calibrao, mensagens de debug enviadas pelo dispositivo, bem como tramas com formato faltoso. O processo de filtragem de comunicao ser explicado neste subcaptulo na parte do algoritmo e detalhes de implementao.

56

Figura 30:Ambiente Grfico Janela de Registo Na parte dos mostradores grficos possvel visualizar grficos com os valores em tempo real provenientes dos sensores, uma animao que reproduz a orientao do prottipo, bem como trs grficos complementares destinados estimativa da acelerao dinmica e velocidade e distncia relativa do prottipo. Todos os valores que so mostrados graficamente so tambm registados e exibidos em simples caixas de texto individuais, veja-se no exemplo da Figura 31 .

Figura 31:Ambiente Grfico - Grfico

57

5.2.2 Algoritmo e detalhes de implementao


Neste subponto sero referenciadas as funcionalidades do ambiente grfico, detalhes de implementao e algoritmos. Para simplificar a compreenso, parte-se de um esquama genrico para as pequenas partes. No seguimento do que fora mensionado, apresenta-se na Figura 32 um fluxograma representativo do interface grfico.

Figura 32:Fluxograma geral do Interface Grfico QT Passando a explicar, inicialmente so feitas as inicializaes dos elementos grficos, da porta srie, e variveis auxiliares. Depois de concluda a inicializao do sistema, este pode seguir duas variantes, o evento de receo de dados ou o evento de boto premido. Cada um destes despoleta diferentes aes, no caso do evento de boto premido procedido o envio de um comando sob forma de carater (Envia Comando). No caso do evento de receo de dados procedida uma verificao do tipo de dado recebido (Dado Novo Recebido) e se por ventura se encontra completo

58

(Nova Trama Recebida). De forma a esclarecer os procedimentos em cada uma destas situaes, sero apresentados fluxogramas para cada uma delas. No caso do Envio de Comando, o seu fluxograma o seguinte:

Figura 33:Fluxograma Envio de Comandos Este fluxograma mostra quais so os carateres enviados, segundo o premir do respetivo boto. Desta forma, com o premir do boto Stop enviado o carater s, com o pr emir do boto Calibration enviado o carater c, e assim sucessivamente, como ilustrado a Figura 33. No caso do Novo Dado Recebido, o seu fluxograma o seguinte:

59

Figura 34:Fluxograma Novo Dado Recebido Passando a explicar, quando recebido um dado, feito um teste no sentido de apurar se existe algum carater ~, este carater utilizado para diferenciar as tramas com um formato pr -definido das tramas das que no apresentam um formato especfico. Ou seja, toda a informao recebida que no seja iniciada com um carater ~ escrita diretamente na janela de registo de mensagens.

60

No caso de contar entre os dados um carater ~, ento so escritos todos os dados at esse carater na janela de registo de mensagens e feitos mais testes ao restante contedo. O primeiro teste passa por determinar se o byte que contm o nmero de carateres que constitui a trama j se encontra disponvel, se no sai, se sim conhecendo o nmero de carateres testa se estes j se encontram disponveis. Se sim emitido o sinal Nova Trama, que ir despoletar mais um processo, designado no primeiro fluxograma apresentado por Nova Trama Recebida e ilustrado no fluxograma da Figura 35 que se segue:

Figura 35:Fluxograma Nova Trama Recebida

61

Passando a explicar, neste procedimento, primeiramente lido um carater de forma a apurar o tipo de dado que se est a receber. Atendendo ao facto de que se trata de tramas com formato prestabelecido, realizam-se testes para identificar o respetivo formato. No caso de o carater recebido ser um a, so desenhados os grficos da acelerao e preenchidas as referentes caixas de texto, no caso de o carater ser um g, so desenhados os grficos da velocidade angular e preenchidas as referentes caixas de texto, e assim sucessivamente como ilustrado no fluxograma.

62

Captulo 6 Resultados e Discusso


Neste captulo so apresentados os resultados deste trabalho, sendo discutidos os mesmos ao longo da exposio. De forma a simplificar a exposio dos resultados, estes sero divididos em cinco partes e apresentados segundo a etapa de evoluo do trabalho. Em primeira instncia sero apresentados alguns resultados referentes ao funcionamento do sistema como um IMU (4DOFs), ou seja, os resultados obtidos a partir da primeira placa sensorial no modo de funcionamento IMU. Em segundo lugar sero apresentados os resultados referentes ao funcionamento do sistema como um MARG (9DOFs), ou seja, os resultados obtidos com a nova placa sensorial de nove DOFs em modo de funcionamento MARG. Sero, posteriormente, apresentados os resultados referentes ao sistema AHRS com 4DOFs no modo de funcionamento AHRS, apresentando vrios grficos de modo a ilustrar da melhor forma as diferenas deste sistema em relao aos anteriores, bem como realar as potencialidades do mesmo. De seguida, passa-se exposio dos resultados referentes ao sistema MARG com 9DOFs no modo AHRS, sendo apresentados grficos ilustrativos com o objetivo de salientar as potencialidades deste sistema e feita uma anlise comparativa com o modo AHRS com o IMU de 4DOFs. Por ltimo feita uma exposio dos resultados referentes ao sistema INS com 9DOFs e discutidos os resultados apresentados.

63

6.1 Sistema IMU com 4DOFs


Este prottipo oferece um modo de funcionamento como IMU, isto , apenas fornece as leituras dos sensores para o exterior. Esta funcionalidade destina-se a aplicaes que necessitem de integrar fuso sensorial com tarefas de processamento intensivo, tais como processamento de imagem, e o processador acoplado ao IMU no seja capaz de responder a essas necessidades. Neste modo de funcionamento pretende-se uma elevada taxa de amostragem de forma a poder satisfazer os requisitos de aplicaes mais exigentes. Neste sentido fixou-se uma taxa de amostragem de 200Hz. Projetos similares [6] [10] utilizam uma taxa de amostragem de 100Hz. No entanto, uma vez que a capacidade de processamento da plataforma assim o permitia, optou-se por dobrar essa taxa de amostragem. Uma vez que o interface grfico no permitia (nem era necessrio) fazer um refresh aos resultados numa frequncia to alta, os dados apenas so enviados para o mesmo a uma frequncia quatro vezes inferior. Os resultados aqui apresentados demonstram como os sensores analgicos so capazes de dar uma resposta adequada com o sistema em repouso. So aqui apresentados grficos ilustrativos do comportamento do sistema durante o movimento. Foi recolhida uma imagem referente ao movimento sobre cada um dos eixos, de forma a ser percetvel a resposta do sistema. Neste sentido encontra-se apresentado na Figura 36 uma imagem do ambiente grfico com o sistema em repouso, encontrando-se realados os grficos na Figura 37.

64

Figura 36: Ambiente Grfico Sistema IMU (4DOFs) em Repouso

Figura 37: Grficos Sistema IMU (4DOFs) em Repouso Como possvel constatar nas figuras acima, a resposta do IMU adequada ao estado estacionrio do prottipo, provando parte da sua fiabilidade. Na Figura 38 est ilustrado o comportamento do IMU, quando este submetido a sucessivas oscilaes em cada um dos eixos. Como se pode constatar na figura em questo, primeiramente forado um movimento no eixo X, seguindo-se o Y e finalmente o Z. Aps terminar a perturbao a resposta do IMU retorna ao estado de repouso.

65

Figura 38:Grfico Perturbaes em cada Eixo e Estabilizao (IMU) Na Figura 39 e Figura 40 esto ilustrados grficos referentes saturao dos acelermetros e do giroscpio, respetivamente, tendo sido obtidos atravs de agitao e rotao violenta do prottipo.

Figura 39:Grfico Saturao dos Acelermetros do Sistema IMU (4DOFs)

Figura 40:Grfico Saturao do Giroscpio do Sistema IMU (4DOFs)

6.2 Sistema MARG com 9DOFs


Os resultados apresentados neste subcaptulo so referentes ao sistema MARG (9DOFs). Sendo inicialmente demonstrado na Figura 41 o comportamento deste sistema no estado de repouso, tal como no sistema IMU (4DOFs). Este apresenta resultados melhores que os do giroscpio da placa anterior (nveis de ruido inferiores), demonstrando ter maior fiabilidade.

66

Figura 41:Grfico Sistema MARG (9DOFs) em Repouso Na Figura 42 e Figura 43 encontram-se grficos ilustrativos da no saturao dos acelermetros e giroscpios deste sistema. Tal como na placa anterior, tentou-se forar a saturao do sistema por meio de forte agitao e rotao do prottipo, contudo no foi possvel leva-lo saturao. Mais uma vez esta placa de sensores diferencia-se positivamente da de 4DOFs. Nestas mesmas figuras possvel verificar o comportamento deste sistema MARG quando submetido a perturbaes em cada um dos eixos dos acelermetros e giroscpios, mostrando que este tem um comportamento satisfatrio.

Figura 42:Grfico No Saturao dos Acelermetros do Sistema MARG

67

Figura 43: Grfico No Saturao dos Giroscpios do Sistema MARG (Eixo do Z)

6.3 Sistema AHRS com 4DOFs


Neste subcaptulo so mostrados os resultados obtidos a partir da placa sensorial de 4DOFs em modo de funcionamento AHRS. Neste modo de funcionamento, o widget presente no ambiente grfico e ilustrado na Figura 44 reproduz a orientao calculada do prottipo, segundo o algoritmo de fuso sensorial, devendo esta refletir a posio real do mesmo. Neste modo de funcionamento a utilizar o IMU de 4DOFs aps algum tempo de manipulao aleatria do prottipo num plano horizontal o widget apresenta um desvio considervel. Este desvio justificado, pela ausncia de eixos complementares que permitam por fuso sensorial a eliminao do drif. Para mostrar o referido drift apresentada na Figura 45 uma imagem do widget 3D referente orientao do prottipo aps uma manipulao aleatria e regresso orientao inicial. A posio inicial mostrada na Figura 44. Assim possvel comparar as diferenas entre a imagem apresentada inicialmente e a final, que correspondem mesma orientao real.

68

Figura 44:Widget - Representao Inicial

Figura 45:Widget Representao Final da Posio Inicial

69

6.4 Sistema AHRS com 9DOFs


Neste subcaptulo so apresentados os resultados obtidos a partir da placa sensorial de 9DOFs em modo de funcionamento AHRS. So apresentadas e enquadradas imagens do widget presente no ambiente grfico de forma a mostrar o comportamento do sistema e so feitas comparaes com o caso anterior, bem como destacadas as mais-valias deste. No sentido de comparar este sistema AHRS de 9DOFs com o sistema AHRS de 4DOFs, submeteuse o prottipo s mesmas condies referidas no subcaptulo anterior (agitao do prottipo num plano horizontal). Depois de algum tempo, retomou-se sua posio inicial, verificando-se que o erro existente consideravelmente inferior ao que se verifica no sistema AHRS de 4 DOFs, estando o estado final ilustrado na Figura 46.

Figura 46:widget Representao Final (plano horizontal) Uma vez que esta configurao de AHRS com nove DOFs permite inferir sobre a orientao tridimensional do prottipo foi testada a eficincia do sistema utilizando o mesmo mtodo das configuraes anteriores. Quando o prottipo sofre uma manipulao aleatria em torno dos trs

70

eixos referenciais verifica-se que este, ao retomar a posio inicial apresenta um erro mnimo (inferior a meio grau em todos os eixos), estando esta situao ilustrado na Figura 47.

Figura 47:widget Representao Final A Figura 48 e Figura 49 representam o sistema em funcionamento em duas posies aleatrias.

Figura 48:widget - Posio Aleatria I

71

Figura 49:widget - Posio Aleatria II

6.5 Sistema INS de 9DOFs


Tendo em conta que para o clculo da estimativa da velocidade e posio feita uma integrao sucessiva da acelerao, processo este que est sujeito acumulao de grandes erros, imperativo que existam mecanismos de eliminao deste mesmo erro. Como tal proibitivo o uso do IMU de 4 DOFs para este fim, uma vez que o drift do nico giroscpio existente no compensado. Como a velocidade e distncias so estimadas tendo por base a acelerao a que o sistema est sujeito, necessrio distinguir entre as foras externas que atuam no sistema e a fora da gravidade em atuao permanente. Para isto, a biblioteca de fuso sensorial foi estendida com um novo algoritmo que com base na orientao do prottipo, subtrai aos valores de acelerao lidos a componente da acelerao gravtica. Obtm-se assim a designada acelerao dinmica que por integrao origina a velocidade linear a que o corpo est sujeito e por dupla integrao, o deslocamento do corpo. Uma vez que nem este algoritmo, o sistema no fornece mecanismos de eliminao do erro nas duas novas componentes calculadas, era espetvel a impreciso das medidas devido acumulao de erro. Nestas a mais afetada o deslocamento, uma vez que resulta de uma dupla

72

integrao da acelerao. Numa tentativa de compensar estes erros, aplicou-se um filtro de eliminao de banda morta, pretendendo-se com isto descartar leituras de acelerao que se encontrem abaixo de um determinado limite de rudo. Com esta filtragem obtiveram-se melhorias nos resultados (diminuio do erro da posio na ordem das centenas), contudo no foi suficiente, uma vez que a posio estimada em regime estacionrio apresenta um erro superior a um metro ao fim de oito segundos de funcionamento, tal como confirma a Figura 50.

Figura 50:Grfico - Erro em Regime Estacionrio Na figura observa-se o funcionamento do INS quando sujeito a variaes de acelerao. possvel visualizar a velocidade, como derivada da acelerao, bem como a sobreposio dos erros de integrao, uma vez que na parte final do teste o sistema se encontrava parado e embora a acelerao lida seja prxima de zero, quer a velocidade quer a posio no refletem a realidade.

Figura 51:Grfico Funcionamento do INS

73

Captulo 7 Concluso
7.1 Concluses
Nesta dissertao foi apresentado um sistema inercial para fins de orientao, baseado em sensores de baixo custo e destinado a robots e outras plataformas mveis. O sistema criado utiliza uma placa sensorial com nove DOFs e um microcontrolador mbed, onde corre um algoritmo de fuso sensorial. Este algoritmo baseia-se em quaternions para estimar a orientao do prottipo. Uma vez que a obteno da orientao obtida pela integrao da velocidade angular lida pelos giroscpios, o algoritmo compensa os erros de drift fundindo a orientao estimada com a direo da fora gravtica (obtido a partir dos acelermetros) e com a orientao do campo magntico terrestre (obtido a partir dos magnetmetros). Foi tambm avaliada a possibilidade de utilizar uma placa sensorial de apenas quatro DOFs, no entanto essa possibilidade foi inviabilizada devido ausncia de sensores na mesma, que permitam a referida eliminao de drift. O sistema obtido oferece trs modos de funcionamento: como IMU, como AHRS e como INS. O modo IMU, unidade de medio inercial, permite adquirir dados referente acelerao, velocidade angular e fluxo magntico, aquando da utilizao da placa sensorial de nove DOFs, ou apenas acelerao e velocidade angular para o caso da placa sensorial de quatro DOFs. O modo AHRS, sistema referencial de atitude e rumo, permite a obteno da orientao do prottipo sob forma de
74

ngulos yaw, pitch.e roll. Neste modo possvel utilizar a placa sensorial de quatro DOFs para orientao no plano ou a placa sensorial de nove DOFs para orientao no espao. Foi tentada uma implementao de um sistema INS, sistema inercial de navegao, baseado na orientao obtida pelo modo AHRS e nas leituras de acelerao. Neste modo estimada a acelerao dinmica, qual o prottipo est sujeito, e estimada a velocidade e deslocamento do mesmo. Foi tambm desenvolvido um interface grfico em QT para fins de visualizao intuitiva dos dados de sada do prottipo. Os resultados obtidos em modo IMU apresentam baixos nveis de rudo. Foi testada a robustez do sistema a taxas de amostragem at 200Hz, qual o sistema respondeu com eficcia. No modo AHRS, os resultados obtidos foram bastante satisfatrios, pois no caso da placa de nove DOFs o erro acumulado compensado com sucesso, sendo este inferior a dois graus. Com a placa sensorial de quatro DOFs, este modo de funcionamento acumula erro significativo, uma vez que este no compensado ao longo do processo de estimao da orientao. Relativamente ao modo INS os resultados obtidos demonstram que a implementao no eficaz na determinao da velocidade e deslocamento. Devido ao processo de integrao e dupla integrao da acelerao dinmica em sobreposio aos erros inerentes ao clculo desta, os erros acumulados rapidamente se sobrepem s grandezas que se pretende extrair. Com base no trabalho realizado, pode-se afirmar que possvel obter um sistema IMU e AHRS de aceitvel preciso baseado em sensores de baixo custo. tambm possvel estimar o deslocamento e velocidade de um corpo tendo por base sensores inerciais, no entanto a implementao realizada demonstrou no ser eficiente.

7.2 Trabalho Futuro


De forma a melhorar o desempenho do sistema em modo INS, sugerem-se duas abordagens.

75

A adio de mtodos complementares determinao da posio do sistema, tais como entradas de leituras de velocidade provenientes de fontes externas ao INS, por exemplo, dados provenientes de encoders utilizados na locomoo dos robots terrestres, ou barmetros para determinao da altitude no caso de plataformas areas. Desta forma seria possvel compensar o erro acumulado na estimativa da posio e velocidade.

A segunda abordagem, que poder ser um complemento da primeira, visa a implementao extensiva de filtros avanados (ex., Extended Kalman Filter) ou outras tcnicas de software que permitam eliminar o rudo nas vrias fases de obteno da posio e velocidade, isto , aquisio de dados, clculo de determinao de quaternion, determinao da acelerao dinmica, velocidade e posio. No entanto esta ltima abordagem dever demonstrar ser pouco apropriada para sistemas com reduzida capacidade de processamento, tais como a plataforma de desenvolvimento utilizada.

76

Referncias
[1] Wikipedia, Compass, [Online]. Available: http://en.wikipedia.org/wiki/Compass. [Acedido em 03 Outubro 2012]. [2] GPSINFOS-Solues em gps, [Online]. Available: http://www.gpsinfos.com.br/servicos/manutencao-de-gps. [Acedido em 13 Outubro 2012]. [3] S. O. Madgwick, Quaternions, 2011. [4] S. O. Madgwick, Xmegapilot, [Online]. Available: http://code.google.com/p/xmegapilot/. [Acedido em 21 Outubro 2012]. [5] sf9domahrs, AHRS for Sparkfun's, Creative Commons, [Online]. http://code.google.com/p/sf9domahrs/. [Acedido em 21 Outubro 2012]. Available:

[6] FreeIMU: a libre 9-10 DOM/DOF inertial measurement unit, Varesano.net, [Online]. Available: http://www.varesano.net/projects/hardware/FreeIMU. [Acedido em 21 Outubro 2012]. [7] Arduplane, diy drones, [Online]. Available: http://code.google.com/p/ardupilot -mega/. [Acedido em 21 Outubro 2012]. [8] Arducopter, Diy Drones, [Online]. Available: http://code.google.com/p/arducopter/wiki/ArduCopter. [Acedido em 12 Outubro 2012]. [9] J.-L. Naudin, ArduRover, [Online]. Available: http://code.google.com/p/ardurover/wiki/Overview?tm=6. [Acedido em 12 Outubro 2012]. [10 ardupilot-mega, Diy Drones, [Online]. Available: http://code.google.com/p/ardupilot ] mega/wiki/Introduction. [Acedido em 21 Outubro 2012]. [11 M. Andrejasic, MEMS ACCELEROMETERS, Marec: University of Ljubljana Faculty for ] mathematics and physics Department of physics, 2008. [12 A. Lindsay, SIC Memsic Tutorial, Parallax Inc., 2005. ] [13 S. M. Prasad, Design Simulation & Fabrication of Micromachined Acceleration Sensor,
77

Jawaharlal Nehru Technological University, 2010.

[14 Endveco, Practical understanding of key accelerometer specifications, MEGGIT, 2011. ] [15 M. Coope, A Mechanical Accelerometer from 1904, Sensorland, [Online]. Available: ] http://www.sensorland.com/HistPage002.html. [Acedido em 29 Setembro 2012]. [16 P. L. Walter, A HISTORY OF THE ORIGIN AND EVOLUTION OF MODAL, Conference on ] structural dynamics No20, Vols. %1 de %2ISBN 0-912053-77-1, pp. 4-7, 2002. [17 J. Wagner e J. Burgemeister, Piezoelectric accelerometers theory and application, Radebul] Germany: Metro Mess, 2001. [18 M. Coope, accelerometers, how they work,vibrations sensors, Sensorland, [Online]. Available: ] http://www.sensorland.com/HowPage003.html. [Acedido em 9 Setembro 2012]. [19 Datasheet: Accelerometer ADXL335, Analog Devices INC, 2009. ] [20 Datasheet: Digital accelerometer ADXL345, Analog Devices INC, 2009. ] [21 A. A. Trusov, Overview of MEMS Gyroscopes: History, Principles of Operations, Types of ] Measurements, Irvine: Mechanical and Aerospace Engineering University of California, 2011. [22 M. A. ERM, MEMS ACCELEROMETERS AND GYROSCOPES FOR INERTIAL ] MEASUREMENT UNITS, MIDDLE EAST TECHNICAL UNIVERSITY, Dissertao (Master of science electrical and electronics engineering), 2004. [23 A. Burg, A. Meruani, B. Sandheinrich e M. Wickmann, MEMS GYROSCOPES AND THEIR ] APPLICATIONS, Northwestern University, 2004. [24 T. B. Greensdale, Gyroscopic Control of Hovercraft, Phys. Teach., vol. 31, pp. 4-5, 1993. ] [25 Robotics Fundamentals Series: Gyroscopes, National Instruments, [Online]. Available: ] http://www.ni.com/white-paper/8249/en. [Acedido em 3 Outubro 2012]. [26 A. Brito, Gimball Lock, [Online]. Available: http://www.allanbrito.com/2007/04/18/gimbal -

78

lock/. [Acedido em 3 Outubro 2012].

[27 A. Shamir, An overview of Optical Gyroscopes Theory Pratical Aspects, Applications and Future ] Trends, 2006. [28 K. R. V. a. D. Kalpana Arvind, Fiber Optic Gyroscope, Department of Space, Laboratory for ] Electro-Optics Systems - ISRO, Peenya, Bangalore, INDIA, 2010. [29 S. Nasiri, A Critical Review of MEMS Gyroscopes Technology and Commercialization Status, ] Coronado Drive, Santa Clara, California: InvenSense, 2005. [30 M. Hij, Investigation of Magnetic Compass, Lule University of Technology: Dissertao ] (Master of Science in Engineering Technology Space Engineering), 2011. [31 S. Choi, A MICROMACHINED MAGNETIC FIELD SENSOR FOR LOW POWER ELECTRONIC ] COMPASS APPLICATIONS, Georgia Institute of Technology: Dissertao(Doctor of Philosophy in the School of Electrical and Computer Engineering), 2007. [32 D. Pires, INVENES... BSSOLA, [Online]. Available: ] http://danielpires.pt/2011/04/invencoes-bussola.html. [Acedido em 9 Outubro 2012]. [33 R. B. Langley, Getting your bearings, The magnetic Compass and GPS, GPS World, pp. 70] 80, setembro 2003. [34 R. K. Curey, M. E. Ash, L. O. Thielman e C. H. Barker, Proposed IEEE Inertial Systems ] Terminology Standard and Other Inertial Sensor Standards, Position Location and Navigation Symposium, n. ISBN: 0-7803-8416-4/04/, pp. 83-90, 2004. [35 Sensing solutions for a more sensible world, Senlution, [Online]. ] http://www.senlution.com/node/6. [Acedido em 9 Outubro 2012]. Available:

[36 P. Slycke, MEMS based attitude and heading reference systems, MEMS investor journal, ] [Online]. Available: http://www.memsjournal.com/2010/12/mems-based-attitude-andheading-reference-systems-overview-and-current-trends.html. [Acedido em 19 Outubro 2012]. [37 X. Kong, Inertial Navigation System Algorithms for low cost IMU, University of Sydney: ] Dissertao (PHD on Mechanical and Mechatronic Engineering), 2000. [38 K. Groekatthfer e Z. Yoon, Introduction into quaternions for spacecraft attitude ] representation, Berlin, Germany: University of Berlin, Department of Astronautics and

79

Aeronautics , 2012. [39 S. Ford, mbed Microcontrollers, [Online]. Available: http://mbed.org/handbook/mbed] Microcontrollers. [Acedido em 15 Outubro 2012]. [40 ArduIMU Sensor Board - Six Degrees of Freedom, Sparkfun Electronics, [Online]. Available: ] https://www.sparkfun.com/products/9372. [Acedido em 16 Outubro 2012]. [41 Initial implementation of a 9 DOM/DOF MARG IMU orientation filter with ADXL345, ITG3200 ] and HMC5843 on Arduino, Versano.net, [Online]. Available: http://www.varesano.net/blog/fabio/initial-implementation-9-domdof-marg-imu-orientationfilter-adxl345-itg3200-and-hmc5843-a#comment-21534. [Acedido em 15 Outubro 2012]. [42 K. Stewart, Ch11 Creating a First Person Camera, [Online]. Available: http://www] rohan.sdsu.edu/~stewart/cs583/LearningXNA3_lects/Lect15_Ch11_CreateFirstPersonCame ra.html. [Acedido em 15 Outubro 2012]. [43 9 Degrees of Freedom - Sensor Stick, Sparkfun Electronics, [Online]. Available: ] https://www.sparkfun.com/products/10724. [Acedido em 17 Outubro 2012]. [44 FreeIMU: designing a free (as in speech) 9 DOM/DOF MARG IMU, Varesano.net, [Online]. ] Available: http://www.varesano.net/blog/fabio/freeimu-designing-free-speech-9-domdof-margimu. [Acedido em 21 Outubro 2012]. [45 Gyro Breakout Board - LISY300AL 300/s Right Angle, Sparkfun Electronics, [Online]. ] Available: https://www.sparkfun.com/products/10122. [Acedido em 16 Outubro 2012]. [46 USDynamics, Spinning Mass Mechanical Gyroscopes, Amityville, New York: ISBN: 631-842] 5600, 2006. [47 Piezoelectric accelerometers theory and application, Metra Mess, 2001. ]

80