Table des matières:

Tachymètre/jauge de balayage utilisant Arduino, OBD2 et bus CAN : 8 étapes
Tachymètre/jauge de balayage utilisant Arduino, OBD2 et bus CAN : 8 étapes

Vidéo: Tachymètre/jauge de balayage utilisant Arduino, OBD2 et bus CAN : 8 étapes

Vidéo: Tachymètre/jauge de balayage utilisant Arduino, OBD2 et bus CAN : 8 étapes
Vidéo: Balayage d'aiguilles au contact et lap timer a3 2007 tdi 2024, Juillet
Anonim
Tachymètre/jauge de balayage utilisant Arduino, OBD2 et CAN Bus
Tachymètre/jauge de balayage utilisant Arduino, OBD2 et CAN Bus
Tachymètre/jauge de balayage utilisant Arduino, OBD2 et CAN Bus
Tachymètre/jauge de balayage utilisant Arduino, OBD2 et CAN Bus
Tachymètre/jauge de balayage utilisant Arduino, OBD2 et CAN Bus
Tachymètre/jauge de balayage utilisant Arduino, OBD2 et CAN Bus

Tout propriétaire de Toyota Prius (ou autre véhicule hybride/spécial) saura qu'il manque peut-être quelques cadrans à son tableau de bord ! Ma prius n'a pas de régime moteur ni de jauge de température. Si vous êtes un gars de la performance, vous voudrez peut-être savoir des choses comme l'avance de synchronisation et les données de carburant en temps réel. Si vous êtes un hypermiler, vous voudrez peut-être en savoir plus sur votre économie de carburant.

Toutes ces valeurs sont calculées par le calculateur moteur de votre voiture. Il suffit d'un outil d'analyse pour lire les données. De nombreux propriétaires de voitures curieux se tournent vers des solutions commerciales telles qu'un Scan Gauge. Ils peuvent également utiliser un outil d'analyse qui utilise ELM327 via USB ou Bluetooth. Les concurrents les plus populaires sont Carista, BlueDriver ou un outil d'analyse de diagnostic Innova/Bosch classique.

Je voulais avoir une installation permanente dans mon véhicule avec du matériel dédié, j'ai donc décidé de suivre ma propre route ! Je suis ravi de partager la conception de mon outil d'analyse personnalisé.

Fournitures:

