このページの本文へ

ここから本文

テクノロジー

技術レポート:アーカイブ

Category:ロケット・宇宙機・人工衛星開発

MATLAB / Simulink によるGNC シミュレータ開発

MATLAB / Simulink によるGNC シミュレータ開発

日本の大型基幹ロケットであるH3ロケットは現在運用中のH-IIAロケットの後継機として開発され、2021年度中の初号機打ち上げを目指している。H3ロケットは、打ち上げコストをH-IIAロケットから大幅に削減することを運用コンセプトとしている。三菱スペース・ソフトウエア株式会社(MSS)では、運用コンセプトの実現に向け、H3ロケットの搭載品である誘導ソフトウェア(GNS:Guidance and Navigation Software)と、運用時に使用する誘導定数自動設定ツール(GCAT:Guidance Constants Auto-configuration Tool)を開発した。本誌では、H3用に開発した誘導ソフトウェアの概要と、運用コンセプト実現のために開発した地上ソフトウェアについて紹介する。

MATLAB / Simulink によるGNC シミュレータ開発[PDFファイル]

参考情報:

  • この技術レポートは、当社が展開する宇宙・通信事業のロケット・宇宙機・人工衛星開発ソリューションに係る技術について著述されたものです。
  • ロケット・宇宙機・人工衛星開発ソリューションは、つくば事業所鎌倉事業所が提供しています。
1 MSS 技報・Vol.32
MATLAB / Simulink によるGNC シミュレータ開発
GNC(Guidance Navigation Control)Simulator of MATLAB/Simulink
椋本 佳宏*Yoshihiro Mukumoto
モデルベース開発は、近年、宇宙制御システム分野でも導入され始めている。宇宙機の航法誘導制御システムのモデルベース開発には、シミュレーション可能な「モデル」で作られたGNC(GuidanceNavigation Control)シミュレータが必要となる。三菱スペース・ソフトウエア株式会社では、MATLAB / Simulink によるGNC シミュレータの開発に取り組んでおり、その計画と現在の成果を紹介する。
In recent years, Model–Based Development has begun to be applied to space control systems.Model–Based Development of Spacecraft GNC(Guidance Navigation Control)system requiresGNC simulator made with “model” that can be simulated. We are working on the developmentof GNC simulator on the MATLAB/Simulink platform. This paper introduces our plan and currentachievement.
*鎌倉事業部 宇宙第三技術部
1.まえがき
1.1 モデルベース開発の概要と利点モデルベース開発は、自動車制御システム分野で長年導入されている開発手法であり⑴、近年、宇宙制御システム分野でも導入され始めている。モデルベース開発では、ソフトウェアで仮想化した「モデル」を用いて開発を進める。「モデル」はシミュレーション可能であり、設計の妥当性をシミュレーションによって確認することができる。大規模な制御システムでは、各ソフトウェア及びハードウェアの製造が完了しないと、全体として動作しないため、全体動作の妥当性確認が後工程になってしまう手戻りリスクがあることが課題である。モデルベース開発では、各ソフトウェア及びハードウェアの「モデル」を作ることにより全体動作の妥当性確認を設計段階で行うことができるのが大きな利点である。また、シミュレーション可能とするため、「モデル」はデータ入力/変換処理/データ出力を厳密に定義している。これらの定義は、そのまま設計情報となり、テキストベースの設計書に比べ曖昧性が無い。さらに、データ入力/変換処理/データ出力が厳密に定義されていることから、「モデル」から自動コーディングする技術も構築されている。そのため、ハンドコーディングの作業工数削減や人的ミスの排除が可能であり、設計とソフトウェアコードがシームレスに繋がり、一貫性を確保しやすい点も、もう1つの大きな利点である。モデルベース開発の概要と利点を図1にまとめる。従来のウォータフォール型開発とモデルベース開発の比較を図2に示す。図2に示すとおり、「モデル」を用いたシミュレーション検証を前工程で何度も行うことによって、後工程での問題発生による手戻りリスクを低減することができる。モデルベース開発を行う上で、数多くの企業が採用しているソフトウェアアプリケーションがTheモデルベース開発の概要シミュレーション可能な「モデル」を用いた開発手法である。モデルベース開発の利点 「モデル」を用いたシミュレーションにより設計段階で妥当性確認ができる(手戻りリスクの排除)。 データ入力/変換処理/データ出力が厳密に定義された「モデル」からの自動コーディングにより、設計とソフトウェアコードの一貫性を確保しやすい(曖昧性、人的ミスの排除)。図1 モデルベース開発の概要と利点2 MSS 技報・Vol.32MathWorks 社のMATLAB / Simulink である。本稿で紹介するGNC シミュレータもMATLAB / Simulink を用いている。1.2 海外導入事例と国内動向前述のとおり、近年、宇宙制御システム分野でもモデルベース開発の導入が始まっており、海外では、TheMathWorks 社のホームページに導入事例(アメリカ航空宇宙局(NASA)、欧州宇宙機関(ESA)等)が数多く紹介されている⑵。国内では、国立研究開発法人宇宙航空開発研究機構が導入に向けて、先行研究⑶を行ったり、宇宙機ソフトウェア開発標準の2021 年3月改訂⑷でモデルベースに関する要件を追加したりと、導入に向けた動きはあるものの、実用化された例は報告されていない。1.3 GNC シミュレータの必要性利点の大きいモデルベース開発だが、国内の宇宙制御システム分野において、導入が進んでいない要因として、「モデル」を用いたシミュレータを構築するのに、少なくない工数が必要である点が挙げられる。モデルベース開発の適用先の有力な候補に、宇宙機の航法誘導制御システム(誘導:Guidance、航法:Navigation、制御:Controlの頭文字を取ってGNC と呼ぶ)があるが、宇宙機GNCシステムの開発には、並進運動/回転運動/センサ/アクチュエータのシミュレーションを行うGNC シミュレータが必要である。主要な国内宇宙機開発企業は、長年にわたって開発維持してきた高性能なGNC シミュレータがあり、それと同等なシミュレータを「モデル」で一から構築するとなるとかなり大きな開発案件となる。この新しいGNC シミュレータの開発コストが、モデルベース開発導入のボトルネックとなっているのが現状である。しかしながら、既存の高性能なシミュレータと同等のシミュレータを簡単に開発する夢のような方法は無く、必要なコストをかけながら、計画的に開発していくしか無い。筆者の所属する鎌倉事業部宇宙第三技術部でも、GNCシミュレータの開発計画を立て、開発を始めている。ただし、いきなり大きなコストをかけることはせず、シンプルな機能の開発からスタートし、ノウハウを獲得しながら、機能を拡充していく開発方針である。本稿では、現在開発中のGNC シミュレータの開発方針と計画、概要と進捗、シミュレーション例、今後の展望を報告する。2.GNC シミュレータ開発方針と計画本稿で紹介するGNC シミュレータの開発方針と開発計画を図3に示す。従来のウォータフォール開発の流れ要求分析システム設計サブシステム設計ソフトウェア設計ソフトウェア製造ソフトウェア試験サブシステム試験システム試験適格性試験モデルベース開発の流れソフトウェア製造ソフトウェア試験サブシステム試験システム試験要求分析 適格性試験システム設計サブシステム設計ソフトウェア設計モデルによって何度も検証図2 従来開発とモデルベース開発の比較GNC シミュレータの開発方針シンプルな機能から開発し、ノウハウを獲得しながら、徐々に機能拡充を行う。GNC シミュレータの開発計画【STEP1】簡易な並進/回転運動モデル、簡易な誘導/制御機能モデルを具備し、クローズドループの制御シミュレーションが行えるGNC シミュレータを開発する。【STEP2】汎用的なセンサ/アクチュエータモデル(誤差モデル含む)、簡易な航法機能モデルを具備したGNC シミュレータを開発する。【STEP3】STEP1、2で開発した各モデルを高性能化し、実際の宇宙機航法誘導制御システム開発に適用できるGNC シミュレータを開発する。図3 GNC シミュレータの開発方針と開発計画3 MSS 技報・Vol.323.GNC シミュレータ概要と進捗GNC シミュレータの概念図を図4に示す。GNC シミュレータは、上段の宇宙機ソフトウェアモデルと下段の宇宙機ハードウェア/環境モデルの2つに分けられ、クローズドループを構成している。宇宙機ソフトウェアモデルには、シーケンス管理機能モデル、航法機能モデル、誘導機能モデル、制御機能モデル、I/F 機能モデルがある。シーケンス管理機能は、シーケンスに応じた各機能の状態を制御する。センサモデルから入力した情報はI/F 機能モデルを通して、航法誘導制御機能モデルにて処理され、I/F 機能モデルを通して、アクチュエータモデルへ指令を出力する。宇宙機ハードウェア/環境モデルにはセンサモデル、アクチュエータモデル、機体モデル、運動モデルがある。宇宙機ソフトウェアモデルからの指令をアクチュエータモデルで処理し、機体モデル、運動モデルにて状態量を更新し、センサモデルを通して、宇宙機ソフトウェアモデルに返す流れである。また、図5に開発中のGNC シミュレータのSimulinkブロック図を示す。現時点で、開発計画STEP 1まで進んでおり、クローズドループの制御シミュレーションが可能な状態である。宇宙機ハードウェア/環境モデル宇宙機ソフトウェアモデル誘導機能モデル制御機能モデル航法機能モデルシーケンス管理機能モデルI/F 機能モデルI/F 機能モデルアクチュエータモデルセンサモデル運動モデル機体モデル図4 GNC シミュレータ概念図運動モデル(並進)機体モデル(推薬消費)※各モデルの内部はさらに詳細なSimulink モデルとなっている。シーケンス管理機能モデル運動モデル(回転)制御機能モデル(回転)誘導機能モデル(並進)図5 開発中のGNC シミュレータ4 MSS 技報・Vol.324.GNC シミュレーション例前述のとおり、開発したGNC シミュレータはクローズドループの制御シミュレーションが可能である。宇宙機の運動が分かりやすい例として、月着陸機のシミュレーション結果を紹介する。図6に月着陸機の軌道外観を示す。シミュレーション開始時点では、円軌道で月を周回しているが、減速噴射を行うことによって、楕円軌道に移行する。楕円軌道の近月点から、更に減速噴射を行い、月表面に着陸するシミュレーションとなっている。図7に月着陸機の位置/速度を示す。月周回中は正弦波となっていた位置/速度が、着陸時には、位置は特定の位置で停止し、速度はゼロになっている。図8に対地高度と速度ノルムを示す。本シミュレーションでは、最終的に、対地高度約2[km] で静止しており、速度ノルムはゼロとなっている。また、月着陸機の姿勢を図9に、姿勢制御誤差を図10に示す。全体を通して、姿勢角速度誤差、姿勢角誤差が小さい範囲内で制御されていることが分かる。なお、着陸直前は、目標姿勢が急激に変化するため、月周回中に図6 月着陸機の軌道外観 比べて誤差が増大している様子が分かる。図7 月着陸機の位置/速度図8 月着陸機の対地高度/速度図9 月着陸機の姿勢図10 月着陸機の姿勢制御誤差5 MSS 技報・Vol.325.今後の展望現在、開発計画STEP 1が完了したところであり、今後は、計画どおりSTEP 2の開発を進めていく。前述のとおり、STEP 2はセンサ/アクチュエータモデル(誤差モデル含む)、簡易な航法機能モデルを開発する計画である。STEP 2は開発するモデルがSTEP 1に比べて多いが、STEP 1で基礎的なノウハウが獲得できたので、STEP 1と同じ1年半程度の開発期間を見込んでいる。その後、STEP 3で各モデルの高性能化を行うことになる。STEP 3は、STEP 1、2と比べて開発規模が大きくなるため、STEP 1、2でモデルベース開発のノウハウを十分蓄積することが重要と考えている。そのため、モデルの解説書や、MATLAB / Simulink 操作のガイドライン等をまとめている。STEP 3が完了すると、実際の宇宙機GNC システムの開発に適用できる段階となる。1章で述べたとおり、GNC シミュレータを用いた設計段階での妥当性確認の実施、自動コーディングによる設計とソフトウェアコードの一貫性の確保によって、手戻りリスクの少ない、高品質な宇宙機GNC システムのモデルベース開発が行えるようになる。6.むすび本稿では、鎌倉事業部宇宙第三技術部が開発しているMATLAB / Simulink を用いたGNC シミュレータについて、開発方針と計画、概要と進捗、シミュレーション例、今後の展望を紹介した。今後の展望で述べたとおり、開発計画を進め、実際の宇宙機GNCシステム開発への適用を目指す。本稿で紹介したGNC シミュレータが、国内の宇宙機GNC システム開発におけるモデルベース開発導入の一助となるよう、引き続き技術力向上に努める所存である。参考文献(1) 大畠 明:JMAAB(Japan MATLAB AutomotiveAdvisory Board)の活動 ~モデルベース開発技術の推進と人材育成~,第14回組込みシステム開発技術展(2011)https://www.ipa.go.jp/files/000003976.pdf(2) The MathWorks,Inc.:Model–Based Design forSpace Control Systems(2021)https://jp.mathworks.com/content/dam/mathworks/whitepaper/mbd-for-space-controls-white-paper.pdf(3) 宇宙航空研究開発機構 研究開発部門 第三研究ユニット:複合物理モデルによるシミュレーション技術https://stage.tksc.jaxa.jp/jedi/sysd/index.html#title2(4) 宇宙航空研究開発機構:JAXA 共通技術文書 宇宙機ソフトウェア開発標準B 改訂,JERG–2–610(2021)https://sma.jaxa.jp/TechDoc/Docs/JAXA-JERG-2-610B.pdfMATLAB / Simulink は、The MathWorks 社の登録商標です。執筆者紹介椋本 佳宏2010 年入社。鎌倉事業部へ配属。現在まで、主に人工衛星の姿勢軌道制御系開発及び宇宙機の航法誘導制御系開発に従事。