Aplicações Zigbee

Aplicações Zigbee

Aplicações Zigbee: Telemetria para Aeromodelos via Zigbee

Neste artigo apresentaremos o desenvolvimento de um sistema de telemetria em tempo real para aeromodelos, utilizando o módulo Zigbee Telit ZE60 2.4 processando e transmitindo os dados coletados de sensores de pressão e informando altitude e velocidade indicada do ar.

José Carlito de Oliveira Filho

A utilização de sensores de pressão para a obtenção de outras grandezas, como velocidade de um fluido e altitude, é uma prática comum em instrumentação, pois estas variáveis estão diretamente associadas à pressão, seja ela absoluta ou diferencial. Veja a figura 1.

A pressão atmosférica é definida como a força por unidade de área exercida pelo peso do Ar sobre uma superfície na atmosfera terrestre. Quanto mais alta for a coluna de Ar, maior o peso e consequentemente maior a pressão sobre a superfície. Isto significa que quanto menor a altitude de um ponto, mais Ar acima dele, mais peso, então maior pressão. A figura 2 explica o porquê da sensação de nossos ouvidos estarem tapados ao descer uma serra, mostrando uma garrafa que foi fechada à altitude de 4300 metros (à esquerda), sendo deformada pela pressão do Ar à altitude de 2750 metros (centro) e esmagada à altitude de 300 metros (direita).

O vento também exerce pressão quando as moléculas de ar colidem em uma superfície, aplicando uma força naquela área. Quanto mais rápidas estiverem as moléculas de Ar, mais forte será a colisão, portanto maior será a pressão na superfície que se opõe ao vento. Pensando nisto, o inventor francês Henri Pitot criou o instrumento de medição de velocidade de fluidos que ainda hoje leva o seu nome: o tubo de Pitot. Repare, na figura 3, o tubo de Pitot instalado no bico da fuselagem do VANT (Veículo Aéreo Não Tripulado) americano Predator. Vamos fazer uma breve introdução aos sensores de pressão utilizados antes de descrever o processamento e a transmissão dos dados.

Sensores de Pressão

Para evitar ambiguidade, quando falamos de pressão devemos especificar o tipo de pressão medida. Existem três tipos de sensores de pressão: absolutos, manométricos e diferenciais. A figura 4 exibe a comparação entre os três tipos de medição. O sensor de pressão absoluta fornece o valor da pressão em relação ao vácuo. Utilizaremos este tipo de sensor para determinar a altitude do aeromodelo, linearizando a curva da pressão na região de operação. O sensor manométrico e o sensor diferencial têm características semelhantes, mas uma porta do sensor manométrico sempre estará conectada à pressão atmosférica enquanto as portas do sensor diferencial podem estar conectadas a qualquer pressão de interesse. Para medir a velocidade relativa do Ar nos arredores do aeromodelo utilizaremos um sensor diferencial, a fim de medir a diferença entre a pressão que o vento faz no modelo e a pressão sem a influência da velocidade.

O Altímetro

Para estimar a altitude do aeromodelo utilizaremos o sensor de pressão absoluta da Freescale MPX4250AP (figura 5).

Confira as principais características deste sensor na tabela 1. A pressão atmosférica varia com a altitude de forma não linear, seguindo a equação abaixo:

Onde, p é a pressão em Pa e h é a altitude acima do nível do mar em metros. Porém, para uma pequena variação de altitude podemos linearizar a curva da pressão atmosférica sem perder muita precisão. Linearizando a curva para altitudes do nível do mar até 1500 metros obtemos a expressão a seguir:

Onde, p é a pressão em KPa e h é a altitude acima do nível do mar. Mas o sensor não nos fornece a pressão em KPa, ele funciona como um transdutor de pressão para voltagem, seguindo a sensibilidade indicada pelo fabricante de 20mV/KPa. Utilizando esta constante, adaptaremos a equação 2 para fornecer a altitude em relação à tensão medida na saída do sensor:

Onde, h é a altitude em metros e Vs é a tensão de saída do sensor de pressão em volts. Utilizaremos a equação 3 adiante para converter o valor analógico em valor digital.

O Sensor de Velocidade indicada do Vento (IAS)

Para estimar a velocidade relativa do vento, utilizaremos o sensor de pressão diferencial da Freescale MPXV5004DP (figura 6). Veja as principais características deste sensor na tabela 2.

Para medirmos a velocidade utilizaremos um tubo de Pitot de forma a medir a diferença entre a pressão estática e a pressão de estagnação, como mostra a figura 7. Segundo a equação de Bernoulli:

Porém, o transdutor converte pressão em tensão segundo sua sensibilidade somada ao offset, no caso do sensor MPXV5004DP podemos utilizar a equação 5:

Onde: Pd é a pressão diferencial em KPa; Sens é a Sensibilidade do sensor em V/KPa; Vs é a tensão de saída do sensor (Vdc); Voffset é a tensão de saída do sensor para pressão diferencial nula em Vdc. Alterando a equação 4 para as características do sensor utilizado, obtemos:

Onde, IAS é a velocidade relativa do vento em m/s e Vs é a tensão de saída do sensor em Vdc.

