คำอธิบายโดยละเอียดเกี่ยวกับความรู้พื้นฐาน CAN Bus

Nov 05, 2025 ฝากข้อความ

CAN บัส (Controller Area Network) เป็นโปรโตคอลการสื่อสารซีเรียลไทม์-ที่เชื่อถือได้สูง ซึ่งใช้ในยานพาหนะ ระบบอัตโนมัติทางอุตสาหกรรม และสาขาอื่นๆ ช่วยให้ไมโครคอนโทรลเลอร์และอุปกรณ์หลายตัวสามารถสื่อสารกันโดยไม่ต้องใช้คอมพิวเตอร์แม่ข่าย

 

 
 

e9496828-f803-11ee-a297-92fbcf53809c.png

CAN บัสได้รับการพัฒนาโดย Bosch ในเยอรมนีในช่วงต้นทศวรรษ 1980 สำหรับ-การสื่อสารในยานพาหนะ ในปี 1993 ISO ได้เผยแพร่มาตรฐาน CAN บัส (ISO 11898) ซึ่งครอบคลุมทั้งโปรโตคอลดาต้าลิงค์เลเยอร์และโปรโตคอลฟิสิคัลเลเยอร์

ISO 11898-1: กำหนดโปรโตคอลดาต้าลิงค์เลเยอร์

ISO 11898-2: กำหนดโปรโตคอลชั้นกายภาพสำหรับ CAN บัสความเร็วสูง- ซึ่งสนับสนุนอัตราการถ่ายโอนข้อมูลสูงสุด 1 Mbps แนะนำโทโพโลยีเชิงเส้นและเหมาะสำหรับแอปพลิเคชันที่มีความต้องการแบบเรียลไทม์สูง

ISO 11898-3: กำหนดโปรโตคอลชั้นกายภาพสำหรับ CAN บัสความเร็วต่ำ- โดยมีอัตราการถ่ายโอนข้อมูลตั้งแต่ 40 Kbps ถึง 125 Kbps มีชื่อเรียกอีกอย่างว่า CAN ที่ทนทานต่อข้อผิดพลาด- ช่วยให้สามารถสื่อสารได้อย่างต่อเนื่องแม้ว่าสายสัญญาณเส้นหนึ่งขัดข้อง ทำให้เหมาะสำหรับแอปพลิเคชันที่มีความต้องการแบบเรียลไทม์ต่ำกว่า

 

คุณสมบัติ CAN บัส:

 

การควบคุมหลักหลาย-:CAN บัสรองรับอุปกรณ์หลักหลายเครื่องที่อยู่ร่วมกันบนเครือข่ายโดยไม่มีลำดับชั้นหลัก-รอง อุปกรณ์สื่อสารตามลำดับความสำคัญของข้อความ

 

การส่งสัญญาณที่แตกต่าง:ใช้สายไฟสองเส้น (CAN_H และ CAN_L) เพื่อส่งสัญญาณที่แตกต่าง ช่วยเพิ่มความต้านทานต่อการรบกวนทางแม่เหล็กไฟฟ้า


การอนุญาโตตุลาการแบบไม่ทำลาย-:ในระหว่างการส่งข้อความ ถ้าเกิดการชนกัน ข้อความที่มีลำดับความสำคัญสูงกว่า-จะถูกส่งในขณะที่ข้อความที่มีลำดับความสำคัญต่ำกว่า-จะรอการส่งอีกครั้ง

 

การตรวจจับและการจัดการข้อผิดพลาด:นำเสนอความสามารถในการตรวจจับและการจัดการข้อผิดพลาดที่มีประสิทธิภาพ รวมถึงการตรวจสอบความถูกต้องของผลรวม CRC และการตรวจสอบข้อผิดพลาดบิต

 

โทโพโลยีที่ยืดหยุ่น:รองรับโทโพโลยีเครือข่ายหลายรูปแบบ เช่น การกำหนดค่าเชิงเส้น สตาร์ ทรี และวงแหวน

 

บน CAN บัส ความแตกต่างแรงดันไฟฟ้าที่มีนัยสำคัญระหว่างลอจิก "0" และ "1" ช่วยให้มั่นใจได้ถึงการสื่อสารที่เชื่อถือได้ จากคำอธิบายข้างต้น ระดับลอจิกสองระดับบน CAN บัสคือ:

เด่น: 0

ถอย: 1

ระดับสัญญาณบน CAN บัสแสดงเส้น-และคุณลักษณะ เส้นนี้-และลักษณะการทำงานเป็นพื้นฐานของวงจรสำหรับการอนุญาโตตุลาการ CAN บัส: ระดับที่โดดเด่น (0) จะปกปิดระดับถอย (1) เสมอ หากโหนดที่แตกต่างกันส่งระดับที่โดดเด่นและถอยพร้อมกัน บัสจะแสดงระดับที่โดดเด่น (0) เฉพาะเมื่อโหนดทั้งหมดส่งระดับถอย (1) เท่านั้นที่บัสจะแสดงสถานะถอย

ระดับที่โดดเด่น:ลอจิก 0 ใน CAN ความเร็วสูง- พิน CAN_H ขับเคลื่อนไปที่ 5V ในขณะที่พิน CAN_L ขับเคลื่อนไปที่ 0V

ระดับการยอมจำนน:ลอจิก 1. ไม่มีการขับเคลื่อนพินใดเลย

e95a17f4-f803-11ee-a297-92fbcf53809c.png

 

CAN บัสความเร็วสูง-และบัส CAN ความเร็วต่ำ-แตกต่างกันในคำจำกัดความระดับสัญญาณของเลเยอร์ทางกายภาพ:

ความเร็วสูง- CAN กำหนดตรรกะ "1" เมื่อแรงดันไฟฟ้า CANH และ CANL เท่ากัน (CANH=CANL=2.5V) และตรรกะ "0" เมื่อความแตกต่างของแรงดันไฟฟ้าระหว่าง CANH และ CANL คือ 2V (CANH=3.5V, CANL=1.5V)

ภายในช่วงแรงดันไฟฟ้าของโหมด-ทั่วไป (-12V ถึง 12V) ตัวรับส่งสัญญาณ CAN ความเร็วสูงตีความความแตกต่างของแรงดันไฟฟ้าที่มากกว่า 0.9V ระหว่าง CANH และ CANL ว่าเป็นสถานะที่โดดเด่น และความแตกต่างน้อยกว่า 0.5V เป็นสถานะถอย วงจรฮิสเทรีซิสภายในช่วยลดการรบกวน

ความเร็วต่ำ- CAN กำหนดตรรกะ "1" เมื่อความแตกต่างของแรงดันไฟฟ้าระหว่าง CANH และ CANL คือ 5V (CANH=0V, CANL=5V) และตรรกะ "0" เมื่อความแตกต่างของแรงดันไฟฟ้าคือ 2.2V (CANH=3.6V, CANL=1.4V)

e968b9bc-f803-11ee-a297-92fbcf53809c.pngระดับสัญญาณ CAN ความเร็วสูง- (ISO 11898-2)e976dace-f803-11ee-a297-92fbcf53809c.pngระดับสัญญาณ CAN ความเร็วต่ำ- (ISO 11898-3)

 

กลไกการจัดการข้อผิดพลาด CAN:

ข้อผิดพลาดซีอาร์ซี:ตรวจจับข้อผิดพลาดโดยการคำนวณและตรวจสอบค่า CRC ของข้อมูล

ข้อผิดพลาดบิต:ตรวจจับข้อผิดพลาดบิตแบบเรียลไทม์-ระหว่างการส่ง

กรอบข้อผิดพลาด:ส่งเฟรมข้อผิดพลาดเพื่อขอส่งซ้ำเมื่อตรวจพบข้อผิดพลาด


สรุป

 

CAN บัสได้รับการยอมรับอย่างกว้างขวางในหลายสาขา เนื่องจากมีความน่าเชื่อถือสูง ประสิทธิภาพแบบเรียลไทม์- และความยืดหยุ่น เนื่องจากความก้าวหน้าทางเทคโนโลยี CAN บัสยังคงพัฒนาต่อไป-ตัวอย่างเช่น มาตรฐาน CAN FD (Flexible Data-Rate) ที่ออกโดย BOSCH จะช่วยเพิ่มอัตราการส่งข้อมูลให้ตรงกับความต้องการของแอปพลิเคชันที่ต้องการแบนด์วิธที่สูงขึ้น

ส่งคำถาม

whatsapp

โทรศัพท์

อีเมล

สอบถาม