RTV forum PL | NewsGroups PL

Co może powodować skoki wartości ADC w ATmegach 128 przy braku zakłóceń?

Dziwne skoki na przetworniku ADC w ATmedze.

NOWY TEMAT

elektroda NewsGroups Forum Index - Elektronika Polska - Co może powodować skoki wartości ADC w ATmegach 128 przy braku zakłóceń?

Sebastian Biały
Guest

Sat Mar 17, 2012 9:50 pm   



Witam.

Jest projekt bez przetwornika. W ostatniej chwili trzeba bylo jednak z
niego skorzystać. Ponieważ nie był w zamierzeniach to jedyne co jest to
kondensator na Vref i dławik na zasilaniu AVcc. Masy nie są rozdzielone,
specjalnej wagi nikt nie przykładał do ich prowadzenia.

Trzeba było jednak użyć ADC i tutaj ciekawostka: ATMega128 podczas
pomiaru pojedynczego napięcia, róznicowego, ze wzmocnieniem 1x i 200x ma
ciekawy objaw: okresowo, kilka razy na sekundę wynik różni się od
prawidłowego o około 20%. To daje gdzieś pi x drzwi 3 bity dokładności...

Pomiar wykonywany jest tak:

a) podawane stałe napięcie z dzielnika, dzielnik zasilany z Vref.
b) przetwornik najwolniej jak się da
c) odczyt przynajmniej kilkanaście razy wolniej niż podawany w intrukcji.
d) procesor podczas pomiaru *musi* coś robić, nie mogę go uśpić
e) Vref wewnętrzny, z kondensatorem na pinie.

Bez względu na to jak straszliwie mam zaszumione zasilanie, jak krzywo
poprowadzone masy nie chcę mi się wierzyć że przetornik szumi na 7
bitach i to jeszcze jakoś tak impulsowo.

Zmiany są zarówno w + jak i w -.

Oczywiście nie chodzi mi teraz o rady jak to naprawić - płytka jest.
Chodzi raczej o pytanie: co powoduje aż tak kolosalne szumy.

Błąd software wykluczam, spędziłem dobę debugując wszystko i nie ma tam
miejsca na pomyłkę.

Zbych
Guest

Sun Mar 18, 2012 6:53 pm   



On 17.03.2012 21:50, Sebastian Biały wrote:
Quote:
Witam.

Jest projekt bez przetwornika. W ostatniej chwili trzeba bylo jednak z
niego skorzystać. Ponieważ nie był w zamierzeniach to jedyne co jest to
kondensator na Vref i dławik na zasilaniu AVcc. Masy nie są rozdzielone,
specjalnej wagi nikt nie przykładał do ich prowadzenia.

Trzeba było jednak użyć ADC i tutaj ciekawostka: ATMega128 podczas
pomiaru pojedynczego napięcia, róznicowego, ze wzmocnieniem 1x i 200x ma
ciekawy objaw: okresowo, kilka razy na sekundę wynik różni się od
prawidłowego o około 20%. To daje gdzieś pi x drzwi 3 bity dokładności...

Pomiar wykonywany jest tak:

a) podawane stałe napięcie z dzielnika, dzielnik zasilany z Vref.

dołóż jeszcze niewielki kondensator do tego dzielnika, choćby 100p...10n.

Quote:
b) przetwornik najwolniej jak się da
c) odczyt przynajmniej kilkanaście razy wolniej niż podawany w intrukcji.
d) procesor podczas pomiaru *musi* coś robić, nie mogę go uśpić
e) Vref wewnętrzny, z kondensatorem na pinie.

Bez względu na to jak straszliwie mam zaszumione zasilanie, jak krzywo
poprowadzone masy nie chcę mi się wierzyć że przetornik szumi na 7
bitach i to jeszcze jakoś tak impulsowo.

Zmiany są zarówno w + jak i w -.

Oczywiście nie chodzi mi teraz o rady jak to naprawić - płytka jest.
Chodzi raczej o pytanie: co powoduje aż tak kolosalne szumy.

Podłącz oscyloskop do mierzonego napięcia i wyzwalaj pomiar innym pinem
uC, jeśli odchyłka bieżącego pomiaru będzie większa niż x% średniej z
poprzednich pomiarów. Może coś jednak włazi na napięcie mierzone.

Quote:
Błąd software wykluczam, spędziłem dobę debugując wszystko i nie ma tam
miejsca na pomyłkę.

Trzeba było po kolei wyłączać sterowanie różnymi obciążeniami i
zobaczyć, czy pomiary nadal wariują.

Andrzej W.
Guest

Sun Mar 18, 2012 7:50 pm   



W dniu 2012-03-17 21:50, Sebastian Biały pisze:
Quote:
Błąd software wykluczam, spędziłem dobę debugując wszystko i nie ma tam
miejsca na pomyłkę.

Kiedy ja mam takie wrażenie to znaczy, że albo nie doczytałem erraty do
sprzętu, albo błąd jest zbyt oczywisty, bym go dostrzegł...
Weź najprostszy przykład programu obsługi ADC dla tego procesora, zobacz
czy on też tak wariuje a potem popraw swój.

