Mündəricat:

Seeed Studio CAN -BUS V2.0 Hacking - Başlarkən: 5 addım
Seeed Studio CAN -BUS V2.0 Hacking - Başlarkən: 5 addım

Video: Seeed Studio CAN -BUS V2.0 Hacking - Başlarkən: 5 addım

Video: Seeed Studio CAN -BUS V2.0 Hacking - Başlarkən: 5 addım
Video: ReSpeaker - An Open Modular Voice Interface to Hack Things 2024, Noyabr
Anonim
Seeed Studio CAN -BUS V2.0 Hacking - Başlayır
Seeed Studio CAN -BUS V2.0 Hacking - Başlayır
Seeed Studio CAN -BUS V2.0 Hacking - Başlayır
Seeed Studio CAN -BUS V2.0 Hacking - Başlayır
Seeed Studio CAN -BUS V2.0 Hacking - Başlayırıq
Seeed Studio CAN -BUS V2.0 Hacking - Başlayırıq
Seeed Studio CAN -BUS V2.0 Hacking - Başlayır
Seeed Studio CAN -BUS V2.0 Hacking - Başlayır

Bu təlimat Arduino ətrafında yollarını artıq bilən yeni başlayanlar üçündür. Hər hansı bir layihədə necə işə başlamaq lazım olduğunu bilmək həmişə ağrılı və vaxt aparandır. Ancaq ətrafınızdakı yolunuzu bilənə qədər demək olar ki, həmişə sizə əsasları göstərəcək birinin olmasını arzulayırsınız.

Bu təlimatda avtomobilinizdən bəzi CAN-BUS məlumatlarını geri qaytaracağıq.

Və narahat olma! Məni ağıllı bir hacker kimi səsləndirmək üçün səs-küy salmadan və səs-küydən istifadə etmədən nöqtəyə çatacağam:-)

Mən şəxsən Seeed Studio CAN-BUS qalxanlarını tövsiyə edirəm. Həqiqətən digər markalardan danışa bilmirəm, ancaq SeeedStudio-dan CAN-BUS Shield mənə çox yaxşı xidmət etdi.

Mühüm Qeyd: Avtobus qalxanı məcburidir. Çox vaxt insanlar CAN-BUS qalxanı istifadə etməyiniz lazım olduğunu soruşduqları üçün bu qeyd etdim. Qalxanın CAN-BUS məlumatlarını Arduino-nun serial portuna emal edəcəyi MCP2515 (CAN Controller) və MCP2551 (Transceiver) var.

Tələb olunan Avadanlıq.1. Arduino UNO - Hər hansı bir arduino uyğunluğu kifayət edər. Men bunu istifade etdim

2. SeeedStudio CAN-BUS Shield. Bunu birbaşa SeeedStudio -dan aldım, burada link var

3. CAN-BUS-a daxil olmaq üçün bəzi tellər

4. Məlumat əldə edə biləcəyiniz bir vasitə

Lazımi proqram təminatı 1. Arduino IDE, Duh! Aydındır:-)

2. SeeedStudio CAN-BUS Kitabxanası. GIT Hub -dan endirilə bilər

SeeedStudio CAN-BUS qalxanı haqqında daha çox oxumaq istəsəniz bəzi əlavə həyati məlumatlar.

Gəlin başlayaq!

Addım 1: Hardware Setup and Connection

Image
Image
Avadanlıq Quraşdırma və Bağlantı
Avadanlıq Quraşdırma və Bağlantı
Avadanlıq Quraşdırma və Bağlantı
Avadanlıq Quraşdırma və Bağlantı
Avadanlıq Quraşdırma və Bağlantı
Avadanlıq Quraşdırma və Bağlantı

Ən çətin hissədən başlayaq. Avtomobilinizdə CAN-BUS-a girə biləcəyimiz bir yer tapmalıyıq. Burada sizin üçün edə biləcəyim çox şey yoxdur, bunu özünüz həll etməlisiniz. Mənim vəziyyətimdə radio vasitəsilə CAN-BUS-a daxil oldum. Bəli! Radio. İnteqrasiya edilmiş avtomobil səsi olan nəqliyyat vasitələri, ümumiyyətlə, gecə sürərkən avtomobilin far ayarına əsasən avtomobil stereo ekranının işıqlandırmasını təyin edir. Bu ümumiyyətlə CAN-BUS Daxili vasitəsi ilə edilir.

Kişi USB və qadın USB ucu olan bir USB uzatma kabeli istifadə etdim. Mən sadəcə yarısını kəsdim və sonra qadın tərəfini radionun konnektoruna lehimlədim. Radio tipiniz üçün bir kişi dişi bağlayıcı almaq istəyə bilərsiniz, belə ki, avtomobilinizin naqillərinə qoşulmamalı və zəmanətinizi ləğv etməməli və ya yanğın təhlükəsi yarada bilməzsiniz.

