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



Teraz jest 18 kwi 2024, o 11:32


Strefa czasowa: UTC + 1





Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 5 ] 
Autor Wiadomość
PostNapisane: 21 lut 2017, o 11:18 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 08 lut 2017
Posty: 48
Pomógł: 4

Cześć

Wyznaję zasadę, że kto pyta nie błądzi.A zatem:
W ramach ćwiczeń z ADC w AVR przeglądająć datasheet-a od ATmega328P natrafiłem na podroździał 'Temperature Measurement'.
Jest tam napisane, że wybierając kanał ADC8, przy Vref jako 1.1V, można odczytać wartość napięcia z wewnętrznego czujnika temperatury, przy założeniach:
1mV -> 1 deg.C
314mV -> 25 deg.C

Wiem również, że dokładność pozostawia bardzo wiele do życzenia(+/- 10 st.C).Nie zajmowałem się kalibracją na razie ponieważ wyniki mojego programu są dziwne(raczej błędne).Na LCD pokazuje że temperatura wynosi 118 st.C, co jest mało prawdopodobne.
Zatem najpierw trzeba się zająć grubszymi błędami, a dopiero przejść do kalibracji.

Macie pomysł co może być nie tak?
Jeżeli chodzi o schemat, to nie ma żadnych specyficznych połączeń oprócz prawidłowego zasilania itp.

P.S. Wiem że rozdzielczość 8-bit byłaby może i lepsza, i można by brać pod uwagę tylko rejestr ADCH(przy ADLAR=1) ale na razie to 1 wersja programu.

Biblioteka do LCD jest dobrze napisana, bo sprawdziłem już na wielu wcześniejszych programach.

PROGRAM:
Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 21 lut 2017, o 20:58 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 08 lut 2017
Posty: 48
Pomógł: 4

O sile tzw. pułapek w kontekście wyszukiwania błędów wiem dobrze.Często to praktykuje.
I też w tym przypadku najpierw wyświetliłem wartość ADC, dopiero później dokonałem konwersji na temperaturę.
Jednakże nie wiem co może być nie tak i gdzie leży błąd.
Kod jest krótki i powinno pójść lekko a jednak...

BTW. Ma ktoś może jakieś linki do źródeł gdzie takowy czujnik był wykorzystywany?
Oczywiście mogą być źródła anglosaskie :D



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 21 lut 2017, o 22:44 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 17 paź 2014
Posty: 233
Lokalizacja: Rzeszów
Pomógł: 11

http://playground.arduino.cc/Main/InternalTemperatureSensor
Ciekaw jestem wyników

_________________
Mr. Nobody



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 22 lut 2017, o 10:12 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 08 lut 2017
Posty: 48
Pomógł: 4

No to wyniki się poprawiły, temperatura w granicach 34 biorąc pod uwagę niedokładność czujnika jest wynikiem raczej prawdziwym.
Szkoda tylko, że w tym artykule nie pojawiło się wyjaśnienie skąd wzięli te liczby i jak to się ma to informacji w nocie procka.
Anyway, dziękówa :)



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 22 lut 2017, o 12:31 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 17 paź 2014
Posty: 233
Lokalizacja: Rzeszów
Pomógł: 11

Na dole strony z linku masz linki do noty atnelowskiej.
T= (TADC - Toffset ) * K
Piszą jak wyliczyć parametry kalibracyjne.

_________________
Mr. Nobody



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: 5 ] 

Strefa czasowa: UTC + 1


Kto przegląda forum

Użytkownicy przeglądający ten dział: Brak zidentyfikowanych użytkowników i 6 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