AUTOSAR (Automotive Open System Architecture) พันธมิตรด้านการพัฒนาระดับโลกที่นำเสนอสถาปัตยกรรมซอฟต์แวร์ที่เป็นมาตรฐานสำหรับชุดควบคุมอิเล็กทรอนิกส์ยานยนต์ (ECU) AUTOSAR ก่อตั้งขึ้นในปี พ.ศ. 2546 โดยมีเป้าหมายเพื่อปรับปรุงความสามารถในการนำซอฟต์แวร์กลับมาใช้ใหม่ ความสามารถในการปรับลดขนาดที่เหมาะสม และการทำงานร่วมกันระหว่างผู้ผลิตและซัพพลายเออร์ยานยนต์ที่แตกต่างกัน
ปัจจุบันอุตสาหกรรมยานยนต์กำลังเผชิญกับความซับซ้อนที่เพิ่มมากขึ้นอันเนื่องมาจากความก้าวหน้าด้านพลังงานไฟฟ้า การขับขี่แบบอัตโนมัติ และยานยนต์เชื่อมต่อเข้ากับอินเทอร์เน็ต AUTOSAR จึงต้องรับมือกับความท้าทายเหล่านี้ ไม่ว่าจะเป็น การมีกรอบการทำงานที่ต้องประกอบไปด้วยโครงสร้างที่ช่วยลดความยุ่งยากในการพัฒนาซอฟต์แวร์ ลดต้นทุน และเร่งระยะเวลาในการนำผลิตภัณฑ์ออกสู่ตลาด
ประวัติและวิวัฒนาการของ AUTOSAR
AUTOSAR ก่อตั้งขึ้นในปี พ.ศ. 2546 โดยบริษัทผู้ผลิตยานยนต์รายใหญ่ ได้แก่ BMW, Bosch, Continental, Daimler, Ford, GM, PSA, Toyota และ Volkswagen โครงการริเริ่มนี้มุ่งเน้นการสร้างมาตรฐานสถาปัตยกรรมซอฟต์แวร์ เพื่อหลีกเลี่ยงการพัฒนาที่ซ้ำซ้อน และปรับปรุงการทำงานร่วมกันระหว่างผู้ผลิตอุปกรณ์ (OEM) และซัพพลายเออร์
ลำดับการพัฒนาการที่สำคัญของ AUTOSAR มีรายละเอียดดังนี้
- ปี ค.ศ. 2003 ก่อตั้งพันธมิตร AUTOSAR
- ปี ค.ศ. 2006 เปิดตัวข้อกำหนดเบื้องต้น (AUTOSAR 3.0)
- ปี ค.ศ. 2017 เปิดตัว Adaptive AUTOSAR สำหรับการประมวลผลประสิทธิภาพสูง (HPC) และยานยนต์เชื่อมต่ออินเทอร์เน็ต
- ประมาณทศวรรษ 2020 มีการขยายไปสู่การขับขี่อัตโนมัติ ความปลอดภัยทางไซเบอร์ และการอัปเดตผ่านระบบไร้สาย (OTA) จนในปัจจุบัน AUTOSAR ถือเป็นมาตรฐานโดยพฤตินัยในการพัฒนาซอฟต์แวร์ยานยนต์ โดยได้รับการนำไปใช้กันอย่างแพร่หลายในอุตสาหกรรมต่างๆ
ทำไมต้อง AUTOSAR ? มีความสำคัญอย่างไรในการพัฒนาซอฟต์แวร์ยานยนต์
รถยนต์สมัยใหม่มี ECU มากกว่า 100 ตัว ซึ่งแต่ละตัวทำงานด้วยซอฟต์แวร์ที่ซับซ้อนสำหรับฟังก์ชันต่างๆ เช่น การควบคุมเครื่องยนต์ ระบบบันเทิง Entertainment และ ADAS (Advanced Driver Assistance Systems: ระบบช่วยเหลือผู้ขับขี่ขั้นสูง) หากไม่มีมาตรฐานนี้ การจัดการระบบเหล่านี้จะไม่มีประสิทธิภาพ
ข้อดีของ AUTOSAR
- การสร้างมาตรฐาน รับรองความเข้ากันได้ระหว่างผู้จำหน่ายที่หลากหลาย
- การนำกลับมาใช้ใหม่ ลดขั้นตอนการพัฒนาที่ซ้ำซ้อน
- ความสามารถในการปรับขนาด รองรับการอัปเดตซอฟต์แวร์และฟีเจอร์ใหม่ๆ
- อิสระจากฮาร์ดแวร์ แยกซอฟต์แวร์ออกจากการเปลี่ยนแปลงฮาร์ดแวร์
- การบำรุงรักษาที่ดีขึ้น ลดความยุ่งยากในการดีบักและการอัปเดต
ภาพรวมสถาปัตยกรรม AUTOSAR
AUTOSAR ปฏิบัติตามสถาปัตยกรรมแบบหลายชั้น (multi-layers) เพื่อแยกส่วนประกอบซอฟต์แวร์ตามฟังก์ชันการทำงาน
- สถาปัตยกรรมแบบเลเยอร์
สแต็ก AUTOSAR ประกอบด้วยเลเยอร์หลักสามเลเยอร์ ได้แก่
- เลเยอร์แอปพลิเคชัน ประกอบด้วยส่วนประกอบซอฟต์แวร์ (SWC) สำหรับฟังก์ชันต่างๆ ของยานพาหนะ
- สภาพแวดล้อมรันไทม์ (RTE) จัดการการสื่อสารระหว่าง SWC
- ซอฟต์แวร์พื้นฐาน (BSW) จัดเตรียมการแยกส่วนฮาร์ดแวร์และการบริการ
- ซอฟต์แวร์พื้นฐาน (BSW) BSW แบ่งออกเป็นหลายโมดูล
- ชั้นไมโครคอนโทรลเลอร์ (MCAL) เชื่อมต่อกับฮาร์ดแวร์โดยตรง
- ชั้น ECU ให้การเข้าถึงอุปกรณ์ต่อพ่วงตามมาตรฐาน
- ชั้น Services ให้บริการระบบ เช่น การวินิจฉัย การจัดการหน่วยความจำ
- สภาพแวดล้อมรันไทม์ (RTE) RTE ทำหน้าที่เป็นมิดเดิลแวร์ที่ช่วยให้การสื่อสารระหว่าง SWC เป็นไปได้โดยใช้แนวคิด Virtual Functional Bus (VFB)
- ชั้นแอปพลิเคชัน ชั้นนี้ประกอบด้วยส่วนประกอบซอฟต์แวร์ (SWC) ที่ใช้ฟังก์ชันเฉพาะของยานพาหนะ เช่น การควบคุมเบรก การจัดการระบบส่งกำลัง
แนวคิดหลักของ AUTOSAR
- การสร้างมาตรฐานและการนำกลับมาใช้ใหม่ AUTOSAR กำหนดอินเทอร์เฟซมาตรฐาน ซึ่งช่วยให้สามารถนำส่วนประกอบซอฟต์แวร์กลับมาใช้ซ้ำได้ใน ECU และรถยนต์รุ่นต่างๆ
- ความเป็นโมดูลาร์และความสามารถในการปรับขนาด การออกแบบแบบโมดูลาร์ช่วยให้สามารถผสานรวมฟีเจอร์ใหม่ๆ ได้อย่างง่ายดายโดยไม่ต้องออกแบบใหม่
- การแยกส่วนฮาร์ดแวร์ BSW ย่อส่วนการพึ่งพาฮาร์ดแวร์ ซึ่งช่วยให้ซอฟต์แวร์สามารถทำงานบนไมโครคอนโทรลเลอร์ที่แตกต่างกันได้
- รูปแบบส่วนประกอบซอฟต์แวร์ SWC ประกอบด้วยฟังก์ชันการทำงานเฉพาะและสื่อสารผ่านพอร์ตที่กำหนดไว้อย่างชัดเจน
- บัสฟังก์ชันเสมือน (VFB) VFB เป็นกรอบแนวคิดการสื่อสารที่ช่วยให้ SWC สามารถโต้ตอบกันได้โดยไม่ต้องรู้ตำแหน่งที่ตั้งทางกายภาพ
ขั้นตอนการทำงานและวิธีการของ AUTOSAR
- การกำหนดค่าระบบ กำหนดเครือข่ายรถยนต์โดยรวม รวมถึง ECU และบัสสื่อสาร (CAN, LIN, Ethernet)
- การกำหนดค่า ECU กำหนดค่า ECU แต่ละตัว รวมถึงโมดูล BSW และ SWC
- การสร้างและบูรณาการโค้ด เครื่องมือของ AUTOSAR เช่น Vector DaVinci, ETAS ISOLAR สร้างโค้ดจากไฟล์กำหนดค่า จากนั้นจึงคอมไพล์และแฟลชลงบน ECU
แพลตฟอร์ม AUTOSAR แบบปรับตัวเทียบกับแพลตฟอร์มแบบคลาสสิก
- AUTOSAR แบบคลาสสิก (CP) ออกแบบมาสำหรับระบบเรียลไทม์แบบฮาร์ด เช่น การควบคุมเครื่องยนต์ และใช้การกำหนดค่าแบบคงที่พร้อมการกำหนดเวลาแบบตายตัว
- AUTOSAR แบบปรับตัว (AP) ออกแบบมาสำหรับการประมวลผลประสิทธิภาพสูง เช่น การขับขี่อัตโนมัติ และรองรับการอัปเดตซอฟต์แวร์แบบไดนามิกและระบบปฏิบัติการแบบ POSIX
สรุป
AUTOSAR คือรากฐานสำคัญของการพัฒนาซอฟต์แวร์ยานยนต์สมัยใหม่ ช่วยให้เกิดการสร้างมาตรฐาน การนำกลับมาใช้ใหม่ และความสามารถในการปรับขนาด เมื่อยานยนต์มีการกำหนดซอฟต์แวร์มากขึ้น AUTOSAR จะพัฒนาอย่างต่อเนื่องเพื่อรองรับเทคโนโลยียานยนต์ยุคใหม่ต่อไปในอนาคต