Talaan ng mga Nilalaman:

Tachometer / Scan Gauge Gamit ang Arduino, OBD2, at CAN Bus: 8 Hakbang
Tachometer / Scan Gauge Gamit ang Arduino, OBD2, at CAN Bus: 8 Hakbang

Video: Tachometer / Scan Gauge Gamit ang Arduino, OBD2, at CAN Bus: 8 Hakbang

Video: Tachometer / Scan Gauge Gamit ang Arduino, OBD2, at CAN Bus: 8 Hakbang
Video: Arduino OBD2 interface reading data from car 2024, Nobyembre
Anonim
Tachometer / Scan Gauge Gamit ang Arduino, OBD2, at CAN Bus
Tachometer / Scan Gauge Gamit ang Arduino, OBD2, at CAN Bus
Tachometer / Scan Gauge Gamit ang Arduino, OBD2, at CAN Bus
Tachometer / Scan Gauge Gamit ang Arduino, OBD2, at CAN Bus
Tachometer / Scan Gauge Gamit ang Arduino, OBD2, at CAN Bus
Tachometer / Scan Gauge Gamit ang Arduino, OBD2, at CAN Bus

Ang sinumang may-ari ng Toyota Prius (o iba pang mga may-ari ng hybrid / espesyal na sasakyan) ay malalaman na ang kanilang mga dashboard ay maaaring nawawala ang ilang mga pag-dial! Ang aking prius ay walang engine RPM o pagsukat ng temperatura. Kung ikaw ay isang lalaki sa pagganap, baka gusto mong malaman ang mga bagay tulad ng pag-advance sa tiyempo at data ng gasolina sa real time. Kung ikaw ay isang hypermiler, baka gusto mong malaman ang karagdagang impormasyon tungkol sa iyong ekonomiya sa gasolina.

Ang lahat ng mga halagang ito ay kinakalkula ng engine computer ng iyong sasakyan. Kailangan lang ng isang tool sa pag-scan upang mabasa ang data. Maraming mga nagtataka na may-ari ng kotse ang bumaling sa mga komersyal na solusyon tulad ng isang Scan Gauge. Maaari din silang gumamit ng isang scantool na gumagamit ng ELM327 sa paglipas ng USB o Bluetooth. Ang mga tanyag na kalaban ay ang Carista, BlueDriver, o isang regular na ol ng Innova / Bosch diagnostic scan tool.

Nais kong magkaroon ng isang permanenteng pag-install sa aking sasakyan na may nakalaang hardware, kaya't nagpasya akong pumunta sa aking sariling ruta! Nasasabik akong ibahagi ang aking pasadyang disenyo ng tool sa pag-scan.

Mga Pantustos:

Mahalaga -

  • Arduino board (maaaring gumamit ng Nano, Teensy, Pro Micro, Uno ….) [Amazon]
  • Fuse tap + dagdag na piyus (Tiyaking mayroon kang tamang sukat) [tindahan ng mga piyesa ng sasakyan]
  • Konektor ng OBD II (Iniligtas ko ang isa mula sa isang lumang tool sa pag-scan) [Amazon]
  • CAN Bus MCP2515 module [Amazon]
  • OLED Display (o iba pang pagpapakita ng pagpipilian) [Amazon]
  • Buck converter (o iba pang switching / linear voltage regulator) [Amazon]
  • 4-conductor cable para sa iyong display (gumamit ng lumang USB cable, ribbon cable, atbp.)
  • Maraming mga jumper wires para sa pagkonekta sa lahat

Mga tool -

  • Voltmeter
  • Kagamitan sa paghihinang
  • Mga striper ng wire

Matulungin -

  • 3D printer (o pag-access sa isa) upang likhain ang mga sumusunod na bahagi:

    • Enclosure para sa arduino
    • I-mount ang bezel / dashboard ng screen
  • Mga fastener para sa enclosure
  • Malagkit

Hakbang 1: Tungkol sa CAN Bus (at Disclaimer)

Tungkol sa CAN Bus (at Disclaimer)
Tungkol sa CAN Bus (at Disclaimer)
Tungkol sa CAN Bus (at Disclaimer)
Tungkol sa CAN Bus (at Disclaimer)
Tungkol sa CAN Bus (at Disclaimer)
Tungkol sa CAN Bus (at Disclaimer)
Tungkol sa CAN Bus (at Disclaimer)
Tungkol sa CAN Bus (at Disclaimer)

NAGBABUKSAN KA NG ISANG MALAKING PWEDE SA MGA BUHOK DITO … Ang paggalaw kasama ng iyong sasakyan / maaari ang bus ay maaaring maging sanhi ng pinsala at / o hindi sinasadyang pagpapatakbo ng iyong sasakyan! Ibinibigay ko sa iyo ang code at tagubilin na ito na walang warranty o garantiya. Ipagpalagay mo ang lahat ng panganib. Subukan ito habang ang sasakyan ay PINAKA-UNA! Ang proyektong ito ay talagang ligtas kung gumawa ka lamang ng kaunting pagsasaliksik tungkol sa iyong ginagawa. Kung hindi mo alam kung ano ang ibig sabihin ng anumang bahagi ng mga tagubilin o code, marahil ito ay isang palatandaan na hindi mo dapat ginulo ang electrical system ng iyong sasakyan! Huwag gawin ang proyektong ito. Bumili ng isang premade bluetooth OBD dongle at gamitin iyon sa halip. Sana ay swerte ka lang.

Ngayon na ang disclaimer ay wala sa daan.. KAYA bang pamilyar ang tunog? Marahil ay katulad sa LAN (Ethernet), o WLAN (WiFi) na mayroon ka sa bahay … iyon ay dahil lahat sila ay mga network. CAN ay kumakatawan sa Controller Area Network. Ito ay isang platform ng mga digital na komunikasyon na ginagamit ng iyong sasakyan upang kausapin ang sarili nito. Sa halip na magpatakbo ng mga wire mula sa computer computer sa bawat sensor, ilaw, at aparato sa iyong sasakyan, lahat ay kontrolado ng digital sa network.

