Talaan ng mga Nilalaman:

Nakita ang Studio CAN-BUS V2.0 Hacking - Pagsisimula: 5 Hakbang
Nakita ang Studio CAN-BUS V2.0 Hacking - Pagsisimula: 5 Hakbang

Video: Nakita ang Studio CAN-BUS V2.0 Hacking - Pagsisimula: 5 Hakbang

Video: Nakita ang Studio CAN-BUS V2.0 Hacking - Pagsisimula: 5 Hakbang
Video: 5 AWESOME LIFE HACKS #2 2024, Hulyo
Anonim
Nakita ang Studio CAN-BUS V2.0 Hacking - Pagsisimula
Nakita ang Studio CAN-BUS V2.0 Hacking - Pagsisimula
Nakita ang Studio CAN-BUS V2.0 Hacking - Pagsisimula
Nakita ang Studio CAN-BUS V2.0 Hacking - Pagsisimula
Nakita ang Studio CAN-BUS V2.0 Hacking - Pagsisimula
Nakita ang Studio CAN-BUS V2.0 Hacking - Pagsisimula
Nakita ang Studio CAN-BUS V2.0 Hacking - Pagsisimula
Nakita ang Studio CAN-BUS V2.0 Hacking - Pagsisimula

Ang itinuturo na ito ay inilaan para sa mga nagsisimula na alam na ang kanilang paraan sa paligid ng Arduino. Ang paunang alam kung paano pumunta ay palaging isang sakit at pag-ubos ng oras sa anumang proyekto. Ngunit hangga't hindi mo nalalaman ang iyong lakad sa paligid mo halos palaging nagnanais na mayroon kang isang taong magpapakita sa iyo ng mga pangunahing kaalaman.

Sa pagtuturo na ito ibabalik namin ang ilang data ng CAN-BUS mula sa iyong sasakyan.

At huwag magalala! Makakarating ako hanggang sa puntong ito nang hindi nag-rambol at gumagamit ng mga salitang buzz upang maging tunog ako ng isang matalinong hacker:-)

Personal kong inirerekumenda ang mga panangga na Seeed Studio CAN-BUS. Hindi talaga nagsasalita si Cant para sa alinman sa iba pang mga tatak ngunit ang CAN-BUS Shield mula sa SeeedStudio ay mahusay na naglingkod sa akin.

Mahalagang Tandaan: Ang panangga ng can-bus ay sapilitan. Ginawa ko ang tala na ito dahil madalas na ang mga tao ay nagtanong kung dapat kang gumamit ng isang CAN-BUS na kalasag. Ang kalasag ay may isang MCP2515 (CAN Controller) at MCP2551 (Transceiver) na magproseso ng data ng CAN-BUS sa serial port ng iyong Arduino.

Ang Kinakailangan na Hardware.1. Arduino UNO - Ang anumang katugmang arduino ay sapat na. Ginamit ko ang isang ito

2. SeeedStudio CAN-BUS Shield. Direkta kong nakuha ito mula sa SeeedStudio narito ang link

3. Ang ilang mga wires upang mag-tap sa CAN-BUS

4. isang Sasakyan na maaari mong makuha ang data mula sa

Ang Kinakailangan na Software1. Arduino IDE, Duh! Malinaw na:-)

2. SeeedStudio CAN-BUS Library. Naida-download mula sa GIT Hub

Ang ilang labis na mahalagang impormasyon kung nais mong magbasa nang higit pa tungkol sa kalasag sa SeeedStudio CAN-BUS.

Magsimula na tayo!

Hakbang 1: Pag-setup ng Hardware at Koneksyon

Image
Image
Pag-setup at Koneksyon sa Hardware
Pag-setup at Koneksyon sa Hardware
Pag-setup at Koneksyon sa Hardware
Pag-setup at Koneksyon sa Hardware
Pag-setup at Koneksyon sa Hardware
Pag-setup at Koneksyon sa Hardware

Magsimula tayo sa pinakamahirap na bahagi. Kailangan naming maghanap ng lugar sa iyong sasakyan kung saan maaari kaming mag-tap sa CAN-BUS. Walang gaanong magagawa ako para sa iyo dito, kailangan mong alamin ito sa iyong sarili. Sa aking kaso nag-tap ako sa CAN-BUS sa pamamagitan ng radyo. Oo! ang radyo. Ang mga sasakyang may pinagsamang audio ng kotse ay karaniwang itinatakda ang pag-iilaw ng display ng car-stereo batay sa setting ng headlamp ng sasakyan para sa pagmamaneho sa gabi. Karaniwan itong ginagawa sa pamamagitan ng Interior CAN-BUS.

Gumamit ako ng isang USB extender cable na may lalaking USB at babaeng USB end. Kaya't pinutol ko lang ito sa kalahati at pagkatapos ay hinihinang ang babaeng tagiliran sa konektor ng radyo. Maaaring gusto mong bumili ng isang lalaking babaeng konektor para sa iyong uri ng radyo, sa ganoong paraan hindi mo na kailangang mag-splice sa mga kable ng iyong sasakyan at i-void ang iyong warranty o potensyal na maging sanhi ng isang panganib sa sunog.

