【新規性喪失の例外の表示】特許法第30条第2項適用 平成28年9月6日一般社団法人日本航空宇宙学会発行の第60回宇宙科学技術連合講演会講演集(DVD−ROM)において「論文番号JSASS−2016−4548、4A12 ロケットの飛行安全管制システムの高度化開発」として公開
【新規性喪失の例外の表示】特許法第30条第2項適用 平成28年9月6日一般社団法人日本航空宇宙学会発行の第60回宇宙科学技術連合講演会講演集(DVD−ROM)において「論文番号JSASS−2016−4549、4A13 基幹ロケット高度化 航法センサRINA開発」として公開
【新規性喪失の例外の表示】特許法第30条第2項適用 平成28年9月9日函館アリーナにおいて開催された第60回宇宙科学技術連合講演会で「講演番号4A12(ロケットの飛行安全管制システムの高度化開発)」として発表
【新規性喪失の例外の表示】特許法第30条第2項適用 平成28年9月9日函館アリーナにおいて開催された第60回宇宙科学技術連合講演会で「講演番号4A13(基幹ロケット高度化 航法センサRINA開発)」として発表
(58)【調査した分野】(Int.Cl.,DB名)
【発明を実施するための形態】
【0012】
以下、図面を参照し、本発明の飛行体用航法装置の実施形態について説明する。飛行体用航法装置は、ロケットや人工衛星、宇宙探査機などの飛行体に搭載される装置である。以下、飛行体は、一例として、ロケットであるものとして説明するが、上述したように人工衛星や宇宙探査機であってもよい。飛行体の一例であるロケットは、例えば多段ロケットであり、最上段には、人工衛星を格納し、それ以下の段は、最上段を切り離した後、海などに着水し、或いは地上に着地する。以下、このような装置の構成および機能について段階的に開示する。
【0013】
[飛行体用航法装置]
図1は、飛行体用航法装置100の構成図である。飛行体用航法装置100は、一以上のアンテナATと、通信装置TMとに接続される。飛行体用航法装置100は、例えば、電波航法測位モジュール110と、IMU(Inertial Measurement Unit;慣性計測装置)120と、航法計算モジュール130と、電源モジュール140とを備える。
【0014】
アンテナATは、外部から電波を受信し、受信した電波に応じた信号(以下、衛星測位信号と称する)をLNA(Low Noise Amplifier)に出力する。LNAは、アンテナATから入力された衛星測位信号を増幅する。
【0015】
電波航法測位モジュール110は、LNAにより増幅された衛星測位信号に基づいて、ロケットの位置および速度を導出する。
【0016】
IMU120は、例えば、MEMS(Micro Electro Mechanical Systems)や光ファイバによって構成される三軸式加速度センサ、および三軸式ジャイロセンサを含む。IMU120は、これらのセンサによって検出された値(水平方向、垂直方向、奥行き方向の各加速度、およびピッチ、ロール、ヨーの各レートなど)を航法計算モジュール130に出力する。IMU120は、「検出装置」の一例である。
【0017】
航法計算モジュール130は、IMU120により検出された検出値に基づいて、ロケットの位置および速度を導出する。また、航法計算モジュール130は、電波航法測位モジュール110により導出された位置および速度と、IMU120による検出結果を用いて導出した位置および速度とを統合してロケットの位置および速度を導出する。
【0018】
電源モジュール140は、図示しない電源装置に接続される。電源モジュール140は、例えば、保護回路とDC−DCコンバータを備え、飛行体用航法装置100の各部に電力を供給する。
【0019】
通信装置TMは、例えば、テレメータ回線を利用して情報を地上監視装置(不図示)に送信する。地上監視装置は、例えば、ロケットが発射された(飛び立った)後のロケットの位置および速度を、テレメトリ通信によってロケットから取得する。そして、地上監視装置は、仮にロケットが落下した場合の落下地点を繰り返し推定し、落下による危険を回避するようにロケットに指示信号を送信する
。通信装置TMは、「送信部」の一例である。
【0020】
[電波航法測位モジュール]
図2は、電波航法測位モジュール110の構成図である。電波航法測位モジュール110は、例えば、測位側インターフェース112と、測位側MPU114aと、測位側FPGA(Field-Programmable Gate Array)114bと、MPU側記憶部116aと、FPGA側記憶部116bとを備える。測位側FPGA114bは、測位側MPU114aの放射線耐性よりも高い放射線耐性を有し、FPGA側記憶部116bは、MPU側記憶部116aの放射線耐性よりも高い放射線耐性を有する。「放射線耐性を有する」とは、例えば、半導体の空乏層のギャップ幅を大きくしたり、基板上での配線同士の間隔を広くしたりするなどの処理を施すことで、これらの構成要素を実現するハードウェアに放射線に対する耐性を持たせることである。
【0021】
アンテナATからの衛星測位信号は、LNAによって増幅されて測位側インターフェース112に入力される。測位側インターフェース112は、例えば、RF(Radio Frequency)インターフェースであり、FPGAにより実現される。なお、測位側インターフェース112は、測位側FPGA114bと別体であってもよいし、一体であってもよい。
【0022】
[電波航法測位モジュールのMPU]
測位側MPU114aは、アンテナATにより4つ以上の人工衛星から受信された電波の其々に応じた衛星測位信号に基づいて、人工衛星との相対距離(シュートレンジ)を求めることでロケットの位置を算出する。以下、この処理を「位置測位」と称する。なお、人工衛星は、準天頂衛星を含み、電波航法測位モジュール110は、準天頂衛星に対応した処理を行うことが可能であると好適である。
【0023】
また、測位側MPU114aは、アンテナATにより4つ以上の人工衛星から受信された電波のドップラーシフトに基づいて、人工衛星との相対速度をそれぞれ求め、衛星からの電波から導出される人工衛星の位置から相対速度ベクトルを算出する。そして、測位側MPU114aは、人工衛星の速度に基づいて、算出した相対速度ベクトルを修正し、修正した複数の相対速度ベクトルを合成して、ロケットの速度(速さおよび向きを含むベクトル)を算出する。以下、この処理を「ドップラー測位」と称する。
【0024】
測位側MPU114aは、位置測位により算出したロケットの位置と、ドップラー測位により算出したロケットの速度とのうち一方または双方を含むデータ(以下、衛星測位データと称する)を、測位側FPGA114bに出力する。
【0025】
また、測位側MPU114aは、所定周期(例えば10[Hz])で、後述するFPGA側記憶部116bの第1所定領域にアクセスし、自装置(測位側MPU114a)が起動していることを示す情報(以下、エラーステータス情報と称する)を書き込む。FPGA側記憶部116bの第1所定領域とは、例えば、FPGA側記憶部116bに含まれるレジスタの予め決められた領域である。エラーステータス情報を記憶部に書き込むことは、「所定の処理」の一例である。
【0026】
また、測位側MPU114aは、上述した所定周期またはそれよりも長い周期で、FPGA側記憶部116bの第2所定領域にアクセスし、自装置(測位側MPU114a)が再起動するのに備えて、測位演算の結果であるロケットの位置、速度、またはこれらの途中の演算結果を含む情報(以下、起動時参照情報と称する)を書き込む。FPGA側記憶部116bの第2所定領域とは、例えば、RAM(Random Access Memory)の予め決められた領域である。例えば、測位側MPU114aが書き込む起動時参照情報には、エフェメリス、信号位相または周波数などの情報が含まれる。起動時参照情報は、「再起動時に必要となる情報」の一例である。
【0027】
なお、測位側MPU114aが、エラーステータス情報および起動時参照情報のそれぞれを、FPGA側記憶部116bの所定領域に書き込む処理を行う代わりに、これらの情報を測位側FPGA114bに受け渡すことで(出力することで)、測位側FPGA114bが書き込み処理を行ってもよい。
【0028】
[電波航法測位モジュールのFPGA]
測位側FPGA114bは、FPGA側記憶部116bの第1所定領域(レジスタの予め決められた領域)を監視することで、測位側MPU114aが停止したか否かを判定する。例えば、測位側FPGA114bは、第1所定領域にエラーステータス情報が書き込まれてから、所定期間が経過するまでに新たなエラーステータス情報が書き込まれなかった場合、測位側MPU114aが停止したと判定する。
【0029】
測位側FPGA114bは、測位側MPU114aが停止したと判定した場合、測位側MPU114aを再起動させるための指令信号(以下、リブート信号を称する)を、測位側MPU114aに出力する。「再起動」とは、例えば、対象とするMPUの電源を一度オフ状態にしてから再度オン状態にすること(ハードリブート)であってもよいし、電源をオン状態にしたまま、起動したソフトウェア(プログラム)を一度終了して再度起動させること(ソフトリブート)であってもよい。
【0030】
また、測位側FPGA114bは、測位側MPU114aにより出力された衛星測位データを、FPGA側記憶部116bのRAMなどに記憶させ、所定周期で衛星測位データを読み出して、航法計算モジュール130に出力する。
【0031】
MPU側記憶部116aは、測位側MPU114aに付随する記憶装置である。「付随する」とは、その記憶装置に専らアクセスすることである。例えば、MPU側記憶部116aは、ROM(Read Only Memory)、RAM、EEPROM(Electrically Erasable Programmable Read Only Memory)などにより実現される。また、MPU側記憶部116aは、HDD(Hard Disc Drive)、フラッシュメモリなどにより実現されてもよい。MPU側記憶部116aは、測位側MPU114aが参照するプログラムを記憶する他に、測位側インターフェース112に入力された測位衛星信号や、測位側MPU114aにより導出された各種演算結果(ロケットの位置または速度)などを記憶する。
【0032】
MPU側記憶部116aへの電力の供給は、例えば、測位側MPU114aによって制御される。例えば、測位側MPU114aは、起動している間、電源モジュール140からの電力を、MPU側記憶部116aへと供給する。
【0033】
FPGA側記憶部116bは、測位側FPGA114bに付随する記憶装置である。例えば、FPGA側記憶部116bは、RAM(Random Access Memory)、レジスタにより実現される。例えば、FPGA側記憶部116bのRAMは、衛星測位データや起動時参照情報を記憶し、レジスタは、エラーステータス情報を記憶する。
【0034】
FPGA側記憶部116bへの電力の供給は、例えば、測位側FPGA114bによって制御される。例えば、測位側FPGA114bは、起動している間、電源モジュール140からの電力を、FPGA側記憶部116bへと供給する。
【0035】
[航法計算モジュール]
図3は、航法計算モジュール130の構成図である。航法計算モジュール130は、例えば、航法計算側MPU134aと、航法計算側FPGA134bと、MPU側記憶部136aと、FPGA側記憶部136bとを備える。航法計算側FPGA134bは、航法計算側MPU134aの放射線耐性よりも高い放射線耐性を有し、FPGA側記憶部136bは、MPU側記憶部136aの放射線耐性よりも高い放射線耐性を有する。
【0036】
[航法計算モジュールのMPU]
航法計算側MPU134aは、所定期間において測位側FPGA114bにより出力された衛星測位データに含まれる速度(ドップラー測位により算出されたロケットの速度)を時間積分し、ロケットの位置を算出する。
【0037】
また、航法計算側MPU134aは、IMU120により検出された検出値に基づいて、ロケットの位置および速度を導出する。例えば、航法計算側MPU134aは、IMU120の三軸式加速度センサにより検出された加速度を積分することで速度を算出し、更に、速度を積分することで変位(位置)を算出する。
【0038】
また、航法計算側MPU134aは、IMU120の三軸式加速度センサと三軸式ジャイロセンサにより検出された検出値に基づいて、変位と方角のベクトルを合成することで、より正確な姿勢を算出する。
【0039】
また、航法計算側MPU134aは、IMU120により検出された検出値および衛星測位データに基づいて導出したロケットの位置および速度と、電波航法測位モジュール110により導出されたロケットの位置および速度とを統合し、ロケットの位置および速度を導出する。
【0040】
例えば、航法計算側MPU134aは、例えば、カルマンフィルタを適用することで両者を統合し、ロケットの位置および速度を導出する。このとき、マルチパスの影響などにより、電波航法測位モジュール110がアンテナATで衛星の電波を受信できない状況や、後述する測位側MPU114aが再起動中である状況などを想定して、航法計算側MPU134aは、直前までの電波航法測位モジュール110により導出されたロケットの位置および速度を、IMU120により検出された検出値および衛星測位データに基づいて導出したロケットの位置および速度で補完する。
【0041】
そして、航法計算側MPU134aは、導出したロケットの位置および速度に関する情報を、地上監視装置(遠隔地)に送信するための情報(以下、テレメトリデータと称する)として、航法計算側FPGA134bに出力する。
【0042】
また、航法計算側MPU134aは、所定周期(例えば10[ms])で、FPGA側記憶部136bの第1所定領域(例えばレジスタの予め決められた領域)にアクセスし、自装置(航法計算側MPU134a)が起動していることを示すエラーステータス情報を書き込む。
【0043】
また、航法計算側MPU134aは、上述した所定周期またはそれよりも長い周期で、FPGA側記憶部136bの第2所定領域(例えばRAMの予め決められた領域)にアクセスし、自装置(航法計算側MPU134a)が再起動するのに備えて、種々の演算結果を含む起動時参照情報を書き込む。例えば、航法計算側MPU134aが書き込む起動時参照情報には、姿勢クォータニオンなどの情報が含まれる。
【0044】
なお、エラーステータス情報または起動時参照情報を、FPGA側記憶部116bの所定領域に書き込む処理は、航法計算側MPU134aの代わりに航法計算側FPGA134bが行ってもよい。
【0045】
[航法計算モジュールのFPGA]
航法計算側FPGA134bは、電波航法測位モジュール110により出力された情報を取得し、これを航法計算側MPU134aに出力する。また、航法計算側FPGA134bは、IMU120により出力された検出値を取得し、これを航法計算側MPU134aに出力する。
【0046】
また、航法計算側FPGA134bは、航法計算側MPU134aにより、テレメトリデータとして出力されたロケットの位置および速度に関する情報を、通信装置TMを用いて地上監視装置に送信する。
【0047】
また、航法計算側FPGA134bは、FPGA側記憶部136bの第1所定領域を監視することで、航法計算側MPU134aが停止したか否かを判定する。例えば、航法計算側FPGA134bは、第1所定領域にエラーステータス情報が書き込まれてから、所定期間が経過するまでに新たなエラーステータス情報が書き込まれなかった場合、航法計算側MPU134aが停止したと判定する。
【0048】
航法計算側FPGA134bは、航法計算側MPU134aが停止したと判定した場合、航法計算側MPU134aを再起動させるためのリブート信号を、航法計算側MPU134aに出力する。
【0049】
また、航法計算側FPGA134bは、航法計算側MPU134aを再起動させている間、電波航法測位モジュール110により衛星測位データが出力された場合、衛星測位データを所定のデータフォーマット形式に変換し、この変換したデータをテレメトリデータとして、通信装置TMを用いて地上監視装置に送信する。所定のデータフォーマット形式とは、例えば、シリアル通信フォーマットなどの形式である。
【0050】
MPU側記憶部136aは、航法計算側MPU134aに付随する記憶装置である。例えば、MPU側記憶部136aは、ROM、RAM、EEPROMなどにより実現される。また、MPU側記憶部136aは、HDD、フラッシュメモリなどにより実現されてもよい。MPU側記憶部136aは、航法計算側MPU134aが参照するプログラムを記憶する他に、航法計算側MPU134aによる処理結果などを記憶する。
【0051】
MPU側記憶部136aへの電力の供給は、例えば、航法計算側MPU134aによって制御される。例えば、航法計算側MPU134aは、起動している間、電源モジュール140からの電力を、MPU側記憶部136aへと供給する。
【0052】
FPGA側記憶部136bは、航法計算側FPGA134bに付随する記憶装置である。例えば、FPGA側記憶部136bは、RAM、レジスタにより実現される。例えば、FPGA側記憶部136bのRAMは、電波航法測位モジュール110により出力された衛星測位データや、航法計算側MPU134aにより出力されたテレメトリデータなどを記憶し、レジスタは、エラーステータス情報を記憶する。
【0053】
FPGA側記憶部136bへの電力の供給は、例えば、航法計算側FPGA134bによって制御される。例えば、航法計算側FPGA134bは、起動している間、電源モジュール140からの電力を、FPGA側記憶部136bへと供給する。
【0054】
[処理フロー]
以下、各モジュールの処理について説明する。
図4は、電波航法測位モジュール110のMPUである測位側MPU114aによる一連の処理の一例を示すフローチャートである。本フローチャートの処理は、例えば、所定周期で繰り返し行われる。以下、図中において「MDL」は、モジュールを示すものとする。
【0055】
まず、測位側MPU114aは、測位側インターフェース112から衛星測位信号が入力されるまで待機し(ステップS100)、衛星測位信号が入力されると、測位演算処理を開始する(ステップS102)。測位演算処理とは、上述した位置測位およびドップラー測位のうち一方または双方を行うことである。測位演算処理は、「航法処理」の一例である。
【0056】
次に、測位側MPU114aは、測位演算処理により求めた衛星測位データ(図中A)を、測位側FPGA114bに出力する(ステップS104)。
【0057】
次に、測位側MPU114aは、所定期間(所定周期に応じたある期間)が経過したか否かを判定し(ステップS106)、所定期間が経過した場合、FPGA側記憶部116bの第1所定領域(レジスタ)にアクセスし、エラーステータス情報を書き込むと共に(ステップS108)、FPGA側記憶部116bの第2所定領域(RAM)にアクセスし、測位演算処理結果の一部の情報として、エフェメリス、信号位相または周波数などの情報を含む起動時参照情報を書き込む(ステップS110)。なお、エラーステータス情報の書き込みと起動時参照情報の書き込みは、それぞれ異なるタイミングで行われてもよい。これによって、本フローチャートの処理が終了する。
【0058】
図5は、電波航法測位モジュール110のFPGAである測位側FPGA114bによる一連の処理の一例を示すフローチャートである。本フローチャートの処理は、例えば、所定周期で繰り返し行われる。
【0059】
まず、測位側FPGA114bは、測位側MPU114から衛星測位データ(図中A)が入力されるまで待機し(ステップS200)、衛星測位データが入力されると、これを例えばFPGA側記憶部116bのRAMに記憶させる(ステップS202)。
【0060】
次に、測位側FPGA114bは、FPGA側記憶部116bのRAMから衛星測位データ(図中B)を所定周期で読み出して、これを航法計算モジュール130に出力する(ステップS204)。これによって、本フローチャートの処理が終了する。
【0061】
図6は、航法計算モジュール130のFPGAである航法計算側FPGA134bによる一連の処理の一例を示すフローチャートである。本フローチャートの処理は、例えば、所定周期で繰り返し行われる。
【0062】
まず、航法計算側FPGA134bは、電波航法測位モジュール110から衛星測位データ(図中B)が入力されるまで待機し(ステップS300)、衛星測位データが入力されると、これを例えばFPGA側記憶部136bのRAMに記憶させる(ステップS302)。
【0063】
次に、航法計算側FPGA134bは、所定周期でFPGA側記憶部136bのRAMから衛星測位データ(図中C)を読み出して、これを航法計算側MPU134aに出力する(ステップS304)。
【0064】
次に、航法計算側FPGA134bは、航法計算側MPU134aからテレメトリデータ(図中D)が入力されたか否かを判定し(ステップS306)、テレメトリデータが入力されると、これを例えばFPGA側記憶部136bのRAMに記憶させる(ステップS308)。
【0065】
次に、航法計算側FPGA134bは、所定周期でFPGA側記憶部136bのRAMからテレメトリデータを読み出し、通信装置TMを用いて、読み出したテレメトリデータを地上監視装置に送信する(ステップS310)。これによって、本フローチャートの処理が終了する。
【0066】
図7は、航法計算モジュール130のMPUである航法計算側MPU134aによる一連の処理の一例を示すフローチャートである。本フローチャートの処理は、例えば、所定周期で繰り返し行われる。
【0067】
まず、航法計算側MPU134aは、航法計算側FPGA134bから衛星測位データ(図中C)が入力されたか否かを判定し(ステップS400)、衛星測位データが入力されると、航法計算処理を開始する(ステップS402)。航法計算処理とは、上述した、(1)IMU120により検出された検出値に基づいて、ロケットの位置および速度を導出する処理、(2)衛星測位データに含まれる速度を時間積分することによりロケットの位置を導出する処理、(3)IMU120の検出値および衛星測位データに基づいて導出したロケットの位置および速度と、電波航法測位モジュール110により導出されたロケットの位置および速度とを統合する処理、のうち一部または全部を行うことである。航法計算処理は、「航法処理」の他の例である。
【0068】
次に、航法計算側MPU134aは、航法計算処理の結果(ロケットの位置および速度に関する情報)を(図中D)、テレメトリデータとして航法計算側FPGA134bに出力する(ステップS404)。
【0069】
次に、航法計算側MPU134aは、所定期間(所定周期に応じたある期間)が経過したか否かを判定し(ステップS406)、所定期間が経過した場合、FPGA側記憶部136bの第1所定領域(レジスタ)にアクセスし、エラーステータス情報を書き込む(ステップS408)と共に、FPGA側記憶部136bの第2所定領域(RAM)にアクセスし、航法計算処理結果の一部の情報として、姿勢クォータニオンなどの情報を含む起動時参照情報を書き込む(ステップS410)。なお、エラーステータス情報の書き込みと起動時参照情報の書き込みは、それぞれ異なるタイミングで行われてもよい。
【0070】
図8は、電波航法測位モジュール110および航法計算モジュール130による処理の流れを模式的に示す図である。図示のように、電波航法測位モジュール110のMPUである測位側MPU114aから、電波航法測位モジュール110のFPGAである測位側FPGA114bに対して、衛星測位データが出力される(図中A)。測位側FPGA114bは、衛星測位データを、所定周期(例えば10[Hz])で航法計算モジュール130のFPGAである航法計算側FPGA134bに出力する(図中B)。
【0071】
航法計算モジュール130のFPGAである航法計算側FPGA134bは、電波航法測位モジュール110から入力された衛星測位データを、航法計算モジュール130のMPUである航法計算側MPU134aに出力する(図中C)。
【0072】
航法計算側MPU134aは、航法計算側FPGA134bにより出力された衛星測位データと、IMU120により検出された検出値に基づいて、ロケットの位置および速度を導出し、この導出結果を、テレメトリデータとして航法計算側FPGA134bに出力する(図中D)。
【0073】
航法計算側FPGA134bは、航法計算側MPU134aにより出力されたテレメトリデータを、通信装置TMを用いて地上監視装置に送信する。
【0074】
また、測位側MPU114aは、定期的に、測位側FPGA114bに付随し、測位側FPGA114bが専らアクセスするFPGA側記憶部116bにエラーステータス情報を書き込む(図中X)。
【0075】
また、航法計算側MPU134aは、定期的に、航法計算側FPGA134bに付随し、航法計算側FPGA134bが専らアクセスするFPGA側記憶部136bにエラーステータス情報を書き込む(図中Y)。
【0076】
エラーステータス情報の書き込みに応じて、各記憶部の付随元であるFPGAは、MPUの停止の有無を判定する判定処理を行う。
【0077】
図9は、測位側FPGA114bおよび航法計算側FPGA134bにより行われるMPUの停止判定処理を示すフローチャートである。本フローチャートの処理は、各FPGA側記憶部を監視して、各MPUが停止しているかどうかを判定する処理である。このフローチャートは、例えば、所定周期で繰り返し行われる。以下、測位側FPGA114bを例にして説明するが、航法計算側FPGA134bについても同様の処理を行ってよい。
【0078】
まず、測位側FPGA114bは、FPGA側記憶部116bの第1所定領域(航法計算側FPGA134bの場合、FPGA側記憶部136bの第1所定領域)にエラーステータス情報が書き込まれたか否かを判定し(ステップS500)、エラーステータス情報が書き込まれなかった場合、所定時間が経過したか否かを判定する(ステップS502)。
【0079】
エラーステータス情報が書き込まれずに、所定時間が経過した場合、測位側FPGA114bは、測位側MPU114aが停止したと判定する(ステップS504)。例えば、測位側MPU114aおよび航法計算側MPU134aは、測位側FPGA114bおよび航法計算側FPGA134bと比べて放射線耐性が低い。そのため、ロケットが打ち上げられて上空に近づくほど放射線の影響を受けやすくなり、シングルイベントが発生しやすくなる。シングルイベントが生じて各MPUが停止した場合、エラーステータス情報の更新が途絶える。従って、上述したように、各FPGAは、エラーステータス情報の書き込みを監視して、ある一定時間以上エラーステータス情報の更新がなければ、測位側MPU114aが停止したと判定する。
【0080】
測位側FPGA114bは、測位側MPU114aが停止したと判定した場合、測位側MPU114aを再起動させるためのリブート信号を出力する(ステップS506)。これによって、停止したと判定されたMPU(停止した蓋然性(可能性)の高いMPU)が再起動される。
【0081】
各MPUが停止した場合、再起動して復帰するまでの間、各MPUによる処理が一時停止される。そのため、MPUが停止していない側のモジュールは、それぞれ以下の処理を行う。
【0082】
[電波航法測位モジュール側MPUが停止時の航法計算モジュールの処理フロー]
図10は、電波航法測位モジュール側MPUが停止したときの航法計算側MPU134aによる処理の一例を示すフローチャートである。
【0083】
まず、航法計算側MPU134aは、航法計算側FPGA134bを介して、電波航法測位モジュール110から衛星測位データを受信したか否かを判定し(ステップS600)、衛星測位データを受信していなければ、さらに、所定時間が経過したか否かを判定する(ステップS602)。
【0084】
衛星測位データを受信せず、所定時間が経過した場合、航法計算側MPU134aは、電波航法測位モジュール側MPU(測位側MPU114a)が停止中であると判定する(ステップS604)。
【0085】
次に、航法計算側MPU134aは、IMU120の検出値および衛星測位データに基づいて導出したロケットの位置および速度と、電波航法測位モジュール110により導出されたロケットの位置および速度とを統合する際に用いるカルマンフィルタの観測値の更新を停止する(ステップS606)。観測値とは、IMU120の検出値および衛星測位データに基づいて導出したロケットの位置および速度と、電波航法測位モジュール110により導出されたロケットの位置および速度との誤差(すなわち位置誤差と速度誤差)である。これにより、位置および速度の統合が中止される。なお、カルマンフィルタの観測値の更新は、測位側MPU114aが再起動したのに応じて、再開されてよい。
【0086】
次に、航法計算側MPU134aは、位置および速度の統合を中止した状態で航法計算処理を開始する(ステップS608)。すなわち、航法計算側MPU134aは、電波航法測位モジュール110により導出されたロケットの位置および速度を利用せずに、IMU120の検出値に基づいて導出したロケットの位置および速度に関する情報を、テレメトリデータとして航法計算側FPGA134bに出力する(ステップS610)。これによって、電波航法測位モジュール110側のMPUが停止した場合であっても、停止していない航法計算モジュール130側のMPUだけでロケットの位置および速度を導出し続けることができる。
【0087】
図11は、電波航法測位モジュール110側MPUが停止したときの各モジュールによる処理の流れを模式的に示す図である。図示の例のように、FPGA側記憶部116bのレジスタに所定時間以上エラーステータス情報が書き込まれなかった場合、測位側FPGA114bは、測位側MPU114aが停止したと判定した場合、測位側MPU114aを再起動させるためのリブート信号を、測位側MPU114aに出力する(図中R)。これによって、電波航法測位モジュール110側MPUが再起動される。
【0088】
電波航法測位モジュール110側MPUが再起動される間、電波航法測位モジュール110から航法計算モジュール130に対して衛星測位データが出力されなくなる。この場合、航法計算側MPU134aは、速度および位置の統合処理を行わずに、IMU120の検出値に基づいて導出したロケットの位置および速度に関する情報を、テレメトリデータとして航法計算側FPGA134bに出力する(図中D)。
【0089】
この際、航法計算側MPU134aは、定期的に、航法計算側FPGA134bに付随し、航法計算側FPGA134bが専らアクセスするFPGA側記憶部136bに対して、エラーステータス情報を書き込むことで(図中Y)、自機が停止していないことを航法計算側FPGA134bに通知してよい。
【0090】
航法計算側FPGA134bは、航法計算側MPU134aにより出力されたテレメトリデータ、すなわち、IMU120の検出値に基づいて導出したロケットの位置および速度に関する情報を、通信装置TMを用いて地上監視装置に送信する。
【0091】
[航法計算モジュール側MPUが停止時の航法計算モジュールの処理フロー]
図12は、航法計算モジュール側MPUが停止したときの航法計算側FPGA134bによる処理の一例を示すフローチャートである。この処理は、上述した
図9に示すフローチャートの処理と並行して行われてよい。すなわち、航法計算側FPGA134bが、航法計算側MPU134aが停止したと判定し、リブート信号を出力する処理とは別に、以下のフローチャートの処理を行ってよい。
【0092】
まず、航法計算側FPGA134bは、電波航法測位モジュール110から衛星測位データが入力されるまで待機し(ステップS700)、衛星測位データが入力されると、衛星測位データを所定のデータフォーマット形式に変換して、テレメトリデータを生成する(ステップS702)。
【0093】
次に、航法計算側FPGA134bは、生成したテレメトリデータを、例えばFPGA側記憶部136bのRAMに記憶させる(ステップS704)。
【0094】
次に、航法計算側FPGA134bは、FPGA側記憶部136bのRAMからテレメトリデータを所定周期で読み出して、通信装置TMを用いて、読み出したテレメトリデータを地上監視装置に送信する(ステップS706)。これによって、航法計算モジュール130側のMPUが停止した場合であっても、停止していない電波航法測位モジュール110のMPUだけでロケットの位置および速度を導出し続けることができる。
【0095】
図13は、航法計算モジュール130側MPUが停止したときの各モジュールによる処理の流れを模式的に示す図である。図示の例のように、FPGA側記憶部136bのレジスタに所定時間以上エラーステータス情報が書き込まれなかった場合、航法計算側FPGA134bは、航法計算側MPU134aが停止したと判定した場合、航法計算側MPU134aを再起動させるためのリブート信号を、航法計算側MPU134aに出力する(図中R)。これによって、航法計算モジュール130側MPUが再起動される。
【0096】
航法計算モジュール130側MPUが再起動される間、電波航法測位モジュール110側のMPUが停止していなければ、電波航法測位モジュール110から航法計算モジュール130へと衛星測位データが出力される。この場合、航法計算側FPGA134bは、上述したように、電波航法測位モジュール110により出力された衛星測位データを所定のデータフォーマット形式に変換して、テレメトリデータを生成し、これを例えばFPGA側記憶部136bのRAMに記憶させる(図中T)。そして、航法計算側FPGA134bは、所定のデータフォーマット形式に変換した衛星測位データをRAMから読み出して、これを通信装置TMを用いて地上監視装置に送信する。
【0097】
[起動時参照情報の書き込み処理]
以下、航法計算モジュール130側のMPUによる起動時参照情報の書き込み処理について説明する。
図14は、航法計算側MPU134aが停止していないときの航法計算モジュール130の動作の様子を模式的に示す図である。図示の例のように、航法計算側FPGA134bは、IMU120により検出された検出値(各次元の加速度およびレート)を取得し、これを航法計算側MPU134aに出力する。これを受けて、航法計算側MPU134aは、航法計算処理を行う。そして、航法計算側MPU134aは、シングルイベントが発生せず停止しない場合、航法計算側FPGA134bに付随するFPGA側記憶部116bのRAMに、起動時参照情報を書き込む。この場合の起動時参照情報には、例えば、上述したように姿勢クォータニオンなどの情報が含まれる。
【0098】
図15は、航法計算側MPU134aが停止しているときの航法計算モジュール130の動作の様子を模式的に示す図である。図示のように、航法計算側MPU134aが停止している間、航法計算側FPGA134bは、IMU120により検出された検出値を取得すると、これを出力せずに、例えばFPGA側記憶部136bのRAMに記憶させておく。これによって、MPU停止期間中にIMU120によって検出された検出値を、FPGA側記憶部136bに蓄積しておくことができる。
【0099】
図16は、再起動した航法計算側MPU134aが航法計算処理を再開するときの航法計算モジュール130の動作の様子を模式的に示す図である。図示のように、航法計算側MPU134aは、リブート信号を受けて再起動した後に、再起動前にFPGA側記憶部136bのRAMに書き込んでおいた起動時参照情報と、航法計算側FPGA134bが出力せずにFPGA側記憶部136bのRAMに蓄積したIMU120の検出値とをそれぞれ読み出して、これらの起動時参照情報とIMU120の検出値とを基に、航法計算処理を再開する。これによって、航法計算側MPU134aは、MPUが停止していた時間帯に本来すべきであったロケットの姿勢、位置、速度の更新を行うことができる。この結果、MPU復帰処理中に更新処理が停止されることで生じる姿勢角誤差、位置誤差、速度誤差を解消することができる。なお、航法計算側MPU134aは、リブート信号を受けて再起動するまでの時間帯にIMU120が検出した過去の加速度を用いるのではなく、IMU120が逐次検出した加速度(現在の加速度)と、停止時間帯にIMU120が検出した過去のレート(停止期間中にRAMに蓄積されたレート)とを用いて、航法計算処理を再開してよい。
【0100】
以上説明した実施形態によれば、電波航法測位モジュール110または航法計算モジュール130が、ロケットを航行させるための航法処理を行うMPUと、MPUの放射線耐性よりも高い放射線耐性を有するFPGAであって、MPUによって実行されるエラーステータス情報の書き込みを監視してMPUが停止したか否かを判定し、MPUが停止したと判定した場合、MPUを再起動させるためのリブート信号をMPUに出力するFPGAを備えることにより、汎用のMPUを用いた簡易な構成で飛行体の位置および速度を精度良く導出することができる。
【0101】
また、上述した実施形態によれば、各モジュールのMPUが、FPGA側の記憶装置に、再起動時に必要となる情報として起動時参照情報を記憶させ、再起動後にこの起動時参照情報を読み出して処理を再開するため、データの連続性を確保した再復帰処理を行うことができる。
【0102】
また、上述した実施形態によれば、各モジュールにおいて、放射線耐性が比較的低いMPUと放射線耐性が高いFPGAが協調動作するため、飛行体用航法装置100を簡素な構成とすることができる。
【0103】
なお、上述した実施形態では、各モジュールにおいて、FPGAが、MPUによってFPGA側の記憶部に書き込まれるエラーステータス情報を監視することで、MPUが停止したか否かを判定したがこれに限られない。例えば、MPUが、自機内部で生じた各種データのエラー訂正処理の回数などをカウントし、このカウントした回数が閾値を超えた場合、FPGAに、再起動を依頼する信号を出力してよい。この場合、FPGAは、出力された再起動の依頼信号に応じてMPUにリブート信号を出力する。再起動を依頼する信号の出力は、「所定の処理」の他の例である。
【0104】
以上、本発明を実施するための形態について実施形態を用いて説明したが、本発明はこうした実施形態に何等限定されるものではなく、本発明の要旨を逸脱しない範囲内において種々の変形及び置換を加えることができる。