Kazalo:

Seeed Studio CAN -BUS V2.0 Hacking - Začetek: 5 korakov
Seeed Studio CAN -BUS V2.0 Hacking - Začetek: 5 korakov

Video: Seeed Studio CAN -BUS V2.0 Hacking - Začetek: 5 korakov

Video: Seeed Studio CAN -BUS V2.0 Hacking - Začetek: 5 korakov
Video: 🚀 AMAZON 2.0 - ИНТЕРНЕТ МАГАЗИН с нуля за 6 часов [Next / React / Nest / PostgreSQL / Prisma / TS] 2024, Julij
Anonim
Seeked Studio CAN -BUS V2.0 Hacking - Začetek
Seeked Studio CAN -BUS V2.0 Hacking - Začetek
Seeked Studio CAN -BUS V2.0 Hacking - Začetek
Seeked Studio CAN -BUS V2.0 Hacking - Začetek
Seeked Studio CAN -BUS V2.0 Hacking - Začetek
Seeked Studio CAN -BUS V2.0 Hacking - Začetek
Seeked Studio CAN -BUS V2.0 Hacking - Začetek
Seeked Studio CAN -BUS V2.0 Hacking - Začetek

Ta navodila so namenjena začetnikom, ki se že poznajo po Arduinu. Začetno znanje, kako napredovati, je pri vsakem projektu vedno bolečina in zamuda. Toda dokler se ne spoznate, si skoraj vedno zaželite, da bi imeli nekoga, ki bi vam pokazal osnove.

V tem navodilu vam bomo vrnili nekaj podatkov CAN-BUS iz vašega vozila.

In ne skrbite! Prešel bom k bistvu, ne da bi se prepiral in z buzz besedami zvenel kot pameten heker:-)

Osebno priporočam ščite Seeed Studio CAN-BUS. V resnici ne morem govoriti o nobeni drugi znamki, vendar mi je CAN-BUS Shield podjetja SeeedStudio zelo dobro služil.

Pomembna opomba: Ščitnik vodila can-bus je obvezen. To sem zapisal, ker se ljudje pogosto sprašujejo, ali morate uporabiti ščit CAN-BUS. Ščit ima MCP2515 (krmilnik CAN) in MCP2551 (oddajnik), ki bosta obdelala podatke CAN-BUS na serijska vrata vašega Arduina.

Zahtevana strojna oprema. Arduino UNO - Zadostuje vsaka združljivost z arduinom. To sem uporabil

2. SeeedStudio CAN-BUS ščit. Dobil sem ga neposredno iz SeeedStudio, tukaj je povezava

3. Nekaj žic za priključitev na CAN-BUS

4. vozilo, iz katerega lahko pridobivate podatke

Zahtevana programska oprema 1. Arduino IDE, Duh! Očitno:-)

2. SeeedStudio knjižnica CAN-BUS. Prenosljivo iz GIT Hub

Nekaj dodatnih pomembnih informacij, če želite prebrati več o ščitu SeeedStudio CAN-BUS.

Začnimo!

1. korak: Namestitev in povezava strojne opreme

Image
Image
Namestitev in povezava strojne opreme
Namestitev in povezava strojne opreme
Namestitev in povezava strojne opreme
Namestitev in povezava strojne opreme
Namestitev in povezava strojne opreme
Namestitev in povezava strojne opreme

Začnimo z najtežjim delom. V vašem vozilu moramo najti mesto, kjer se lahko dotaknemo CAN-BUS. Tu ne morem storiti veliko za vas, to morate ugotoviti sami. V mojem primeru sem se prek radia dotaknil CAN-BUS. Ja! Radio. Vozila z vgrajenim avdio zvokom običajno prižgejo osvetlitev stereo zaslona avtomobila glede na nastavitev žarometa vozila za nočno vožnjo. Običajno se to izvede prek notranjega CAN-BUS-a.

Uporabil sem podaljšek USB, ki ima moški USB in ženski USB konec. Tako sem ga preprosto prerezal na pol in nato žensko stran spajkal na priključek radia. Morda boste želeli kupiti moški ženski konektor za vaš tip radia, na ta način vam ne bo treba spajati v ožičenje vašega vozila in razveljaviti garancije ali pa povzročiti nevarnost požara.

