PLAINニュース第179号
Page 2

宇宙情報システム講義第2部
これからの衛星データシステムはこうなる

(第6回 衛星監視制御プロトコル)

山田 隆弘
宇宙情報・エネルギー工学研究系

 今までに衛星の機能モデルとその中心概念である機能オブジェクトの話をしてきました。次の話題である衛星監視制御プロトコルに移る前に、これらの概念の復習をしておきたいと思います。

 そもそもの課題は、この連載の第1部(163号)で説明した衛星情報ベース(Spacecraft Information Base, SIB)をさらに高機能化し、このデータベースに衛星の機能情報を取り込むことでした。そこで、既存の衛星を実例として、機能情報を取り込むためのデータベースの設計に取りかかったのですが、これがうまくいきません。なぜならば、今までは機能設計の仕方が搭載機器毎にあまりにもバラバラだったからです。

 このままの状態でデータベースの設計を行っても実用的なものはできないし、搭載機器の機能設計がバラバラのままでも良くないということが分かりましたので、「衛星の機能設計はこのように行って下さい」という決まりを作ることにしました。この決まりが衛星の機能モデルです。

 衛星の機能モデルにおける中心的な概念は機能オブジェクトです。衛星の搭載機器はいろいろな機能を有していますが、関連のあるひとまとまりの機能をまとめて抽象化したものが機能オブジェクトです。機能オブジェクトはいくつかのことを実行します。機能オブジェクトが実行する動作をオペレーションと呼びます。また、機能オブジェクトは内部の様子をいくつかのパラメータによって表します。機能オブジェクトの様子を表すパラメータをアトリビュートと呼びます。機能オブジェクトは、さらにアラートという機能を持つことができます。これは、機能オブジェクトが何かが起こったこと(例えば異常を検出したこと)を外部に対して通知するためのメカニズムです。

 現在開発中の衛星情報ベース2(SIB2)には、オペレーション、アトリビュート、アラートというような個々の機能オブジェクトの有する要素の定義を格納します。その一例が以下に示す表です。

 これは Xという搭載機器を機能オブジェクトとして表現したときのその機能オブジェクトの要素の定義です。この機能オブジェクトは5つのオペレーションを有します。そのうちの X_SetCheckMode というオペレーションはパラメータを有していて、このオペレーションを実行するときは A, B, OFF のうちのどれかを指定します。この機能オブジェクトは4つのアトリビュートを有します。SIB2 にはアトリビュートのデータ型(あるいは、アトリビュートの取り得る値の集合)も格納します。例えば、X_CheckMode というアトリビュートは、A, B, OFFのいずれかをその値として取ります。この機能オブジェクトのアラートは X_ErrorDetect のみで、このアラートには X_ErrorStatus というアトリビュートの値がパラメータとして付加されます。

搭載機器Xに対する SIB2 の内容(部分)

オペレーション

X_Power_On

X_Power_Off

X_Run

X_Stop

X_SetCheckMode

A, B, OFF

アトリビュート

X_OnOff

OFF, ON

X_RunStop

RUN, STOP

X_CheckMode

A, B, OFF

X_ErrorStatus

Normal, U_Error,
V_Error, ...

アラート

X_ErrorDetect

X_ErrorStatus

 さて、ここまでが前回までの復習で、これからが新しい話題です。

 搭載機器は衛星に搭載されていますので、機能オブジェクトにオペレーションを実行させるためには、搭載機器にコマンドを送ります。また、機能オブジェクトのアトリビュートの値を確認するためには、搭載機器から送られてくるテレメトリを使用します。アラートもテレメトリを用いて外部に通知されます。

 用語がちょっとややこしいのですが、オペレーションやアトリビュートやアラートは、機能オブジェクトを特徴づけるための概念です。それに対し、コマンドとテレメトリは、搭載機器と地上(あるいは衛星内のデータ処理系)との間で交わされるメッセージの名前なのです。

 この連載の第1部で説明したように、搭載機器はコマンドをパケットというデータの固まりとして受信します。テレメトリもパケットという単位で発生します。ところが、今までの衛星の設計では、パケットの中身は搭載機器毎にバラバラに決めていたのです。そこで、機能オブジェクトの概念を使って、パケットの中身の構成方法を統一することを考えました。そのためのメカニズムが今回のテーマの衛星監視制御プロトコルなのです。

 衛星監視制御プロトコルでは、コマンドパケットとテレメトリパケットの構成方法を定めています。そして、その構成方法の定め方に今回復習した機能オブジェクトの性質をふんだんに利用しているのです。

 コマンドパケットには二つの種類があります。一つは、オペレーションを起動するためのもので、ACTION コマンドと呼ばれます。もう一つはアトリビュートの値の組を読み出す(すなわち、そのアトリビュートの値の組を含んだテレメトリパケットを送りなさいと指示する)ためのもので GET コマンドと呼ばれます。

 ACTION コマンドパケットには、該当機能オブジェクトの ID、該当オペレーションの ID、オペレーションにパラメータがある場合はそのパラメータの値等を挿入します。ACTION コマンドパケットパケットのフォーマットを以下に示します。

パケットヘッダ

機能オブジェクト ID

オペレーション ID

パラメータ値

 GET コマンドでは、読み出すべきアトリビュートの組を指定するIDをパケットに挿入します。

 テレメトリパケットには3種類あります。一つ目は、アトリビュートの値の組を送るためのもの(VALUE テレメトリ)、二つ目はアラートを送るためのもの(NOTIFICATION テレメトリ)、三つ目はコマンドパケットを受信したことを伝えるためのもの(ACK テレメトリ)です。

 一つ目のアトリビュートの値の組を送るための VALUE テレメトリは、使い方としてはさらに三つの種類に分かれます。一つ目は搭載機器が自動的に定期的に発生するもの、二つ目はアトリビュートの値に変化があったときに搭載機器が自動的に発生するもの、三つ目は先ほどコマンドパケットのところで説明したGETコマンドを受け取ったときに搭載機器が発生するものです。この後の方の二つの種類は、衛星から地上に送るデータ量を減らしたいときに使用されます。

 VALUE テレメトリパケットのフォーマットは、一つのパケットに入れるべきアトリビュートの組を定義しさえすれば、機能オブジェクトの定義からほぼ自動的に決まります。NOTIFICATION テレメトリパケットのフォーマットも機能オブジェクトの定義から自動的に決まります。

 このように、衛星監視制御プロトコルは、機能オブジェクトを監視し制御するという観点からコマンドとテレメトリのパケットフォーマットを統一するためのものであり、機能オブジェクトを定義してしまえば、パケットのフォーマットが自動的に決まると言うところが味噌なのです。このようにすれば、どのような衛星のどのような搭載機器に対してもパケットのフォーマットを統一することができるのです。すばらしいですね。

 次回は、汎用衛星試験運用ソフトウェア (GSTOS) について説明します。

このページの先頭へ



(848KB/ 4pages)

Next Issue
Previous Issue
Backnumber
Author Index
Mail to PLAINnewsPLAINnews HOME