ทำไมถึงมีรถบัส CAN หลายคันในยานพาหนะ?


17

มีคำถามจำนวนมากบนรถบัส CAN แต่ไม่มี (เท่าที่ฉันจะบอกได้) ที่อธิบายว่าทำไมมีรถบัส CAN หลายคันในยานพาหนะ จากสิ่งที่ฉันเข้าใจโหนดที่แตกต่างกันสามารถเชื่อมต่อกับ CAN บัสเดียวดังนั้นฉันไม่แน่ใจว่าทำไมคุณต้องมีมากกว่าหนึ่ง ความคิดเดียวของฉันคือ:

A. มีข้อ จำกัด เล็กน้อยพอสมควรสำหรับจำนวนโหนดที่สามารถต่อพ่วงกับบัส CAN เดียวได้ แต่ถ้าเป็นเช่นนั้นฉันจะจินตนาการว่าจะต้องมีการเชื่อมต่อระหว่างกันเพื่อให้การอนุญาโตตุลาการและการตรวจสอบข้อผิดพลาดสามารถเกิดขึ้นได้ (CAN SPEC 2.0)

-- หรือ --

B. โหนดได้รับการจัดลำดับความสำคัญเป็นระบบหลักรองและตติยภูมิและแต่ละระดับจะมีบัส CAN ของตัวเองและระดับเหล่านี้มีเฉพาะอุปกรณ์ที่ไม่ขึ้นต่อกันในแง่ของการใช้งาน เบรค IE, การควบคุมเครื่องยนต์, ไฟภายนอก, ล็อคอยู่บนรถบัสหลัก วิทยุ, AC, ระบบควบคุมที่นั่ง, อยู่บนรถบัสรองเป็นต้น

หากใครสามารถอธิบาย / ชี้แจงฉันจะขอบคุณมันจริงๆ ขอบคุณล่วงหน้า.


1
ฉันยอมรับว่าไม่ค่อยรู้เรื่องนี้มากนัก แต่ฉันคิดว่ามีเพียงบัสเดียวเนื่องจากมีการเชื่อมต่อเพียงจุดเดียว - พอร์ต OBDII รถโดยสารแยกส่งอย่างไร? อะไรทำให้พวกเขาแยกจากกัน
JPhi1618

@ JPhi1618 จริงๆแล้วฉันไม่รู้ตัวเองมากขนาดนั้นนั่นเป็นเหตุผลที่ฉันถามไป ฉันกำลังพูดคุยกับระบบรักษาความปลอดภัยยานพาหนะแบบเพื่อนผ่านทาง CAN บัสหลังจากที่เขากลับมาจากเหตุการณ์ Hackathon ที่มันถูกนำขึ้นมาและเราพบว่ามีคนจำนวนมากที่กล่าวว่ายานพาหนะส่วนใหญ่มีรถบัส CAN หลายคัน ฉันยอมรับว่าการเชื่อมต่อเดียวที่ฉันรู้คือพอร์ต OBDII มีหลายโพสต์ที่นี่ที่คนพูดถึงมีหลายโพสต์ ( mechanics.stackexchange.com/questions/8559/obd2-and-can-bus - am6sigma กล่าวถึงในคำตอบ)
Moeman69

พบการสนทนานี้ที่แจ้งว่า: หากต้องการขอข้อมูลที่คุณต้องจับมือกับเกตเวย์ CAN ให้เจรจาการตั้งค่าการเชื่อมต่อขอชุดข้อมูลจากอุปกรณ์ CAN เฉพาะและอ่านข้อมูลที่ส่งคืน ด้วยการร้องขอที่ถูกต้องคุณสามารถเข้าถึงข้อมูลจาก 3 บัสจากการเชื่อมต่อเดียวดังนั้น CBT ของคุณสามารถร้องขอ RPM จากคอนโทรลเลอร์เครื่องยนต์, มาตรวัดระยะทางจากแผงหน้าปัด, ตำแหน่งหน้าต่างจากคอนโทรลเลอร์ประตูด้านหน้าขวา ฯลฯ ดังนั้นดูเหมือนว่า "เกตเวย์" เป็นกุญแจสำคัญ
JPhi1618

