Inhaltsverzeichnis:
- Schritt 1: Über den CAN-Bus (und Haftungsausschluss)
- Schritt 2: Schaltplan
- Schritt 3: Verdrahten des OBD-Ports mit der CAN-Platine
- Schritt 4: Sicherungsabgriff und DC-DC-Wandler
Video: Drehzahlmesser / Scan-Messgerät mit Arduino, OBD2 und CAN-Bus - Gunook
2024 Autor: John Day | [email protected]. Zuletzt bearbeitet: 2024-01-30 07:15
Jeder Besitzer eines Toyota Prius (oder eines anderen Hybrid- / Spezialfahrzeugs) wird wissen, dass in seinen Armaturenbrettern möglicherweise ein paar Zifferblätter fehlen! Mein Prius hat keine Motordrehzahl oder Temperaturanzeige. Wenn Sie ein Leistungssportler sind, möchten Sie vielleicht Dinge wie Zeitvorlauf und Kraftstoffdaten in Echtzeit wissen. Wenn Sie ein Hypermiler sind, möchten Sie vielleicht mehr Informationen über Ihren Kraftstoffverbrauch wissen.
Alle diese Werte werden vom Motorcomputer Ihres Autos berechnet. Zum Auslesen der Daten ist lediglich ein Scan-Tool erforderlich. Viele neugierige Autobesitzer wenden sich kommerziellen Lösungen wie einem Scan Gauge zu. Sie können auch ein Scantool verwenden, das ELM327 über USB oder Bluetooth verwendet. Beliebte Konkurrenten sind Carista, BlueDriver oder ein normales altes Innova/Bosch-Diagnose-Scan-Tool.
Ich wollte eine feste Installation in meinem Fahrzeug mit dedizierter Hardware haben, also habe ich mich entschieden, meinen eigenen Weg zu gehen! Ich freue mich, mein benutzerdefiniertes Scan-Tool-Design zu teilen.
Lieferungen:
Wichtig -
- Arduino-Board (kann Nano, Teensy, Pro Micro, Uno… verwenden) [Amazon]
- Sicherungshahn + zusätzliche Sicherung (Achten Sie auf die richtige Größe) [Autoteileladen]
- OBD II-Anschluss (ich habe einen von einem alten Scan-Tool gerettet) [Amazon]
- CAN-Bus MCP2515-Modul [Amazon]
- OLED-Display (oder anderes Display nach Wahl) [Amazon]
- Abwärtswandler (oder anderer schaltender / linearer Spannungsregler) [Amazon]
- 4-adriges Kabel für Ihr Display (verwenden Sie altes USB-Kabel, Flachbandkabel usw.)
- Viele Überbrückungsdrähte zum Anschließen von allem
Werkzeuge -
- Voltmeter
- Lötgeräte
- Abisolierzangen
Hilfreich -
-
3D-Drucker (oder Zugang zu einem) zum Erstellen der folgenden Teile:
- Gehäuse für arduino
- Bildschirmrahmen/Armaturenbretthalterung
- Befestigungselemente für Gehäuse
- Klebstoff
Schritt 1: Über den CAN-Bus (und Haftungsausschluss)
SIE ÖFFNEN HIER EINE ERNSTE Würmerdose… Herumspielen mit Ihrem Fahrzeug/Dosenbus kann zu Schäden und/oder unbeabsichtigtem Betrieb Ihres Fahrzeugs führen! Ich stelle Ihnen diesen Code und diese Anleitung ohne Gewährleistung oder Garantie zur Verfügung. Sie übernehmen alle Risiken. Versuchen Sie dies, während das Fahrzeug ZUERST GEPARKT ist! Dieses Projekt ist eigentlich ziemlich sicher, wenn Sie einfach ein wenig recherchieren, was Sie tun. Wenn Sie nicht wissen, was irgendein Teil der Anweisungen oder des Codes bedeutet, ist dies wahrscheinlich ein Zeichen dafür, dass Sie nicht an der Elektrik Ihres Autos herumspielen sollten! Nehmen Sie dieses Projekt nicht auf. Kaufen Sie einen vorgefertigten Bluetooth-OBD-Dongle und verwenden Sie diesen stattdessen. Ich wünsche Dir viel Glück.
Jetzt, wo der Haftungsausschluss aus dem Weg ist… kommt Ihnen KANN bekannt vor? Vielleicht ähnlich wie LAN (Ethernet) oder WLAN (WiFi), die Sie vielleicht zu Hause haben … das liegt daran, dass es sich alle um Netzwerke handelt. CAN steht für Controller Area Network. Es ist eine digitale Kommunikationsplattform, über die Ihr Auto mit sich selbst kommuniziert. Anstatt Kabel vom Motorcomputer zu jedem Sensor, Licht und Gerät in Ihrem Auto zu verlegen, werden sie alle digital über das Netzwerk gesteuert.
Der CAN-Bus ist ein differentielles Kommunikationsprotokoll. Das bedeutet, dass es nur zwei Drähte benötigt! Es gibt kein Tx/Rx wie bei der herkömmlichen seriellen Kommunikation und keine direkte Übertragung zwischen zwei Geräten. Es ist normalerweise als verdrilltes Paar in Ihrem Fahrzeug zu finden. Sie werden über den OBD-Port darauf zugreifen. Sie müssen nicht unbedingt verstehen, wie dieses Protokoll auf der grundlegenden Ebene funktioniert, aber Sie müssen es genug verstehen, um den Arduino-Code schreiben oder ändern zu können.
Wenn Sie dieses Projekt verfolgen möchten, stellen Sie sicher, dass Ihr Fahrzeug über einen CAN-Bus verfügt! Nahezu jedes Fahrzeug auf der Straße verfügt heute über einen OBD II Port. Sie haben alle den gleichen elektrischen Anschluss unter dem Armaturenbrett. Allerdings gibt es je nach Autohersteller sehr unterschiedliche Protokolle für die Kommunikation. Jedes Fahrzeug, das nach 2008 in den USA verkauft wurde, verwendet den CAN-Bus nach ISO 15765. Das wollen wir für dieses Projekt nutzen. Überprüfen Sie, ob Ihr Fahrzeug über einen CAN-Bus verfügt. Denken Sie daran, dass jedes Auto einzigartig ist. Sie haben eine bestimmte CAN-Bus-Geschwindigkeit, bestimmte OBD-Codes, die Sie anfordern müssen, und verschiedene Macken, die Sie auf dem Weg abschwächen müssen.
Schritt 2: Schaltplan
Jetzt ist es an der Zeit, mit der Planung Ihres Gehäuses und der Installation zu beginnen. Mein Auto hat einen Sicherungskasten in der Motorhaube und einen direkt unter dem Armaturenbrett. Wo ist deins? Zeit zum Nachdenken.
Ich habe einen Sicherungshahn am Scheibenwischerstromkreis verwendet, da mein Prius viele Stromkreise direkt neben dem OBD-Anschluss abgesichert hat. Sie können den Vbatt am OBD-Port verwenden, aber Vorsicht! Das ist mit der Batterie verbunden, so dass sich das Gerät nie ausschaltet. Schlechte Idee. Abhängig von der Stromaufnahme des Arduino kann es Ihre Batterie innerhalb von Tagen oder Wochen zerstören, wenn Sie Ihr Auto stehen lassen! Wenn Sie ein OLED-Display verwenden, kann es zu übermäßigem Einbrennen kommen, wenn Ihr Gerät die ganze Zeit eingeschaltet ist. Es ist sehr wichtig, dass das Gerät auf Ihre Zündung geschaltet ist.
Vielleicht haben Sie eine einfache Lösung! Möglicherweise haben Sie ein Fahrzeug mit einem ACC / Zündungsstrom-Pin am OBD-Anschluss. Viele Pins sind herstellerspezifisch. Das bedeutet, dass Ihr OBD-Port möglicherweise einen Power-Pin hat, der auf Zündung geschaltet ist. Versuchen Sie jedoch nicht nur das Multimeter und schließen Sie Ihr Arduino an alles mit 12 Volt an! Ihr Fahrzeug verfügt möglicherweise über einen J1699- oder einen anderen seriellen Bus, der einen 12-V-Logikpegel verwendet. Wer weiß, was eine aktuelle Ziehung bewirken würde! Überprüfen Sie mit dem Oszilloskop, ob Ihre "12-Volt-Quelle" eine stetige Gleichstromversorgung und kein Signal ist, bevor Sie die Arduino-Stromversorgung an einen anderen Pin als Batt am OBD-Port anschließen.
Schritt 3: Verdrahten des OBD-Ports mit der CAN-Platine
Schauen Sie auf die Pinbelegung Ihres OBD-Ports für CAN Low und CAN High. Verbinden Sie diese Drähte mit dem High und Low auf Ihrem Board.
Verwenden Sie nun die Masse von Ihrem OBD-Port als Masse für dieses Projekt! Verbinden Sie alle Erdungskabel miteinander und stellen Sie sicher, dass sie an diesem OBD-Anschluss geerdet sind.
Wir werden uns in wenigen Schritten auf den Rest der SPI-Schnittstelle des CAN-Boards konzentrieren.
Schritt 4: Sicherungsabgriff und DC-DC-Wandler
Überspringen Sie nicht den DC-Abwärtswandler! Ich habe dieses Projekt schon einmal versehentlich zerstört, weil ich beschlossen habe, den Arduino von 12 Volt aus dem Sicherungskasten zu betreiben. Ich glaube, es gab irgendwo eine Spannungsspitze von einer Induktivität (Arduino war an dieselbe Sicherung wie der Scheibenwischermotor angeschlossen), und es hat meinen Nano gebraten.
Empfohlen:
Heimwerken -- Einen Spinnenroboter herstellen, der mit einem Smartphone mit Arduino Uno gesteuert werden kann – wikiHow
Heimwerken || Wie man einen Spider-Roboter herstellt, der mit einem Smartphone mit Arduino Uno gesteuert werden kann: Während man einen Spider-Roboter baut, kann man so viele Dinge über Robotik lernen. Wie die Herstellung von Robotern ist sowohl unterhaltsam als auch herausfordernd. In diesem Video zeigen wir Ihnen, wie Sie einen Spider-Roboter bauen, den wir mit unserem Smartphone (Androi
Schnittstellentastatur mit Arduino. [Einzigartige Methode]: 7 Schritte (mit Bildern)
Schnittstellentastatur mit Arduino. [Einzigartige Methode]: Hallo, und willkommen zu meinem ersten instructable! :) In diesem instructables möchte ich eine fantastische Bibliothek für die Schnittstelle der Tastatur mit Arduino teilen - 'Password Library' einschließlich 'Keypad Library'. Diese Bibliothek enthält die besten Funktionen, die wir wi
SCARA-Roboter: Lernen über Vorwärts- und inverse Kinematik !!! (Plot Twist Erfahren Sie, wie Sie mit PROCESSING eine Echtzeitschnittstelle in ARDUINO erstellen !!!!): 5 Schritte (mit Bildern)
SCARA-Roboter: Lernen über Vorwärts- und inverse Kinematik !!! (Plot Twist Learn How to Make a Real Time Interface in ARDUINO Using PROCESSING !!!!): Ein SCARA-Roboter ist eine sehr beliebte Maschine in der Industriewelt. Der Name steht sowohl für Selective Compliant Assembly Robot Arm als auch für Selective Compliant Articulated Robot Arm. Es ist im Grunde ein Roboter mit drei Freiheitsgraden, da er die ersten beiden Displ
Drehzahlmesser: 5 Schritte
Drehzahlmesser: Hallo zusammen. Dieses Mal werde ich meine Art und Weise teilen, einen digitalen Drehzahlmesser herzustellen. Es funktioniert hervorragend und kann leicht mit einer kommerziellen Version konkurrieren. Darüber hinaus wollte ich die Komplexität des Hinzufügens einer Batterie zum System vermeiden. Also beschloss ich, die
Einfaches BLE mit sehr geringem Stromverbrauch in Arduino Teil 3 - Nano V2-Ersatz - Rev 3: 7 Schritte (mit Bildern)
Einfaches BLE mit sehr geringem Stromverbrauch in Arduino Teil 3 - Nano V2-Ersatz - Rev 3: Update: 7. April 2019 - Rev 3 von lp_BLE_TempHumidity, fügt Datums- / Zeitdiagramme mit pfodApp V3.0.362+ hinzu und automatische Drosselung beim Senden von DatenUpdate: 24. März 2019 – Rev 2 von lp_BLE_TempHumidity, fügt weitere Plotoptionen hinzu und i2c_ClearBus, fügt GT832E