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

Samochodowy komputer spalania (i nie tylko)

woszu 14 Kwi 2012 20:02 15551 23
  • Witam.

    Z uwagi na pytania do kilku moich postów, które pisałem w trakcie budowy samochodowego komputera spalania, postanowiłem zamieścić na forum moje dzieło.

    Projekt jest ukończony w 99%. Na pewno znajdą się drobne niedociągnięcia. Niestety pracę nad nim ukończyłem, z powodu zmiany samochodu (teraz mam komputer oryginalny).

    U mnie komputer działał poprawnie, czasem znajdowały się jakieś drobne błędy, przy wyświetlaniu, czy obsłudze menu.

    Możliwości komputera:

    1. Ustawienia serwisowe: (stała wtrysku (benzyna, gaz), stała prędkości, kontrast, ustawianie inspekcji olejowej, ustawianie zegara, reset pamięci)
    2. Przypominanie o włączeniu świateł
    3. Ostrzeganie o możliwej gołoledzi
    4. Temperatura zewn i wewn
    5. Tankowanie benzyny i gazu (ilość litrów)
    6. Prędkość max
    7. Przebieg
    8. Zużycie średnie paliwa (B i G)
    9. Spalanie chwilowe paliwa (B i G)
    10. Wyliczenie ilości paliwa w baku (B i G)
    11. Prognoza ilości km na pozostałym paliwie
    12. Ekonomizer (chwilowe spalanie w postaci paska)

    ... i możliwe że jeszcze o czymś zapomniałem :)

    Korzystajcie śmiało, jest sporo plików, które trzeba poprzeglądać i dopasować programy do wersji płytek i procesora, bo w tej chwili to już nie jestem w stanie tak od razu powiedzieć co i jak, a czasu brak, na przypominanie :)

    Aha - schematy w Eaglu, programy w Bascomie.

    Załączniki:

    Fajne! Ranking DIY
    Potrafisz napisać podobny artykuł? Wyślij do mnie a otrzymasz kartę SD 64GB.
  • #2 14 Kwi 2012 23:45
    Flaman11
    Poziom 17  

    Super, już od dłuższego czasu chodzi mi po głowie komputer pokładowy, ale są pewne luki w wiedzy. W jaki sposób są zbierane informacje do pomiaru spalania, z czego? Tak samo to się tyczy pomiaru prędkości?
    Jakbyś mógł coś więcej powiedzieć o urządzeniu od strony hardware'owej, byłbym wdzięczny.

    Jakbyś mógł coś więcej powiedzieć o funkcji serwisowej: stała wtrysku?

  • #3 15 Kwi 2012 09:57
    woszu
    Poziom 15  

    Sygnał predkości wyciągniety z licznika. Musisz sprawdzic, czy u siebie masz taką możliwość. Oczywiście przy liczniku linkowym jest to niemożliwe i trzeba by stosować dodatkowe czujniki.
    Sygnaly do pomiaru spalania, to mierzony czas otwarcia jednego z wtryskiwaczy. Sygnal wziety z komputera samochodu. Można się wpiąć brzpośrednio do przewodu wtryskuwacza.
    Stala wtrysku jest to wartość, ktòra pozwala przeliczyć czas otwarcia wtryskiwacza na ilość spalonego paliwa. Jest ona przypisana do danego typu wtryskiwacza. Znowu musisz poszukać odpowiednich danych swojego wtryskiwacza. Stała prędkości to z kolei przelicznik impulsòw z licznika na przebytą drogę. To można łatwo zmierzyć, pokonując powiedzmy 100m zliczając jednocześnie ilość imp z licznika.

    Jeżeli chodzi o hardware, to zapoznaj się ze schematami i pytaj.

    Są tam 2 wersje kompa. Jedna na atmedze 168, składająca się z 2 płytek, montowanych na kołkach dystansowych za wyświetlaczem. O ile pamiętam, to wtedy stosowałem jeszcze wyświetlacz standardowy.
    Druga wersja w katalogu gaz, to już bardziej zaawansowany projekt na atmedze 64 SMD, z obsługą instalacji gazowej i ogòlnie większą ilością opcji. W tym przypadku wszystko zmieściło się na jednej płytce, ròwnież przewidzianej do montażu za wyświetlaczem, ale nieco większym i w technologii oled.

  • #4 15 Kwi 2012 10:07
    Flaman11
    Poziom 17  

    woszu napisał:
    Stala wtrysku jest to wartość, ktòra pozwala przeliczyć czas otwarcia wtryskiwacza na ilość spalonego paliwa. Jest ona przypisana do danego typu wtryskiwacza.


    Inaczej mówiąc wydajność wtryskiwacza w litrach na godzinę przeliczona na czas otwarcia w jednym cyklu pracy?

  • #5 15 Kwi 2012 10:14
    woszu
    Poziom 15  

    Nie pamiętam już teraz czy na godzinę i czy w jednym cyklu. Raczej w jednostce mierzonego czasu (przerwanie od zewn zegara co pòł sekundy). Przeanalizuj program, to na pewno dojdziesz do tego.

  • #6 15 Kwi 2012 11:23
    Flaman11
    Poziom 17  

    Zerknąłem sobie, czy dobrze zrozumiałem mechanizm pomiaru czasu wtrysku? Tzn. Dwa piny są ze sobą zwarte reagując na przeciwne zbocza?

    Muszę sprawdzić jakie wtryski mam dokładnie, bo szukając ogólnie bez modelu to nie bardzo mi znajduję dane techniczne. Muszę chyba się zaprzyjaźnić z moim mechanikiem ;D

  • #7 15 Kwi 2012 12:39
    dondu
    Moderator Mikrokontrolery Projektowanie

    Czy stosujesz się do instrukcji swojego samochodu, w zakresie poziomu oleju i innych płynów, ciśnienia w oponach, itp.?
    Jeżeli tak, to dlaczgo nie stosujesz się do instrukcji producenta zastosowanego przez Ciebie mikrokontrolera w zakresie jego podłączania i filtrowania zasilania?

    Twój schemat:

    Samochodowy komputer spalania (i nie tylko)

    Wymagania producenta:

    Atmel napisał:
    AVCC is the supply voltage pin for the A/D Converter, PC3:0, and ADC7:6.
    It should be externally connected to VCC, even if the ADC is not used.

    O AGND i filtrowaniu zasilania już tylko wspomnę - lektura po poczytania - artykuły z działu Zasilanie i zakłócenia

    Tym którzy będą korzystać z tego projektu proponuję, by poprawili układ w opisanym przeze mnie zakresie tym bardziej, że projekt pracuje w trudnym środowisku jakim jest samochód gdzie występuje wiele źródeł zakłóceń. Łatwo to można zrobić, bo autor zastosował mikrokontroler w obudowie DIP.

  • #9 15 Kwi 2012 17:28
    woszu
    Poziom 15  

    Dokładnie.
    dondu masz rację, pierwsza wersja komputera to były moje początki, więc jak widać błędów nie uniknąłem. Mimo tego układ działał.
    W drugiej wersji starałem się postępować już zgodnie z powszechnie przyjętymi zasadami, ale jak znajdziecie jakieś błędy, to piszcie, to będzie z korzyścią dla potomnych.
    Ja tam elektronikiem nie jestem - zajmuję się tym jedynie z zamiłowania:)

    Flaman11 napisał:
    Zerknąłem sobie, czy dobrze zrozumiałem mechanizm pomiaru czasu wtrysku? Tzn. Dwa piny są ze sobą zwarte reagując na przeciwne zbocza?


    Tak jest. Zbocze narastające, czyli uruchomienie wtryskiwacza uruchamia Timer1 w przerwaniu INT3, natomiast zbocze opadające (wyłączenie wtryskiwacza) zatrzymuje Timer1 w przerwaniu IC1. Program odczytuje wartość timera i dalej przelicza.

  • #10 15 Kwi 2012 17:51
    dondu
    Moderator Mikrokontrolery Projektowanie

    Flaman11 napisał:
    dondu odniosłeś się do pierwszej wersji urządzenia, w którym brakuję kondensatorów, ale w drugiej wersji już jest jak być powinno. Spójrz w 3 post od góry.

    Odniosłem się do schematu załączonego przez autora w pierwszym poście (jedynego z dwóch jakie załączył). To że jest tam także drugi zupełnie inny schemat, nie oznacza, że nie należy odnieść się do pierwszego.

    woszu napisał:
    W drugiej wersji starałem się postępować już zgodnie z powszechnie przyjętymi zasadami, ale jak znajdziecie jakieś błędy, to piszcie, to będzie z korzyścią dla potomnych.
    Ja tam elektronikiem nie jestem - zajmuję się tym jedynie z zamiłowania:)

    Nie ma problemu. Uwagi podałem po to, by ewentualni korzystający z Twojego projektu, wiedzieli co poprawić:

    dondu napisał:
    Tym którzy będą korzystać z tego projektu proponuję, by ...

  • #11 08 Wrz 2012 12:39
    morski_pas
    Poziom 2  

    Czy to możliwe, aby dodać datę i godzinę, dzięki

    Dodano po 7 [minuty]:

    Data i godzina będzie używać DS1307 chip, jak dodać kod w bascomu, dzięki

    Samochodowy komputer spalania (i nie tylko)

  • #12 14 Sty 2013 21:48
    mscgs24
    Poziom 21  

    Bardzo miły w "tworzeniu" projekt, zrobiłem dla siebie i kolegi, jednak użyłem w obu komputerach układu DS1307 zamiast PFC8583P dokonałem kilku zmian, bo swój robiłem na Atmedze168, ale koledze na Atmedze8 - Miałm tylko problem z przyciskami, ale udało się.
    Kapitalnym wręcz rozwiązaniem jest tu Transoptor PC847 i drabinki rezystancyjne, niesamowicie ułatwia to pracę.
    Płytka o wymiarach wyświetlacza 2x16 ze sterownikiem. Ja pokusiłem się o zrobinie swojej wersji na płytce dwustronnej, dzięki czemu zaoszczędziłem trochę miejsca.
    Chwała koledze za udostępnienie kodu w bascomie, jednak będę go portował na C, ale to trochę trwa, bo w C stawiam pierwsze kroki.

    Mam jedno zasteżenie, mianowicie:
    Samochodowy komputer spalania (i nie tylko)

    Nie wiem jaki LCD miał autor na myśli, jeśli jednak 2x16 HD4478 to owych 4-ch pinów wyświetlacza nie lutujemy do GND! mają zostać lużne - służą do programowania wyświetlacza.

  • #13 10 Lut 2013 10:33
    krawy1
    Poziom 11  

    Witam
    mscgs24 mógłbyś przedstawić projekt swojej płytki dwustronnej ,ja próbowałem i jakoś nie zabardzo mi wychodzi jej zaprojektowanie.
    Pozdrawiam

  • #14 21 Cze 2013 16:56
    Mc`sFrYcO
    Poziom 20  

    Witam, przepraszam że odkopuję dość stary temat ale ze względu że to dość ciekawy projekcik jestem w trakcie jego budowy i mam kilka pytań, ze względu że jestem dość "kulawy" w mikro-kontrolerach mam kilka pytań:
    1. Kupiłem wyświetlacz LCD 2x16 i chciałem zapytać czy nadaje się do drugiej wersji z atmegą 64 (autor wspomina o wyświetlaczu OLED)
    2. Czy mimo "luźno wiszących" pinów wyświetlacza DB0-DB3 układ będzie pracował prawidłowo?
    3. Czy jest możliwe zastosowanie zwykłych przycisków zamiast impulsatora (ze schematu wnioskuję że autor wykorzystał impulsator z wciskaną ośką)
    4. Którym plikiem wsadowym należy zaprogramować mikro-kontroler (podejrzewam że atmega64' lub atmega64) bo jest ich kilka.
    5. Jakie wartości elementów należy zastosować w obwodzie regulacji kontrastu chodzi mi o nie oznaczony kondensator i rezystor.
    Zdaję sobie sprawę że pytania mogą być dość banalne ale proszę o pomoc
    Pozdrawiam

  • #15 21 Cze 2013 18:12
    Jacek M
    Poziom 12  

    Witam
    Przeglądałem ten projekt (pod kontem zrobienia dla brata) stąd moje zainteresowanie tematem.
    Tak na "szybko:

    Cytat:
    1. Kupiłem wyświetlacz LCD 2x16 i chciałem zapytać czy nadaje się do drugiej wersji z atmegą 64 (autor wspomina o wyświetlaczu OLED)

    Oczywiście może być - będziesz miał tylko gorszy kontrast.
    Cytat:
    2. Czy mimo "luźno wiszących" pinów wyświetlacza DB0-DB3 układ będzie pracował prawidłowo?

    Nawet lepiej niż z podpiętymi do GND :).
    Cytat:
    3. Czy jest możliwe zastosowanie zwykłych przycisków zamiast impulsatora (ze schematu wnioskuję że autor wykorzystał impulsator z wciskaną ośką)

    Oczywiście że można - jednak będzie wymagało to przerobienie kodu (w zasadzie to go uprości).
    Cytat:
    4. Którym plikiem wsadowym należy zaprogramować mikro-kontroler (podejrzewam że atmega64' lub atmega64) bo jest ich kilka.

    Hmm na podstawie plików bas ja nie widzę różnic, chyba możesz skompilować dowolny (ale nie analizowałem ich jeszcze).
    Cytat:
    5. Jakie wartości elementów należy zastosować w obwodzie regulacji kontrastu chodzi mi o nie oznaczony kondensator i rezystor.

    Tak jak na schemacie - rezystory: montażowy 5 kΩ, drugi 4,7 kΩ (lub jeden montażowy 10 kΩ), kondensator możesz pominąć.

    Planuje w wakacje zabrać się również do tego projektu ale na atmedze 168 i to wersję troszeczkę uproszczoną ( w zasadzie tylko spalanie i woltomierz - no może termometr np do płynu chłodniczego).
    Pozdrawiam
    Jack

  • #16 23 Cze 2013 13:31
    Mc`sFrYcO
    Poziom 20  

    Jacek M - Dziękuję serdecznie za szybką i konkretną odpowiedź :D , w takim razie nie długo zabieram się za programowanie uP, i pokombinowanie coś z tymi przyciskami, napiszę na pewno o rezultatach, jeśli by ktoś potrzebował projektu płytki pod atmegę64 bez przelotek pod uP to mogę poratować gdyż zaprojektowałem ją po swojemu od nowa :D

  • #17 17 Sie 2013 13:41
    krawy1
    Poziom 11  

    Witam
    Mc`sFrYcO mógłbyś podesłać projekt swojej płytki pod atmege 64.
    Z góry dziękuje
    nario1(malpa)wp.pl

  • #18 17 Gru 2014 13:17
    scsi
    Poziom 11  

    Którym bascomem kompilowaliście to bo 2.0.7.5 wykazuje błędy.

  • #19 26 Gru 2014 22:57
    bartek6302
    Poziom 11  

    Witam
    Mam ten sam problem w bascomie 2.0.7.3 po kompilacji jest błąd ,,error 46''

  • #21 27 Gru 2014 12:45
    bartek6302
    Poziom 11  

    Załączam zdjęcie, które dokładnie pokazuje błędy po kompilacji pliku: atmega 64. Inny plik np. 4xDS18B20 kompiluje się bez problemu, fusebity ustawiłem na
    ''111 111" a jednak komputer nic nie wyświetla.

  • #23 29 Gru 2014 10:29
    bartek6302
    Poziom 11  

    Przyczyną problemów z kompilacją była wersja bascoma. W wersji 1.11.9.8 wszystkie pliki kompilują się bez problemu. Dziękuję za pomoc.

  • #24 31 Gru 2014 20:16
    bartek6302
    Poziom 11  

    Czy jest ktoś w stanie podpowiedzieć czy tak ustawione fusebity są poprawne dla tego układu? Podaję napięcie na 12V_stac i nic się nie dzieje.