@ JPhi1618 Ahh ขอบคุณ ฉันไม่เคยเห็นหน้านั้น นอกจากนี้ยังดูเหมือนว่าความคิดของฉัน B ถูกต้องเรียงลำดับในเครื่องมือที่เชื่อมต่อในกลุ่มกับรถบัสที่แตกต่างกัน อย่างไรก็ตามเกตเวย์ CAN ดูเหมือนจะไม่เหมือนใครสำหรับรถ VW และไม่จำเป็นต้องเป็นมาตรฐาน ฉันสามารถจินตนาการได้ว่ายานพาหนะอื่นมีอุปกรณ์และการตั้งค่าที่คล้ายกัน แต่นั่นเป็นการคาดเดาอย่างหมดจด ฉันหวังว่าฉันจะสามารถ PM ​​คนได้เนื่องจากมีคนอย่างที่ฉันพูดถึงซึ่งดูเหมือนว่าจะมีความรู้มือแรกของรถบัสหลายคัน
Moeman69

คำตอบ:


17

รถบัส CAN นั้นแยกจากกันเป็นหลัก

  • จัดการความแออัด
  • ลดข้อกังวลด้านกฎระเบียบเกี่ยวกับระบบที่สำคัญต่อความปลอดภัย
  • ออกแรงควบคุมมากขึ้นว่าใครสามารถเข้าถึงรถเมล์ต่างๆ

ยานพาหนะง่ายจะมีรถบัส CAN สองคันคันหนึ่งสำหรับเครื่องยนต์และระบบความปลอดภัยและอีกคันสำหรับการควบคุมร่างกาย (การให้แสงประสบการณ์ผู้ใช้และอื่น ๆ )

ยานพาหนะที่ซับซ้อนจะมีรถบัสแยกต่างหากสำหรับระบบที่มีผลกระทบต่อการเคลื่อนที่ของยานพาหนะเช่นระบบควบคุมความเร็วคงที่ด้วยเรดาร์ระบบที่จอดรถระบบนำทางและอื่น ๆ รวมถึงระบบเพิ่มเติมสำหรับคุณสมบัติของผู้ใช้นอกเหนือจากการควบคุมร่างกายแบบง่าย ๆ

ในขณะที่สามารถใช้รถโดยสารร่วมกันมีเหตุผลบางประการที่ไม่ควรทำเช่นนี้:

ความแออัด

แม้แต่ CAN บัสความเร็วสูงก็ไม่มีแบนด์วิดท์ไม่ จำกัด และในความเป็นจริงเมื่อเปรียบเทียบกับระบบสื่อสารที่ทันสมัยพวกเขาก็ช้ามาก อย่างไรก็ตามยังมีข้อมูลจำนวนมากที่พวกเขาต้องดำเนินการและส่วนใหญ่เป็นเวลาที่สำคัญดังนั้นการดูแลรักษาการใช้งานที่ต่ำช่วยให้สามารถส่งข้อความได้รวดเร็วยิ่งขึ้น (ชนน้อยกว่า) ซึ่งหมายความว่าข้อความแบบเรียลไทม์มาถึงตรงเวลา .

การทดสอบ

ระบบความปลอดภัยที่สำคัญมักจะแยกออกจากระบบอื่น ๆ เพื่อให้การทดสอบลดลง อุปกรณ์ทั้งหมดที่เชื่อมต่อกับบัสวิกฤติด้านความปลอดภัยจะต้องมีมาตรฐานการทำงานที่สูงกว่าดังนั้นการทดสอบเพื่อให้มั่นใจว่าจะไม่ทำให้เกิดปัญหากับบัสวิกฤติที่ปลอดภัย ด้วยบัสบัสแยกต่างหากคุณสามารถมีมาตรฐานที่ต่ำกว่าเล็กน้อยเนื่องจากไฟดับจะไม่ทำให้เกิดปัญหาด้านความปลอดภัยดังนั้นการทดสอบจึงลดลง

แทนที่จะรวมทุกอย่างไว้ในรถบัสเดียวและทำให้แน่ใจว่าทุกอย่างเป็นไปตามมาตรฐานที่สูงกว่ารถเมล์ที่แยกต่างหากช่วยให้นักออกแบบแบ่งส่วนรถบัสและลดค่าใช้จ่าย

