NASAはインジェニュイティ火星ロケットでLinuxとオープンソースソフトウェアを使用しました

NASA宇宙機関の代表者らは、Spectrum IEEEとのインタビューで、マーズ2020ミッションの一環として昨日火星への着陸に成功した自律型偵察ヘリコプター「インジェニュイティ」の内部構造の詳細を明らかにした。このプロジェクトの特別な特徴は、スマートフォンの製造に使用されているクアルコムの Snapdragon 801 SoC をベースにした制御ボードの使用でした。 Ingenuity のソフトウェアは、Linux カーネルとオープンソースのフライト ソフトウェアをベースにしています。火星に送られた機器での Linux の使用はこれが初めてであることに注意してください。さらに、オープンソース ソフトウェアと広く入手可能なハードウェア コンポーネントを使用することで、興味のある愛好家が同様のドローンを自分で組み立てることが可能になります。

この決定は、飛行するドローンの制御には、追加の放射線防護を備えた特別に製造されたチップを搭載した火星探査車の制御よりもはるかに多くの計算能力が必要であるという事実によるものです。たとえば、飛行を維持するには、500 秒あたり 30 サイクルで実行される制御ループと XNUMX 秒あたり XNUMX フレームの画像分析が必要です。

Snapdragon 801 SoC (クアッドコア、2.26 GHz、2 GB RAM、32 GB フラッシュ) は、カメラ画像分析に基づくビジュアルナビゲーション、データ管理、処理などの高度な操作を担うコア Linux ベースのシステム環境を強化します。コマンド、テレメトリの生成、および無線通信チャネルの維持を行います。

このプロセッサは、UART インターフェイスを使用して 570 つのマイクロコントローラー (MCU Texas Instruments TMS43LC5x、ARM Cortex-R300F、512 MHz、4 KB RAM、3 MB フラッシュ、UART、SPI、GPIO) に接続され、飛行制御機能を実行します。障害発生時の冗長性のために XNUMX つのマイクロコントローラーが使用され、センサーから同一の情報を受け取ります。アクティブなマイクロコントローラーは XNUMX つだけで、XNUMX つ目は予備として使用され、障害が発生した場合には制御を引き継ぐことができます。 MicroSemi ProASICXNUMXL FPGAは、センサーからマイクロコントローラーへのデータの送信と、ブレードを制御するアクチュエーターとの対話を担当し、障害が発生した場合には予​​備のマイクロコントローラーに切り替わります。

NASAはインジェニュイティ火星ロケットでLinuxとオープンソースソフトウェアを使用しました

このドローンは、機器の中で、SparkFun Electronics のレーザー高度計を使用しています。SparkFun Electronics は、オープンソース ハードウェアを製造し、オープンソース ハードウェア (OSHW) の定義の作成者の 13 つである会社です。その他の代表的なコンポーネントには、スマートフォンで使用されるジンバル スタビライザー (IMU) やビデオ カメラなどがあります。 XNUMX 台の VGA カメラを使用して、フレームごとの比較を通じて位置、方向、速度を追跡します。 XNUMX 台目の XNUMX メガピクセルのカラー カメラは、エリアの写真を撮影するために使用されます。

飛行制御ソフトウェア コンポーネントは、小型および超小型の人工地球衛星 (キューブサット) 用に NASA JPL (ジェット推進研究所) で開発され、オープン プラットフォーム F Prime (F´) の一部として数年間開発されてきました。 Apache 2.0 ライセンス。

F Prime は、飛行制御システムおよび関連する組み込みアプリケーションを迅速に開発するためのツールを提供します。飛行ソフトウェアは、明確に定義されたプログラミング インターフェイスを備えた個別のコンポーネントに分割されています。特殊なコンポーネントに加えて、メッセージ キューやマルチスレッドなどの機能の実装を備えた C++ フレームワークや、コンポーネントを接続してコードを自動的に生成できるモデリング ツールも提供されます。

NASAはインジェニュイティ火星ロケットでLinuxとオープンソースソフトウェアを使用しました


出所: オープンネット.ru

コメントを追加します