atmega328p A/D 10bits

Software e Hardware para ATMEL

Moderadores: 51, guest2003, brasilma

Re: atmega328p A/D 10bits

Mensagempor milordy » 31 Jan 2017 20:29

bruxo escreveu:Bom pessoal, consegui resolver a maioria dos problemas,mas estou me quebrando com oscilação no exibição das temperaturas no display.
Implementei rotina que faz uma média com 10 comparações, e outra que leitura dos canais analógicos a cada 10 ciclos,já que os sensores (lm35)a variação de temperatura nos sensores e bastante lenta.
Troquei a fonte de alimentação por uma bateria 5V,não mudou em nada.

O que acontece:
1°Se usar um divisor de tensão ou usar a fonte de bancada para gerar os milivolts nos canais analógicos, a exibição exibe no display fica normal com muito pouca variação.
2° quando coloco os sensores e começa a ligar os cooler a exibição das temperaturas começa a variar,por momentos até 10 ou 20G°ou até mais .
3°Engraçado que nas portas do microcontrolador os milivolts não oscilam no multímetro.

Alguém poderia me dar uma dica ou citar algum exemplo?


Será que o cooler não está produzindo ruido na alimentação?
Provavelmente seu multímetro não vai detectar variações,o ideal seria um osciloscópio.
Experimentam retirar a ventoinha e posta seu circuito completo.
milordy
Nibble
 
Mensagens: 63
Registrado em: 26 Fev 2015 12:48

Re: atmega328p A/D 10bits

Mensagempor bruxo » 01 Fev 2017 11:53

andre_teprom escreveu:A fiação do sensor está atuando como antena ? Mais uma dica: Como a temperatura varia pouco com o tempo, coloca uma media maior, e de preferencia dividindo por potencia de 2, como 16, 32, 64 etc...Desse modo, tende a medir apenas a media da componente DC do sinal, e a media do ruido tenderia a se anular na integração com bastante valores.



Os fios dos sensores coloquei cabo blindado, os de de microfone profissional.
Fonte de alimentação coloquei baeria5V.
Editado pela última vez por bruxo em 01 Fev 2017 11:56, em um total de 1 vez.
bruxo
Byte
 
Mensagens: 331
Registrado em: 25 Jul 2014 08:21

Re: atmega328p A/D 10bits

Mensagempor bruxo » 01 Fev 2017 11:54

bruxo escreveu:
andre_teprom escreveu:A fiação do sensor está atuando como antena ? Mais uma dica: Como a temperatura varia pouco com o tempo, coloca uma media maior, e de preferencia dividindo por potencia de 2, como 16, 32, 64 etc...Desse modo, tende a medir apenas a media da componente DC do sinal, e a media do ruido tenderia a se anular na integração com bastante valores.



Os fios dos sensores coloquei cabo blindado, os de de microfone profissional.
Fonte de alimentação coloquei baeria5V.



Alimentação coloquei bateria 5V,fica na mesma não muda em nada.
bruxo
Byte
 
Mensagens: 331
Registrado em: 25 Jul 2014 08:21

Re: atmega328p A/D 10bits

Mensagempor bruxo » 01 Fev 2017 12:27

Conforme solicitado
Você não está autorizado a ver ou baixar esse anexo.
bruxo
Byte
 
Mensagens: 331
Registrado em: 25 Jul 2014 08:21

Re: atmega328p A/D 10bits

Mensagempor andre_luis » 01 Fev 2017 21:28

Apenas um teste: Se voce congelar todas as saídas do processador durante um tempo, as variações na medida continuam ? Digo, se estiver havendo algum controle em malha fechada, ou saída PWM, experimenta deixá-las no ultimo estado e ver se a variação continua. Estou suspeitando do fato de estar compartilhando o AVCC com o VCC possa ser uma das causas.
"Por maior que seja o buraco em que você se encontra, relaxe, porque ainda não há terra em cima."
Avatar do usuário
andre_luis
Dword
 
Mensagens: 5447
Registrado em: 11 Out 2006 18:27
Localização: Brasil - RJ