กฎระเบียบอุตสาหกรรมเป็นเรื่องยากโดยเฉพาะอย่างยิ่งเนื่องจากปัญหาเค้นและปัญหาอื่น ๆ ที่เกิดจากการขับรถด้วยลวดในอดีต โดยการแยกระบบที่สำคัญออกจากระบบที่ไม่สำคัญค้นหาสิ่งที่ผิดพลาดหลังจากข้อเท็จจริงและการแก้ไขมันกลายเป็นเรื่องง่ายขึ้นและมีโอกาสน้อยลงเนื่องจากมีอุปกรณ์น้อยกว่าที่อาจรบกวนการทำงานที่ถูกต้องของระบบความปลอดภัย

ควบคุม

เมื่อผู้ควบคุมดูแลพบว่าพวกเขาสามารถปรับเปลี่ยนการจัดการเครื่องยนต์และคอมพิวเตอร์อื่น ๆ ผ่านอินเทอร์เฟซเดียวผู้ผลิตรถยนต์ได้ทำงานเพื่อแยกขั้วต่อการวินิจฉัยและบัสจากส่วนที่เหลือของรถโดยสารรถยนต์และใช้เกตเวย์เพื่อส่งข้อความที่อนุญาตเท่านั้น การเข้าถึงของผู้ใช้และโรงรถ โดยปกติแล้วพวกเขาจะมีคุณสมบัติเพิ่มเติมที่อนุญาตให้เข้าถึงช่างเทคนิคของตนเองและหลายคนยังเพิ่มรถบัสอีกตัวในตัวเชื่อมต่อการวินิจฉัย แต่ไม่มีการเผยแพร่รายละเอียดข้อความดังนั้นพวกเขาจึงสามารถเข้าถึงความเร็วสูงขึ้นในขณะที่ยังคงรักษาความเข้ากันได้

อย่างไรก็ตามการแยกรถเมล์ช่วยให้พวกเขาสามารถควบคุมผู้ที่สามารถเข้าถึงคอมพิวเตอร์ออนบอร์ดได้ง่ายขึ้นโดยใช้ตัวเชื่อมต่อการวินิจฉัยแบบง่าย

ความซับซ้อนเพิ่มเติม

ความซับซ้อนที่นำเสนอโดยบัสเพิ่มเติมได้รับการจัดการโดยตัวควบคุมเกตเวย์ ในยานพาหนะบางคันนี่คือตัวควบคุมและมักจะมีการเชื่อมต่อบัสอื่น ๆ เช่น LIN สิ่งนี้จะส่งข้อความระหว่างรถเมล์เพื่อที่ว่าเมื่อมีการเชื่อมต่ออุปกรณ์การวินิจฉัยเช่นอุปกรณ์สามารถเข้าถึงข้อมูลการวินิจฉัยที่เกี่ยวข้องทั้งหมดในยานพาหนะ


1
ฉันเห็นด้วยกับคะแนนของคุณ แต่จะเน้น "ความปลอดภัย" มากกว่า "การทดสอบ" ตัวควบคุมความปลอดภัยที่สำคัญถูกแยกออกจากตัวอื่นโดยเกตเวย์ซึ่งกรองและ จำกัด การสื่อสารระหว่างบัสกับชุดย่อยที่กำหนด เครื่องเล่นดีวีดีไม่สามารถควบคุมการหยุดพักหรือถุงลมนิรภัย (หลังจากที่คุณจี้ด้วยแท่ง USB ที่ออกแบบมาอย่างดี) หรือประนีประนอม CAN บัสโดยไม่ตั้งใจด้วยเหตุผลหรือทางไฟฟ้า กลยุทธ์นี้เหมือนกับ LAN ใด ๆ ที่มีเซิร์ฟเวอร์ที่มีความสำคัญต่อภารกิจซึ่งคุณจะไม่ต้องเปิดเผยต่ออินเทอร์เน็ต การทดสอบไปไกลเท่านั้น การแยกเป็นหลักฐานคนโง่
ปีเตอร์ - Reinstate Monica