Və sonra SeeedStudio CAN-BUS qalxanına qoşulduğum kişi hissəsi şəkildə göstərildiyi kimi. Bu şəkildə lazım olduqda əlaqə qura/ayıra bilərəm.

İpucu: CAN-H üçün qırmızı tel və CAN-L üçün qara tel istifadə edin

Addım 2: Proqramı Arduino üzərinə quraşdırın

Proqramı Arduino üzərinə quraşdırın
Proqramı Arduino üzərinə quraşdırın
Proqramı Arduino üzərinə quraşdırın
Proqramı Arduino üzərinə quraşdırın
Proqramı Arduino üzərinə quraşdırın
Proqramı Arduino üzərinə quraşdırın

SeeedStudio Kitabxanasını SeeedStudio CAN-BUS vikisindən yükləyin.

github.com/Seeed-Studio/CAN_BUS_Shield

Kitabxananı şəkillərdə göstərildiyi kimi quraşdırın.

Arduino IDE -dən Sketch Include Library - Kitabxananı əlavə et seçin.

Kitabxananı əlavə etdikdən sonra Arduino IDE -ni bağlayın və yenidən açın. İndi bəzi nümunələri Fayl Menyu Fayl Nümunələri CAN-BUS qalxanından Al çekini yükləyə biləcəksiniz.

Bu təlimat üçün qəbul çek nümunəsini yükləyin.

Vacibdir!

Aşağıdakılar bir az sınaq və səhv tələb edəcək.

Məlumat almaq üçün Jeep JK 2010 Rubicon -dan istifadə etdim və daxili avtobus 125Kbs -də işləyir.

Oxuduğu quraşdırma bölməsində

while (CAN_OK! = CAN.begin (CAN_500KBPS)) bunu dəyişmək məcburiyyətində qaldım

isə (CAN_OK! = CAN.bagin (CAN_125KBPS))

Səhv başa düşsəniz, oxunan məlumatları ala bilməyəcəksiniz. Əksər hallarda, mənimki də daxil olmaqla, avtomobiliniz qəzaya uğrayacaq. Məsələn, bir Milad ağacı kimi yanan və silecekler hərəkət etməyə başlayacaq. çünki avtobus qabı avtobusu korlayır.

Addım 3: Bağlayın və Məlumat Almağa Başlayın

Bağlayın və Məlumat Almağa Başlayın
Bağlayın və Məlumat Almağa Başlayın
Bağlayın və Məlumat Almağa Başlayın
Bağlayın və Məlumat Almağa Başlayın
Bağlayın və Məlumat Almağa Başlayın
Bağlayın və Məlumat Almağa Başlayın

Bağlamadan əvvəl, avtomobilə bağlamadan əvvəl sağlamlıq yoxlamasından keçin. Etmək istədiyiniz son şey, CAN-BUS-a potensial olaraq vasitənizin ECU-nu üfürməkdir.

Sağlamlıq yoxlaması etmədim və yalnız məlumat əldə etmədiyimi başa düşdükdən sonra Laptopun USB -ni Arduinonun USB Gücünə birbaşa bağladığımı gördüm. Xoşbəxtlikdən heç nə olmadı.

Bu addımın şəkillərində Linux Mint yüklü Lenovo Laptopumdan istifadə etdim. Arduino seriya portuna qoşulmaq üçün hər hansı bir əməliyyat sistemindən istifadə edə bilərsiniz.

1. Avtomobilinizi dizüstü kompüterinizə qoyun və USB kabel ilə Arduino CAN-BUS ekranını işə salın.

2. Putty və ya Arduino serial monitorunu işə salın (Mən Putty-ni seçirəm), Bağlandıqda serial konsolunda Can-Bus qalxanının işə salındığını bildirən bir mesaj görməlisiniz.

3. Maşını yandırın. Açar açıq vəziyyətdə olduğu müddətdə işə başlamaq lazım deyil.

4. Arduino'yu CAN-BUS-a qoşun. Bağlandığı anda məlumatlar konsola axmağa başlayacaq.

Addım 4: Məlumatlar və bunların nə demək olduğunu

Məlumatlar və bunların nə demək olduğunu
Məlumatlar və bunların nə demək olduğunu
Məlumatlar və bunların nə demək olduğunu
Məlumatlar və bunların nə demək olduğunu

Məlumat əldə edildikdə onu aşağıdakı HEX formatına atacaq.

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

Şəxsiyyət vəsiqəsi ümumiyyətlə avtomobilinizdəki bir qovşaqdır.

Sadə bir misal çəkək. (Aşağıdakılar uydurulmuşdur və real deyil, sadəcə bir nümunədir)

Kondisioner Node ID = 0x402TURN AIRCON OFF = 13TURN AIRCON ON = 14 AIRCON ÜFÜYƏCƏNİ AZALTMAQ ÜÇÜN = 7C AIRCON ÜFTÜCÜCÜNÜ 8C AIRCON ÜFTÜCÜCÜNÜ 9C -ə SET