Ang CAN bus ay isang kaugnay na protocol sa komunikasyon. Nangangahulugan iyon na nangangailangan lamang ito ng dalawang wires! Walang tulad ng Tx / Rx na maaari mong makita sa tradisyonal na Serial na komunikasyon, at walang direktang paghahatid sa pagitan ng dalawang mga aparato. Karaniwan itong matatagpuan bilang isang baluktot na pares sa buong sasakyan mo. Maa-access mo ito sa pamamagitan ng OBD port. Hindi mo kinakailangang maunawaan kung paano gumagana ang protocol na ito sa pangunahing antas, ngunit dapat mong maunawaan ito ng sapat upang makapagsulat o mabago ang Arduino code.

Kung nais mong sundin ang proyektong ito, tiyaking ang iyong sasakyan ay may CAN bus! Halos lahat ng sasakyan sa kalsada ngayon ay may port ng OBD II. Lahat sila ay may parehong electrical konektor sa ilalim ng dashboard. Gayunpaman, may mga wildly magkakaibang mga protokol para sa komunikasyon batay sa iyong tagagawa ng auto. Ang anumang sasakyang naibenta sa Estados Unidos pagkatapos ng 2008 ay gumagamit ng ISO 15765 CAN bus. Iyon ang nais naming gamitin para sa proyektong ito. Suriin upang matiyak na ang iyong sasakyan ay may CAN bus. Isaisip na ang bawat kotse ay natatangi. Magkakaroon ka ng isang tukoy na bilis ng CAN bus, ilang mga OBD code na dapat mong hilingin, at mga sari-saring quirks na dapat mong pagaanin.

Hakbang 2: Diagram ng Mga Kable

Diagram ng Kable
Diagram ng Kable

Ngayon na ang oras upang simulang planuhin ang iyong enclosure at pag-install. Ang aking kotse ay may isang fuse box sa hood at isang kanang ilalim ng dash. Nasaan ang sa iyo? Oras upang magsimulang mag-isip.

Gumamit ako ng fuse tap sa windshield wiper circuit dahil ang aking Prius ay maraming mga circuit na fuse sa tabi mismo ng port ng OBD. Maaari mong gamitin ang Vbatt sa OBD port, ngunit mag-ingat! Naka-hook iyon sa baterya, kaya't ang aparato ay hindi kailanman papatayin. Masamang ideya. Nakasalalay sa kasalukuyang gumuhit ng Arduino, maaari nitong patayin ang iyong baterya sa loob ng ilang araw o linggo kung papayagan mo ang iyong sasakyan na umupo! Kung gumagamit ka ng isang display na OLED, maaari kang makaranas ng labis na pagkasunog kung ang iyong aparato ay palaging nasa oras. Napakahalaga na ang aparato ay inilipat sa iyong pag-aapoy.

Maaari kang magkaroon ng isang madaling solusyon! Maaari kang magkaroon ng isang sasakyan na may isang ACC / ignition power pin sa OBD port. Maraming mga pin ang tukoy sa tagagawa. Nangangahulugan iyon na ang iyong OBD port ay maaaring magkaroon ng isang power pin na lumipat sa pag-aapoy. Gayunpaman, huwag lamang subukan ang multimeter at i-hook ang iyong arduino hanggang sa anumang bagay na may 12 volts! Ang iyong sasakyan ay maaaring may J1699 o iba pang mga serial bus na gumagamit ng 12v antas ng lohika. Sino ang nakakaalam kung ano ang gagawin ng isang kasalukuyang gumuhit! Suriin sa oscilliscope upang matiyak na ang iyong "12 volt na mapagkukunan" ay isang matatag na supply ng kuryente ng DC, hindi isang senyas, bago mo i-hook ang lakas ng arduino sa anumang iba pang pin bukod sa batt sa OBD port.

Hakbang 3: Mga Kable ng OBD Port sa CAN Board

Mga Kable ng OBD Port sa CAN Board
Mga Kable ng OBD Port sa CAN Board
Mga Kable ng OBD Port sa CAN Board
Mga Kable ng OBD Port sa CAN Board

Tumingin sa pinout para sa iyong OBD port para sa CAN Low at CAN High. Ikonekta ang mga wires na iyon sa Mataas at Mababang sa iyong board.

Ngayon gamitin ang lupa mula sa iyong OBD port bilang iyong lupa para sa proyektong ito! Ikonekta ang lahat ng mga wire sa lupa nang magkakasama, at tiyakin na ang mga ito ay na-grounded sa OBD port na ito.

Magtutuon kami sa natitirang interface ng SPI ng CAN board sa ilang mga hakbang.

Hakbang 4: Fuse Tap at DC to DC Converter

Fuse Tap at DC to DC Converter
Fuse Tap at DC to DC Converter
Fuse Tap at DC to DC Converter
Fuse Tap at DC to DC Converter
Fuse Tap at DC to DC Converter
Fuse Tap at DC to DC Converter
Fuse Tap at DC to DC Converter
Fuse Tap at DC to DC Converter

Huwag laktawan ang DC step-down converter! Hindi ko sinasadyang nawasak ang proyektong ito nang isang beses dahil napagpasyahan kong patakbuhin ang Arduino ng 12 volts mula sa fuse box. Sa palagay ko mayroong isang boltahe na spike mula sa isang inductor sa isang lugar (Arduino ay naka-hook sa parehong piyus bilang ang wiper motor na wiper), at pinirito ang aking Nano.

Inirerekumendang: