เดลี่โดยหลักแล้วมีสามโปรโตคอล:CAN, UART/485 และ Modbus
1. โปรโตคอล CAN
เครื่องมือทดสอบ:แคนเทสต์
- อัตรา Baud:250,000 บาท
- ประเภทของกรอบ:เฟรมมาตรฐานและเฟรมขยาย โดยทั่วไปแล้วจะใช้เฟรมขยาย ในขณะที่เฟรมมาตรฐานใช้สำหรับ BMS ที่ปรับแต่งเป็นพิเศษบางรุ่นเท่านั้น
- รูปแบบการสื่อสาร:รหัสข้อมูลตั้งแต่ 0x90 ถึง 0x98รหัสประจำตัวเหล่านี้สามารถเข้าถึงได้โดยลูกค้า ส่วนรหัสประจำตัวอื่นๆ โดยทั่วไปแล้วลูกค้าจะไม่สามารถเข้าถึงหรือแก้ไขได้
- การเชื่อมต่อซอฟต์แวร์พีซีกับ BMS: ลำดับความสำคัญ + รหัสข้อมูล + ที่อยู่ BMS + ที่อยู่ซอฟต์แวร์พีซี เช่น 0x18100140
- การตอบสนองของ BMS ต่อซอฟต์แวร์พีซี: ลำดับความสำคัญ + รหัสข้อมูล + ที่อยู่ซอฟต์แวร์พีซี + ที่อยู่ BMS ตัวอย่างเช่น 0x18104001
- โปรดสังเกตตำแหน่งของที่อยู่ซอฟต์แวร์พีซีและที่อยู่ BMS ที่อยู่ที่จะรับคำสั่งจะอยู่ก่อน
- ข้อมูลเนื้อหาการสื่อสาร:ตัวอย่างเช่น ในสถานะความผิดพลาดของแบตเตอรี่ที่มีคำเตือนรองเกี่ยวกับแรงดันไฟฟ้ารวมต่ำ Byte0 จะแสดงค่าเป็น 80 เมื่อแปลงเป็นเลขฐานสองจะได้ 10000000 โดยที่ 0 หมายถึงปกติ และ 1 หมายถึงสัญญาณเตือน ตามคำจำกัดความของ DALY ที่ใช้หลักการสูง-ซ้าย ต่ำ-ขวา ค่านี้จะตรงกับ Bit7: คำเตือนรองเกี่ยวกับแรงดันไฟฟ้ารวมต่ำ
- รหัสควบคุม:MOS สำหรับชาร์จ: DA, MOS สำหรับคายประจุ: D9 00 หมายถึงเปิด, 01 หมายถึงปิด
2.โปรโตคอล UART/485
เครื่องมือทดสอบ:เครื่องมืออนุกรม COM
- อัตรา Baud:9600bps
- รูปแบบการสื่อสาร:วิธีการคำนวณค่าตรวจสอบความถูกต้อง:ค่าตรวจสอบความถูกต้อง (checksum) คือผลรวมของข้อมูลก่อนหน้าทั้งหมด (โดยจะนำเฉพาะไบต์ต่ำสุดมาใช้เท่านั้น)
- การส่งข้อมูลจากซอฟต์แวร์พีซีไปยัง BMS: ส่วนหัวของเฟรม + ที่อยู่โมดูลการสื่อสาร (UPPER-Add) + รหัสข้อมูล + ความยาวข้อมูล + เนื้อหาข้อมูล + ผลรวมตรวจสอบ (Checksum)
- บีเอ็มเอสการตอบสนองต่อซอฟต์แวร์พีซี: ส่วนหัวของเฟรม + ที่อยู่โมดูลการสื่อสาร (BMS-Add) + รหัสข้อมูล + ความยาวข้อมูล + เนื้อหาข้อมูล + ผลรวมตรวจสอบ (Checksum)
- ข้อมูลเนื้อหาการสื่อสาร:เหมือนกับ CAN
3. โปรโตคอล Modbus
เครื่องมือทดสอบ:เครื่องมืออนุกรม COM
- รูปแบบการสื่อสาร:
- รูปแบบโปรโตคอลข้อความ:อ่านทะเบียน ขอกรอบรูป
- ไบต์: 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7
- คำอธิบาย: 0xD2 | 0x03 | ที่อยู่เริ่มต้น | จำนวนรีจิสเตอร์ (N) | ผลรวมตรวจสอบ CRC-16
- ตัวอย่าง: D203000C000157AA โดย D2 คือที่อยู่ของอุปกรณ์ลูกข่าย (slave address), 03 คือคำสั่งอ่าน (read command), 000C คือที่อยู่เริ่มต้น (start address), 0001 หมายถึงจำนวนรีจิสเตอร์ที่จะอ่านคือ 1 และ 57AA คือค่าตรวจสอบ CRC (Creating Checksum)
- กรอบการตอบสนองมาตรฐาน:
- ไบต์: 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8
- คำอธิบาย: 0xD2 | 0x03 | ความยาวข้อมูล | ค่าของรีจิสเตอร์ตัวแรก | ค่าของรีจิสเตอร์ตัวที่ N | ผลรวมตรวจสอบ CRC-16
- L = 2 * N
- ตัวอย่าง: N คือจำนวนรีจิสเตอร์, D203020001FC56, D2 คือที่อยู่ของอุปกรณ์ลูกข่าย, 03 คือคำสั่งอ่าน, 02 คือความยาวของข้อมูลที่อ่าน, 0001 หมายถึงค่าของรีจิสเตอร์ตัวแรกที่อ่านได้ ซึ่งก็คือสถานะการคายประจุจากคำสั่งของโฮสต์ และ FC56 คือค่าตรวจสอบ CRC
- รูปแบบโปรโตคอลข้อความ:อ่านทะเบียน ขอกรอบรูป
- เขียนลงทะเบียน:ไบต์ที่ 1 คือ 0x06 โดยที่ 06 คือคำสั่งในการเขียนค่าลงในรีจิสเตอร์แบบพักค่าตัวเดียว และไบต์ที่ 4-5 แทนคำสั่งจากโฮสต์
- กรอบการตอบสนองมาตรฐาน:กรอบการตอบกลับมาตรฐานสำหรับการเขียนรีจิสเตอร์พักเงินเดี่ยวจะใช้รูปแบบเดียวกับกรอบคำขอ
- เขียนข้อมูลลงในรีจิสเตอร์หลายตัว:ไบต์ที่ 1 คือ 0x10 โดยที่ 10 คือคำสั่งในการเขียนข้อมูลลงในรีจิสเตอร์หลายตัว ไบต์ที่ 2-3 คือที่อยู่เริ่มต้นของรีจิสเตอร์ ไบต์ที่ 4-5 แทนความยาวของรีจิสเตอร์ และไบต์ที่ 6-7 แทนเนื้อหาข้อมูล
- กรอบการตอบสนองมาตรฐาน:ไบต์ที่ 2-3 คือที่อยู่เริ่มต้นของรีจิสเตอร์ ส่วนไบต์ที่ 4-5 แสดงความยาวของรีจิสเตอร์
วันที่โพสต์: 23 กรกฎาคม 2567
