logo elektroda
logo elektroda
X
logo elektroda
Adblock/uBlockOrigin/AdGuard mogą powodować znikanie niektórych postów z powodu nowej reguły.

[AtMega8][OBD2] Jak połączyć ECU Golfa 4 z AtMegą8

Kryspin92 20 Lut 2014 10:33 10629 7
  • #1 13324286
    Kryspin92
    Poziom 10  
    Witam.
    Mam od pół roku chęć zrobienia sobie wyświetlacza pokazujący dane z pokładowego komputera w moim Golfiku 4 z 1998 roku. Jest on wyposażony w OBD2 i z tego co już się dowiedziałem jest on obsługiwany za pomocą K-line. Cały mój pomysł opierał się na Atmega8, oraz wyświetlaczu HD44780 oraz takim połączeniu:
    [AtMega8][OBD2] Jak połączyć ECU Golfa 4 z AtMegą8
    znalazłem kilka stron opisujących działanie protokołu, potem kilka mówiących o tym że golf ma inne niż wszystkie, ogólnie słyszałem że ECU komunikuje się z urządzeniami (PC, ATMEGA) za pomocą ISO9141
    mimo kilku prób połączenia się za pomocą tego protokołu (o ile miałem dobry opis połączenia) nic z tego nie wyszło.
    Teraz znalazłem inny schemat i zastanawiam się czy wybrać ten poniżej czy raczej tamten jest dobrym schematem, a to protokół jest zły.
    [AtMega8][OBD2] Jak połączyć ECU Golfa 4 z AtMegą8
    Czy macie jakiś pomysł a dokładniej który schemat połączenia wybrać ? (w tym niżej ten MAX232 jest raczej niepotrzebny tak myślę).
    Jeśli ten pierwszy to ktoś może mi powiedzieć w jaki sposób się połączyć z ECU ??

    Jak znajdę stronę to zamieszcze link za pomocą którego pisałem obsługę protokołu.


    Pozdrawiam

    Krystian
  • #2 13329680
    zbychmg
    Poziom 31  
    Drugi schemat na pewno lepiej przetworzy sygnał na standard TTL (0,4-3,2V)
    jaki jest czytelny dla ATMEGI zasilanej z 5V.
    W pierwszej kolejności zrób sam monitor i odczytuj dane jakie są przesyłane w sieci.
    Najlepszy byłby cyfrowy oscyloskop, aby sprawdzić, czy sygnał po przejściu przez tranzystory jest taki sam jak na magistrali KL. Ważne, aby tranzystory się nie nasycały, a zbocza miały tą samą szybkość narastania. Wysyłanie danych na magistralę (zapytań), to już poważniejsza sprawa. Błędne dane mogą zakłócić pracę komputera pokładowego, at to może się źle skończyć.......

    pozdrawiam
  • #3 13330023
    WinWoj
    Poziom 12  
    Cytat:
    Jeśli ten pierwszy to ktoś może mi powiedzieć w jaki sposób się połączyć z ECU ??


    wysyłając odpowiedni bajt z bitratem liczonym w pojedyczych bitach na sekundę, czyli bajt inicjalizacji. Reszta, jeśli to iso9141 ma 9600b/s

    Ja bym to zrobił, w kwestii informatycznej, tak:

    1)zbudował VAG-COM po rs232, koszt jaki poniosłem za max232, dwa optoizolatory na smd, ok 10zł, wiadomo, jakieś złącza z odzysku, trawienie płytek pod opto i kawałek uniwersalnej pcb, kabelki itp. Taki vag łączy się z silnikami nawet z 2010r więc tylko jakiś vc 409 z witaminą i masz urządzenie do diagnostyki.

    2) zrobić drugi taki sam kabel do podsłuchu magistrali.

    3) łączysz oba równolegle do OBD, oraz do dwóch portów RS232 stacjonara (ja to robiłem dwoma laptopami z jednym serialem na komp)

    4) na jednym kompie (porcie) odpalasz vaga, na drugim program Terminal (lub inny do podsłuchu bus-a)

    5) wysyłasz konkretne zapytanie z vaga i odczytując to przez terminal rejestrujesz komendy, działąnie tego protokołu itp.

    6) programujesz atmegę, klonując vaga..

    Wydaje się proste, ale takie nie jest. Ale do zrobienia.

    Pozdro
  • #4 13338941
    Kryspin92
    Poziom 10  
    Mam kabel do właśnie mojego samochodu na USB - emuluje on port COM i w ten sposób trafia do Vag-a czy są jakieś programy do podglądania transmisji na portach lub jakieś sklonowanie tego ?

    zbychmg napisał:
    Najlepszy byłby cyfrowy oscyloskop...


    oscyloskopu niestety nie mam (myślałem o nim ale ceny mnie pokonują) myślałem nad tym by z kompa zrobić oscyloskop ale boje się że coś mi walnie na kompie.


    Co do programów podglądających COMy to nawet kilka takich mam ale żaden jakoś specjalnie mi nie chciał zadziałać :/
  • #5 13341869
    WinWoj
    Poziom 12  
    Nie, potrzebny jest komp z rs-em. Żadnej emulcji. Chyba że VAG Ci śmiga na USB, masz komunikcje itp, to OK. Ale drugi kabel musisz mieć na rs232 i nim sniffować linię K podczas transmijsji.

    Prosty oscyloskop na USB jest za ok 200zł u Gotronika. Osobiście go nie mam, ale myślałem żeby go kiedyś kupić. W sumie to bardziej analizator stanów, znacznie bardziej tobie potrzebny jest i to urzadzenie Gotronika podobno tym właśnie jest. http://www.gotronik.pl/interfejs-minilogic-us...logicznych-programator-usb-blaster-p-418.html tu więcej info o nim (tak czytam to oscyloskopu jednak nie ma, ale to wtedy przez rezystory podpinasz do linii i analizujesz)

    Ja używam Terminal by By@y++ http://mikrokontroler.info/bray-terminal-program-do-komunikacji-szeregowej-rs232/
  • #6 13348676
    WinWoj
    Poziom 12  
    No i jak tam Kryspin działasz coś z tym projektem, bo bym coś też porobił równolegle..
  • #7 13349970
    Kryspin92
    Poziom 10  
    Narazie nie mam zbyt dużo czasu ale jak trochę znajdę to planuje podłączyć przez usb do kompa vaga i równolegle KLine przez MAX232 do COM'a i chce sprawdzić co tam wysyła itd.
    Jeśli moje myślenie zawiera błąd powiedzcie mi proszę :)

    Chociaż nie, mnie głównie obchodzi co on wysyła - ale wtedy wystarczy odwrotnie podłączyć Rx Tx tak myślę...

    Co o tym sądzicie ?
  • #8 13350072
    WinWoj
    Poziom 12  
    do linii K podpinasz Rx (bo Recive bit - pobierasz). W terminalu możesz najpierw wybrać bitrate.. chyba 5bit/s (policz na załączonym screenie, uwzględniając działkę) a dalej dialog między ecu a vagiem jest raczej z bitratem 9600b/s (to jest widoczne w vagu) Tak ustaw w terminalu i przechwytuj. Potem wykorzystaj protokół rs w atmedze i koduj.

    pzdr;
REKLAMA