Leitura do ADC variando muito (migrado)

Software e Hardware para uC PIC

Moderadores: andre_luis, 51, guest2003, Renie

Leitura do ADC variando muito (migrado)

Mensagempor Fábio Pereira » 17 Out 2006 11:45

alcomen
Professor


Brazil
358 Posts Posted - 22/03/2004 : 11:58:00
--------------------------------------------------------------------------------
Estou lendo uma tensao no shunt de 1V, coloquei o multimetro em paralelo com o canal do pic, e estou tendo um problema:
No multimetro a tensao fica instavel, mas no pic a tensao fica variando muito, o que pode estar acontecendo ou o que posso fazer para melhorar?
Outra coisa: quando coloco uma pilha no lugar do shunt, a leitura fica instavel no pic.

Alessandro

alcomen@hotmail.com - http://www.gespi.com.br

KrafT
Conselheiro


Brazil
3476 Posts Posted - 22/03/2004 : 12:31:26
--------------------------------------------------------------------------------
Bom, para ler um LM35, eu uso 50 amostras e tiro uma media e apresento. Isso melhorou muito a estabilidade da leitura.

Nao fui feliz fazendo isso com filtros analógicos.

nop;

alcomen
Professor


Brazil
358 Posts Posted - 22/03/2004 : 12:41:28
--------------------------------------------------------------------------------
Desculpe o erro de portugues, quando disse instavel, na verdade disse estavel.
Kraft, nos multimetros isto ja e compensado?
Vou tentar usar sua ideia de 50 amostras para ver.

Alessandro

alcomen@hotmail.com - http://www.gespi.com.br

alcomen
Professor


Brazil
358 Posts Posted - 22/03/2004 : 13:55:58
--------------------------------------------------------------------------------
Fiz uma coleta de 50 amostras e tirei uma media,mas mesmo assim prejudicou minha precisao.


Alessandro

alcomen@hotmail.com - http://www.gespi.com.br

guest2003
Conselheiro


Brazil
1488 Posts Posted - 22/03/2004 : 14:14:23
--------------------------------------------------------------------------------
Ola,

Se vc pegar 50 amostras somar dividir depois pegar 50 novamente somar dividir... e assim por diante... nao vai adiantar muito mesmo nao...

voce deve fazer o filtro da seguinte forma: (use 32 ou 64 amostras pois fica mais eficiente a divisao por 32 ou 64 depois...)

armazene as amostras e quando tiver 32 faça a media e mostre... depois jogue fora a amostra numero 1 e pegue mais uma amostra faça a media e mostre... ou seja vai ser algo mais ou menos assim:

amostra
(1 + 2 ... 32) / 32 = valor
(2 + 3 ... 33) / 32 = valor
(3 + 4 ... 34) / 32 = valor

eh isso... veja que neste tipo de filtro se as 31 amostras anteriores eram digamos 100 e a seguinte eh 200 o valor na saida sera 103 !! ou seja para uma variação abrupta de 100% no sinal de entrada a saida do seu filtro variou apenas 3% !!!

[]'s


-----
"Cuidado, o dinheiro muda tudo" - guest2003

alcomen
Professor


Brazil
358 Posts Posted - 22/03/2004 : 17:08:52
--------------------------------------------------------------------------------
Guest, comecei a implementar sua ideia, quando me surgiu uma ideia mais simples: Tirei a fonte de alimentacao da carga que era de 12V (que por sinal de uma otima empresa no segmento), e coloquei uma fonte de micro na qual peguei a saida de 12V.
Simplesmente acabaram as oscilacoes.
Nunca imaginaria que a fonte que tinha aqui estava causando isto, nao pelo fato de ser uma fonte estabilizada, mas pela qualidade de seus produtos. Mas, tudo pode acontecer...
Grato a todos.

Alessandro

alcomen@hotmail.com - http://www.gespi.com.br

KrafT
Conselheiro


Brazil
3476 Posts Posted - 22/03/2004 : 17:41:40
--------------------------------------------------------------------------------
Nao tou vendo diferenca entre a minha e a sua resposta, Guest, a nao ser a base 2 no seu caso e base 10 no meu.

nop;

guest2003
Conselheiro


Brazil
1488 Posts Posted - 23/03/2004 : 07:16:41
--------------------------------------------------------------------------------
Kraft,

Se vc pega a amostra de 1 a 50 e tira a media depois pega a amostra de 51 a 100 e tira a media... na verdade vc nao esta fazendo a mesma coisa que pegar 1 a 50 depois 2 a 51 depois 3 a 52...

no seu caso vc demora 50 samples para cada exibição... no segundo caso vc demora apenas 1 sample por exibição (com excessao da primeira que tem que encher o buffer)