At pagkatapos ang bahagi ng lalaki na nakakonekta ko sa SeeedStudio CAN-BUS na kalasag tulad ng ipinakita sa larawan. Sa ganitong paraan maaari kong kumonekta / idiskonekta kung kinakailangan.

Tip: Gumamit ng pulang kawad para sa CAN-H at itim para sa CAN-L

Hakbang 2: I-install ang Software Sa Arduino

I-install ang Software Sa Arduino
I-install ang Software Sa Arduino
I-install ang Software Sa Arduino
I-install ang Software Sa Arduino
I-install ang Software Sa Arduino
I-install ang Software Sa Arduino

I-download ang SeeedStudio Library mula sa wiki ng SeeedStudio CAN-BUS.

github.com/Seeed-Studio/CAN_BUS_Shield

I-install ang library tulad ng ipinapakita sa mga larawan.

Mula sa Arduino IDE piliin ang Sketch Isama ang Library - Magdagdag ng.zip Library.

Matapos idagdag ang library isara ang Arduino IDE at muling buksan ito. Makakapag-load ka na ngayon ng ilan sa mga halimbawa mula sa Mga Halimbawa ng File File File na CAN-BUS shield Tumanggap ng tseke

Para sa tutorial na ito, i-load ang halimbawa ng makatanggap ng tseke.

Mahalaga!

Ang sumusunod ay mangangailangan ng ilang pagsubok at error.

Ginamit ko ang aking Jeep JK 2010 Rubicon upang makuha ang data at ang panloob na bus na ito ay tumatakbo sa 125Kbs.

Sa seksyon ng pag-setup kung saan ito nagbabasa

habang (CAN_OK! = CAN.begin (CAN_500KBPS)) Kailangan kong palitan ito ng

habang (CAN_OK! = CAN.begin (CAN_125KBPS))

Kung nagkamali ka at hindi mo magagawang makuha ang nababasa na data. Sa karamihan ng mga kaso kasama ang minahan ang iyong sasakyan ay pupunta sa bonkers. I. E ang kumpol na may ilaw na tulad ng isang Christmas tree at ang mga nagpahid ay magsisimulang ilipat. dahil ang lata ng bus na panangga ay nasisira ang bus.

Hakbang 3: Ikonekta Ito at Simulan ang Pagkuha ng Data

Ikonekta Ito at Simulan ang Pagkuha ng Data
Ikonekta Ito at Simulan ang Pagkuha ng Data
Ikonekta Ito at Simulan ang Pagkuha ng Data
Ikonekta Ito at Simulan ang Pagkuha ng Data
Ikonekta Ito at Simulan ang Pagkuha ng Data
Ikonekta Ito at Simulan ang Pagkuha ng Data

Bago ka kumonekta mangyaring kumuha ng isang pagsusuri sa katinuan bago mo ito maiugnay sa iyong sasakyan. Ang huling bagay na nais mong gawin ay, magpadala ng lakas sa iyong CAN-BUS na potensyal na paghihip ng ECU ng iyong Sasakyan.

Hindi ako gumawa ng isang tseke sa katinuan at pagkatapos ko lamang mapagtanto na hindi ako nakakakuha ng data ay nakita kong nakakonekta ko ang USB ng Laptop nang direkta sa Arduino's USB Power. Sa kabutihang palad walang nangyari.

Sa mga larawan ng hakbang na ito ginamit ko ang aking Lenovo Laptop na puno ng Linux Mint. Off-coarse maaari mong gamitin ang anumang operating system upang kumonekta sa serial port ng iyong Arduino, 1. I-setup ang laptop sa iyong sasakyan at i-power up ang Arduino CAN-BUS na kalasag gamit ang isang USB cable.

2. Simulan ang Putty o ang Arduino serial Monitor (mas gusto ko ang Putty), Kapag nakakonekta ito dapat mong makita ang isang mensahe sa serial console na nagsasabi sa iyo na nagawa nitong gawing simula ang kalasag na Can-Bus.

3. Buksan ang sasakyan. Hindi ito kailangang simulan hangga't ang susi ay nasa posisyon.

4. Ikonekta ang Arduino sa CAN-BUS. Sa sandaling konektado nito ang data ay magsisimulang mag-stream sa console.

Hakbang 4: Ang Data at Ano ang Ibig Sabihin Nito

Ang Data at Ano ang Ibig Sabihin Nito
Ang Data at Ano ang Ibig Sabihin Nito
Ang Data at Ano ang Ibig Sabihin Nito
Ang Data at Ano ang Ibig Sabihin Nito

Kapag nakuha ang data ay itatapon ito sa sumusunod na format na HEX.

ID, BIT1, BIT2, BIT3, BIT4, BIT5, BIT6, BIT7, BIT8

Karaniwang kumakatawan ang ID sa isang Node sa loob ng iyong sasakyan.

Gumawa tayo ng isang simpleng halimbawa. (Ang ibaba ay binubuo at hindi totoo, isang halimbawa lamang)

Air Conditioning Node ID = 0x402TURN AIRCON OFF = 13TURN AIRCON = 14 SET AIRCON BLOWER TO LOW = 7C SET AIRCON BLOWER TO MEDIUM 8C SET AIRCON BLOWER TO HIGH 9C