@ PeterA.Schneider ฉันไม่เห็นด้วยกับคุณ แต่ฉันทำงานกับโมดูลตัวถังสำหรับรถฟอร์ดขนาดใหญ่รุ่นปี '09 และในขณะที่ผลลัพธ์ที่ต้องการอาจเพิ่มขึ้นหรือมีความปลอดภัยตรวจสอบได้หลักฐานคือการทดสอบและในกรณี ของโมดูลนี้ลดเวลาในการทดสอบ ความจริงก็คือการทดสอบโมดูลที่ซับซ้อนเพียงอย่างเดียวเพียงอย่างเดียวอาจใช้เวลาเป็นเดือนในการเปลี่ยนลำดับภายในทั้งหมดและทดสอบรถบัสยานพาหนะที่สมบูรณ์หนึ่งปี สิ่งนี้สามารถเทียบเคียงได้ในระดับที่มีค่าใช้จ่ายสูง แต่ไม่กี่สัปดาห์ก็เป็นที่ยอมรับไม่ได้ การแยกรถเมล์ช่วยให้การทดสอบง่ายขึ้นและเร็วขึ้น
Adam Davis

@ PeterA.Schneider สิ่งนี้ช่วยให้โมดูลและรถบัสได้รับการทดสอบอย่างสมบูรณ์มากขึ้นซึ่งจะเพิ่มความปลอดภัย แต่เป้าหมายหลักคือการลดเวลาในการพัฒนาในขณะที่รักษามาตรฐานความปลอดภัยไว้ - ไม่เพิ่มความปลอดภัย วิธีที่โมดูลได้รับการออกแบบและการส่งผ่านข้อความได้รับการออกแบบมีความเป็นไปได้น้อยที่เครื่องเล่นดีวีดีที่แฟลชซ้ำบนบัสเครื่องยนต์อาจทำให้เกิดปัญหาได้ ฮาร์ดแวร์ที่เชื่อมต่อบัสป้องกันการโจมตีของ DOS ที่ระดับซิลิคอนและไมโครคอนโทรลเลอร์ที่เชื่อมต่อกับฮาร์ดแวร์นี้ไม่สามารถตั้งโปรแกรมผ่านซอฟต์แวร์ได้
Adam Davis

@ PeterA.Schneider บางทีนี่อาจเป็นความหมายหรือความแตกต่างโดยไม่มีความแตกต่าง แต่ถ้าผู้ผลิตต้องการรถบัสเดียวระบบสามารถออกแบบด้วยความปลอดภัยในระดับเดียวกับที่มีอยู่ในรถโดยสารแยก เวลาในการพัฒนาเป็นสิ่งเดียวที่จะทำให้ทุกข์ทรมานอย่างแท้จริง โชคดีที่ค่าใช้จ่ายเพิ่มเติมของรถบัสแยกต่างหากนั้นต่ำมิฉะนั้นเราจะออกแบบให้เป็นรถบัสเดียวถ้าค่าใช้จ่ายของรถบัสแยกมีขนาดใหญ่เกินไป
Adam Davis

8

เมื่อพูดถึง CAN โดยเฉพาะคำตอบคือไม่ถูกต้อง

ในระบบ CAN โหนดจะไม่พูดคุยกันโดยตรง แต่ระบบจะใช้ข้อความแทน ทุกข้อความมีความสำคัญตามที่อยู่ของมันและเป็นตัวกำหนดว่าใครควรจะพูดคุย ใครเคยมีข้อความลำดับความสำคัญส่งข้อความไปยังทุกคนและผู้ที่เคยต้องการมันอ่านมันมา

มีข้อ จำกัด บางประการเกี่ยวกับจำนวนโหนดที่สามารถมีได้ แต่ข้อ จำกัด นั้นเป็นระบบไฟฟ้าและไม่ใช่ฟังก์ชั่นของบัสจริง