In potem moški del, ki sem ga priključil na SeeedStudio CAN-BUS ščit, kot je prikazano na sliki. Tako se lahko po potrebi povežem/odklopim.

Nasvet: Uporabite rdečo žico za CAN-H in črno za CAN-L

Korak: Namestite programsko opremo na Arduino

Namestite programsko opremo na Arduino
Namestite programsko opremo na Arduino
Namestite programsko opremo na Arduino
Namestite programsko opremo na Arduino
Namestite programsko opremo na Arduino
Namestite programsko opremo na Arduino

Prenesite knjižnico SeeedStudio iz wikija SeeedStudio CAN-BUS.

github.com/Seeed-Studio/CAN_BUS_Shield

Namestite knjižnico, kot je prikazano na slikah.

V Arduino IDE izberite Sketch Include Library - Add.zip Library.

Po dodajanju knjižnice zaprite Arduino IDE in jo znova odprite. Zdaj boste lahko naložili nekaj primerov iz menija Datoteka Primeri datotek Preverjanje prejema ščita CAN-BUS

Za to vadnico naložite primer preverjanja prejema.

Pomembno!

Naslednje bo zahtevalo nekaj poskusov in napak.

Za pridobivanje podatkov sem uporabil svoj Jeep JK 2010 Rubicon, notranji avtobus pa deluje pri 125 KB.

V nastavitvenem razdelku, kjer se bere

medtem ko (CAN_OK! = CAN.begin (CAN_500KBPS)) sem ga moral spremeniti v

medtem ko (CAN_OK! = CAN.začni (CAN_125KBPS))

Če to storite narobe, ne boste mogli pridobiti berljivih podatkov. V večini primerov, vključno z mojim, bo vaše vozilo postalo brezvezno. To pomeni, da se bo kopica zasvetila kot božično drevo in brisalci se bodo začeli premikati. ker ščit za avtobus poškoduje avtobus.

3. korak: Povežite ga in začnite pridobivati podatke

Povežite ga in začnite pridobivati podatke
Povežite ga in začnite pridobivati podatke
Povežite ga in začnite pridobivati podatke
Povežite ga in začnite pridobivati podatke
Povežite ga in začnite pridobivati podatke
Povežite ga in začnite pridobivati podatke

Preden se povežete, preverite zdravstveno stanje, preden ga priklopite na vozilo. Zadnja stvar, ki jo želite storiti, je, da na CAN-BUS pošljete napajanje, ki potencialno raznese ECU vašega vozila.

Nisem opravil preverjanja zdravja in šele potem, ko sem ugotovil, da ne dobim podatkov, sem videl, da sem priključil USB prenosnika neposredno na napajanje USB Arduino. Na srečo se ni zgodilo nič.

Na slikah tega koraka sem uporabil prenosni računalnik Lenovo z Linux Mint. Če niste grobi, lahko uporabite kateri koli operacijski sistem za povezavo s serijskimi vrati vašega Arduina, 1. Namestite prenosni računalnik v svoje vozilo in vklopite Arduino CAN-BUS ščit s kablom USB.

2. Zaženite Putty ali Arduino serijski monitor (raje imam Putty). Ko je povezan, bi morali v serijski konzoli videti sporočilo, da je uspelo inicializirati ščit Can-Bus.

3. Vklopite vozilo. Ni ga treba zagnati, dokler je ključ v položaju za vklop.

4. Priključite Arduino na CAN-BUS. V trenutku, ko so povezani, se bodo podatki začeli pretakati v konzolo.

4. korak: Podatki in kaj vse to pomeni

Podatki in kaj vse to pomeni
Podatki in kaj vse to pomeni
Podatki in kaj vse to pomeni
Podatki in kaj vse to pomeni

Ko so podatki pridobljeni, jih bodo izpisali v naslednjo HEX obliko.

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

ID običajno predstavlja vozlišče v vašem vozilu.

Naredimo preprost primer. (Spodaj je izmišljeno in ni resnično, le primer)

ID vozlišča klimatske naprave = 0x402TURN IZKLOPLJEN ZRAK = 13TURN VKLOP VKLOPLJENEGA = 14 NASTAVITEV AIRKONSKEGA VENTILATORJA NA NIZKO = 7C NASTAVITVENEGA VENTILATORJA ZRAKA NA SREDNJI 8C NASTAVITVENEGA VENTILATORJA NA VISOK 9C