--
Pozdrawiam,
Andrzej

Sebastian Biały
Guest

Sun Mar 18, 2012 9:18 pm   



On 2012-03-18 18:53, Zbych wrote:
Quote:
a) podawane stałe napięcie z dzielnika, dzielnik zasilany z Vref.
dołóż jeszcze niewielki kondensator do tego dzielnika, choćby 100p...10n.

Nie pomogo :/

Quote:
Może coś jednak włazi na napięcie mierzone.

Najzabawniejsze że między innymi podawałem tam napięcie z ... baterii.
Dalej podskakuje. Podałem w końcu tą baterię również na Vref ... efekt
jak zwykle.

Quote:
Trzeba było po kolei wyłączać sterowanie różnymi obciążeniami i
zobaczyć, czy pomiary nadal wariują.

Najlepsze że procesor w zasadzie "nic nie robi" na zewnatrz. Czyta tylko
piny, nie zmienia ich stanów, wykonuje obliczenia real-time. Czyli żaden
z pinów nie drga.

Ja wiem, "pokaż schemat i kod" ale niestety nie mogę Smile

Zbych
Guest

Sun Mar 18, 2012 9:24 pm   



On 18.03.2012 21:18, Sebastian Biały wrote:
Quote:
On 2012-03-18 18:53, Zbych wrote:
a) podawane stałe napięcie z dzielnika, dzielnik zasilany z Vref.
dołóż jeszcze niewielki kondensator do tego dzielnika, choćby 100p...10n.

Nie pomogo :/

Może coś jednak włazi na napięcie mierzone.

Najzabawniejsze że między innymi podawałem tam napięcie z ... baterii.
Dalej podskakuje. Podałem w końcu tą baterię również na Vref ... efekt
jak zwykle.

Ale sprawdziłeś oscyloskopem?

Quote:
Trzeba było po kolei wyłączać sterowanie różnymi obciążeniami i
zobaczyć, czy pomiary nadal wariują.

Najlepsze że procesor w zasadzie "nic nie robi" na zewnatrz. Czyta tylko
piny, nie zmienia ich stanów, wykonuje obliczenia real-time. Czyli żaden
z pinów nie drga.

Ja wiem, "pokaż schemat i kod" ale niestety nie mogę Smile

No to pozostaje zrobić program minimum czytający tylko adc i zobaczyć
czy coś się zmieniło.

Piotr Gałka
Guest

Mon Mar 19, 2012 10:04 am   



Użytkownik "Sebastian Biały" <heby@poczta.onet.pl> napisał w wiadomości
news:jk2te1$faf$1@inews.gazeta.pl...
Quote:

Bez względu na to jak straszliwie mam zaszumione zasilanie, jak krzywo
poprowadzone masy nie chcę mi się wierzyć że przetornik szumi na 7 bitach
i to jeszcze jakoś tak impulsowo.

Podobne problemy z ADC w Xmega rozwiązało pojawienie się kolejnej wersji

pdf-a z kolejną listą błędów z której wynikało "nie używać" i problem
zniknął Wink
P.G.

Adam Wysocki
Guest

Mon Mar 19, 2012 2:36 pm   



Sebastian Biały <heby@poczta.onet.pl> wrote:

Quote:
okresowo, kilka razy na sekundę wynik różni się od prawidłowego o około
20%. To daje gdzieś pi x drzwi 3 bity dokładności...

Spróbuj użyć oversamplingu. Nie usunie to problemu, ale zamaskuje go.

--
Gof

Konop
Guest

Mon Mar 19, 2012 8:18 pm   



Quote:
Najlepsze że procesor w zasadzie "nic nie robi" na zewnatrz. Czyta tylko
piny, nie zmienia ich stanów, wykonuje obliczenia real-time. Czyli żaden
z pinów nie drga.

A czy na piny TEGO SAMEGO PORTU, co ADC wchodzi jakiś sygnał cyfrowy,
albo wychodzi jakiś?? Wiem, wiem, nie zmieniasz stanu pinów, ale może
masz mimowszystko coś "włączone", jakiś PWM, czy coś na niepodłączonym
pinie. Może na tym samym porcie działa JTAG i bruździ?? Generalnie, przy
ADC trzeba uważać na cały port, na którym on siedzi... .


--
Pozdrawiam
Konop

mw158979
Guest

Mon Mar 19, 2012 11:47 pm   



"Sebastian Bialy" <heby@poczta.onet.pl> schrieb
Quote:
niego skorzystac. Poniewaz nie byl w zamierzeniach to jedyne co jest to
kondensator na Vref i dlawik na zasilaniu AVcc.

Jak to tylko? Tzn nie masz kondensatora na AVCC?

mw

elektroda NewsGroups Forum Index - Elektronika Polska - Co może powodować skoki wartości ADC w ATmegach 128 przy braku zakłóceń?

NOWY TEMAT

Regulamin - Zasady uzytkowania Polityka prywatnosci Kontakt RTV map News map