BlueOS เป็นแพลตฟอร์มแบบแยกส่วน แข็งแกร่ง และมีประสิทธิภาพสำหรับการจัดการยานพาหนะหรือหุ่นยนต์จากคอมพิวเตอร์ออนบอร์ด เป็นวิวัฒนาการของโครงการ Companion ซึ่งมีจุดมุ่งหมายเพื่อกำหนดเส้นทางสตรีมวิดีโอและการสื่อสารของยานพาหนะไปยังคอมพิวเตอร์ของสถานีควบคุม ด้วยการตระหนักถึงความจำเป็นของระบบที่ซับซ้อนและปรับขนาดได้มากขึ้น BlueOS จึงถูกสร้างขึ้นตั้งแต่ต้นจนจบ โดยเปิดรับความเป็นโมดูลาร์เพื่อให้แน่ใจว่าสามารถพกพาได้ การอัปเดตที่แข็งแกร่ง และความสามารถในการขยายได้
เอกสารอย่างเป็นทางการ
เอกสารการพัฒนา
ผลงาน
หลักจรรยาบรรณ
ส่วนขยายที่ลงทะเบียน
ติดตั้งไดเร็กทอรี (สำหรับการติดตั้งแบบกำหนดเอง)
การพัฒนา BlueOS นั้นขับเคลื่อนโดยหลักการสำคัญดังต่อไปนี้:
อินเทอร์เฟซที่ เรียบง่ายตามค่าเริ่มต้น แต่ทรงพลังเมื่อจำเป็น - ผู้ใช้มีอำนาจในการเปลี่ยนแปลงสิ่งที่พวกเขาต้องการและปรับแต่งประสบการณ์เต็มรูปแบบ
ออกแบบมาเพื่อมุ่งเน้นไปที่สิ่งที่สำคัญ ปรับปรุงการเข้าถึงข้อมูลและการควบคุมของผู้ใช้ด้วย UI และ UX ที่เป็นมิตรต่อมนุษย์
ทำให้งานที่ซับซ้อนง่ายขึ้น และปรับปรุงความสะดวกในการใช้งานโดยการนำรูปแบบการออกแบบจากแอปพลิเคชันอื่นกลับมาใช้ใหม่ (ตามหลักเกณฑ์ UI วัสดุ)
การจัดการและการตรวจจับข้อผิดพลาดขั้นสูง ทำให้ผู้ใช้และนักพัฒนาทราบปัญหาต่างๆ อย่างชัดเจน พร้อมทั้งวิธีแก้ไข
ลดความซับซ้อนของการพัฒนา โดยให้สิทธิ์เข้าถึง API บริการและรูปแบบการพัฒนาโมดูลาร์ของเราได้อย่างเต็มที่
แบบพกพาและยืดหยุ่น คุณควรจะสามารถทำงานบน Raspberry Pi 3/4 หรือ SBC ใดๆ ที่มีระบบปฏิบัติการ Linux ได้ ยินดีสนับสนุนการมีส่วนร่วม
ใช้งานได้สูงโดยมีการใช้ CPU ต่ำ ระบบทั้งหมดถูกสร้างขึ้นเพื่อให้ทำงานได้อย่างมีประสิทธิภาพ
การพัฒนาบนรากฐานที่มั่นคง ส่วนสำคัญหรือบริการด้านแรงงานที่เข้มข้นได้รับการออกแบบโดยใช้ภาษาและคุณสมบัติที่ทันสมัยที่สุดเพื่อความเสถียร
การออกแบบ การจัดองค์กร และการเปิดตัว BlueOS ในอนาคตนั้นสอดคล้องกับหลักการเหล่านี้ โดยมุ่งมั่นที่จะมอบประสบการณ์ผู้ใช้ที่ดีที่สุดและสมบูรณ์แบบ
BlueOS มีให้เลือกสามประเภท:
เสถียร: เวอร์ชันที่ได้รับการทดสอบและตรวจสอบอย่างเป็นทางการพร้อมการสนับสนุนระยะยาว แนะนำสำหรับผู้ใช้ส่วนใหญ่
เบต้า: การเปิดตัวที่ผ่านการทดสอบเล็กน้อยพร้อมฟีเจอร์ใหม่ การแก้ไขข้อบกพร่อง และการปรับปรุง
Master: การพัฒนา Bleeding-edge เปิดตัวพร้อมการเปลี่ยนแปลงเกือบทุกวัน นี่เป็นคุณสมบัติล่าสุดที่อาจยังไม่ได้ทดสอบ
BlueOS ได้รับการออกแบบโดยเน้นไปที่การไม่เชื่อเรื่องพระเจ้าของยานพาหนะและแพลตฟอร์ม เป้าหมายของเราคือการอำนวยความสะดวกในความเข้ากันได้ในวงกว้างกับแอปพลิเคชันที่หลากหลาย ปัจจุบัน BlueOS รองรับยานพาหนะประเภทต่อไปนี้อย่างเป็นทางการ:
ArduRover เป็นแพลตฟอร์มเรือโอเพ่นซอร์สที่ไม่มีคนควบคุม ไม่ว่าคุณจะสั่งการเรือพักผ่อนหรือเรือวิจัย ความเข้ากันได้ของ BlueOS กับ ArduRover ช่วยให้มั่นใจได้ว่าคุณสามารถนำทางในน้ำได้อย่างราบรื่น
BlueBoat ได้รับการสนับสนุนโดยค่าเริ่มต้น
ArduSub เป็นระบบควบคุมแบบ go-to สำหรับยานพาหนะใต้น้ำที่ควบคุมจากระยะไกล (ROV) BlueOS นำเสนอการบูรณาการอย่างราบรื่นกับ ArduSub ช่วยให้การจัดการและการทำงานของยานพาหนะใต้น้ำมีประสิทธิภาพ
รองรับ BlueROV2 ตั้งแต่แกะกล่อง
BlueOS ให้การสนับสนุนทั่วไปสำหรับยานพาหนะไร้คนขับภาคพื้นดิน ทางอากาศ และทางทะเลที่หลากหลายซึ่งใช้ระบบขับเคลื่อนอัตโนมัติ ArduPilot และ PX4 สิ่งนี้ขยายขอบเขตของยานพาหนะที่สามารถจัดการได้โดยใช้ระบบของเรา ตั้งแต่โดรนไปจนถึงรถยนต์ขับเคลื่อนอัตโนมัติและอีกมากมาย
หมายเหตุ: อาจจำเป็นต้องมีการกำหนดค่ายานพาหนะเฉพาะเพื่อให้มั่นใจถึงประสิทธิภาพสูงสุดกับ BlueOS
BlueOS ได้รับการออกแบบมาเพื่อให้ทำงานได้อย่างเหมาะสมที่สุดในระบบที่หลากหลาย รุ่นล่าสุดของเราสร้างขึ้นโดยอัตโนมัติสำหรับสถาปัตยกรรมต่อไปนี้:
armv7: นี่คือสถาปัตยกรรมทั่วไปสำหรับอุปกรณ์ฝังตัว ครอบคลุมรุ่น Raspberry Pi จนถึงและรวมถึง Raspberry Pi 3
armv8/arm64: ใช้โดยอุปกรณ์ประสิทธิภาพสูงรุ่นล่าสุด คุณสามารถเรียกใช้ BlueOS บน Raspberry Pi 4 หรือในคอมพิวเตอร์ที่มี Apple Silicon
amd64: นี่คือสถาปัตยกรรมที่ใช้โดยคอมพิวเตอร์เดสก์ท็อปและแล็ปท็อปส่วนใหญ่ ตัวอย่างทั่วไปคือพีซีสมัยใหม่ที่ใช้ Linux เวอร์ชัน 64 บิต ไม่รองรับอย่างเต็มที่
ขณะนี้เราสนับสนุน Raspberry Pi 3 และ 4 อย่างเป็นทางการ แต่ระบบควร "ใช้งานได้" บนสถาปัตยกรรมทั้งหมดที่ระบุไว้พร้อมกับนักเทียบท่าที่ถูกต้อง
สภาพแวดล้อมการพัฒนาที่ใช้ Docker พร้อมใช้งานผ่านไฟล์เขียน core/compose/compose.yml
การดำเนินการนี้จะเริ่มต้นสภาพแวดล้อมการพัฒนาด้วยบริการที่จำเป็นทั้งหมด ตลอดจนติดตั้งไดเร็กทอรีที่จำเป็นทั้งหมดในพื้นที่เก็บข้อมูลนี้เพื่อการพัฒนา
นักเทียบท่าเขียนดึง # ตรวจสอบให้แน่ใจว่านักเทียบท่าทันสมัยนักเทียบท่าเขียน -f core/compose/compose.yml up
เมื่อรีสตาร์ทสภาพแวดล้อมการพัฒนา คุณอาจต้องลบวอลุ่มเพื่อให้แน่ใจว่าสภาพแวดล้อมการพัฒนาสะอาด
นักเทียบท่าเขียน -f core/compose/compose.yml ลง