Kanał - ATNEL tech-forum
Wszystkie działy
Najnowsze wątki



Teraz jest 1 lip 2026, o 18:07


Strefa czasowa: UTC + 1





Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 13 ] 
Autor Wiadomość
PostNapisane: 18 lut 2015, o 00:21 
Offline
Użytkownik

Dołączył(a): 01 mar 2014
Posty: 117
Lokalizacja: Kraków
Zbananowany użytkownik

Pomógł: 1

Zauważyłem, że w kwestii pomiaru napięcia zasilania naszych AVRów króluje w Internecie metoda z dzielnikiem napięcia - mniej więcej taka:

Obrazek

Na wejście przetwornika ADC podawane jest napięcie zasilania poprzez rezystorowy dzielnik napięcia dobrany tak, by maksymalna wartość tego napięcia była niższa od napięcia odniesienia na wejściu AREF. Rejestr ADMUX ustawia się wtedy na wbudowane napięcie odniesienia 2,56V (lub 1,1V) lub "otwiera" wejście AREF dla zewnętrznego źródła napięcia odniesienia.

Wzór do obliczeń dla rozdzielczości 10 bitów:

Obrazek

Jeżeli jednak ktoś z zasady nie lubi dzielników napięcia lub potrzebuje stabilniejszego pomiaru (np mniej zależnego od temperatury), to można tak:

Obrazek

Na wejście ADC podajemy stałe napięcie z zewnętrznego źródła, ale takie, które będzie określało minimalną wartość mierzonego napięcia. Natomiast wejście AREF łączymy przy pomocy rejestru ADMUX z napięciem zasilania AVCC.

Obrazek

To nie jest rozwiązanie mojego autorstwa - przekazał mi je znajomy konstruktor. Jeżeli jest ono znane i powszechne, to przepraszam za zamieszanie. Jeśli w rozumowaniu jest jakiś błąd, to również przepraszam - mogłem coś przekręcić. A jeśli wszystko jest ok, to życzę miłego stosowania:)



Ostatnio edytowano 18 lut 2015, o 21:12 przez kudzu, łącznie edytowano 1 raz

Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 18 lut 2015, o 06:32 
Offline
Użytkownik

Dołączył(a): 01 mar 2014
Posty: 117
Lokalizacja: Kraków
Zbananowany użytkownik

Pomógł: 1

Możesz pokierować do jakichś informacji? Znajduję tylko źródło napięcia odniesienia typu bandgap.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 18 lut 2015, o 08:53 
Offline
Użytkownik

Dołączył(a): 20 wrz 2013
Posty: 647
Zbananowany użytkownik

Pomógł: 101

Jakoś tak: http://jeelabs.org/2012/05/04/measuring-vcc-via-the-bandgap/
Tylko zamiast kocich delayów zastosować usypianie procka w trybie Noise Reduction (oczywiście jeśli uC to ma)

_________________
+++++[>++++<-]>[>++++++<-]>.---------.+++.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 18 lut 2015, o 13:55 
Offline
Użytkownik

Dołączył(a): 01 mar 2014
Posty: 117
Lokalizacja: Kraków
Zbananowany użytkownik

Pomógł: 1

Szczerze mówiąc nie rozumiem tej idei. Co mi daje wewnętrzny Vref 1.1V (czy 2,56) skoro napięcie zasilania zawsze jest wyższe? Jak i gdzie następuje pomiar?



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 18 lut 2015, o 14:37 
Offline
Użytkownik

Dołączył(a): 20 wrz 2013
Posty: 647
Zbananowany użytkownik

Pomógł: 101

I bardzo dobrze, że jest wyższe. W tym wypadku połączenia są "na odwrót": napięciem odniesienia jest napięcie zasilania a przetwornikiem mierzy się Internal Vref. Dla realizacji pomiaru niepotrzebny jest żaden dodatkowy hardware bo zarówno ustawienie AREF jak i skierowanie Vref na ADC odbywa się ustawieniami rejestru ADMUX. Ta metoda oczywiście zda egzamin tylko przy zasilaniu procka bezpośrednio z baterii, bez stabilizatora.

_________________
+++++[>++++<-]>[>++++++<-]>.---------.+++.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 18 lut 2015, o 17:09 
Offline
Użytkownik

Dołączył(a): 01 mar 2014
Posty: 117
Lokalizacja: Kraków
Zbananowany użytkownik

Pomógł: 1

Tak właśnie przypuszczałem, ale nie mogę tego do kupy poskładać, bo nie widzę w ATmega1284 opcji przekazania Vref bezpośrednio na ADC.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 18 lut 2015, o 17:14 
Offline
Użytkownik

Dołączył(a): 01 mar 2014
Posty: 117
Lokalizacja: Kraków
Zbananowany użytkownik

Pomógł: 1

