Departamento de Engenharia Electrotécnica                   S.A.M.I.S.H.Sistema de Aquisição e Monitorização de Informação...
Curso:Licenciatura em Engenharia Electrotécnica e de ComputadoresTítulo do Projecto:SAMISH - Sistema de Aquisição e Mediçã...
Sistema de Aquisição e Monitorização de Informação Sensorial de um HelicópteroAgradecimentos       A realização deste proj...
Sistema de Aquisição e Monitorização de Informação Sensorial de um HelicópteroResumo       Os veículos aéreos autónomos (U...
Sistema de Aquisição e Monitorização de Informação Sensorial de um HelicópteroAbstract       Unmanned Aerial Vehicle (UAV)...
Sistema de Aquisição e Monitorização de Informação Sensorial de um HelicópteroÍndiceAgradecimentos ..........................
Sistema de Aquisição e Monitorização de Informação Sensorial de um Helicóptero6. Implementação da Estação Base ..............
Sistema de Aquisição e Monitorização de Informação Sensorial de um HelicópteroLista de FigurasFigura 1 - Diagrama de bloco...
Sistema de Aquisição e Monitorização de Informação Sensorial de um HelicópteroFigura 42 - Placa do circuito impresso do nó...
Sistema de Aquisição e Monitorização de Informação Sensorial de um HelicópteroLista de TabelasTabela 1 - Descrição de uma ...
Sistema de Aquisição e Monitorização de Informação Sensorial de um HelicópteroLista de Siglas e AcrónimosACK           Ack...
Sistema de Aquisição e Monitorização de Informação Sensorial de um HelicópteroPC            Personal ComputerPIC          ...
Sistema de Aquisição e Monitorização de Informação Sensorial de um Helicóptero1. Introdução1.1. Contexto e Motivação      ...
Sistema de Aquisição e Monitorização de Informação Sensorial de um Helicóptero1.2. Descrição Global do Projecto       O pr...
Sistema de Aquisição e Monitorização de Informação Sensorial de um Helicóptero1.3. Organização do Trabalho       Neste rel...
Sistema de Aquisição e Monitorização de Informação Sensorial de um Helicóptero2. Conceitos Teóricos       Apresenta-se nes...
Sistema de Aquisição e Monitorização de Informação Sensorial de um Helicóptero       Em 1983, o GPS foi autorizado para ut...
Sistema de Aquisição e Monitorização de Informação Sensorial de um Helicópteroinformações que cada satélite transmite nas ...
Sistema de Aquisição e Monitorização de Informação Sensorial de um Helicópterode funcionalidades não associadas à localiza...
Sistema de Aquisição e Monitorização de Informação Sensorial de um Helicóptero        Na prática, o cálculo da distância é...
Sistema de Aquisição e Monitorização de Informação Sensorial de um Helicóptero   •    Geometria do posicionamento dos saté...
Sistema de Aquisição e Monitorização de Informação Sensorial de um Helicóptero2.1.3.1. Formato das mensagens de saída     ...
Sistema de Aquisição e Monitorização de Informação Sensorial de um Helicóptero                          Tabela 1 - Descriç...
Sistema de Aquisição e Monitorização de Informação Sensorial de um Helicóptero2.2. O Ultra-Som       O som consiste na pro...
Sistema de Aquisição e Monitorização de Informação Sensorial de um Helicópteroultra-sons de alta potência têm como objecti...
Sistema de Aquisição e Monitorização de Informação Sensorial de um Helicóptero   •    Desintegração ultra-sónica        Re...
Sistema de Aquisição e Monitorização de Informação Sensorial de um Helicóptero2.3. Acelerómetro       Um acelerómetro é um...
Sistema de Aquisição e Monitorização de Informação Sensorial de um Helicóptero      Figura 6 - Modelo mecânico de um acele...
Sistema de Aquisição e Monitorização de Informação Sensorial de um Helicóptero       Os acelerómetros com tecnologia MEMS ...
Sistema de Aquisição e Monitorização de Informação Sensorial de um Helicóptero2.4. Giroscópio       A principal função de ...
Sistema de Aquisição e Monitorização de Informação Sensorial de um Helicóptero                     Figura 9 - Giroscópio m...
Sistema de Aquisição e Monitorização de Informação Sensorial de um Helicóptero2.5. Controller Area Network (CAN)       As ...
Sistema de Aquisição e Monitorização de Informação Sensorial de um Helicóptero       Os nós que compõem uma rede CAN segue...
Sistema de Aquisição e Monitorização de Informação Sensorial de um Helicóptero                    Tabela 3 - Camadas do mo...
Sistema de Aquisição e Monitorização de Informação Sensorial de um Helicópterocomo um processo de competição não destrutiv...
Sistema de Aquisição e Monitorização de Informação Sensorial de um Helicóptero              Figura 13 - Ajuste do tempo Ph...
Sistema de Aquisição e Monitorização de Informação Sensorial de um Helicóptero     Tabela 4 - Constituição das tramas de d...
Sistema de Aquisição e Monitorização de Informação Sensorial de um Helicóptero        A trama remota é utilizada para faze...
Sistema de Aquisição e Monitorização de Informação Sensorial de um Helicópterodetecção de um erro nos respectivos casos e ...
Sistema de Aquisição e Monitorização de Informação Sensorial de um Helicóptero3. Ferramentas de Desenvolvimento3.1. IDE MP...
Sistema de Aquisição e Monitorização de Informação Sensorial de um Helicóptero •   can_init() Inicializa o controlador CAN...
Sistema de Aquisição e Monitorização de Informação Sensorial de um Helicóptero3.2. Programador PICKit2       O PICKit2 é d...
Sistema de Aquisição e Monitorização de Informação Sensorial de um Helicóptero3.3. Programa X-CTU       O X-CTU, ilustrado...
Sistema de Aquisição e Monitorização de Informação Sensorial de um Helicópteropermitem configurar um parâmetro de cada vez...
Sistema de Aquisição e Monitorização de Informação Sensorial de um Helicóptero3.4. Microsoft Framework .NET 3.5       A Fr...
Sistema de Aquisição e Monitorização de Informação Sensorial de um Helicópteroextensa documentação existente nas bibliotec...
Sistema de Aquisição e Monitorização de Informação Sensorial de um Helicóptero       Como os componentes ADO.NET são de ap...
Sistema de Aquisição e Monitorização de Informação Sensorial de um Helicóptero4. Módulos XBee PRO 868       A escolha dos ...
Sistema de Aquisição e Monitorização de Informação Sensorial de um Helicóptero       Na Tabela 5 apresenta-se a intensidad...
Sistema de Aquisição e Monitorização de Informação Sensorial de um Helicóptero                  Figura 24 - Antena do tipo...
Sistema de Aquisição e Monitorização de Informação Sensorial de um Helicóptero5. Implementação da Estação Remota          ...
Sistema de Aquisição e Monitorização de Informação Sensorial de um Helicóptero5.1. Funcionalidades dos Nós        De forma...
Sistema de Aquisição e Monitorização de Informação Sensorial de um Helicóptero              Figura 28 - Exemplo das ligaçõ...
Sistema de Aquisição e Monitorização de Informação Sensorial de um Helicóptero5.2. Microcontrolador PIC18F2580       Os mi...
Sistema de Aquisição e Monitorização de Informação Sensorial de um Helicóptero         A flexibilidade na alimentação prop...
FInal Project Report - PT
FInal Project Report - PT
FInal Project Report - PT
FInal Project Report - PT
FInal Project Report - PT
FInal Project Report - PT
FInal Project Report - PT
FInal Project Report - PT
FInal Project Report - PT
FInal Project Report - PT
FInal Project Report - PT
FInal Project Report - PT
FInal Project Report - PT
FInal Project Report - PT
FInal Project Report - PT
FInal Project Report - PT
FInal Project Report - PT
FInal Project Report - PT
FInal Project Report - PT
FInal Project Report - PT
FInal Project Report - PT
FInal Project Report - PT
FInal Project Report - PT
FInal Project Report - PT
FInal Project Report - PT
FInal Project Report - PT
FInal Project Report - PT
FInal Project Report - PT
FInal Project Report - PT
FInal Project Report - PT
FInal Project Report - PT
FInal Project Report - PT
FInal Project Report - PT
FInal Project Report - PT
FInal Project Report - PT
FInal Project Report - PT
FInal Project Report - PT
FInal Project Report - PT
FInal Project Report - PT
FInal Project Report - PT
FInal Project Report - PT
FInal Project Report - PT
FInal Project Report - PT
FInal Project Report - PT
FInal Project Report - PT
FInal Project Report - PT
FInal Project Report - PT
FInal Project Report - PT
FInal Project Report - PT
FInal Project Report - PT
FInal Project Report - PT
FInal Project Report - PT
FInal Project Report - PT
FInal Project Report - PT
FInal Project Report - PT
FInal Project Report - PT
FInal Project Report - PT
FInal Project Report - PT
FInal Project Report - PT
FInal Project Report - PT
FInal Project Report - PT
FInal Project Report - PT
FInal Project Report - PT
FInal Project Report - PT
FInal Project Report - PT
FInal Project Report - PT
FInal Project Report - PT
FInal Project Report - PT
FInal Project Report - PT
FInal Project Report - PT
FInal Project Report - PT
FInal Project Report - PT
FInal Project Report - PT
FInal Project Report - PT
FInal Project Report - PT
FInal Project Report - PT
FInal Project Report - PT
FInal Project Report - PT
FInal Project Report - PT
FInal Project Report - PT
FInal Project Report - PT
FInal Project Report - PT
FInal Project Report - PT
FInal Project Report - PT
FInal Project Report - PT
FInal Project Report - PT
FInal Project Report - PT
FInal Project Report - PT
FInal Project Report - PT
FInal Project Report - PT
FInal Project Report - PT
FInal Project Report - PT
FInal Project Report - PT
FInal Project Report - PT
FInal Project Report - PT
FInal Project Report - PT
FInal Project Report - PT
FInal Project Report - PT
FInal Project Report - PT
FInal Project Report - PT
FInal Project Report - PT
FInal Project Report - PT
FInal Project Report - PT
FInal Project Report - PT
FInal Project Report - PT
FInal Project Report - PT
FInal Project Report - PT
FInal Project Report - PT
FInal Project Report - PT
FInal Project Report - PT
FInal Project Report - PT
Próximos SlideShares
Carregando em…5
×

FInal Project Report - PT

874 visualizações

Publicada em

0 comentários
0 gostaram
Estatísticas
Notas
  • Seja o primeiro a comentar

  • Seja a primeira pessoa a gostar disto

Sem downloads
Visualizações
Visualizações totais
874
No SlideShare
0
A partir de incorporações
0
Número de incorporações
20
Ações
Compartilhamentos
0
Downloads
35
Comentários
0
Gostaram
0
Incorporações 0
Nenhuma incorporação

Nenhuma nota no slide

FInal Project Report - PT

  1. 1. Departamento de Engenharia Electrotécnica S.A.M.I.S.H.Sistema de Aquisição e Monitorização de Informação Sensorial de um Helicóptero Diogo Sousa, nº 042165697 João Cardoso, nº 042165686 Projecto Final de Curso de Licenciatura em Engenharia Electrotécnica e de Computadores Orientadores: Prof. Tito Amaral Prof. Filipe Cardoso Fevereiro/2010
  2. 2. Curso:Licenciatura em Engenharia Electrotécnica e de ComputadoresTítulo do Projecto:SAMISH - Sistema de Aquisição e Medição de Informação Sensorial de umHelicópteroAutores:Diogo Rodrigues de Sousa, nº 042165697 - Ramo de Electrónica e ComputadoresJoão Vitor Ramalho Cardoso, nº 042165686 - Ramo de Electrónica e TelecomunicaçõesOrientador:Prof. Tito Gerardo Batoreo AmaralCo-Orientador:Prof. Filipe Duarte dos Santos CardosoProjecto entregue em:Fevereiro de 2010
  3. 3. Sistema de Aquisição e Monitorização de Informação Sensorial de um HelicópteroAgradecimentos A realização deste projecto final é o culminar de um longo percurso académico,o qual não teria sido possível sem o apoio, ajuda e motivação dos meus pais e família,que sempre estiveram presentes e sempre compreenderam os motivos que me levaram aroubar-lhes tempo para a escola, para o trabalho e para este projecto. Aos colegas e amigos deixo aqui expresso um grande obrigado, por todo o apoioe ajuda, mas principalmente pelos bons momentos e recordações da vida académica. Obrigado aos nossos orientadores, Prof. Tito Amaral e Prof. Filipe Cardoso, poracreditarem em nós e pela vossa orientação e ajuda ao longo do projecto. Por último,mas não menos importantes, obrigado aos encarregados de trabalhos João Silva e RuiPimenta, pela paciência e disponibilidade. João Vitor Ramalho Cardoso Antes de mais gostaria de expressar os meus sinceros agradecimentos a todas aspessoas que, de alguma forma, contribuíram para a realização deste Projecto Final deCurso e de forma mais específica: Ao Prof. Tito Amaral e Prof. Filipe Cardoso, orientadores do projecto, pela suacoordenação, acompanhamento e motivação. Por fim um agradecimento muito especial para os meus pais, amigos e Marisapelo permanente apoio e compreensão em cada momento da elaboração deste projecto. Diogo Rodrigues de Sousa -i-
  4. 4. Sistema de Aquisição e Monitorização de Informação Sensorial de um HelicópteroResumo Os veículos aéreos autónomos (UAV - Unmanned Aerial Vehicle) têm vindo aser utilizados na vigilância e reconhecimento aéreo, onde a intervenção directa do serHumano é impossível, dispendiosa ou perigosa. O helicóptero é o veículo de eleiçãodevido à sua versatilidade dinâmica. No entanto é necessária a correcta aquisição eprocessamento da informação sensorial existente no helicóptero, sendo este o contextodo projecto SAMISH (Sistema de Aquisição e Monitorização de Informação Sensorialde um Helicóptero). O projecto é constituído por duas partes: uma estação remota e uma estaçãobase. A estação remota é constituída por uma rede sensorial que é composta por umGPS, dois sonares, um acelerómetro, um giroscópio e um controlador ligados entre siatravés de uma rede CAN (Controller Area Network). Esta rede consiste numbarramento composto por um par de fios e dois terminadores, proporcionando umacomunicação em série. Os dados são recolhidos pelo nó CAN controlador que processa,e envia os dados sensoriais através de um módulo ZigBee para uma estação base. A estação base consiste numa aplicação para PC, desenvolvida na linguagem C#,que permite a monitorização dos dados sensoriais adquiridos remotamente. O PC,recorrendo a um módulo ZigBee, recebe os dados enviados pela estação remotapermitindo a sua visualização e registo em base de dados. As áreas de aplicação do projecto estendem-se, entre outras, à detecção deincêndios, busca e salvamento e fotografia aérea, sendo para tal necessário adicionar àrede CAN os sensores específicos para cada aplicação.Palavras-chave: veículo autónomo aéreo, GPS, sonar, acelerómetro, giroscópio, CAN,ZigBee, estação remota, estação base. - ii -
  5. 5. Sistema de Aquisição e Monitorização de Informação Sensorial de um HelicópteroAbstract Unmanned Aerial Vehicle (UAV) have seen their applications in surveillanceand aerial recognition in situations where the direct Human intervention is impossible,expensive or dangerous. The helicopter is the vehicle of choice due it´s dynamiccharacteristics. The first step for controlling an unmanned aerial vehicle is the correctacquisition and signal processing of the sensorial network in the helicopter, being thisthe context of the SAMISH project. The project is structured in two parts, a remote station and a base station. Theremote station consists in a sensorial network composed by a GPS, sonar,accelerometer, a gyroscope and a controller node connected by CAN (Controller AreaNetwork). This network consists in a bus with a pair of lines and two terminators ineach end of the bus. The data is acquired and processed by a master CAN node, whichtransmits the sensorial information to a base station via an ZigBee module. The base station consists on a software application, developed in C#, whichallows the monitoring of the acquired sensorial data. The software application receivesthe telemetric data through an ZigBee RF module, connected to a serial port (RS232),and displays the information on the computer screen. This project can be applied in areas, such as fire detection, search and rescue,aerial photograph and others, requiring adding the desired sensors to the CAN networkfor each specific application.Keywords: unmanned aerial vehicle, GPS, sonar, accelerometer, gyroscope, CAN,ZigBee, base station, remote station. - iii -
  6. 6. Sistema de Aquisição e Monitorização de Informação Sensorial de um HelicópteroÍndiceAgradecimentos ................................................................................................................. iResumo ............................................................................................................................. iiAbstract ............................................................................................................................ iiiÍndice ............................................................................................................................... ivLista de Figuras ............................................................................................................... viLista de Tabelas ............................................................................................................. viiiLista de Siglas e Acrónimos ............................................................................................ ix1. Introdução ..................................................................................................................... 1 1.1. Contexto e Motivação ............................................................................................ 1 1.2. Descrição Global do Projecto ................................................................................ 2 1.3. Organização do Trabalho ....................................................................................... 32. Conceitos Teóricos ....................................................................................................... 4 2.1. Sistema de Posicionamento Global........................................................................ 4 2.1.1. Contexto histórico ........................................................................................... 4 2.1.2. Conceitos básicos ............................................................................................ 5 2.1.3. Protocolo NMEA ............................................................................................. 9 2.2. O Ultra-Som ......................................................................................................... 12 2.3. Acelerómetro ....................................................................................................... 15 2.4. Giroscópio ............................................................................................................ 18 2.5. Controller Area Network (CAN) .......................................................................... 20 2.5.1. Características de uma rede CAN .................................................................. 20 2.5.2. Princípio de Funcionamento.......................................................................... 21 2.5.3. Sincronização ................................................................................................ 23 2.5.4. Tipos de Tramas numa Rede CAN ................................................................ 24 2.5.5. Detecção e Tratamento de Erros na Rede ..................................................... 263. Ferramentas de Desenvolvimento .............................................................................. 28 3.1. IDE MPLAB ......................................................................................................... 28 3.2. Programador PICKit2 .......................................................................................... 30 3.3. Programa X-CTU ................................................................................................. 31 3.4. Microsoft Framework .NET 3.5 ........................................................................... 33 3.4.1. Microsoft Visual C# Express ......................................................................... 33 3.4.2. Microsoft SQL Server Compact Edition........................................................ 344. Módulos XBee PRO 868 ............................................................................................. 365. Implementação da Estação Remota ............................................................................ 39 5.1. Funcionalidades dos Nós ..................................................................................... 40 5.2. Microcontrolador PIC18F2580 ........................................................................... 42 5.3. Nó GPS ................................................................................................................ 45 5.4. Nó Sonar .............................................................................................................. 50 5.5. Nó Acelerómetro.................................................................................................. 56 5.6. Nó Giroscópio ...................................................................................................... 64 5.7. Nó Controlador .................................................................................................... 70 - iv -
  7. 7. Sistema de Aquisição e Monitorização de Informação Sensorial de um Helicóptero6. Implementação da Estação Base ................................................................................ 74 6.1. Funcionalidades da aplicação SAMISH .............................................................. 74 6.2. Modularidade de sensores .................................................................................... 76 6.3. Tratamento e visualização de dados .................................................................... 797. Resultados Experimentais .......................................................................................... 85 7.1. Actualização de Dados no Nó Controlador ......................................................... 85 7.1.1. Nó Acelerómetro ........................................................................................... 85 7.1.2. Nó GPS .......................................................................................................... 86 7.1.3. Nó Giroscópio ............................................................................................... 87 7.1.4. Nó Sonar........................................................................................................ 88 7.2. Sinais Processados no Nó Sonar .......................................................................... 89 7.3. Sinais Processados no Nó Giroscópio ................................................................. 91 7.4. Barramento CAN .................................................................................................. 92 7.5. Testes de Cobertura dos Módulos XBee .............................................................. 938. Conclusões e Desenvolvimentos Futuros ................................................................... 96Bibliografia ..................................................................................................................... 97Anexos ............................................................................................................................ 99 Anexo A - Esquemas eléctricos ............................................................................ 100 Anexo B - Placas de circuito impresso.................................................................. 106 Anexo C - Código em C implementado em cada PIC .......................................... 112 Anexo D - Código fonte em C# do software SAMISH......................................... 121 -v-
  8. 8. Sistema de Aquisição e Monitorização de Informação Sensorial de um HelicópteroLista de FigurasFigura 1 - Diagrama de blocos geral do projecto SAMISH. .......................................... 2Figura 2 - Diagrama de blocos pormenorizado do projecto SAMISH. .......................... 2Figura 3 - Constelação dos vinte e quatro satélites do sistema GPS (extraído de [3]). .. 6Figura 4 - Cálculo da posição através da triangulação (extraído de [3]). ....................... 7Figura 5 - Caracterização das gamas de frequência (extraído de [7]). ......................... 12Figura 6 - Modelo mecânico de um acelerómetro (extraído de [12]). .......................... 16Figura 7 - Estrutura de um acelerómetro MEMS (extraído de [13]). ............................ 16Figura 8 - Representação dos três eixos de rotação. ..................................................... 18Figura 9 - Giroscópio mecânico (extraído de [14]). ..................................................... 19Figura 10 - Arquitectura de um nó CAN. ....................................................................... 21Figura 11 - Barramento CAN. ......................................................................................... 22Figura 12 - Segmentação de um bit (extraído de [15]). .................................................. 23Figura 13 - Ajuste do tempo Phase2 do bit (extraído de [17]). ...................................... 24Figura 14 - Ajuste do tempo Phase2 do bit (extraído de [17]). ...................................... 24Figura 15 - Transições de estados dos nós. .................................................................... 27Figura 16 - Janela do IDE MPLAB. ................................................................................ 28Figura 17 - Clone do PICkit2 (em cima) e PICkit2 (em baixo). .................................... 30Figura 18 - Aspecto da janela inicial do X-CTU. ........................................................... 31Figura 19 - Teste de cobertura no X-CTU. ..................................................................... 32Figura 20 - Lista dos parâmetros configuráveis do módulo XBee através do X-CTU. ... 32Figura 21 - Ambiente de desenvolvimento Visual C#.................................................... 34Figura 22 - Aspecto de um módulo XBee PRO 868. ...................................................... 36Figura 23 - Ficha do tipo RPSMA................................................................................... 37Figura 24 - Antena do tipo dipolo simples articulada. ................................................... 38Figura 25 - Diagrama de radiação de um dipolo simples (extraído de [26]). ................. 38Figura 26 - Rede de aquisição de dados. ........................................................................ 39Figura 27 - Exemplo das ligações para a rede CAN. ...................................................... 40Figura 28 - Exemplo das ligações para o PICKit2. ........................................................ 41Figura 29 - Exemplo das ligações para o modo de debug. ............................................. 41Figura 30 - Tranceiver MCP2551 (extraído de [28]). .................................................... 43Figura 31 - Aspecto do receptor GPS U-Blox5 SAM-LS (extraído de [29]). .................. 45Figura 32 - Diagrama de blocos do U-Blox5 SAM-LS (extraído de [29]). ..................... 46Figura 33 - Diagrama de blocos do nó GPS. .................................................................. 47Figura 34 - Fluxogramas do programa do nó GPS. ........................................................ 48Figura 35 - Placa do circuito impresso do nó do GPS em pormenor. ............................ 49Figura 36 - Sonar SRF04 da Devantech (extraído de [30]). ........................................... 50Figura 37 - Ligações do sonar SRF04 (extraído de [30]). .............................................. 50Figura 38 - Diagrama temporal do funcionamento do sonar SRF04 (extraído de [30]). 51Figura 39 - Diagrama de radiação do sonar SFR04 (extraído de [30])........................... 52Figura 40 - Fluxograma do software utilizado no PIC do nó Sonar............................... 53Figura 41 - Diagrama de blocos do nó do sonar. ............................................................ 54 - vi -
  9. 9. Sistema de Aquisição e Monitorização de Informação Sensorial de um HelicópteroFigura 42 - Placa do circuito impresso do nó Sonar. ...................................................... 55Figura 43 - Diagrama de blocos do MMA7270Q (extraído de [31]). ............................. 57Figura 44 - Diagrama de blocos do nó acelerómetro...................................................... 59Figura 45 - Intervalo de tempo entre aquisições do nó Acelerómetro. .......................... 60Figura 46 - Fluxogramas do nó acelerómetro. ................................................................ 61Figura 47 - Janela deslizante de três posições ................................................................ 62Figura 48 - Placa do circuito impresso do nó do Acelerómetro. .................................... 63Figura 49 - Giroscópio EK2-0704 da E-Sky. .................................................................. 64Figura 50 - Sinal de inicialização do giroscópio. ........................................................... 64Figura 51 - Diagrama de blocos do Nó Giroscópio ........................................................ 65Figura 52 - Sinal do giroscópio na posição de repouso (extraído de [33])..................... 66Figura 53 - Fluxograma do programa no microcontrolador do nó Giroscópio. ............. 67Figura 54 - Placa do circuito impresso do nó Giroscópio. ............................................. 69Figura 55 - Fluxogramas do nó Controlador. ................................................................. 70Figura 56 - Placa do circuito impresso do nó Controlador. ............................................ 72Figura 57 - Placa do circuito impresso do emissor XBee. .............................................. 73Figura 58 - Aspecto da janela principal da aplicação SAMISH. .................................... 74Figura 59 - Aspecto da janela de configuração de sensores. .......................................... 76Figura 60 - Diagrama de classes da aplicação SAMISH. ............................................... 78Figura 61 - Sequência de processamento da aplicação SAMISH. ................................. 79Figura 62 - Exemplo de visualização de uma grandeza analógica. ................................ 81Figura 63 - Exemplo de visualização dos dados do GPS. .............................................. 82Figura 64 - Exemplo de evolução temporal da aceleração nos três eixos do sensor. ..... 83Figura 65 - Localização geográfica do receptor GPS no Google Maps ......................... 84Figura 66 - Taxa de actualização dos dados provenientes do nó Acelerómetro............. 85Figura 67 - Taxa de actualização dos dados provenientes do nó GPS. .......................... 86Figura 68 - Taxa de actualização dos dados provenientes do nó Giroscópio. ................ 87Figura 69 - Taxa de actualização dos dados provenientes do nó Sonar. ........................ 88Figura 70 - Eco do sonar (0,5 m). ................................................................................... 89Figura 71 - Eco do sonar (15 cm). .................................................................................. 90Figura 72 - Trigger do sonar. ......................................................................................... 90Figura 73 - Saída do sinal (a) e réplica (b) do sinal amostrado no microcontrolador. ... 91Figura 74 - Sinal transceiver/barramento (a) e PIC/transceiver (b). ............................. 92Figura 75 - Trama completa no barramento CAN (Nó Giroscópio). .............................. 92Figura 76 - Parâmetros configurados no X-CTU para o teste de cobertura. ................... 93Figura 77 - Detalhe da zona e percurso do teste de cobertura dos módulos XBee. ........ 94 - vii -
  10. 10. Sistema de Aquisição e Monitorização de Informação Sensorial de um HelicópteroLista de TabelasTabela 1 - Descrição de uma frase RMC. ..................................................................... 11Tabela 2 - Velocidade do som de acordo com o meio físico (baseado em [9])............ 14Tabela 3 - Camadas do modelo OSI (extraído de [16]). ............................................... 22Tabela 4 - Constituição das tramas de dados numa rede CAN (extraído de [15]). ....... 25Tabela 5 - Intensidade de corrente eléctrica dos módulos XBee (extraído de [21]). .... 37Tabela 6 - Numeração dos identificadores dos nós na rede CAN. ................................ 39Tabela 7 - Selecção da escala do acelerómetro (baseado em [31]). ............................. 57Tabela 8 - Valores de tensão do acelerómetro em repouso. ......................................... 58Tabela 9 - Trama construída no nó Controlador........................................................... 71Tabela 10 - Campos da tabela Sensores. ........................................................................ 76Tabela 11 - Posições da trama recebida. ........................................................................ 80Tabela 12 - Resultados do teste de cobertura dos módulos XBee. ................................. 95 - viii -
  11. 11. Sistema de Aquisição e Monitorização de Informação Sensorial de um HelicópteroLista de Siglas e AcrónimosACK AcknowledgeADC Analog-to-Digital ConverterADO ActiveX Data ObjectANACOM Autoridade Nacional de ComunicaçõesAPI Application Programming InterfaceASIC Application-Specific Integrated CircuitCAN Controller Area NetworkCLR Common Language RuntimeCR Carriage ReturnCRC Cyclic Redundancy CheckCSV Comma Separated ValuesDOD Department of DefenseECU Electronic Control UnitESG Electro Static GyroscopesFOG Fiber Optic GyroscopeGPRMC GPS Recommended Minimum DataGPS Global Positioning SystemI/O Input/OutputIDE Integrated Development EnvironmentISO International Organization for StandardizationLCC Logic Connection ControlLF Line FeedLORAN Long Range Radio Aid to NavigationMAC Media Access ControlMEMS Micro Electro-Mechanical SystemsMIPS Millions of Instructions Per SecondMIT Massachusetts Institute of TechnologyMSDN Microsoft Software Developer NetworkNMEA National Marine Electronics AssociationNMR Nuclear Magnetic ResonanceOSI Open Systems Interconnection - ix -
  12. 12. Sistema de Aquisição e Monitorização de Informação Sensorial de um HelicópteroPC Personal ComputerPIC Peripheral Interface ControllerPPS Precise Positioning ServicePRN Pseudo-Random NoisePVT Position, Velocity, TimeQNAF Quadro Nacional de Atribuição de FrequênciasRAM Random Access MemoryREC Received Error CounterRF Rádio FrequênciaRHCP Right-Hand Circular PolarizationRLG Ring Laser GyroscopeRMC Recommended minimum specific GPS/Transit dataROM Read Only MemoryRPSMA Reverse Polarity SubMiniature version ARTCM Radio Technical Commission for Maritime ServicesRTR Remote Transmission RequestRX ReceptionSAMISH Sistema de Aquisição e Monitorização de Informação Sensorial de um HelicópteroSAW Surface Acoustic WaveSONAR SOund Navigation and RangingSPS Standard Positioning SystemSQL Structured Query LanguageTEC Transmitted Error CounterTX TransmissionUART Universal Asynchronous Receiver-TransmitterUAV Unmanned Aerial VehicleUHF Ultra High FrequencyUML Unified Modeling LanguageUSID Ultrasound IdentificationUTC Universal Time CoordinatedWGS World Geodetic System -x-
  13. 13. Sistema de Aquisição e Monitorização de Informação Sensorial de um Helicóptero1. Introdução1.1. Contexto e Motivação A proliferação de veículos aéreos autónomos (UAV – Unmanned Aerial Vehicle)nos últimos anos tem crescido bastante, em grande parte, na sua vertente militar, mastambém na utilização civil. Este tipo de veículos é indispensável em aplicações onde aintervenção humana é impossível, perigosa ou dispendiosa. As áreas de aplicação,tipicamente relacionadas com a área militar, tendem a dispersar para campos tão distintoscomo a vigilância da mancha florestal, busca e salvamento, fotografia aérea,reconhecimento militar, investigação de fenómenos atmosféricos em grande altitude,comunicação rádio, e mais recentemente na agricultura de precisão. A crescente capacidade de automação e comunicação e a evolução dos materiaisdisponíveis tem permitido a operação destas aeronaves a distâncias e altitudes cada vezmaiores, tornando o seu potencial igual, ou mesmo superior, a outras aeronaves quenecessitam de transportar a bordo os sistemas de apoio à tripulação. Em todos os tipos de utilização destes veículos existe a necessidade de adquirir eprocessar a informação sensorial necessária à navegação autónoma. A motivação do desenvolvimento deste projecto baseia-se na necessidade eutilidade real deste tipo de sistemas nos mais diversos campos de aplicação. Nestecontexto, desenvolveu-se um Sistema de Aquisição e Monitorização de InformaçãoSensorial de um Helicóptero (SAMISH). -1-
  14. 14. Sistema de Aquisição e Monitorização de Informação Sensorial de um Helicóptero1.2. Descrição Global do Projecto O projecto encontra-se dividido em dois blocos funcionais distintos, constituídospela estação remota (hardware de aquisição) e pela estação base (software devisualização), como ilustrado na Figura 1. Figura 1 - Diagrama de blocos geral do projecto SAMISH. Na Figura 2 está ilustrado o diagrama de blocos pormenorizado do projectoSAMISH, onde a estação remota, localizada no helicóptero rádio-controlado, possui ossensores necessários para a medição das grandezas físicas, que permitem caracterizar omovimento e a posição do helicóptero. Este bloco integra um acelerómetro de três eixos,dois sonares, um giroscópio, um receptor GPS e um emissor sem-fios (módulo ZigBee).Cada sensor encontra-se ligado a um barramento CAN, utilizado para a comunicação comum nó controlador. O nó controlador é responsável pela recepção de todas as grandezasenviadas pelos sensores e a sua transmissão via RF (Rádio Frequência) para a estação base. A estação base, constituída por um receptor sem-fios (módulo ZigBee) e umcomputador pessoal (PC), encarrega-se da recepção dos dados sensoriais e da suavisualização e representação gráfica. Figura 2 - Diagrama de blocos pormenorizado do projecto SAMISH. -2-
  15. 15. Sistema de Aquisição e Monitorização de Informação Sensorial de um Helicóptero1.3. Organização do Trabalho Neste relatório descreve-se o detalhe funcional e técnico do projecto desenvolvido,dividindo-se em oito capítulos. No Capítulo 2 são apresentados os conceitos teóricos relacionados com odesenvolvimento do projecto descrito neste relatório, tendo como objectivo dotar o leitordo conhecimento base essencial. No Capítulo 3 são apresentadas e explicadas de forma sucinta as ferramentas dedesenvolvimento, quer software quer de hardware, utilizadas para o desenvolvimento doprojecto exposto neste relatório. No Capítulo 4 são apresentadas as características e os motivos que levaram aescolher os módulos XBee PRO 868 para a comunicação sem fios. No Capítulo 5, é apresentado em pormenor a implementação da estação base, maispropriamente, as características de cada um dos sensores utilizados e dos nós sensoriaisdesenvolvidos para integrarem na rede CAN implementada para as comunicações naestação base. No Capítulo 6 são apresentadas as características e funcionalidades da aplicaçãodesenvolvida em C# para a monitorização das informações sensoriais recebidas da estaçãoremota, implementada no helicóptero. No Capítulo 7 são apresentados os resultados experimentais do conjunto de testesrealizados para verificar o funcionamento e desempenho do sistema de aquisição emonitorização desenvolvido. No Capítulo 8 apresentam-se as conclusões sobre o estado de maturidade doprojecto e a sua implementação em bases comerciais, apresentando-se sugestões paraevoluções futuras do mesmo, com base na experiência adquirida ao longo da suarealização. -3-
  16. 16. Sistema de Aquisição e Monitorização de Informação Sensorial de um Helicóptero2. Conceitos Teóricos Apresenta-se neste capítulo os conceitos teóricos associados a cada sensor existentena estação remota e ao funcionamento de uma rede CAN.2.1. Sistema de Posicionamento Global O Sistema de Posicionamento Global, GPS (Global Positioning System), controladopelo Departamento de Defesa dos Estados Unidos da América, permite a localização, numplano tridimensional do globo terrestre, de um receptor GPS. Uma constelação constituídaactualmente por trinta satélites em seis órbitas distintas, providencia o posicionamentogeoespacial, com cobertura a nível global, necessário ao funcionamento do GPS [1]. Os sinais rádio enviados pelos satélites permitem a um receptor GPS obterinformação sobre a sua localização, velocidade, direcção, referência de tempo e outrasinformações de navegação. Estas informações são utilizadas nas mais diversas aplicações,abrangendo desde a navegação automóvel a aplicações de uso militar [1].2.1.1. Contexto histórico O desenvolvimento e utilização de sistemas de posicionamento utilizando sinaisrádio, remontam ao início da Segunda Guerra Mundial. Os primeiros sistemasdesenvolvidos utilizavam estações base com emissores de longo alcance em baixasfrequências. Sistemas como o LORAN (Long Range Radio Aid to Navigation), Omega eDecca foram os predecessores terrestres do actual sistema de posicionamento global eimpulsionaram tecnologicamente o seu aparecimento. Inicialmente, desenvolvido para usos estritamente militares pelo Departamento deDefesa (DOD) Norte-Americano, Ivan Getting e o Massachusetts Institute of Technology(MIT), o sistema GPS consistia numa constelação de onze satélites e ficou operacional noano 1978. A ideia de tal sistema surgiu vários anos antes, mais precisamente em 1957, apóso lançamento do satélite russo Sputnik, o primeiro satélite artificial lançado em 4 deOutubro de 1957. Uma equipa de investigadores do MIT reparou que, devido ao Efeito deDoppler, o sinal rádio emitido pelo Sputnik, aumentava a sua frequência à medida que seaproximava da posição dos investigadores e diminuia quando se afastava. Assim, a equipaconseguiu determinar a órbita exacta descrita pelo satélite artificial. -4-
  17. 17. Sistema de Aquisição e Monitorização de Informação Sensorial de um Helicóptero Em 1983, o GPS foi autorizado para utilização civil pelo Presidente Norte-Americano Ronald Reagan, em resposta ao incidente envolvendo o abatimento de umavião comercial de uma companhia aérea Sul-Coreana, após entrar erradamente em espaçoaéreo Soviético. Em 1990 com o início da primeira Guerra do Golfo, o uso civil do sistemaGPS foi interdito, só sendo restabelecido em 1993, bem como a decisão de utilização livrede custos a nível global. Em 1995 com a activação do último dos vinte e quatro satélites em órbita, o sistemaGPS ficou completamente activo. Desde então, têm sido realizadas diversas melhoriastecnológicas, incluindo o lançamento de seis satélites adicionais, que aumentaramsubstancialmente, a fiabilidade e precisão de todo o sistema. Inicialmente, a resolução doGPS permitia a localização de um receptor com um erro máximo de cem metros, sendoagora na ordem dos dez a quinze metros. Com a utilização adicional de referênciasterrestres é possível chegar a resoluções da ordem das poucas dezenas de centímetros [2].2.1.2. Conceitos básicos2.1.2.1. Princípio de funcionamento e aplicações O GPS é formado por dois segmentos principais: o espacial e o terrestre. Osegmento espacial é constituído por vinte e quatro satélites, posicionados em seis órbitasdiferentes, quatro em cada órbita, Figura 3. Cada satélite GPS percorre a sua órbita emtorno do globo em doze horas, a uma altitude de cerca de 20.000 km. O segmento terrestre é dividido em dois subsegmentos: o segmento de controlo e osegmento de utilizador. O segmento de controlo é assegurado pelo Departamento deDefesa Norte-Americano a partir de uma base Master localizada no Colorado (E.U.A.).Com o auxílio de outras cinco estações de monitorização espalhadas pelo solo terrestre, osegmento de controlo é responsável por processar os dados enviados pelos satélites etransmitir de volta sinais de controlo e correcção. O segmento de utilizador é composto pelos utilizadores dos diversos receptoresGPS espalhados pela Terra, seja na forma civil (SPS – Standard Positioning System) ou naforma militar (PPS – Precise Positioning System). Os satélites GPS transmitem dois sinais de rádio de baixa potência, na banda L. Osreceptores GPS civis usam a frequência L1 de 1575,42 MHz em UHF (Ultra-HighFrequency). O sinal L2 de 1227,6 MHz, é encriptado e apenas disponível paraequipamento militar, permitindo maior precisão na localização geoespacial. As -5-
  18. 18. Sistema de Aquisição e Monitorização de Informação Sensorial de um Helicópteroinformações que cada satélite transmite nas suas duas portadoras (L1 e L2) são: “código deidentidade” (um código pseudo-aleatório), dados de efeméride (posição de um objectoastronómico no espaço) e dados de almanaque (informação sobre a órbita de cada satélite eoutras informações de estado). O código de identidade (PRN - Pseudo-Random Noise)identifica qual o satélite que está a transmitir. Usa-se como referência dos satélites os seusPRN, de um a trinta e dois. O código pseudo-aleatório permite que todos os satélites dosistema partilhem a mesma frequência sem interferências [3]. Figura 3 - Constelação dos vinte e quatro satélites do sistema GPS (extraído de [3]). As aplicações do GPS podem ser catalogadas em três grandes áreas: aérea,marítima e terrestre. A história do GPS está intimamente ligada com a aviação.Actualmente, o sistema é utilizado tanto na aviação militar, como na aviação civil, paraefeitos de navegação. Quanto à utilização marítima do GPS este está tipicamente associado à navegaçãode barcos de recreio, embarcações de pesca e transporte de cargas.Nos últimos anos, uma das áreas onde se tem observado maiores desenvolvimentos ecrescente penetração no mercado é a utilização terrestre do GPS, mais concretamente nanavegação automóvel. Contudo, existem outras aplicações terrestres do uso do GPS, como por exemplo, omontanhismo, a caça e o ciclismo. Existem no entanto, utilizações do GPS que fazem uso -6-
  19. 19. Sistema de Aquisição e Monitorização de Informação Sensorial de um Helicópterode funcionalidades não associadas à localização do receptor, como infra-estruturas detelecomunicações, por exemplo, para efeitos de sincronização e medições astronómicasque utilizam o relógio de alta precisão do GPS.2.1.2.2. Cálculo da posição Um receptor GPS necessita de adquirir o sinal de pelo menos três satélites paracalcular a sua posição num plano bidimensional. Isto é, dois para as coordenadas delatitude e longitude e um terceiro para o sincronismo do relógio. Por analogia, para obterum posicionamento num plano tridimensional são necessários os sinais de pelo menosquatro satélites. Satélites adicionais podem ser utilizados para garantir a fiabilidade,robustez do funcionamento do receptor e minimizar o erro. Para determinar a sua posição, um receptor GPS determina a sua distância aosatélite através da medição precisa do tempo que os sinais emitidos pelo satélite levam achegar ao próprio receptor. Como o sinal enviado por cada satélite fornece a sua posição eo momento preciso em que o sinal foi enviado, é possível determinar a latitude, longitude eelevação a partir dos sinais recebidos de quatro satélites, três para o posicionamento(latitude, longitude e altitude) e um satélite adicional para o sincronismo de relógio. A Figura 4 ilustra o cálculo da posição através da triangulação. Em teoria, adistância R1 pode ser calculada multiplicando o tempo que o sinal demora a chegar pelavelocidade a que este viaja (a velocidade da luz) [3]. Figura 4 - Cálculo da posição através da triangulação (extraído de [3]). -7-
  20. 20. Sistema de Aquisição e Monitorização de Informação Sensorial de um Helicóptero Na prática, o cálculo da distância é determinado recorrendo a cálculos maissofisticados, de forma a corrigir/compensar as diversas fontes de erros no sistema GPS, taiscomo: • Atrasos na ionosfera e troposfera Os atrasos estão relacionados com a velocidade de propagação nos diferentes meios. No entanto, o sistema é capaz de calcular uma média do atraso para corrigir parcialmente este tipo de erro; • Sinal com caminhos múltiplos Ocorre quando o sinal GPS é reflectido por objectos como prédios altos ou montanhas, antes de alcançarem o receptor, provocando desvanecimento; • Erros do relógio do receptor O relógio interno do receptor não é tão preciso quanto o relógio atómico dos satélites GPS, provocando erros na medição do tempo; • Erros de órbita Os erros de órbita, também conhecidos como erros de efeméride, representam erros nas informações das posições dos satélites; • Número de satélites visíveis Quanto mais satélites um receptor GPS puder “observar” no céu, melhor será a precisão. Prédios, terrenos, interferências electrónicas ou uma cobertura densa de uma floresta, por exemplo, podem bloquear a recepção do sinal, causando erros de posição ou possivelmente, nenhuma leitura de posição no receptor. Normalmente os receptores GPS não funcionam no interior de casas ou outras coberturas, debaixo de água ou da terra; -8-
  21. 21. Sistema de Aquisição e Monitorização de Informação Sensorial de um Helicóptero • Geometria do posicionamento dos satélites Refere-se à posição relativa dos satélites em qualquer instante. A geometria ideal de um satélite é alcançada quando o ângulo que o separa dos restantes é maior. Uma geometria propícia a erros ocorre quando os satélites estão alinhados em linha recta ou num grupo bastante próximo. Em aplicações específicas, os receptores GPS disponibilizam ao utilizador mais doque as coordenadas da sua localização. Estas restantes informações, como velocidade,direcção e outros dados de navegação, são calculadas pelo próprio receptor, com base nainformação da localização em medições consecutivas [3].2.1.3. Protocolo NMEA O protocolo NMEA 0183, normalmente designado apenas por NMEA (NationalMarine Electronics Association), descreve um conjunto de mensagens de entrada e saída,utilizadas na comunicação com um receptor GPS. Este protocolo tornou-se um standard daindústria de receptores GPS [4]. Para além disso, existem alguns protocolos proprietários,como por exemplo, o protocolo GARMIN, que permitem o acesso a funções específicas deum determinado modelo. Neste contexto desenvolve-se apenas a utilização do protocolo NMEA nosreceptores GPS apesar de este especificar, de forma genérica, a forma de comunicaçãoentre instrumentos electrónicos marítimos, como sonares, anemómetros, GPS ou piloto-automático de navios. Ao nível da camada física, a especificação NMEA recomenda a conformidade como standard EIA-422, apesar de a maioria dos receptores GPS disponibilizarem apenas umaou duas interfaces RS-232. A camada de aplicação (dados) consiste num conjunto de frases onde são reunidasinformações específicas referentes ao tipo instrumento. No caso de um receptor GPS, asfrases NMEA disponibilizam dados de posição, número de satélites aos quais se encontraligado, entre outros. -9-
  22. 22. Sistema de Aquisição e Monitorização de Informação Sensorial de um Helicóptero2.1.3.1. Formato das mensagens de saída Uma mensagem ou frase NMEA é composta por: • Símbolo de dólar ($); • Identificador da frase (command word); • Dados separados por vírgula (data words); • Símbolo asterisco (*); • Checksum da frase.Segue-se um exemplo da estrutura de uma frase NMEA: “$GP<dados>*<checksum> De notar que todos os identificadores de frase no protocolo NMEA, relacionadoscom equipamentos GPS começam com os caracteres “$GP” [4].2.1.3.2. Informação mínima recomendada para navegação GPS (RMC) A frase RMC (Recommended minimum specific GPS/Transit data) disponibiliza ainformação mínima necessária à navegação por GPS. Este conjunto mínimo de elementos énormalmente constituído pela posição, velocidade e tempo, designado por PVT (Position,Velocity, Time). Apresenta-se de seguida um exemplo de uma frase RMC:$GPRMC,200203.00,A,3831.31320,N,00850.34572,W,0.213,170.79,270709,,,A*7C Na Tabela 1 apresenta-se a composição em detalhe de cada elemento da frase RMCdo protocolo NMEA. - 10 -
  23. 23. Sistema de Aquisição e Monitorização de Informação Sensorial de um Helicóptero Tabela 1 - Descrição de uma frase RMC. Nome Exemplo Descrição Identificador $GPRMC Identificador da mensagem RMC Hora UTC 200203.00 hhmmss.sss Estado A A = dados válidos, V = dados inválidos Latitude 3831.31 ddmm.mmmm Indicador N/S N N = Norte, S = Sul Longitude 850.35 dddmm.mmmm Indicador E/W W E = Este, W = Oeste Speed over ground [nós] 0.213 Course over ground [º] 170.79 Data 270709 Ddmmyy Variação magnética n/a Não aplicável Modo A A = Autónomo, D = GDPS, E = DR Checksum *7C <CR><LF> <CR><LF> Fim de mensagem Os dados relativos à localização no protocolo NMEA (latitude e longitude) sãodefinidos utilizando o sistema de coordenadas WGS-84 (World Geodetic System 1984) [5]. - 11 -
  24. 24. Sistema de Aquisição e Monitorização de Informação Sensorial de um Helicóptero2.2. O Ultra-Som O som consiste na propagação de uma frente de compressão mecânica em meiosmateriais com massa e elasticidade, como o ar, a água, os gases, etc., com excepção dovácuo. Um som puro monotónico caracteriza-se por ser um sinal sinusoidal com umafrequência e uma amplitude constantes. Contudo, os sons são na sua maior partecombinações de sinais [6]. A gama de frequências audíveis pelo Homem situa-se entre os 20 Hz e os 20 kHz,estando acima e abaixo desta gama de frequências os ultra e os infra-sons respectivamente,como se pode ver na Figura 5. Figura 5 - Caracterização das gamas de frequência (extraído de [7]). As ondas ultra-sónicas são geradas por transdutores ultra-sónicos. Um transdutortem como objectivo a transformação de um determinado tipo de energia num outro tipo deenergia, no caso dos ultra-sons é a transformação de energia eléctrica em energia mecânicae vice-versa. Estes transdutores são feitos de materiais piezoeléctrico que apresentam umfenómeno chamado efeito piezoeléctrico que foi descoberto por Pierre e Jacques Curie em1880 [8]. Este fenómeno consiste na variação das dimensões físicas de certos materiaisquando sujeitos a campos eléctricos, bem como a criação de electricidade quando estesmateriais são sujeitos a variações de pressão provenientes, por exemplo, de uma ondasonora. Esta característica permite a utilização do mesmo transdutor quer para a emissãocomo para a recepção de sinais, sejam estes ultra-sónicos ou de outra natureza. Como o ultra-som está fora da gama de frequências perceptíveis pelo ser humano,podem ser aplicados em diversas situações com uma intensidade bastante elevada. Asaplicações do ultra-som de baixa potência têm como propósito a transmissão de energiaatravés de um determinado meio para obter informação sobre o mesmo. As aplicações dos - 12 -
  25. 25. Sistema de Aquisição e Monitorização de Informação Sensorial de um Helicópteroultra-sons de alta potência têm como objectivo produzir alterações no meio através do qualse propagam as ondas ultra-sónicas. Alguns exemplos de aplicações dos ultra-sons são [7]: • Diagnóstico e tratamento na medicina O diagnóstico baseia-se na reflexão das ondas ultra-sónicas para a criação de uma imagem em tempo real da zona que está a ser analisada, fornecendo um meio de diagnóstico mais seguro do que os meios de radiação ionizante por ser um método não invasivo. O exemplo mais conhecido são as ecografias. As ondas ultra-sónicas de alta potência têm aplicações no tratamento de algumas doenças, devido à sua característica destrutiva do meio onde as ondas se propagam; • Limpeza ultra sónica Com ondas ultra-sónicas, geralmente na gama dos 20 kHz aos 40 kHz, é possível proceder à limpeza de joalharia, lentes, instrumentos cirúrgicos, etc. Este tipo de limpeza consiste na vibração das partículas de sujidade, quando sujeitas às ondas ultra-sónicas, nas cavidade microscópicas do objecto a ser limpo, fazendo com que estas se libertem do objecto; • Identificação ultra-sónica A identificação por ultra-sons (USID – Ultrasound Identification) baseia-se num sistema de localização em tempo real, utilizado para monitorizar e identificar a localização de diversos objectos, recorrendo a uma rede composta por vários nós com identificadores embebidos nos objectos, que emitem ondas ultra-sónicas e microfones para a detecção da localização dos mesmos; • Química Consiste na utilização das ondas ultra-sónicas para a separação de camadas que constituem uma molécula, através da pressão ou temperatura gerada pela aplicação das ondas ultra-sónicas à solução aquosa em que se encontram as moléculas. Este tipo de aplicação baseia-se mais no comprimento de onda das ondas ultra-sónicas do que propriamente na sua intensidade; - 13 -
  26. 26. Sistema de Aquisição e Monitorização de Informação Sensorial de um Helicóptero • Desintegração ultra-sónica Recorrendo à combinação de intensidade e comprimento de onda de ondas ultra- sónicas, consegue-se desintegrar um vasto número de meios, desde bactérias a betão, bem como alterar o estado físico de certos materiais, passando-os do estado sólido para o estado líquido. No projecto descrito neste relatório a aplicação dos ultra-sons tem como objectivo adetecção de distâncias. Este tipo de aplicação também é conhecido como SONAR (SOundNAvigation and Ranging). A utilização de ultra-sons como SONAR consiste na criação, por parte detransdutores, de uma ou um conjunto de ondas ultra-sónicas numa direcção bem definida.Quando um objecto é detectado na área em que foram transmitidas as ondas ultra-sónicas,um eco é reflectido de volta para o emissor devido ao choque das ondas enviadas com oobjecto que se encontra no seu caminho. Medindo a diferença de tempo entre o momentoda transmissão das ondas ultra-sónicas e da recepção do eco é possível determinar a quedistancia se encontra o objecto do ponto de emissão. O tempo entre o envio e recepção estácondicionado pela temperatura e pelo meio físico em que se propagam as ondas ultra-sónicas. A Tabela 2 mostra a relação entre a temperatura e a densidade do meio físico coma velocidade do som para algumas substâncias. Tabela 2 - Velocidade do som de acordo com o meio físico (baseado em [9]). Velocidade Coeficiente Densidade Meio Físico Substância Referência [m/s] Temperatura [m/s ºC] [g/cm3] Ar 331.45 0.59 -- Gases Oxigénio 316.00 0.56 -- Hidrogénio 1284.00 2.20 -- Água 1496.70 -2.40 -- Líquidos Benzeno 1295.00 4.65 -- Éter Etílico 985.00 4.87 -- Prata 2680.00 -- 10.40 Sólidos Ferro 5200.00 -- 7.85 Mármore 3810.00 -- 2.60 - 14 -
  27. 27. Sistema de Aquisição e Monitorização de Informação Sensorial de um Helicóptero2.3. Acelerómetro Um acelerómetro é um dispositivo electromecânico que mede a aceleração a queuma massa de prova é sujeita. Este tipo de dispositivos pode ser utilizados para medir aintensidade da aceleração, bem como a sua direcção e orientação. Com aplicações no ramoda engenharia, medicina, navegação, transportes e electrónica de consumo, osacelerómetros tornaram-se um instrumento de medida bastante popular, graças aos avançostecnológicos no seu processo de fabrico [10]. Existem diversos tipos de acelerómetros divididos em dois grandes grupos:mecânicos e de estado sólido. Os acelerómetros mecânicos, já bastante desenvolvidostornaram-se obsoletos em aplicações modernas, face às melhorias constantes no processode fabrico de dispositivos de estado sólido. Estes utilizam uma massa de prova acoplada aum dinamómetro na mesma direcção da aceleração que se quer medir [10]. Os acelerómetros de estado sólido englobam componentes como os acelerómetrospiezoeléctricos, acelerómetros SAW (Surface Acoustic Wave) e mais recentemente osacelerómetros embebidos no silício, através de técnicas MEMS (Micro Electro-MechanicalSystems). A tecnologia de fabrico MEMS consiste num processo de fabrico que juntaelementos mecânicos como membranas, molas e sistemas cantilever (tipo de construçãoapoiado em um só ponto, como por exemplo a asa de um avião ou uma prancha de piscina)à escala da micro-electrónica, sendo assim possível a sua integração no substrato de silíciode dispositivos de estado sólido. Tipicamente, os elementos micro-mecânicos são inferioresa 100 µm e são construídos num processo de micro-fabricação, oposto ao processo demaquinaria convencional. Um acelerómetro MEMS é composto por uma massa de prova que se desloca emrelação à sua frame de referência, através de pratos com amortecimento. Na Figura 6apresenta-se o diagrama mecânico simplificado de um acelerómetro. A Figura 7 ilustra odesenvolvimento do acelerómetro utilizando a tecnologia MEMS [11]. - 15 -
  28. 28. Sistema de Aquisição e Monitorização de Informação Sensorial de um Helicóptero Figura 6 - Modelo mecânico de um acelerómetro (extraído de [12]). Figura 7 - Estrutura de um acelerómetro MEMS (extraído de [13]). - 16 -
  29. 29. Sistema de Aquisição e Monitorização de Informação Sensorial de um Helicóptero Os acelerómetros com tecnologia MEMS têm sido os impulsionadores daproliferação dos acelerómetros na electrónica de consumo como portáteis, leitores de MP3e telemóveis. A tecnologia MEMS revolucionou o uso de airbags na indústria automóvelnos anos 90. Os acelerómetros micro-maquinados fornecem uma solução de baixoconsumo, compacta e robusta. No contexto deste projecto, o acelerómetro de três eixos (x, y e z) é utilizado comoparte integrante de um sistema de navegação inercial, com vista a obter um plano dereferência estabilizado do helicóptero. - 17 -
  30. 30. Sistema de Aquisição e Monitorização de Informação Sensorial de um Helicóptero2.4. Giroscópio A principal função de um giroscópio é determinar a velocidade angular de umcorpo, ou seja, a quantidade de rotação produzida pelo corpo por unidade de tempo [14]. Esta rotação está tipicamente associada a um dos três eixos ilustrados na Figura 8,que são o eixo da rotação da direcção sobre o plano horizontal, inclinação lateral sobre umplano horizontal e inclinação frontal sobre um plano horizontal. Os giroscópios podemtambém ser utilizados para medir o ângulo que um determinado corpo faz em relação a umoutro corpo, objecto ou superfície. Figura 8 - Representação dos três eixos de rotação. Os giroscópios são cada vez mais utilizados como sensores com a função decumprirem algumas tarefas em sistemas de navegação, de piloto automático e estabilizaçãode plataformas, tirando partido da sua capacidade de se oporem às forças exteriores a quesão sujeitos. Os primeiros giroscópios faziam uso das propriedades inerciais de um rotor a rodara alta velocidade num eixo principal (giroscópios mecânicos), de tal modo que o eixo ondese encontra o rotor continua a apontar sempre na mesma direcção, apesar dos círculosarticulados (Gimbals) em volta deste eixo movimentarem-se em oposição às forçasexteriores aplicadas ao giroscópio [14], Figura 9. - 18 -
  31. 31. Sistema de Aquisição e Monitorização de Informação Sensorial de um Helicóptero Figura 9 - Giroscópio mecânico (extraído de [14]). Actualmente as técnicas de fabrico de giroscópios são em tudo semelhantes àstécnicas usadas no fabrico dos acelerómetros, destacando-se [14]: • Transdutores com esferas de mercúrio; • Sensores magneto-hidrodinâmicos; • Giroscópios de efeito vibratório (que podem utilizar por exemplo materiais piezoeléctricos); • Giroscópios NMR (Nuclear Magnetic Resonance); • Giroscópios Electrostáticos (ESG – ElectroStatic Gyroscopes); • Sensores de efeito óptico que incluem os dispositivos RLG (Ring Laser Gyroscope) e o FOG (Fiber Optic Gyroscope). - 19 -
  32. 32. Sistema de Aquisição e Monitorização de Informação Sensorial de um Helicóptero2.5. Controller Area Network (CAN) As redes CAN (Controller Area Network) foram desenvolvidas no seio da indústriaautomóvel, para dar resposta à crescente complexidade dos sistemas electrónicosconhecidos como ECU´s (Electronic Control Unit), existentes num veículoautomóvel [15]. As ECU´s mais não são que sistemas computacionais que têm sidogradualmente incluídos nos automóveis, muitas vezes associadas a sensores, para geriremdiversas funções do motor, facilitar a condução, aumentar a segurança, proporcionar maisconforto aos ocupantes, etc. A necessidade de comunicação entre as várias ECU´sincluídas no automóvel fez com que fosse utilizado cada vez um maior número de fiosneste, para a comunicação entre as diversas ECU´s. De forma a simplificar as ligações entre as diversas ECU´s, a Bosch, em meadosdos anos 80, desenvolveu o protocolo de comunicação CAN. Este permitiu reduzir aquantidade de fios utilizados, recorrendo a um barramento constituído somente por um parde fios endereçados como uma linha de dados série. Posteriormente o protocolo CAN tornou-se na norma internacional ISO 11898 [16](International Organization for Standardization) e o seu licenciamento para odesenvolvimento e criação de microcontroladores e outros dispositivos compatíveis com anorma, dando origem à actual vasta gama de dispositivos que incorporam esta tecnologiacomo um meio de comunicação simples, modular e robusto, com velocidades até 1 Mbit/s. As redes CAN são utilizadas nos dias de hoje em várias áreas de aplicação como aindústria, automação, domótica, aviação, robótica, etc.2.5.1. Características de uma rede CAN De entre as características principais de uma rede CAN, salientam-se asseguintes [17]: • Taxa de comunicação até 1 Mbit/s; • Comunicação a dois fios; • Custo e complexidade de implementação reduzidos; • Possibilidade de comunicações ponto a ponto, multi-ponto ou difusão; • Mecanismos de detecção e correcção de erros; • Tolerância a falhas de hardware; • Flexibilidade de adição ou remoção de nós na rede. - 20 -
  33. 33. Sistema de Aquisição e Monitorização de Informação Sensorial de um Helicóptero Os nós que compõem uma rede CAN seguem uma arquitectura que consiste numprocessador, num controlador CAN e num transceiver, como ilustrado na Figura 10 [16]. Figura 10 - Arquitectura de um nó CAN.2.5.2. Princípio de Funcionamento O protocolo CAN implementa as camadas 1 e 2, camada física e camada de ligaçãode dados respectivamente, do modelo OSI (Open Systems Interconnection) [16],apresentado na Tabela 3. - 21 -
  34. 34. Sistema de Aquisição e Monitorização de Informação Sensorial de um Helicóptero Tabela 3 - Camadas do modelo OSI (extraído de [16]). Responsabilidade Camada Descrição 7 – Aplicação Serviços relacionados com a aplicação 6 – Apresentação Formata a informação Sistema 5 – Sessão Mantém o diálogo entre os dispositivos em comunicação 4 – Transporte Transferência de mensagens 3 – Rede Estabelecimento, manutenção e corte das ligações de rede Rede 2 – Ligação de dados Gestão do fluxo de informação num mesmo meio 1 – Físico Transmite a informação para o meio físico Na camada de ligação de dados operam duas sub-camadas, a sub-camada deControlo Lógico de Ligação (LCC – Logic Connection Control) e a sub-camada deControlo de Acesso ao Meio (MAC – Media Access Control) [17]. A LCC é a responsávelpela recepção, filtragem e recuperação de dados enquanto a sub-camada MAC éresponsável pela detecção de falhas e pela sinalização e verificação de erros. É na camada física que é feita a ligação propriamente dita com o barramento, ondesão definidas as características de transporte, tais como os níveis de tensão e impedânciadas linhas de comunicação do barramento. A codificação e descodificação de bit tambémsão feitas nesta camada. Na Figura 11 está representado um barramento CAN, que é composto por dois fiosde comunicação e dois terminadores, que mais não são que duas resistências com a mesmaimpedância dos fios utilizados para as linhas de dados, de forma a garantir a adaptação deimpedância. CANH 120Ω 120Ω CANL Figura 11 - Barramento CAN. O barramento pode assumir três estados [17]: o estado idle, o dominante e orecessivo. No estado idle não existe nenhuma informação no barramento, enquanto oestado dominante é o que se sobrepõe ao estado recessivo, caso se verifique um acessomúltiplo por parte dos nós ao barramento. Esta característica pode também ser definida - 22 -
  35. 35. Sistema de Aquisição e Monitorização de Informação Sensorial de um Helicópterocomo um processo de competição não destrutivo ao nível do bit, em que o acesso aobarramento é concedido à mensagem mais prioritária, com a menor latência possível.Quando um nó ganha o acesso ao barramento (dominante) e interrompe a transmissão deum outro nó (recessivo), este retoma o acesso ao barramento assim que o nó dominantetermine a comunicação [17].2.5.3. Sincronização No protocolo de comunicação CAN existem dois mecanismos de sincronização: asincronização forçada e a re-sicronização [15]. A sincronização forçada dá-se quando um nó se encontra no modo de recepção e édetectada uma transição de estado recessivo para dominante no barramento [17]. A re-sicronização consiste na mudança automática dos parâmetros do tempo de bitde acordo com o momento em que ocorre a transição de estado recessivo/dominante nobarramento [17]. O tempo de bit é composto por várias secções temporais, como ilustradona Figura 12. Figura 12 - Segmentação de um bit (extraído de [15]). Sync é a detecção de mudança de estado no barramento CAN, Prop é o tempo deguarda para compensar os atrasos inerentes á propagação da informação no meio físico eos campos Phase1 e Phase2 correspondem aos tempos ajustáveis automaticamente para are-sincronização, de forma a optimizar o ponto de amostragem (Sample Point), momentoem que o bit é interpretado [16]. Caso a re-sincronização se dê demasiado cedo, o tempoPhase2 do bit é encurtado, como ilustrado na Figura 13, caso seja tarde demais o tempoPhase1 do bit é alargado, como ilustrado Figura 14 [17]. - 23 -
  36. 36. Sistema de Aquisição e Monitorização de Informação Sensorial de um Helicóptero Figura 13 - Ajuste do tempo Phase2 do bit (extraído de [17]). Figura 14 - Ajuste do tempo Phase2 do bit (extraído de [17]).2.5.4. Tipos de Tramas numa Rede CAN Existem quatro tipos de tramas numa rede CAN: dados, remota, de erro e desobrecarga [17]. As tramas de dados numa rede CAN podem ser a trama base (CAN 2.0A) e a tramaestendida (CAN 2.0B). A diferença entre estes dois tipos de tramas é o número de bitsutilizados no identificador, sendo de 11 bits no caso da trama base e de 29 bits no caso datrama estendida, mais um bit reservado na trama estendida. A composição de cada tramapode ser observada na Tabela 4. A compatibilidade entre as tramas do tipo CAN2.0B e as CAN2.0A é garantidaatravés dos controladores utilizados para implementar a rede CAN, pois estes têm acapacidade de ignorar o segundo identificador das tramas do tipo CAN2.0B [17]. - 24 -
  37. 37. Sistema de Aquisição e Monitorização de Informação Sensorial de um Helicóptero Tabela 4 - Constituição das tramas de dados numa rede CAN (extraído de [15]). Trama Base ou CAN 2.0A Tamanho Campo Descrição [bits]Start of Frame (SOF) 1 Sinaliza o inicio da transmissão da trama Identificador 11 Identificador único da tramaRemote Transmission 1 Bit dominante request (RTR)Identifier extension bit 1 Bit dominante (IDE) Reserved bit (R0) 1 Bit dominante ou recessivo Data lenght code 4 Número de bytes a ser transmitido (0-8) (DLC) Dados 64 Dados a serem transmitidos, que podem variar de 0 a 8 bytes Cyclic Redundancy 15 Controlo de erros Check (CRC) ACK 1 Sinalização de recepção da mensagem ACK 2 1 Sinalização da recepção da mensagem, obrigatoriamente 1End of Frame (EOF) 15 Obrigatoriamente recessivo Trama Estendida ou CAN 2.0B Tamanho Campo Descrição [bits] SOF 1 Sinaliza o inicio da transmissão da trama Identificador A 11 Primeira parte do identificador único da trama Subscrive Remote 1 Campo recessivo opcional Request (SRR) IDE 1 Bit recessivo Identificador B 18 Segunda parte do identificador único da trama RTR 1 Bit dominanteReserver bits (R0, R1) 2 Bits reservados DLC 4 Número de bytes a ser transmitido (0-8) Dados 64 Dados a serem transmitidos, que podem variar de 0 a 8 bytes CRC 15 Controlo de erros CRC 2 1 Bit recessivo ACK 1 Sinalização de recepção da mensagem ACK 2 1 Sinalização da recepção da mensagem EOF 7 Obrigatoriamente recessivo - 25 -
  38. 38. Sistema de Aquisição e Monitorização de Informação Sensorial de um Helicóptero A trama remota é utilizada para fazer o pedido de transmissão de dados ao invés doenvio de dados, em que o bit RTR (Remote Transmission Request) é recessivo. Naeventualidade de existir a transmissão simultânea de uma trama de dados e uma tramaremota com o mesmo identificador, o acesso ao barramento é dado à trama de dados, poiso bit RTR é dominante na trama de dados. A trama de erro serve para sinalizar a existência de um erro e interromper amensagem que está a ser transmitida, de forma a garantir a coerência dos dados na rede. A trama de sobrecarga é constituída por dois campos, o Overload Flag e OverloadDelimiter. Estas tramas são transmitidas caso seja necessário criar um atraso entre enviosde tramas de dados ou para a detecção de um bit dominante no barramento.2.5.5. Detecção e Tratamento de Erros na Rede A detecção de erros tem por base a transmissão de uma mensagem de erro emitidapelo nó receptor quando detecta um erro, pedindo a retransmissão da mensagem ao nóemissor, ao mesmo tempo que os restantes nós ignoram a mensagem de erro. Numa redeCAN existem cinco mecanismos de detecção de erros [17]: • Teste de redundância cíclico; • Testes de trama; • Erro de confirmação; • Erro de monitorização; • Erro de bit stuffing. Quando pelo menos um nó da rede CAN detecta um erro através dos mecanismosem cima mencionados, a transmissão presente de dados é interrompida e sinalizado o erro,para que a mensagem com o erro não chegue a mais nós receptores, mantendo aconsistência dos dados que circulam na rede. Assim que a transmissão de uma mensagemcom erro for parada, o nó emissor tenta retransmitir a mensagem. Contudo estesmecanismos podem também levar a degradação da rede no caso se trate de um erropermanente. De forma a contornar esta situação, o protocolo trata estas situações recorrendo adois contadores que limitam os erros [17]. Existe então um contador de erros ocorridos natransmissão (TEC – Transmitted Error Counter) e outro contador de erros ocorridos narecepção (REC – Received Error Counter), os quais são incrementados a quando da - 26 -
  39. 39. Sistema de Aquisição e Monitorização de Informação Sensorial de um Helicópterodetecção de um erro nos respectivos casos e decrementados nos casos de sucesso derecepção ou emissão. Mediante o valor destes contadores, cada nó pode operar nosseguintes estados [17]: • Error active Estado em que os nós operam por defeito, funcionando em pleno e com valor dos contadores menor que 127 unidades; • Error passive Também chamado de estado de alerta, situação em que o contador TEC ou o contador REC igualam ou excedem as 127 unidades. Neste estado o nó CAN deixa de sinalizar erros no barramento, de forma a não congestionar a rede com este tipo de mensagens. Caso o erro tenha sido temporário e os contadores sejam decrementados para valores inferiores às 127 unidades, o nó passa novamente para o estado Error active; • Bus off O nó CAN entra neste estado quando o valor do contador TEC é igual ou superior às 255 unidades. Neste estado o nó suspende por completo a sua actividade na rede, só voltando a funcionar normalmente quando se fizer um reset ao nó. A Figura 15 ilustra o grafo da transição de estados em que um nó CAN pode operar. Figura 15 - Transições de estados dos nós. - 27 -
  40. 40. Sistema de Aquisição e Monitorização de Informação Sensorial de um Helicóptero3. Ferramentas de Desenvolvimento3.1. IDE MPLAB O programa MPLAB, ilustrado na Figura 16, é um IDE (Integrated DevelopmentEnvironment) gratuito da Microchip que oferece as ferramentas necessárias para odesenvolvimento de projectos em torno dos microcontroladores PIC, como controladorespara os programadores da Microchip, funções de debug por software ou hardware,integração de compiladores externos, etc. Figura 16 - Janela do IDE MPLAB. O MPLAB por si só apenas permite desenvolver programas em linguagemassembly, sendo necessário recorrer a compiladores externos para se poder utilizarlinguagens de alto nível como o C, neste caso o CCS C Compiler da Custom ComputerServices. Este oferece uma vasta colecção de bibliotecas para muitos dos microcontroladoresda Microchip, preparadas de tal forma que conferem à programação um bom nível deabstracção recorrendo a um conjunto de métodos para configurar e controlar os diversosperiféricos fornecidos no PIC. Os métodos mais utilizados para o desenvolvimento desteprojecto foram: - 28 -
  41. 41. Sistema de Aquisição e Monitorização de Informação Sensorial de um Helicóptero • can_init() Inicializa o controlador CAN embebido no microcontrolador; • can_getd(rx_id, buffer, rx_len, rxstat) Recupera uma mensagem de um dos buffers do CAN e guarda as informações nas variáveis dos parâmetros da função. A variável rx_id é o identificador do nó a que se destina a mensagem, buffer são os dados propriamente ditos, len é número de buffers utilizados para a transmissão da mensagem e rxstat é uma variável de controlo para erros; • can_putd (rx_id,data,len,priority,ext,rtr) Este método constrói um packet próprio para a transmissão da informação através do protocolo CAN. Às variáveis já mencionadas na função can_getd acrescentam-se a variável prioraty, que estabule-se as prioridades das mensagens, ext, variável que define a utilização ou não de um ID extended e finalmente a variável rtr, que é um bit de controlo do protocolo; • rs232(baud, xmit, rcv) Função que configura a porta série, em que a variável boud é o boud rate que se pretende utilizar e as variares xmit e rcv utilizam-se para configurar os pinos de envio e recepção respectivamente; • setup_adc_ports(anX_to_anY_analog | vss_vref) Configura as entradas do conversor analógico para digital do PIC, desde a entrada X até à Y, bem como a utilização de uma tensão de referência diferente da que alimenta o PIC; • enable_interrupts(interrupts) Função para configurar as interrupções que se pretendem utilizar. A variável interrupt corresponde à interrupção que se pretende utilizar. - 29 -
  42. 42. Sistema de Aquisição e Monitorização de Informação Sensorial de um Helicóptero3.2. Programador PICKit2 O PICKit2 é dos programadores para os microcontroladores PIC mais versáteis daMicrochip, não só devido á compatibilidade deste com um vasto número de PIC mastambém por ser um projecto Open Source [18], quer isto dizer, desde o início a Microchipdeu acesso ao público a todos os detalhes, componentes, software e esquemáticos doPICKit2, dando origem a um vasto número de clones e um rápido desenvolvimento edespiste de problemas por parte duma comunidade de utilizadores on-line que contribuipara o desenvolvimento e melhoramento do PICKit2. Na Figura 17 apresenta-se um clonedo PICKit2 e o respectivo original. Figura 17 - Clone do PICkit2 (em cima) e PICkit2 (em baixo). Apesar de existir um software próprio para trabalhar com o PICKit2, optou-se porutilizar as funções de controlo do PICKit2 embebidas no MPLAB. - 30 -
  43. 43. Sistema de Aquisição e Monitorização de Informação Sensorial de um Helicóptero3.3. Programa X-CTU O X-CTU, ilustrado na Figura 18, é um programa que permite aceder facilmente,através do computador, às diversas funcionalidades e procedimentos de teste dos módulosXBee [20]. Figura 18 - Aspecto da janela inicial do X-CTU. Para aceder ao módulo XBee basta configurar a porta COM à qual este está ligado efazer um “Test/Query” para verificar se a ligação é bem sucedida. Como se pode observarna Figura 18, é possível fazer testes de cobertura, aceder aos módulos XBee através de umterminal de texto e configurar os diversos parâmetros do módulo. A Figura 19 ilustra oaspecto de um teste de cobertura e na Figura 20 pode observar-se parte da lista dosparâmetros configuráveis através do X-CTU. A configuração do módulo XBee é a principal vantagem na utilização do X-CTU,pois permite uma escolha rápida dos múltiplos parâmetros que se pretendem configurar, aoinvés da utilização dos comandos AT através de um terminal de texto, os quais somente - 31 -
  44. 44. Sistema de Aquisição e Monitorização de Informação Sensorial de um Helicópteropermitem configurar um parâmetro de cada vez e requerem também tempos de atraso entrecomandos para sincronização [21]. Figura 19 - Teste de cobertura no X-CTU. Figura 20 - Lista dos parâmetros configuráveis do módulo XBee através do X-CTU. - 32 -
  45. 45. Sistema de Aquisição e Monitorização de Informação Sensorial de um Helicóptero3.4. Microsoft Framework .NET 3.5 A Framework .NET é uma plataforma de desenvolvimento e execução deaplicações da Microsoft. À semelhança do Java, as aplicações .NET são desenvolvidascentrando-se na plataforma em si e não no sistema onde irão ser executadas. Deste modoqualquer aplicação .NET pode ser executada em qualquer dispositivo Windows que possuatal plataforma (e em ambiente Linux através do projecto Mono). As aplicações .NET são executadas sobre uma Common Language Runtime (CLR)que utiliza uma biblioteca de classes, permitindo o desenvolvimento em mais de vintelinguagens de programação diferentes, como por exemplo o Visual Basic .NET e o C# [22]. O software de monitorização do projecto SAMISH foi desenvolvido na linguagemC#, da qual se destacam as seguintes características: • Semelhança com a linguagem JAVA na sintaxe e no paradigma de Orientação a Objectos; • Documentação e integração com sistemas operativos Microsoft Windows; • Desenvolvimento rápido de interfaces gráficas; • Componentes nativos para comunicação série e integração de base de dados SQL Server.3.4.1. Microsoft Visual C# Express O Microsoft Visual C# Express é um ambiente de desenvolvimento integrado(IDE – Integrated development environment) da linguagem C# para a plataforma .NET. Aversão utilizada para o desenvolvimento do projecto SAMISH é gratuita para todo o tipode aplicações (comerciais e não-comerciais). O IDE fornece um conjunto de ferramentas essenciais ao desenvolvimento rápidode aplicações com ou sem interface gráfica, como sejam corrector de sintaxe, compilador,desenho de interface gráfica, funções de diagnóstico (debug) e criação de pacotes deinstalação. Adicionalmente, o Visual C# Express oferece uma integração completa com omotor de base de dados SQL Server Compact Edition, permitindo de uma forma rápidacriar/editar tabelas, inserir e consultar dados [23]. Existem outros IDE para a programação na linguagem C#, como é o caso doprojecto open source SharpDevelop. A escolha incidiu neste IDE, em particular, pela - 33 -
  46. 46. Sistema de Aquisição e Monitorização de Informação Sensorial de um Helicópteroextensa documentação existente nas bibliotecas da Microsoft, habitualmente designada porMSDN. Figura 21 - Ambiente de desenvolvimento Visual C#.3.4.2. Microsoft SQL Server Compact Edition O SQL Server Compact Edition é um sistema de base de dados relacionalcompacto, desenvolvido pela Microsoft para os segmentos mobile e desktop. Esta versãodo SQL Server partilha a API (Application Programming Interface) com todas as versõesSQL Server, permitindo o uso da mesma sintaxe SQL das versões mais avançadas. Por se tratar de um sistema de gestão de base de dados embebido, toda a base dedados fica contida num único ficheiro, facilitando o seu manuseamento. A gestão da base de dados é realizada directamente no IDE Visual C# através daferramenta Server Explorer, onde é possível editar graficamente a base de dados, criartabelas e inserir dados. O acesso aos dados é efectuado recorrendo aos componentesADO.NET, integrados na biblioteca .NET. - 34 -
  47. 47. Sistema de Aquisição e Monitorização de Informação Sensorial de um Helicóptero Como os componentes ADO.NET são de aplicação genérica, é possível rapidamentemudar de um sistema de gestão de base de dados para outro, bastando para isso alterar aligação [24]. - 35 -
  48. 48. Sistema de Aquisição e Monitorização de Informação Sensorial de um Helicóptero4. Módulos XBee PRO 868 A escolha dos módulos XBee PRO 868 para comunicação RF (Rádio Frequência)tem por base a análise do QNAF (Quadro Nacional de Atribuição de Frequências),publicado pela ANACOM (Autoridade Nacional de Comunicações), que regulamenta aatribuição de frequências para comunicações sem fios. Esta análise foi imperativa para aselecção dos módulos, para se conhecerem as frequências livres de licenciamento, limitesda potência de transmissão e tipo de aplicações permitidas. Os módulos XBee PRO 868, Figura 22, funcionam na frequência dos 869.525 MHze têm uma potência máxima (configurável) de emissão de 300 mW [21], o que os tornaisentos de licenciamento e de “uso geral”, de acordo com QNAF [25]. Para além da utilização isenta de licenciamento, estes módulos possuem umconjunto de características que os torna adequados para a aplicação em causa,nomeadamente, a possibilidade de escolha de vários níveis de potência de emissão, ritmosde transmissão adequado e a possibilidade de utilizar diferentes tipos de antenas paraadaptar a cobertura pretendida com o tipo de aplicação, como indicado na seguinte lista,que evidencia várias características dos módulos [21]: • Cobertura até 550 m em ambiente urbano e interiores; • Cobertura até 40 km em linha de vista, com uma antena dipolo de 2.0 dBi; • Interface UART de 3.3 V (também tolerante a 5 V); • Interface UART configurável desde 1200 bps a 230.4 kbps; • Ritmo de transmissão RF até 24 kbps; • Potência de emissão regulável de 1 a 300 mW; • 64 bits de endereçamento para identificação; • Encriptação de 128 bits. Figura 22 - Aspecto de um módulo XBee PRO 868. - 36 -
  49. 49. Sistema de Aquisição e Monitorização de Informação Sensorial de um Helicóptero Na Tabela 5 apresenta-se a intensidade de corrente eléctrica associado a cada umdos níveis de potência de transmissão configuráveis no módulo XBee. Tabela 5 - Intensidade de corrente eléctrica dos módulos XBee (extraído de [21]). Potência de Emissão Intensidade de [mW] [dBm] Corrente [mA] 1 0 85 25 14 150 100 20 280 200 23 350 300 25 500 Ambos os módulos utilizados no projecto descrito neste relatório, um módulo paraa estação remota e outro para a estação base, vêm com uma ficha do tipo RPSMA (ReversePolarity SubMiniature version A), Figura 23. Figura 23 - Ficha do tipo RPSMA. As antenas utilizadas, semelhantes à da Figura 24, são dipolos simples articuladoscom um ganho de 2.0 dBi. O nível de potência aparente radiada de acordo com a antenautilizada e a potência de emissão configurada no módulo XBee, pode ser calculadarecorrendo à seguinte equação [21], (1)em que P é a potência aparente radiada expressa em dBm, PM é a potência de transmissãoconfigurada no módulo XBee, G é o ganho da antena utilizada em dBi e L é a atenuação emdB causada pelo cabo, que liga o módulo à antena. - 37 -
  50. 50. Sistema de Aquisição e Monitorização de Informação Sensorial de um Helicóptero Figura 24 - Antena do tipo dipolo simples articulada. O diagrama de radiação das antenas do tipo dipolo simples, encontra-se ilustrado naFigura 25. Figura 25 - Diagrama de radiação de um dipolo simples (extraído de [26]). - 38 -
  51. 51. Sistema de Aquisição e Monitorização de Informação Sensorial de um Helicóptero5. Implementação da Estação Remota O diagrama de blocos que caracteriza a rede CAN implementada na estação remotaencontra-se representado na Figura 26. Como se pode observar cada nó tem a arquitecturade um nó CAN tal como descrito na secção “Controller Area Network (CAN)” desterelatório. Este diagrama ilustra o tipo de comunicação utilizada por cada sensor, oidentificador utilizado na rede CAN para cada nó e a prioridade que cada nó temrelativamente ao acesso ao barramento. Sonar Giroscópio Acelerómetro GPS U-Blox Módulo RF Ultra-Som E_sky MMA7260Q SAM-LS XBee Pro SRF04 EK2-0704 Eixos XYZ Digital Digital Analógico RS232 RS232 I/O I/O ADC RS232 RS232 PIC18F2580 PIC18F2580 PIC18F2580 PIC18F2580 PIC18F2580 CAN CAN CAN CAN CAN ID:10 ID:15 ID:20 ID:30 ID:N/A Prior.:1 Prior.:1 Prior.:1 Prior.:3 Prior.:N/A MCP2551 MCP2551 MCP2551 MCP2551 MCP2551 Nó Barramento CAN Controlador Figura 26 - Rede de aquisição de dados. A numeração dos identificadores dos nós CAN foi efectuada de modo a que asdiferentes interfaces de comunicação de cada sensor fiquem compreendidas numa mesmagama de identificadores, Tabela 6. Tabela 6 - Numeração dos identificadores dos nós na rede CAN. Interface Identificadores Descrição Digital/Analógica 1-9 Canais reservados para testes e desenvolvimento. Sensores ou comunicações com interface e processamento de sinal Digital 10-19 digital. Sensores ou comunicações com interface e processamento de sinal Analógica 20-29 analógico. Sensores ou comunicações com interface e processamento de sinal RS232 30-39 série RS232 Indefinido 40-112 Canais livres para futuros desenvolvimentos. - 39 -
  52. 52. Sistema de Aquisição e Monitorização de Informação Sensorial de um Helicóptero5.1. Funcionalidades dos Nós De forma a aumentar as funcionalidades de cada um dos nós CAN desenvolvidos,foram implementadas as seguintes funcionalidades em cada um: • Ligações ao barramento CAN adaptáveis Cada placa tem dois sockets de quatro pinos, Figura 27, de forma a poder ligar cada nó directamente ao barramento ou “fechar” o barramento directamente no nó, de forma a proporcionar ligações ponto a ponto ou em estrela dos nós CAN; • Ligações para o programador PICKit2 Foi incluído em cada nó um conjunto de cinco pinos, Figura 28, para tornar possível a ligação do PICKit2 de forma a actualizar o software dos microcontroladores de cada nó bem como para recorrer aos mecanismos de debug oferecidos pelo MPLAB para a detecção e correcção de erros do software programado no microcontrolador; • Ligações para o modo de debug O modo de debug permite ver num computador, através da porta RS232, uma cópia dos dados que um nó está a enviar para o barramento CAN. As ligações para este modo são as ilustradas na Figura 29, bastando ligar os pinos RX e TX a um MAX233 (Driver RS232) e sinalizar o modo de debug com 5 V no pino sinal. Os pinos +5V e GRD podem ser utilizados para alimentar o MAX233 ou a placa onde este esteja inserido. Estas ligações podem também ser úteis quando se fazem novos desenvolvimentos no programa do microcontrolador de um nó CAN. Figura 27 - Exemplo das ligações para a rede CAN. - 40 -
  53. 53. Sistema de Aquisição e Monitorização de Informação Sensorial de um Helicóptero Figura 28 - Exemplo das ligações para o PICKit2. Figura 29 - Exemplo das ligações para o modo de debug. - 41 -
  54. 54. Sistema de Aquisição e Monitorização de Informação Sensorial de um Helicóptero5.2. Microcontrolador PIC18F2580 Os microcontroladores PIC (Peripheral Interface Controller) tiveram a sua origemna universidade de Harvard como um projecto para o Departamento da Defesa dos EstadosUnidos da América, com o objectivo de criar uma família de memórias simples econfiáveis, em que a memória para o código e a memória para dados estão separadas(Arquitectura de Harvard). Contudo a tecnologia não foi aproveitada pelo Departamento da Defesa mas simpela General Instruments como meio de compensar o fraco barramento I/O dosmicrocontroladores existentes na altura, dando origem ao nome PIC, Peripheral InterfaceController. Em 1985 foi criada uma empresa secundária à General Instruments, a ArizonaMicrochip Technology, que tinha como principal produto e objectivo de desenvolvimentoos microcontroladores PIC, caracterizados pelo vasto número de registos e periféricosembebidos no microcontrolador, tornando-o num produto com um barramento I/O bastantecompleto e adaptável. Actualmente os microcontroladores PIC utilizam memórias do tipo flash ROM paraarmazenar o código de programa e memórias RAM para armazenar os dados. Este tipo dearquitectura aumenta significativamente a velocidade de processamento dos PIC, a suaversatilidade de programação e confere-lhes uma latência de atendimento a interrupçõesconstante (3 ciclos de instruções), tornando-os indicados para aplicações de tempo real.Estão disponíveis microcontroladores de 8, 16 e 32 bit com tecnologias de alta eficiênciaenergética. O PIC18F2580 foi o microcontrolador escolhido para a realização dos nóssensoriais devido às suas características [27]: • Alimentação de 2,0 V a 5,5 V; • Elevado número de MIPS (Millions of Instructions Per Second); • Arquitectura optimizada para compiladores C; • Rápida programação e limpeza da memória de programa flash; • Programação directa em circuito; • Interface série RS232; • Conversor analógico/digital de 10 bit com auto aquisição do sinal; • Módulo de comunicação CAN. - 42 -
  55. 55. Sistema de Aquisição e Monitorização de Informação Sensorial de um Helicóptero A flexibilidade na alimentação proporciona uma economia no consumo de energiana estação remota e facilita a ligação com os dispositivos que são alimentadosexclusivamente a 3,3 V, tais como o acelerómetro, o módulo GPS e os módulos decomunicação XBee. A arquitectura de memória para o programa em flash, aliado àprogramação em série directamente ligada ao circuito, facilita o desenvolvimento devido àflexibilidade de apagar e reprogramar o PIC e à utilização de técnicas e ferramentas dedebug para o despiste de erros. Um aspecto importante na escolha deste microcontroladorfoi o módulo que possibilita a comunicação através do barramento CAN, que torna toda aoperação de comunicação no barramento transparente do ponto de vista dodesenvolvimento. Para a ligação de cada nó do projecto ao barramento CAN, recorreu-se ao tranceiverMCP2551, ilustrado na Figura 30. Este transceiver é o responsável pelas funções deligação física do modelo OSI, descrito anteriormente. Figura 30 - Tranceiver MCP2551 (extraído de [28]). Este transceiver permite a implementação de redes CAN até 1 Mbit/s e um máximode 112 nós por rede. Possui também protecção térmica, protecção contra curto-circuito nospinos de alimentação e protecção contra estados transitórios falsos devido a picos de tensãono barramento. Através do pino RS, podem-se implementar três modos de funcionamento[28]: • Modo Stand-by Activo quando o pino está no nível lógico 1, o que implica que o transceiver entre em modo sleep para reduzir o consumo de energia; - 43 -

×