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

Minikomputer samochodowy

barti879 26 Lut 2015 20:56 27354 46
  • Minikomputer samochodowy

    Chciałbym zaprezentować swój najnowszy projekt, jakim jest minikomputer do samochodu. Urządzenie powstało z potrzeby. A było to tak... Miesiąc temu kupiłem Forda Focusa Mk1, który niestety nie był wyposażony w termometr. Zabrałem się więc do pracy! Początkowo miał być to sam termometr dwupunktowy i zegar oraz data. Jak wiadomo - apetyt rośnie w miarę jedzenia, więc z czasem dochodziły kolejne funkcje, aż w końcu nazwę "termometru" zastąpił "minikomputer". Nazwa dla wielu pewnie sporo na wyrost, ale ja go tak nazwałem i koniec. ;P


    OPIS FUNKCJI

    1. Termometr dwupunktowy (temperatura wewnętrzna i zewnętrzna)

    Minikomputer samochodowy


    2. Aktualna data i godzina

    Minikomputer samochodowy


    3. Pomiar napięcia akumulatora

    Na wyświetlaczu obok godziny wyświetlane jest zmierzone przez przetwornik ADC napięcie akumulatora.


    4. Przypomnienie o włączeniu świateł
    Urządzenie dzięki pomiarom napięcia z przełącznika od hamulca ręcznego oraz podświetlania deski rozdzielczej (włączane automatycznie razem ze światłami) w razie potrzeby przypomina nam o konieczności włączenia świateł. Jeśli przy uruchomionym silniku zwolnimy hamulec ręczny, a światła nie są włączone, na ekranie pojawi się komunikat "WŁĄCZ ŚWIATŁA". Komunikat zniknie po ich włączeniu lub przyciśnięciu klawisza MODE przy kierownicy.

    Minikomputer samochodowy


    5. Ostrzeżenie o śliskiej nawierzchni
    Jeśli temperatura zewnętrzna jest mniejsza niż 2 stopnie, na ekranie wyświetlany jest komunikat "UWAGA! MOŻE BYĆ ŚLISKO". Informacja zniknie po 30 sekundach lub po przyciśnięciu klawisza MODE przy kierownicy.






    6. Automatyczna regulacja jasności podświetlenia wyświetlacza LCD
    Poprzez przyciskanie klawisza MODE, podczas gdy nie wyświetlane są żadne komunikaty, zmieniamy tryb sterowania jasnością podświetlania LCD - automatyczny (pomiar natężenia światła poprzez fotorezystor) lub manualny - intensywnością świecenia sterujemy przyciskami VOL+ i VOL- przy kierownicy. Zmiana sygnalizowana jest odpowiednią informacją wyświetlaną na LCD przez 2s. Jest to bardzo przydatna funkcja, ponieważ wyświetlacz nie męczy oczu podczas jazdy w nocy.

    Minikomputer samochodowyMinikomputer samochodowy


    7. Sterowanie urządzeniem z "pilota" do sterowania radia przy kierownicy
    W moim Focusie nie mam oryginalnego radia i ów pilot był już bezużyteczny. Znalazłem jednak dla niego zastosowanie! Po pomierzeniu okazało się, że to zwykła drabinka rezystorowa, więc po zbudowaniu dzielnika na rezystorach możemy mierzyć spadki napięcia i przypisać je do odpowiednich przycisków.

    Minikomputer samochodowy


    Wszystkie informacje wyświetlane są na dwóch ekranach zmienianych automatycznie co 10s. Możemy też dokonać szybkiej zmiany poprzez przyciśnięcie przycisku SEEK przy kierownicy. Może to być pomocne w momencie, gdy chcemy szybko sprawdzić temperaturę lub godzinę.

    Na pierwszym ekranie wyświetlana jest temperatura zewnętrzna i wewnętrzna wraz z symbolami.

    Minikomputer samochodowy


    Ekran drugi to godzina, data i napięcie akumulatora.

    Minikomputer samochodowy


    BUDOWA

    Warstwa sprzętowa
    Mózgiem urządzenia jest mikrokotroler ATmega8. Zasilanie zrealizowane poprzez liniowy stabilizator LM7805 oraz kondensatory filtrujące. Wyświetlacz to popularny LCD 2x16 ze sterownikiem HDD44780. Temperatura mierzona jest czujnikami DS18b20 podłączonymi do mikrokontrolera magistralą 1Wire. Za przechowywanie daty i godziny odpowiedzialny jest DS1307 z podtrzymaniem bateryjnym (CR2032) podłączony magistralą I2C. Pomiary napięć z akumulatora, fotorezystora, przycisków, czujnika hamulca i podświetlenia deski zrealizowane na odpowiednio dobranych dzielnikach rezystorowych (tak, żeby nie przekroczyć 5V). Napięcie z dzielników mierzone jest przez wbudowany w procesor przetwornik analogowo-cyfrowy (ADC). Wartości poszczególnych dzielników można zobaczyć na schemacie. Automatyczna regulacja jasności działa na zasadzie pobrania wartości napięcia z dzielnika (0-1023), przekonwertowania jej na wartość 0-255 i wpisanie do odpowiedniego rejestru (OCR2). Regulacja jasności zrealizowana jest poprzez PWM Timera2. Przy przyciskaniu przycisków na "pilocie" mierzone jest napięcie na dzielniku i w zależności, w jakim przedziale się znajduje, wykonywana jest odpowiednia operacja w programie.

    Warstwa programowa
    Program powstał w języku C w środowisku AVR Studio 6. Pisany był głownie wieczorami. Procek pracuje na wewnętrznym rezonatorze 1MHz, więc nie trzeba zmieniać fabrycznych fuse-bitów. Do obsługi LCD, oraz magistrali 1Wire i I2C użyłem bibliotek od Mirosława Kardasia (z Bluebooka). Program zajmuje 67% pamięci.

    W końcu zaczynamy wszystko składać!
    Schemat oraz wzór ścieżek powstał w EAGLE'u. Płytka wykonana termotransferem i pocynowana stopem Liechtenberga (znacznie ułatwia lutowanie i zabezpiecza ścieżki przed utlenianiem). Z powodu ograniczonego miejsca nad radiem do budowy zastosowałem zarówno elementy przewlekane, jak i SMD (rezystory i kondensatory w obudowach 1206).
    Tak prezentuje się schemat, wzór ścieżek i zmontowana płytka.

    Minikomputer samochodowy Minikomputer samochodowyMinikomputer samochodowyMinikomputer samochodowy


    Otwór na wyświetlacz wykonany w zaślepce nad radio. Wyświetlacz przymocowany jest do plastiku za pomocą przyklejonych do niego pasków laminatu z przylutowanymi śrubkami M3. Mimo pierwszego wrażenia mocowanie jest stabilne i mocne.

    Minikomputer samochodowyMinikomputer samochodowyMinikomputer samochodowy


    MONTAŻ W AUCIE
    Montaż w samochodzie sprowadzał się do przeciągnięcia kilku przewodów, podłączenia zasilania i włożenia minikomputera na swoje miejsce. Zasilanie poprowadzone od radia. Przewód do czujnika hamulca ręcznego przeciągnięty w tunelu środkowym. Odpowiednio zabezpieczony czujnik temperatury zewnętrznej idzie pod deską rozdzielczą razem z główną wiązką i jest wyprowadzony przez zaślepkę na zewnątrz. Tam lekko schowałem go w błotniki i wcisnąłem między piankę a blachę w okolicach dolnego zawiasu drzwi. Wskazania temperatury są tam poprawne - jest tam swobodny przepływ powietrza i blisko ziemi.

    Minikomputer samochodowyMinikomputer samochodowyMinikomputer samochodowyMinikomputer samochodowy


    Czujnik wewnętrzny umieszczony między plastikami w części nad kolanami kierowcy.

    Minikomputer samochodowy


    Fotorezystor zamontowałem w środkowej kratce wentylacyjnej.

    Minikomputer samochodowy Minikomputer samochodowy


    Kilka fotek podłączonego układu:

    Minikomputer samochodowy Minikomputer samochodowy Minikomputer samochodowy


    EFEKT KOŃCOWY
    Tak prezentuje się zamontowany w aucie minikomputer:

    Minikomputer samochodowy Minikomputer samochodowy Minikomputer samochodowy Minikomputer samochodowy


    Koszty
    Niektóre elementy miałem w swoich szufladowych zapasach. Za resztę rzeczy, które które kupiłem zapłaciłem około 40-45zł.


    Podsumowanie
    Dzięki temu projektowi mogłem pogłębić wiedzę w programowaniu w języku C. Uczę się go od roku i robię coraz większe postępy. Mówią, że potrzeba jest matka wynalazków. również w tym przypadku się to sprawdziło. Koszty, które poniosłem w porównaniu do przydatności są na prawdę niewielkie. Zapewne za tą cenę można było kupić coś podobnego, ale satysfakcja z własnoręcznego wykonania jest ogromna. Urządzenie bardzo przydatne i funkcjonalne. W pełni spełnia swoje zadanie! Mam nadzieję, że Wam również się spodoba, a nawet może nawet ktoś zbuduję taki sam mikrokomputer według tego projektu.


    Pozdrawiam i życzę miłej lektury!


    Jeśli ktoś jest zainteresowany budową proszę o wiadomość na PRIV lub na bartek879(malpa)interia.pl . Wyślę wtedy wszystkie potrzebne pliki. ;)


    Fajne! Ranking DIY
    Potrafisz napisać podobny artykuł? Wyślij do mnie a otrzymasz pendrive 32GB.
  • Sklep HeluKabel
  • #2 26 Lut 2015 21:13
    dondu
    Moderator Mikrokontrolery Projektowanie

    Bardzo ładny projekt, schemat czytelny :)
    Szkoda, że nie załączyłeś źródeł programu.

    Generalnie jak na jeden z pierwszych Twoich projektów to super!

  • #3 26 Lut 2015 21:14
    Patryk L

    Poziom 16  

    Świetny projekt, prosto i z pomysłem :) mam tylko pytanko dlaczego wg załączonego schematu nóżka AREF wisi w powietrzu ?


    Pozdrawiam Patryk_L

  • #5 26 Lut 2015 21:18
    Traker Wymiatacz
    Poziom 13  

    Konstrukcja schludna, bardzo ładnie wykonana. Jedyna rzecz, do której bym się przyczepił to ten fotorezystor.
    Poza tym, czy nie wygląda to trochę dziwnie, że obok siebie są trzy lcdki, każdy w innym stylu i kolorystyce?
    Osobiście wydaje mi się, że taka konstrukcja jest raczej zbędna, bo komputer w samochodzie powinien pokazywać informacje, które są przydatne podczas jazdy, np.spalanie itp.
    Godzina jest na zegarku, data raczej nie potrzebna, woltomierz też raczej zbędny, takie jest moje zdanie.
    Niemniej uważam, że konstrukcja ciekawa, a korzyści w postaci nauki są raczej bezcenne ;).
    Pozdrawiam

  • Sklep HeluKabel
  • #6 26 Lut 2015 21:23
    barti879
    Poziom 18  

    Oczywiście macie rację. Małe przeoczenie - nóżka AREF wisi w powietrzu. Niestety wkradło się niedopatrzenie.

    Nie mam komputera pokazującego takich informacji jak spalanie, itp. dlatego zbudowałem jego wersje "demo" .

  • #7 26 Lut 2015 21:40
    tomek122
    Poziom 21  

    Oczywiście, fajny projekt. Ale dla czego znowu (jak większość), otwór wycięty wielkości całego wyświetlacza włącznie z jego metalową ramką? Trzeba było wyciąć wielkości samego wyświetlacza LCD bez jego ramki. To tylko mała uwaga do projektu, który bądź co bądź, jest fajny.

  • #8 26 Lut 2015 21:43
    Stefan_2000
    Poziom 18  

    Dzielnik wykorzystany do pomiaru napięcia na akumulatorze ma wartości 2 MΩ i 1 MΩ. Nie jest to za dużo? Na schematach takich dzielników widziałem raczej wartości rzędu kilkudziesięciu kΩ.

  • #9 26 Lut 2015 22:03
    kamil.b
    Poziom 12  

    Jedna mała uwaga:
    Układy scalone w aucie na podstawkach to proszenie się o kłopoty. Drgania mają szansę wytrzęść układ z podstawki tak samo jak zdarza się to np z niektórymi przekaźnikami.
    Oprócz tego - bardzo fajnie zrealizowany układ.

  • #10 26 Lut 2015 22:18
    barti879
    Poziom 18  

    Tworzywo, w którym wycinałem na około 2,5mm grubości więc wyświetlacz byłby za głęboko i krawędzie ograniczałyby widoczność.

    Dzielnik ma takie wartości, ponieważ akurat miałem takie rezystorki. Przecież mierzymy napięcie, a ono zawsze beż różnicy czy będą to kilo czy megaomy będzie równe jeśli stosunek rezystorów jest taki sam. Wszystko działa poprawnie i jak na razie nie zauważyłem problemów.

    Co do podstawki to wydaje mi się, że styki zbyt mocno trzymają żeby układ mógł się wysunąć od drgań.

  • #11 26 Lut 2015 22:36
    Mariusz_N
    Poziom 18  

    tomek122 ma rację tak i nie. Z punktu widzenia projektanta tego urządzenia wycięcie otworu na cały wyświetlacz ma sens, bo łatwo go można zamocować, ALE jeśli już tak się robi, to można wydrukować na drukarce maskownicę oraz nakleić na nią folię przeźroczystą dla zabezpieczenia. Jeśli dobrze się to zrobi, to efekt będzie bardzo dobry i w zasadzie nie do odróżnienia od fabryki przy zastosowaniu się do stylistyki producenta samochodu. Urządzenie bardzo fajne i przydatne w samochochodzie, który nie jest fabrycznie wyposażony w takie cuda. Duży plus za pomysł!

  • #12 26 Lut 2015 23:25
    Tomekkoko
    Poziom 15  

    A czy nie lepiej było wmontować w miejsce gdzie oryginalnie znajduję się komputer w focusie?
    Minikomputer samochodowy

  • #13 26 Lut 2015 23:41
    barti879
    Poziom 18  

    Myślałem o tym jednak wiązało by się to z kolejnymi kosztami (odpowienia ramka na licznik- w mojej jest półeczka na drobiazgi) oraz większymi trudnościami z zamontowaniem. Mam na myśli dostęp do przewodów itp.

  • #14 27 Lut 2015 00:51
    Belialek
    Poziom 22  

    Nie wiem jak w focusie, ale w większości aut sterowanie radiem z kierownicy polega na odpowiedniej rezystancji przewodu - wystarczy dopasować wartości do sygnałów sterowania danego modelu radia (podmienić rezystory) i powinno działać.

  • #15 27 Lut 2015 08:11
    barti879
    Poziom 18  

    Radio, które mam zamontowane (LG LAC-M6500) nie ma opcji sterowania zewnętrznego. Oryginalne radio z Focusa miało coś takiego, ale kupiłem samochód już bez niego.

  • #16 27 Lut 2015 08:42
    danthe
    Poziom 29  

    Witam.

    Moim zdaniem dzielnik do pomiaru napięcia powinien mieć mniejsze wartości rezystancji. Według noty katalogowej Atmela, rezystancja wejściowa przetwornika może się wahać w zakresie od 55M do 100M. Przez to taki dzielnik może być "nieobliczalny". Także dzielniki do świateł i stopu są źle podłączone. Przy takich wartościach rezystorów napięcie wyjściowe z dzielnika wyniesie ok.10V przy napięciu 14,4V w instalacji.

  • #17 27 Lut 2015 09:06
    barti879
    Poziom 18  

    Co do dzielnika do pomiaru napięcia akumulatora nie będę się spierał, ponieważ był dobrany z elementów, które miałem. Zmienię to przy najbliższej okazji.

    Jakim cudem napięcie będzie wynosiło 10V? Przecież Atmega dawno już by się spaliła. Przecież:
    Uwy = Uwe x R1/R1 + R2 = 14,4V x 100k/100k + 240k = 4,24 V.

    Dzielnik ten dobrany był tak, żeby właśnie przy max 15V napięcie na wyjściu nie przekraczało 5V. Według noty katalogowej minimalne napięcie odczytane przez uC jako stan wysoki wynosi 0,6Vcc = 3V. Czyli już przy napięciu około 10,2 V podanym na dzielnik na wejściu świateł lub hamulca zostanie odczytany stan wysoki.

  • #18 27 Lut 2015 10:38
    novcio
    Poziom 12  

    Ja natomiast przyczepię się czegoś innego. Bardzo ładne ikonki graficzne typu samochód, chmurka i akumulator. Pierwszy raz się spotkałem z takim czymś na wyświetlaczach przeznaczonych głównie do wyświetlania tekstu. Genialny pomysł ja bym na to nie wpadł:) Pozdrawiam

  • #19 27 Lut 2015 10:44
    mlassota
    Poziom 18  

    Witam

    Sprawdź obliczenia i uwzględnij że 240k jest od strony GND a nie zasilania - napięcie będzie ok 10V ale... atmega się nie spali bo natężenie jest bardzo niskie i diody występujące w strukturze mikrokontrolera obniżają napięcie wchodzące do VCC a dzięki niskiemu natężeniu nie ulegają uszkodzeniu

    Pozdrawiam

  • #20 27 Lut 2015 10:46
    szeryfff
    Poziom 24  

    Dokładnie, albo jest błąd na schemacie, albo źle kolega policzył. W tej chwili R1 ma 240ka nie 100k, więc napięcie z dzielnika ma ok 10V.

  • #21 27 Lut 2015 12:32
    wzagra
    Poziom 33  

    Pomysł, jak na cel edukacyjny, bardzo dobry. Kwestie elektroniki Koledzy poruszyli wyżej, więc się nie będę powtarzał.
    Mam uwagę do estetyki (tu też było wspomniane wcześniej o wycinaniu otworu) - nie razi Cię, że radio ma wyświetlacz zielony, a Ty władowałeś niebieski? Jak dla mnie to taki "drobny dysonans".

  • #22 27 Lut 2015 15:34
    tomiok
    Poziom 33  

    Cytat:
    5. Ostrzeżenie o śliskiej nawierzchni
    Jeśli temperatura zewnętrzna jest mniejsza niż 2 stopnie, na ekranie wyświetlany jest komunikat "UWAGA! MOŻE BYĆ ŚLISKO". Informacja zniknie po 30 sekundach lub po przyciśnięciu klawisza MODE przy kierownicy.


    Za szybko - znika, jak dla mnie mogło by się pojawiać na 10 sekund, np co minutę, aż ręcznie tego nie zaakceptuję,.
    Albo ...jakby było wyświetlanie było połączone z sygnałem dźwiękowym, wówczas się nie przeoczy tego ważnego w końcu komunikatu.

    A do jakiej temperatury się wyświetla ostrzeżenie ?
    Czy nawet przy -20 też będzie komunikat ?

    Projekt mi się podoba, zegarek się przyda (bo u mnie np. fabryczny zepsuty) :D

  • #23 27 Lut 2015 18:04
    dondu
    Moderator Mikrokontrolery Projektowanie

    barti879 napisał:
    Dzielnik ten dobrany był tak, żeby właśnie przy max 15V napięcie na wyjściu nie przekraczało 5V.

    Nie prawda - jak koledzy napisali wyżej, masz błąd w dobraniu rezystorów dzielnika, o czym możesz się przekonać biorąc dwa rezystory podłączając je do akumulatora jak dzielnik i mierząc napięcie na wyjściu dzielnika, który nie jest podłączony do pinu mikrokontrolera.

    barti879 napisał:
    Jakim cudem napięcie będzie wynosiło 10V? ... Przecież:
    Uwy = Uwe x R1/R1 + R2 = 14,4V x 100k/100k + 240k = 4,24 V.

    Wzór jest zły - co według Ciebie daje R1/R1 - czyż nie 1? :)
    W ten sposób obliczyłeś: Uwy = Uwe x 1 + R2
    Jakim cudem uzyskałeś Volty i wynik?

    Pomijając fakt pomyłki we wzorze, 4,24 to spadek napięcia na górnym rezystorze, czyli na pinie masz wtedy: 14,4 - 4,24 = 10,16V.

    barti879 napisał:
    Przecież Atmega dawno już by się spaliła.

    Nie ponieważ: 10,16V (napięcia którym traktujesz pin) - 5V (zasilanie ATmegi) - 0,5V (napięcie VF diody zabezpieczającej pin) = 4,66V
    Takie napięcie w Twoim przypadku niweluje dioda zabezpieczająca.

    Prąd płynący przez diodę zabezpieczającą wynosić będzie więc: 4,66V/100kΩ = 46,6µA.

    A dioda ta może wytrzymać znacznie więcej i dlatego tylko dzięki niej (bo właśnie po to jest) Twój mikrokontroler jeszcze dycha :)

    Dlatego należy zamienić rezystory miejscami i po kłopocie.

  • #24 27 Lut 2015 18:52
    slavo666
    Poziom 17  

    Widzę, że posiadasz klej na gorąco, więc od razu radzę ci zabezpieczyć sobie baterię, układy w podstawkach, kwarc zegarkowy, śruby od wyświetlacza, potencjometr montażowy i wszystkie wtyki wciśnięte w płytkę. Mimo, że układ nie ma związku z bezpieczeństwem podróżowania, to uchronisz się przed późniejszymi usterkami. Klej taki odpada bez żadnego problemu po polaniu go alkoholem izopropylowym, gdybyś chciał go kiedyś usuwać.
    Druga moja sugestia, to zmiana wyświetlacza na negatywowy o czarnym tle, jak np. taki:
    Minikomputer samochodowy
    lub:
    Minikomputer samochodowy
    Dużo lepsza widoczność i nie będą w nocy przeszkadzać.
    Sam projekt jest bardzo przydatny, warto znać takie parametry jak temperatura i stan akumulatora na bieżąco, o dacie i godzinie nie wspominając.
    Informację o możliwym oblodzeniu możesz również zrobić w formie migającej ikonki.

  • #25 27 Lut 2015 23:41
    lukasixthm
    Poziom 23  

    Polecam wyświetlacz negatywowy : biale litery na czarnym tle. Kosztuje ok 30zł ale efekt super. Sam zastosowałem taki w swoim komputerze i czytelność w pełnym padającym na niego słońcu jest lepsza niż w nocy.

  • #27 28 Lut 2015 13:55
    riodoro1
    Poziom 22  

    dondu napisał:

    barti879 napisał:
    Jakim cudem napięcie będzie wynosiło 10V? ... Przecież:
    Uwy = Uwe x R1/R1 + R2 = 14,4V x 100k/100k + 240k = 4,24 V.

    Wzór jest zły - co według Ciebie daje R1/R1 - czyż nie 1? :)
    W ten sposób obliczyłeś: Uwy = Uwe x 1 + R2
    Jakim cudem uzyskałeś Volty i wynik?


    To fakt, koledze nawiasu zabrakło na klawiaturze ale wzór jest błędny nawet i z nim.
    Napięcie na wyjściu dzielnika to Uwe*R2/(R2+R1)
    Aby poprawić działanie układu wystarczy (jak już ktoś zauważył) zamienić rezystory miejscami.

  • #28 28 Lut 2015 16:22
    barti879
    Poziom 18  

    Koledzy oczywiście mają rację. Źle spojrzałem na schemat i liczyłem dla rezystora podłączonego do masy. We wzorze zabrakło również wspomnianego nawiasu ;P Wieczorem podrzucę prawidłowy schemat i płytkę (podmienione rezystorki).


    Różnice w kolorach wyświetlaczy radia, minikomputera i zegarka mi nie przeszkadzają. Ba! Nawet mi się to podoba. Lubie gdy coś świeci i się wyróżnia, dlatego ta konfiguracja kolorów bardzo trafia w mój gust. To oczywiście sprawa osobista ale mi to odpowiada.


    Myślałem nad wyświetlaczem nagatywowym, jednak bałem się o jego widoczność przy pełnym nasłonecznieniu. Jak na razie fundusze i tak na taki nie pozwalają.

  • #29 28 Lut 2015 17:32
    mdm150
    Poziom 26  

    Sam myślałem aby do swojej golfiny wrzucić coś a'la komputer i ten projekt podpasował by mi. Można by prosić o wsad do tego projektu?

  • #30 02 Mar 2015 05:49
    Renegat_pol
    Poziom 20  

    Podrzucisz pliki do budowy. Zbudowałbym coś takiego do mojego Audi.