Important -

  • Carte Arduino (peut utiliser Nano, Teensy, Pro Micro, Uno….) [Amazon]
  • Robinet à fusible + fusible supplémentaire (assurez-vous d'avoir la bonne taille) [magasin de pièces automobiles]
  • Connecteur OBD II (j'en ai récupéré un d'un ancien outil d'analyse) [Amazon]
  • Module CAN Bus MCP2515 [Amazon]
  • Écran OLED (ou autre écran au choix) [Amazon]
  • Convertisseur Buck (ou autre régulateur de tension à découpage/linéaire) [Amazon]
  • Câble à 4 conducteurs pour votre écran (utilisez un ancien câble USB, un câble plat, etc.)
  • Beaucoup de câbles de démarrage pour tout connecter

Outils -

  • Voltmètre
  • Matériel de soudage
  • Pince à dénuder

Utile -

  • Imprimante 3D (ou accès à une) pour créer les pièces suivantes:

    • Boîtier pour arduino
    • Cadre d'écran/support de tableau de bord
  • Attaches pour boîtier
  • Adhésif

Étape 1: À propos du bus CAN (et avis de non-responsabilité)

À propos du bus CAN (et avis de non-responsabilité)
À propos du bus CAN (et avis de non-responsabilité)
À propos du bus CAN (et avis de non-responsabilité)
À propos du bus CAN (et avis de non-responsabilité)
À propos du bus CAN (et avis de non-responsabilité)
À propos du bus CAN (et avis de non-responsabilité)
À propos du bus CAN (et avis de non-responsabilité)
À propos du bus CAN (et avis de non-responsabilité)

VOUS OUVREZ ICI UN SÉRIEUX CAN DE VERS… Le dérangement avec votre véhicule/canbus peut causer des dommages et/ou un fonctionnement involontaire de votre véhicule ! Je vous fournis ce code et ces instructions sans aucune garantie. Vous assumez tous les risques. Essayez ceci pendant que le véhicule est STATIONNÉ EN PREMIER ! Ce projet est en fait assez sûr si vous faites simplement une petite recherche sur ce que vous faites. Si vous ne savez pas ce que signifie une partie des instructions ou du code, c'est probablement un signe que vous ne devriez pas déranger le système électrique de votre voiture ! N'assumez pas ce projet. Achetez un dongle OBD Bluetooth préfabriqué et utilisez-le à la place. Je te souhaite bonne chance.

Maintenant que la clause de non-responsabilité est à l'écart.. PEUT-Il vous sembler familier ? Peut-être similaire au LAN (Ethernet) ou au WLAN (WiFi) que vous avez peut-être à la maison… c'est parce que ce sont tous des réseaux. CAN signifie Controller Area Network. C'est une plate-forme de communication numérique que votre voiture utilise pour se parler. Au lieu de faire passer des fils de l'ordinateur du moteur à chaque capteur, lumière et appareil de votre voiture, ils sont tous contrôlés numériquement sur le réseau.

Le bus CAN est un protocole de communication différentiel. Cela signifie qu'il n'a besoin que de deux fils ! Il n'y a pas de Tx/Rx comme vous pourriez le trouver dans les communications série traditionnelles, et pas de transmission directe entre deux appareils. Il se trouve généralement sous forme de paire torsadée dans tout votre véhicule. Vous y accéderez via le port OBD. Vous n'avez pas nécessairement besoin de comprendre comment fonctionne ce protocole au niveau fondamental, mais vous devez le comprendre suffisamment pour pouvoir écrire ou modifier le code Arduino.

Si vous souhaitez suivre ce projet, assurez-vous que votre véhicule dispose d'un bus CAN ! Presque tous les véhicules sur la route aujourd'hui ont un port OBD II. Ils ont tous le même connecteur électrique sous le tableau de bord. Cependant, il existe des protocoles de communication très différents en fonction de votre constructeur automobile. Tout véhicule vendu aux États-Unis après 2008 utilise le bus CAN ISO 15765. C'est ce que nous voulons utiliser pour ce projet. Assurez-vous que votre véhicule dispose d'un bus CAN. Gardez à l'esprit que chaque voiture est unique. Vous aurez une vitesse de bus CAN spécifique, certains codes OBD que vous devez demander et diverses bizarreries que vous devez atténuer en cours de route.

Étape 2: schéma de câblage

Schéma de câblage
Schéma de câblage

Il est maintenant temps de commencer à planifier votre boîtier et votre installation. Ma voiture a une boîte à fusibles dans le capot et une juste sous le tableau de bord. Où est le tien? Il est temps de commencer à réfléchir.

J'ai utilisé un robinet de fusible sur le circuit d'essuie-glace car ma Prius a de nombreux circuits fusionnés juste à côté du port OBD. Vous pouvez utiliser la Vbatt sur le port OBD, mais attention ! C'est accroché à la batterie, donc l'appareil ne s'éteindra jamais. Mauvaise idée. Selon la consommation actuelle de l'Arduino, il peut tuer votre batterie en quelques jours ou semaines si vous laissez votre voiture s'asseoir ! Si vous utilisez un écran OLED, vous risquez de subir un burn-in excessif si votre appareil est allumé en permanence. Il est très important que l'appareil soit commuté sur votre allumage.

Vous avez peut-être une solution simple ! Vous pouvez avoir un véhicule avec une broche d'alimentation ACC/allumage sur le port OBD. Beaucoup de broches sont spécifiques au fabricant. Cela signifie que votre port OBD peut avoir une broche d'alimentation qui est commutée sur l'allumage. Cependant, ne vous contentez pas d'essayer le multimètre et de brancher votre arduino à n'importe quoi avec du 12 volts ! Votre véhicule peut avoir un J1699 ou un autre bus série qui utilise le niveau logique 12v. Qui sait ce que ferait un tirage actuel ! Vérifiez avec l'oscilloscope pour vous assurer que votre "source 12 volts" est une alimentation CC stable, pas un signal, avant de brancher l'alimentation arduino à une autre broche en plus de la batterie sur le port OBD.

Étape 3: Câblage du port OBD à la carte CAN

Câblage du port OBD à la carte CAN
Câblage du port OBD à la carte CAN
Câblage du port OBD à la carte CAN
Câblage du port OBD à la carte CAN

Recherchez sur le brochage de votre port OBD pour CAN Low et CAN High. Connectez ces fils au haut et au bas de votre carte.

Utilisez maintenant la terre de votre port OBD comme terre pour ce projet ! Connectez tous les fils de terre ensemble et assurez-vous qu'ils sont mis à la terre sur ce port OBD.

Nous allons nous concentrer sur le reste de l'interface SPI de la carte CAN en quelques étapes.

Étape 4: Fusible Tap et DC à DC Converter

Fusible et convertisseur DC à DC
Fusible et convertisseur DC à DC
Fusible et convertisseur DC à DC
Fusible et convertisseur DC à DC
Fusible et convertisseur DC à DC
Fusible et convertisseur DC à DC
Fusible et convertisseur DC à DC
Fusible et convertisseur DC à DC

Ne sautez pas le convertisseur abaisseur DC ! J'ai déjà détruit accidentellement ce projet une fois parce que j'ai décidé de faire fonctionner l'Arduino sur 12 volts de la boîte à fusibles. Je pense qu'il y avait un pic de tension d'un inducteur quelque part (Arduino était connecté au même fusible que le moteur d'essuie-glace), et cela a fait frire mon Nano.

Conseillé: