Spisu treści:

Obrotomierz/wskaźnik skanowania za pomocą Arduino, OBD2 i magistrali CAN: 8 kroków
Obrotomierz/wskaźnik skanowania za pomocą Arduino, OBD2 i magistrali CAN: 8 kroków

Wideo: Obrotomierz/wskaźnik skanowania za pomocą Arduino, OBD2 i magistrali CAN: 8 kroków

Wideo: Obrotomierz/wskaźnik skanowania za pomocą Arduino, OBD2 i magistrali CAN: 8 kroków
Wideo: 04 CAN HACKING 2024, Lipiec
Anonim
Obrotomierz / wskaźnik skanowania za pomocą Arduino, OBD2 i magistrali CAN
Obrotomierz / wskaźnik skanowania za pomocą Arduino, OBD2 i magistrali CAN
Obrotomierz / wskaźnik skanowania za pomocą Arduino, OBD2 i magistrali CAN
Obrotomierz / wskaźnik skanowania za pomocą Arduino, OBD2 i magistrali CAN
Obrotomierz / wskaźnik skanowania za pomocą Arduino, OBD2 i magistrali CAN
Obrotomierz / wskaźnik skanowania za pomocą Arduino, OBD2 i magistrali CAN

Każdy właściciel Toyoty Prius (lub innego pojazdu hybrydowego/specjalnego) będzie wiedział, że na jego deskach rozdzielczych może brakować kilku tarcz! Mój Prius nie ma wskaźnika obrotów silnika ani wskaźnika temperatury. Jeśli jesteś facetem od osiągów, możesz chcieć wiedzieć takie rzeczy, jak wyprzedzenie czasu i dane dotyczące paliwa w czasie rzeczywistym. Jeśli jesteś hipermilerem, możesz chcieć uzyskać więcej informacji na temat zużycia paliwa.

Wszystkie te wartości są obliczane przez komputer silnika Twojego samochodu. Do odczytania danych potrzebny jest po prostu skaner. Wielu ciekawskich właścicieli samochodów sięga po rozwiązania komercyjne, takie jak Scan Gauge. Mogą również użyć skanera, który używa ELM327 przez USB lub Bluetooth. Popularnymi konkurentami są Carista, BlueDriver lub zwykłe diagnostyczne narzędzie skanujące firmy Innova/Bosch.

Chciałem mieć stałą instalację w moim pojeździe z dedykowanym sprzętem, więc zdecydowałem się pojechać własną trasą! Cieszę się, że mogę udostępnić mój niestandardowy projekt skanera.

Kieszonkowe dzieci:

Ważny -

  • Płytka Arduino (może używać Nano, Teensy, Pro Micro, Uno….) [Amazon]
  • Zawór bezpiecznika + dodatkowy bezpiecznik (upewnij się, że masz odpowiedni rozmiar) [sklep z częściami samochodowymi]
  • Złącze OBD II (uratowałem jedno ze starego skanera) [Amazonka]
  • Moduł magistrali CAN MCP2515 [Amazonka]
  • Wyświetlacz OLED (lub inny wybrany wyświetlacz) [Amazon]
  • Przetwornica buck (lub inny przełączający / liniowy regulator napięcia) [Amazon]
  • 4-żyłowy kabel do wyświetlacza (użyj starego kabla USB, kabla taśmowego itp.)
  • Mnóstwo przewodów połączeniowych do podłączenia wszystkiego

Narzędzia -

  • Woltomierz
  • Sprzęt lutowniczy
  • Narzędzia do ściągania izolacji

Pomocny -

  • Drukarka 3D (lub dostęp do jednej) do tworzenia następujących części:

    • Obudowa do arduino
    • Ramka ekranu/mocowanie na desce rozdzielczej
  • Łączniki do obudowy
  • Spoiwo

Krok 1: Informacje o magistrali CAN (i zrzeczenie się)

O magistrali CAN (i zastrzeżeniu)
O magistrali CAN (i zastrzeżeniu)
O magistrali CAN (i zastrzeżeniu)
O magistrali CAN (i zastrzeżeniu)
O magistrali CAN (i zastrzeżeniu)
O magistrali CAN (i zastrzeżeniu)
O magistrali CAN (i zastrzeżeniu)
O magistrali CAN (i zastrzeżeniu)

OTWIERASZ TUTAJ POWAŻNĄ PUSZKĘ ROBAKÓW… Zamieszanie ze swoim pojazdem/autobusem może spowodować uszkodzenie i/lub niezamierzone działanie Twojego pojazdu! Przekazuję ci ten kod i instrukcję bez żadnej gwarancji ani gwarancji. Ty bierzesz na siebie całe ryzyko. Spróbuj tego, gdy pojazd jest PIERWSZY ZAPARKOWANY! Ten projekt jest w rzeczywistości dość bezpieczny, jeśli po prostu zrobisz małe rozeznanie na temat tego, co robisz. Jeśli nie wiesz, co oznacza jakakolwiek część instrukcji lub kodu, prawdopodobnie jest to znak, że nie powinieneś grzebać w układzie elektrycznym swojego samochodu! Nie przyjmuj tego projektu. Kup gotowy klucz sprzętowy Bluetooth OBD i użyj go zamiast tego. Życzę Ci powodzenia.