Kaya't kung bubuksan natin ang Aircon at itakda ito sa daluyan ang mensahe ay magiging katulad nito0x402, 13, 8C

pareho din sa iba pang mga node, halimbawa ng Central LockingCentral Locking ID = 0x503LOCK lahat ng mga pintuan = 14

Kaya't kung pinindot mo ang pindutan upang i-lock ang lahat ng mga pintuan ay ganito ang magiging hitsura ng mensahe

0x502, 14

Ilang Dagdag na tala.

Ang ilang mga mensahe ay hinihimok ng estado at ang ilan o pansamantala.

Halimbawa1. Head lamp bilang estado na hinimok. Kapag nagtakda ka ng isang switch sa sasakyan sa isang tukoy na posisyon ang node ay patuloy na i-broadcast ang mensahe nang paulit-ulit. Kung kailangan mong makagambala sa CAN-BUS magpadala ng isang mensahe upang patayin ang mga head lamp. Sandali itong papatayin at pagkatapos ay muling i-on dahil ang node kung saan nakatakda ang switch upang i-on ang mga headlamp ay muling magpapadala ng isang mensahe upang i-on ito.

Halimbawa2. Paglaktaw ng mga track sa iyong yunit ng head radio. kapag pinindot mo ang isang pindutan at ito ay isang pansamantalang pindutan na gagawa at agad na masisira ang circuit kapag iniwan mo ito, Magpadala ito ng isang mensahe upang laktawan ang track at hindi na muli hanggang sa tanungin mong pindutin muli ang pindutan.

Kadalasan ang mga pansamantalang pindutan ay ang pinaka-kapaki-pakinabang dahil maaari mong kontrolin ang mga tampok sa iyong sasakyan sa pamamagitan ng pagpapadala ng isang solong utos nang hindi nag-aalala na ang iyong utos ay higit na maisulat. Kung saan bilang mga tampok na hinimok ng estado ay mai-o-overtake nang walang katiyakan.

Ang ilang mga tip at ideya

Makikita na nagagawa mong magtapon ng data maaari mo itong magamit upang makabuo ng iyong sariling Arduino circuit na magre-react batay sa mga mensahe ay makikita sa CAN-BUS. halimbawa. Sabihing nag-install ka pagkatapos ng mga ilaw ng merkado. Nang hindi kinakailangang maghukay sa iyong mayroon nang mga kable maaari mong mai-install ang iyong mga headlamp nang nakapag-iisa at i-on lamang ang mga ito kapag nakakita ang iyong Arduino ng isang mensahe sa CAN-BUS.

Nagpapadala ng data sa CAN-BUS

Kung sinundan mo ang tagubilin sa simula ng pagtuturo na ito na na-install mo ang mga library ng SEEEDStudio. Sa Arduino IDE mayroong ilang halimbawa na maaari mong subukan.

Alam ang ID at ang mensahe ng CAN0-BUS ng node na nais mong makipag-ugnay.

Sa kasamaang palad hindi ito isang napakadaling gawain. Ngunit narito ang isang Ideya. Gumamit ng tampok na Pag-log ni Putty at itapon ang lahat ng data ng session upang mag-file. Hayaan ang Arduino na subaybayan ang can bus para sa halos 5 Mins at pagkatapos ay i-save ang pag-log out sa paraan.

Pagkatapos magsimula ng isang bagong sesyon at simulang magtapon ng data. Ngunit sa oras na ito habang ang pagtatapon ng data pindutin ang isang pindutan. Huwag pindutin ang higit sa isang pindutan. Pindutin ang pindutan ng ilang beses upang magarantiya na nakuha nito ang pindutan ng pindutan.

Pagkatapos ay gumamit ng ilang uri ng tool sa paghahambing at ihambing ang file upang makita ang mga pagkakaiba. Mahusay na gumagana ang Excel para dito.

Ang ilang mga Code na maaari mong subukan

Kung mayroon kang parehong modelo ng Jeep 2010 Rubicon na tulad ko (Sigurado akong gagana rin ang nasa ibaba para sa mga modelong '07, '08', 09)

Maaari mong subukan ang mga sumusunod na mensahe. I-load ang mga halimbawa ng pagpapadala mula sa menu ng mga halimbawa ng Arduino at ang pagbabago ay nauugnay.

Makisali sa Rear Locker.: CAN.sendMsgBuf (0x2B0, 0, 4, stmp);

Left Blinker On: CAN.sendMsgBuf (0x2A8, 0, 6, stmp);

Right Blinker On: CAN.sendMsgBuf (0x2A8, 0, 6, stmp);

Ang ON / OFF ng ESP: CAN.sendMsgBuf (0x2B0, 0, 4, stmp);

Sa susunod kong pagtuturo magpapadala ako ng ilang data sa CAN-BUS ng aking Jeep upang maipakita kung paano ka makagambala dito.

Suwerte!

Hakbang 5: Panoorin ang Video

Tingnan ang video para sa karagdagang CAN-BUS kabutihan!

Inirerekumendang: