Mündəricat:

Arduino, OBD2 və CAN Avtobusundan istifadə edərək takometr/skan ölçmə cihazı: 8 addım
Arduino, OBD2 və CAN Avtobusundan istifadə edərək takometr/skan ölçmə cihazı: 8 addım

Video: Arduino, OBD2 və CAN Avtobusundan istifadə edərək takometr/skan ölçmə cihazı: 8 addım

Video: Arduino, OBD2 və CAN Avtobusundan istifadə edərək takometr/skan ölçmə cihazı: 8 addım
Video: Introduction to M5Stack Core2 ESP32 2" Display Development Module -Robojax 2024, Noyabr
Anonim
Arduino, OBD2 və CAN Bus istifadə edərək takometr/skan ölçmə cihazı
Arduino, OBD2 və CAN Bus istifadə edərək takometr/skan ölçmə cihazı
Arduino, OBD2 və CAN Bus istifadə edərək takometr/skan ölçmə cihazı
Arduino, OBD2 və CAN Bus istifadə edərək takometr/skan ölçmə cihazı
Arduino, OBD2 və CAN Bus istifadə edərək takometr/skan ölçmə cihazı
Arduino, OBD2 və CAN Bus istifadə edərək takometr/skan ölçmə cihazı

Hər hansı bir Toyota Prius (və ya digər hibrid/xüsusi nəqliyyat vasitəsi) sahibləri, panellərində bir neçə yığım çatışmadığını biləcəklər! Mənim priusumda nə mühərrik dövriyyəsi, nə də temperatur göstəricisi var. Bir performans adamısınızsa, vaxtın əvvəlcədən təyin edilməsi və real vaxtda yanacaq məlumatları kimi şeyləri bilmək istəyə bilərsiniz. Bir hipermiler olsanız, yanacaq qənaətiniz haqqında daha çox məlumat bilmək istəyə bilərsiniz.

Bütün bu dəyərlər avtomobilinizin mühərrik kompüteri tərəfindən hesablanır. Verilənləri oxumaq üçün sadəcə bir tarama vasitəsi lazımdır. Bir çox maraqlı avtomobil sahibi Scan Gauge kimi kommersiya həllərinə müraciət edir. USB və ya Bluetooth üzərindən ELM327 istifadə edən bir skantool istifadə edə bilərlər. Populyar rəqiblər Carista, BlueDriver və ya adi bir Innova/Bosch diaqnostik tarama vasitəsidir.

Maşında xüsusi avadanlıqlarla daimi bir qurğu qurmaq istədim, buna görə öz marşrutumla getməyə qərar verdim! Xüsusi tarama alət dizaynımı paylaşmaqdan məmnunam.

Təchizat:

Vacib -

  • Arduino lövhəsi (Nano, Teensy, Pro Micro, Uno istifadə edə bilər.) [Amazon]
  • Sigorta kranı+əlavə qoruyucu (Doğru ölçüdə olduğunuzdan əmin olun) [avtomobil hissələri mağazası]
  • OBD II konnektoru (köhnə bir tarama alətindən qurtardım) [Amazon]
  • CAN Bus MCP2515 modulu [Amazon]
  • OLED Ekran (və ya digər seçim ekranı) [Amazon]
  • Buck çeviricisi (və ya digər keçid / xətti gərginlik tənzimləyicisi) [Amazon]
  • Ekranınız üçün 4 keçirici kabel (köhnə USB kabeli, lent kabeli və s. İstifadə edin)
  • Hər şeyi birləşdirmək üçün çoxlu keçid telləri

Alətlər -

  • Voltmetr
  • Lehimləmə avadanlığı
  • Tel çıxarıcılar

Faydalı -

  • Aşağıdakı hissələri yaratmaq üçün 3D printer (və ya birinə giriş):

    • Arduino üçün korpus
    • Ekran çərçivəsi/tablosuna montaj
  • Qapaq üçün bağlayıcılar
  • Yapışqan

Addım 1: CAN Avtobusu haqqında (və İmtina)

CAN Avtobusu haqqında (və İmtina)
CAN Avtobusu haqqında (və İmtina)
CAN Avtobusu haqqında (və İmtina)
CAN Avtobusu haqqında (və İmtina)
CAN Avtobusu haqqında (və İmtina)
CAN Avtobusu haqqında (və İmtina)
CAN Avtobusu haqqında (və İmtina)
CAN Avtobusu haqqında (və İmtina)

BURADA CİDDİ KURTLAR CANI AÇIYORSUNUZ… Avtomobilinizlə/avtobusunuzla dolaşmaq avtomobilinizin zədələnməsinə və/və ya istəmədən işləməsinə səbəb ola bilər! Bu kodu və təlimatı sizə heç bir zəmanət və ya zəmanət vermədən təqdim edirəm. Bütün riskləri özünüzə götürürsünüz. Avtomobil İLKDƏ park edilmiş vəziyyətdə bunu sınayın! Etdiyiniz işlə bağlı bir az araşdırma aparsanız bu layihə əslində olduqca təhlükəsizdir. Təlimatların və ya kodun hər hansı bir hissəsinin nə demək olduğunu bilmirsinizsə, bu, yəqin ki, avtomobilinizin elektrik sisteminə qarışmamağınızın bir əlamətidir! Bu layihəni qəbul etməyin. Hazır bluetooth OBD dongle alın və bunun əvəzinə istifadə edin. Mən sizə uğurlar arzulayıram.

İndi imtinanın yoldan çıxdığını.. tanış ola bilərmi? Bəlkə də evdə ola biləcəyiniz LAN (Ethernet) və ya WLAN -a (WiFi) bənzəyir … çünki bunlar hamısı şəbəkədir. CAN, Nəzarətçi Bölgə Şəbəkəsi deməkdir. Avtomobilinizin özü ilə danışmaq üçün istifadə etdiyi rəqəmsal bir əlaqə platformasıdır. Mühərrik kompüterindən avtomobilinizdəki hər bir sensora, işığa və cihaza tel çəkmək əvəzinə, hamısı şəbəkə üzərindən rəqəmsal olaraq idarə olunur.

CAN avtobusu diferensial ünsiyyət protokoludur. Bu o deməkdir ki, yalnız iki telə ehtiyac var! Ənənəvi Serial ünsiyyətində tapa biləcəyiniz kimi Tx/Rx yoxdur və iki cihaz arasında birbaşa ötürmə yoxdur. Ümumiyyətlə avtomobilinizin hər tərəfində bükülmüş bir cüt olaraq tapılır. OBD portu vasitəsilə əldə edəcəksiniz. Bu protokolun təməl səviyyədə necə işlədiyini başa düşmək məcburiyyətində deyilsiniz, ancaq Arduino kodunu yaza və ya dəyişdirə bilmək üçün kifayət qədər başa düşməlisiniz.

Bu layihəni izləmək istəyirsinizsə, avtomobilinizin CAN avtobusunun olduğundan əmin olun! Bu gün yolda olan demək olar ki, hər bir avtomobilin OBD II portu var. Hamısının tablosunun altında eyni elektrik konnektoru var. Bununla birlikdə, avtomobil istehsalçınıza əsaslanan ünsiyyət üçün çox fərqli protokollar var. 2008 -ci ildən sonra ABŞ -da satılan hər hansı bir vasitə ISO 15765 CAN avtobusundan istifadə edir. Bu layihə üçün istifadə etmək istədiyimiz budur. Avtomobilinizin CAN avtobusunun olub olmadığını yoxlayın. Hər bir avtomobilin özünəməxsus olduğunu unutmayın. Xüsusi bir CAN avtobus sürətinə, tələb etməli olduğunuz müəyyən OBD kodlarına və yol boyu azaltmalı olduğunuz müxtəlif qəribəliklərə sahib olacaqsınız.

