relatorio sensor de impedancia
TRANSCRIPT
INSTITUTO POLITÉCNICO DE LEIRIA
ESCOLA SUPERIOR DE TECNOLOGIA E GESTÃO
DEPARTAMENTO DE ENGENHERIA ELECTROTÉCNICA
Sensor de Impedância
Relatório de final da disciplina de Projecto do curso de Engenharia Electrotécnica, ramo de Electrónica e
Telecomunicações.
Autor: Daniel Casas Gabella.
Orientador: Nuno Miranda.
Julio 2009
Relatório Final. Sensor de impedância. 2008/2009
ii
Agradecimentos.
Quero expressar o meu agradecimento a numerosas pessoas, que tem sido de muita ajuda para o
desenvolvimento deste projecto.
Primeiramente, agradeço a sua ajuda ao meu orientador Eng.º Nuno Miranda, quem sempre que
foi preciso contei com a sua disponibilidades e o seu apoio.
Quero agradecer aos responsáveis pelo Centro de Electrónica Eng.ª Sofia Gualdino e Eng.
Marco Santos, por todo o apoio dado no desenvolvimento dos elementos de hardware.
E também agradecer a todos os alunos Erasmus 2008/2009 que tem sido a minha família todo o
tempo que estive em Leiria, e com o seu apoio vencer as dificuldades.
Muito obrigado a todos.
Relatório Final. Sensor de impedância. 2008/2009
iii
Resumo.
Este projecto tem como objectivo o desenho de um pequeno dispositivo que seja capaz de
interaccionar com o utilizador. O objectivo do sistema de medida são as seguintes
funcionalidades, ler a impedância, monitorização de medidas (impedância e temperaturas),
detector de carga em pilhas e testar componentes (condensadores, bobinas o resistências). Todas
as funcionalidades, excepto a leitura da temperatura são baseadas na medição de impedância.
Ao componente ou meio a testar envia-se uma onda sinusoidal, de frequência determinada por
software, para depois ler os câmbios que a onda tem sofrido, e assim determinar a impedância
do componente ou meio. Cada medida de impedância não faz-se com apenas uma frequência, é
feita com um varrimento de frequências, para assim ver a variação de impedância conforme a
frequência aumenta. Uma das funcionalidades será o varrimento de frequências que terá uma
variação de frequências de 10kHz até 100kHz, e mostrara os dados, frequência e impedância
(módulo e fase), no monitor do computador. Para caracterização de um meio, o utilizador
deverá dizer o parâmetro a ler; temperatura ou impedância que deseja que o sistema determine.
No teste de componentes, o dispositivo procurara que classe de componente é: condensador,
bobina ou resistência. Também mostrara pelo computador o valor do componente.
Finalmente, o sistema averiguara qual é a carga das pilhas, quanta percentagem de carga resta
na bateria.
Relatório Final. Sensor de impedância. 2008/2009
iv
Índice.
Agradecimentos............................................................................................................................. ii
Resumo......................................................................................................................................... iii
Índice............................................................................................................................................ iv
Lista de Figuras. ........................................................................................................................... vi
Abreviaturas. ..............................................................................................................................viii
Formulas....................................................................................................................................... ix
Lista de tabelas.............................................................................................................................. x
1. Introdução. ................................................................................................................................ 1
2. Métodos de medida de impedância. .......................................................................................... 2
2.1 Método Bipolar. .................................................................................................................. 2
2.2 Método Tetrapolar. ............................................................................................................. 3
3. Microcontroladores PIC 18Fxxx............................................................................................... 4
4. Estudo do conversor de impedância AD5933. ......................................................................... 5
4.1 Diagrama de blocos. ........................................................................................................... 5
4.1.1 Circuito de saída. ......................................................................................................... 6
4.1.2 Circuito de entrada de dados. ...................................................................................... 6
4.2 Funções. .............................................................................................................................. 7
4.3 Aplicações........................................................................................................................... 8
4.4 Interface de comunicação I2C. ........................................................................................... 8
5. Programação do conversor de impedância em linguagem C..................................................... 9
5.1 Função para transmitir um byte. ......................................................................................... 9
5.2 Função para ler temperatura.............................................................................................. 10
5.3 Função para ler impedância. ............................................................................................. 11
5.4 Funções de calibração....................................................................................................... 12
5.5 Cálculo dos registos relativos as frequências.................................................................... 13
6. Relógio em tempo real. ........................................................................................................... 15
6.1 Timer3 do PIC18FX520. .................................................................................................. 15
Relatório Final. Sensor de impedância. 2008/2009
v
6.2 Função Interrupção Timer3............................................................................................... 17
7. Placa de acondicionamento de sinal........................................................................................ 19
7.1 Buffer. ............................................................................................................................... 20
7.2 Circuito para subtrair tensão. ............................................................................................ 21
7.3 Amplificador..................................................................................................................... 22
7.3.1 Circuito Multiplexer. ................................................................................................. 23
7.3.2 Controlo Multiplexer. ................................................................................................ 24
7.4 Conversor corrente-tensão. ............................................................................................... 25
7.5 Conversor tensão-corrente. ............................................................................................... 25
7.6 Divisor de tensão. ............................................................................................................. 25
8. Menu de interface com o utilizador......................................................................................... 27
8.1 Teste.................................................................................................................................. 28
8.2 Varrimento em frequência. ............................................................................................... 29
8.3 Medida de carga de Pilhas. ............................................................................................... 30
8.4 Monitorização. .................................................................................................................. 31
9. Circuitos esquemáticos............................................................................................................ 32
9.1 Alimentação. ..................................................................................................................... 32
9.2 Controlo: PIC18F252........................................................................................................ 33
9.3 AD5933............................................................................................................................. 34
9.4 Circuito de acondicionamento. ......................................................................................... 34
9.4.1 Circuito acondicionamento:multiplexer ................................................................... 34
9.4.2 Circuito acondicionamento sim multiplexer.............................................................. 35
9.5 Circuito Interface Serie. .................................................................................................... 36
10. Placa final.............................................................................................................................. 37
11. Conclusões. ........................................................................................................................... 39
Referências.................................................................................................................................. 40
Anexos......................................................................................................................................... 41
Anexo I. Tabela dados Carga- Impedância de pilhas.............................................................. 41
Relatório Final. Sensor de impedância. 2008/2009
vi
Lista de Figuras.
Figura 1 - Método de medida bipolar........................................................................................... 2
Figura 2 - Método de medida tetrapolar....................................................................................... 3
Figura 3 - Arquitectura AD5933. ................................................................................................. 5
Figura 4 - Circuito Saída AD5933. .............................................................................................. 6
Figura 5 - Circuito Entrada de dados AD5933............................................................................ 7
Figura 6 - Diagrama de fluxo rotina ler temperatura. ................................................................ 10
Figura 7 - Diagrama de fluxo rotina ler impedâncias................................................................. 11
Figura 8 - Timer3 PIC18FX520................................................................................................. 16
Figura 9 - Diagrama de fluxo interrupção Timer3. .................................................................... 17
Figura 10 - Esquema Geral Placa Acondicionamento. ..............................................................19
Figura 11 - Esquema entrada no AD5933.................................................................................. 20
Figura 12 - Esquema Buffer....................................................................................................... 21
Figura 13 - Circuito Subtractor. ................................................................................................. 21
Figura 14 - Circuito Amplificador. ............................................................................................ 22
Figura 15 - Divisor de tensão para GND dos amplificadores operacionais. ............................. 22
Figura 16 - Circuito Multiplexor................................................................................................ 23
Figura 17 - Diagrama de fluxo do MUX.................................................................................... 24
Figura 18 - Conversor corrente-tensão....................................................................................... 25
Figura 19 - Divisor de tensão para subtrair tensão da bateria. ................................................... 26
Figura 20 - Diagrama de fluxo menu desenvolvimento............................................................28
Figura 21 - Gráfica tensão-impedância. ..................................................................................... 30
Figura 22 - Esquema circuito alimentação................................................................................ 32
Figura 23 - Esquema circuito controlo...................................................................................... 33
Figura 24 - Esquema circuito AD5933. .................................................................................... 34
Figura 25 - Circuito acondicionamento: multiplexer. ............................................................... 34
Figura 26 - Circuito acondicionamento sim multiplexer............................................................ 35
Figura 27 - Circuito interface serie. .......................................................................................... 36
Relatório Final. Sensor de impedância. 2008/2009
vii
Figura 28 - Camada Top Layer ................................................................................................. 37
Figura 29 - Camada Botton layer .............................................................................................. 38
Relatório Final. Sensor de impedância. 2008/2009
viii
Abreviaturas.
I2C ‘Inter-Integrated Circuit’ interface série entre periféricos.
SCL ‘System Clock’
SDA ‘System Data’
SPI ‘Serial Peripheral Interface’ interface série entre periféricos
SDO ‘Serial Data Out’
FG Factor de ganho
Z Impedância
Re Dado Real
Im Dado Imaginário Des Desfazamento Seg Segundos
Min Minutos
PCB ‘Printed Circuito Board’ – placa de circuito impresso.
LPF ‘Low Pass Filter’ – Filtro paso baixo.
ADC ‘Analog to Digital Converter’ – conversor analógico-digital.
DAC ‘Digital to Analog Converter’– conversor digital-analógico.
DDS ‘Direct Digital Synthesis’ – Sintetizador digital de frequência.
DFT ‘Discrete Fourier Transform’– Transformada Discreta de Fourier
MAC ‘Multiply-Accumulate’ – Operação multiplicação e acumulação.
Relatório Final. Sensor de impedância. 2008/2009
ix
Formulas.
Formula 1 - Calculo da DFT........................................................................................................ 7
Formula 2 - Calculo ganho de calibração. ................................................................................. 12
Formula 3 - Calculo desfazamento. ........................................................................................... 12
Formula 4 - Calculo da impedância. .......................................................................................... 13
Formula 5 - Calculo da frequência inicial.................................................................................. 13
Formula 6 - Calculo do incremento da frequência..................................................................... 14
Formula 7 - Calculo da interrupção do relógio. ......................................................................... 16
Formula 8 - Buffer. .................................................................................................................... 21
Formula 9 - Subtractor. .............................................................................................................. 21
Formula 10 - Amplificador. ....................................................................................................... 22
Formula 11 - Conversor corrente-tensão. .................................................................................. 25
Formula 12 - Calculo condensador. ........................................................................................... 29
Formula 13 - Calculo bobina. .................................................................................................... 29
Relatório Final. Sensor de impedância. 2008/2009
x
Lista de tabelas
Tabela 1 - Tabela controlo Mux. ................................................................................................ 23
Tabela 2 - Tabela escalas Mux. .................................................................................................. 24
Tabela 3 - Tabela frequências leitura. ........................................................................................ 28
Tabela 4 - Tabela carga-impedância. ......................................................................................... 30
Relatório Final. Sensor de impedância. 2008/2009
1
1. Introdução.
O objectivo deste projecto é o desenho dum pequeno dispositivo que seja capaz de testar
componentes, medir as cargas das pilhas, monitorizar meios e ler temperaturas. O método
utilizado por o sistema de medida para fazer todas as funcionalidades é determinar impedância
do componente, meio o pilha. Com o dado de impedância a diferentes frequências consegue-se
determinar que tipo de componente está a medir, o seu valor, a carga das pilhas fazendo uma
relação prévia de impedância - carga, e caracterizações de meios, lendo os dados
periodicamente. Além disso, também este dispositivo tem um sensor de temperatura, que
permite realizar monitorizações de temperatura no tempo. Todas estas funcionalidades são
controladas por um microcontrolador, onde mediante um programa em linguagem C o
dispositivo e capaz de comunicar-se com o usuário. Para ler impedâncias o sistema conta com
um conversor de impedância e o microcontrolador comunica-se com o conversor mediante o
interface I2C. Alem disso, o dispositivo tem um circuito acondicionador de sinal que permite ler
impedâncias numa escala maior. Finalmente, os dados são mostrados ao usuário pelo monitor
do computador.
O relatório começa fazendo uma revisão dos principais métodos de medida de impedância, e as
características da família do microcontrolador usado neste dispositivo. A continuação
apresentasse o conversor de impedância utilizado, e como foi feita a sua programação em
linguagem C. Depois, trata-se sobre o relógio implementado no sistema de medida e o circuito
de acondicionamento desenhado. A seguir apresenta-se como é desenhado o menu para que o
utilizador determine a funcionalidade a fazer. Por último mostram-se os esquemáticos finais e a
placa PCB do dispositivo.
Relatório Final. Sensor de impedância. 2008/2009
2
2. Métodos de medida de impedância.
A impedância eléctrica é a oposição que apresenta um corpo ao passo duma corrente através
dele.
A impedância (Z) é um número complexo, com parte real (Re) e parte imaginária, (Im), definido
como a relação entre a tensão medida (V) e o fluxo de corrente total (I),
Há dois métodos principais de medida deste parâmetro: Bipolar - dois eléctrodos e Tetrapolar -
quatro eléctrodos.
2.1 Método Bipolar.
O método de dois eléctrodos, também chamado bipolar, é o método mais simples. A seguinte
figura 1 representa o método:
Figura 1 - Método de medida bipolar.
Zc+, Zc-: Impedância dos contactos
Zdut: Impedância a medir
O circuito na figura 1 conta com uma fonte de corrente, e com um voltímetro. Este método é o
mais simples, tem em consideração as impedâncias dos contactos, e do voltímetro. A
impedância Zdut, tem que ser muito maior do que as impedâncias dos contactos, para assim ter
erros que se podem desprezar.
Relatório Final. Sensor de impedância. 2008/2009
3
2.2 Método Tetrapolar.
A seguinte figura 2 representa o método de quatro eléctrodos:
Figura 2 - Método de medida tetrapolar.
Ze1,Ze2,Ze3,Ze4: Impedância dos contactos
Zdut: Impedância a medir
O circuito da figura 2 conta com uma fonte de corrente, e com um medidor de tensão. Mais
agora tem quatro contactos. A corrente chega à Zdut a traves dos contactos Ze1 e Ze4, e os
contactos Ze2 e Ze3 são para a leitura da tensão. Isto faz a leitura mais correcta que no método
bipolar, porque não tem influencia os contactos da fonte de corrente, nem do voltímetro
Zvmeter porque é muito elevada.
Relatório Final. Sensor de impedância. 2008/2009
4
3. Microcontroladores PIC 18Fxxx.
Os microcontroladores da família PIC 18FXXX são de 8 bits. Todo o trabalho feito durante o
ano foi com o PIC18f452 (40 pinos), mas no sistema final é usado o PIC18f252, que tem a
mesma arquitectura com menos pinos (28 pinos).
É usado o compilador C18 para criar o programa em linguagem C, aplicando bibliotecas como
pic18f452.h (livraria de trabalho para PIC18f452), pic18f252.h (livraria de trabalho para
PIC18f252), math.h (livraria com funções matemáticas), usart.h (livraria para o protocolo
série), i2c.h (livraria para protocolo I2C) e stdio.h (livraria comum para programação na
linguagem C).
Relatório Final. Sensor de impedância. 2008/2009
5
4. Estudo do conversor de impedância AD5933.
Neste capitulo será apresentado o conversor de impedância, quais as funções que o circuito
realiza, as aplicações, e também qual é o seu interface de comunicação.
4.1 Diagrama de blocos.
A figura 3 apresenta o diagrama de blocos do circuito integrado AD5933.
Figura 3 - Arquitectura AD5933.
O Circuito integrado inclui: um relógio interno, também tem a possibilidade de utilizar um
relógio externo, num DDS Core; ele faz as operações que permitem poder ter variações de
frequência à saia, um conversor digital analógico (DAC) e um amplificador de saia, um
amplificador de entrada e um filtro passo baixo (LPF), um conversor analógico digital (ADC),
Relatório Final. Sensor de impedância. 2008/2009
6
um bloco que realeza as operações que tem o resultado da impedância: parte real e parte
imaginária, um sensor de temperatura e um interface I2C.
4.1.1 Circuito de saída.
A figura 4 apresenta a parte que tem por objectivo aplicar o sinal sinusoidal á impedância a
medir. A parte principal deste parte do conversor e o DDS, de 27 bits, que é o encarregado de
formar as mostras dos sinais seno e coseno, que depois também serão usados para o tratamento
de dados lidos. A frequência gerada por o DDS é programada por software, assim como também
os incrementos que foram precisos.
O conversor de impedância conta com a possibilidade ter cristal externo ou relógio interno
(16776 kHz). O relógio utilizado é conectado ao DDS, e as suas mostras, vão para o DAC, para
ter uma sinusóide contínua, que pode ser amplificada por software por o amplificador que
encontra-se depois do DAC. Este sinal é aplicado à impedância baixo teste.
Figura 4 - Circuito Saída AD5933.
4.1.2 Circuito de entrada de dados.
A figura 5 apresenta a entrada de dados no conversor de impedância. À impedância baixo teste é
aplicada o sinal sinusoidal, e na entrada do conversor existirá o mesmo sinal, com variações de
amplitude e fase. Este sinal modificado respeito o sinal de saída vai através do circuito de
entrada de dados do conversor. Em primeiro lugar existe um amplificador programável por
software, com duas possibilidades, ganho unitário ou ganho por cinco. Após encontra-se um
filtro passo baixo para evitar ruído não desejado. Por último encontre-se o ADC, de 12 bits, para
discretizar o sinal continuo. As mostras são guardadas por o conversor, que são utilizadas para
calcular a DFT.
Com os dados da frequência, os sinais seno e coseno gerados por o DDS, e as mostras dos dados
com os valores de saída do ADC, e possível calcular a impedância mediante a DFT.
Relatório Final. Sensor de impedância. 2008/2009
7
Figura 5 - Circuito Entrada de dados AD5933.
A operação geral da DFT feita no MAC, com 1024 mostras por cada frequência e a seguinte:
[ ] [ ] [ ]( )( )∑=
−=1023
0
sincos)(n
njnnxfX
Formula 1 - Calculo da DFT.
Onde ‘X(f)’ é o dado de saída aplicada a impedância, ‘f’ a frequência de saída para o dado
recebido,’x[n]’ o dado de saída do ADC, a ‘sin[n]’ e ‘cos[n]’ os dados do DDS à frequência de
saída.
O conversor de impedância separa a parte real e a parte imaginária em dois registos diferentes
de 16 bits. Os dados destes registos são enviados ao microcontrolador mediante o protocolo de
comunicação I2C.
4.2 Funções.
O circuito integrado realiza as seguintes funções: termómetro, o dispositivo realiza leituras de
temperatura com um erro de ±2 ºC e leitura de impedâncias: o dispositivo pode aplicar
frequências de 1kHz a 100 kHz, com quatro possíveis amplitudes de tensão diferentes. Os dados
ledos têm duas partes; parte real e parte imaginária.
Relatório Final. Sensor de impedância. 2008/2009
8
4.3 Aplicações.
O conversor de impedância tem muitas aplicações: analises electroquímicas, análises de
impedância bioelectrica, espectroscopia de impedância, medidas de impedância, monitorizações
e protecções de equipas.
O dispositivo foi desenhado para medir impedâncias a diferentes frequências, para assim com o
tratamento dos dados por realizar as funcionalidades do sistema: testar componentes, medir
carga de pilhas, e monitorizar meios.
4.4 Interface de comunicação I2C.
O dispositivo AD5933 tem interface de comunicação I2C, por isso todas as comunicações são
realizadas seguindo este interface. No barramento I2C, desenvolvido pela PHILIPS, os dados
são transferidos em ambas as direcções. Esta transmissão requer apenas duas linhas série; uma
para os dados e outra para o relógio. Desta forma, são requeridos poucos terminais do
microcontrolador, e a construção da PCB também pode ser simplificada.
O barramento I2C é suportado por uma vasta gama de microcontroladores e periféricos
fabricados em diversas tecnologias.
A comunicação entre conversor e microcontrolador é por meio de envio e recepção de bytes.
Relatório Final. Sensor de impedância. 2008/2009
9
5. Programação do conversor de impedância em
linguagem C.
A programação foi realizada mediante a implementação de uma série de funções.
O conversor tem dos tipos dos registos: registos de controlo e registos de dados. O principal
registo de controlo é registo CONTROL, onde serão dadas as ordenes, como por exemplo, ler
temperatura ou ler impedância. O resto de registos de controlo são: START FRECUENCY,
FRECUENCY INCREMENT, NUMBER OF SETTLING e TIME CYCLES. Estes registos são
para programar o varrimento de frequências necessário para fazer a leitura de impedância.
O principal registo de dados é registo STATUS, que indica quando os dados estão preparados
para ser ledos. O resto de registos de dados são TEMPERATURA DATA, REAL DATA e
IMAGINARY DATA. Estes registos são onde armazenam-se os dados lidos. As principais
rotinas são: rutina para transmitir um byte (Escrever byte e Ler byte), rutina para ler a
temperatura e rutina para ler os dados de impedância.
5.1 Função para transmitir um byte.
A comunicação entre o conversor de impedância e o microcontrolador utiliza das rotinas para as
transmissões de bytes; rotina para ler um byte, e rotina para escrever um byte. Também foram
feitas as rotinas para escrever blocos e para ler blocos de bytes contidos nos registos do
conversor de impedância.
Estas rotinas usam outra rotina chamada Escrever_pointer, que coloca a direcção do registo do
circuito integrado AD5933 que vai ser lido ou escrito, ou do primeiro registo de trabalho em
caso de ler ou escrever bloco.
A rutina para ler um byte é Ler_byte(), tem um parâmetro de entrada para ler e retorna o dado.
Para escrever um byte será Escrever_byte(), onde será dado dois parâmetro de entrada; a
direcção a escrever e o dado a escrever. No caso das rotinas Ler_block() e Escrever_block( ) ,
para ler blocos e para escrever blocos respectivamente, serão dados a primeira direcção de
Relatório Final. Sensor de impedância. 2008/2009
10
trabalho, o numero dos dados, e uma direcção do vector onde se escreveram os dados lidos, ou
onde estarem os dados a escrever.
5.2 Função para ler temperatura.
Esta rotina mede a temperatura ambiente. A figura 6 mostra o diagrama de fluxo da função: da
ordem de medir temperatura, espera que o processo de medida termine, depois lê os registos de
temperatura, e finaliza a rotina.
Figura 6 - Diagrama de fluxo rotina ler temperatura.
Relatório Final. Sensor de impedância. 2008/2009
11
5.3 Função para ler impedância.
Nesta rotina são recolhidos uma serie de dados; reales e imaginários, num vector.
Figura 7 - Diagrama de fluxo rotina ler impedâncias.
Relatório Final. Sensor de impedância. 2008/2009
12
O diagrama de fluxo da figura 7 mostra como foi feita a rotina. Começa inicializando os registos
de controlo para fazer o varrimento de frequências, da ordem de pôr o conversor em Standby, da
ordem de iniciar com frequência inicial, da ordem de iniciar o barrido; espera que o processo de
leitura acabe, recolhe os dados lidos (num vector), depois testa si acabou o barrido; sim não
acabou, incremente frequência e volta a que o processo de leitura acabe, e si já acabou põe o
circuito integrado AD5933 em Power-down, e acaba a rotina.
5.4 Funções de calibração
Seguindo as instruções da datasheet do AD5933, existe uma rotina que determina o ganho de
calibração e o desfazamento, CalGF(). Estes parâmetros são determinados a partir de uma
impedância conhecida e são aplicados para calcular o valor de impedâncias em avaliação.
No programa final, há uma serie de dados com os valores de ganho de calibração e o
desfazamento, por isso esta função uma vez calculados, não será utilizada mais no dispositivo
final.
Para o cálculo, precisamos de uma impedância conhecida, e saber também da frequência de
saída do conversor. Fazem-se uma leitura de dados, real e imaginário, e com elos realizam-se
seguindo as seguintes formulas as operações:
( ) ( )22 ImRe
)_(
1
+
=REFERENCIAZABS
FG
FG: Factor de ganho.
Z_REFERENCIA: Impedância conhecida.
Re: Dado Real.
Im: Dado Imaginário.
Formula 2 - Calculo ganho de calibração.
= −
)_Re(
)_Im(tan 1
REFERENCIAZ
REFERENCIAZDes
Des: desfazamento.
Formula 3 - Calculo desfazamento.
Relatório Final. Sensor de impedância. 2008/2009
13
A calibração é realizada para todas as frequências, devido a que os dois parâmetros variam
conforme a frequência.
Com os vectores anteriores do factor de ganho e o desfase, utilizando Cal_Im( ), fazendo os
cálculos seguintes, calculam-se os dados correctos :
( ) ( )22 ImRe
1
+=
GFZ
Formula 4 - Calculo da impedância.
Por outro lado o desfazamento calculado é preciso subtrair o desfase inicial, para ter o
desfazamento correcto. Esta função, Cal_Im( ), precisa dos vectores factor de ganho e desfase, e
calcula as impedâncias e desfases colocando os dados em vectores, para assim poder trabalhar
com os dados nas diferentes funcionalidades do sistema de medida.
A função Cal_Im( ), que tem o objectivo de corrigir factores de ganho e desfase, é uma das mais
importantes porque é usada em todas as funcionalidades para que o dispositivo está desenhado,
com a excepção de leitura de temperatura.
5.5 Cálculo dos registos relativos as frequências.
O conversor de impedância tem uma serie de registos que determinam a frequência de saída,
como são os incrementos da frequência, mas também quantos incrementos deve fazer.
Os registos da frequência inicial e o incremento da frequência tem que ser calculados de uma
forma específica.
A três registos para por a frequência inicial, e tem que ser escritos com o seguinte código:
=
4
__Clock
lFreqIniciaInicialFreqCodigo
Formula 5 - Calculo da frequência inicial.
Onde o Clock e o relógio do conversor. O resultado desta operação em hexadecimal é um
número de três bytes que tem que ser escritos nos registos correspondentes da memória do
conversor.
No caso de incremento da frequência faz-se de maneira similar, com a mesma expressão:
Relatório Final. Sensor de impedância. 2008/2009
14
=
4
___
Clock
freqIncrementFreqIncreCodigo
Formula 6 - Calculo do incremento da frequência.
Também há três registos específicos onde deveram colocar-se o resultado em hexadecimal desta
conta.
Esta operação é feita na função Calculo_frequency( ), que tem um parâmetro de entrada a
frequência e o resultado é automaticamente escrito nos registos correspondentes do conversor de
impedância.
A rotina no programa final não é usada, porque não é preciso trocar os varrimentos da
frequência para as funcionalidades que o sistema de medida tem implementado, no entanto foi
de muita ajuda durante todo o desarrolho do projecto.
Relatório Final. Sensor de impedância. 2008/2009
15
6. Relógio em tempo real.
O objectivo desta parte do projecto é ter possibilidade monitorizar a impedância ou temperatura
dum meio no tempo. Se o dispositivo tem um relógio terá também a funcionalidade de ser capaz
num intervalo de tempo de ler parâmetros físicos (impedância ou temperatura), o número de
vezes estabelecido por o programa.
O relógio foi feito mediante o timer 3.
6.1 Timer3 do PIC18FX520.
Este timer pode trabalhar com um cristal externo ou relógio interno, neste caso é usado o cristal
externo. É utilizado um cristal externo, porque o relógio interno usa o cristal de trabalho do
microcontrolador, que tem uma frequência elevada. O Timer habilita a uma interrupção onde se
implementa a contagem do relógio do tempo real, e com um cristal externo é possível que a
interrupção apenas seja chamada uma vez cada dois segundos. Com o relógio interno a
interrupção seria chamada muitas vezes por segundo, por ter uma frequência alta.
O Timer pode ser configurado para que active a interrupção quando este cheio o registo TMR3L
(28 pulsos), ou quando este cheio o registo TMR3H (216 pulsos). Estes pulsos podem ter
diferentes escalas em relação ao cristal externo modificando o PREESCALER (1,2,4 ou 8).
O cristal utilizado é de 32.768 kHz, ligado aos pinos T1OSO e T1OSI. Com este valor do
cristal, o timer configurado para trabalhar em modo de 16 bits (com o registo TMR3H) e o
prescaler unitário quando o registo TMR3H seja desbordado, activará a interrupção TMR3IF,
assim a interrupção produzida por TMR3IF será cada 2 segundos.
Relatório Final. Sensor de impedância. 2008/2009
16
segkHz
overflowdeTempo 232768
2__
16
=
=
Formula 7 - Calculo da interrupção do relógio.
A figura 8 é o diagrama do Timer3:
Figura 8 - Timer3 PIC18FX520.
Deste modo o sistema de medida pode fazer temporizações, no programa final será possível
fazer uma medida do parâmetro (temperatura o impedância) que o utilizador deseje.
Relatório Final. Sensor de impedância. 2008/2009
17
6.2 Função Interrupção Timer3.
Esta função é chamada quando o registo TMR3H esta cheio. Uma vez que isto acontece,
actualiza-se o relógio em tempo real, incrementando dois segundos. O relógio foi feito com uma
interrupção para assim ter sempre o relógio actualizado independentemente do trabalho do
programa principal. A seguinte figura mostra o funcionamento desta rotina:
Inicio
Fim
Desactivar flag Interrupção
Hora=0
Hora=24
Incrementar Hora
Min=60
Seg=60
Sim
Sim
Sim
Não
Não
Não
Incrementar Min
Incrementar dois Seg
Figura 9 - Diagrama de fluxo interrupção Timer3.
Relatório Final. Sensor de impedância. 2008/2009
18
O funcionamento desta rotina e similar ao dum relógio, com a excepção que conta de dois em
dois segundos; quando os segundos passam de 60, por a zero o contador, e incremente o
contador dos minutos. Da mesma maneira quando o contador dos minutos chega a 60,
incrementa uma hora e por a contagem dos minutos a zero, quando as horas chegam a 23,
também é posto a contagem a zero.
Relatório Final. Sensor de impedância. 2008/2009
19
7. Placa de acondicionamento de sinal.
A seguinte figura mostra um esquema geral da placa de acondicionamento de sinal.
Figura 10 - Esquema Geral Placa Acondicionamento.
O circuito está dividido em duas partes; uma para a saída de sinal,uma parte para leitura geral e
outra para medida das pilhas, com a saída ligado a dois circuitos, e outra para entrada de sinal.
Relatório Final. Sensor de impedância. 2008/2009
20
A saída de sinal, que conta com um divisor de tensão, um circuito para subtrair tenção e um
buffer ou seguidor de tenção é utilizado só para medida da carga de pilhas.
O divisor de tensão é configurado para ter na saída a mesma tenção que a pilha (1,2 V), desta
maneira a saída do AD5933 é subtraída esta tenção para anular depois a tenção da pilha, desta
maneira não há saturação no conversor de impedância.
No resto das medidas só e preciso um buffer ou seguidor de tensão.
A parte para recolher os dados é comum, conta com dois conversores corrente tensão, um
amplificador e um conversor tensão-corrente.
O sinal entra por um conversor corrente-tenção porque os dados entram em corrente, e converti-
os a tensão é preciso para amplificá-los em tensão. Depois encontra-se o amplificador, a
continuação um conversor tensão-corrente. Este último conversor é preciso porque embora os
dados precisos para conversor sejam em tensão, é necessário introduzi-los em corrente. Isto é
assim, porque o conversor na entrada tem um conversor corrente-tensão, onde só é preciso por a
resistência. Na figura 11 pode ver-se isto ultimo:
Figura 11 - Esquema entrada no AD5933.
A seguir há uma explicação do funcionamento dos circuitos:
7.1 Buffer.
O circuito buffer ou seguidor de tensão constitui uma das aplicações mais comuns do
amplificador operacional.
Relatório Final. Sensor de impedância. 2008/2009
21
Figura 12 - Esquema Buffer.
O buffer tem um ganho unitário entre a entrada e a saída.
ViVout =
Formula 8 - Buffer.
7.2 Circuito para subtrair tensão.
A tensão na saída deste circuito é a diferença entre as tensões da entrada (V1
– V2), com as
resistências R1=R2=R3=R4= 100KΩ.
Figura 13 - Circuito Subtractor.
( )( ) )21(
1
22
134
4121 VV
R
RV
RRR
RRRVVout −−=
−
++−=
Formula 9 - Subtractor.
Relatório Final. Sensor de impedância. 2008/2009
22
7.3 Amplificador.
Esta parte do circuito é o amplificador inversor. A saída é amplificada conforme a relação das
resistências R/R1. Com o multiplexer, usando diferentes R, conseguimos vários factores de
ganho.
Figura 14 - Circuito Amplificador.
ViR
RVout
−=1
Formula 10 - Amplificador.
Este amplificador inversor para o seu correcto funcionamento, é preciso uma alimentação
simétrica, por isso existe um divisor de tensão que proporciona uma saída de 2.5V que é a GND
utilizada como referência para todos os amplificadores operacionais.
Figura 15 - Divisor de tensão para GND dos amplificadores operacionais.
Relatório Final. Sensor de impedância. 2008/2009
23
7.3.1 Circuito Multiplexer.
O sistema multiplexer foi feito com o dispositivo o TC4053 que conta com três multiplexer dum
canal (X,Y,e Z), que são controladas por as sinais do controlo A,B e C. As conexões feitas são
as seguintes:
Figura 16 - Circuito Multiplexor.
O controlo é feito mediante os pinos do porto A, RA0 e RA1, com a seguinte tabela da verdade:
RA1 RA0 Saída
Resistência (Ω)
0 0 100
1 0 1k
0 1 10k
1 l 100k
Tabela 1 - Tabela controlo Mux.
Deste modo com as distintas combinações das variáveis do controlo é possível ter uma
resistência diferente conforme seja preciso para a leitura da impedância.
Relatório Final. Sensor de impedância. 2008/2009
24
7.3.2 Controlo Multiplexer.
Os sinais do controlo do multiplexer, RA0 e RA1, são modificadas pelo programa, se há
saturação, o sistema tem de trocar os sinais de controlo do multiplexer para assim não ter
saturação. Há quatro escalas de diferentes escalas de leitura, o primeiro varrimento é feito com a
escala mais pequena, e se há saturação, a escala terá de ser trocada por a seguinte, assim até ter
os dados ledos dentro das escalas, sem saturação. As escalas mostram-se na tabela 2.
Escala RA1 RA0 Rango Z (Ω)
1 0 0 150-950
2 1 0 950-9.5k
3 0 1 9.5k-95k
4 1 l 95k-4M
Tabela 2 - Tabela escalas Mux.
A figura 17 o diagrama de fluxo do funcionamento:
Figura 17 - Diagrama de fluxo do MUX.
Relatório Final. Sensor de impedância. 2008/2009
25
7.4 Conversor corrente-tensão.
O conversor corrente-tensão está formado por um amplificador operacional e uma resistência.
Figura 18 - Conversor corrente-tensão.
A saída cumpre a seguinte relação:
RIVout −=
Formula 11 - Conversor corrente-tensão.
7.5 Conversor tensão-corrente.
O conversor tensão-corrente e só uma resistência, a corrente de saída será o produto entre a
tenção da entrada e o valor da resistência.
7.6 Divisor de tensão.
O sistema precisa dum divisor de tenção para proporcionar a tenção necessária para anular a
tensão da pilha. O dispositivo está desenhado para leitura de cargas de pilhas de 1,2Volt, e esta
seja a tensão de saída do divisor.
Relatório Final. Sensor de impedância. 2008/2009
26
Figura 19 - Divisor de tensão para subtrair tensão da bateria.
Relatório Final. Sensor de impedância. 2008/2009
27
8. Menu de interface com o utilizador.
O sistema de medida tem um menu com as quatro possibilidades do trabalho: teste, varrimento,
medida pilhas e monitorização. O utilizador tem de decidir destas quatro opções qual é a que
deseja.
O sistema utilizado para a interacção entre o utilizador e o sistema de medida é o computador,
mediante o terminal. Neste caso o terminal utilizado é o tiny bootloader, onde se mostra o menu,
e o usuário deve enviar mediante o teclado a opção elegida.
O programa tiny bootloader comunica-se com o microcontrolador por o porto serie do
computador, no microcontrolador é habilitada a interrupção da comunicação serie, para assim,
quando seja necessário intercambiar informação entre o computador e o microcontrolador, esta
interrupção é iniciada.
Com o tiny bootloader não é possível mostrar dados de tipo float, por isso, foi preciso criar uma
rotina especial para imprimir float pela tela do computador, imprimer_float(). Esta rotina
converte os dados float num string de dados, tipo char, e tem um rango de dados de
–99999.999 ate 99999.999, e mostra o dado por o terminal.
O usuário tem que eleger entre as quatro opções; Teste (pulsar ‘a’), varrimento (pulsar ‘b’),
medida pilhas (pulsar ‘c’) e monitorização (pulsar ‘d’). Em caso de eleger a ultima opção,
monitorização, deverá eleger entre leitura de temperatura (pulsar ‘1’), e impedância (pulsar ‘2’),
e escolher o numero de leituras e o intervalo entre cada leitura.
O diagrama da figura 17, mostra o menu. O primeiro que faz o sistema é carregar os vectores de
factor ganho e desfazamentos iniciais, para depois mostrar o menu com as diferentes opções.
Em todas as opções o varrimento de frequência é o mesmo, a frequência inicial é 10kHz, e
incremente-se em 10 kHz nove vezes. A tabela 3 mostra as frequências de leitura.
Relatório Final. Sensor de impedância. 2008/2009
28
Figura 20 - Diagrama de fluxo menu desenvolvimento.
Leitura 1 2 3 4 5 6 7 8 9
Frequência(kHz) 10 20 30 40 50 60 70 80 90
Tabela 3 - Tabela frequências leitura.
8.1 Teste.
Esta funcionalidade tem por objectivo determinar que é o componente onde faz-se o teste
(resistência, bobina ou condensador), é se é possível identificar qual é o seu valor.
O primeiro que faz-se é o varrimento é leitura de dados, depois analisam-se os dados, para assim
saber que componente é o que esta baixo teste. Se a impedância é a mesma a diferentes
Relatório Final. Sensor de impedância. 2008/2009
29
frequências, trata-se de uma resistência, se é maior a maior frequência trata-se de uma bobina, e
por ultimo, se e menor a medida que a frequência incremente-se será um condensador.
Uma vez que já está determinado o componente que é, trata-se de saber o seu valor.
Para resistências o valor é a simples leitura de impedância. Para os condensadores e bobinas é
preciso fazer os cálculos.
Para condensadores com os dados de impedância e desfazamento, assim com a frequência a
operação é:
( )( )π*2*sin*
1
FrequênciaPhiZrCondensado=
Formula 12 - Calculo condensador.
Para bobinas:
( )( )π*2*sin* FrequênciaPhiZBobina=
Formula 13 - Calculo bobina.
O programa faz os cálculos com uma frequência de 30kHz, para condensadores, e com 80kHz
para bobinas.
O rango de resistências lidas sem saturação no sistema é de 150 Ω a 4 MΩ, os condensadores
para valores menores de 20 nF. Para ler resistências menores do 150 Ω é preciso colocar outra
resistência conhecida em série, para assim fazer a leitura é ao valor lido subtrair-lhe a resistência
conhecida, desta maneira é possível ler resistências pequenas.
No caso dos condensadores maiores de 20nF é preciso colocar em serie uma resistência para
evitar saturações não desejadas, desta maneira é possível saber o valor dos condensadores
maiores do 20 nF.
8.2 Varrimento em frequência.
Nesta opção o sistema faz um varrimento de frequências é os dados são mostrados ao usuário. O
varrimento será o varrimento geral, com as frequências utilizadas na utilidade do teste, e os
dados de impedância e desfazamento são mostrados ao utilizador.
Relatório Final. Sensor de impedância. 2008/2009
30
8.3 Medida de carga de Pilhas.
A funcionalidade de medida de carga das pilhas tem por objectivo mostrar o tanto por cento da
carga da pilha. O sistema trabalha com pilhas recarregáveis de 1,2 V. A leitura da impedância
das pilhas experimentalmente é diferente conforme a carga vária. Os dados recolhidos
experimentalmente são mostrados no Anexo 1, a figura 21 mostra a relação entre tensão e
impedância de pilha. Experimentalmente a impedância lida neste modelo de pilhas quando estão
carregadas em relação a quando estão descarregadas é uma diferença de 30 Ω. Quando a pilha
esta carregada tem uma tensão de 1.330 Volt e quando esta descarregada 1.024Volt, estes
pontos são tomados como o 100% e 0% de carga. O valor de R2 da interpolaçao e muito perto a
1, com o que é uma boa interpolação.
R2 = 0,9816
1.000
1.050
1.100
1.150
1.200
1.250
1.300
1.350
1.400
80 85 90 95 100 105 110 115
Z(Ω)
Vol
t(m
V)
Serie1
Lineal (Serie1)
Figura 21 - Gráfica tensão-impedância.
Fazendo uma relação entre a leitura da impedância é a carga da pilha foi possível determinar a
carga lendo a impedância.
Carga 0% 50% 75% 100%
Impedância 80 95 102 110
Tabela 4 - Tabela carga-impedância.
Relatório Final. Sensor de impedância. 2008/2009
31
Desta maneira é possível fazer um algoritmo de cálculo, que com a impedância leda, determine
qual é a carga da pilha.
8.4 Monitorização.
Nesta parte o sistema faz leituras cada intervalo de tempo que o utilizador deseje dum dos
parâmetros (temperatura ou impedância). O usuário tem que eleger o parâmetro a ler, o número
de leituras que serão feitas, e o intervalo de tempo que tem que transcorrer entre cada medida.
Quando o utilizador selecciona este funcionalidade o primeiro que é preciso é que introduza por
teclado o parâmetro a ler e a continuação o número de medidas que deseja que sejam feitas, num
intervalo de 1-20. Após tem que introduzir o tempo de período entre medidas, num intervalo de
2-60 segundos.
Para introduzir estes parâmetros com duas cifras o utilizador deve introduzir primeiro a cifra das
dezenas, e depois das unidades. Isto é assim porque a comunicação entre o sistema de medida e
o utilizador é feita por o programa tinybldwin, e apenas é possível o envio de caracteres
individuais.
Relatório Final. Sensor de impedância. 2008/2009
32
9. Circuitos esquemáticos
Neste capítulo são apresentados os circuitos electrónicos do sistema de leitura e a sua
implementação na PCB.
9.1 Alimentação.
O dispositivo é alimentado por uma pilha de 9V, é conta com dois reguladores de tenção, um
para alimentação analógica, e outro para alimentação digital.
Figura 22 - Esquema circuito alimentação.
Para a parte digital é usado um regulador 7805, que tem três terminais, e que da uma saída
regulada de 5V. O terminal 1 é a entrada de tenção, o dois a massa, e o terminal três a saída
regulada de cinco Volt.
O circuito ADP3303, é também um regulador de 5V, tem menos ruído que o 7805, e é utilizado
para a parte de alimentações analógicas.
Relatório Final. Sensor de impedância. 2008/2009
33
9.2 Controlo: PIC18F252.
Neste apartado é a parte do controlo, o microcontrolador utilizado no dispositivo final é o
PIC18F252, que tem 28 pinos.
Figura 23 - Esquema circuito controlo.
A figura 23 apresenta o circuito, formado por o microcontrolador, os dois cristais, um para o
CLOCK do microcontrolador, e outro para a parte do relógio em tempo real, para a
funcionalidade de monitorizações.
O porto A, pinos 2-8 do PIC são implementados para uma possível conexão duma saída de
dados, e para o controlo do multimplexer da placa de acondicionamento. O porto C, pinos 12-
18, é utilizado para conectar o CLOCK para o relógio em tempo real, e também para ás
comunicações serie (RX2,TX1), I2C(SCL, SDA) e SPI (SCL, SDO e SDA). Além disso, o
porto B, pinos 21-28 são ligados ao jumper para por fazer futuras conexões.
Relatório Final. Sensor de impedância. 2008/2009
34
9.3 AD5933
A figura 24 apresenta as conexões do integrado AD5933.
Figura 24 - Esquema circuito AD5933.
9.4 Circuito de acondicionamento.
O circuito de acondicionamento é dividido em duas partes: circuito acondicionamento sim
multiplexer, e circuito acondicionamento: multiplexer.
9.4.1 Circuito acondicionamento:multiplexer
Este circuito está formado por o multiplexer TC4053, que faz o controlo do ganho do
amplificador da placa de acondicionamento. Os sinais de controlo são RA0 e RA1 (porto A do
PIC). A entrada do sistema multiplexer é MuxIn, e a saída MuxOut.
Figura 25 - Circuito acondicionamento: multiplexer.
Relatório Final. Sensor de impedância. 2008/2009
35
9.4.2 Circuito acondicionamento sim multiplexer.
A figura 26 apresenta o resto de circuito da placa de acondicionamento, formado por
amplificadores operacionais AD8052.
Figura 26 - Circuito acondicionamento sim multiplexer.
Relatório Final. Sensor de impedância. 2008/2009
36
9.5 Circuito Interface Serie.
O circuito da figura 27 é o interface do porto serie RS-232 de tipo asincrónico, e utiliza o
integrado Max232.
Figura 27 - Circuito interface serie.
Relatório Final. Sensor de impedância. 2008/2009
37
10. Placa final.
Neste ponto mostra-se o desenho da placa final. Na figura 28 é o desenho da camada Top Layer.
Figura 28 - Camada Top Layer
Relatório Final. Sensor de impedância. 2008/2009
38
A figura 29 mostra a camada Bottom layer.
Figura 29 - Camada Botton layer
Relatório Final. Sensor de impedância. 2008/2009
39
11. Conclusões.
O dispositivo desenhado é um sistema de medida funcional, que realiza diferentes medidas
práticas, para ler o valor de diferentes impedâncias.
O objectivo do projecto foi desarrolhar um produto útil, capaz de testar e identificar
componentes SMD, realizar monitorizações e lograr determinar a carga das pilhas.
Futuramente poderá ser feito algum sistema de saída de dados que consiga dar ao sistema de
medida maior autonomia, para deste modo não ter que usar o computador sempre que o
dispositivo seja usado.
Relatório Final. Sensor de impedância. 2008/2009
40
Referências.
[1] Pedro Guerreiro, Elementos de programação em C, FDA editora de Informática.
[2] Manuel de Medeira Silva, Introdução aos circuitos eléctricos e electrónicos, Fundação
Calouste Gulbenkian.
[4] Victor Gonçalves, Sistemas electrónicos com microcontroladores, ETEP.
[4] Mario Serafim Nunes, Sistemas digitais, Editorial Presença.
[5] António J.P. Padilla, Sistemas digitais, MacGraw Hill.
[6] Fabio Pereira, PIC programação em C, Érica.
Relatório Final. Sensor de impedância. 2008/2009
41
Anexos.
Anexo I. Tabela dados Carga- Impedância de pilhas.
Z(Ω) Volt(mV)
83 1.026
81 1.024
88 1.090
89 1.101
95 1.182
95 1.180
101 1.224
104 1.224
110 1.330
112 1.332