เหตุผลก็คือความเร็วสูง CAN นั้นซับซ้อนมากทางไฟฟ้าเนื่องจากความเร็ว (ฉันสามารถไปเกี่ยวกับสายส่งความสมบูรณ์ของสัญญาณตอและการเลิกจ้าง แต่นี่เป็นวิธีที่เกินความต้องการของคำตอบนี้) ทำให้การออกแบบมีความซับซ้อนและโมดูลที่ใช้มันแพงกว่า ไม่ใช่ทุกสิ่งที่ต้องการความเร็วคอเบรกของ CAN ความเร็วสูง ระบบ CAN บัสมักจะแบ่งออกเป็นสามรถโดยสารความเร็วต่ำความเร็วปานกลางและความเร็วสูง

  • CAN ความเร็วสูงเชื่อมต่อทุกระบบที่สำคัญ เครื่องยนต์, ABS, ถุงลมนิรภัย, เกียร์, ตัวถัง คอมพิวเตอร์ Body นั้นทำหน้าที่เป็นเกตเวย์ระหว่างรถเมล์คันอื่น
  • CAN ความเร็วปานกลางมักใช้สำหรับฟังก์ชั่นรถยนต์เช่นไฟภายนอกล็อคไฟกระจกไฟฟ้า ฯลฯ
  • ความเร็วต่ำสามารถรับส่วนที่เหลือของระบบที่ไม่สำคัญ สิ่งเหล่านี้อาจรวมถึงแสงสว่างภายในสถานบันเทิงและอื่น ๆ

ตามที่กล่าวไว้ก่อนหน้า CAN บัสใช้ที่อยู่ข้อความแทนที่อยู่โหนด ตัวอย่างเช่นความเร็วของยานพาหนะจะเป็นข้อความ ข้อความนี้ได้รับการส่งผ่านโดยหน่วย ABS และมีลำดับความสำคัญค่อนข้างสูง เครื่องยนต์, ถุงลมนิรภัย, ระบบส่งกำลังและตัวถังล้วนมีความสนใจในข้อความและอ่านมันหลังจากที่ได้รับข้อความร่างกายจะส่งข้อความกลับไปที่รถโดยสารคันอื่น รถบัสความเร็วต่ำมักไม่ต้องการการอัพเดตบ่อยเท่าบัสความเร็วสูงดังนั้นร่างกายจะอัปเดตเฉพาะบางครั้งเท่านั้น

หากโมดูลต้องการข้อมูลที่ไม่ได้รับการส่งโมดูลสามารถขอข้อมูลได้ การออกแบบบัสนั้นเมื่อมีการร้องขอข้อมูลโมดูลที่มีข้อมูลจะรู้ว่าจำเป็นต้องใช้ข้อมูลเท่านั้นและไม่ใช่ใครต้องการข้อมูล

เกตเวย์ไม่จำเป็นต้องเป็นร่างกายมันอาจเป็น Instrument Cluster หรือคอมพิวเตอร์อื่น ๆ


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

@ Moeman69 ใช่ อาจมีโหนดที่แตกต่างกันมากกว่าร้อยโหนดในรถยนต์ การติดตั้งอุปกรณ์ทั้งหมดด้วยความเร็วสูงจะเป็นต้นทุนที่ห้ามปราม มันจะคับคั่งรถบัสและให้คะแนนความล้มเหลวมากขึ้นในระบบที่สำคัญ
vini_i

2

หนึ่งในเหตุผลที่สรุปไว้ในการ์ตูนเรื่องนี้ตั้งแต่ปี 2003:

ป้อนคำอธิบายรูปภาพที่นี่

("พบอุปกรณ์ใหม่: แอร์บัส A310 เริ่มการกำหนดค่าอัตโนมัติหรือไม่ [เริ่ม] [ยกเลิก]")

การโจมตีที่คล้ายกันได้รับรายงานเมื่อเร็ว ๆ นี้ การมีส่วนประกอบที่สำคัญด้านความปลอดภัยบนบัสแยกต่างหากซึ่งสามารถเข้าถึงได้ผ่านเกตเวย์ที่กำหนดค่าไว้อย่างดีเท่านั้นจะช่วยลดโอกาสในการเกิดปัญหาโดยไม่ตั้งใจเช่นเดียวกับที่กล่าวมาข้างต้นและทำให้การแฮ็คยากขึ้นมาก

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.