Teraz, gdy zastrzeżenie zostało usunięte… czy MOŻE brzmieć znajomo? Może podobne do sieci LAN (Ethernet) lub WLAN (WiFi), które możesz mieć w domu… to dlatego, że wszystkie są sieciami. CAN to skrót od Controller Area Network. To cyfrowa platforma komunikacyjna, za pomocą której Twój samochód komunikuje się z samym sobą. Zamiast prowadzić przewody z komputera silnika do każdego czujnika, światła i urządzenia w samochodzie, wszystkie są sterowane cyfrowo przez sieć.

Magistrala CAN jest protokołem komunikacji różnicowej. Oznacza to, że potrzebuje tylko dwóch przewodów! Nie ma Tx/Rx, jakie można znaleźć w tradycyjnej komunikacji szeregowej, ani bezpośredniej transmisji między dwoma urządzeniami. Zwykle występuje jako skrętka w całym pojeździe. Będziesz mieć do niego dostęp przez port OBD. Niekoniecznie musisz rozumieć, jak ten protokół działa na podstawowym poziomie, ale musisz go zrozumieć na tyle, aby móc pisać lub modyfikować kod Arduino.

Jeśli chcesz śledzić ten projekt, upewnij się, że Twój pojazd ma magistralę CAN! Prawie każdy pojazd na drodze ma obecnie port OBD II. Wszystkie mają to samo złącze elektryczne pod deską rozdzielczą. Istnieją jednak bardzo różne protokoły komunikacji w zależności od producenta samochodu. Każdy pojazd sprzedawany w Stanach Zjednoczonych po 2008 roku korzysta z magistrali CAN ISO 15765. Właśnie tego chcemy użyć w tym projekcie. Sprawdź, czy Twój pojazd ma magistralę CAN. Pamiętaj, że każdy samochód jest wyjątkowy. Będziesz mieć określoną prędkość magistrali CAN, określone kody OBD, o które musisz poprosić, i różne dziwactwa, które musisz złagodzić po drodze.

Krok 2: Schemat połączeń

Schemat połączeń
Schemat połączeń

Teraz nadszedł czas, aby zacząć planować obudowę i instalację. Mój samochód ma skrzynkę bezpieczników w masce i jedną tuż pod deską rozdzielczą. Gdzie jest twój? Czas zacząć myśleć.

Użyłem bezpiecznika w obwodzie wycieraczek przedniej szyby, ponieważ mój Prius ma wiele obwodów połączonych bezpiecznikami tuż obok portu OBD. Możesz użyć Vbatt na porcie OBD, ale uważaj! To jest podłączone do baterii, więc urządzenie nigdy się nie wyłączy. Kiepski pomysł. W zależności od aktualnego poboru Arduino, może zabić baterię w ciągu dni lub tygodni, jeśli pozwolisz swojemu samochodowi usiąść! Jeśli korzystasz z wyświetlacza OLED, możesz doświadczyć nadmiernego wypalenia, jeśli urządzenie jest włączone przez cały czas. Bardzo ważne jest, aby urządzenie było przełączone na Twój zapłon.

Możesz mieć proste rozwiązanie! Możesz mieć pojazd z pinem zasilania ACC/zapłonu w porcie OBD. Wiele pinów jest specyficznych dla producenta. Oznacza to, że twój port OBD może mieć pin zasilania, który jest przełączony na zapłon. Jednak nie wypróbuj po prostu multimetru i podłącz swoje arduino do czegokolwiek z 12 woltami! Twój pojazd może mieć J1699 lub inną magistralę szeregową, która wykorzystuje poziom logiczny 12V. Kto wie, co zrobiłoby obecne losowanie! Sprawdź za pomocą oscyloskopu, aby upewnić się, że "źródło 12 V" jest stałym źródłem zasilania prądem stałym, a nie sygnałem, zanim podłączysz zasilanie arduino do dowolnego innego styku poza batt na porcie OBD.

Krok 3: okablowanie portu OBD do płyty CAN

Okablowanie portu OBD do płyty CAN
Okablowanie portu OBD do płyty CAN
Okablowanie portu OBD do płyty CAN
Okablowanie portu OBD do płyty CAN

Spójrz na pinout portu OBD dla CAN Low i CAN High. Podłącz te przewody do High i Low na swojej płycie.

Teraz użyj uziemienia z portu OBD jako uziemienia dla tego projektu! Połącz ze sobą wszystkie przewody uziemiające i upewnij się, że są uziemione do tego portu OBD.

W kilku krokach skupimy się na reszcie interfejsu SPI płyty CAN.

Krok 4: Odczep bezpiecznika i konwerter DC na DC

Odczep bezpiecznika i konwerter DC na DC
Odczep bezpiecznika i konwerter DC na DC
Odczep bezpiecznika i konwerter DC na DC
Odczep bezpiecznika i konwerter DC na DC
Odczep bezpiecznika i konwerter DC na DC
Odczep bezpiecznika i konwerter DC na DC
Odczep bezpiecznika i konwerter DC na DC
Odczep bezpiecznika i konwerter DC na DC

Nie pomijaj konwertera obniżającego napięcie DC! Już raz przypadkowo zniszczyłem ten projekt, ponieważ zdecydowałem, że odłączę Arduino od 12 woltów ze skrzynki bezpieczników. Myślę, że gdzieś był skok napięcia z cewki indukcyjnej (Arduino było podłączone do tego samego bezpiecznika, co silnik wycieraczek przedniej szyby) i usmażyło moje Nano.

Zalecana: