สารบัญ:
- ขั้นตอนที่ 1: เลือกเครื่องมือและซอฟต์แวร์ CAN-bus/USB
- ขั้นตอนที่ 2: ลงทะเบียนและเข้าสู่ระบบ Can2sky.com Service
- ขั้นตอนที่ 3: โหลดบันทึก CAN Bus ของคุณ
- ขั้นตอนที่ 4: การสร้างภาพของ CAN Bus Data
- ขั้นตอนที่ 5: Parser Editor
- ขั้นตอนที่ 6: ปรับปรุง Parser ส่วนตัวของคุณ
- ขั้นตอนที่ 7: ทำให้บันทึกของคุณเป็นแบบสาธารณะ
- ขั้นตอนที่ 8: บันทึกผลลัพธ์ในไฟล์ PDF
วีดีโอ: วิธีถอดรหัสข้อมูล CAN Bus ของยานพาหนะ: 8 ขั้นตอน
2024 ผู้เขียน: John Day | [email protected]. แก้ไขล่าสุด: 2024-01-30 13:04
ในคำแนะนำนี้เราจะบันทึกข้อมูลบัส CAN ของรถยนต์หรือรถบรรทุกและแปลงข้อมูลบันทึกบัส CAN ที่บันทึกไว้เป็นค่าที่อ่านได้ สำหรับการถอดรหัส เราจะใช้บริการคลาวด์ can2sky.com ซึ่งฟรี เราสามารถบันทึกบันทึกโดยใช้อะแดปเตอร์ CAN-USB แต่ให้ความสนใจกับรูปแบบบันทึก - ควรเข้ากันได้กับบริการถอดรหัส
ขั้นตอนที่ 1: เลือกเครื่องมือและซอฟต์แวร์ CAN-bus/USB
ตัวถอดรหัส can2sky.com รองรับบันทึก can bus หลายประเภท:
1. รูปแบบไฟล์ trc ของแฮ็กเกอร์ CAN
ลิงค์อะแดปเตอร์ USB
ตัวอย่างบันทึกบัส CAN (29 บิต) (รถบรรทุก รถโดยสาร รถแทรกเตอร์ เครื่องจักรเชิงพาณิชย์อื่นๆ) ไฟล์ควรมีนามสกุล *.trc รหัสเวลา DLC ข้อมูลความคิดเห็น
40, 425 18FFB5F2 8 3A 82 FF 5C C6 80 11 05
40, 431 18F005F6 8 FF FF FF FB FF FF 20 50
40, 431 14FFB4F6 8 00 FF 16 F0 FF FF FF FF
40, 433 18FFB6F2 8 00 00 00 00 F1 12 FF FF
ดาวน์โหลดตัวอย่าง
ตัวอย่างบันทึกบัส CAN (11 บิต) (รถยนต์) ไฟล์ควรมีนามสกุล *.trc
ตัวอย่างรูปแบบ
36, 492 1 0004 40A 8 C0 00 38 8F 94 DA 07 3A 00000000
36, 592 1 0004 40A 8 C0 01 00 00 9F AF 00 35 00000000
36, 692 1 0004 40A 8 BF 00 3D 04 02 37 A7 00 00000000
36, 792 1 0004 40A 8 BF 02 22 00 00 00 02 2B 00000000
36, 892 1 0004 40A 8 BF 03 30 00 02 00 00 00 00000000
36, 992 1 0004 40A 8 BF 04 31 80 00 24 00 06 00000000
ดาวน์โหลดตัวอย่าง
2. รูปแบบเอาต์พุตของ candump ยูทิลิตี้ Linux
ไฟล์นี้ควรมีนามสกุล *.log คุณสามารถใช้ Raspberry Pi, Orange Pi หรือ Linux PC อื่น ๆ ที่มีส่วนต่อประสานและซอฟต์แวร์ can-utils ที่ติดตั้งได้ วิธีตั้งค่า Pi สำหรับการทำงานของ CAN-bus คุณสามารถอ่านได้ที่นั่น ตัวอย่างรูปแบบ 11 บิต:
(1579876676.199507) slcan0 2DE#0000000000000050
(1579876676.199539) slcan0 358#000A8000000000000
(1579876676.199547) slcan0 1CA#00000000005005055
(1579876676.199553) slcan0 1CB#000000000000185
ดาวน์โหลดตัวอย่าง
3. รูปแบบ csv อย่างง่าย
ไฟล์นี้ควรมีนามสกุล *.csv
สตริงแรก - ส่วนหัวพร้อมชื่อแถว จำเป็นต้องมีแถว SA แต่สามารถเติมด้วย "1" ได้ เวลา;PGN;SA;b0;b1;b2;b3;b4;b5;b6;b7;;
0, 01;41;1;7A;3;0;0;0;0;0;0;;
0, 02;50;1;0;20;90;B0;FF;FF;FF;FF;;
0, 03;0D0;1;B5;20;0;8;0D;90;FF;FF;;
0, 04;1A0;1;0;40;0;0;FE;FE;0;0E;;
0, 05;280;1;1;22;ซีซี;0C;22;0;17;19;;
0, 06;288;1;8A;7B;10;0;0;53;93;0F;;
ดาวน์โหลดตัวอย่าง ดาวน์โหลดตัวอย่าง
สำหรับ CAN บัส 29 บิต เพียงใช้ PGN 2 ไบต์ในคอลัมน์ PGN (เช่น - FEF2, FECA เป็นต้น)
ขั้นตอนที่ 2: ลงทะเบียนและเข้าสู่ระบบ Can2sky.com Service
เมื่อบันทึก CAN บัสของคุณได้รับการบันทึกแล้ว คุณสามารถอัปโหลดไปยังบริการ can2sky.com เพื่อถอดรหัสได้
คุณต้องลงทะเบียนเพื่อเข้าใช้บริการ อีเมลต้องการการยืนยันซึ่งจะถูกส่งโดยบริการ
หลังจากเข้าสู่ระบบ คุณสามารถโหลดบันทึก CAN แรกของคุณได้ คลิกปุ่มอัปโหลดไฟล์ TRC
ขั้นตอนที่ 3: โหลดบันทึก CAN Bus ของคุณ
เลือกตัวเลือกรถใหม่ และกรอกข้อมูลเกี่ยวกับรถ (ต้องกรอกข้อมูลให้ครบทุกช่อง)
ลากและวางไฟล์บันทึกบัส CAN ของคุณ
จากนั้นเราก็สามารถเลือก parser (DBC-file) เพื่อถอดรหัสบันทึก บริการจะตรวจสอบตัวแยกวิเคราะห์ที่เป็นไปได้ทั้งหมดและแสดงพารามิเตอร์ที่ตรงกันจำนวนหนึ่งจาก parser และบันทึก เลือก parser ที่เหมาะสมที่สุดเพื่อถอดรหัสบันทึกของคุณ พิจารณาว่า parser ผู้ผลิตรายเดียวกันจะให้ผลลัพธ์ที่ดีกว่าแก่คุณ
สำหรับ 29 บิต CAN บัสของรถบรรทุก รถโดยสาร และรถเพื่อการพาณิชย์อื่นๆ เราจะใช้ตัวแยกวิเคราะห์ J1939 ตัวใดตัวหนึ่งเนื่องจากมาตรฐานอุตสาหกรรมนี้ สำหรับรถยนต์นั้นไม่มีมาตรฐาน ดังนั้นรถแต่ละคันจึงแตกต่างกันในแง่ของ CAN bus ID นั่นหมายความว่าแม้ว่าเราจะสามารถใช้ Ford parser ในการถอดรหัสข้อมูล Mercedes ได้ แต่เราจะได้รับผลลัพธ์ที่ไร้ประโยชน์แม้ว่าจะมี ID ที่ตรงกันจำนวนมาก เนื่องจากผู้ผลิตรถยนต์หลายรายสามารถใช้ ID เดียวกันสำหรับพารามิเตอร์ต่างๆ ได้
ในตัวอย่างของเราสำหรับบันทึก BMW X6 เราจะใช้ตัวแยกวิเคราะห์ BMW X1 เนื่องจากผู้ผลิตรายเดียวกันและจำนวน ID ที่ตรงกันมากที่สุด
คลิกส่ง
ขั้นตอนที่ 4: การสร้างภาพของ CAN Bus Data
หน้าต่างแดชบอร์ดหลักจะปรากฏขึ้นซึ่งคุณสามารถดูบันทึกและตัวแยกวิเคราะห์ทั้งหมดของคุณ (ทั้งตัวแยกวิเคราะห์เริ่มต้นและตัวแยกวิเคราะห์ส่วนตัวของคุณ) หลังจากช่วงเวลาหนึ่งสถานะของบันทึกของคุณจะเปลี่ยนจาก "ความคืบหน้า" เป็น "เสร็จสิ้น"
คลิกดูเพื่อดูการแสดงภาพ
ด้านซ้ายของหน้าจอ – รายการของตัวระบุ CAN ที่ทำงานอยู่ในบันทึกนี้ บางส่วนได้รับการยอมรับโดย DBC-parser บางส่วน - ไม่ (ทำเครื่องหมายด้วยพื้นหลังสีแดง)
คอลัมน์ค่าแสดงค่าพารามิเตอร์ต่ำสุดและสูงสุดระหว่างบันทึก คุณสามารถเปลี่ยนช่วงเวลาสำหรับการวิเคราะห์ได้โดยใช้การตั้งค่าช่วงตัวกรองเวลา หากคุณคลิกที่พารามิเตอร์ในรายการพารามิเตอร์ – พารามิเตอร์จะกลายเป็นสีเขียว ตารางค่าจะปรากฏขึ้นและพล็อตพารามิเตอร์
คุณสามารถซูมพล็อตด้วยปุ่มซ้ายของเมาส์และเลือกส่วนของพล็อต คุณสามารถสร้างหลายแปลงพร้อมกันได้ คุณยังสามารถรวมแปลงจากไฟล์บันทึกต่างๆ ได้อีกด้วย ในการเลือกแหล่งที่มาของพารามิเตอร์อื่น คุณสามารถคลิกที่กล่องรายการของบันทึกที่โหลด
ส่วนตัวกรองช่วยให้สามารถกรองพารามิเตอร์บัส CAN ซึ่งดูไม่น่าสนใจสำหรับเรา พารามิเตอร์ที่ทำเครื่องหมายเป็นสีเขียวจะปรากฏในรายการ การผกผันจะย้อนกลับการเลือก
ขั้นตอนที่ 5: Parser Editor
กฎของการถอดรหัสข้อความ CAN-bus อธิบายโดยไฟล์ DBC พารามิเตอร์แต่ละตัว (SPN) มีกฎการถอดรหัสของตัวเอง ซึ่งคุณสามารถแก้ไข โคลน หรือลบในโปรแกรมแก้ไข SPN
หน้าต่างตัวแก้ไข SPN มีข้อมูลทั้งหมดที่เกี่ยวข้องกับการถอดรหัสพารามิเตอร์บัส CAN นี้
Bit start – ตำแหน่งเริ่มต้นของพารามิเตอร์ในข้อความ CAN บัส (เป็นบิต เนื่องจากมีพารามิเตอร์แบบเข้ารหัสบิตจำนวนมาก) แต่ละไบต์=8 บิต (fyi).ความยาวบิต – ความยาวของพารามิเตอร์ CAN ในหน่วยบิต
endian น้อยหรือ endian ใหญ่ - การแจงนับลำดับไบต์ บริการรองรับทั้งรูปแบบ Intel (Little endian) หรือ Motorola Lsb (Big endian)
มาตราส่วน – มาตราส่วนวิธีการแปลงค่ากระป๋องเป็นพารามิเตอร์จริง
ออฟเซ็ต – ออฟเซ็ตของมูลค่าจริง ดังนั้นข้อมูลจริงจึงคำนวณเป็นพารามิเตอร์ CAN * สเกล + ออฟเซ็ต
ค่าต่ำสุดและสูงสุด – ค่าต่ำสุดและสูงสุด (ไม่บังคับ)
คุณสามารถดูผลลัพธ์ของการดำเนินการถอดรหัสในรูปแบบ DEC, HEX และไบนารีได้ หลังจากแก้ไข SPN คุณจะได้รับแจ้งให้บันทึก DBC-parser ภายใต้ชื่อใหม่ (คุณไม่สามารถแก้ไขไฟล์ DBC เริ่มต้นได้) คุณสามารถสร้างได้เท่านั้น รุ่นใหม่ของมัน การสร้าง DBC-parser ใหม่อาจใช้เวลานาน (โปรดอดใจรอหลายนาที)
ขั้นตอนที่ 6: ปรับปรุง Parser ส่วนตัวของคุณ
ในโปรแกรมแก้ไข SPN คุณสามารถเพิ่มกฎการถอดรหัสสำหรับข้อความที่ไม่รู้จัก
คลิก +SPN เพื่อสร้าง อีกครั้ง คุณไม่สามารถสร้างกฎ SPN ใหม่ใน DBC เริ่มต้นได้ ดังนั้นคุณจะได้รับแจ้งให้สร้างกฎใหม่
หลังจากบันทึกเป็น DBC ใหม่แล้ว ให้เปิดบันทึกของคุณโดย parser ใหม่
ตอนนี้คุณสามารถเพิ่มคำจำกัดความ SPN ใหม่ได้ ตัวแก้ไข SPN จะปรากฏขึ้นซึ่งคุณสามารถใส่ชื่อ SPN และตั้งค่าบิตและขนาดที่มีความหมายได้
เนื่องจากมีการสร้าง SPN ใหม่ คุณอาจใช้ผลลัพธ์สำหรับพล็อตและวิเคราะห์ร่วมกับพารามิเตอร์อื่นๆ ไบต์ที่ใช้งาน (กำลังเปลี่ยนแปลง) ระหว่างช่วงเวลาของการวิเคราะห์จะเป็นสี
ขั้นตอนที่ 7: ทำให้บันทึกของคุณเป็นแบบสาธารณะ
โดยค่าเริ่มต้น บันทึกทั้งหมดเป็นแบบส่วนตัวและสามารถตรวจสอบได้โดยเจ้าของเท่านั้น แต่คุณสามารถปิดสวิตช์นี้และทำให้บันทึกเป็น "สาธารณะ"
หลังจากเข้าสู่ระบบภายใต้ชื่อผู้ใช้ใหม่ เราจะเห็นบันทึกนี้ในส่วนสาธารณะ ซึ่งเข้าถึงได้สำหรับผู้ใช้แพลตฟอร์ม ทุกคนสามารถตรวจสอบและสร้างแปลง โพสต์ชมเชยใต้บันทึก
ขั้นตอนที่ 8: บันทึกผลลัพธ์ในไฟล์ PDF
คุณสามารถสร้างรายงานที่มีพารามิเตอร์ข้อมูลบัส CAN ที่รู้จักและไม่รู้จักทั้งหมดได้ คลิกส่งออกเป็น PDF
แนะนำ:
มาตรวัดรอบ/สแกนด้วย Arduino, OBD2 และ CAN Bus: 8 ขั้นตอน
มาตรวัดรอบ/การสแกนโดยใช้ Arduino, OBD2 และ CAN Bus: เจ้าของ Toyota Prius (หรือรถยนต์ไฮบริด/รุ่นพิเศษอื่นๆ) จะรู้ว่าแผงหน้าปัดของพวกเขาอาจไม่มีแป้นหมุนสองสามหน้าปัด! prius ของฉันไม่มีรอบเครื่องยนต์หรือมาตรวัดอุณหภูมิ หากคุณเป็นคนที่ชอบแสดง คุณอาจต้องการทราบสิ่งต่าง ๆ เช่น การกำหนดเวลาล่วงหน้าและ
แฮ็กรถของคุณด้วย Wio Terminal และ CAN Bus: 7 ขั้นตอน
แฮ็กรถของคุณด้วย Wio Terminal และ CAN Bus: หากคุณมีความเข้าใจเกี่ยวกับการเขียนโปรแกรม CAN Bus และ Arduino และต้องการแฮ็กรถของคุณ คำแนะนำนี้สามารถให้วิธีแก้ปัญหาแก่คุณได้ สำหรับสาเหตุที่คุณต้องการแฮ็กรถของคุณ ฉัน ไม่รู้สิ แต่นี่เป็นสิ่งที่น่าสนใจจริงๆ โปรนี้
กุญแจพวงมาลัยไปยังอะแดปเตอร์สเตอริโอในรถยนต์ (CAN Bus -> Key1): 6 ขั้นตอน
กุญแจพวงมาลัยเป็นอะแดปเตอร์สเตอริโอในรถยนต์ (CAN Bus -> Key1): ไม่กี่วันหลังจากซื้อรถมือสอง ฉันพบว่าไม่สามารถเล่นเพลงจากโทรศัพท์ผ่านสเตอริโอในรถยนต์ได้ สิ่งที่น่าผิดหวังยิ่งกว่านั้นคือรถมีบลูทูธ แต่อนุญาตเฉพาะการโทรด้วยเสียง ไม่สามารถใช้เพลงได้ มีพอร์ต USB ของ Windows Phone ด้วย แต่ฉัน
Seeed Studio CAN-BUS V2.0 แฮ็ค - เริ่มต้นใช้งาน: 5 ขั้นตอน
Seeed Studio CAN-BUS V2.0 การแฮ็ก - เริ่มต้นใช้งาน: คำแนะนำนี้มีไว้สำหรับผู้เริ่มต้นที่รู้จัก Arduino แล้ว การเริ่มต้นรู้วิธีดำเนินการอยู่เสมอเป็นเรื่องที่เจ็บปวดและใช้เวลานานในทุกโครงการ แต่จนกว่าคุณจะรู้เส้นทางรอบตัวคุณ แทบอยากจะมีใครสักคนคอยปลอบ
บทช่วยสอน Sparkfun CAN Bus Shield: 6 ขั้นตอน
บทแนะนำ Sparkfun CAN Bus Shield: รับและส่งข้อความโดยใช้ Sparkfun CAN Bus Shield CAN คืออะไร CAN บัสได้รับการพัฒนาโดย BOSCH ให้เป็นระบบกระจายข้อความแบบมัลติมาสเตอร์ซึ่งระบุอัตราการส่งสัญญาณสูงสุด 1 เมกะบิตต่อวินาที (bps) ต่างจากเครือข่ายแบบเดิมๆ