Conversor Analógico/Digital (ADC) Para transmitirmos os dados coletados dos sensores digitalmente via Zigbee devemos primeiro digitalizar o sinal analógico de saída. O módulo Zigbee utilizado nesta experiência é o ZE-60 2.4, que possui um conversor A/D de 14 bits do tipo Delta- Sigma. O cálculo da resolução deste conversor é simples. Utilizaremos a voltagem de alimentação 3,3 V do módulo ZE60 como referência e configuraremos o ADC para operar na máxima precisão de 14 bits.

Isso significa que alterações menores que 0,2 mV na entrada do módulo Zigbee não serão computadas. Com esse número podemos verificar qual será a menor variação na altitude e na velocidade que será computada, primeiramente calcularemos a resolução de altitude utilizando a equação 3:

Portando, a cada 90 centímetros, teremos variação de um bit no ADC. Agora calcularemos a resolução de velocidade utilizando a equação 6:

Teremos uma variação de 2,07 km/h, para cada bit. Considerando a velocidade máxima de 100 Km/h esta resolução não é ideal para os valores de operação. Para ajustar a saída do sensor de velocidade ao valor de operação do aeromodelo utilizaremos a amplificação operacional.

Amplificação Operacional

Com o intuito de aumentar a resolução do sensor de velocidade, utilizaremos amplificadores operacionais para limitar e amplificar a saída dos sensores à situação de operação máxima de velocidade do aeromodelo: 100 km/h. Utilizamos o Application Report da Texas Instrument “Single-Supply Op Amp Design Techniques” para desenvolver os circuitos de amplificação. A tensão de saída do sensor para velocidade nula é de 1 V, enquanto a tensão de saída para a velocidade máxima de 100 km/h e é calculada pela equação 6, aproximadamente 1,46 V.

Neste caso desejamos que a saída do sensor fosse 3,3 V para velocidade nula e 0,5 V para velocidade máxima. A figura 8 mostra o gráfico da conversão que o amplificador operacional deve fazer.

A figura 9 exibe o circuito que fará esta conversão.

A equação para este circuito é obtida pelo teorema da superposição, primeiro considerando somente o lado inversor, depois considerando somente o lado não inversor, chegamos na seguinte equação:

Esta equação deve se igualar à equação de saída desejada: Vs= -6.087Ve + 9.387, assumindo RG igual a 10 kohms e R2 igual à 2 kohms chegamos aos valores de R1 e RF. Agora, calcularemos o ganho introduzido na medição. Para isto basta dividir a variação da saída pela variação da entrada:

O ganho introduzido na medição foi de 6,2. Verificaremos agora a nova resolução de velocidade do sistema digital dividindo a resolução do ADC por este ganho, uma vez que a saída do sensor será amplificada da ordem de G.

Com este circuito melhoramos a resolução de velocidade em 150% de 2,07 km/h para 0,83 km/h.

Diagrama dos Circuitos Eletrônicos

Como o espaço interno do aeromodelo é reduzido, dividimos os circuitos em três placas: uma para o módulo e a regulação de tensão, uma para os sensores e outra para a amplificação. O circuito da Placa do Módulo Zigbee e Regulação de Tensão (figura 10) foi montado em uma protoboard (observe seu aspecto na figura 1).

O circuito da Placa dos sensores (figura 12) é apresentado numa placa protoboard na figura 13.

Observe o diagrama da Placa de Amplificação (figura 14) e a montagem em uma protoboard na figura 15.

Software Embarcado

O software embarcado no módulo ZE60 foi desenvolvido na IDE IAR Embedded Workbench for 8051 e é muito simples. O software lê três entradas dos ADCs em 14 bits, a tabela 3 mostra as entradas e suas descrições:

Após a leitura, um pacote de 8 bytes é formado com um byte de início (0xAA) e dois bytes para cada variável e um byte de verificação de erros. Inicializamos o conversor A/D e configuramos os pinos a serem utilizados:

O código 2 lê os sinais analógicos e os armazena em RAM nas variáveis globais de altitude, velocidade do ar e bateria. O código 3 forma o pacote e o envia ao coordenador da rede a cada 500 milissegundos e a função EndPoint_SendADCData (BYTE* packet) recebe o pacote, forma os headers necessários e adiciona o pacote à fila para ser enviado (código 4). O programa principal chama as funções de leitura e envio dos dados em um loop infinito (código 5). O software da estação base é responsável por receber os dados via rádio e exibi-los graficamente ao piloto.

A figura 16 mostra a interface gráfica.

Considerações Finais

Apresentamos aqui todos os passos para desenvolver um sistema de telemetria cujo alcance final de voo é estimado em 1,5 km e os pacotes são entregues de forma confiável, sem erros e com baixa latência dentro deste alcance. O mesmo processo utilizado para ler sensores de pressão e a tensão da bateria, pode ser utilizado para ler qualquer tipo de sensor que tenha saída analógica. A presença de um conversor analógico digital com até seis canais de leitura faz com que os módulos Zigbee sejam de utilidade em produtos de telemetria, diminuindo o custo do produto final por não necessitar de um processador externo para desempenhar o papel de leitura dos sensores.

Comentários