Re: atmega328p A/D 10bits

Mensagempor bruxo » 02 Fev 2017 08:14

Achei engraçado,desconectei todos os sensores de entrada dos canais A/D,coloquei osciloscópio nos canais, sinal fica deste jeito.

As imagem são da mesma tela, cada mudei TIME/DIVISION para visualizar sinal de varias formas.

tela 1- 200mVxD.png


tela2- 200mVxD.png


tela3- 200mVxD.png
Você não está autorizado a ver ou baixar esse anexo.
Editado pela última vez por bruxo em 02 Fev 2017 08:19, em um total de 1 vez.
bruxo
Byte
 
Mensagens: 331
Registrado em: 25 Jul 2014 08:21

Re: atmega328p A/D 10bits

Mensagempor bruxo » 02 Fev 2017 08:15

T4tela4- 200mVxd_20ms
Você não está autorizado a ver ou baixar esse anexo.
bruxo
Byte
 
Mensagens: 331
Registrado em: 25 Jul 2014 08:21

Re: atmega328p A/D 10bits

Mensagempor eletroinf » 02 Fev 2017 08:27

Quantos V/DIV nas suas imagens?
"De cada um segundo sua capacidade a cada um segundo sua necessidade."
Avatar do usuário
eletroinf
Word
 
Mensagens: 948
Registrado em: 12 Out 2006 14:59
Localização: Santa Maria - RS

Re: atmega328p A/D 10bits

Mensagempor andre_luis » 02 Fev 2017 09:16

T1: Quantos SEC/DIV ?
Parece algo do tipo, um pulso a cada 3,14159... divisões
"Por maior que seja o buraco em que você se encontra, relaxe, porque ainda não há terra em cima."
Avatar do usuário
andre_luis
Dword
 
Mensagens: 5447
Registrado em: 11 Out 2006 18:27
Localização: Brasil - RJ

Re: atmega328p A/D 10bits

Mensagempor bruxo » 02 Fev 2017 09:27

T1= 300ns
T2= 350ns
T3= 3.5us
T4= 1.20ns
bruxo
Byte
 
Mensagens: 331
Registrado em: 25 Jul 2014 08:21

Re: atmega328p A/D 10bits

Mensagempor andre_luis » 02 Fev 2017 10:48

De acordo com as informações que voce passou, a cadencia dos pulsos parece estar na ordem de 1MHz, o que poderia ser justificado pela comutação de algum periferico interno do uC com pré-scaler de 1/16 considerando que seu cristal é de 16MHz conforme o esquemático. Pra mim isso reforça a tese de que o compartilhamento do VCC com o AVCC possa ser a raiz do problema.
"Por maior que seja o buraco em que você se encontra, relaxe, porque ainda não há terra em cima."
Avatar do usuário
andre_luis
Dword
 
Mensagens: 5447
Registrado em: 11 Out 2006 18:27
Localização: Brasil - RJ

Re: atmega328p A/D 10bits

Mensagempor egipts » 02 Fev 2017 10:53

Olá. Pelo que me parece, analisando as imagens/circuitos 1 e 2, você esta com problema por causa dos valores muito altos dos resistores e potenciômetro. Isso ocorre porque o AD tem uma impedância de entrada não muito alta (como exemplo, no Freescale SH4 é de cerca de 5k), isso quer dizer que quando você liga um AD a um circuito como esse ele equivale a um resistor de 5k (Freescale) em paralelo. Como você tem resistores de 50k ele acaba consumindo muito o sinal, imagina 5k em série com 50k...

A solução que recomendo é colocar seguidores de tensão (TL071, 71 ou 74) isolando o sinal de medição do AD, coloque a entrada + do seguidor logo após o par RC e a saída direto no uC. Talvez seja melhor colocar um RC (R de 2k2) na saída do seguidor também, talvez você possa deixar só um RC na entrada...

Outra coisa, sempre que ativa o AD ele vira essa impedância de "5k". Por isso, deixe todas as entradas dos ADs "ativas" (configuradas como AD) assim você mantém a impedância do AD e não da entrada digital, que é maior.