Addım 2: Bağlama Şeması

Kabel diaqramı
Kabel diaqramı

Qutunuzu və quruluşunuzu planlaşdırmağa başlamağın vaxtıdır. Avtomobilimin kapotunda bir sigorta qutusu var, biri də tire altında. Səninki haradadır? Düşünməyə başlamaq vaxtıdır.

Priusumun OBD portunun yanında bir çox dövrə bağlandığı üçün ön şüşə silecek dövrəsində bir qoruyucu tap istifadə etdim. VBatt -ı OBD portunda istifadə edə bilərsiniz, amma diqqətli olun! Bu batareyaya bağlıdır, buna görə cihaz heç vaxt sönməyəcək. Pis fikir. Arduinonun cari çəkilişindən asılı olaraq, avtomobilinizin oturmasına icazə versəniz, batareyanı bir neçə gün və ya həftə ərzində öldürə bilər! Bir OLED ekran istifadə edirsinizsə, cihazınız hər zaman yanarsa, həddindən artıq yanma ilə qarşılaşa bilərsiniz. Cihazın alovlanma rejiminə keçməsi çox vacibdir.

Asan bir həll yolunuz ola bilər! OBD portunda ACC/alovlanma pimi olan bir avtomobiliniz ola bilər. Bir çox pin istehsalçıya xasdır. Bu, OBD portunuzun alovlanma vəziyyətinə gətirilmiş bir güc pininə sahib ola biləcəyi deməkdir. Ancaq multimetri sınamayın və arduino -nuzu 12 voltlu bir şeyə bağlamayın! Avtomobilinizdə 12V məntiq səviyyəsindən istifadə edən J1699 və ya digər seriyalı avtobus ola bilər. Kim bilir cari çəkiliş nə edəcək! Arduino gücünü OBD portundan başqa hər hansı bir pinə bağlamadan əvvəl "12 volt mənbəyinizin" sabit bir DC enerji təchizatı olduğundan əmin olmaq üçün osiloskopla yoxlayın.

Addım 3: CAN Kartına OBD Portunun çəkilməsi

OBD Portunu CAN Şurasına bağlayın
OBD Portunu CAN Şurasına bağlayın
OBD Portunu CAN Şurasına bağlayın
OBD Portunu CAN Şurasına bağlayın

CAN Low və CAN High üçün OBD portunuzun çıxış nöqtəsinə baxın. Bu telləri lövhənizdəki Yüksək və Aşağıya bağlayın.

İndi bu layihə üçün əsas olaraq OBD limanınızdakı zəmini istifadə edin! Bütün topraklama tellərini bir yerə bağlayın və bu OBD portuna topraklandığından əmin olun.

Bir neçə addımda CAN lövhəsinin SPI interfeysinin qalan hissəsinə diqqət yetirəcəyik.

Addım 4: Fuse Tap və DC -dən DC Converterə

Fuse Tap və DC -dən DC çeviriciyə
Fuse Tap və DC -dən DC çeviriciyə
Fuse Tap və DC -dən DC çeviriciyə
Fuse Tap və DC -dən DC çeviriciyə
Fuse Tap və DC -dən DC çeviriciyə
Fuse Tap və DC -dən DC çeviriciyə
Fuse Tap və DC -dən DC çeviriciyə
Fuse Tap və DC -dən DC çeviriciyə

DC aşağıya çeviricisini atlamayın! Arduino -nu qoruyucu qutudan 12 voltdan çıxarmağa qərar verdiyim üçün təsadüfən bu layihəni bir dəfə məhv etdim. Düşünürəm ki, bir yerdə bir endüktördən bir gərginlik sıçrayışı var idi (Arduino, ön şüşə silecek motoru ilə eyni qoruyucuya bağlanmışdı) və mənim Nanonu qızardı.

Tövsiyə: