Ajuda na conversão do A/D

Software e Hardware para uC PIC

Moderadores: andre_luis, 51, guest2003, Renie

Ajuda na conversão do A/D

Mensagempor Leomatias » 21 Fev 2008 14:06

Olá pessoal, boa tarde. Meu nome é Leonardo, este é o meu primeiro acesso. Naveguei por alguns tópicos, inclusive este que vou comentar.
Estou trabalhando com o MikroBasic e usando um pic18f1320. Quero ler o canal do A/D, converter em volts e escrever no LCD. Estou com dificuldades apenas nesta conversão. Alguém, poderia me auxiliar nesta dúvida por favor? Como faco para converter, se não me engano, o A/D deste modelo de pic é de 10 bits... como faco para converter em volts???

Desde já, agradeco a todos pela atencão e fantástico esse blog com tanta informacão, e tanta gente capacitada e horas em bancadas.
Leomatias
Bit
 
Mensagens: 35
Registrado em: 20 Fev 2008 09:20

Conversão

Mensagempor avenito » 21 Fev 2008 14:37

Olá Leo,

bem, o que vc tem que fazer é uma "regra de três".

1. Se vc tem um A/D de 10 bits, o resultado máximo obtido na conversão será 2 ^ 10 = 1024.

2. Se a tensão máxima que estará presente no pino de entrada do A/D é 5V, 1024 = 5V.

3. Dividindo 5V (tensão máxima medida) por 1024 (valor máximo convertido) você terá aproximadamente 4,9mV (quatro vírgula nove milivolts).

4. Conclusão, basta multiplicar o valor convertido por 4,9mV que vc terá o correspondente em volts que está presente no pino do conversor. Exemplo, se a sua conversão teve como resultado 512, o valor em volts é 512 x 0,0049 = 2,5V.

Obs.: Se você tiver um divisor de tensão, o resultado deve ser multiplicado pelo fator de redução. Por exemplo, se vc quer medir 15V, o seu divisor deverá proporcionar 5V na saída quando a entrada for 15V (15V/5V = 3), aí você multiplica o resultado por 3 também.

Espero ter ajudado!
Alexandre Venito
avenito@yahoo.com.br
http://www.wsgi.com.br/blog
"Não leve a vida tâo a sério, afinal ela é uma aventura da qual não sairemos vivos!"
Avatar do usuário
avenito
Nibble
 
Mensagens: 61
Registrado em: 10 Dez 2006 19:21
Localização: Rio de Janeiro

Mensagempor Sergio38br » 21 Fev 2008 15:03

um exemplo para vc baseado na versão 5.002
na versão 6 tem que colocar um include para as funções de string

dim v_ad_lcd as string[5]

dim v_ad as word

v_ad = Adc_Read(num_do_canal_AD)

v_ad = ((v_ad * 5000)/1024)

WordToStr(v_ad,v_adc_lcd) 'converte word para string com espaços iniciais

Lcd8_Out(1, 1,v_adc_lcd) ' para o caso do lcd em 8 bits

sergio
Avatar do usuário
Sergio38br
Word
 
Mensagens: 759
Registrado em: 22 Nov 2007 13:39
Localização: São Paulo - SP

Mensagempor avenito » 21 Fev 2008 15:36

Alexandre Venito
avenito@yahoo.com.br
http://www.wsgi.com.br/blog
"Não leve a vida tâo a sério, afinal ela é uma aventura da qual não sairemos vivos!"
Avatar do usuário
avenito
Nibble
 
Mensagens: 61
Registrado em: 10 Dez 2006 19:21
Localização: Rio de Janeiro

Re: Ajuda na conversão do A/D

Mensagempor Leomatias » 22 Fev 2008 14:02

Olá pessoal, boa tarde para vcs. Desde já obrigado pelas mensagens e tira-dúvidas.

Implementei vários exemplos do AD ontem. A variacão em bits ocorre perfeitamente. Quando converto para volts não fica legal, mostra números estranhos. Consegui um resultado bom convertendo e mostrando o valor da tensão no LCd com variacão de 1 em 1 volt, de 0 a 5 volts.

Mas, após um tempo ligado, o LCD comeca a oscilar números e caracteres estranhos no visor, piscando sem parar.
O que pode ser? Meu pic 18f1320 que está com problemas? Ligacão de pornt-o-board que geralmente são problemáticas para microcontroladores? Fios, mal contatos? Fonte, aquecimento?
Por favor,se alguém já se deparou com tais problemas me mostrem "uma luz no fim do túnel", desde já obrigado e irei continuar tentando.
Leomatias
Bit
 
Mensagens: 35
Registrado em: 20 Fev 2008 09:20

Re: Ajuda na conversão do A/D

Mensagempor leocsbh007 » 25 Fev 2008 11:32

Leomatias escreveu:Olá pessoal, boa tarde para vcs. Desde já obrigado pelas mensagens e tira-dúvidas.

Implementei vários exemplos do AD ontem. A variacão em bits ocorre perfeitamente. Quando converto para volts não fica legal, mostra números estranhos. Consegui um resultado bom convertendo e mostrando o valor da tensão no LCd com variacão de 1 em 1 volt, de 0 a 5 volts.

Mas, após um tempo ligado, o LCD comeca a oscilar números e caracteres estranhos no visor, piscando sem parar.
O que pode ser? Meu pic 18f1320 que está com problemas? Ligacão de pornt-o-board que geralmente são problemáticas para microcontroladores? Fios, mal contatos? Fonte, aquecimento?
Por favor,se alguém já se deparou com tais problemas me mostrem "uma luz no fim do túnel", desde já obrigado e irei continuar tentando.


Fala Chara, que tipo de sinal analogico vc esta usando? Ele varia muito? Tenta utilizar um filtro digital para as leituras do AD (Medias), ou então mostrar no display com intervalos de tempo tipo de 500ms em 500ms e dependendo do tipo de sinal lido esta leitura será bem real. Acho que isto resolve seu problema.

att
LeoCS
leocsbh007
 
Mensagens: 2
Registrado em: 16 Mar 2007 15:25


Voltar para PIC

Quem está online

Usuários navegando neste fórum: Google [Bot] e 1 visitante

x