Bo generalnie zasada jest ta sama co w moim przykładzie, ale z wykorzystaniem wewnętrznego źródła. Gdyby tak się dało, to byłoby super! Ale w takim razie czemu w Internecie najpowszechniejsze jrst rozwiązanie z dzielnikiem?



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 18 lut 2015, o 17:22 
Offline
Użytkownik

Dołączył(a): 01 mar 2014
Posty: 117
Lokalizacja: Kraków
Zbananowany użytkownik

Pomógł: 1

Ha! Jest. Ustawiane multiplekserem. Rewelacja!



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 18 lut 2015, o 19:09 
Offline
Użytkownik

Dołączył(a): 22 gru 2013
Posty: 296
Lokalizacja: Szczecin
Pomógł: 47

Albo konstruktor Cię podpuścił, albo źle narysowałeś drugi schemat.
MC1541 to wg datasheet "dual sense amplifier" i nie pasuje do układu pomiaru napięcia ani elektrycznie ani logicznie.
http://www.datasheet-pdf.com/datasheet/Motorola/542364/MC1541.pdf.html
Jest za to dostępny układ MCP1541, który akurat pasuje logicznie i układowo do podanego schematu ( jednak daje daje ok. 4,096V napięcia referencyjnego- co nadaje się tylko dla Vcc=5V).
http://www.microchip.com/wwwproducts/Devices.aspx?product=MCP1541
Na szczęście jest jego "brat bliźniak" MCP1525, który daje napięcie ok. 2,5V -do zastosowania przy zasilaniu Vcc=3,3V.
Oba można dostać za ok. 2-3 zł sztuka.

Tak więc skoryguj proszę powyższy schemat.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 18 lut 2015, o 19:20 
Offline
Użytkownik

Dołączył(a): 04 paź 2011
Posty: 8631
Pomógł: 338

jak potrzebujesz dużej precyzji to zawsze jest MAX6325 pisałem już o nim na stronie , ale ... ciężko dostępny i drogi



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 18 lut 2015, o 21:02 
Offline
Użytkownik

Dołączył(a): 01 mar 2014
Posty: 117
Lokalizacja: Kraków
Zbananowany użytkownik

Pomógł: 1

krish napisał(a):
Albo konstruktor Cię podpuścił, albo źle narysowałeś drugi schemat.
MC1541 to wg datasheet "dual sense amplifier" i nie pasuje do układu pomiaru napięcia ani elektrycznie ani logicznie.
http://www.datasheet-pdf.com/datasheet/Motorola/542364/MC1541.pdf.html
Jest za to dostępny układ MCP1541, który akurat pasuje logicznie i układowo do podanego schematu ( jednak daje daje ok. 4,096V napięcia referencyjnego- co nadaje się tylko dla Vcc=5V).
http://www.microchip.com/wwwproducts/Devices.aspx?product=MCP1541
Na szczęście jest jego "brat bliźniak" MCP1525, który daje napięcie ok. 2,5V -do zastosowania przy zasilaniu Vcc=3,3V.
Oba można dostać za ok. 2-3 zł sztuka.

Tak więc skoryguj proszę powyższy schemat.


Oczywiście masz rację. Ale to jest moje niedopatrzenie. Kupiłem w TME kilka MCP1541TT i umieściłem w schemacie jako przykład, ale nie zauważyłem, że brakuje jednej literki. Generalnie chodziło mi o jakikolwiek źródło napięcia odniesienia.
Znajomy konstruktor rzucił im tylko hasło, które ja później po swojemu zinterpretowałem. On akurat pracuje na procesorach Motoroli. Nie wiedziałem, co zresztą widać w moich postach, że AVRy mają takie fajne możliwości, jak przerzucenie Vref do ADC:]
Schemat poprawię po powrocie z delegacji, bo w tej chwili nie mam dostępu do odpowiednich narzędzi.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 18 lut 2015, o 21:13 
Offline
Użytkownik

Dołączył(a): 01 mar 2014
Posty: 117
Lokalizacja: Kraków
Zbananowany użytkownik

Pomógł: 1

krish napisał(a):
Tak więc skoryguj proszę powyższy schemat.


Partyzancko, ale zrobione.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 19 lut 2015, o 12:15 
Offline
Użytkownik

Dołączył(a): 22 gru 2013
Posty: 296
Lokalizacja: Szczecin
Pomógł: 47

Prowizorka jest najtrwalsza. ;)



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
Wyświetl posty nie starsze niż:  Sortuj wg  
Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 13 ] 

Strefa czasowa: UTC + 1


Kto przegląda forum

Użytkownicy przeglądający ten dział: Brak zidentyfikowanych użytkowników i 2 gości


Nie możesz rozpoczynać nowych wątków
Nie możesz odpowiadać w wątkach
Nie możesz edytować swoich postów
Nie możesz usuwać swoich postów
Nie możesz dodawać załączników

Szukaj:
Skocz do:  
Sitemap
Technologię dostarcza phpBB® Forum Software © phpBB Group phpBB3.PL
phpBB SEO