Mundarija:
- 1 -qadam: Uskuna o'rnatish va ulanish
- 2 -qadam: Dasturiy ta'minotni Arduino -ga o'rnating
- 3 -qadam: Uni ulang va ma'lumotlarni olishni boshlang
- 4 -qadam: Ma'lumotlar va ularning ma'nosi
- 5 -qadam: Videoni tomosha qiling
Video: Seeed Studio CAN -BUS V2.0 Hacking - Ishga kirishish: 5 qadam
2024 Muallif: John Day | [email protected]. Oxirgi o'zgartirilgan: 2024-01-30 13:26
Bu ko'rsatma Arduino atrofida o'z yo'lini biladigan yangi boshlanuvchilar uchun mo'ljallangan. Birinchidan, qanday qilib borishni bilish har qanday loyihada har doim og'riq va vaqtni talab qiladi. Ammo atrofingizdagi yo'lni bilmaguningizcha, har doim sizga asosiy narsalarni ko'rsatadigan odam bo'lishini xohlaysiz.
Ushbu yo'riqnomada biz sizning mashinangizdan CAN-BUS ma'lumotlarini qaytaramiz.
Va xavotir olmang! Men o'zimni aqlli xakerga o'xshatib qo'yish uchun shovqinli so'zlarni ishlatmasdan, shu nuqtaga etib boraman:-)
Men shaxsan Seeed Studio CAN-BUS qalqonlarini tavsiya qilaman. Boshqa brendlar haqida gapira olmayman, lekin SeeedStudio-dan CAN-BUS Shield menga juda yaxshi xizmat qildi.
Muhim eslatma: Avtobusli qalqon majburiydir. Men bu eslatmani yozdim, chunki ko'pchilik sizdan CAN-BUS qalqonini ishlatish kerakmi deb so'rashadi. Qalqonda MCP2515 (CAN Controller) va MCP2551 (Transceiver) mavjud bo'lib, ular CAN-BUS ma'lumotlarini Arduino seriyali portiga qayta ishlaydi.
Kerakli apparat.1. Arduino UNO - Arduino -ga mos keladigan har qanday narsa etarli bo'ladi. Men buni ishlatganman
2. SeeedStudio CAN-BUS qalqoni. Men buni to'g'ridan -to'g'ri SeeedStudio -dan oldim, mana bu havola
3. CAN-BUSga kirish uchun ba'zi simlar
4. ma'lumotni olishingiz mumkin bo'lgan mashina
Kerakli dasturiy ta'minot 1. Arduino IDE, Duh! Shubhasiz:-)
2. SeeedStudio CAN-BUS kutubxonasi. GIT Hub -dan yuklab olish mumkin
Agar siz SeeedStudio CAN-BUS qalqoni haqida ko'proq o'qishni xohlasangiz, ba'zi muhim ma'lumotlar.
Qani boshladik!
1 -qadam: Uskuna o'rnatish va ulanish
Eng qiyin qismdan boshlaylik. Biz sizning mashinangizda CAN-BUS-ga kira oladigan joyni topishimiz kerak. Men bu erda siz uchun qila oladigan ko'p narsa yo'q, buni o'zingiz hal qilishingiz kerak. Mening holatimda men CAN-BUS-ni radio orqali eshitdim. Ha! radio. Avtomobilning ovozi birlashtirilgan avtomobillar, odatda, kechasi haydash paytida avtomobilning faralari sozlamalari asosida stereo-displey yoritilishini o'rnatadi. Bu odatda CAN-BUS ichki qismi orqali amalga oshiriladi.
Men erkak USB va ayol USB uchi bo'lgan USB uzatuvchi kabelidan foydalandim. Shunday qilib, men uni yarmini kesib tashladim va keyin ayol tomonini radio ulagichiga lehimladim. Siz o'zingiz yoqtirgan radio turiga erkaklar uchun ulagichni sotib olishni xohlashingiz mumkin, shuning uchun siz avtomobil simlariga ulanmasligingiz va kafolatingizni bekor qilmasligingiz yoki yong'in xavfini tug'dirishingiz mumkin.
Va keyin men erkak qismni rasmda ko'rsatilgandek SeeedStudio CAN-BUS qalqoniga uladim. Shunday qilib, kerak bo'lganda ulanish/uzish mumkin.
Maslahat: CAN-H uchun qizil sim va CAN-L uchun qora simdan foydalaning
2 -qadam: Dasturiy ta'minotni Arduino -ga o'rnating
SeeedStudio kutubxonasini SeeedStudio CAN-BUS vikidan yuklab oling.
github.com/Seeed-Studio/CAN_BUS_Shield
Kutubxonani rasmda ko'rsatilgandek o'rnating.
Arduino IDE -dan Sketch Include Library -ni tanlang.zip kutubxonasini qo'shing.
Kutubxonani qo'shgandan so'ng, Arduino IDE -ni yoping va uni qayta oching. Endi siz ba'zi misollarni Fayl menyusidan yuklashingiz mumkin. Fayl misollari CAN-BUS qalqoni Qabul qilish tekshiruvi.
Ushbu qo'llanma uchun qabul qilish tekshiruvi misolini yuklang.
Muhim!
Quyidagilar biroz sinov va xatolarni talab qiladi.
Men ma'lumot olish uchun Jeep JK 2010 Rubicon -dan foydalandim va uning ichki avtobuslari 125Kb tezlikda ishlaydi.
O'rnatish bo'limida u o'qiladi
while (CAN_OK! = CAN.begin (CAN_500KBPS)) Men uni o'zgartirishim kerak edi
while (CAN_OK! = CAN.ben boshlang (CAN_125KBPS))
Agar siz xatoga yo'l qo'ysangiz, o'qiladigan ma'lumotlarni qayta ololmaysiz. Aksariyat hollarda, shu jumladan meniki, sizning mashinangiz buzilib ketadi. Ya'ni, klaster Rojdestvo daraxti kabi yonadi va tozalagichlar harakatlana boshlaydi. chunki avtobus qutisi avtobusni buzadi.
3 -qadam: Uni ulang va ma'lumotlarni olishni boshlang
Ulanishdan oldin, uni mashinaga ulashdan oldin, sog'lig'ingizni tekshirib ko'ring. Siz qilmoqchi bo'lgan oxirgi narsa-bu sizning mashinangizning ECU-ni portlatishi mumkin bo'lgan CAN-BUS-ga quvvat yuborish.
Men aql -idrok tekshiruvini o'tkazmadim va ma'lumot olmayotganimni bilganimdan so'ng, men noutbukning USB -ni to'g'ridan -to'g'ri Arduino USB -quvvatiga ulaganimni ko'rdim. Yaxshiyamki, hech narsa bo'lmadi.
Ushbu qadamning rasmlarida men Linux Mint o'rnatilgan Lenovo noutbukidan foydalanardim. Arduino seriyali portiga ulanish uchun har qanday operatsion tizimdan foydalanishingiz mumkin.
1. Avtomobilingizga noutbukni o'rnating va USB kabeli bilan Arduino CAN-BUS ekranini quvvatlantiring.
2. Putty yoki Arduino ketma-ket monitorini ishga tushiring (men Putty-ni afzal ko'raman), U ulanganda siz seriyali konsolda Can-Bus qalqoni ishga tushirilgani haqidagi xabarni ko'rishingiz kerak.
3. Avtomobilni yoqing. Kalit yoqilgan holatda ekan, uni boshlash shart emas.
4. Arduino-ni CAN-BUS-ga ulang. U ulangan paytdan boshlab ma'lumotlar konsolga tusha boshlaydi.
4 -qadam: Ma'lumotlar va ularning ma'nosi
Ma'lumotlar olinganida, u quyidagi HEX formatiga o'tkaziladi.
ID, BIT1, BIT2, BIT3, BIT4, BIT5, BIT6, BIT7, BIT8
ID odatda sizning avtomobilingizdagi tugunni anglatadi.
Keling, oddiy misol keltiraylik. (Quyida keltirilgan va haqiqiy emas, faqat misol)
Konditsioner tugun identifikatori = 0x402TURN AIRCON O'chirilgan = 13 ยฐ AIRCON ON = 14 ta AIRCON Puflagichini past darajaga o'rnatish = 7C AIRCON Blowerni o'rta 8C ga o'rnatish.
Shunday qilib, agar biz Aircon -ni yoqsak va uni o'rta rejimga qo'ysak, xabar shunday bo'ladi0x402, 13, 8C
boshqa tugunlar uchun ham xuddi shunday, masalan, markaziy qulflash markaziy qulflash ID = 0x503LOCK barcha eshiklar = 14
Shunday qilib, agar siz barcha eshiklarni qulflash uchun tugmani bosgan bo'lsangiz, xabar shunday bo'ladi
0x502, 14
Ba'zi qo'shimcha eslatmalar.
Ba'zi xabarlar davlat tomonidan boshqariladi, ba'zilari esa bir zumda.
Misol 1. Bosh chiroqlar davlat tomonidan boshqariladi. Agar siz mashinaning kalitini ma'lum bir joyga qo'ygan bo'lsangiz, tugun xabarni qayta -qayta uzatishda davom etadi. Agar siz CAN-BUS-ga xalaqit beradigan bo'lsangiz, bosh chiroqlarni o'chirish to'g'risida xabar yuboring. U qisqa vaqt ichida o'chadi va keyin yana yonadi, chunki kalitni faralarni yoqish uchun o'rnatilgan tugun yana uni yoqish uchun xabar yuboradi.
Misol 2. Radio bosh qurilmasidagi treklarni o'tkazib yuborish. Agar siz tugmachani va uning tugmachasini bosganingizda, siz uni o'chirib qo'yganingizda kontaktni zudlik bilan uzib qo'yadi, u trekni o'tkazib yuborish uchun bitta xabar yuboradi va siz tugmani qayta bosmaguningizcha.
Odatda bir lahzali tugmalar eng foydalidir, chunki siz mashinangizdagi funktsiyalarni bitta buyruq yuborish orqali boshqarishingiz mumkin. Qaerda davlat boshqaradigan xususiyatlar abadiy yoziladi.
Ba'zi maslahatlar va fikrlar
Ma'lumotlarni tashlab yuborish imkoniyatiga ega ekanligingizni ko'rib, siz o'zingizning Arduino zanjirlarini yaratishingiz mumkin, ular xabarlarga asoslanib javob beradi, CAN-BUS-da. misol uchun. Aytaylik, bozor chiroqlaridan keyin o'rnatasiz. Mavjud elektr simlarini chuqurlashtirmasdan, siz faralarni mustaqil ravishda o'rnatishingiz va faqat Arduino CAN-BUSda xabar topganida yoqishingiz mumkin.
Ma'lumotni CAN-BUS-ga yuborish
Agar siz ushbu ko'rsatmaning boshida ko'rsatmalarga amal qilgan bo'lsangiz, SEEEDStudio kutubxonalarini o'rnatgansiz, Arduino IDE -da siz sinab ko'rishingiz mumkin bo'lgan ba'zi misollar mavjud.
O'zaro aloqa qilmoqchi bo'lgan tugunning identifikatori va CAN0-BUS xabarini bilish.
Afsuski, bu juda oson ish emas. Ammo bu erda bir fikr bor. Putty's Logging xususiyatidan foydalaning va barcha sessiya ma'lumotlarini faylga tashlang. Arduino bankadagi avtobusni taxminan 5 daqiqa kuzatib tursin, so'ngra jurnalni yo'lda saqlang.
Keyin yangi seansni boshlang va ma'lumotlarni tashlashni boshlang. Ammo bu safar ma'lumotlar tashlanayotganda tugmani bosing. Bir nechta tugmani bosmang. Tugmani bosib olishini kafolatlash uchun tugmani ikki marta bosing.
Keyin qandaydir taqqoslash vositasidan foydalaning va farqni aniqlash uchun faylni solishtiring. Buning uchun Excel juda yaxshi ishlaydi.
Siz sinab ko'rishingiz mumkin bo'lgan ba'zi kodlar
Agar sizda men kabi Jeep 2010 Rubicon modeli bo'lsa (ishonchim komilki, quyida '07, '08', 09 modellari uchun ham ishlaydi)
Siz quyidagi xabarlarni sinab ko'rishingiz mumkin. Yuborish misollarini Arduino misollar menyusidan yuklang va o'zgarish tegishli bo'ldi.
Orqa shkafni ishga tushiring: CAN.sendMsgBuf (0x2B0, 0, 4, stmp);
Chap chirog' yoqilgan: CAN.sendMsgBuf (0x2A8, 0, 6, stmp);
O'ng miltillovchi yoqilgan: CAN.sendMsgBuf (0x2A8, 0, 6, stmp);
ESP yoqish/o'chirish: CAN.sendMsgBuf (0x2B0, 0, 4, stmp);
Keyingi yo'riqnomada men sizga Jeep-ning CAN-BUS avtobusiga qanday ma'lumot yuboraman, bunga qanday aralashishingiz mumkinligini ko'rsatish uchun.
Omad!
5 -qadam: Videoni tomosha qiling
Yana CAN-BUS-ning yaxshiliklari uchun videoni ko'ring!
Tavsiya:
Avtomobilingizni Wio terminali va CAN avtobus bilan buzib tashlang: 7 qadam
O'zingizning mashinangizni Wio terminali va CAN Bus bilan buzib tashlang: Agar siz CAN Bus va Arduino dasturlashini bilsangiz va mashinangizni buzmoqchi bo'lsangiz, bu yo'riqnomalar sizga echim taklif qilishi mumkin. Nima uchun siz mashinangizni buzmoqchisiz? Bilmayman, lekin bu haqiqatan ham qiziq narsa
Avtomobilning CAN avtobus ma'lumotlarini qanday dekodlash mumkin: 8 qadam
Avtotransport vositalarining CAN avtobus ma'lumotlarini qanday dekodlash mumkin: Ushbu yo'riqnomada biz avtomobil yoki yuk mashinasining CAN avtobus ma'lumotlarini yozib olamiz va yozilgan CAN avtobuslari jurnalining ma'lumotlarini o'qiladigan qiymatlarga aylantiramiz. Dekodlash uchun biz can2sky.com bulutli xizmatidan bepul foydalanamiz. Biz jurnalni CAN-USB adapterlari orqali yozib olamiz, lekin to'laymiz
FaKe HaCkinG ScReEn PrAnK: 3 qadam
FaKe HaCkinG ScReEn PrAnK: OK, bu sizning kompyuteringiz orqali xakerlik qilayotgan odamni to'ldirish (lekin siz haqiqatan ham YO'Q) Q-BASIC (ms dasturlash tili "http:/ga o'tadi") /en.wikipedia.org/wiki/QBasic> > bu haqda ko'proq bilish uchun) @DOS BOX (
STM32 CAN interfeysi: 7 qadam
STM32 CAN interfeysi: Controller Area Network bus yoki CAN bus - bu yuqori tezlik qobiliyati, uzoq masofali ishonchliligi va shovqin immuniteti tufayli juda samarali aloqa protokoli. Shu sabablarga ko'ra, CAN aloqasi avtomobilsozlikda standartga aylandi
Hacking protezlari: qo'llarning bionik modifikatsiyasi: 6 qadam (rasmlar bilan)
Protezni buzish: qo'llarning bionik modifikatsiyasi: Bu loyiha kelajakdagi dizaynlarni ilhomlantirishi mumkin bo'lgan protezlash modifikatsiyasini o'rganishdan iborat โฆ Men Future Fest 2016 ko'rgazmasida uchrashganimizdan so'ng, "protez kashshofi" Nayjel Akland bilan ishlaganman (va uning ajoyib nutqiga qarang) simli, oxirgi qadamda). Biz ha