Strona 1 z 2 12 OstatniOstatni
Pokaż wyniki od 1 do 10 z 20

Wątek: DIY Interfejs ADS (prawie) za darmo!

  1. #1
    Doświadczony Użytkownik Awatar brunoz
    Dołączył
    Mar 2011
    Posty
    1,682
    BMW
    E38 740iA
    Skąd
    Katowice
    Blog
    11

    Cool DIY Interfejs ADS (prawie) za darmo!

    Witajcie,

    przymierzam się do zbudowania prostego interfejsu ADS do diagnozy INPA + DIS.
    Jak wiecie, interfejs ten ma taką cechę, że jest podłączany bezpośrednio do portu COM.

    Dodatkowo chciałem sobie taki jeden interfejs zostawić na stałe w aucie i wyprowadzić kabel szeregowy wewnątrz samochodu. USB już mi się uprzykrzyło. Często zdarza się, że wystarczy dotknąć kablem i transmisja umiera. Pomaga jedynie restart komputera.


    No, ale do rzeczy.
    Założenia są takie:
    1. żeby była to maksymalnie uproszczona konstrukcja
    2. żeby kosztowała (bez wtyczek) góra 10 zł (sic!)
    3. żeby była do wykonania dla średnio-zaawansowanego konstruktora
    4. żeby projekt oraz schemat był dostępny nieodpłatnie

    Póki co skombinowałem schemat na 9 tranzystorach i 17 rezystorach.
    Dzisiaj udało mi się porobić projekt płytki drukowanej (PCB).

    Zdjęcie prototypu poniżej:
    Załącznik 3541
    Wymiary płytki to około 6,5cm x 3,5 cm

    Wiem, że straszna plątanina ścieżek, ale mimo wszystko prądowi jest wsio-ryba czy skręca 8 czy 15 razy :-) Ma działać i tyle. Oglądać ścieżek nie ma nikt poza konstruktorem. W dodatku nie dałem rady na jednej warstwie dwóm ścieżynkom. I niestety będą dwa mostki.
    Ostatnio edytowane przez brunoz ; 19-09-2011 o 15:09
    Nein! Mein Schnitzel!

  2. #2
    Doświadczony Użytkownik Awatar technics
    Dołączył
    Dec 2009
    Posty
    1,547
    BMW
    octavia 1.9tdi ex e65 745 2002 rok ex e38 735
    Skąd
    Szwecja
    Daj znac jak juz ogarniesz cos kobkretnego

  3. #3
    Doświadczony Użytkownik Awatar brunoz
    Dołączył
    Mar 2011
    Posty
    1,682
    BMW
    E38 740iA
    Skąd
    Katowice
    Blog
    11
    Dzisiaj dopracowałem wizualnie schemat i płytkę drukowaną.

    Jak już wspomniałem, chcę, żeby projekt pozostał darmowy dla wszystkich (mówię o wiedzy a nie o częściach), dlatego publikuję poniżej moje wyczyny.

    Schemat ideowy

    Załącznik 3552

    prototyp 'A' płytki drukowanej
    Załącznik 3553
    Jakość obrazków musiałem mocno zdegradować bo mam mało miejsca na profilu. Szkoda...

    Lista komponentów
    8x BC548 tranzystor NPN
    1x BC559 tranzystor PNP
    (właśc. to mogą być dowolne tranzystory o odpowiedniej polaryzacji np. 2N3904 i 2N3906)

    7x 2,2 kΩ
    2x 4,7

    1x 47
    2x 10
    1x 20
    1x 22
    3x 1

    Lokalizacje komponentów
    T1 BC559
    T2 BC548
    T3 BC548
    T4 BC548
    T5 BC548
    T6 BC548
    T7 BC548
    T8 BC548
    T9 BC548

    R1 2k2
    R2 4k7
    R3 47k
    R4 10k
    R5 20k
    R6 22k
    R7 2k2
    R8 1k
    R9 2k2
    R10 2k2
    R11 1k
    R12 2k2
    R13 2k2
    R14 2k2
    R15 1k
    R16 10k
    R17 4k7


    I teraz najlepsze:

    Koszty elementów dyskretnych
    Tranzystory 9 x 0,15 zł = 1,35 zł
    Rezystory 17 = 0,05 zł = 0,85 zł
    SUMA = 2,20 zł

    Doliczyć należy koszty cyny do lutowania (jakieś 0,20 zł)
    koszt zrobienia sobie płytki drukowanej (jakiś 1 zł)
    amortyzację wytrawiacza (jakieś 1 zł)

    Jeśli ktoś ma takie rzeczy jak mini-wiertarkę do PCB, wiertełko 0,8mm, lutownicę, wytrawiacz, kuwetę itp. to koszty samego interfejsu zamykają się w 4,50 zł (!)
    A jeśli jest się zupełnym novi, to niestety, dochodzą koszty wyposażenia warsztatu :-D
    Bezpieczniej zatem będzie zlecić firmie za 10 zł przygotowanie za nas płytki. Mimo wszystko nadal opłaca się to.

    Pozostaje pytanie, skąd zdobyć wtyczkę diagnostyczną oraz kabel szeregowy. Na ballegro okrągłe wtyczki do BMW 'chodzą' po 10-15 zł. A kabel szeregowy lub kabel od sieci komputerowej (2-3m za 3-4 zł) plus wtyczka DB9 za 2 zł.


    Łącznie całkowity koszt budowy zestawu po najmniejszej linii oporu, tj. kupując przygotowaną płytkę oraz wszystkie komponenty:
    Elementy dyskretne = 2,20 zł
    Płytka drukowana = 10 zł
    Wtyczki i kable = 20 zł
    Obudowa uniwersalna = 5-10 zł
    SUMA = 37,20 zł (nie licząc kosztów przesyłki poszczególnych komponentów)

    Widać, że najwięcej kosztują obudowa, wtyczki i transport elementów. Ja natomiast mam większość z tych rzeczy dostępne a wtyczkę BMW zrobię sobie samemu z płytki drukowanej i kilku bolcy lub będę wtykał kabelki w gniazdo w aucie (przynajmniej na początku w ramach testów).

    Gdyby spróbować znaleźć wielu chętnych, to koszty pojedynczego egzemplarza spadają do zdecydowanie niższych i można by założyć, że taki gotowy interfejs mógłby kosztować przy 100 egzemplarzach jakieś 30 zł za sztukę.

    Nie wiem czy zdążę w robocie pobawić się w nadruk na miedź, ale postaram się :-)
    Zaznaczam, że jest to prototyp i nie mam absolutnie żadnych gwarancji, że zadziała.
    Ostatnio edytowane przez brunoz ; 20-09-2011 o 13:18
    Nein! Mein Schnitzel!

  4. #4
    Vip Vip Awatar seban123
    Dołączył
    Oct 2009
    Posty
    2,291
    BMW
    E65 745d i E32 M30
    Skąd
    Puławy, Lubelskie
    Blog
    1
    Ten schemat sam wymyśliłeś czy to kopie czegoś? To się wydaje trochę za proste. Budowałem kiedyś euroscan pod visa 1.83. Mam ads i w środku jest zdecydowanie więcej elementów. Mam głupiego vaga na maxie i inne kabelki ale żeby kilka tranzystorków wystarczyło to jestem ciekaw. Ja na Twoim miejscu zaczą bym od poszukiwania dokumentacji ads a nie marnowania czasu na własnych patentach. W ads jest mały procek który coś tam robi. Tymi tranzystorkami raczej go nie zastąpisz.

    Pomysł z gniazdem w środku ciekawy. Zawsze mnie wku... to bezmyślne obsadzenie gniazda pod maska tym bardziej że często jeżdżę z kompem.
    Ostatnio edytowane przez seban123 ; 20-09-2011 o 17:24

  5. #5
    Doświadczony Użytkownik Awatar ManiacDrifting
    Dołączył
    Dec 2010
    Posty
    3,325
    BMW
    E32 735iAL...
    Skąd
    Bikini Dolne
    Taki układ mógł bym sobie bezproblemowo wykonać gdyż jakąś tam wiedze w zakresie elektroniki mam zresztą taką mam szkołe.
    Ale zrobie dopiero gdy potwierdzisz działanie nie chce mi się na darmo dłubać :P
    Po zatym interfejs będzie w pełni funkcjonalny?
    Gniazdo obd nowszego czy starszego typu zaleznie od zastosowania wtyczki powinno działać?
    Ostatnio edytowane przez ManiacDrifting ; 20-09-2011 o 19:20

  6. #6
    Doświadczony Użytkownik Awatar brunoz
    Dołączył
    Mar 2011
    Posty
    1,682
    BMW
    E38 740iA
    Skąd
    Katowice
    Blog
    11
    KaczyDJ, w projekcie oryginalnie chodzi o okrągłą wtyczkę diagnostyczną, tzw. PacMana :-D

    Seban123, transmisja z samochodu jest szeregowa (linia K i linia L). Kłopotem technicznym jest tylko dopasowanie napięciowe i sygnałowe oraz uformowanie danych w zrozumiały pakiet. Standardowo protokół RS-232C zawiera negocjację parametrów (handshaking) oraz asynchroniczną transmisję szeregową, składającą się zazwyczaj z 1 bitu startu, 7 lub 8 bitów danych, bitu kontrolnego parzystości (odd/even) i bitów stopu (1, 1.5 lub 2). Jeśli wykorzystasz standaddowe API z Windows, to właśnie w takim standardzie te dane będą przesyłane, gdyż taki port pod Windows zazwyczaj służył do komunikacji modemowej. Natomiast zdolny programista jest w stanie dostać się do fizycznych rejestrów urządzenia i odczytać lub wysłać dowolną informację (dowolna długość i format informacji). I tak właśnie robi INPA. Stąd też często problemy z kabelkami na USB, które często posiadają inny adres portu niż 3F8h (COM1). Brak możliwości komunikacji inpy z takim urządzeniem leży w całości w niedoskonałości kodu aplikacji Inpa, która nie uwzględnia takich wynalazków jak COM5 o wyszukanym adresie 5D8h. Aplikacja oryginalnie była zaprojektowania do obsługi czterech podstawowych (fizycznych) portów szeregowych (zgodnych ze specyfikacją IBM z lat '80) o ściśle określonych adresach.

    Dlatego uważam, że jeśli dopasuje się odpowiednio elektryczne poziomy sygnałów by były kompatybilne ze sobą oraz istnieje aplikacja, która odpowiednio uformuje dane, to komunikacja MUSI się udać. Zapewniam Ciebie, że nawet średnio zaawansowany programista były w stanie użyć portu LPT do wygenerowania sygnału analogowego m.cz. z pomocą tylko kilku rezystorów. Mimo, że pierwotnie port nie był przeznaczony do takich celów, to jednak ludzie na masową skalę potrafili sobie takie bajery robić (wiem co piszę, bo broniłem dyplom na porcie LPT co prawda nie do generowania muzyki bo to za proste ale do sterowania 64 urządzeniami cyfrowymi i wykrywaniem typu przyłączonego urządzenia).
    Nein! Mein Schnitzel!

  7. #7
    Doświadczony Użytkownik Awatar technics
    Dołączył
    Dec 2009
    Posty
    1,547
    BMW
    octavia 1.9tdi ex e65 745 2002 rok ex e38 735
    Skąd
    Szwecja
    A nie lepiej poszukac juz gotowego schematu ? Poza tym ja mam i kabel usb i com i powiem szczeze ze zawsze jade na usb o wiele prostsza obsluga . Nigdy nie mialem problemu z podlaczeniem jakiegos bmw . Inpa pracuje rewelacyjnie nigdy mi nie zerwala polaczenia . A podlaczalem juz e38 e39 e65 wszyscy zawsze zadowoleni .

  8. #8
    Vip Vip Awatar seban123
    Dołączył
    Oct 2009
    Posty
    2,291
    BMW
    E65 745d i E32 M30
    Skąd
    Puławy, Lubelskie
    Blog
    1
    Wiem jak działa rs232 i komunikacja w samochodzie. Ale ads nie zawsze korzysta z K i L. Tylko starsze roczniki wykorzystują dwie linie do komunikacji. Od 97 roku już większość nie korzysta. Jak pogodzisz ten fakt ze sobą?
    Mógł byś opisać rozpoznawanie zapłony a dokładnie które elementy za to odpowiadają i jak inpa to rozpoznaje? Jak interfejs będzie rozpoznawał czy ma odbierać dane na linii do nadawania?

  9. #9
    Doświadczony Użytkownik Awatar brunoz
    Dołączył
    Mar 2011
    Posty
    1,682
    BMW
    E38 740iA
    Skąd
    Katowice
    Blog
    11
    Bardzo prosto jest zrobione rozpoznawanie zapłonu: otóż sygnał IGN z PacMana po odpowiednim dopasowaniu jest podawany na pin RI (ring indicator) portu szeregowego. Obsługa (odczytanie stanu pinu RI) tego zdarzenia jest zaimplementowana w programie inpa.
    Sprzętowo jest odpowiedzialny za to T9 który jest wprowadzany w stan przewodzenia poprzez napięcie podane na jego bazę przez R17.

    A rozpoznawanie danych do nadania realizowane jest przez DSR i DTR.
    Jak już wspominałem, szeregowa transmisja telegramów jest asynchroniczna, zatem nie potrzeba żadnych zegarów synchronizujących. Liczy się długość trwania bitu (określona dla danej prędkości transmisyjnej).

    ...W ogóle nie wiem dlaczego mnie o to pytasz? Sprawdzasz mnie?
    Ostatnio edytowane przez brunoz ; 20-09-2011 o 20:28
    Nein! Mein Schnitzel!

  10. #10
    Vip Vip Awatar seban123
    Dołączył
    Oct 2009
    Posty
    2,291
    BMW
    E65 745d i E32 M30
    Skąd
    Puławy, Lubelskie
    Blog
    1
    Nie jestem elektronikiem z wykształcenia tylko informatykiem i elektrykiem o specjalności energoelektronika. Po prostu byłem ciekawy jak to zrobili bo nigdy się w to nie zagłębiałem. Ale dalej jestem ciekaw co z rozpoznawaniem nadawania i odbierania na 20 pinie lub 17. Umiem diagnozować linie komunikacyjne ale nie znam dokładnych specyfikacji bo to nie było mi potrzebne do pracy.

Uprawnienia umieszczania postów

  • Nie możesz zakładać nowych tematów
  • Nie możesz pisać wiadomości
  • Nie możesz dodawać załączników
  • Nie możesz edytować swoich postów
  •