Outra coisa 2, sempre que for fazer a média, faça medindo um AD ex. 10 vezes e depois o outro as outras 10 vezes, e não uma vez lendo todos os ADs e repetindo 10 vezes. Assim você reduz esse ruído de transição dos canais e impedâncias dos ADs. Ok?

Não esquece que o cap cerâmico (papai/mamãe) da alimentação do uC tem que estar junto com o os pinos de alimentação do CI, o mais perto possível.


Abraço,
Egipts.
egipts
Byte
 
Mensagens: 318
Registrado em: 22 Out 2006 01:43
Localização: Mairiporã - SP

Re: atmega328p A/D 10bits

Mensagempor andre_luis » 02 Fev 2017 15:39

egipts escreveu:Não esquece que o cap cerâmico (papai/mamãe) da alimentação do uC tem que estar junto com o os pinos de alimentação do CI, o mais perto possível.


Um ceramicozinho proximo á entrada A/D também vai bem.
Os eletroliticos, pra alta frequencias são literalmente indutores.
"Por maior que seja o buraco em que você se encontra, relaxe, porque ainda não há terra em cima."
Avatar do usuário
andre_luis
Dword
 
Mensagens: 5447
Registrado em: 11 Out 2006 18:27
Localização: Brasil - RJ

Re: atmega328p A/D 10bits

Mensagempor bruxo » 02 Fev 2017 16:21

egipts escreveu:Olá. Pelo que me parece, analisando as imagens/circuitos 1 e 2, você esta com problema por causa dos valores muito altos dos resistores e potenciômetro. Isso ocorre porque o AD tem uma impedância de entrada não muito alta (como exemplo, no Freescale SH4 é de cerca de 5k), isso quer dizer que quando você liga um AD a um circuito como esse ele equivale a um resistor de 5k (Freescale) em paralelo. Como você tem resistores de 50k ele acaba consumindo muito o sinal, imagina 5k em série com 50k...

A solução que recomendo é colocar seguidores de tensão (TL071, 71 ou 74) isolando o sinal de medição do AD, coloque a entrada + do seguidor logo após o par RC e a saída direto no uC. Talvez seja melhor colocar um RC (R de 2k2) na saída do seguidor também, talvez você possa deixar só um RC na entrada...

Outra coisa, sempre que ativa o AD ele vira essa impedância de "5k". Por isso, deixe todas as entradas dos ADs "ativas" (configuradas como AD) assim você mantém a impedância do AD e não da entrada digital, que é maior.

Outra coisa 2, sempre que for fazer a média, faça medindo um AD ex. 10 vezes e depois o outro as outras 10 vezes, e não uma vez lendo todos os ADs e repetindo 10 vezes. Assim você reduz esse ruído de transição dos canais e impedâncias dos ADs. Ok?

Não esquece que o cap cerâmico (papai/mamãe) da alimentação do uC tem que estar junto com o os pinos de alimentação do CI, o mais perto possível.


Abraço,
Egipts.




Coloquei resistor 1 k em paralelo com trimpot,continuou mesmo problema.
Vou providenciar capacitores poliéster e cerâmicos para teste.
bruxo
Byte
 
Mensagens: 331
Registrado em: 25 Jul 2014 08:21

Re: atmega328p A/D 10bits

Mensagempor milordy » 02 Fev 2017 20:08

bruxo escreveu:Achei engraçado,desconectei todos os sensores de entrada dos canais A/D,coloquei osciloscópio nos canais, sinal fica deste jeito.

As imagem são da mesma tela, cada mudei TIME/DIVISION para visualizar sinal de varias formas.


A principio,acho isto normal,se você desconectar os pinos,ele vão ficar flutuando,tente conectar um resistor de 1k no gnd ou vcc,e veja se altera deste modo.
milordy
Nibble
 
Mensagens: 63
Registrado em: 26 Fev 2015 12:48

AnteriorPróximo

Voltar para AVR

Quem está online

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

cron

x