Beləliklə, Aircon -u yandırıb orta vəziyyətə gətirsək, mesaj belə görünəcək0x402, 13, 8C

Eyni şey digər qovşaqlara da aiddir, məsələn Mərkəzi kilidləmə Mərkəzi kilidləmə ID = 0x503 bütün qapıları kilidləyin = 14

Beləliklə, bütün qapıları kilidləmək üçün düyməni basarsanız, mesaj belə görünür

0x502, 14

Bəzi əlavə qeydlər.

Bəzi mesajlar dövlət tərəfindən idarə olunur, bəziləri və ya bir anda.

Misal 1. Vəziyyətə görə baş lampaları. Maşında müəyyən bir mövqedə bir düyməni təyin etdiyiniz zaman düyün mesajı təkrar -təkrar yaymağa davam edəcək. CAN-BUS-a müdaxilə etməli olsanız, baş lampalarını söndürmək üçün bir mesaj göndərin. Qısaca sönəcək və sonra yenidən açılacaq, çünki açarların faraları açmaq üçün qurulduğu qovşaq yenidən açmaq üçün bir mesaj göndərəcək.

Misal 2. Radio baş ünitənizdəki parçaları atlayın. Bir düyməni basdığınızda və onu tərk etdiyiniz anda dövrəni dərhal pozacaq bir anlıq düymə, izi atlamaq üçün bir mesaj göndərəcək və düyməni yenidən basmayınca bir daha göndərməyəcək.

Adətən ani düymələr ən faydalıdır, çünki əmrinizin yazılacağından narahat olmayaraq tək bir əmr göndərərək avtomobilinizin xüsusiyyətlərini idarə edə bilərsiniz. Dövlət idarə etdiyi xüsusiyyətlər qeyri -müəyyən müddətə yazılacaq.

Bəzi məsləhətlər və fikirlər

İndi məlumatları ata biləcəyinizi görsəniz, mesajlara əsaslanaraq reaksiya verəcək öz Arduino sxemlərinizi qurmaq üçün istifadə edə bilərsiniz CAN-BUS-a baxın. nümunə üçün. Bazar spot işıqlarından sonra quraşdırdığınızı söyləyin. Mövcud elektrik naqillərini qazmağa ehtiyac olmadan, farlarınızı müstəqil olaraq quraşdıra bilərsiniz və yalnız Arduino CAN-BUS-da bir mesaj aldıqda yandıra bilərsiniz.

Məlumatların CAN-BUS-a göndərilməsi

Bu təlimatın əvvəlində təlimatları izləsəniz, SEEEDStudio kitabxanalarını quraşdırmısınız. Arduino IDE -də cəhd edə biləcəyiniz bəzi nümunələr var.

Ünsiyyət qurmaq istədiyiniz qovluğun ID və CAN0-BUS mesajını bilmək.

Təəssüf ki, bu çox asan bir iş deyil. Ancaq burada bir fikir var. Putty's Logging xüsusiyyətindən istifadə edin və bütün sessiya məlumatlarını fayllara atın. Arduinonun banka avtobusunu təxminən 5 dəqiqə izləməsinə icazə verin və sonra girişi qeyd edin.

Sonra yeni bir sessiyaya başlayın və məlumatları atmağa başlayın. Ancaq bu dəfə məlumatları atarkən bir düyməni basın. Birdən çox düyməyə basmayın. Düyməni basdığına əmin olmaq üçün düyməni bir neçə dəfə basın.

Sonra bir növ müqayisə vasitəsindən istifadə edin və fərqləri görmək üçün faylı müqayisə edin. Excel bunun üçün əla işləyir.

Sınaya biləcəyiniz bəzi kodlar

Mənimlə eyni Jeep 2010 Rubicon modeliniz varsa (əminəm ki, aşağıda '07, '08', 09 modelləri üçün də işləyəcək)

Aşağıdakı mesajları sınaya bilərsiniz. Göndərmə nümunələrini Arduino nümunələri menyusundan yükləyin və dəyişiklik uyğun oldu.

Arxa Dolabı işə salın.: CAN.sendMsgBuf (0x2B0, 0, 4, stmp);

Sol Flaşör Açıq: CAN.sendMsgBuf (0x2A8, 0, 6, stmp);

Sağ Flaşör Açıq: CAN.sendMsgBuf (0x2A8, 0, 6, stmp);

ESP Açma/Kapama: CAN.sendMsgBuf (0x2B0, 0, 4, stmp);

Növbəti təlimatımda buna necə müdaxilə edə biləcəyinizi göstərmək üçün Jeep CAN-BUS-a bəzi məlumatlar göndərəcəyəm.

Uğurlar!

Addım 5: Videoya baxın

Daha çox CAN-BUS yaxşılığı üçün videoya baxın!

Tövsiyə: