Linux chinh phục không gian trên tàu Falcon 9 từ SpaceX

Tên lửa tái sử dụng Falcon 9 Từ SpaceX, anh đến Trạm vũ trụ quốc tế cùng với các phi hành gia của NASA Bob Behnken và Doug Hurley trên tàu. Nhưng điều mà nhiều người không biết là nó được phát triển với công nghệ dựa trên Linux.

Falken 9 Đây là một trong những tên lửa đầu tiên được phát triển bởi SpaceX đã trải qua một loạt các sửa đổi cho đến khi chúng đạt đến mô hình hiện tại. Từ phiên bản Falcon đầu tiên 9 v1.1, Các nhà phát triển SpaceX giải thích rằng hệ thống điều khiển của tên lửa, cũng như bộ xử lý và kiến ​​trúc, dựa trên Linux được mã hóa bằng ngôn ngữ lập trình C ++.

Ở phần tiếp theo bằng văn bản bởi các nhà phát triển SpaceX bảy năm trước, bạn có thể đọc:

Đội ngũ phần mềm máy bay có khoảng 35 người.

Chúng tôi viết tất cả mã cho các ứng dụng Falcon 9, Châu chấu và rồng; cũng như cốt lõi của nền tảng làm việc trung tâm. Chúng tôi cũng viết phần mềm mô phỏng; ruồi nhặng; phần mềm truyền thông và phân tích, được thực hiện trong các trạm mặt đất của chúng tôi. Chúng tôi cũng làm việc tại Mission Control để hỗ trợ các bài tập tích cực. “

Nhóm phần mềm mặt đất là về 9 Mọi người. Chúng tôi chủ yếu viết mã trong LabVIEW. Chúng tôi đã phát triển các giao diện đồ họa được sử dụng trong nhiệm vụ và điều khiển khởi động, để các kỹ sư và nhà điều hành giám sát từ xa phương tiện và tên lửa chỉ huy, tàu vũ trụ và thiết bị nền tảng. Chúng tôi nhập dữ liệu băng thông cao vào một sistema Phân phối cao và thực hiện các giao diện người dùng phức tạp với các yêu cầu nghiêm ngặt để đảm bảo các nhà khai thác có thể giám sát và đánh giá tàu vũ trụ đúng giờ.

Hệ thống kiểm soát dung sai hiện trường

Các kỹ sư phần mềm SpaceX chỉ ra rằng đối với phiên bản đầu tiên của Falcon 9, công ty đã sử dụng một số nền tảng và đa tầng với thiết kế chịu lỗi. Động cơ Vars Merlin chạy trên ba bộ xử lý lõi kép.

Phiên bản Linux được tích hợp vào sistema Điều khiển tên lửa Falcon 9 là một sistema operativo Theo các nhà phát triển, đơn giản hóa, chạy trên ba bộ xử lý lõi kép kiến ​​trúc x86.

Lưu ý rằng phần mềm bay tên lửa chạy riêng trên các bộ xử lý, nó được lập trình bằng một trong những ngôn ngữ lập trình có cấu trúc C / C ++ mạnh mẽ nhất.

Ba bộ xử lý ở Falcon 9

Theo một lời giải thích trong Khám phá không gian StackExchange, lý do tại sao Falcon 9 Nó có ba bộ xử lý, đó là vì công ty sử dụng một sistema Diễn viên-giám khảo với ý định cung cấp ba dự phòng trong tên lửa và tàu vũ trụ.

Ví dụ: phần mềm chuyến bay được lập trình trong C ++ và áp dụng điều này sistema, có nghĩa là cho mỗi tính toán hoặc quyết định, “Chuỗi chuyến bay” So sánh kết quả từ cả hai lõi. Nếu có sự không nhất quán, chuỗi là xấu và không gửi lệnh.

Mặt khác, nếu cả hai lõi trả về cùng một phản hồi cho chuỗi chuyến bay này, nó sẽ gửi lệnh bay tới vi điều khiển điều khiển động cơ và vây trong mạng.

Để làm cho vấn đề tồi tệ hơn, phi hành đoàn Dragon cũng chạy Linux và các chương trình bay của nó cũng được mã hóa C ++. Màn hình cảm ứng tên lửa được xử lý bằng Chromium và JavaScript và cho phép các phi hành gia điều khiển tàu vũ trụ bằng các nút vật lý trong trường hợp khẩn cấp.

Do nhân Linux mạnh hơn nhiều so với các hệ điều hành khác và an toàn hơn nhiều, nên nó được sử dụng cho các hệ thống máy tính phức tạp, trên thực tế các phi hành gia thường sử dụng các phần mềm như Debian Linux, Science Linux trên các máy tính mạnh.

Như chúng ta thấy, Linux không nghi ngờ gì nữa sistema operativo Không thể thiếu hơn nhiều so với một số người có thể nghĩ, mặc dù đây là một phần mềm hiện không có nhiều tiện ích ở cấp độ thương mại, nhưng nó thực sự có tiềm năng lớn ở cấp độ khoa học.