Če torej vklopimo Aircon in ga nastavimo na medij, bo sporočilo videti tako: 0x402, 13, 8C

enako velja za druga vozlišča, na primer centralno zaklepanjeCentralno zaklepanje ID = 0x503ZAKLONI vsa vrata = 14

Če pritisnete gumb, da zaklenete vsa vrata, bo sporočilo videti tako

0x502, 14

Nekaj dodatnih opomb.

Nekatera sporočila vodijo stanje, nekatera pa za trenutek.

Primer 1. Žarometi na državni pogon. Ko stikalo v vozilu nastavite na določen položaj, bo vozlišče še naprej oddajalo sporočilo. Če bi morali poseči v CAN-BUS, pošljite sporočilo, da ugasnete žaromete. Na kratko se bo izklopil in nato znova vklopil, ker bo vozlišče, kjer je stikalo nastavljeno za vklop žarometov, znova poslalo sporočilo, da ga vklopi.

Primer 2. Preskakovanje skladb na glavni enoti radia. ko pritisnete gumb in njegov trenutni gumb, ki naredi in takoj prekine vezje, ko ga zapustite, bo poslalo eno sporočilo, da preskoči skladbo in nikoli več, dokler ne vprašate, ponovno pritisnite gumb.

Običajno so trenutni gumbi najbolj uporabni, saj lahko upravljate funkcije v svojem vozilu tako, da pošljete en sam ukaz, ne da bi vas skrbelo, da bo vaš ukaz prepisan. Kjer bodo funkcije, ki jih vodi stanje, prepisane za nedoločen čas.

Nekaj nasvetov in idej

Ker lahko zdaj shranite podatke, jih lahko uporabite za izdelavo lastnih vezij Arduino, ki se bodo odzvala na podlagi sporočil, glejte na CAN-BUS. za primer. Recimo, da namestite po tržnih svetilkah. Ne da bi morali kopati po obstoječi napeljavi, lahko žaromete namestite neodvisno in jih vklopite le, ko vaš Arduino zazna sporočilo na CAN-BUS.

Pošiljanje podatkov v CAN-BUS

Če ste sledili navodilom na začetku tega navodila, ste namestili knjižnice SEEEDStudio. V Arduino IDE obstaja nekaj primerov, ki jih lahko preizkusite.

Poznavanje ID-ja in sporočila CAN0-BUS vozlišča, s katerim želite komunicirati.

Na žalost to ni zelo lahka naloga. Ampak tukaj je ideja. Uporabite Puttyjevo funkcijo beleženja in vse datoteke seje shranite v datoteko. Pustite, da Arduino približno 5 minut nadzoruje vodilo pločevinke, nato pa odjavite pot.

Nato začnite novo sejo in začnite kopirati podatke. Tokrat pa med izpisom podatkov pritisnite gumb. Ne pritiskajte več kot enega gumba. Nekajkrat pritisnite gumb, da zagotovite, da je zajel pritisk gumba.

Nato uporabite nekakšno orodje za primerjavo in primerjajte datoteko, da ugotovite razlike. Excel za to odlično deluje.

Nekatere kode lahko poskusite

Če imate enak model Jeep 2010 Rubicon kot jaz (prepričan sem, da bo spodaj delovalo tudi za modele '07, '08', 09)

Poskusite lahko naslednja sporočila. Naložite primere pošiljanja iz menija primerov Arduino in spremembe so bile pomembne.

Vključi zadnjo omarico: CAN.sendMsgBuf (0x2B0, 0, 4, stmp);

Levi utripalec Vklopljen: CAN.sendMsgBuf (0x2A8, 0, 6, stmp);

Desni utripalec Vklopljen: CAN.sendMsgBuf (0x2A8, 0, 6, stmp);

Vklop/izklop ESP: CAN.sendMsgBuf (0x2B0, 0, 4, stmp);

V naslednjem navodilu bom poslal nekaj podatkov na CEP-BUS mojega Jeepa, da pokažem, kako lahko posegate vanj.

Vso srečo!

5. korak: Oglejte si video

Za več dobrote CAN-BUS si oglejte video!

Priporočena: