(57)【特許請求の範囲】
【請求項１】
ダウンロード対象の無線機の信号処理を行うソフトウェアと誤り検出符号とを含む無線パケットを受信する受信部と、前記誤り検出符号を用いて、前記無線パケットの伝送誤りを検出する誤り検出手段と、前記無線パケットに伝送誤りが検出された場合に、その無線パケットの再送を要求する制御部と、前記無線パケットに伝送誤りが検出されなかった場合に、前記ソフトウェアと前記誤り検出符号とを保持する記憶装置とを有し、
前記誤り検出手段は、前記誤り検出符号を用いて、定期的に若しくは前記記憶装置に保持されたソフトウェアの伸長又はコンパイル、或いは実行前に、前記記憶装置に保持されたソフトウェアの誤り検出を行い、
前記制御部は、前記記憶装置に保持されたソフトウェアに誤りが検出された場合に、前記ソフトウェアを送信する手段を有する基地局又はサーバに対して再ダウンロードを要求する無線機。
【請求項２】
電波を介して受信された無線機の信号処理を行うソフトウェアに付加する誤り検出符号を生成する誤り検出符号生成手段と、前記ソフトウェアと前記生成された誤り検出符号とを保持する記憶装置と、
前記誤り検出符号生成手段で生成された誤り検出符号を用いて、定期的に若しくは前記記憶装置に保持されたソフトウェアの伸長又はコンパイル、或いは実行前に、前記保持されたソフトウェアの誤り検出を行う検出手段と、
前記誤り検出符号生成手段により前記誤り検出符号を付加されて前記記憶装置に保持されたソフトウェアに誤りが検出された場合に、前記ソフトウェアを送信する手段を有する基地局又はサーバに対して該ソフトウェアの再ダウンロードを要求する制御部とを有する無線機。
【請求項３】
電波を介して受信した無線機の信号処理を行うソフトウェアをコンパイルする制御部と、前記コンパイル後のデータに付加する誤り検出符号を生成する誤り検出符号生成手段と、前記コンパイル後のデータと前記生成された誤り検出符号とを保持する記憶装置と、前記誤り検出符号生成手段で生成された誤り検出符号を用いて、定期的に若しくは前記記憶装置に保持されたソフトウェアの実行前に、前記コンパイル後のデータの誤り検出を行う誤り検出手段とを有し、
前記制御部は、前記コンパイル後のデータに誤りが検出された場合に、前記ソフトウェアを送信する手段を有する基地局又はサーバに対して該ソフトウェアの再ダウンロードを要求する無線機。
【請求項４】
請求項１乃至３に記載の無線機と、該無線機からの再ダウンロード要求を受けた前記ソフトウェアを送信する手段を有する基地局又はサーバとを備えることを特徴とする無線通信システム。
【請求項５】
前記ソフトウェアが、圧縮されている場合は圧縮情報の伸長を行い、ソースコードの場合はコンパイルを行うことを特徴とする請求項１または２に記載の無線機。
【発明の詳細な説明】
技術分野
本発明は無線機の信号処理をソフトウェアによって行い、該ソフトウェアをダウンロードによって更新する無線通信システムに関する。
背景技術
無線通信において信号をディジタル化してソフトウェアで処理を行い、ソフトウェアの変更により無線通信処理の機能の追加や変更が可能なシステムの研究が進められている。このようなシステムはソフトウェア無線と呼ばれ、春山，ＩＰＳＪ  Ｍａｇａｚｉｎｅ，Ｖｏｌ．４０，Ｎｏ．３，ｐｐ．３３３−３３６（Ｍａｒ．１９９９）等で説明されている。
無線でソフトウェアをダウンロードして更新する方式として、例えば電子情報通信学会ソフトウェア無線研究会ＳＲ９９−１１（１９９９年）に発表されている。ＳＲ９９−１１には基地局が所有するソフトウェアモジュールとソフトウェアのリストを送信する例が開示されている。さらにＳＲ９９−１１にユーザがリストから希望のソフトウェアモジュールを選択し、端末局にソフトウェアモジュールをダウンロードする例が開示されている。また例えばＭａｒｋ  Ｃｕｍｍｉｎｇｓ  ａｎｄ  Ｓｔｅａｖｅ  Ｈｅａｔｈ，ＩＥＥＥ  Ｃｏｍｍｕｎｉｃａｔｉｏｎｓ  Ｍａｇａｚｉｎｅ，ｐｐ．１０４−１０６，（Ａｕｇｕｓｔ  １９９９）ではダウンロードしたデータの誤りチェックを行う例が開示されている。さらに再送により誤りの無いソフトウェアデータをダウンロードする手順が説明されている。また例えば、ＳＤＲ  ＦＯＲＵＭ  ＴＥＣＨＮＩＣＡＬ  ＲＥＰＯＲＴ  ２．０，Ａｒｃｈｉｔｅｃｔｕｒｅ  ａｎｄ  Ｅｌｅｍｅｎｔｓ  ｏｆ  Ｓｏｆｔｗａｒｅ  Ｄｅｆｉｎｅｄ  Ｒａｄｉｏ  Ｓｙｓｔｅｍｓ  ａｓ  Ｒｅｌａｔｅｄ  ｔｏ  Ｓｔａｎｄａｒｄ，では推奨のダウンロード手順が示されている。例えば、６．１．４．４．６節「Ｄｏｗｎｌｏａｄ  Ａｃｃｅｐｔａｎｃｅ  Ｅｘｃｈａｎｇｅ  Ｐｒｏｃｅｓｓ」ではソフトウェア受信側のデバイスでユーザ選択の応答を待つ例が開示されている。本例ではユーザ選択をローカルコンフィギュレーションテーブルに書き込んでからダウンロードを行う。ソフトウェア受信側の無線機の現場において人が操作することなく自動でソフトウェアのダウンロード、インストール、実行する例は開示されていない。
一方、衛星搭載用通信機器においては小型軽量化、高効率化を目指して、プログラム可能なゲートアレイを使用した回路の開発が進んでいる。例えば、デジタル回路にＦＰＧＡを用いたＱＰＳＫ変調器が、山本  善一等、「科学衛星搭載用Ｘ帯ＱＰＳＫ／ＰＭ変調器」、電子情報通信学会通信ソサエティ大会、ＳＢ−２−５、（１９９９年）に発表されている。本例では衛星軌道上でＦＰＧＡ内部回路のアップセット対策として、地球上からコマンドを送って回路のリセットを可能としている。
発明の開示
無線機の保守管理の為に、作業者が現場に出向いたり無線機を工場に搬入すると非常にコストがかかる。例えば通信衛星のミッションは時には１０年を超える長期に及び、この間新規サービスに対応する柔軟性が要求される。通信衛星の搭載通信機器は一度打ち上げると現場での変更・調整が困難である。一般にソフトウェア受信側現場での作業が困難な場合やソフトウェア受信側の無線機設置場所へ近付くことが困難な場合がある。このような場合でも管理者がソフトウェア受信側の現場で操作することなく無線によりソフトウェアをダウンロードし構築、実行させることが課題である。
またソフトウェアデータに誤りなくダウンロード出来ても、その後ソフトウェアを受信した無線機側で保持されているソフトウェアが実行時までに改変される場合がある。このような場合には無線機は正常に機能しない。特に人工衛星や高空を飛ぶ飛行船、航空機、原子炉内作業ロボット等は放射線の影響により、保持するデータの破壊が起こり易い。一般に有線或いは無線回線を介したダウンロードに拘らず、ソフトウェアデータが破壊される等によってダウンロード後に発生するデータの誤りや改変の対策が課題である。
本発明の目的の１つはユーザや管理者がソフトウェア受信側の現場で操作を行わずにソフトウェアをソフトウェア無線機に自動でダウンロードする、保守管理の負担を低減できる無線通信システムを提供することである。また本発明の他の目的は、ダウンロード後のソフトウェアデータの誤りや改変を回復できるソフトウェア無線による無線通信システムを提供することである。
本発明の無線機は、ダウンロードしたソフトウェアの記憶手段と、定期的に若しくは構築または実行前に前記ソフトウェアの誤りを訂正若しくは検出する手段を備える。前記記憶手段に保持されたソフトウェアに誤りがあれば再ダウンロードの要求を送信する手段を備える。
また本発明の無線通信システムはソフトウェアをダウンロードするソフトウェア無線機とソフトウェアを送信する基地局若しくはサーバを有する。前記無線機はダウンロードしたソフトウェアの記憶手段と、定期的に若しくは構築または実行前に前記ソフトウェアの誤りを訂正若しくは検出する手段を備える。前記無線機は前記記憶手段に保持されたソフトウェアに誤りがあれば前記サーバに再ダウンロードの要求を送信する手段を備える。前記サーバはダウンロードの要求を受信する手段と要求されたソフトウェアを送信する手段を備える。また本発明の無線機は前記ダウンロードしたソフトウェアに誤り検出または訂正の為の符号を付加する手段を備える。
本発明の無線通信システムの１例を図１４に示す。無線機５０１は無線回線を用いてソフトウェアをダウンロードするソフトウェア無線機であって、ダウンロードしたソフトウェアの構築及び実行を自動で行う手段を備える。さらに本発明の無線機５０１はソフトウェアの構築及び実行で不足するソフトウェアを発見する手段５１３、不足するソフトウェア５０９のダウンロードの要求５０８を送信する手段を備える。本発明の無線通信システムは無線回線を用いてソフトウェアをダウンロードするソフトウェア無線機５０１とソフトウェアを送信する基地局５０２若しくはサーバを備える。基地局５０２は構築及び実行のルール５０５と前記ルールの処理開始時間５０７とを送信する手段、または構築及び実行のルール５０５と前記ルールの実行命令５０６とを送信する手段を備えている。
本発明の無線機は無線回線を用いてソフトウェアをダウンロードするソフトウェア無線機であって、ダウンロードしたソフトウェアの構築及び実行を自動で行う手段を備える。また本発明の無線機は飛翔体またはロボットに搭載される。
発明を実施するための最良の形態
以下、図面を用いて本発明の具体的な実施形態について詳細に説明する。
図面における符号は以下のとおりである。
２：検出符号生成部、３：無線送受信部、４：記憶装置、５、５３：制御部、６、５２：入出力インタフェース。１１；飛翔体、１３：無線送受信部、１４：記憶装置、１５：制御部、１６：ＤＳＰ（Ｄｅｇｉｔａｌ  Ｓｉｇｎａｌ  Ｐｒｏｃｅｓｓｏｒ）、１８：ＲＦ（Ｒａｄｉｏ  Ｆｒｅｑｕｅｎｃｙ）処理部、１９：ＩＦ（Ｉｎｔｅｒｍｅｄｉａｔｅ  Ｆｒｅｑｕｅｎｃｙ）処理部、２０：ＤＡ変換器（Ｄｉｇｉｔａｌ  ｔｏ  Ａｎａｌｏｇ  ｃｏｎｖｅｒｔｅｒ）、２１：ＡＤ変換器（Ａｎａｌｏｇ  ｔｏ  Ｄｅｇｉｔａｌ  ｃｏｎｖｅｒｔｅｒ）。３６：地球上の固定局、３４、３９：地球上の移動局、３２：飛翔体に搭載された無線通信機。３７：ネットワーク。１２、１７、３３、３５、３８：アンテナ。４５、５５：検出符号生成部、２２、４６：誤り検出回路、５１：サーバ。１００、２００、３００：ソフトウェア、１０１、２０１、３０１：ＰＤＵ（Ｐｒｏｔｏｃｏｌ  Ｄａｔａ  Ｕｎｉｔ）、１０５、１０６、１０７、２０５、２０６、２０７、３０５、３０６、３０７：ＰＤＵを分割した情報、１０８、１１１、１１４、２０８、２１１、２１４、３０８、３１１、３１４：ヘッダ、１１０、１１３、１１６、２１０、２１３、２１６、３１０、３１３、３１６：トレイラ。
本発明の無線通信システムの例を図２に示す。固定局であり地球上に設置される無線通信機３６と、移動局である地球上の人が携帯する無線通信機３４と車両或いは船舶４０に搭載され地球上を移動する無線通信機３９を備える。さらに飛翔体１１に搭載された無線通信機３２を備えている。本例では地球上に設置される無線通信機３６は基地局でネットワーク３７と有線接続している。固定局、地球上の人が携帯する無線通信機、車両或いは船舶４０に搭載され地球上を移動する無線通信機、飛翔体に搭載される無線通信機はそれぞれ複数あってもよい。
図１に、本発明の無線通信システムの例を示す。飛翔体１１に搭載された無線通信機３２で行う信号処理のうちベースバンド処理はソフトウェア１００で記述され、地球上に設置される無線通信機３６はソフトウェア１００を送信する無線送信手段を有する。前記飛翔体１１に搭載された無線通信機３２はソフトウェア１００を受信する無線受信手段と、受信した前記ソフトウェア１００を記憶する記憶装置１４とを有する。無線通信機３２はソフトウェア１００を実行して無線通信処理を行うＤＳＰ１６と、記憶装置１４により保持されているソフトウェア１００の誤りを検出する手段２２を有する。無線通信機３２において誤りが検出された場合に地球上に設置される無線通信機３６から飛翔体１１に搭載された無線通信機３２へソフトウェア１００のダウンロードを行う。
本例では飛翔体１１に搭載された無線通信機３２はアンテナ１２と無線送受信部１３によりソフトウェア１００を受信し記憶装置１４に記憶する。また前記ソフトウェア１００を実行して無線通信処理を行うＤＳＰ１６を有し、ベースバンド処理をＤＳＰ１６で行う。送信データはベースバンド処理後、Ｄ／Ａ部２０にてアナログ信号に変換される。アナログ信号はＩＦ処理部１９にてＩＦ周波数にアップコンバートされ、ＲＦ処理部１８にて無線周波数にアップコンバートされた後アンテナ１７から送信される。アンテナ１７から受信された信号はＲＦ処理部１８でＩＦ周波数にダウンコンバートされ、ＩＦ処理部１９にてＩＦ周波数からベースバンドにダウンコンバートされる。受信信号はＡ／Ｄ部２１にてデジタル信号に変換された後ＤＳＰ１６でベースバンド処理される。飛翔体１１に搭載された無線通信機３２のベースバンド処理がソフトウェアで記述され、無線を介してダウンロードされる。無線送受信部３、１３はハードウェアのみで構成して信号処理を行ってもよく、またＤＳＰ等の処理手段を用いて信号処理の一部をソフトウェアで行ってもよい。
図５に図１のシステムで送受信するソフトウェアデータのパケット構成例を示す。ダウンロードするソフトウェア１００が地球上に設置される無線通信機３６の記憶装置４に格納されているとする。ソフトウェア１００にパディングＰＡＤ１０２とＰＡＤ１０２の長さ情報ＬＥＮ１０３を付加してＰＤＵ１０１を構成し、ＰＤＵ１０１を固定長の情報１０５、１０６、…、１０７に分割する。情報１０５にヘッダ１０８、トレイラー１１０を付加し、情報１０６にヘッダ１１１、トレイラー１１３を付加し、情報１０７にヘッダ１１４、トレイラー１１６を付加して無線パケットを構成する。ヘッダ１０８、１１１、１１４は、ＰＲＥ１１７とＰＩＤ１１８とＳＥＱ１１９とＬＯＣ１２０と識別子１２１からなる。ＰＲＥ１１７は同期語、ＰＩＤ１１８はソフトウェアの識別子である。ＳＥＱ１１９はソフトウェア１００を分割した固定長情報の順番を示し、ＬＯＣ１２０は前記固定長情報のソフトウェア１００における位置が先頭か後尾か前後に継続するかを示す。識別子１２１は地球上に設置される無線通信機３６の識別子である。トレーラー１１０、１１３、１１６はヘッダのＰＩＤ１１８とＳＥＱ１１９とＬＯＣ１２０とＢＩＤ１２１とそれぞれ１０５、１０６、１０７の固定長の情報とに対する巡回冗長符号１２２からなる。巡回冗長符号１２２は無線通信機３６の検出符号生成部２で生成する。構成した無線パケットを無線送受信部３およびアンテナ３５によって送信する。
飛翔体１１に搭載された無線通信機３２において、同期語１１７を用いてアンテナ部１２で受信した無線パケットの同期をとる。誤り検出回路２２にてＣＲＣ１２２を用いて誤り検出を行い、誤りが検出された無線パケットを廃棄する。無線通信機３２は地球上に設置される無線通信機３６に対して誤りのある無線パケットの再送要求を送信する。無線通信機３２はＳＥＱ１１９、ＬＯＣ１２０を参照してＰＤＵ１０１を組み立て、ＬＥＮ１０３に示された長さのＰＡＤ１０２を除き、ソフトウェア１００を得る。制御部はソフトウェア１００に対して必要に応じて処理をした後記憶装置１４に保存する。ここで制御部は、例えばソフトウェア１００が圧縮されている場合は圧縮情報の伸長を行い、ソフトウェア１００がソースコードの場合はコンパイルを行う等の処理を行う。
ソフトウェア１００のダウンロード完了後、飛翔体１１に搭載された無線通信機３２においてソフトウェアデータを無線パケットのフォーマットで記憶装置１４に保持する。誤り検出回路２２とＣＲＣ１２２を用いてソフトウェアデータの誤り検出を可能とする。ＣＲＣ１２２を、地球上に設置される無線通信機３６と飛翔体１１に搭載された無線通信機３２間の伝送誤りを検出する為と、ダウンロード後のデータ誤りを検出する為とに用いる。ソフトウェア１００をＤＳＰ１６にロードする際に無線パケットのデータ誤りをチェックする。誤りが無ければＳＥＱ１１９、ＬＯＣ１２０を参照してＰＤＵ１０１を組み立てた上でＬＥＮ１０３に示された長さのＰＡＤ１０２を除き、ソフトウェア１００を得る。誤りが検出された場合、制御部１３はソフトウェア１００に誤りがあるという情報またはダウンロード要求を無線送受信部１３とアンテナ１２を介して送信する。無線通信機３６の制御部５はアンテナ３と無線送受信部を介してソフトウェア１００に誤りがあるという情報またはダウンロード要求を受信してソフトウェア１００のダウンロードを行う。
図３に、本発明の無線通信システムの１例を示す。飛翔体１１に搭載された無線通信機３２で行う無線通信処理のうちベースバンド処理はソフトウェア２００で記述される。地球上に設置される無線通信機３６はソフトウェア２００を送信する無線送信手段を有する。飛翔体１１に搭載された無線通信機３２はソフトウェア２００を受信する無線受信手段と、受信したソフトウェア２００を記憶する記憶装置１４を有する。無線通信機３２はソフトウェア２００を実行して無線通信処理を行うＤＳＰ１６と、記憶装置１４により保持されているソフトウェア２００の誤りを検出する手段を有する。無線通信機３２は前記誤りが検出された場合に地球上に設置される無線通信機３６から飛翔体１１に搭載された無線通信機３２へソフトウェア２００のダウンロードを行う。ソフトウェア２００を実行する無線通信機３２は誤り検出のための符号を検出符号生成部４５で生成してソフトウェア２００に付加する。
図６に図３のシステムで送受信するソフトウェアデータのパケット構成例を示す。ダウンロードするソフトウェア２００が地球上に設置される無線通信機３６の記憶装置４に格納されているとする。ソフトウェア２００にパディングＰＡＤ２０２とＰＡＤ２０２の長さ情報ＬＥＮ２０３を付加してＰＤＵ２０１を構成する。ＰＤＵ２０１を固定長の情報２０５、２０６、…、２０７に分割する。情報２０５にヘッダ２０８、トレイラー２１０を付加し、情報２０６にヘッダ２１１、トレイラー２１３を付加し、情報２０７にヘッダ２１４、トレイラー２１６を付加する。ヘッダ２０８、２１１、２１４は、ＰＲＥ２１７とＰＩＤ２１８とＳＥＱ２１９とＬＯＣ２２０と識別子２２１からなる。ＰＲＥ２１７は同期語、ＰＩＤ２１８はソフトウェアの識別子である。ＳＥＱ２１９はソフトウェア２００を分割した固定長情報の順番を示す。ＬＯＣ２２０は前記固定長情報のソフトウェア２００における位置が先頭か後尾か前後に継続するかを示す。識別子２２１は地球上に設置される無線通信機３６の識別子である。トレーラー２１０、２１３、２１６はヘッダのＰＩＤ２１８とＳＥＱ２１９とＬＯＣ２２０とＢＩＤ２２１とそれぞれ２０５、２０６、２０７の固定長の情報とに対する巡回冗長符号２２２からなる。巡回冗長符号２２２は無線通信機３６の検出符号生成部２で生成する。構成した無線パケットを無線送受信部３およびアンテナ３５によって送信する。
飛翔体１１に搭載された無線通信機３２は、同期語２１７を用いてアンテナ部１２で受信した無線パケットの同期をとり、誤り検出回路２２にてＣＲＣ２２２を用いて誤り検出を行う。無線通信機３２は誤りが検出された無線パケットを廃棄し、地球上に設置される無線通信機３６に対して誤りのある無線パケットの再送要求を送信する。無線通信機３２はＳＥＱ２１９、ＬＯＣ２２０を参照してＰＤＵ２０１を組み立て、ＬＥＮ２０３に示された長さのＰＡＤ２０２を除いてソフトウェア２００を得る。制御部はソフトウェア２００に対して必要に応じて処理をした後記憶装置４に保存する。ここで制御部は、例えばソフトウェア２００が圧縮されている場合は圧縮情報の伸長を行い、ソフトウェア２００がソースコードの場合はコンパイルを行う等の処理をする。
飛翔体１１に搭載された無線通信機３２の検出符号生成部４５においてソフトウェア２００に対する誤り検出符号ＣＲＣ２０４を生成する。ソフトウェア２００とＣＲＣ２０４を記憶装置１４に保持し、誤り検出回路４６とＣＲＣ２０４を用いて誤り検出を可能とする。制御部１５がソフトウェア２００をＤＳＰ１６にロードする前に誤りをチェックし、誤りが無ければソフトウェア２００を得る。誤りが検出された場合、制御部１５はソフトウェア２００に誤りがあるという情報またはダウンロード要求を無線送受信部１３とアンテナ１２を介して送信する。無線通信機３６の制御部５はアンテナ３５と無線送受信部３を介して、ソフトウェア２００に誤りがあるという情報またはダウンロード要求を受信してソフトウェア２００のダウンロードを行う。
図４に、本発明の無線通信システムの例を示す。ネットワーク３７に有線接続された無線通信機３６で行う無線通信処理のうちベースバンド処理がソフトウェア３００で記述される。ネットワーク３７に接続されたサーバ５１はソフトウェア３００を送信する送信手段を有する。無線通信機３６はソフトウェア３００を受信する受信手段と、受信したソフトウェア３００を記憶する記憶装置４を有する。無線通信機３６はソフトウェア３００を実行して無線通信処理を行うＤＳＰ１６と、記憶装置４により保持されているソフトウェア３００の誤りを検出する手段を有する。無線通信機３６は保持されているソフトウェア３００に誤りが検出された場合にソフトウェア３００のダウンロードを行う。
図７に図４のシステムで送受信するソフトウェアデータのパケット構成例を示す。ダウンロードするソフトウェア３００がサーバ５１の記憶装置５４に格納されているとする。ソフトウェア３００にパディングＰＡＤ３０２とＰＡＤ３０２の長さ情報ＬＥＮ３０３を付加してＰＤＵ３０１を構成し、ＰＤＵ３０１を固定長の情報３０５、３０６、…、３０７に分割する。情報３０５にヘッダ３０８、トレイラー３１０を付加し、情報３０６にヘッダ３１１、トレイラー３１３を付加し、情報３０７にヘッダ３１４、トレイラー３１６を付加する。ヘッダ３０８、３１１、３１４は、ＰＲＥ３１７とＲｘＩＤ３１８と送信元アドレス３１９とＰＩＤ３２０とＳＥＱ３２１とＬＯＣ３２２からなる。ＰＲＥ３１７は同期語、ＲｘＩＤ３１８は宛先アドレスであり、ＰＩＤ３２０はソフトウェアの識別子である。ＳＥＱ３２１はソフトウェア３００を分割した固定長情報の順番を示し、ＬＯＣ３２２は前記固定長情報のソフトウェア３００における位置が先頭か後尾か前後に継続するかを示す。トレーラー３１０、３１３、３１６はヘッダのＲｘＩＤ３１８とＴｘＩＤ３１９とＰＩＤ３２０とＳＥＱ３２１とＬＯＣ３２２とそれぞれ３０５、３０６、３０７の固定長の情報とに対するフレームチェックシーケンス３２２からなる。フレームチェックシーケンス３２２はサーバ５１の検出符号生成部５５で生成する。構成した無線パケットを入出力Ｉ／Ｆ５２からネットワーク３７へ送信する。
ネットワークに接続された固定局３６において、同期語３１７を用いてネットワーク３７より入出力Ｉ／Ｆ６で受信した無線パケットの同期をとる。誤り検出回路２２にてＦＣＳ３２２を用いて誤り検出を行い、誤りが検出された無線パケットを廃棄する。固定局３６はサーバ５１に対して誤りのある無線パケットの再送要求を送信する。固定局３６はＳＥＱ３２１、ＬＯＣ３２２を参照してＰＤＵ３０１を組み立て、ＬＥＮ３０３に示された長さのＰＡＤ３０２を除いてソフトウェア３００を得る。制御部はソフトウェア３００に対して必要に応じて処理をした後記憶装置４に保存する。制御部は、例えばソフトウェア３００が圧縮されている場合は圧縮情報の伸長を行い、ソフトウェア３００がソースコードの場合はコンパイルを行う等の処理を行う。
無線通信機３６の検出符号生成部４５においてソフトウェア３００に対する誤り検出符号ＣＲＣ３０４を生成する。ソフトウェア３００とＣＲＣ３０４を記憶装置４保持し、誤り検出回路４６とＣＲＣ３０４を用いてソフトウェアデータの誤り検出を可能とする。一定時間毎に制御部５が記憶装置４に保持されたソフトウェア３００の誤りをチェックし、記憶装置４に保持されたデータに誤りが無ければソフトウェア３００を得る。記憶装置４に保持されたデータに誤りが検出された場合、制御部５は記憶装置４に保持された誤ったデータを破棄する。制御部５はソフトウェア３００に誤りがあるという情報またはダウンロード要求をサーバ５１に送信する。制御部５はアンテナ３５と無線送受信部３を介して、ソフトウェア２００に誤りがあるという情報またはダウンロード要求を受けてソフトウェア２００のダウンロードを行う。
データが圧縮されてダウンロードされる場合には伸長後のデータに、或いはダウンロード後にコンパイルをする場合にはコンパイル後のデータにＣＲＣを付加して記憶装置に保持してもよい。
また無線通信機３６はソフトウェアに誤り訂正符号を付加して記憶装置４に保持し、訂正符号によって誤りが訂正仕切れなかった場合にダウンロード要求をサーバ５１に送ってもよい。
さらに本例では無線通信機３２は飛翔体１１に搭載されるが、高所作業ロボット、閉所作業ロボット、高放射能区域作業ロボット、潜水ロボット、潜水艦等、人の行きにくい場所で用いられる装置に搭載されていてもよく。僻地、高所、閉所、高放射能区域、水中、宇宙、他惑星等人の行きにくい場所に設置されていてもよい。
図８に本発明の無線通信システムの１例を示す。無線機４３２の記憶装置４１４に無線機４３２の機種依存情報、ユーザオプションを保持するローカルコンフィギュレーションテーブルを有する。無線機４３２の制御部４１５で実行されるプログラムがルールテーブル４６１に定義されたルールに従ってダウンロードされたソフトウェアの構築及び実行を行う。基地局４１０から送信されるコマンドによってソフトウェアを自動に構築及び実行する。図９に記憶装置に４０２、４１４に格納される情報の例を示す。ソフトウェアリスト４０７はソフトウェアの名前４３５、バージョン４３６、ｉｄ４３７、ソフトウェアの詳細情報を格納する属性４３８からなる。ソフトウェアリストのｉｄ４３７とソフトウェア４０８のｉｄ４４１によりリストとソフトウェア本体とが対応付けられる。ルールテーブル４０９はソフトウェアの依存関係と構築及び実行のルールを記述したテーブルである。ルールは例えばソフトウェアの開発者が作り、基地局４１０の管理者がテーブル４０９に更新する。
ルールは例えば従来のｍａｋｅｆｉｌｅに記述されるようなコンパイル、リンク、インストール等構築処理及び実行のコマンドラインの集まりである。ルールの例を図１０に示す。名前に．ｓｒｃという拡張子のついたソフトウェアから．ｏという拡張子のついたソフトウェアを作るルールと、ｐｒｏｇ＿ａ．ｏとｐｒｏｇ＿ａｂ．ｏとＬＩＢＲＡＲＹ．ａをコンパイルして実行するルールの例である。名前に．ｓｒｃの拡張子のついたソフトウェアから．ｏのついたソフトウェアを作るルールがコマンドライン＄（ＣＯＭＰＩＬＥ）＄（ＦＬＡＧＳ）＄〈  で表される。本コマンドラインによりＣＯＭＰＩＬＥ＝ｃｏｍｐｉｌｅｒ＿Ａで指定されたコンパイラがＦＬＡＧＳ＝＄（ＤＳＰ＿ＴＹＰＥ）で指定されるオプション付きで起動される。制御部４１５がローカルコンフィギュレーションテーブル４６２の値を参照し、制御部４１５やＤＳＰ４１６等のハードウェア構成に依存したオプションを選択する。制御部４１５はルールに従って構築及び実行を行う。例えば図１０で制御部において実行されるプログラムが機種依存情報４６５を参照し、ＤＳＰ＿Ｔｙｐｅで指定される変数をＤＳＰ＿ＴＹＰＥに設定する。ＤＳＰ＿ＴｙｐｅはＤＳＰ４１６の型に依存して決まる変数である。さらにＯＢＪＳ＝ｐｒｏｇ＿ａ．ｏとｐｒｏｇ＿ａｂ．ｏで指定されるソフトウェアとＬＩＢ＿ＮＡＭＥ＝ＬＩＢＲＡＲＹ．ａで指定されるソフトウェアをコンパイルするルールがｐｒｏｇ＿ａ：＄（ＯＢＪＳ）、＄（ＣＯＭＰＩＬＥ）＄（ＦＬＡＧＳ）＄（ＬＩＢ＿ＮＡＭＥ）＄（ＯＢＪＳ）によって表される。無線機４３２でのターゲット名ｐｒｏｇ＿ａのインストールコマンド実行時にはＣＯＭＰＩＬＥ＝ｃｏｍｐｉｌｅｒ＿Ａで指定されたコンパイラがＦＬＡＧＳ＝＄（ＤＳＰ＿ＴＹＰＥ）で指定されるオプション付きで起動されて処理を行い、ｃｏｍｐｉｌｅｒ＿Ａがａ．ｏｕｔという名前の実行可能なソフトウェアを生成する。さらにルールによりａ．ｏｕｔが実行される。同様にプログラムの情報伸張、暗号復号化、ロード、ソフトウェア受信側で行う処理のルールが定義される。ルールは再帰的に参照しても、相互に参照してもよい。例えばあるルールで起動されるコンパイラ、情報伸張等、構築及び実行に必要な処理を行うソフトウェアのインストールを、前記あるルールとは別のルールで定義してもよい。
基地局の制御部４０１はローカルコンフィギュレーションテーブル４６２の設定コマンド４９５を発行する。テーブル４６２の変数名と値をそれぞれ変数名４８１と値４８２に指定する。設定コマンドが無線送受信機４０３、アンテナ４０５及びアンテナ４１２、無線送受信部４１３を経由して制御部４１５に送信される。制御部４１５は受信した設定コマンドの変数名と値に基付き記憶装置４１４のテーブル４６２の値を設定する。例えばＤＳＰの型を遠隔操作で切り替えた場合は、本コマンドにより機種依存情報の変数ＤＳＰ＿ＴｙｐｅをＤＳＰの型に対応する値に設定する。
基地局の制御部４０１はルールテーブル４６１の設定コマンド４９６を発行する。設定コマンド４９６はルールテーブル４６１の情報をルール名４８４、ｉｄ４８５、ｖｅｒ４８６、ルール４８７に含む。設定コマンド４９６が無線送受信機４０３、アンテナ４０５及びアンテナ４１２、無線送受信部４１３を経由して制御部４１５に送信される。制御部４１５は受信した設定コマンド４９６に含まれる情報をルールテーブル４６１に更新する。
基地局の制御部４０１はルール名を指定して構築および実行のコマンド４９７を発行する。コマンド４９７が無線送受信機４０３、アンテナ４０５及びアンテナ４１２、無線送受信部４１３を経由して制御部４１５に送信される。制御部４１５はルールテーブル４６１のルール４３８から受信したコマンド４９７のルール名４９１で指定されるルールとローカルコンフィギュレーションテーブル４６５を参照しコマンドを実行する。例えば、図１０のｐｒｏｇ＿ａを指定してコマンド４９７が４１５に受信されるとＣＯＭＰＩＬＥ＝ｃｏｍｐｉｌｅｒ＿Ａで指定されたコンパイラがＦＬＡＧＳ＝＄（ＤＳＰ＿ＴＹＰＥ）で指定されるオプション付きで起動されてｐｒｏｇ＿ａ．ｏとｐｒｏｇ＿ａｂ．ｏとＬＩＢＲＡＲＹ．ａをコンパイルする処理を行う。
ルールテーブルのルールに定義されるソフトウェアから欠けているソフトウェアを選んでダウンロードを開始する例を示す。図１２の無線機４３２の記憶装置４１４において図１０のルールが記憶されている場合、一定の時刻に制御部４１５が基地局４１０に対してソフトウェアリストの送信要求４９４を発行する。送信要求はＤＳＰ４１６、Ｄ／Ａ４２０、ＩＦ４１９、ＲＦ４１８、アンテナ４１７及びアンテナ４０５、無線送受信部４０３を経由して基地局４１０の制御部４０１に送信される。制御部４０１は送信要求を受信するとソフトウェアリスト４０７を無線送受信部４０３、アンテナ４０５、及びアンテナ４１７、ＲＦ４１８、ＩＦ４１９、Ｄ／Ａ４２０、ＤＳＰ４１６を経由して制御部４１５に送信する。制御部４１５は図１０のルールで定義されるソフトウェアからｐｒｏｇ＿ａ．ｓｒｃ  ｐｒｏｇ＿ａｂ．ｓｒｃの名前のソフトウェアのバージョン４５１と得られたソフトウェアリストのバージョン４３６を比較する。制御部４１５はもし新しいバージョンのソフトウェアが見つかった場合は基地局４１０に該当ｉｄ４３７のソフトウェアのダウンロード開始要求を送信する。基地局４１０の制御部４０１は該当ｉｄ４３７のソフトウェア本体を無線送受信機４０３、アンテナ４０５、及びアンテナ４１２、無線送受信部４１３を経由して制御部４１５に送信する。制御部４１５はソフトウェア本体のダウンロードが完了したらソフトウェア管理テーブル４６０の情報を更新する。
また図１２の無線機４３２の制御部４１５において図１０のルールを実行する例を挙げる。ＳＲＣＳ＝ｐｒｏｇ＿ａ．ｓｒｃ  ｐｒｏｇ＿ａｂ．ｓｒｃで定義されるソフトウェアの名前をソフトウェア管理テーブル４６０の名前４５０から探す。もし該当するソフトウェアが無ければ基地局４１０に対してソフトウェアリストの送信要求を発行する。送信要求はＤＳＰ４１６、Ｄ／Ａ４２０、ＩＦ４１９、ＲＦ４１８、アンテナ４１７及びアンテナ４０５、無線送受信部４０３を経由して基地局４１０の制御部４０１に送信される。制御部４０１は送信要求を受信するとソフトウェアリスト４０７を無線送受信部４０３、アンテナ４０５、及びアンテナ４１７、ＲＦ４１８、ＩＦ４１９、Ｄ／Ａ４２０、ＤＳＰ４１６を経由して制御部４１５に送信する。得られたソフトウェアリストにｐｒｏｇ＿ａ．ｓｒｃ、ｐｒｏｇ＿ａｂ．ｓｒｃの名前のソフトウェアが見つかった場合は基地局４１０に該当ｉｄ４３７のソフトウェアのダウンロード開始要求を送信する。基地局４１０の制御部４０１は対応するｉｄのソフトウェア本体を４６３から選択する。ソフトウェア本体は、無線送受信部４０３、アンテナ４０５、及びアンテナ４１２、無線送受信部４１３を経由して制御部４１５に送信される。制御部４１５はソフトウェア本体のダウンロードが完了したらソフトウェア管理テーブル４６０の情報を更新する。
また図１２の無線機４３２の制御部４１５において図１０のルールを実行する他の例を挙げる。制御部４１５はＳＲＣＳ＝ｐｒｏｇ＿ａ．ｓｒｃ  ｐｒｏｇ＿ａｂ．ｓｒｃで定義されるソフトウェアを記憶装置４１４から探す。制御部４１５は、もし該当するソフトウェアが無ければ基地局４１０に該当する名前のソフトウェアのダウンロード開始要求を送信する。基地局４１０の制御部４０１は該当する名前のソフトウェアをソフトウェアリストの名前４３５から検索し、対応するｉｄのソフトウェア本体を４６３から選択する。ソフトウェア本体は無線送受信機４０３、アンテナ４０５、及びアンテナ４１２、無線送受信部４１３を経由して制御部４１５に送信される。
図１２に基地局４１０から無線機４３２に自動でソフトウェアをダウンロードし、構築及び実行する例を示す。図１３は基地局４１０および無線機４３２の記憶装置に保持される情報を表す。基地局４１０がルールを設定するコマンド４９６を無線機４３２に送信する。また基地局４１０が変数名４８１にｏｐｔｉｏｎｌを指定し値４８２に時間を指定したコマンド４９５を無線機４３２に送信する。さらに基地局４１０が変数名４８１にｏｐｔｉｏｎ２を指定し値４８２にルール名を指定したコマンド４９５を無線機４３２に送信する。前記コマンドは無線送受信部４０３、アンテナ４０５、及びアンテナ５１７、ＲＦ５１８、ＩＦ５１９、Ｄ／Ａ５２０、ＤＳＰ５１６を経由して制御部５１５に送信される。無線機４３２の制御部５１５はコマンド４９６を受信して記憶装置４１４のルールテーブル４６１を設定する。制御部５１５はコマンド４９５を受信してユーザオプション４６６のｏｐｔｉｏｎｌおよびｏｐｔｉｏｎ２に値を設定する。制御部５１５は、ユーザオプション４６６に設定されたｏｐｔｉｏｎｌの時間になると、ｏｐｔｉｏｎ２に指定されるルールの実行を開始する。制御部５１５はユーザオプション４６６のｏｐｔｉｏｎ２に指定されるルールを参照し必要なソフトウェア名を抽出する。制御部５１５は前記例と同様にルールに定義されたソフトウェアを記憶装置４１４のソフトウェア管理テーブル４６０から検索する。制御部５１５は見つからないソフトウェアがあれば対応するｉｄ４５６を指定してソフトウェアの送信要求４９８を送信する。送信要求４９８はＤＳＰ５１６、Ｄ／Ａ５２０、ＩＦ５１９、ＲＦ５１８、アンテナ５１７及びアンテナ４０５、無線送受信部４０３を経由して基地局４１０の制御部４０１に送信される。制御部４０１は送信要求４９８を受信するとｉｄ４８９で指定されるソフトウェアを記憶装置４０２に記憶されたソフトウェア４０８から選び送信する。制御部５１５はソフトウェアを受信すると、記憶装置４１４のソフトウェア４６３とソフトウェア管理テーブル４６０を更新する。今例えばコマンド４９７によって実行するルール名が、ｐｒｏｇ＿ａとすると、制御部５１５でｃｏｍｐｉｌｅｒ＿Ａが起動されコンパイルが行われる。さらに生成した実行形式名がａ．ｏｕｔとすると、制御部５１５によってａ．ｏｕｔが実行される。
基地局４１０から無線機４３２に自動でソフトウェアをダウンロードし、構築及び実行する他の例を示す。基地局４１０がルールテーブルの設定コマンド４９６、および前記コマンドで設定したルールの実行コマンド４９７を無線機４３２に送信する。コマンド４９６およびコマンド４９７は無線送受信部４０３、アンテナ４０５、及びアンテナ５１７、ＲＦ５１８、ＩＦ５１９、Ｄ／Ａ５２０、ＤＳＰ５１６を経由して制御部５１５に送信される。
制御部５１５はコマンド４９６を受信すると、記憶装置４１４のルールテーブル４６１を更新する。制御部５１５はコマンド４９７を受信すると、ルール４５８に定義された処理を行う。制御部５１５は前記例と同様にルールに定義されたソフトウェアを記憶装置４１４のソフトウェア４７１から検索する。制御部５１５は見つからないソフトウェアがあればダウンロードして記憶装置４１４に保持し、構築、実行する。無線機４３２側で操作することなく自動でソフトウェアのダウンロード、構築、及び実行を行う。
本発明は信号処理の一部がソフトウェアで記述された無線通信機において、処理のルールを定義して遠隔操作で前記ルールに定義された処理を実行する。無線通信機の制御部がルールに従って自動にソフトウェアをダウンロード、構築、実行する。このためユーザや管理者が複雑な処理を把握したりダウンロードするソフトウェアの受信機現場で操作することが不要となる。
本発明は信号処理の一部がソフトウェアで記述された無線通信機において、制御部がルールに定義されるソフトウェアの依存関係から必要なソフトウェアを抽出する。さらに無線通信機は記憶装置から必要なソフトウェアを検索する手段と前記ソフトウェアが見つからなかった場合にダウンロードを行う手段を備えている。このため無線通信機のユーザや管理者が必要なソフトウェアの有無を常に把握したり常に入手の操作を行わなくてもソフトウェアをソフトウェア無線機へ自動にダウンロードできる。
さらに、本発明はソフトウェアを自動にダウンロードするソフトウェア無線機を飛翔体、ロボットに搭載する。このため管理者が調整の為に宇宙、水中や高放射能区域、高所・閉所等の現場に行ったり無線機を現場から移動させることなく保守管理することが可能となる。
また本発明は、ソフトウェアの実行によって信号処理の一部を行う無線通信機の記憶手段により前記ソフトウェアを保持する。さらに無線通信機は前記記憶手段に保持されているソフトウェアの誤りを検出する手段と誤りが検出されたソフトウェアのダウンロード要求を送信する手段を備える。このためダウンロード後に発生するソフトウェアデータの誤りや改変を回復できる。
さらに本発明によると、前記ソフトウェアをダウンロード後に受信側の無線通信機において、誤り検出或いは訂正のための符号を付加して記憶手段に保持し、誤りを検出する。よってダウンロード時に送信する誤り訂正或いは検出符号による情報の増加を抑制できると共に、送信側の処理に依らない受信側で独立した誤りの訂正或いは検出が可能である。
産業上の利用の可能性
本発明は、衛星や遠隔ロボット等の無線制御が必要な産業機器に利用できる。
【図面の簡単な説明】
図１は、本発明の１例による無線通信システムのブロック図である。
図２は、本発明の１例による無線通信システムの構成図である。
図３は、本発明の１例による無線通信システムのブロック図である。
図４は、本発明の１例による無線通信システムのブロック図である。
図５は、本発明の１例によるダウンロードデータ送受信時のパケット構成図である。
図６は、本発明の１例によるダウンロードデータ送受信時のパケット構成図である。
図７は、本発明の１例によるダウンロードデータ送受信時のパケット構成図である。
図８は、本発明の１例による無線通信システムのブロック図である。
図９は、本発明の１例による無線通信システムの記憶装置の図である。
図１０は、本発明の１例によるルールの図である。
図１１は、本発明の１例によるコマンドの構成図である。
図１２は、本発明の１例による無線通信システムのブロック図である。
図１３は、本発明の１例による無線通信システムの記憶装置の図である。
図１４は、本発明の１例による無線通信システムの図である。
【図１】
0003960224.tif 000002
【図２】
0003960224.tif 000003
【図３】
0003960224.tif 000004
【図４】
0003960224.tif 000005
【図５】
0003960224.tif 000006
【図６】
0003960224.tif 000007
【図７】
0003960224.tif 000008
【図８】
0003960224.tif 000009
【図９】
0003960224.tif 000010
【図１０】
0003960224.tif 000011
【図１１】
0003960224.tif 000012
【図１２】
0003960224.tif 000013
【図１３】
0003960224.tif 000014
【図１４】
0003960224.tif 000015