Termometr z dodatkowymi funkcjami do samohodu
: 30 lis 2025, 22:17
Cześć
Ukończyłem właśnie termometr z dodatkowymi funkcjami do samochodu mojego taty - Corolla e12 z 2004r.
Z założenia miał to być tylko termometr, bo po zmianie z oryginalnego radia (które wyświetlało temp. zewnętrzną) na chińską stację multimedialną, nie było możliwości odczytania temp, a właścicielowi na tej funkcji zależało.
Jako że sam termometr to mało i prosto, to postanowiłem do układu dołożyć kilka funkcji:
- Zegarek wraz z datą
- sterowanie załączaniem świateł dziennych - Fabrycznie świateł dziennych ten samochód nie posiadał. Kupiliśmy na portalu a...o światła dzienne led. Każde uruchomienie silnika powodowało miganie i rozbłyski tych ledów, co szybko by ich zabiło. Teraz mój układ włącza światła dzienne z opóźnieniem 3 sekundy po uruchomieniu silnika.
- wykrywanie natężenia światła dziennego (pomiar przez ADC spadku napięcia na dzielniku fotorezystor i rezystor - wyświetlacz w ciągu dnia świeci pełną jasnością, natomiast po zmroku przyciemnia się, aby nie rozpraszać kierowcy. Sterowanie jasnością wyświetlacza zrobiłem programowo. Na wyświetlaczu przy włączonych światłach dziennych pojawia się ikonka DRL.
- Informacja o możliwej gołoledzi przy spadku temp, zewnętrznej poniżej +4stC.
- Informacja o konieczności włączenia świateł mijania o zmroku.
- Automatyczne przełączanie świateł dziennych na mijania o zmroku. (Tej funkcji nie dopisałem w programie z braku czasu i jest już za zimno, aby dobrać się do instalacji w samochodzie. Przełożyliśmy to na wiosnę.
Miejsce na wyświetlacz było mocno ograniczone w środkowej konsoli. Po wyjęciu zaślepki dostaliśmy otwór około 120/30mm. Niewiele, pierwotnie myśleliśmy o jakimś zwykłym alfanumerycznym wyświetlaczu, ale żaden z dostępnych tam się nie mieścił na wysokość. W końcu udało się dopasować wyświetlacz - padło na OLED SSD1322, matryca 256/64 piksele. Dzięki Bartkowi zdobyłem bibliotekę pod Bascom dla tego wyświetlacza.
Wyświetlacz zasilany jest napięciem +3,3V, więc aby nie komplikować układu, postanowiłem wszystko zasilić napięciem +3,3V. Zaprojektowałem płytkę i zamówiłem ją w JLCPCB, polutowałem wszystko i przystąpiłem do załadowania wsadu do mikrokontrolera ATmega32A. Niestety klapa, po kilku próbach zaprogramowania, moja atmega przestała być widoczna dla komputera. Podmieniłem ją, myśląc że kupiłem jakąś uszkodzoną. Druga sztuka podobnie jak poprzednia również szybko straciła życie. Zacząłem analizować mój układ po kolei i szukać gdzie jest problem. Myślałem, że popełniłem błąd w projektowaniu pcb i zrobiłem jakąś pętle masy i stąd te problemy. Postanowiłem zaprojektować drugą płytkę, tym razem chcąc uniknąć problemów z pętlą masy, zaprojektowałem pierwszy raz w życiu płytkę 4 warstwową
Wiem, że dla tak prostego układu płytka 4 warstwowa, to przerost formy nad treścią, ale to był mój pierwszy raz
Czegoś nowego się nauczyłem przy okazji 
I tu się uśmiejecie ze mnie, przyznaję, moje niedopatrzenie i wiara na słowo, że ten mój programator jest dobry, kosztowała mnie kupę straconego czasu i 2 atmegi.
W czasie oczekiwania na paczkę z pcb przyjrzałem się mojemu niebieskiemu programatorowi z Chin za 15zł i znalazłem informację, że te programatory są oszukane i po ustawieniu na programatorze zworki na 3,3V, nadal linie miso, mosi, sck, rst są na poziomie +5V, a ja tym wynalazkiem programowałem mikrokontroler zasilany z +3,3V i dziwiłem się, że nie działa
Założyłem tu na forum temat z prośba o doradzenie jaki programator kupić i Kolega Press zaproponował mi AVR PROG MK2. Również dziękuję za podpowiedź Koledze
Po zlutowaniu nowej płytki, podłączyłem mój wypasiony programator i sukces - wszystko działa
Sam zegarek zrobiłem w oparciu o układ scalony DS1307. Czujniki temperatury DS18B20. Sygnały z samochodu postanowiłem odizolować od ATmegi za pomocą optoizolatora TCMT4100. Napięcia zasilania obniżyłem do wymaganych wartości za pomocą stabilizatorów LM1117. Układ po zgaszeniu silnika pobiera z akumulatora około 18mA.
Klawiaturę z 3 przycisków kupioną na ali obkleiłem filcem i obszyłem kawałkiem perforowanej skóry. Klawiatura schowana jest w schowku na środkowej konsoli. Będzie używana góra 2 -3 razy w roku przy zmianie czasu z zimowego na letni, ewentualnie korekta zegarka. Przycisków nie widać, ale są bardzo łatwo wyczuwalne pod palcem.
W załączeniu kilka fotek mojego termometru. Za 2 tygodnie jak będę u rodziców, to zrobię zdjęcie po wyjęciu środkowej konsoli, jak to przymocowałem od środka.
Ukończyłem właśnie termometr z dodatkowymi funkcjami do samochodu mojego taty - Corolla e12 z 2004r.
Z założenia miał to być tylko termometr, bo po zmianie z oryginalnego radia (które wyświetlało temp. zewnętrzną) na chińską stację multimedialną, nie było możliwości odczytania temp, a właścicielowi na tej funkcji zależało.
Jako że sam termometr to mało i prosto, to postanowiłem do układu dołożyć kilka funkcji:
- Zegarek wraz z datą
- sterowanie załączaniem świateł dziennych - Fabrycznie świateł dziennych ten samochód nie posiadał. Kupiliśmy na portalu a...o światła dzienne led. Każde uruchomienie silnika powodowało miganie i rozbłyski tych ledów, co szybko by ich zabiło. Teraz mój układ włącza światła dzienne z opóźnieniem 3 sekundy po uruchomieniu silnika.
- wykrywanie natężenia światła dziennego (pomiar przez ADC spadku napięcia na dzielniku fotorezystor i rezystor - wyświetlacz w ciągu dnia świeci pełną jasnością, natomiast po zmroku przyciemnia się, aby nie rozpraszać kierowcy. Sterowanie jasnością wyświetlacza zrobiłem programowo. Na wyświetlaczu przy włączonych światłach dziennych pojawia się ikonka DRL.
- Informacja o możliwej gołoledzi przy spadku temp, zewnętrznej poniżej +4stC.
- Informacja o konieczności włączenia świateł mijania o zmroku.
- Automatyczne przełączanie świateł dziennych na mijania o zmroku. (Tej funkcji nie dopisałem w programie z braku czasu i jest już za zimno, aby dobrać się do instalacji w samochodzie. Przełożyliśmy to na wiosnę.
Miejsce na wyświetlacz było mocno ograniczone w środkowej konsoli. Po wyjęciu zaślepki dostaliśmy otwór około 120/30mm. Niewiele, pierwotnie myśleliśmy o jakimś zwykłym alfanumerycznym wyświetlaczu, ale żaden z dostępnych tam się nie mieścił na wysokość. W końcu udało się dopasować wyświetlacz - padło na OLED SSD1322, matryca 256/64 piksele. Dzięki Bartkowi zdobyłem bibliotekę pod Bascom dla tego wyświetlacza.
Wyświetlacz zasilany jest napięciem +3,3V, więc aby nie komplikować układu, postanowiłem wszystko zasilić napięciem +3,3V. Zaprojektowałem płytkę i zamówiłem ją w JLCPCB, polutowałem wszystko i przystąpiłem do załadowania wsadu do mikrokontrolera ATmega32A. Niestety klapa, po kilku próbach zaprogramowania, moja atmega przestała być widoczna dla komputera. Podmieniłem ją, myśląc że kupiłem jakąś uszkodzoną. Druga sztuka podobnie jak poprzednia również szybko straciła życie. Zacząłem analizować mój układ po kolei i szukać gdzie jest problem. Myślałem, że popełniłem błąd w projektowaniu pcb i zrobiłem jakąś pętle masy i stąd te problemy. Postanowiłem zaprojektować drugą płytkę, tym razem chcąc uniknąć problemów z pętlą masy, zaprojektowałem pierwszy raz w życiu płytkę 4 warstwową
I tu się uśmiejecie ze mnie, przyznaję, moje niedopatrzenie i wiara na słowo, że ten mój programator jest dobry, kosztowała mnie kupę straconego czasu i 2 atmegi.
W czasie oczekiwania na paczkę z pcb przyjrzałem się mojemu niebieskiemu programatorowi z Chin za 15zł i znalazłem informację, że te programatory są oszukane i po ustawieniu na programatorze zworki na 3,3V, nadal linie miso, mosi, sck, rst są na poziomie +5V, a ja tym wynalazkiem programowałem mikrokontroler zasilany z +3,3V i dziwiłem się, że nie działa
Założyłem tu na forum temat z prośba o doradzenie jaki programator kupić i Kolega Press zaproponował mi AVR PROG MK2. Również dziękuję za podpowiedź Koledze
Po zlutowaniu nowej płytki, podłączyłem mój wypasiony programator i sukces - wszystko działa
Sam zegarek zrobiłem w oparciu o układ scalony DS1307. Czujniki temperatury DS18B20. Sygnały z samochodu postanowiłem odizolować od ATmegi za pomocą optoizolatora TCMT4100. Napięcia zasilania obniżyłem do wymaganych wartości za pomocą stabilizatorów LM1117. Układ po zgaszeniu silnika pobiera z akumulatora około 18mA.
Klawiaturę z 3 przycisków kupioną na ali obkleiłem filcem i obszyłem kawałkiem perforowanej skóry. Klawiatura schowana jest w schowku na środkowej konsoli. Będzie używana góra 2 -3 razy w roku przy zmianie czasu z zimowego na letni, ewentualnie korekta zegarka. Przycisków nie widać, ale są bardzo łatwo wyczuwalne pod palcem.
W załączeniu kilka fotek mojego termometru. Za 2 tygodnie jak będę u rodziców, to zrobię zdjęcie po wyjęciu środkowej konsoli, jak to przymocowałem od środka.