logo elektroda
logo elektroda
X
logo elektroda
Adblock/uBlockOrigin/AdGuard mogą powodować znikanie niektórych postów z powodu nowej reguły.

Jak uzyskać liniowy pomiar prądu na AVR mega8/48 z rezystorem 0,1R?

saper_2 12 Sty 2008 14:10 14130 26
  • #1 4685607
    saper_2
    Poziom 18  
    Posty: 322
    Pomógł: 23
    Ocena: 38
    Witam,

    Nie wiem czy dobrze wybrałem forum gdyż raczej jest to problem bardziej dotyczące części przed uP...
    Przechodząc do tematu, projektuję sobie płytkę prototypową z M32 i mam układ zasilania zrobiony jak na schemacie nr 2 (pominąłem kondensatory i parę innych nieznaczących elementów, Res1 i Res2 to są potencjometry ze zworą do przełączania napięcia 3,3V/5V z LM317, napięcie będzie mierzone na ADC0 przez dzielnik R11,R10 i R9) VR1-LM317 (J2-OUT) zasila M32 na płytce,a VR2 zasilać ma atM8 i wzmacniacz.
    Na tą chwilę pracuję nad układem pomiaru prądu, a konkretniej nad wzmocnieniem spadku napięcia z Rpom (z punktu "<Ipom]"). Na schema1 jest układ jaki złożyłem na płytce stykowej, R0 i PR0 zastępują mi Rpom (przy prądzie 1A będzie 100mV spadku na Rpom) i układ "prawie" działa dobrze. Precyzując "prawie", na wyjściu nie mam całkiem liniowych zmian, a jeszcze dokładniej to:
    Jak wykalibruje sobie wzmocnienie dla 1A (100mV) ustawiając na wyjściu 2,56V (wzmocnienie 25,6) i potem zmniejszę napięcie na wejściu np. do 2,8mV (będzie ~28mA) to na wyjściu powinienem mieć ~78mV ,a mam ~41mV czyli wzmacniacz zmniejsza też wzmocnienie... Myślę iż przyczyną tego jest użycie LM358 ,może coś zamiast niego albo coś ja źlę robię?
    Przyznam się iż analogówka dla mnie to ciemna strefa (coś tam wiem), ale omijam ją baardzo dalekim łukiem :\
    Załączniki:
    • Jak uzyskać liniowy pomiar prądu na AVR mega8/48 z rezystorem 0,1R? schema1.jpg (8.1 KB) Musisz być zalogowany, aby pobrać ten załącznik.
    • Jak uzyskać liniowy pomiar prądu na AVR mega8/48 z rezystorem 0,1R? schema2.jpg (12.33 KB) Musisz być zalogowany, aby pobrać ten załącznik.
  • #2 4685657
    jarekgol
    Poziom 40  
    Posty: 5172
    Pomógł: 644
    Ocena: 1145
    zasil wzmacniacz operacyjny symetrycznie, lub zmień układ. Symetrycznie tzn +5, -5, a oporniki do masy (gnd) . Żaden wzm. nie da ci na wyjściu napięcia = zasilaniu, zawsze są jakieś spadki, i wtym zakresie wzm. chodzą nie liniowo. Jak chcesz mieć U na wyjsćiu wzm rzędu 0-2,56, zasil go od -1,5 i w dół oraz +4 i w góre :) tylko nie przegnij z maxymalnym U zasilania -> patrz w dokumentacji. Najprościej dostaw sobie stabilizator 7905, stabilizuje -5V (jeśli masz tam jakieś zmienne, które możesz odprostować na minus.)
  • #3 4685708
    Piotrek1970
    Poziom 18  
    Posty: 273
    Pomógł: 12
    Ocena: 154
    Dawno już nie pisałem na forum ale chyba nie wyszedłem z wprawy. Twój problem to brak doświadczenia w tego typu układach. Proponuję zastosować wzmacniacz różnicowy i wtedy Twoje problemy znikną. Jest to jedyna słuszna droga w konstruowaniu urządzeń pomiarowych opartych o przetworniki A/D. Gotowego rozwiązania nie posiadam aby wskazać ale w sieci jest tego mnóstwo.
  • #4 4685863
    kamyczek
    Poziom 38  
    Posty: 3994
    Pomógł: 394
    Ocena: 573
    Tak sie zastanawiam nad sensem stosowania rozbudowanych układów Jeśli założysz że z zasilacza pobierany jest prąd interesuje cię tylko zakres od 0 w górę. Stosując procesor atmela mające przetwornik 10 bitowy i opornik 0,1R bardziej słuszną drogą jest zastosowanie Vref = 1.024V da to pełną rozdzielczość z krokiem 1,024/1024 czyli 1mV dla rezystora 0,1R da to 10A
    z krokiem 10mA myśle że to wystarczająca dokładność.
  • #5 4685883
    saper_2
    Poziom 18  
    Posty: 322
    Pomógł: 23
    Ocena: 38
    jarekgol:
    Niestety nie ma możliwości zasilania symetrycznego :( do ukłqdu będzie prąd stały doprowadzany :|

    Piotrek1970:
    Ghaaaa... Zapomniałem o tym :| ,a w wczoraj jeszcze widziałem podobne propozycje układów. I widziałem coś takiego jak na schema3.
    Więc jeśli użyję takiego układu jak na schem3 i zmierzę sobie napięcie z ADC0 i ADC1 ,następnie odejmę od ADC0, ADC1 to będę miał spadek napięcia na Rp - dobrze rozumuje?


    schema3:
    Jak uzyskać liniowy pomiar prądu na AVR mega8/48 z rezystorem 0,1R?


    kamyczek:
    Pomysł dobry ale mierzę jeszcze napięcie 0-5V na innych kanałach ADC...
    Pozatym nie widziałem żeby ktoś próbował z tak niskim Vref w atmelu - jeśli by zadziałało to mogł bym dać wtedy dzielniki napięcia na pozostałem wejścia (lub zwiększył dzielniki). Tylko gdzie wynajdę źródło Vref=1,024V :|
    Twój pomysł mam na uwadze.

    Dodano po 20 [minuty]:

    A jeśli dałbym Rp przed stabilizatorem? Mógł bym wtedy zwiększyć rezystor nawet do 0,5Ohma co dało by mi większą dokładność obliczenia (większy spadek - 0,5V), moc tracona to było by <1W (0,5V x 1A = 0,5W) więc nie było by źle i odpad by mi spadek napięcia za stabilizatorem. A co do prądu jaki LM potrzebuje do stabilizacji to już bym przymknął oko :)
    Oczywiście wartości elementów nie są dobrane - są w "dużym" przybliżeniu.

    Ops błąd :), od Rp i dzielników zamiast ADC0 i 1 >> ADC1,ADC2 :)
    Załączniki:
    • Jak uzyskać liniowy pomiar prądu na AVR mega8/48 z rezystorem 0,1R? schema2b.jpg (17.02 KB) Musisz być zalogowany, aby pobrać ten załącznik.
  • #6 4687608
    PiotrPitucha
    Poziom 34  
    Posty: 2658
    Pomógł: 201
    Ocena: 424
    Witam
    Rozwiązanie jest proste, po pierwsze dobry wzmacniacz.
    Po drugie mierzyć prąd w masie a nie w zasilaniu.
    Po trzecie dajesz w sprzężeniu wzmacniacza diodę i omijasz w ten sposób nieliniowość bo wzmacniacz przesuwa poziom o napięcie diody.
    Popatrz na aplikację do MCP601
    Piotr
  • #7 4690072
    saper_2
    Poziom 18  
    Posty: 322
    Pomógł: 23
    Ocena: 38
    PiotrPitucha napisał:

    Rozwiązanie jest proste, po pierwsze dobry wzmacniacz.

    Ok, jaki? Ja znam tylko LM358, TL081/71/61, OP07 tylko szłyszałem.
    PiotrPitucha napisał:

    Po drugie mierzyć prąd w masie a nie w zasilaniu.

    Taki był mój pierwotny pomysł.
    PiotrPitucha napisał:

    Po trzecie dajesz w sprzężeniu wzmacniacza diodę i omijasz w ten sposób nieliniowość bo wzmacniacz przesuwa poziom o napięcie diody.

    Przepraszam ,że zapytama ale analogówka to u mnie kula u nogi, jak ta dioda ma być włączona? równolegle/szeregowo w kierunku?
    PiotrPitucha napisał:

    Popatrz na aplikację do MCP601

    Schemat z noty?

    Poszedłem tropem zasilaczy, poszukałem po archiwum edw i znalazłem jeden schemat co jest praktycznie identyczny (tam wartości 10x mniejsze) z moim pierwotnym prototypem i nawet na LM358 zrobiony. A skoro pojawiło się to jako projekt to zakładam ,że działa dobrze.
    Więc poprawiłem i takie same wyniki - nieliniowe :(
  • #8 4690627
    cyberdar
    Poziom 31  
    Posty: 1465
    Pomógł: 161
    Ocena: 73
    Witam

    Z odwróceniem napięcia nie ma w tym wypadku problemu. Dajesz ICL7660 i po kłopocie. Wydajność prądowa tego układu w okolicach 10mA jest wystarczająca. Jeśli chcesz mierzyć spadek napięcia na rezystorze w "obwodzie" zasilania to zastosuj wzmacniacz różnicowy jak zasugerowano. Tak czy siak używasz wzmacniacza operacyjnego. Do tego trzeba dołożyć 4 rezystory (w miarę precyzyjne) i po kłopocie. Wystarczy Ci do tego LM358 czy co tam masz. Drugim wewnętrznym wzmacniaczem operacyjnym odseparujesz wejście od wyjścia. Proponowałbym dać jako napięcie referencyjne LM385-2.5V - chodzi o te 2.5V. Z dwóch powodów. Mało który AVR działa z napięciem referencyjnym mniejszym niż 2V a jeśli chciałbyś wykorzystać 5V zasilające procesor to wtedy wzmacniacz operacyjny musiałbyś zasilić z wyższego napięcia albo zastosować wzmacniacz typu rail-to-rail. Osobiście obstaję za pierwszą wersją bo wyjdzie taniej i prościej. Sugeruję ustawienie wzmocnienia tak ażeby rozciągnąć wynik pomiaru na cały zakres pomiarowy. Nie stracisz na rozdzielczości i dokładności. W razie czego możesz robić kilka pomiarów i wartość uśredniać.

    --
    pozdrawiam
  • #9 4691431
    PiotrPitucha
    Poziom 34  
    Posty: 2658
    Pomógł: 201
    Ocena: 424
    cześć
    Co do Wzmacniacza to Ci podałem, MCP601 lub inny Rail to Rail.
    Aplikację pomiaru w masie masz w PDF do tego wzmacniacza.
    Teraz co do przesunięcia, bo rail to rail nigdy nie jest idealny, do wyjścia wzmacniacza podpinasz katode diody, z anody do masy opornik rzędu 10K i z tego opornika bierzesz napięcie pomiarowe oraz sprzężenie na wejście.
    Dzięki sprzężeniu masz na wyjściu diody to co trzeba, natomiast na wyjściu wzmacniacza kilkaset mV więcej więc likwidujesz nieliniowość w obszarze niskich napięć.
    Piotr
  • #10 4692107
    GienekS
    Poziom 32  
    Posty: 1971
    Pomógł: 139
    Ocena: 15
    Wydaję mi się że dioda w takim układzie pomiarowym to trochę chybiony pomysł. Przy zmianach temperatury będzie ci strasznie pływał pomiar.
  • #11 4692155
    PiotrPitucha
    Poziom 34  
    Posty: 2658
    Pomógł: 201
    Ocena: 424
    Cześć
    A czemu to niby pomiar miałby pływać ?
    Wzmacniacz to wzmacniacz, dążył będzie do zrównania napieć na wejściu odwracającym i nieodwracającym, ponieważ napięcie porównania pobierane jest z za diody czyli z wyjścia to wszystko będzie działało tak jak trzeba, w końcu prostowniki na wzmacniaczach operacyjnych robione są z ten sposób i nikt nie narzeka na pływanie pomiarów.
    Zaznaczam jednak że wzmacniacz musi być Rail to Rail dla tej metody pomiaru przynajmniej w odniesieniu do wejścia, kwestię wyjścia skompensuje nam dioda.
    Piotr

    EDIT
    Coprawda 0,1ohm to bardzo dużo, ale szukałbym lepszych wzmacniaczy ze względu na dryft, przy pomocy MCP601 w swoim układzie mierzę spadek na 0,001ohm, całkiem ładnie sobie daje z tym radę
  • #12 4692166
    kamyczek
    Poziom 38  
    Posty: 3994
    Pomógł: 394
    Ocena: 573
    Napięcie Vref=1,024 nie jest aż tak niskie niektóre attny mają 1,1V i też działa co do pomiaru 5V wystarczy dzielnik napięcia 1/5 i masz też w zakresie.
  • #13 4701130
    saper_2
    Poziom 18  
    Posty: 322
    Pomógł: 23
    Ocena: 38
    Kamyczek: Spróbuje ze swoim, ale, ale, gdzie ja dostanę Uref=1,024V? U mnie w mieście? Nigdy, jeszcze pewnie popatrzą się jak na wariata :| . W TME mają co nawyżej 1,2V... hmmm ale nie wiem jakie TL431 ma dolne napięcie....
    I to ma być na M48 albo M8 ,a nie na attiny, Megi to trochę "starsiejsza platforma" od tiny...

    PiotrPitucha: Jeśli dobrze zrozumiałem to chodzi ci o takie coś jak na rysunku. Sprawdziłem to na tym co mam (czyli LM358) i coraz bardziej utwierdza mnie fakt iż LM358 jest do D.

    DODANE
    Zmontowałem na szybko, na tranzystorze i opornika 0,15R (7cm drutu oporowego-pomiarowego odzyskanego ze starego jakiegoś miernika unitry - 70cm drutu miało 1Ω) i podłączyłem wzmacniacz i wyszło mi iż mój pierwotny układ da rade poprawnie wskazać (znaczy się wzmocnić napięcie ze spadku na Rp) prąd od 20mA, więc jutro ide popytać się za MCP601 (może jeszcze jakiś inny wzmacniacz)
    Załączniki:
    • Jak uzyskać liniowy pomiar prądu na AVR mega8/48 z rezystorem 0,1R? Schema4.jpg (9.08 KB) Musisz być zalogowany, aby pobrać ten załącznik.
  • #14 4701381
    PiotrPitucha
    Poziom 34  
    Posty: 2658
    Pomógł: 201
    Ocena: 424
    Cześć
    Tą część z diodą zrozumiałeś poprawnie, natomiast jeśli chodzi o sam bocznik do pomiaru to musi być identycznie jak w aplikacji MCP601 i dobrze przeanalizuj układ, aby prądy nie płynęły drukiem, miejsce podpięcia Twojego opornika 10K do masy musi być tym samym punktem w którym wpinasz koniec bocznika, masa zasilania już nie jest taka krytyczna, ale też dobrze by była w bliskiej okolicy.
    Jako wzmacniacz możesz też dać MCP607 ( podwójny ) ma mniejszy dryft niż MCP601 i o rząd wielkości mniejszy niż LM358, na dodatek może pracować z potencjałem wejść poniżej masy co pozwala wybaczyć błędy w projekcie płytki.
    Piotr
  • #15 4702296
    saper_2
    Poziom 18  
    Posty: 322
    Pomógł: 23
    Ocena: 38
    PiotrPitucha napisał:

    ...jeśli chodzi o sam bocznik do pomiaru to musi być identycznie jak w aplikacji MCP601
    Mam 3 noty Microchipa (takie same) i nie wiem na który rysunek zwracasz mi uwagę :(
    PiotrPitucha napisał:
    i dobrze przeanalizuj układ, aby prądy nie płynęły drukiem, miejsce podpięcia Twojego opornika 10K do masy musi być tym samym punktem w którym wpinasz koniec bocznika,

    Rozumiem iż chodzi ci o R1
    PiotrPitucha napisał:
    masa zasilania już nie jest taka krytyczna, ale też dobrze by była w bliskiej okolicy.


    hmm... To mam "problema" ponieważ płytka z procesorem i docelowo ze wzm ma być ok 20cm od rezystora 0,15Ω :| , mogę użyć ekranowanego przewodu do połączenia, i jeśli bedę miał wzm w obudowie sot-23-5 to z pozostałościami z lutowania pewnie będę miał też problem...

    DODANE
    Albo spróbuje upchnąć obok tego Rp ten wzm i wyprowadzę sobie od/do niego co potrzeba (Vcc,GND, Out) od/do płytki z procesorem. Ale najpierw prototyp sobie złożę i przetestuje.
  • #16 4702630
    PiotrPitucha
    Poziom 34  
    Posty: 2658
    Pomógł: 201
    Ocena: 424
    Cześć
    http://ww1.microchip.com/downloads/en/devicedoc/11177d.pdf
    strona 1, bardzo sprytny patencik :)
    Jeśli masz już układ i musisz go podpiąć kablami to daj mimo małych prądów większą średnicę i postaraj się o sprowadzenie wszystkich mas w jeden punkt
    Piotr
  • #17 4704358
    saper_2
    Poziom 18  
    Posty: 322
    Pomógł: 23
    Ocena: 38
    O, to jest z noty od MCP607 ,a nie z 601... No to teraz widzę...

    A, więc podsumowując to co do tej pory wyszło zamieszczam na schemacie tylko ten schemat z noty ma inaczej masy niż u mnie... Proszę, zobacz jak to jest u mnie i czy dobrze podłączam.
    Załączniki:
    • Jak uzyskać liniowy pomiar prądu na AVR mega8/48 z rezystorem 0,1R? schema5.jpg (22.88 KB) Musisz być zalogowany, aby pobrać ten załącznik.
  • #18 4705864
    PiotrPitucha
    Poziom 34  
    Posty: 2658
    Pomógł: 201
    Ocena: 424
    Cześć
    Prawie dobrze
    Tylko masa pomiarowa to GND2 według Twojego oznaczenia, czyli to co jest masą wzmacniacza operacyjnego musi być na GND2, powoduje to błąd pomiaru prądu bo wzmacniacz jest zasilany z mierzonego napięcia, ale w stosunku do zakresu jest to pomijalnie mało.
    Piotr
  • #19 4709136
    saper_2
    Poziom 18  
    Posty: 322
    Pomógł: 23
    Ocena: 38
    Czyli jeśli przepnę zasilanie wzm na GND2 to będzie wszystko już ok?
    Zdobyłem u siebie OP07 ale nieliniowość mnie zbija więc pozostanie mi poczekać na MCP601....
  • #20 6230067
    krzysiekj18
    Poziom 19  
    Posty: 526
    Pomógł: 41
    Ocena: 38
    Witam
    Czy wykonałeś układ przedstawiony na schemacie powyżej, jeśli tak to jak się on sprawuje w praktyce ????
  • #21 6230735
    Dar.El
    Poziom 41  
    Posty: 5450
    Pomógł: 750
    Ocena: 888
    Witam
    Autor projektu miał problem z niezrównoważeniem napięcia wejściowego, które dla tego scalaka ma typowo 3mV. Wzmacniając to napięcie x26 otrzymujemy błąd dochodzący (typowo) do 78mV na wyjściu. Dziwne że nikt o tym nie wiedział? W takich sytuacjach trzeba dodać zerowanie.
  • #22 6234054
    krzysiekj18
    Poziom 19  
    Posty: 526
    Pomógł: 41
    Ocena: 38
    Witam a czy możesz opisać na czym polega to zerowanie, oraz czy da się ten pomiar wykonać na samym procesorze z użyciem tylko bocznika i dzielników napięcia ????
  • #23 6234076
    Dar.El
    Poziom 41  
    Posty: 5450
    Pomógł: 750
    Ocena: 888
    Trzeba zastosować pojedynczy wzmacniacz operacyjny, który ma możliwość podłączenia potencjometru do zerowania napięcia niezrównoważenia. Musi to być wzmacniacz operacyjny pracujący od ujemnego napięcia zasilania, tak jak LM358. Bezpośrednie podłączenie bocznika do wejść uP zmniejszy rozdzielczość pomiaru, lub trzeba zastosować bocznik o większej rezystancji a to spowoduje duże straty napięcia i mocy. Niektóre AVR mają możliwość wzmocnienia napięcia 20x, ale wtedy rozdzielczość przetwornika spada do 8 bitów.
  • #24 6234145
    krzysiekj18
    Poziom 19  
    Posty: 526
    Pomógł: 41
    Ocena: 38
    Ok tylko mam taki problem jak uzyskać napięcie -5V ???, jeżeli ma do dyspozycji zasilacz z wyjściami 5 i 12V
    Ps. Czy możesz podać mi jakiś gotowy i przetestowany schemat takiego rozwiązania ???
    I jeszcze jedno pytanie czy mogę do procesora podać napięcie odniesienia 1,024V, pytam ponieważ spotkałem się z opiniami że avr nie radzą sobie z tak niskim napięciem odniesienia ???
  • #25 6234481
    Klima
    Poziom 31  
    Posty: 1535
    Pomógł: 112
    Ocena: 180
    krzysiekj18 napisał:
    Ok tylko mam taki problem jak uzyskać napięcie -5V ???, jeżeli ma do dyspozycji zasilacz z wyjściami 5 i 12V
    Ps. Czy możesz podać mi jakiś gotowy i przetestowany schemat takiego rozwiązania ???


    http://pdfserv.maxim-ic.com/en/ds/ICL7660-MAX1044.pdf

    krzysiekj18 napisał:
    I jeszcze jedno pytanie czy mogę do procesora podać napięcie odniesienia 1,024V, pytam ponieważ spotkałem się z opiniami że avr nie radzą sobie z tak niskim napięciem odniesienia ???

    Dla ATmega88 minimalne napięcie referencyjne wynosi wg pedeefa 1.0V, zatem możesz.
  • #26 6237457
    Dar.El
    Poziom 41  
    Posty: 5450
    Pomógł: 750
    Ocena: 888
    Jak zasilisz WO napięciem +/-5V to powstanie nowy problem, możliwość podania na wejście uP ujemnego napięcia po którym uP pójdzie w maliny.

Podsumowanie tematu

✨ Dyskusja dotyczy problemu liniowego pomiaru prądu na mikrokontrolerach AVR (ATmega8, ATmega48, ATmega32) z użyciem bocznika o rezystancji 0,1Ω. Autor projektu mierzy spadek napięcia na boczniku i wzmacnia go wzmacniaczem operacyjnym, jednak napotyka nieliniowości i problemy z dokładnością pomiaru. Proponowane rozwiązania obejmują zastosowanie wzmacniacza różnicowego, zasilanie wzmacniacza operacyjnego symetrycznym napięciem (+5V, -5V) lub użycie układu ICL7660 do generacji napięcia ujemnego. Wskazano, że wzmacniacze typu MCP601, MCP607 (Rail-to-Rail) są lepsze od popularnych LM358 czy OP07 ze względu na mniejszy dryft i możliwość pracy z napięciami bliskimi masy. Wzmacniacz z diodą w sprzężeniu zwrotnym może kompensować nieliniowości na niskich napięciach, choć pojawiły się uwagi dotyczące wpływu temperatury na stabilność pomiaru. Dyskutowano także o napięciu referencyjnym ADC, sugerując użycie Vref około 1,024V lub 2,5V (np. LM385-2.5), co pozwala na lepszą rozdzielczość pomiaru prądu do około 10A z krokiem 10mA przy boczniku 0,1Ω. Poruszono kwestie zerowania napięcia offsetu wzmacniacza operacyjnego, co jest istotne przy wzmocnieniach rzędu 20-26x, aby uniknąć błędów pomiarowych. Wskazano, że pomiar prądu najlepiej wykonywać w masie, a nie w zasilaniu, oraz że ważne jest odpowiednie uziemienie i minimalizacja pętli masowych. Na koniec pojawił się schemat układu do pomiaru prądu do 30A z ATmega32 i Vref=2,56V, który ma być testowany w praktyce.
Podsumowanie AI na podstawie dyskusji. Może zawierać błędy.
REKLAMA