no meu caso a rotina filtra variacoes mais lentas tambem.. e nao somente as que estao dentro das 50 amostras...

faça um teste... pegue um sinal que fica variando 2 contagens digamos entre 49 e 51... vamos supor que ele fique variando 50 vezes = 49 e 50 vezes = 51... o que vc vai ter no seu mostrador ?? um numero variando hora 49 hora 51... no outro tipo de filtro o mostrador vai ficar parado no 50...

[]´s

PS: Não sei se fui muito claro... mas eh por ai...

resumindo... se vc pegar de 50 em 50 vc cria um descontinuidade entre suas medias... causando variacoes na leitura... ja no outro caso... vc nao tem descontinuidade (descartando a primeira e pegando uma nova) veja que neste outro caso as novas amostras tem um peso de 1/50 sobre o valor total...

-----
"Cuidado, o dinheiro muda tudo" - guest2003

KrafT
Conselheiro


Brazil
3476 Posts Posted - 23/03/2004 : 10:11:17
--------------------------------------------------------------------------------
Hum...
Agora tá firmeza!

Vc implanta uma janela de tamanho multiplo de 2, num(a) stream dos dados lidos e tira a média disso... Legal. O que não faz o estudo.

PS: Vou adotar essa solução para o controlador de arcondicionado (open source) com controle remoto que fiz.

PS2: Seu distanciamento desse fórum faz uma "farta que ocê nem magina"...

nop;

jeanfernandes
Conselheiro


Brazil
2648 Posts Posted - 23/03/2004 : 10:58:55
--------------------------------------------------------------------------------
Isso...

Sliding Windows...eheheheh eh assim mermo.....
Alguem ja me disse isso quando usou para fazer leitura de imperfeicoes de pneus na pirelli.....

oks....

Jean P. Fernandes
Coneel - Consultoria e Projetos
http://www.coneel.kit.net
coneel@globo.com
http://www.jeanfernandes.kit.net

guest2003
Conselheiro


Brazil
1488 Posts Posted - 23/03/2004 : 11:17:53
--------------------------------------------------------------------------------
que eh isso... "tamus ai"

[]'s


-----
"Cuidado, o dinheiro muda tudo" - guest2003

proex
Guru


Brazil
2009 Posts Posted - 23/03/2004 : 15:59:04
--------------------------------------------------------------------------------
O problema de se ler pela média é que nunca , ou raras vezes, vc estará mostrando o valor real da tensao presente na entrada.

Em equipamentos de mediçoes de precisão isso é inadmissivel, pois mostrará uma leitura falsa, que nao representa a realidade.

Se a leitura se mostra instavél, o melhor seria corrigir a origem da instabilidade, que podem ser problemas de aterramento, ruidos de fonte, acoplamentos ou filtragem deficientes.

proex


Edited by - proex on 23/03/2004 16:01:55

guest2003
Conselheiro


Brazil
1488 Posts Posted - 23/03/2004 : 16:14:46
--------------------------------------------------------------------------------
>> filtragem deficientes

hummmm... nervermind

mas por hardware vale tirar a media ???

mas tudo bem vc tem razão (não concordo plenamente)...

[]'s


-----
"Cuidado, o dinheiro muda tudo" - guest2003

proex
Guru


Brazil
2009 Posts Posted - 23/03/2004 : 17:19:41
--------------------------------------------------------------------------------
Filtragem deficiente `a que me refiro é a filtragem da fonte de alimentaçao que pode intruduzir ondulaçoes no sinal á ser medido.

Um bom filtro FIR tiraria essa ondulaçao mas esse tipo de filtro é complexo de ser implementado em microcontroladores. Quando se consegue, deixa muito a desejar.

Outro problema de se tirar a média, é que se colocarmos 10 aparelhos iguais medindo a mesma tensao, quase nenhum deles mostrará o mesmo valor, pois o valor mostrado será em funçao da média do ruido próprio de cada aparelho e o valor medido. Como o valor medido (injetado em cada aparelho) é igual, mas o ruido interno de cada um é diferente, da pra se prever o que sairá errado.

proex


KrafT
Conselheiro


Brazil
3476 Posts Posted - 23/03/2004 : 17:30:46
--------------------------------------------------------------------------------
Como nao existe sinal limpo, qualquer medida será sempre uma aproximaçao. O erro pode ser minimizado mas nao eliminado pois ate a referencia contem erros.

Famoso é a história dos relógios (que nao marcam o mesmo tempo nuca).

nop;
Fábio Pereira
embeddedsystems.io
Avatar do usuário
Fábio Pereira
Word
 
Mensagens: 674
Registrado em: 16 Out 2006 09:07
Localização: Kitchener, ON

Voltar para PIC

Quem está online

Usuários navegando neste fórum: Nenhum usuário registrado e 1 visitante

x