(57)【要約】      （修正有）【課題】壊滅的な損害の確率を低減するために、複数の冗長ＵＡＶ−ＶＭＣのアーキテクチャが用いられている。このため、複数の冗長ＵＡＶ−ＶＭＣのアーキテクチャのフレームクロックを同期化する必要がある。【解決手段】複数のプロセッサにあるフレームクロックを同期化する方法であって、各プロセッサから他の各プロセッサにデータパケットを送信する工程を有しており、各プロセッサは、データパケットを受信し、最大位相差を有する２つのデータパケットを特定する。最大位相差は、目標同期位相角度を決定するために用いられ、フレームクロックの時間が調整されて、フレームクロックは、目標同期位相角度に近づく。【選択図】  図２
2006229956.tif 000002
【特許請求の範囲】
【請求項１】
複数のプロセッサにあるフレームクロックを同期化する方法であって、
(ａ)  各プロセッサから他の各プロセッサにデータパケットを送信する工程、
(ｂ)  各プロセッサは、データパケットを受信し、最大位相差を有する２つのデータパケットを特定する工程、
(ｃ)  最大位相差を用いて、目標同期位相角度を決定する工程、
(ｄ)  フレームクロックの時間を調整し、フレームクロックが目標同期位相角度に近づくようにする工程、及び、
(ｅ)  (ａ)、(ｂ)、(ｃ)及び(ｄ)の工程を繰り返す工程、
とを含んでいる、方法。
【請求項２】
データパケットは、パケット伝送時間だけ、送信プロセッサ内のフレームクロックより先に送られる、請求項１に記載の方法。
【請求項３】
目標同期角度は、最大位相差によって規定される角度とは反対側の角度である、請求項１に記載の方法。
【請求項４】
最大位相差を用い、目標同期位相角度を決定する工程は、
最大位相差で表わされる位相角度を二分し、二分された位相角度を生成する工程、及び、
二分位相角度に１８０°を加算し、目標同期位相角度を生成する工程、
とを含んでいる、請求項１に記載の方法。
【請求項５】
フレームクロックの時間を調整し、フレームクロックが、目標同期位相角度に近づくようにする工程であって、
目標同期位相角度とフレームクロックとの位相差を決定する工程、
目標同期位相角度とフレームクロックとの間の位相差に減衰要素を乗算し、調整時間を生成する工程、及び、
前記調整時間だけフレームクロックの時間を増加又は減少させる工程、
とを含んでいる、請求項１に記載の方法。
【請求項６】
位相差に減衰要素を乗算する工程の前に、目標同期位相角度とフレームクロックとの位相差を制限する工程をさらに含んでいる、請求項５に記載の方法。
【請求項７】
データパケットは、各フレームクロック時間に対して送信される、請求項１に記載の方法。
【請求項８】
ローカルフレームクロックについて、各受信プロセッサのデータパケットの到着時間が測定される、請求項１に記載の方法。
【請求項９】
タイムスタンプを各受信データパケットに割り当てる工程をさらに含んでいる、請求項１に記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、冗長デジタル制御システムの同期化に関するものであり、より具体的には、無人航空機(ＵＡＶ)のデジタルフライト制御システムの要素間におけるデータフローの同期化に関するものである。
【背景技術】
【０００２】
冗長フライト制御システムには、ＵＡＶに用いられる２以上のビークル管理コンピュータ(ＶＭＣ)が含まれており、ＵＡＶの信頼性を高めている。そのような冗長制御システムは、並列にオペレートされ、ＵＡＶの制御に関するデータを共有することができる。制御システムは、同期化されている必要があり、その結果、１つのＶＭＣから他のＶＭＣに制御のスムーズな移管を行なうことができ、制御処理ロジックを簡略化して、各ＶＭＣが大きな時間ズレなしに状態情報を共有できることが保証される。ある無人航空機(ＵＡＶ)が、フレーム同期手法で作動する二重冗長フライト制御コンピュータ(ＶＭＣ)アーキテクチャを用いることにより、２００フライトしても、航空機に１度たりとも壊滅的な損失を生じさせないという目標を達成できる。
【発明の開示】
【発明が解決しようとする課題】
【０００３】
壊滅的な損害の確率を低減するために、複数の冗長ＵＡＶ−ＶＭＣのアーキテクチャが用いられている。このため、複数の冗長ＵＡＶ−ＶＭＣアーキテクチャのフレームクロックを同期化する必要がある。
【課題を解決するための手段】
【０００４】
複数のプロセッサにあるフレームクロックを同期化する方法であって、各プロセッサから他の夫々のプロセッサにデータパケットを送信する工程を含んでおり、各プロセッサは、データパケットを受信し、最大位相差を有する２つのデータパケットを特定する。最大位相差は、目標同期位相角度を決定するために用いられ、フレームクロックの時間が調整されて、フレームクロックは、目標同期位相角度に近づく。
【発明を実施するための最良の形態】
【０００５】
図を参照すると、図１は、無人航空機用のフライト制御システムを示すブロック図である。フライト制御システム(10)には、複数のビークル管理コンピュータ(ＶＭＣ)(マイクロプロセッサ又はプロセッサとも言う)(12)(14)(16)(18)が含まれ、オペレーショナルフライトプログラム(ＯＦＰ)のようなフライト制御に用いられるソフトウェアを実行する。ＶＭＣインターフェースは、航空機を制御する種々のセンサやアクチュエータと相互作用する。ＶＭＣは、フレームクロック信号を生成する別個のプログラム制御可能なクロックからタイミング信号を用いてオペレートされる。フレームクロック信号により規定される時間は、フレームクロック時間(frame clock periods)と称される。フレームクロック時間は、ＶＭＣのオペレーションのタイミングを制御するために用いられる。コンピュータは、個々にオペレートできるが、同期してオペレートする必要があり、その結果、制御機能は、１つのコンピュータから他のコンピュータに容易に移管できるようになし、状態情報は重要なタイムスキューなしに共有される。クロスチャンネルデータリンク(ＣＣＤＬ)(22)(24)(26)(28)は、ＶＭＣ間のデータ及び制御情報の移管に用いられる。
【０００６】
本発明は、すべてのＶＭＣを同期化するためのタイムベースを決定する決定ロジックを提供するものである。一実施例として、同期化方法には、ソフトウェアにより実行される位相ロックループが用いられ、参加するすべてのＶＭＣが、互いに１マイクロ秒以内又は１マイクロ秒程度でフレームクロックをオペレートする。その時間は、割込処理待ち時間(即ち、ＶＭＣが割込信号を受信した時刻と、プロセッサが割込処理アルゴリズムの実行を開始する時間との間の時間)と、アルゴリズムで用いられる減衰比に依存する。
【０００７】
本発明を実行するフライト制御システムでは、各ＶＭＣは、Ｎ−１の他のＶＭＣ(ＮはＶＭＣの合計数である)に接続され、その接続は双方向クロスチャンネルデータリンク(ＣＣＤＬ)を介して行なわれる。各ＶＭＣは、プログラム制御可能な時間(a programmable period)を有するフレームクロックを含んでいる。ＶＭＣのフレームクロック時間は、初期設定では同じである。しかしながら、各ＶＭＣのソースクロック発振器は、自励発振型であり、ソースクロック発振器は互いに位相が異なるから、各ＶＭＣの実際のフレームクロック時間に違いが生ずる。さらに、１以上のＶＭＣの不具合によって、起動中及び通常のオペレーション中を含み、参加するＶＭＣの数は、時間と共に変化する。
【０００８】
ＶＭＣは、調子(health)、状況、センサ及び状態情報データを各フレーム毎にＣＣＤＬ上で互いに送信する。各ＶＭＣに他の各々のＶＭＣからＣＣＤＬデータが実際に到着する時間は測定できる。他のＶＭＣへ送信されるＶＭＣのＣＣＤＬ伝送の予想到着時間は既知であり、その時間は、送信ＶＭＣのフレームクロックに等しい。所定のＶＭＣからＣＣＤＬデータが到着する時間は、基本的にすべての受信ＶＭＣについて同じである。
【０００９】
各ＶＭＣは、ＣＣＤＬデータの伝送を、所定のパケット伝送時間だけ、フレームクロックより先に、他のすべてのＶＭＣに対して開始する。ＶＭＣは、現在のローカルフレームクロックと比較して、他のＶＭＣからのＣＣＤＬデータパケットの到着時間を測定する。ＣＣＤＬデータが受信されなければ、システムは、シングルＶＭＣモードでオペレートされるから、如何なるアクションも起こさない。
【００１０】
各ＶＭＣは、現在のローカルフレーム時間と、他のＶＭＣからのＣＣＤＬデータの到着時間とを比較し、他のＶＭＣから受信したＣＣＤＬデータパケットにタイムスタンプを割り当てる。これにより、最大位相差を有する２つのタイムスタンプが識別される。一方のタイムスタンプは、現在の時間となる。なぜなら、現在の時間は、他のＶＭＣにおいてＶＭＣのＣＣＤＬデータの到着時間に対応しているからである。
【００１１】
最大位相差を有する２つのタイムスタンプの位相差を表わす角度は二分され、１８０°の位相角が、目標同期位相角度の決定のために加算される。これにより、現在時刻と目標位相角度との位相差が決定される。次のフレームクロックの時間は、減衰比を乗算した位相差に等しい調整時間だけ増加又は減少する。
【００１２】
本発明の一実施例として、フレーム同期方法は、マルチ冗長フライト制御コンピュータシステムに用いられる。本方法は、ソフトウェアで実行され、各フライト制御コンピュータで内部割込クロックを調整するサーボループに基づいているため、受信予想時間は、４００ヘルツのクロスチャンネルデータリンクデータパケットの実際の受信時間と一致する。時間は、各ＶＭＣが同じパートを用いて測定する限り、データパケットの如何なるパートからでも測定することができる。
【００１３】
各プロセッサに対する内部タイマー割込クロックは、公称４００ヘルツでプロセッサに割り込むように初期設定することができる。４００ヘルツ内部タイマークロック割込を受信すると、各プロセッサは、クロスチャンネルデータリンクを通じて８０バイトのパケットを送信し、他のＶＭＣからのデータパケットが受信された時間を測定する。製造の許容誤差により、各ＶＭＣでマイクロプロセッサの時間を刻む水晶は、正確に同じ周波数では作動していない。このため、パケットの受信時間と、パケットの予想受信時間との間に時間差が生ずることになる。この時間差は、各ＶＭＣの内部タイマー割込クロックに読み込まれた値を調整するために用いられる。
【００１４】
図２の円グラフは、３つのＶＭＣに対する本発明のオペレーションを示している。全円(40)は、公称フレームクロック時間の１サイクルを表している。Ｘ軸(42)は、特定のＶＭＣの現在時間(ゼロ位相エラー)を表している。円上の他の地点は、他のＶＭＣからのＣＣＤＬデータのフレーム相対到着時間を表しており、位相角関係を示している。例えば、Ｘ軸上の地点(44)がＶＭＣ−Ａを表している場合、地点(46)は、ＶＭＣ−ＢからのＣＣＤＬデータの到着時間を表し、地点(48)は、ＶＭＣ−ＣからのＣＣＤＬデータの到着時間を表わす。角φmは、データ到着時間間の最大位相差を表している。角φmは、線(50)によって図示されるように二分される。二分された角に１８０°の位相シフトを加えると、線(52)と円上の地点(54)で表わされる目標収束角度が決定される。
【００１５】
各ＶＭＣは、基本的に、各ＶＭＣの現在時間に基づく位相エラーが０°(Ｘ軸に沿う)である像を単に回転させた同じ像を有している。上記のアルゴリズムは、Ｎ個の全ＶＭＣが、全体の同じ最大区画を検出する結果となり、それら時間を調整することで、前記区画がサイクル毎により大きくなる。この場合、ＶＭＣ−Ａは、サイクルを時計方向に回転し(即ち、フレーム時間を増加させる)、ＶＭＣ−Ｂは、サイクルを反時計方向に回転し(即ち、フレーム時間を減少させる)、ＶＭＣ−Ｃは、ＶＭＣ−Ｂよりも遅くサイクルを反時計方向に回転させる(即ち、フレーム時間を減少させる)。最終的に、より小さな区画(ＶＭＣ−ＢとＶＭＣ−Ｃとの間、及び、ＶＭＣ−ＡとＶＭＣ−Ｃとの間)は縮小し、事実上、ジッタのみとなる。ジッタとは、調整されたフレーム時間における微増又は微減を表わすために用いられる語であり、最小サイズのフレーム時間の最小サイズに縮小しても削除されず、調整を行なうために用いることができ、同期アルゴリズムがどのくらい速く実行されるかの原因となる。通常、ジッタは、時間の不確定性の程度が小さいので、コンピュータを同期化手法(即ち、フライト制御アルゴリズムのソフトウェアが同じ速度で実行されていない)で作動させることはない。位相エラー極限(phase error extremes)にある２つのＶＭＣは、目標同期位相角度に向かって対称的に収束する。他のすべてのＶＭＣもまた、収束するが、これらの位相エラーは、必然的により小さいものとなるので、より遅い速度で収束する。
【００１６】
数サイクル後、円は、図３に示すような状態となる。すべてのＶＭＣは、目標位相角度(線(54)で示す)に向けて収束する。目標位相角度は、最大位相エラーφmだけが大きくなるので変化しない。図３において、地点(44')は、プロセッサＶＭＣ−Ａからのデータパケットの到着時間を表しており、地点(46')は、プロセッサＶＭＣ−Ｂからのデータパケットの到着時間を表しており、地点(48')は、プロセッサＶＭＣ−Ｃからのデータパケットの到着時間を表している。図３の場合、ＶＭＣ−Ｃは、目標位相角度のとても近くまで収束している。最終的には、ＶＭＣ−ＡとＶＭＣ−Ｂは両方とも収束する。
【００１７】
図４は、系統図であり、プロセッサのタイミングを調整する方法を記述するために用いることができる。本方法は、パケットの受信時刻と、パケットの受信期待時刻との時間差を算出することにより開始される。受信期待時間は、送信されたパケットにパケット伝送時間を加えた時間と等しい。パケットが受信された時間は、線(60)で示すように入力され、線(62)で示す受信期待時間と比較され、線(64)に示す時間差が生成される。この差分は、デジタルリミッタ(66)を通して、４００ヘルツ割込タイマークロックに悪影響を与えるような不等な差分値を防ぐ。デジタルリミッタの出力には、ブロック(68)で示すように、１／３２のゲイン即ち減衰係数が乗算され、ブロック(70)で示されるように、２.５ミリ秒(１／４００ヘルツは２.５ミリ秒に等しい)が加算される。ブロック(72)は、この新たな値をリロードする。パケットが送信された時間は、線(74)で示すような出力となる。受信期待時間は、ブロック(76)で示す通常のパケット伝送時間に、パケットが送信された時間を加算することで生成される。次の４００ヘルツ割込では、パケットの受信される期待時間は、他のＶＭＣからのパケットを実際に受信した時刻により近いものとなる。この調整は、パケットが受信される期待時刻と、パケットが受信される時間との時間差がゼロ又は殆んどゼロとなるまで継続して行なわれる。
【００１８】
減衰比は、同期化オペレーションの間、初期同期速度とジッタ量の両方に影響を与える。高減衰比では、行き過ぎ量が小さく、低ジッタのより遅い初期同期となる。逆に、低減衰比では、行き過ぎ量が大きく、高ジッタのより速い初期同期となる。１／３２の減衰係数は、マルチ冗長構成に適している。
【００１９】
本発明の方法は、タイムスタンプを受信データパケットに割り当てることにより実行することができる。タイムススタンプ選択アルゴリズムは、各ＣＣＤＬからのデータを最初にチェックするために用いられる。データが受信されると、ローカルバッファにコピーされる。受信データが他のＶＭＣからのものであるときは、ＶＭＣは、追加データを受信すること及び、少なくとも１データパケットが受信されていることを表示する用意ができている。
【００２０】
複数のＶＭＣが、ＶＭＣ−Ａ、ＶＭＣ−Ｂ、ＶＭＣ−Ｃ等で特定されている実施例について考える。ＶＭＣ−Ａが、ＶＭＣ−ＢからＣＣＤＬメッセージのタイムスタンプ値を受信した後、他のＶＭＣからのＣＣＤＬデータのすべてのタイムスタンプは、ＶＭＣ−Ａメッセージタイムスタンプと比較して標準化される。
【００２１】
同期化アルゴリズムのステートマシンは、アルゴリズムがオペレートされているモード下で制御され、ステートマシンが「同期モード」にあり、ＶＭＣ−ＢとＶＭＣ−Ｃとの時間差が、合計時間の３／４以上であれば、ステートマシンを「非同期モード」に戻す。システムがシングルＶＭＣモードであれば、アルゴリズムを終了させる。
【００２２】
多数のＶＭＣがアクティブであれば、非ゼロのタイムスタンプはすべて、期待データパケット時間と実際のデータパケット時間との差分を３６０°で分割することにより、３２ビットの整数値(即ち、ＬＢＡＭ、言い換えれば、ラージバイナリ角度測定であり、ＬＢＡＭは、コンピュータメモリに存在する数を記述するために用いられる語であり、３２ビット整数で３６０°を２32個の等しい量に分割して表わされる)で位相角に変換される。最大絶対位相差、即ち、位相デルタは重要である。この計算では、通常の水晶速度が用いられており、ＶＭＣは、実際の時間を測定せずに、各ＶＭＣのローカル水晶のみを参照することに留意すべきである。
【００２３】
このようにして、位相角度が、各チャンネルに対して計算される。単純挿入ソートは、位相角度を最小位数から最大の位数にするために用いられる。次に、最大デルタ位相角度が検出され、二分されると、対向角は、１８０°を加算して計算される。(符号付きの)結果は、このＶＭＣに対するフレームクロックと、目標位相角度との位相エラーとなる。
【００２４】
新たなフレームクロック時間は、適当に減衰した位相エラーを用いることで決定される。負の位相エラーは、ＶＭＣが進んでおり、その時間を長くする必要があることを示している。正の位相エラーは、ＶＭＣが遅れており、その時間を短くする必要があることを示している。減衰デルタ時間が、合計フレーム時間の２５％よりも小さければ、このＶＭＣは同期状態にあり、このＶＭＣは、その他の同期ロジックステートマシンを実行して、ＶＭＣをブートする方法を決定する。
【００２５】
他のＶＭＣの同期状態が、チェックされると、１以上の他のＶＭＣが既に起動し、作動しているかどうかがわかる。少なくとも１つの他のＶＭＣが、完全同期モード(SYNC FULL mode)であることが示されると、これは、ウォーム状態ブートアップ(a warm state boot-up)となり、このＶＭＣは、完全同期モードに戻る。しかし、１以上であるがすべてではないＶＭＣが完全同期モードであれば、このＶＭＣが部分同期モード(SYNC PART mode)であることが示される。完全同期は、すべてＶＭＣが同期して作動していることを示すステートマシンのモードであり、部分同期は、１以上のＶＭＣが同期して作動していることを示すステートマシンのモードである。
【００２６】
このＶＭＣが、部分同期モードにあれば、フレームカウントを、他のフレームカウントと等しくなるよう設定し、他のＶＭＣが部分同期モード又は完全同期モードであれば、同期モードを完全同期に設定する。
【００２７】
このＶＭＣが、完全同期モードであり、どのＣＣＤＬからもパケットを受信していなければ、フレーミングエラーがあることとなる。
【００２８】
次に、ＶＭＣは、ローカルＣＣＤＬパケットを確立し、他のＶＭＣにそれを伝送する。最初に、ＶＭＣは、予めバッファスペースを要求することなく、１つのパケットを一度に送信することができる。これは、問題を生み出さず、真のＶＭＣ−ＣＣＤＬは、静的に割り付けられたバッファを信頼することができる。
【００２９】
転送予想(forward extrapolation)は、ローカルＶＭＣクロックに対し、このＶＭＣから送られたＣＣＤＬデータを他のＶＭＣがいつ受信するかを決定する。この予想時間を「ｍスタンプ」と呼ぶ。ＶＭＣが同期していると、「ｍスタンプ」は、他のＶＭＣから受信したタイムスタンプに近づく。このプロセスは、ＶＭＣが転送を行っていないときでも実施され、上述した同期ロジックを簡略化することに留意すべきである。
【００３０】
本発明によって、幾つかの条件は満たされる。すべての参加するＶＭＣが、転送フレームクロック調整が何であるかについて同じ決定に至らなければならない。すべてのＶＭＣが特別な「モード」のない同じアルゴリズムを実行することが強く望まれる。さらに、各ＶＭＣは、ＶＭＣ構成の中で、特有のアシンメトリーを信頼してはならない(例えば、ＶＭＣ−Ｂは、それがＶＭＣ−Ａであることが判っているという単純な理由で、ＶＭＣ−Ａが、ＶＭＣ−Ｂとは何か異なったことを行なう)。
【００３１】
本発明は、２以上のＶＭＣのフレームクロックを同期化させる方法を提供する。本方法は、参加するすべてのＶＭＣに連続的に適用されるアルゴリズムを含んでおり、初期のＶＭＣ同期化と、初期後に続く連続的な同期化の両方を提供する。フレームクロック位相ロックの概念は、多数のＶＭＣに適合させるために一般化できる。本方法は、多数のＯＦＰに対しても本質的に安定なアルゴリズムを組み入れることができる。また、ウォームリスタート又はコールドリスタートの何れかが必要なＯＦＰ障害があっても本質的に安定している。
【００３２】
決定ロジックは、参加するすべてのＶＭＣが、ＶＭＣ構成でアシンメトリーとは無関係の同期のための同じタイムベースに収束することを保証する。言い換えれば、すべてのＶＭＣは、特定の「モード」なしに同じアルゴリズムを実行しており、特定のアシンメトリーを信頼してはいない。「特定モード」とは、それがどのＶＭＣであるのかに応じて別々にオペレートをするアルゴリズムであり、各ＶＭＣが、ソフトウェアを等しくロードする代わりに、ソフトウェアの唯一のロードを有していなければならないことを基本的に意味している。「アシンメトリー」は、ＶＭＣに対する一種のハードウェア入力であり、ＶＭＣに対して、それらがＶＭＣ−Ａ又はＶＭＣ−Ｂ又はＶＭＣ−Ｃ等であることを告知することができる。
【００３３】
本発明は、複数オペレーショナルフライトプログラム(ＯＦＰ)を同期化する方法を提供するものであり、フレームの同期的なオペレーションと、ＵＡＶのポジティブな制御を維持する。加えて、アルゴリズムは、コールドリスタート、ウォームリスタート及びホットリスタートに対する通常のタイムベースに収束することを保証する。収束は、すべてのＶＭＣが、データパケットが期待される時刻及びそれが実際に受信された時刻との間のデルタ時間差分を測定し、且つ、各ＶＭＣがこれらの差分の分類を行なって、同期化アルゴリズムで各ＶＭＣによる「最大」差分を使用できることを保証する、という事実に基づいて保証される。
【００３４】
一実施例として、位相ロックの概念を用いることで、アルゴリズムに用いられる割込処理待ち時間及び減衰比により、参加するすべてのＶＭＣが、１マイクロ秒程度内でフレームクロックをオペレートすることを許容する。減衰比は、同期化されたオペレーション中に、初期同期速度及び「ジッタ」量の両方に影響を与える。高減衰比では、行き過ぎ量が小さく、低ジッタのより遅い初期同期となる。逆に、低減衰比では、行き過ぎ量が大きく、高ジッタのより速い初期同期となる。１／３２の減衰比は、１つの実施例として用いられている。
【００３５】
本発明の方法は、各ＶＭＣ内の各フレームに対して以下の工程を行なうことで実行することができる。
【００３６】
１)ローカルカレントフレームクロックに対して、他のＶＭＣからのＣＣＤＬデータパケットの到着時間に着目する。データパケットは、各ＶＭＣが他のＶＭＣと交信し、送信ＶＭＣの状況、調子、状態及びセンサ情報を規定する情報のパケットである。各プロセッサで実行されるソフトウェアは、周期的な割込信号を利用し、各ＶＭＣにあるプロセッサにそのデータパケットを送信することを告知する。パケットが、１以上の他のＶＭＣから受信されない場合には、受信ＶＭＣは、それがシングルストリングモードで作動しているのか、部分同期モードで作動しているのか、または、完全同期モードで作動しているのかを決定する。
【００３７】
２)パケット伝送時間だけ、ローカルフレームクロックより先に、他のすべてのＶＭＣに対してＣＣＤＬデータの転送を開始する。
【００３８】
３)ＣＣＤＬデータが受信されなければ、アクションは行なわない。これは、シングルＶＭＣモードを表わす。
【００３９】
４)現在時間と他のＶＭＣからのＣＣＤＬデータの到着時間を比較する。最大位相差を有する２つのタイムスタンプを特定する。一方のタイムスタンプは、現在時間とすることができる。現在時間は、他のＶＭＣにおける、ＶＭＣのＣＣＤＬデータの到着時間に対応している。
【００４０】
５)２つのタイムスタンプの位相差を二分し、目標同期位相角度である１８０°を加算する。
【００４１】
６)現在時間と目標位相角度との位相差を決定する。
【００４２】
７)減衰比を乗算された位相差だけ、次のフレームクロック時間を増加(又は減少)する。
【００４３】
８)繰り返し
【００４４】
アルゴリズムの効果は、各ＶＭＣに、フレームクロック時間が、通常のフレームクロック時間よりも短く又は長くなるように調整させることであり、すべてのＶＭＣを他のＶＭＣと同期した同じクロック時間に向けて収束させることができる。航空機制御システムでは、「通常のフレームクロック時間」は、システムアーキテクチャによって決定され、内部センサが、フライト制御を行なうために交互に用いられる姿勢と速さの変化を測定する速度によって通常設定される。このアルゴリズムの正確さへの鍵は、参加するすべてのＶＭＣが、最大位相差に関して同じ結論に達しており、同期化するための共通の位相角度に同意することができる(する)という事実に置かれる。
【００４５】
本発明に従って構築されたシステムでは、各ＶＭＣは、フレームクロック時間を通常のフレームクロック時間よりも短く又は長くなるように調整することで、すべてのＶＭＣが、他のＶＭＣと同期した同じクロック時間に向けて収束する。
【００４６】
本アルゴリズムは、各ＶＭＣからクロスチャンネルデータリンク(ＣＣＤＬ)を介したメッセージの伝送又は受信を、メッセージが送信された時間を調整するために利用しており、参加するすべてのＶＭＣによって継続的に適用される。アルゴリズムは、初期ＶＭＣ同期化と、初期設定後の各ＶＭＣの互いの継続的な同期化の両方を行なうことができる。
【００４７】
本発明は、現在の望ましい実施例に基づいて記載されたものであり、当業者であれば、特許請求の範囲に規定された発明の範囲から離れることなく、開示された実施例に種々の変更を加えることができることは明らかである。
【図面の簡単な説明】
【００４８】
【図１】本発明を利用することのできるフライト制御システムのブロック図である。
【図２】本発明のオペレーションを説明する図である。
【図３】本発明のオペレーションを説明する図である。
【図４】本発明を実施する際に用いることができるＶＭＣソフトウェアで実行されるデジタル位相ロックループの説明図である。
【符号の説明】
【００４９】
(10)  フライト制御システム
(12)  ＶＭＣ
(14)  ＶＭＣ
(16)  ＶＭＣ
(18)  ＶＭＣ
【図１】
2006229956.tif 000003
【図２】
2006229956.tif 000004
【図３】
2006229956.tif 000005
【図４】
2006229956.tif 000006
【外国語明細書】
2006229956000001.pdf