Elektroda.pl
Elektroda.pl
X
Proszę, dodaj wyjątek www.elektroda.pl do Adblock.
Dzięki temu, że oglądasz reklamy, wspierasz portal i użytkowników.

[Atmega8][C] Pomiar napięć w zakresie 10-15V

KRZAG 07 Lip 2011 09:01 3576 11
  • #1 07 Lip 2011 09:01
    KRZAG
    Poziom 12  

    Witam chcę zrobić ładowarkę do akumulatorów.
    Prostownik podłączony na stałę do aku, a atmega mierzył by napięcie akumulatora i załączał/odłączał by w/w prostownik.

    Jak wiadomo akumulator rozładowany ma wartość napięcia poniżej 11.8V
    naładowany bez obciążenia powyżej 13.4V

    Chciałbym więc by atmega miał zakres skuteczny pomiaru w granicach 10-15V max 10-18V górne napięcie mogę sobie wyciągnąć za pomocą dzielnika, a jak jest z dolnym?
    Czy do AGND mogę podpiąć 10V? jako napięcie odniesienia np z diody zenera?
    Chyba średnio to powinno działać bo zakres układów cyfrowych to 0-5V

    Proszę o jakiś schemat i ew podpowiedzi

    0 11
  • #2 07 Lip 2011 09:21
    mirekk36
    Poziom 42  

    KRZAG napisał:
    górne napięcie mogę sobie wyciągnąć za pomocą dzielnika, a jak jest z dolnym?


    A co to znaczy, że górne możesz sobie jakoś wyciągnąć za pomocą dzielnika???

    Nie rób żadnych takich jakichś z podłączaniem AGND do swoich +10V bo odeślesz procka do krainy wiecznych snów ;)

    Zrób sobie taki dzielnik rezystorowy, żeby górne napięcie zamienić na maksymalne napięcie odniesienia w procku. Czyli jeśli w procku masz 2,56V to taki musisz mieć dzielnik ;)

    A potem po odczytaniu ADC wartość maksymalna czyli 1023 będzie reprezentowała właśnie to maksymalne napięcie. I jak się chyba domyślasz gdy będzie ono spadać i dojdzie do powiedzmy 10V to wartość ADC będzie proporcjonalnie niższa.

    Weź sobie na początku jakiś zwykły potencjometr i pobaw się tak w ogóle przetwornikiem ADC to szybciej zaskoczysz o co chodzi.

    Albo jeśli potrzebujesz badać tylko różnicę napięć w granicach pomiędzy 10V a jakimś tam np 18V to zawsze można jeszcze sobie dać jakiś prosty wzmacniacz operacyjny żeby tę różnicę mierzył a jego wyjście po dzielniku do ADC . No rozwiązań jest bez liku.

    0
  • #3 07 Lip 2011 09:26
    KRZAG
    Poziom 12  

    jasne ze nie podlaczylem 10v :)

    chciałbym mieć precyzyjny zakres pomiarowy tak by odczytana wartosc rejestru ADCW=0 odpowiadała 10V a ADCW=1023=> 18V

    podnosząc napięcie progowe pracy przetwornika zyskuję na dokładności... chyba?

    0
  • #5 07 Lip 2011 09:57
    KRZAG
    Poziom 12  

    mogę poprosić o schemat bo nie kumam co mi podniesienie 0 wzmacniaczem da.

    0
  • #6 07 Lip 2011 10:32
    drzasiek
    Specjalista - Mikrokontrolery

    Po pierwsze to jeśli Ci zależy na dokładności to na pewno nie wewnętrzne napięcie odniesienia. Żadna w nim dokładność. Chcesz dokładności, zastosuj jakieś zewnętrzne specjalizowane napięcie odniesienia, najlepiej o wartości zbliżonej do Vcc. Albo chociaż napięcie zasilania uC będzie lepsze niż to wewnętrzne. (pod warunkiem, że zasilał będziesz po stabilizatorze).
    Druga sprawa, to po co chcesz podnosić poziom odniesienia? przy 10 bitowej rozdzielczości jeśli ustawisz dzielnik tak, że 15V na wejściu będzie równe VREF to masz rozdzielczość ok 15mV. Po co więcej do prostownika?

    Dodano po 14 [minuty]:

    Albo użyj Atmegi z możliwością pomiaru w trybie różnicowym wtedy można zrealizować to co chcesz z tym, że rozdzielczość dla twojego pomiaru będziesz miał 9 bitów czyli w zakresie 10-15V będzie to ok 10mV.

    0
  • #7 07 Lip 2011 10:58
    mirekk36
    Poziom 42  

    drzasiek napisał:
    Po pierwsze to jeśli Ci zależy na dokładności to na pewno nie wewnętrzne napięcie odniesienia. Żadna w nim dokładność. Chcesz dokładności, zastosuj jakieś zewnętrzne specjalizowane napięcie odniesienia, najlepiej o wartości zbliżonej do Vcc. Albo chociaż napięcie zasilania uC będzie lepsze niż to wewnętrzne. (pod warunkiem, że zasilał będziesz po stabilizatorze).


    A od kiedy to wewn. źródło odniesienia jest taaakie złe i na dodatek gorsze od VCC. To chyba jakieś mocne nieporozumienie?

    drzasiek napisał:
    Druga sprawa, to po co chcesz podnosić poziom odniesienia? przy 10 bitowej rozdzielczości jeśli ustawisz dzielnik tak, że 15V na wejściu będzie równe VREF to masz rozdzielczość ok 15mV. Po co więcej do prostownika?


    Tym bardziej po co jakieś zewnętrzne źródła odniesienia do takich celów???

    drzasiek napisał:
    Albo użyj Atmegi z możliwością pomiaru w trybie różnicowym wtedy można zrealizować to co chcesz z tym, że rozdzielczość dla twojego pomiaru będziesz miał 9 bitów czyli w zakresie 10-15V będzie to ok 10mV.


    To dobry pomysł a i rozdzielczość nadal będzie wystarczająca jeśli to będzie zwykłe urządzenie a nie coś do prowadzenia badań w kosmosie.

    0
  • #8 07 Lip 2011 11:06
    drzasiek
    Specjalista - Mikrokontrolery

    Cytat:
    A od kiedy to wewn. źródło odniesienia jest taaakie złe i na dodatek gorsze od VCC. To chyba jakieś mocne nieporozumienie?

    Tak się składa, że prawie wszystkie moje dotychczasowe projekty to urządzenia pomiarowe więc z tematem ADC jakoś się nie rozstaję. Małe bo małe ale jakieś doświadczenie w tym mam i wiem, że wewnętrzne źródło odniesienia w Atmegach jest bardzo niestabilne. Można o tym również wiele opinii poczytać. Popularne stabilizatory mają mniejszy rozjazd napięciowy niż wewnętrzne źródło.
    Cytat:

    Tym bardziej po co jakieś zewnętrzne źródła odniesienia do takich celów???
    No bo autor chce dokładność, to mu tylko zaproponowałem. Ale zupełnie wystarczające jest stabilizowane napięcie zasilania.

    0
  • #9 07 Lip 2011 11:40
    KRZAG
    Poziom 12  

    Chciałem zwiększyć dokładność pomiaru bo na zwykłym dzielniku mam "pływanie" odczytu do 0,5V przy stałym napięciu.
    Mając uref=VCC =5V to chyba 5/1024=czyli ok 50mV dla uref=2.56V jest już 25mV

    Dochodzi mi tu jeszcze problem z odpowiednim wymnożeniem odczytanych wartości.
    Sam miernik jak mierze opornik w dłoniach pokazuje do 10% różnicy w pomiarze w stosunku do leżącego opornika na stole. W dodatku dokładność pomiarów w przedziałce do 20KOm gubi najmniej znaczące omy. Co może przekładać się na wynik.

    0
  • #10 07 Lip 2011 11:48
    drzasiek
    Specjalista - Mikrokontrolery

    KRZAG napisał:
    Chciałem zwiększyć dokładność pomiaru bo na zwykłym dzielniku mam "pływanie" odczytu do 0,5V przy stałym napięciu.
    Mając uref=VCC =5V to chyba 5/1024=czyli ok 50mV dla uref=2.56V jest już 25mV

    A umiesz dzielić? To chociaż weź kalkulator i podziel 5/1024 :) Wychodzi jak BYK ok 5mV. Ale to tylko gdybyś mierzył napięcia do 5V. A chcesz mierzyć do 15 więc mnożysz przez 3 i masz dokładność ok 15mV.
    Rozdzielczość masz dla napiecia od 0 do VREF. Jesli twoje VREF wynosi 2.56V to przy 10 bitowej rozdzielczości jeśli być mierzył napięcie 2.56V to masz 2.56/1024=2.5mV. Ale że chcesz mierzyć napiecie do 15 V więc dzielnik musi ci zmniejszać 15/2.56 czyli ok 5.86 razy. Więc mnożysz 2.56*5.86 i wychodzi ok 15mV. Ja różnicy w rozdzielczości nie widzę.
    Cytat:

    Dochodzi mi tu jeszcze problem z odpowiednim wymnożeniem odczytanych wartości.
    Sam miernik jak mierze opornik w dłoniach pokazuje do 10% różnicy w pomiarze w stosunku do leżącego opornika na stole. W dodatku dokładność pomiarów w przedziałce do 20KOm gubi najmniej znaczące omy. Co może przekładać się na wynik.

    To dzielnik zrób z potencjometru (dużego ale bez przesady). Ustawiasz na zasilaczu napięcie 15 V i mierzysz na wyjściu dzielnika (potencjometru) i kręcisz dopóki nie będzie na wyjściu 5V.

    0
  • #11 07 Lip 2011 12:05
    mirekk36
    Poziom 42  

    drzasiek napisał:

    Tak się składa, że prawie wszystkie moje dotychczasowe projekty to urządzenia pomiarowe więc z tematem ADC jakoś się nie rozstaję. Małe bo małe ale jakieś doświadczenie w tym mam i wiem, że wewnętrzne źródło odniesienia w Atmegach jest bardzo niestabilne.


    No tu nie będę się kłócił bo faktem jest, że ja aż tak dużo tego nie wykorzystuję, ale dopytam co masz na myśli pisząc, że jest niestabilne? Wg mnie ono może mieć nieco inne napięcie niż np 2,56 na przykład 2,47 czy 2,63 ale poza tym jest stabilne.

    0
  • #12 07 Lip 2011 12:24
    drzasiek
    Specjalista - Mikrokontrolery

    To, że ono miewa nawet 2.3 albo 2.7V to nikt tego nawet nie ukrywa. I nie byłoby to specjalnym problemem, bo można to programowo skorygować. Ale jest drugi problem, bo w zakresie czasu i temperatury zmienia ono swoja wartość, i co wtedy? I to nie tak mało. Nie jest to tylko moja opinia, wielu już się o tym przekonało, na samej elektrodzie jest nawet sporo na ten temat.
    Wartość tego napięcia zależy od jakichś tam parametrów produkcyjnych. Ale co jeśli piszesz program dla kogoś? Uwzględniał będziesz za każdym razem jakie akurat napięcie wewnętrzne w danym egzemplarzu się komuś trafi? A tak, to piszesz program, definiujesz napięcie referencyjne jako ściśle określone i ma być ono albo zewnętrzne z jakiegoś specjalizowanego dokładnego źródła i nie ma problemów albo ustawiasz, że będzie to napięcie zasilania i określasz napięcie zasilania np 5V. I to już może sobie każdy skorygować zasilając urządzenie zadanym napięciem, nie musi zmieniać w źródłach, których może nawet nie dostanie.
    Druga sprawa, to jeśli napięcie wewnętrzne ma odchyłkę od nominalnego 20mV to w porównaniu z zasilaniem 5V ma to podwójne znaczenie. A Nawet jeśli stabilizator 5V ma fluktuacje ok 10 mV (założenie i tak przesadzone) to w porównaniu z wewnętrznym 2.56 stabilność będzie dużo lepsza.
    Druga sprawa dotyczy tego akurat przypadku. Lepiej jest ustawić dzielnik na 15:5 niż 15:2.56.

    0