MATLAB® および Simulink® を利用すると、航空宇宙エンジニアは開発プロセスをスピードアップし、チーム間のコミュニケーションを改善することができます。MATLAB および Simulink を使用することで、システムおよびサブシステムのエンジニアが実現できる内容は以下の通りです。
- 時間領域における要求ベースのミッションの妥当性確認
- 複数の分野にまたがる宇宙船モデルを使用したシステムレベルのモンテカルロ シミュレーションの実行
- 宇宙船のサイズやハードウェアを選択する上で使用するトレード研究の実施
- 宇宙船のテレメトリー (遠隔測定) およびペイロード(積載量)データの解析
- 詳細な誘導、ナビゲーション、および制御 (GNC) アルゴリズムの設計
- 光発電 (PV) 電力サブシステムのモデル化およびパワー エレクトロニクス コンポーネントの設計
- RF およびデジタル コミュニケーション サブシステムの解析および FPGA へのアルゴリズムの展開
- スペース業界標準に基づいた組み込み C コードと C++ コードの生成
- 飛行ソフトウェアの検証と妥当性確認の実行
「MATLAB と Simulink は、当社が検討していた他の商品と比べて、およそ 90% のコスト削減が可能でした。また、弊社独自のモジュールを開発する際のコーディングの柔軟性が高まり、さまざまな仮定を完全に理解できるようになります。この点は、他のチームに結果を報告する上で非常に重要なのです。」
Patrick Harvey, Virgin Orbit
スペースシステム向け MATLAB および Simulink の使用
誘導、ナビゲーション、および制御 (GNC)
制御エンジニアは MATLAB と Simulink を使用して、実装前にプラントモデルで制御アルゴリズムをテストすることで、高価なプロトタイプを使用することなく複雑な設計を実現しています。これらの製品により、衛星の共通バス アーキテクチャ設計など、複数の物理構成の設計が可能になります。単一環境において、以下を実行することができます。
- GNC モデルの構築と共有
- 制御と機械設計の変更によるシステムレベルの影響の統合とシミュレーション
- 自動生成されたフライトコードとテストケースの再利用
- 新しい設計と、レガシー設計およびツールとの統合
電力システム
電力システムのエンジニアは、ミッションごとの電力プロファイルを解析するためのシミュレーション、バッテリー経年劣化がシステムに与える影響の予測、DC-DC コンバーターを含む電気部品の詳細な設計といったタスクに MATLAB と Simulink を使用しています。
エンジニアは用意されたブロックを使用するか、設計において必要な場合は、カスタムのブロックを作成して、太陽電池や電圧レギュレーターなどの電動化を素早く行うことができます。また、低レベルのコードを書かずにモデルをシミュレーションして基になる複雑な方程式を解き、結果を即時に視覚化することも可能です。さらに、モデルに熱や姿勢による効果を含めることができ、同一環境下でマルチドメイン シミュレーションを実行することができます。
通信システム
通信システムのエンジニアは、宇宙船の通信システムを開発、解析、および実装するための共通の設計環境として MATLAB と Simulink を使用しています。MATLAB と Simulink は RF、アンテナ、デジタル要素など、シグナルチェーン要素のプロトタイピングに使用でき、複数のチームの成果物をシステムレベルで実行可能なモデルとして組み合わせることもできます。
エンジニアは、システムレベルの欠陥を素早く検出し、実験では容易に再現できない、what-if シナリオを検証することも可能です。また、設計の成熟度が増してくると、エンジニアは組み込みプロセッサ向けの C コード、または FPGA 向けの HDL コードを自動生成することができます。
システム エンジニアリング
システム エンジニアは MATLAB と Simulink を使用して、動的構造解析を実行しています。実行可能なマルチドメインの宇宙船システムおよび地上システム モデルを要件の検証と妥当性確認に使用し、静的な解析だけでは得ることができない洞察をシステムレベルの挙動およびパフォーマンスから得ます。
また、高レベルの仕様から要件をトレースし、設計における細かい要件の実装を監視して、自動生成のソースコードで要件を追跡できます。テストケースに要件をマッピングすることもでき、テストケースが実行される際に要件のカバレッジを自動測定できます。
さらに、設計に関するドキュメンテーションやテスト向けにカスタマイズされた自動レポートを作成できます。
スペース業界標準を遵守するためのソフトウェア エンジニアリング
航空宇宙関連エンジニアとソフトウェア エンジニアは、さまざまなプロセスを規定する幅広い標準を遵守する必要があります。MATLAB と Simulink を使用することで、エンジニアは NPR 7150.2 (NASA ソフトウェア エンジニアリング要件) や ECSS-E-40 (欧州宇宙標準協会、スペース エンジニアリング ソフトウェア) など、世界中で使用されている標準に準拠することができます。
エンジニアは要求ベースの単体テストを実行し、自動モデリング標準チェックを使用して、飛行ソフトウェア アルゴリズムをそのまま製品実装できるかどうかを確認できます。その後、C および C++ コードをモデルから自動生成し、静的なコード解析、形式的手法、コードレビュー機能を使用して MISRA などの標準に準拠しているかチェックします。
また、ソフトウェアにランタイム エラーがないことを検証し、コード検査を自動化することも可能です。さらに、ソフトウェア設計文書やメトリクス、要件などの手順において認証成果物の生成を自動化することもできます。
詳細
- NASA エイムズ リサーチ センター、月大気ダスト環境探査機 (Lunar Atmosphere Dust Environment Explorer) 向け飛行ソフトウェアを開発
- MATLAB および Simulink を使用した NASA ソフトウェア エンジニアリング要件ワークフロー
- MATLAB および Simulink を使用した ECSS スペース エンジニアリング ソフトウェア ワークフロー