สารบัญ:
- ขั้นตอนที่ 1: การตั้งค่าฮาร์ดแวร์และการเชื่อมต่อ
- ขั้นตอนที่ 2: ติดตั้งซอฟต์แวร์ลงใน Arduino
- ขั้นตอนที่ 3: เชื่อมต่อและเริ่มดึงข้อมูล
- ขั้นตอนที่ 4: ข้อมูลและความหมายทั้งหมด
- ขั้นตอนที่ 5: ดูวิดีโอ
วีดีโอ: Seeed Studio CAN-BUS V2.0 แฮ็ค - เริ่มต้นใช้งาน: 5 ขั้นตอน
2024 ผู้เขียน: John Day | [email protected]. แก้ไขล่าสุด: 2024-01-30 13:06
คำแนะนำนี้มีไว้สำหรับผู้เริ่มต้นที่รู้จัก Arduino แล้ว การเริ่มต้นรู้วิธีดำเนินการอยู่เสมอเป็นเรื่องที่เจ็บปวดและใช้เวลานานในทุกโครงการ แต่จนกว่าคุณจะรู้เส้นทางรอบตัวคุณ แทบจะตลอดเวลาที่คุณอยากให้มีคนมาแสดงข้อมูลพื้นฐานให้คุณดู
ในคำแนะนำนี้เราจะส่งคืนข้อมูล CAN-BUS บางส่วนจากรถของคุณ
และไม่ต้องกังวล! ฉันจะลงรายละเอียดให้ตรงประเด็นโดยไม่พูดพล่ามและใช้คำพูดที่ฉวัดเฉวียนเพื่อทำให้ฉันดูเหมือนแฮ็กเกอร์ที่ฉลาด:-)
โดยส่วนตัวแล้วฉันขอแนะนำโล่ Seeed Studio CAN-BUS ไม่สามารถพูดถึงแบรนด์อื่น ๆ ได้ แต่ CAN-BUS Shield จาก SeeedStudio ได้ให้บริการฉันเป็นอย่างดี
หมายเหตุสำคัญ: โล่แคนบัสเป็นสิ่งจำเป็น ฉันจดบันทึกนี้เพราะมีคนถามบ่อยมากว่าคุณต้องใช้โล่ CAN-BUS หรือไม่ ชิลด์มี MCP2515 (ตัวควบคุม CAN) และ MCP2551 (ตัวรับส่งสัญญาณ) ที่จะประมวลผลข้อมูล CAN-BUS ไปยังพอร์ตอนุกรมของ Arduino ของคุณ
ฮาร์ดแวร์ที่จำเป็น.1. Arduino UNO - Arduino ใด ๆ ก็เพียงพอแล้ว ผมก็ใช้ตัวนี้ครับ
2. SeeedStudio CAN-BUS Shield ฉันได้รับโดยตรงจาก SeeedStudio นี่คือลิงค์
3. สายไฟบางเส้นสำหรับต่อเข้ากับ CAN-BUS
4. ยานพาหนะที่คุณสามารถดึงข้อมูลจาก
ซอฟต์แวร์ที่จำเป็น1. Arduino IDE อุ๊ย! อย่างชัดเจน:-)
2. ห้องสมุด SeeedStudio CAN-BUS ดาวน์โหลดได้จาก GIT Hub
ข้อมูลสำคัญเพิ่มเติมบางอย่างหากคุณต้องการอ่านเพิ่มเติมเกี่ยวกับ SeeedStudio CAN-BUS shield
มาเริ่มกันเลย!
ขั้นตอนที่ 1: การตั้งค่าฮาร์ดแวร์และการเชื่อมต่อ
เริ่มจากส่วนที่ยากที่สุดกันก่อน เราต้องหาที่ในรถของคุณที่เราสามารถแตะเข้าไปใน CAN-BUS ได้ ฉันไม่สามารถทำอะไรให้คุณที่นี่ได้มากนัก คุณต้องคิดให้ออกด้วยตัวเอง ในกรณีของฉัน ฉันแตะ CAN-BUS ผ่านทางวิทยุ ใช่! วิทยุ. ยานพาหนะที่มีเครื่องเสียงติดรถยนต์ในตัวมักจะตั้งค่าไฟแสดงผลแบบสเตอริโอในรถยนต์ตามการตั้งค่าไฟหน้าของรถเมื่อขับในเวลากลางคืน โดยปกติจะทำผ่าน CAN-BUS ภายใน
ฉันใช้สายต่อ USB ที่มีหัวต่อ USB ตัวผู้และตัวเมีย ฉันก็เลยผ่าครึ่งแล้วบัดกรีด้านตัวเมียเข้ากับขั้วต่อวิทยุ คุณอาจต้องการซื้อคอนเน็กเตอร์ตัวผู้สำหรับวิทยุประเภทของคุณ เพื่อที่คุณจะได้ไม่ต้องต่อสายไฟในรถยนต์และทำให้การรับประกันของคุณเป็นโมฆะหรืออาจก่อให้เกิดอันตรายจากไฟไหม้ได้
จากนั้นส่วนชายที่ฉันเชื่อมต่อกับโล่ SeeedStudio CAN-BUS ตามที่แสดงในภาพ วิธีนี้ฉันสามารถเชื่อมต่อ/ยกเลิกการเชื่อมต่อเมื่อจำเป็น
เคล็ดลับ: ใช้สายสีแดงสำหรับ CAN-H และสีดำสำหรับ CAN-L
ขั้นตอนที่ 2: ติดตั้งซอฟต์แวร์ลงใน Arduino
ดาวน์โหลดไลบรารี SeeedStudio จากวิกิ SeeedStudio CAN-BUS
github.com/Seeed-Studio/CAN_BUS_Shield
ติดตั้งไลบรารีตามที่แสดงในภาพ
จาก Arduino IDE ให้เลือก Sketch Include Library - เพิ่ม.zip Library
หลังจากเพิ่มไลบรารีแล้วให้ปิด Arduino IDE แล้วเปิดใหม่อีกครั้ง ตอนนี้คุณสามารถโหลดตัวอย่างบางส่วนจากเมนูไฟล์ ตัวอย่างไฟล์ โล่ CAN-BUS รับการตรวจสอบ
สำหรับบทช่วยสอนนี้ ให้โหลดตัวอย่างการตรวจสอบการรับ
สำคัญ!
ต่อไปนี้จะต้องมีการลองผิดลองถูก
ฉันใช้ Jeep JK 2010 Rubicon เพื่อดึงข้อมูลและภายในรถวิ่งที่ 125Kbs
ในส่วนการตั้งค่าที่อ่านว่า
ในขณะที่ (CAN_OK != CAN.begin(CAN_500KBPS)) ฉันต้องเปลี่ยนเป็น
ในขณะที่ (CAN_OK != CAN.begin(CAN_125KBPS))
หากคุณเข้าใจผิด คุณจะไม่สามารถเรียกข้อมูลที่อ่านได้ ในกรณีส่วนใหญ่รวมทั้งของฉัน รถของคุณจะพัง เช่น คลัสเตอร์ที่สว่างขึ้นเหมือนต้นคริสต์มาส และที่ปัดน้ำฝนจะเริ่มเคลื่อนที่ เนื่องจาก can bus shield ทำให้บัสเสียหาย
ขั้นตอนที่ 3: เชื่อมต่อและเริ่มดึงข้อมูล
ก่อนที่คุณจะเชื่อมต่อ โปรดตรวจสอบสุขภาพจิตก่อนจะต่อเข้ากับรถของคุณ สิ่งสุดท้ายที่คุณต้องการทำคือ ส่งกำลังไปยัง CAN-BUS ของคุณ ซึ่งอาจทำให้ ECU ของรถคุณพัง
ฉันไม่ได้ทำการตรวจสอบสติ และหลังจากที่ฉันรู้ว่าฉันไม่ได้รับข้อมูล ฉันเห็นหรือไม่ว่าฉันเชื่อมต่อ USB ของแล็ปท็อปกับ USB Power ของ Arduino โดยตรง โชคดีที่ไม่มีอะไรเกิดขึ้น
ในรูปภาพของขั้นตอนนี้ ฉันใช้แล็ปท็อป Lenovo ที่บรรจุ Linux Mint คุณสามารถใช้ระบบปฏิบัติการใดก็ได้เพื่อเชื่อมต่อกับพอร์ตอนุกรมของ Arduino
1. ติดตั้งแล็ปท็อปในรถของคุณและเปิดเครื่องป้องกัน Arduino CAN-BUS ด้วยสาย USB
2. เริ่ม Putty หรือ Arduino Serial Monitor (ฉันชอบ Putty) เมื่อเชื่อมต่อแล้ว คุณจะเห็นข้อความในคอนโซลอนุกรมที่แจ้งว่าสามารถเริ่มต้น Can-Bus shield ได้
3. เปิดรถ ไม่จำเป็นต้องสตาร์ทตราบใดที่กุญแจอยู่ในตำแหน่งเปิด
4. เชื่อมต่อ Arduino กับ CAN-BUS ทันทีที่เชื่อมต่อข้อมูลจะเริ่มสตรีมไปยังคอนโซล
ขั้นตอนที่ 4: ข้อมูลและความหมายทั้งหมด
เมื่อดึงข้อมูลแล้วจะดัมพ์เป็นรูปแบบ HEX ต่อไปนี้
รหัส, BIT1, BIT2, BIT3, BIT4, BIT5, BIT6, BIT7, BIT8
รหัสมักจะแสดงถึงโหนดภายในรถของคุณ
มาทำตัวอย่างง่ายๆ (ข้างล่างนี้สร้างขึ้นไม่ใช่ของจริง เป็นเพียงตัวอย่าง)
รหัสโหนดเครื่องปรับอากาศ = 0x402 ปิดเครื่องปรับอากาศ = เปิดเครื่องปรับอากาศ 13 เปิด = 14 ชุดพัดลมระบายอากาศไปที่ต่ำ = 7C ตั้งค่าพัดลมระบายอากาศไปที่ปานกลาง 8C ตั้งค่าพัดลมเป่าลมให้สูง 9C
ดังนั้นถ้าเราเปิดแอร์แล้วตั้งเป็นสื่อกลาง ข้อความจะเป็นแบบนี้0x402, 13, 8C
เช่นเดียวกับโหนดอื่น ๆ เช่น Central LockingCentral Locking ID= 0x503LOCK ประตูทั้งหมด = 14
ดังนั้นหากคุณกดปุ่มล็อกประตูทุกบาน ข้อความจะเป็นแบบนี้
0x502, 14
หมายเหตุพิเศษบางอย่าง
ข้อความบางส่วนได้รับการขับเคลื่อนโดยรัฐและบางส่วนหรือในชั่วขณะหนึ่ง
ตัวอย่างที่ 1 ไฟหน้าเป็นแบบ State Drive เมื่อคุณตั้งสวิตช์ในรถไปยังตำแหน่งเฉพาะ โหนดจะเผยแพร่ข้อความซ้ำไปซ้ำมา หากคุณต้องรบกวน CAN-BUS ให้ส่งข้อความเพื่อปิดไฟหน้า มันจะดับไปชั่วครู่แล้วเปิดใหม่อีกครั้งเพราะโหนดที่สวิตช์ถูกตั้งให้เปิดไฟหน้าจะส่งข้อความให้เปิดอีกครั้ง
ตัวอย่าง2. ข้ามแทร็กบนวิทยุเฮดยูนิตของคุณ เมื่อคุณกดปุ่มและเป็นปุ่มชั่วขณะหนึ่งที่จะสร้างและทำลายวงจรทันทีเมื่อคุณปล่อยทิ้งไว้ มันจะส่งข้อความหนึ่งข้อความเพื่อข้ามแทร็กและจะไม่ทำอีกจนกว่าคุณจะขอให้กดปุ่มอีกครั้ง
โดยปกติแล้ว ปุ่มชั่วขณะจะมีประโยชน์มากที่สุด เนื่องจากคุณสามารถควบคุมคุณสมบัติต่างๆ ในรถของคุณได้ด้วยการส่งคำสั่งเดียวโดยไม่ต้องกังวลว่าคำสั่งของคุณจะถูกเขียนทับ โดยที่คุณสมบัติที่ขับเคลื่อนโดยรัฐจะถูกเขียนทับอย่างไม่มีกำหนด
เคล็ดลับและความคิดบางอย่าง
เมื่อเห็นว่าขณะนี้คุณสามารถถ่ายโอนข้อมูลที่คุณสามารถใช้เพื่อสร้างวงจร Arduino ของคุณเองซึ่งจะตอบสนองตามข้อความที่เห็นใน CAN-BUS ตัวอย่างเช่น สมมติว่าคุณติดตั้งหลังจากไฟสปอตไลท์ของตลาด คุณสามารถติดตั้งไฟหน้าได้อย่างอิสระและเปิดขึ้นเมื่อ Arduino ตรวจพบข้อความบน CAN-BUS โดยไม่ต้องเจาะสายไฟที่มีอยู่
กำลังส่งข้อมูลเข้า CAN-BUS
หากคุณทำตามคำแนะนำในตอนต้นของคำแนะนำนี้ คุณได้ติดตั้งไลบรารี่ของ SEEEDStudio แล้ว ใน Arduino IDE มีตัวอย่างบางส่วนที่คุณสามารถลองใช้ได้
รู้ ID และข้อความ CAN0-BUS ของโหนดที่คุณต้องการโต้ตอบด้วย
น่าเสียดายที่นี่ไม่ใช่งานง่ายนัก แต่นี่คือไอเดีย ใช้คุณสมบัติการบันทึกของ Putty และถ่ายโอนข้อมูลเซสชันทั้งหมดไปยังไฟล์ ให้ Arduino ตรวจสอบ can bus ประมาณ 5 นาที แล้วบันทึกออกจากระบบ
จากนั้นเริ่มเซสชันใหม่และเริ่มดัมพ์ข้อมูล แต่คราวนี้ในขณะที่มันดัมพ์ข้อมูลกดปุ่ม อย่ากดมากกว่าหนึ่งปุ่ม กดปุ่มสองสามครั้งเพื่อรับประกันว่าจะจับการกดปุ่ม
จากนั้นใช้เครื่องมือเปรียบเทียบบางประเภทและเปรียบเทียบไฟล์เพื่อระบุความแตกต่าง Excel ใช้งานได้ดีสำหรับสิ่งนี้
รหัสบางอย่างที่คุณสามารถลองได้
หากคุณมีรถจี๊ป 2010 Rubicon รุ่นเดียวกับฉัน (ฉันแน่ใจว่าด้านล่างจะใช้ได้กับรุ่น '07, '08', 09)
คุณสามารถลองข้อความต่อไปนี้ โหลดตัวอย่างการส่งจากเมนูตัวอย่าง Arduino และการเปลี่ยนแปลงมีความเกี่ยวข้อง
ล็อคเกอร์ด้านหลัง: CAN.sendMsgBuf(0x2B0, 0, 4, stmp);
กะพริบซ้าย: CAN.sendMsgBuf(0x2A8, 0, 6, stmp);
กะพริบขวา: CAN.sendMsgBuf(0x2A8, 0, 6, stmp);
เปิด/ปิด ESP: CAN.sendMsgBuf(0x2B0, 0, 4, stmp);
ในคำแนะนำต่อไปของฉัน ฉันจะส่งข้อมูลบางอย่างไปยัง CAN-BUS ของ Jeep เพื่อแสดงให้เห็นว่าคุณจะเข้าไปยุ่งเกี่ยวกับมันได้อย่างไร
โชคดี!
ขั้นตอนที่ 5: ดูวิดีโอ
ดูวิดีโอสำหรับความดี CAN-BUS เพิ่มเติม!
แนะนำ:
แฮ็ค! เซอร์โวมอเตอร์ในฐานะตัวขับโมเดลรถไฟ!: 17 ขั้นตอน
แฮ็ค! เซอร์โวมอเตอร์ในฐานะผู้ขับโมเดลรถไฟ!: การเริ่มต้นใช้งานรถไฟจำลอง? ไม่มีงบประมาณเพียงพอที่จะซื้อตัวควบคุมรถไฟราคาแพงเหล่านั้นทั้งหมดใช่หรือไม่ ไม่ต้องกังวล! ในคำแนะนำนี้ฉันจะแสดงให้คุณเห็นว่าคุณสามารถสร้างตัวควบคุมรถไฟที่มีงบประมาณต่ำได้อย่างไรโดยการแฮ็กเซอร์โวมอเตอร์ งั้นเรามาเ
แฮ็ค CFA735/CFA835: 4 ขั้นตอน
แฮ็ก CFA735/CFA835: คุณมีโปรเจ็กต์ที่ต้องการจอแสดงผล คีย์แพด และหน่วยความจำบางส่วน แต่เฟิร์มแวร์ที่โหลดไว้ล่วงหน้าบนโมดูล Crystalfontz CFA735 หรือ CFA835 ไม่ใช่สิ่งที่คุณกำลังมองหาใช่หรือไม่ คุณโชคดี - คุณสามารถแฮ็กโมดูลเหล่านี้เพื่อโหลดเฟิร์มแวร์ที่กำหนดเองได้ T
UPS แฮ็ค! ซ่อน..: 8 ขั้นตอน (พร้อมรูปภาพ)
UPS แฮ็ค! ซ่อน..: ซ่อนไฟล์คอมพิวเตอร์ที่สำคัญของคุณในสายตาธรรมดา! คุณลูก ๆ ภรรยาของคุณไม่แม้แต่โจรที่น่ารำคาญก็จะรู้ว่ามันอยู่ที่นั่นคำแนะนำนี้จะแสดงให้คุณเห็นวิธีเปลี่ยน UPS Power Backup ที่ตายแล้วให้กลายเป็นฮาร์ดไดรฟ์ภายนอกที่รอบคอบสำหรับ ต่ำกว่า $20.00!ชม
แฮ็ค Digital Timmer ไมโครเวฟ: 8 ขั้นตอน
The Microwave Digital Timmer Hack.: ฉันค่อนข้างเป็นคนที่ไม่สนใจ พูดอีกอย่างหนึ่งคือความทรงจำของฉันมีกลิ่นเหม็น ดังนั้นถ้าฉันฟุ้งซ่านจากโครงการที่ฉันอาจมีหัวแร้งร้อนระอุ ฉันอาจจะลืมมันไปหมดแล้วและเผาตัวเองในภายหลัง นี่เป็นเรื่องใหญ่
วิธีการ Jailbreak (แฮ็ค) กับ iPod/iPhone: 4 ขั้นตอน
วิธีการ Jailbreak (แฮ็ก) กับ iPod/iPhone: ฉันรู้ว่าคุณเคยเห็นคนที่คุณรู้จักหรือได้ยินเกี่ยวกับคนที่มี iPhone หรือ iPod touch ที่ "เจลเบรคแล้ว" การเจลเบรกแบบใดแบบหนึ่งสามารถช่วยคุณประหยัดเงินได้มากมายเช่นกัน เวอร์ชันเจลเบรคสามารถดาวน์โหลดแอป appstore ฟรีและค