(57)【要約】【課題】航空機に連続飛行軌道を提供するための方法および装置を提供する。【解決手段】航空機を制御するための装置および方法が記載されている。コンピューティングデバイスは、ウェイポイントを経由する出発地から目的地への飛行計画を受信することができ、飛行計画の飛行軌道を計算することができる。航空機が飛行軌道に沿って飛行するように制御している間、コンピューティングデバイスは、飛行計画を変更する入力を受信することができ、その結果、軌道が再計算される。入力が飛行計画を変更して軌道の再計算をもたらすための入力を含むと判断した後、コンピューティングデバイスは、新しい飛行計画についての新しい飛行軌道を計算することができる。新しい飛行軌道を計算した後、コンピューティングデバイスは、飛行軌道から新しい飛行軌道に切り替えることができ、切り替え中、航空機は飛行軌道に沿って連続飛行を維持する。【選択図】図1
2020042011.tif 000002
【特許請求の範囲】
【請求項１】
航空機（100）を制御するための方法（800）であって、前記方法は、
コンピューティングデバイス（102，200）において、出発地から目的地へ1つまたは複数のウェイポイントを経由して飛行するための第1の飛行計画を含む1つまたは複数の第1の飛行計画関連入力（140，630）を受信するステップ（810）と、
前記コンピューティングデバイスを使用して前記第1の飛行計画のための第1の飛行軌道（312，414）を計算するステップ（820）と、
前記第1の飛行軌道に沿って飛行するように前記航空機を制御しながら（830）、前記コンピューティングデバイスが、
前記第1の飛行計画を第2の飛行計画に変更する1つまたは複数の第2の飛行計画関連入力（460）を受信するステップ（830）と、
前記第2の飛行計画関連入力が、前記出発地を変更する入力、前記目的地を変更する入力、前記1つまたは複数のウェイポイントにウェイポイントを追加する入力、および前記1つまたは複数のウェイポイントのウェイポイントを削除する入力のうちの1つまたは複数を含むかどうかを判断するステップ（830）と、
前記第2の飛行計画関連入力が、前記出発地を変更する入力、前記目的地を変更する入力、前記1つまたは複数のウェイポイントにウェイポイントを追加する入力、および前記1つまたは複数のウェイポイントのウェイポイントを削除する入力のうちの1つまたは複数を含むと判断した後、前記第2の飛行計画のための第2の飛行軌道（434，534）を計算するステップ（830）と、
前記コンピューティングデバイスが前記第2の飛行軌道を計算した後、前記コンピューティングデバイスを使用して前記第1の飛行軌道に沿って飛行するように前記航空機を制御することから前記第2の飛行軌道に沿って飛行するように前記航空機を制御することへの切り替えを実行するステップ（840）であって、前記航空機は、前記切り替え中、前記第1の飛行軌道に沿って連続飛行を維持する、ステップ（840）と
を含む、方法。
【請求項２】
前記コンピューティングデバイスが、第1の軌道プロセス（124A，310，610A）と、第2の軌道プロセス（124N，330，610N）と、前記第1の軌道プロセスと前記第2の軌道プロセスの両方に関連する入力ルータ（122）とを有する軌道計算機（120）を備え、
前記第1の飛行計画の前記第1の飛行軌道を計算するステップは、前記第1の軌道プロセスを使用して前記第1の飛行計画の前記第1の飛行軌道を計算するステップを含み、
前記第2の飛行計画の前記第2の飛行軌道を計算するステップは、前記第1の軌道プロセスがアクティブな間に前記第2の軌道プロセスを使用して前記第2の飛行計画の前記第2の飛行軌道を計算するステップを含み、
前記第1の飛行軌道に沿って飛行するように前記航空機を制御することから前記第2の飛行軌道に沿って飛行するように前記航空機を制御することへの前記切り替えを実行するステップは、
前記入力ルータを使用して前記第1の軌道プロセスが非アクティブであることを判断するステップ、および
前記入力ルータを使用して前記第2の軌道プロセスがアクティブであることを判断するステップ
を含む、
請求項1に記載の方法。
【請求項３】
前記入力ルータが入力決定エンジン（128）を備え、前記第1の飛行軌道に沿って飛行するように前記航空機を制御することから前記第2の飛行軌道に沿って飛行するように前記航空機を制御することへの前記切り替えを実行するステップは、
前記入力ルータで飛行計画の変更を示す変更指示（460，630，710）を受信するステップと、
前記入力決定エンジンを使用して、前記変更指示に基づいて軌道プロセスを変更すると決定するステップと、
軌道プロセスを変更すると決定した後、前記入力ルータが、前記第1の軌道プロセスを利用することから前記第2の軌道プロセスを利用することに切り替える（732）ことを決定するステップと
を含む、請求項2に記載の方法。
【請求項４】
前記変更指示が前記飛行計画の前記変更の理由を示し（720）、前記入力決定エンジンを使用して前記変更指示に基づいて軌道プロセスを変更すると決定するステップは、前記飛行計画の前記変更の前記理由に基づいて軌道プロセスを変更すると決定するステップを含み、
前記飛行計画の前記変更の前記理由は、飛行計画がアクティブ化されたことを示す理由（730）、飛行計画が非アクティブ化されたことを示す理由（740）、飛行計画が実行されたことを示す理由（730）、飛行計画が破棄されたことを示す理由（740）、および飛行計画が編集されたことを示す理由（740）のうちの1つまたは複数を含む、
請求項3に記載の方法。
【請求項５】
前記コンピューティングデバイスが出力ルータ（126）をさらに備え、前記入力決定エンジンを使用して前記変更指示に基づいて軌道プロセスを変更すると決定するステップは、
前記入力決定エンジンを使用して軌道プロセスの変更を示す1つまたは複数のタグ（642）を生成するステップと、
軌道プロセスの前記変更を前記出力ルータに示す前記1つまたは複数のタグを設けるステップであって、軌道プロセスの前記変更を前記出力ルータに示す前記1つまたは複数のタグを設ける前記ステップは、
前記第1の飛行計画が前記第1の軌道プロセスに対して非アクティブであることを示す前記1つまたは複数のタグのうちの第1のタグを設けるステップ、および
前記第2の飛行計画が前記第2の軌道プロセスに対してアクティブであることを示す前記1つまたは複数のタグのうちの第2のタグを設けるステップ
を含む、ステップと
を含む、請求項3に記載の方法。
【請求項６】
軌道プロセスの前記変更を前記出力ルータに示す前記1つまたは複数のタグが設けられた後、前記出力ルータが、前記第2の飛行軌道に基づいて前記航空機の飛行管理システムに前記航空機を制御するための前記第2の軌道プロセスの飛行軌道出力を提供するステップ（662）
をさらに含む、請求項5に記載の方法。
【請求項７】
前記軌道計算機が第3の軌道プロセス（124B，320，610B）をさらに含み、前記方法は、
前記コンピューティングデバイスにおいて、前記第1の飛行計画および前記第2の飛行計画とは異なる第3の飛行計画に関する1つまたは複数の第3の飛行計画関連入力を受信するステップと、
前記第3の軌道プロセスを使用して前記第3の飛行計画のための第3の飛行軌道（332）を計算するステップと、
前記第3の軌道プロセスが前記第3の飛行軌道を計算した後、前記コンピューティングデバイスを使用して前記第2の飛行軌道に沿って飛行するように前記航空機を制御することから前記第3の飛行軌道に沿って飛行するように前記航空機を制御することへの第2の切り替えを実行するステップと、
をさらに含み、少なくとも、
前記入力ルータを使用して前記第2の軌道プロセスが非アクティブであると判断し、
前記入力ルータを使用して前記第3の軌道プロセスがアクティブであると判断し、前記航空機は前記第2の切り替え中に前記第2の飛行軌道に沿った連続飛行を維持し、
前記第3の飛行計画関連入力は、気象条件データを変更するための入力、航空機重量データを変更するための入力、および航空機速度データを変更するための入力のうちの1つまたは複数を含む、
請求項2に記載の方法。
【請求項８】
前記第1の飛行軌道が、横方向軌道（312，322，332）または横方向および垂直方向の軌道（314，324，334，414，434，534）を含む、請求項1に記載の方法。
【請求項９】
前記第1の飛行軌道に沿って飛行するように前記航空機を制御することから前記第2の飛行軌道に沿って飛行するように前記航空機を制御することへの前記切り替えを実行するステップが、中断することなく前記第1の飛行軌道に沿って飛行するように前記航空機を制御することから前記第2の飛行軌道に沿って飛行するように前記航空機を制御することへの前記切り替えを実行するステップを含む、請求項1に記載の方法。
【請求項１０】
中断することなく前記第1の飛行軌道に沿って飛行するように前記航空機を制御することから前記第2の飛行軌道に沿って飛行するように前記航空機を制御することへの前記切り替えを実行するステップが、前記切り替えの間中、前記第1の飛行軌道と前記第2の飛行軌道を並行して処理するステップを含む、請求項1に記載の方法。
【請求項１１】
1つまたは複数のプロセッサ（203）と、
前記1つまたは複数のプロセッサによって実行されると、コンピューティングデバイスに機能を実行させる少なくともコンピューター読み取り可能な命令（206）を格納する1つまたは複数の非一時的コンピューター読み取り可能な媒体（204）と、
を備えるコンピューティングデバイス（102，200）であって、
前記機能は、
出発地から目的地へ1つまたは複数のウェイポイントを経由して航空機（100）を飛行させるための第1の飛行計画を含む1つまたは複数の第1の飛行計画関連入力（140，630）を受信すること（810）、
前記第1の飛行計画のための第1の飛行軌道（312，414）を計算すること（820）、
前記第1の飛行軌道に沿って飛行するように前記航空機を制御しながら（830）、
前記第1の飛行計画を第2の飛行計画に変更する1つまたは複数の第2の飛行計画関連入力（460）を受信し（830）、
前記第2の飛行計画関連入力が、前記出発地を変更する入力、前記目的地を変更する入力、前記1つまたは複数のウェイポイントにウェイポイントを追加する入力、および前記1つまたは複数のウェイポイントのウェイポイントを削除する入力のうちの1つまたは複数を含むかどうかを判断し（830）、
前記第2の飛行計画関連入力が、前記出発地を変更する入力、前記目的地を変更する入力、前記1つまたは複数のウェイポイントにウェイポイントを追加する入力、および前記1つまたは複数のウェイポイントのウェイポイントを削除する入力のうちの1つまたは複数を含むと判断した後、前記第2の飛行計画のための第2の飛行軌道（434，534）を計算すること（830）、および、
前記第2の飛行軌道を計算した後、前記第1の飛行軌道に沿って飛行するように前記航空機を制御することから前記第2の飛行軌道に沿って飛行するように前記航空機を制御することへの切り替えを実行し、前記航空機は、前記切り替え中、前記第1の飛行軌道に沿って連続飛行を維持すること（840）、
を含む、
コンピューティングデバイス（102，200）。
【請求項１２】
第1の軌道プロセス（124A，310，610A）と、第2の軌道プロセス（124N，330，610N）と、前記第1の軌道プロセスと前記第2の軌道プロセスの両方に関連する入力ルータ（122）とを有する軌道計算機（120）をさらに備え、
前記第1の飛行計画の前記第1の飛行軌道を計算することは、前記第1の軌道プロセスを使用して前記第1の飛行計画の前記第1の飛行軌道を計算することを含み、
前記第2の飛行計画の前記第2の飛行軌道を計算することは、前記第1の軌道プロセスがアクティブな間に前記第2の軌道プロセスを使用して前記第2の飛行計画の前記第2の飛行軌道を計算することを含み、
前記第1の飛行軌道に沿って飛行するように前記航空機を制御することから前記第2の飛行軌道に沿って飛行するように前記航空機を制御することへの前記切り替えを実行することは、
前記入力ルータを使用して前記第1の軌道プロセスが非アクティブであると判断すること、および
前記入力ルータを使用して前記第2の軌道プロセスがアクティブであると判断すること
を含む、
請求項11に記載のコンピューティングデバイス。
【請求項１３】
前記入力ルータが入力決定エンジン（128）を備え、前記第1の飛行軌道に沿って飛行するように前記航空機を制御することから前記第2の飛行軌道に沿って飛行するように前記航空機を制御することへの前記切り替えを実行することは、
前記入力ルータで飛行計画の変更を示す変更指示（460，630，710）を受信すること、
前記入力決定エンジンを使用して、前記変更指示に基づいて軌道プロセスを変更すると決定すること、および、
軌道プロセスを変更すると決定した後、前記入力ルータが、前記第1の軌道プロセスを利用することから前記第2の軌道プロセスを利用することに切り替える（732）ことを決定すること
を含む、請求項12に記載のコンピューティングデバイス。
【請求項１４】
前記変更指示が前記飛行計画の前記変更の理由を示し（720）、
前記入力決定エンジンを使用して前記変更指示に基づいて軌道プロセスを変更すると決定することは、前記飛行計画の前記変更の前記理由に基づいて軌道プロセスを変更すると決定することを含み、
前記飛行計画の前記変更の前記理由は、飛行計画がアクティブ化されたことを示す理由（730）、飛行計画が非アクティブ化されたことを示す理由（740）、飛行計画が実行されたことを示す理由（730）、飛行計画が破棄されたことを示す理由（740）、および飛行計画が編集されたことを示す理由（740）のうちの1つまたは複数を含む、
請求項13に記載のコンピューティングデバイス。
【請求項１５】
出力ルータ（126）をさらに備え、前記入力決定エンジンを使用して前記変更指示に基づいて軌道プロセスを変更すると決定することは、
前記入力決定エンジンを使用して軌道プロセスの変更を示す1つまたは複数のタグ（642）を生成すること、および、
軌道プロセスの前記変更を前記出力ルータに示す前記1つまたは複数のタグを設けること、
を含み、
軌道プロセスの前記変更を前記出力ルータに示す前記1つまたは複数のタグを設けることは、
前記第1の飛行計画が前記第1の軌道プロセスに対して非アクティブであることを示す前記1つまたは複数のタグのうちの第1のタグを設けること、および
前記第2の飛行計画が前記第2の軌道プロセスに対してアクティブであることを示す前記1つまたは複数のタグのうちの第2のタグを設けること
を含み、
前記機能は、
前記軌道プロセスの前記変更を前記出力ルータに示す前記1つまたは複数のタグが設けられた後、前記出力ルータが、前記第2の飛行軌道に基づいて前記航空機の飛行管理システムに前記航空機を制御するための前記第2の軌道プロセスの飛行軌道出力を提供すること（662）
をさらに含む、
請求項13に記載のコンピューティングデバイス。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、一般に、ビークルおよび航空機のナビゲーションに関し、より詳細には、航空機の飛行計画を使用して示されるような指定ルートがビークルの動作中に変化するときでさえも継続的に誘導を提供することによるビークルの制御に関する方法および装置に関する。
【背景技術】
【０００２】
航空機のための誘導、ナビゲーション、および制御システムには、航空機上のアビオニクスおよび関連する支援システムが含まれる。航空機上のアビオニクスは、おそらく飛行管理システムの一部として、オートパイロットを含むことができる。オートパイロットは、例えば航空機の操縦士または副操縦士など、人間のオペレータによる一定のハンズオン制御なしに航空機を制御するために使用することができる。オートパイロットは人間のオペレータに代わるものではなく、むしろ、オートパイロットは、人間のオペレータが航空機を制御するのを助ける。場合によっては、オートパイロットによって、人間のオペレータは、天気の監視および／または航空機の他の態様など、航空機の動作のより広い態様に集中することができる。
【発明の概要】
【課題を解決するための手段】
【０００３】
一例では、航空機を制御する方法が提供される。コンピューティングデバイスは、1つまたは複数の第1の飛行計画関連入力を受信する。第1の飛行計画関連入力は、1つまたは複数のウェイポイントを経由して出発地から目的地へ飛行するための第1の飛行計画を含む。コンピューティングデバイスは、第1の飛行計画についての第1の飛行軌道を計算する。第1の飛行軌道に沿って飛行するように航空機を制御しながら、コンピューティングデバイスは、第1の飛行計画を第2の飛行計画に変更する1つまたは複数の第2の飛行計画関連入力を受信し；第2の飛行計画関連入力が、出発地を変更する入力、目的地を変更する入力、1つまたは複数のウェイポイントにウェイポイントを追加する入力、および1つまたは複数のウェイポイントのウェイポイントを削除する入力のうちの1つまたは複数を含むかどうかを判断し；第2の飛行計画関連入力が、出発地を変更する入力、目的地を変更する入力、1つまたは複数のウェイポイントにウェイポイントを追加する入力、および1つまたは複数のウェイポイントのウェイポイントを削除する入力のうちの1つまたは複数を含むと判断した後、第2の飛行計画の第2の飛行軌道を計算する。コンピューティングデバイスが第2の飛行軌道を計算した後、コンピューティングデバイスは、第1の飛行軌道に沿って飛行するように航空機を制御することから第2の飛行軌道に沿って飛行するように航空機を制御することへの切り替えを実行し、航空機は、切り替え中、第1の飛行軌道に沿って連続飛行を維持する。
【０００４】
別の例では、コンピューティングデバイスが説明される。コンピューティングデバイスは、1つまたは複数のプロセッサ、および1つまたは複数のプロセッサによって実行されるとコンピューティングデバイスに機能を実行させる少なくともコンピューター読み取り可能な命令を格納するように構成された1つまたは複数の非一時的コンピューター読み取り可能な媒体を含む。機能は：航空機を出発地から目的地へ1つまたは複数のウェイポイントを経由して飛行させるための第1の飛行計画を含む1つまたは複数の第1の飛行計画関連入力を受信すること；第1の飛行計画のための第1の飛行軌道を計算すること；第1の飛行軌道に沿って飛行するように航空機を制御しながら、第1の飛行計画を第2の飛行計画に変更する1つまたは複数の第2の飛行計画関連入力を受信すること；第2の飛行計画関連入力が、出発地を変更する入力、目的地を変更する入力、1つまたは複数のウェイポイントにウェイポイントを追加する入力、および1つまたは複数のウェイポイントのウェイポイントを削除する入力のうちの1つまたは複数を含むかどうかを判断すること；第2の飛行計画関連入力が、出発地を変更する入力、目的地を変更する入力、1つまたは複数のウェイポイントにウェイポイントを追加する入力、および1つまたは複数のウェイポイントのウェイポイントを削除する入力のうちの1つまたは複数を含むと判断した後、第2の飛行計画のための第2の飛行軌道を計算すること；第2の飛行軌道を計算した後、第1の飛行軌道に沿って飛行するように航空機を制御することから第2の飛行軌道に沿って飛行するように航空機を制御することへの切り替えを実行し、航空機は、切り替え中、第1の飛行軌道に沿って連続飛行を維持すること、を含む。
【０００５】
さらに別の例では、非一時的コンピューター読み取り可能な媒体が説明される。非一時的コンピューター読み取り可能な媒体は、航空機に関連するコンピューティングデバイスの1つまたは複数のプロセッサによって実行されると、コンピューティングデバイスに機能を実行させるコンピューター読み取り可能な命令を格納している。機能は：出発地から目的地へ1つまたは複数のウェイポイントを経由して飛行させるための第1の飛行計画を含む1つまたは複数の第1の飛行計画関連入力を受信すること；第1の飛行計画のための第1の飛行軌道を計算すること；第1の飛行軌道に沿って飛行するように航空機を制御しながら、第1の飛行計画を第2の飛行計画に変更する1つまたは複数の第2の飛行計画関連入力を受信すること；第2の飛行計画関連入力が、出発地を変更する入力、目的地を変更する入力、1つまたは複数のウェイポイントにウェイポイントを追加する入力、および1つまたは複数のウェイポイントのウェイポイントを削除する入力のうちの1つまたは複数を含むかどうかを判断すること；第2の飛行計画関連入力が、出発地を変更する入力、目的地を変更する入力、1つまたは複数のウェイポイントにウェイポイントを追加する入力、および1つまたは複数のウェイポイントのウェイポイントを削除する入力のうちの1つまたは複数を含むと判断した後、第2の飛行計画のための第2の飛行軌道を計算すること；第2の飛行軌道を計算した後、第1の飛行軌道に沿って飛行するように航空機を制御することから第2の飛行軌道に沿って飛行するように航空機を制御することへの切り替えを実行し、航空機は、切り替え中、第1の飛行軌道に沿って連続飛行を維持すること、を含む。
【０００６】
説明された特徴、機能、および利点を、様々な実施形態において独立して達成することができ、または、さらに別の実施形態で組み合わせることが可能であり、そのさらなる詳細が以下の説明および図面を参照して理解され得る。
【図面の簡単な説明】
【０００７】
【図１】例示的な実施形態による航空機の図である。
【図２】例示的な実施形態によるコンピューティングデバイスのブロック図である。
【図３】例示的な実施形態による、軌道計算機が航空機の飛行軌道を計算するシナリオを示す図である。
【図４】例示的な実施形態による、軌道計算機が航空機の飛行軌道を計算するシナリオを示す別の図である。
【図５】例示的な実施形態による、軌道計算機が航空機の飛行軌道を計算するシナリオを示すさらに別の図である。
【図６】例示的な実施形態による、軌道計算機が航空機の飛行軌道の入力および出力をルーティングするシナリオを示す図である。
【図７】例示的な実施形態による、飛行計画を変更する理由に基づいてルーティング構成を決定するための方法のフローチャートである。
【図８】例示的な実施形態による、航空機を制御するための方法のフローチャートである。
【発明を実施するための形態】
【０００８】
本明細書で説明されるのは、飛行計画に沿ってオートパイロットを使用して航空機を誘導することに関連する技術、方法、および装置である。いくつかの例では、本明細書に記載の技術は、飛行計画と同様の計画に従うために自動化技術を使用する航空機以外の他のビークル、例えば、モータービークルの自動運転者、ボートの自動パイロット、船、または他の水上ビークルに適用可能である。従来技術は、全飛行経路を再計算することによって飛行計画の途中変更を処理し、それは飛行管理システム（FMS）による航空機の制御を中断することがある。飛行管理システムによる航空機の制御の中断は、航空機がオートパイロットを解放することを引き起こし得、そしておそらく予想外の進路変更をもたらし得る。これらの従来技術とは対照的に、本明細書に記載の技術は、現在の飛行計画から航空機の制御を提供し、飛行管理システムによる航空機の制御を中断することなく、現在の飛行計画から変更された飛行計画に切り替えることと並行して、変更された飛行計画の残りを計算することによって、飛行計画の途中変更を処理することによりオートパイロットおよび／または他の自律飛行システムを使用して航空機に連続誘導を提供し、それによって途中変更の処理による予期しない進路変更を回避する。
【０００９】
本明細書に記載の技術は、軌道計算機の1つまたは複数の機能を実行するためのソフトウェアを実行するコンピューティングデバイスによって実行することができる。軌道計算機は航空機の飛行計画を受信することができ、飛行計画は航空機が1つまたは複数のウェイポイントを経由して出発地の位置（または略して出発地）から目的地の位置（または略して目的地）まで飛行するか、そうでなければ移動することを指定する。他の例では、軌道計算機は、航空機以外のビークルについての移動計画を受信することができ、その移動計画は、ビークルが1つまたは複数のウェイポイントを経由して出発地から目的地まで移動することを指定することによって飛行計画に類似する。次いで、軌道計算機は、飛行計画から連続的な飛行可能な軌道を計算または「構築」し、例えば軌道計算機の出力を受信する飛行管理システムを使用して、軌道に沿って移動するように航空機を制御するための1つまたは複数の出力を生成することができる。
【００１０】
場合によっては、例えば、航空交通管制命令、気象条件の変化、航空機の重量データの変化、および／または航空機の速度データの変化が原因で、飛行計画は変更されることがある。場合によっては、飛行計画の変更には、パイロットまたは他の航空機要員による飛行計画の編集が含まれる。飛行計画が変更された場合、軌道計算機は元の飛行計画をコピーし、飛行計画のコピーに変更を加え、変更された飛行計画に基づいて新しい軌道を計算することができる。パイロットが新しい軌道を使用することを決定した場合、軌道計算機は新しい軌道の状態を非アクティブ状態または待機状態からアクティブ状態に変更することができ、非アクティブ状態の軌道は航空機の制御には使用できず、アクティブ状態の軌道は航空機の制御に使用できる。
【００１１】
軌道計算機は入力飛行計画に基づいて軌道を計算するので、飛行計画の状態が変化したときに軌道計算機は軌道計算を再開することができる。しかし、飛行計画と同じ方法で軌道をやり直すまたはコピーする代わりに、本明細書に記載の技術は、（飛行管理システムに関する限り）入力が変更されたとしても、編集された（または待機中の）軌道を新しい出力に再マッピングすることを含む。軌道を再マッピングするために、軌道計算機は、複数の軌道プロセスを使用して複数の軌道を同時に計算し、飛行計画および軌道の状態を追跡し、軌道プロセス間で切り替えることによっていつおよびどのように軌道を適切に再マッピングするかを決定できる。
【００１２】
軌道計算機は、飛行計画を飛行計画専用の軌道プロセスまたは「スイムレーン（swim−lane）」に割り当て、その飛行計画に関連する入力を飛行計画専用の軌道プロセスに指示（またはルーティング）する入力ルータを含むことができる。軌道計算機は、下流の飛行管理システム（例えば、オートパイロットシステム）による使用および／またはパイロットによる使用のために軌道プロセスの出力を指示（またはルーティング）することができる出力ルータを含むことができ、このため、下流の飛行管理システムおよび／またはパイロットは、割り当てられた軌道を使用して航空機を飛行させることができる。各軌道プロセスは、事前に計算された軌道を使用するための変更が実行されたとき、追加の機能を実行したり軌道計算を再開したりすることなく、いつでも（軌道計算後）航空機の制御に使用するために計算された軌道にアクセスできるように連続的に起動および維持され得る。
【００１３】
入力ルータは、入力をルーティングする、および／または別の方法で軌道プロセスを指示するための入力決定エンジン含むことができ、出力ルータは、軌道プロセスの出力をルーティングするための対応する出力決定エンジンを含むことができる。入力および出力決定エンジンはそれぞれ、各軌道プロセスの入力および出力が正しくルーティングされることをそれぞれ保証するそれぞれの規則のセットに従うことができる；すなわち、飛行計画FP＿EXAMPLEによって指定された軌道プロセスTP＿EXAMPLEの入力は入力決定エンジンによってTP＿EXAMPLEにルーティングされ、TP＿EXAMPLEの出力は出力決定エンジンによって必要に応じて下流のシステム（例えば、飛行管理システム、パイロットにフィードバックを提供するシステム）にルーティングされる。
【００１４】
入力決定エンジンは、飛行計画の変更に関する情報（新しい飛行計画の仕様に関する情報を含む）を処理して、飛行計画の軌道を計算するために新しい軌道プロセスを割り当てるかどうかもしくはいつ割り当てるか、軌道プロセスが終了するかどうかもしくはいつ終了するか、軌道プロセスを特定の出力に割り当てるかどうかもしくはいつ割り当てるかを判断することができる。例えば、入力決定エンジンは、飛行計画を事前に選択された軌道プロセスに割り当てることによって、飛行計画の軌道プロセスへのルーティングを初期化することができる。初期化の後、この入力決定エンジンは、飛行計画の変更が行われて飛行計画および／または軌道プロセス状態の再検査を引き起こすことができるまで、飛行計画の軌道プロセスへの割り当てを維持することができる。いくつかの例では、飛行計画および／または軌道プロセス状態の再検査の結果は、1つまたは複数の軌道の計算および／または再計算である。
【００１５】
いくつかの例では、飛行計画および／または軌道プロセス状態の再検査を引き起こす飛行計画の変更は、変更自体に基づいてもよい。飛行計画および／または軌道プロセス状態の再検査を引き起こす可能性がある飛行計画へのそのような変更は、限定されないが、飛行計画の出発地の変更、飛行計画の目的地の変更、飛行計画に関連する実際のまたは推定された時間（例えば、出発時間、到着時間、ウェイポイントに到達する時間）の変更、および／またはウェイポイントへの変更、例えば、ウェイポイントの追加、ウェイポイントの削除、および／または閾値距離を超えるウェイポイントの位置の変更を含んでもよい。飛行計画および／または軌道プロセス状態の再検査を引き起こす可能性がある飛行計画への他の変更は、限定されないが、飛行計画に関連する気象条件データの変更、航空機重量データの変更、および／または航空機速度データの変更を含んでもよい。他の例では、飛行計画および／または軌道プロセス状態の再検査を引き起こす可能性がある飛行計画への変更は、飛行計画の変更の理由に基づいてもよい。飛行計画および／または軌道プロセス状態の再検査を引き起こす可能性がある例示的な飛行計画の変更の理由は、限定されないが、飛行計画がアクティブ化されたことを示す理由、飛行計画が非アクティブ化されたことを示す理由、飛行計画が実行されたことを示す理由、飛行計画が破棄されたことを示す理由、および飛行計画が編集されたことを示す理由を含んでもよい。飛行計画および／または軌道プロセス状態の再検査を引き起こす可能性がある飛行計画に対する他の変更も同様に可能である。
【００１６】
飛行計画が軌道プロセスにルーティングされた後、軌道プロセスは飛行計画の軌道を計算し、軌道プロセスの任意の出力は出力決定エンジンを通過し、出力決定エンジンは軌道プロセス出力を飛行計画に関連する任意の出力にマッピングする。各軌道プロセスは、入力決定エンジンを介して決定されるように、複数のレベルの完全性に対する軌道を計算することができる。
【００１７】
完全性とは、プロファイル作成に含まれる精度、形態、または最適化のレベルを意味する。例えば、軌道は、横方向もしくは「スティックフィギュア（stick figure）」の軌道として、または横方向および垂直方向の予測軌道として計算することができる。飛行計画の横方向軌道は、飛行計画のそれぞれのウェイポイントを経由する出発地から目的地への経路を含むことができる。いくつかの例では、横方向軌道は、飛行計画のそれぞれのウェイポイントを経由する出発地から目的地への経路を含むスティックフィギュア軌道であり得るが、出発地、目的地、および／またはウェイポイント間の方向転換は決定されない。横方向および垂直方向の予測軌道（または略して横方向および垂直方向の軌道）は、飛行計画のそれぞれのウェイポイントを経由する出発地から目的地までの経路、およびその経路に沿った航空機の移動に関する高度／垂直情報を含むことができる。いくつかの例では、横方向および垂直方向の軌道は、対応する横方向軌道よりも完全であると見なすことができ、方向転換を伴う横方向軌道は、対応するスティックフィギュアの軌道よりも完全であると見なすことができる。他の種類の軌道および対応する完全性レベルも可能である。
【００１８】
別の例として、軌道は、異なる完全性レベルに関連する異なる精度閾値内で計算することができる；例えば、飛行計画のそれぞれのウェイポイントを経由する出発地から目的地までの第1の経路は、第1の閾値、または所定の数のフィート、マイル、キロメートル、もしくは第1の完全性レベルに関連する他の測定単位内で決定され得、飛行計画のそれぞれのウェイポイントを経由する出発地から目的地までの第2の経路は、第2の閾値、または所定の数のフィート、マイル、キロメートル、もしくは第2の完全性レベルに関連する他の測定単位内で決定され得、第1の閾値は第2の閾値よりも大きく、したがって、第2の完全性レベルは第1の完全性レベルよりも完全であると見なすことができる。
【００１９】
別の例として、閾値プロセスは、計算された軌道に1つまたは複数の最適化技術を適用することができ；例えば、軌道は、部分的に計算された軌道を表す第1の完全性レベル、いかなる最適化技術も適用されていない完全に計算された軌道を表す第2の完全性レベル、少なくとも1つの最適化技術が適用された完全に計算された軌道を表す第3の完全性レベル、少なくとも2つの最適化技術が適用された完全に計算された軌道を表す第4の完全性レベルなどを有することができる。
【００２０】
入力ルータは、1つまたは複数の飛行計画が更新されたことを示す入力を受信すると使用できる。飛行計画またはその状態に変更がない場合、入力ルータの入力決定エンジンは決定結果の変更を決定しない可能性があるため、各軌道プロセス内で軌道計算を続行できる。飛行計画またはその状態に変更があると、その飛行計画の変更が入力決定エンジンに送信され、入力決定エンジンは、どの軌道プロセスがその飛行計画の変更に関連する飛行計画に割り当てられているかを決定できる。飛行計画の状態、飛行計画の変更、および／または飛行計画変更の理由に基づいて、入力決定エンジンは、飛行計画の軌道プロセスへの割り当てを変更することができる。いくつかの例では、入力決定エンジンは、飛行計画の状態、飛行計画の変更、および／または飛行計画変更の理由が、飛行計画の軌道プロセスへの割り当て変更することを保証しないので、割り当てを維持することができると判断できる。
【００２１】
一例として、入力ルータおよび入力決定エンジンが初期化されると、入力ルータおよび入力決定エンジンは、INACTIVE状態にある初期（おそらく空の）飛行計画を受信することができる。次に、入力決定エンジンは初期飛行計画を初期軌道プロセスに割り当てることができる。いくつかの例では、初期軌道プロセスは、初期飛行計画に対して対応するスティックフィギュア軌道を計算する。初期化の後、入力決定エンジンが飛行計画への変更があることを示す入力を受け取らない限り、飛行計画は対応する軌道プロセスと共に残り、それから入力決定エンジンは飛行計画の軌道プロセスへの割り当てを変更することができる。
【００２２】
飛行計画にインコース変更を加えるには、元の飛行計画（通常、その軌道が航空機の制御に使用されているACTIVE飛行計画）を最初に編集して新しい飛行計画を作成する。元の飛行計画を最初に編集すると、軌道計算機は新しい飛行計画（MOD（修正用）飛行計画と呼ばれる）に対応する軌道プロセスを割り当てることができる。MOD飛行計画に割り当てられた軌道プロセスは、新しい飛行計画についての飛行軌道を処理することができ、同時に、ACTIVE飛行計画を割り当てられた軌道プロセスは、元の飛行計画についての飛行軌道を処理することができる。
【００２３】
MOD飛行計画に割り当てられることの一部として、MOD飛行計画に割り当てられた軌道プロセスは、新しい飛行計画を元の飛行計画のコピーとして作成し、元の飛行計画に使用された軌道のコピーを受信することができ、MOD飛行計画のための軌道プロセスが最初の軌道計算の間に時間を節約することを可能にする。さらに、ACTIVE飛行計画および対応する元の飛行計画はMOD飛行計画の新しい飛行計画を編集することによって影響を受けないので、ACTIVE飛行計画の飛行計画のコピーを編集するためのMOD飛行計画の作成は、飛行計画が編集されている間、ACTIVE飛行計画に対する信号を中断しない。
【００２４】
新しい飛行計画が編集されると、MOD飛行計画をアクティブにして航空機の制御に使用できる。軌道計算機は一度に1つのACTIVE飛行計画だけを許容するので、MOD飛行計画をアクティブにすることはMOD飛行計画の状態をACTIVEに変更し、以前のACTIVE飛行計画の状態をINACTIVEに変更する。ACTIVE飛行計画とMOD飛行計画の両方が並行して処理されるため、MOD飛行計画をアクティブにすると、結果として飛行計画がほぼ瞬時に切り替わるため、元の飛行計画全体が広範囲に編集されている場合でも、ACTIVE飛行計画に対する軌道計算機の出力は中断されない。例えば、MOD飛行計画がアクティブ化されたときに起こる飛行計画の切り替えは、閾値期間内に起こり得るので、実質的に瞬時に起こり、例えば、閾値期間は100マイクロ秒以下であり得る。ACTIVE飛行計画に対する軌道計算機の出力は中断されないので、飛行計画が変化したときでも、軌道計算機は航空機を制御するための連続的な出力を提供することができる。
【００２５】
本開示の実装形態は、特に誘導システム、例えば、民間航空機、自家用機、および軍用航空機にオートパイロットサービスを提供する誘導システムへの技術的改善を提供する。本明細書に記載の技術は、変更を受ける飛行計画から連続的な飛行可能な軌道を生成するために使用され得る。本明細書に記載の技術は、それぞれが入力飛行計画に基づいて軌道を独立して計算するために使用することができる複数の軌道プロセスを有する軌道計算機によって実行することができ、飛行計画の変更が実行されたときに追加の機能を実行したり軌道計算を再開したりする必要なしに、軌道計算機は航空機制御のために計算されたそれぞれの軌道にいつでもアクセスすることを可能にする。さらに、軌道計算機は、航空機の制御を中断することなく飛行計画間の切り替え（およびそれによる軌道間の切り替え）を可能にし、それによってそのような切り替え前、切り替え中、および切り替え後に連続的に制御される飛行を提供する。連続的に制御された飛行は、飛行計画の変更による予期しない中断（例えば、飛行中の1つまたは複数の「中断（hiccups）」）を回避することによって航空機の飛行の信頼性を向上させ、このような予期しない中断は、飛行中に乗客と乗務員に不快感を与える可能性がある。
【００２６】
さらに、軌道計算機は、一度に複数の軌道を並行して計算することができ、これは軌道計算機を備えた誘導システムの軌道スループットを向上させることができる。また、軌道計算機は一度に複数の軌道を計算することができるので、軌道計算機は、パイロット、乗務員、オートパイロット、および／または他の航空機制御システムによって必要に応じて航空機制御のための複数の計算された軌道のうちの1つへの選択および切り替えを可能にすることによって誘導システムの柔軟性を高める。加えて、本明細書に記載の技術は航空機の制御に関して説明されているが、本明細書に記載の技術は飛行計画と同様の移動計画を利用する他のビークル、例えば、自律的な制御下で、出発地の位置から目的地の位置までの1つまたは複数のウェイポイントを経由するナビゲーションプランに従うトラック、ボート、または船の制御にも適用可能である。
【００２７】
図1は、例示的な実施形態による航空機100の図である。航空機100はコンピューティングデバイス102を含み、コンピューティングデバイス102は誘導システム110を含む。誘導システム110は、軌道計算機120および飛行管理システム（FMS）130と共に図1に示されている。
【００２８】
軌道計算機120は、入力ルータ122、軌道プロセス（TP）124A，124B，・・・124N、および出力ルータ126を含むことができ、ここで入力ルータ122は入力決定エンジン128を含むことができる。
【００２９】
コンピューティングデバイス102は、飛行中の航空機100の飛行計画に関連する1つまたは複数の入力、例えば、新しい飛行計画を指定する入力、飛行計画への1つまたは複数の変更を指定する入力、飛行計画のアクティブ化および／または非アクティブ化を指定する入力、飛行計画に関連するデータを追加、減算、および／または修正する入力、飛行計画を破棄する入力などを含むことができる飛行計画関連入力140を受信することができる。飛行計画への変更は、限定されないが、飛行計画の出発地の変更、飛行計画の目的地の変更、飛行計画に関連する実際のまたは推定された時間の変更（例えば、出発時刻、到着時刻、ウェイポイントに到達するまでの時間）、および／またはウェイポイントへの変更、例えば、ウェイポイントの追加、ウェイポイントの削除、および／または閾値距離を超えるウェイポイントの位置の変更を含むことができる。いくつかの例では、飛行計画への変更の理由は、飛行計画関連入力140で提供され、例示的な飛行計画の変更の理由には、限定されないが、飛行計画がアクティブ化されたことを示す理由、飛行計画が非アクティブ化されたことを示す理由、飛行計画が実行されたことを示す理由、飛行計画が破棄されたことを示す理由、および飛行計画が編集されたことを示す理由が含まれる。
【００３０】
飛行計画関連入力140に提供された飛行計画に関連するデータは、限定されないが、飛行計画に関連する気象条件に関するデータ（例えば、風速データ、風向データ、温度データ、湿度データ、気圧データ、降水量データ、天気予報データ）、航空機100に関するデータの変化（例えば、航空機100の重量データ、燃料データ、機器の状態情報）、ならびに航空機100の位置、速さ、速度、および／または加速度に関するデータの変化を含むことができる。飛行計画関連入力140はまた、現在の飛行計画に関連する情報、例えば、航空機100の現在の進行方向および／または速さ、ルートの変更、進路の変更などを含むことができる。他の飛行計画関連入力140も可能である。
【００３１】
コンピューティングデバイス102で受信されると、飛行計画関連入力140は、誘導システム110の軌道計算機120に提供され得る。軌道計算機120は、飛行計画関連入力140を処理して1つまたは複数の軌道を決定することができる。より具体的には、入力ルータ122は、飛行計画関連入力140を受信することができ、入力決定エンジン128を使用して、軌道プロセス124A，124B，・・・124Nのそれぞれに入力を管理および／または提供することができる。例えば、入力決定エンジン128は、飛行計画（FP）を軌道プロセスに割り当てることができ、それにより、軌道プロセスは、割り当てられた飛行計画について1つまたは複数の軌道を計算することができる。飛行計画が変更された場合、入力決定エンジン128は、おそらく飛行計画関連入力140を介して、飛行計画への変更が発生したという指示を受信することができ、この指示は飛行計画を変更するための変更理由を含むことができる。変更理由に基づいて、入力決定エンジン128は、変更された飛行計画の軌道プロセスへの割り当てを維持し続けるか、または変更された飛行計画の割り当てを別の軌道プロセスに変更するかを決定することができる。変更された飛行計画の割り当てを別の軌道プロセスに変更すると決定した後、入力決定エンジン128は、変更された割り当てに関する情報を入力ルータ122および／または出力ルータ126に通信することができる。入力ルータ122および出力ルータ126は、変更された割り当てに従って、それぞれ新たに割り当てられた軌道プロセスへの入力およびそこからの出力をルーティングすることができる。
【００３２】
軌道計算機120は、飛行計画関連入力140で指定された1つまたは複数の飛行計画のうちの飛行計画に関連する飛行軌道を計算するために、軌道プロセス124A，124B，・・・124Nのそれぞれを使用することができる。このように、軌道計算機120がn個の軌道プロセス（n＞0）を有するとき、軌道計算機120は軌道プロセスを使用して一度にn個までの異なる飛行軌道を計算し維持することができる。軌道プロセス124A，124B，・・・124Nの出力は、飛行計画軌道出力142として飛行管理システム130に軌道プロセス124A，124B，・・・124Nの出力の一部または全部を提供することができる出力ルータ126に提供され得る。
【００３３】
飛行管理システム130は、航空機100に対する1つまたは複数の飛行中タスクを自動化することができる。特に、飛行管理システム130は、飛行計画軌道出力142を入力として取り、飛行計画軌道出力142を使用して航空機100を制御することができる；すなわち、飛行管理システム130は、航空機100を制御するために航空機100のオートパイロットとして機能することができ；例えば、飛行計画軌道出力142を使用して指定された軌道に沿って移動する。
【００３４】
図2は、例示的な実施形態による、コンピューティングデバイス200のブロック図である。コンピューティングデバイス200は、1つまたは複数のユーザインタフェース構成要素201、ネットワーク通信インタフェースモジュール202、1つまたは複数のプロセッサ203、データ記憶装置204、および1つまたは複数のセンサ210を含み、例示的な実施形態によれば、それらすべては、システムバス、ネットワーク、または他の接続機構205を介して互いにリンクされ得る。特に、コンピューティングデバイス200は、誘導システム、軌道計算機、入力決定エンジン、飛行管理システム、コンピューティングデバイス102、シナリオ300、および／または方法700，800のうちの1つまたは複数に関連する本明細書に記載の機能の一部または全部を実行することができる。いくつかの例では、コンピューティングデバイス200は、モバイルまたは非モバイルコンピューティングデバイスとすることができ、本明細書に記載の技術および方法の少なくとも一部を実装する機械語命令を実行することができる少なくとも1つの処理ユニットを装備するデスクトップコンピューター、ラップトップコンピューターもしくはノートブックコンピューター、パーソナルデータアシスタント（PDA）、携帯電話、スマートフォン、スマートウォッチ、エンベデッドプロセッサ、および／または任意の同様のデバイスのうちの1つまたは複数として実現することができる。図2に示されている他の構成要素は、示されている説明的な例とは異なり得る。一般に、様々な実施形態は、プログラムコードを実行することができる任意のハードウェアデバイスまたはシステムを使用して実施することができる。
【００３５】
ユーザインタフェース構成要素201は、入力を受信し、かつ／またはおそらくユーザに出力を提供することができる1つまたは複数の構成要素を含むことができる。ユーザインタフェース構成要素201は、ユーザおよび／または他のエンティティとの間でデータを送受信するように構成された1つまたは複数の構成要素を含むことができ；そのような構成要素は、限定されないが、キーボード、キーパッド、タッチスクリーン、タッチパッド、コンピューターマウス、トラックボール、ジョイスティック、ボタン、および／またはユーザやコンピューティングデバイス200に関連する他のエンティティからユーザ入力を受信するように構成された他の同様のデバイスを含むことができる。ユーザインタフェース構成要素201は、視覚的出力（例えば、グラフィック、テキスト、および／または数値情報）を表示するように構成された1つまたは複数の構成要素を含むことができ；そのような構成要素には、限定されないが、陰極線管（CRT）、液晶ディスプレイ（LCD）、発光ダイオード（LED）、デジタル光処理（DLP）技術を用いたディスプレイ、プリンタ、電球、および／または視覚的出力を表示することができる他の装置を含むことができる。ユーザインタフェース構成要素201はまた、可聴出力を生成するための1つまたは複数の構成要素を含むことができ、そのような構成要素は、限定されないが、スピーカ、スピーカジャック、音声出力ポート、音声出力デバイス、イヤホン、および／または可聴出力を生成し、かつ／または例えばコンピューティングデバイス200のユーザに対して音や可聴情報を伝達するように構成された他の類似のデバイスを含むことができる。いくつかの例では、ユーザインタフェース構成要素201は、1つまたは複数の触覚出力を生成するための1つまたは複数の構成要素も含むことができる。
【００３６】
ネットワーク通信インタフェースモジュール202は、データもしくは他の通信ネットワークを介して1つまたは複数の無線インタフェース207および／または1つまたは複数の有線インタフェース208を介してデータを送受信するように構成され得る。無線インタフェース207（存在する場合）は、ワイドエリアネットワーク（WAN）、ローカルエリアネットワーク（LAN）、1つまたは複数のパブリックデータネットワーク（例えばインターネット）、1つまたは複数のプライベートデータネットワーク、またはパブリックおよびプライベートデータネットワークの任意の組み合わせなどのデータネットワークへのBluetooth（登録商標）、ZigBee（登録商標）、Wi−Fi（登録商標）、および／またはWiMAX（登録商標）インタフェースなどのエアインタフェースを利用することができる。有線インタフェース208（存在する場合）は、WAN、LAN、インターネットなどの1つまたは複数の公衆データネットワーク、1つまたは複数のプライベートデータネットワーク、またはそのようなネットワークの任意の組み合わせなどのデータネットワークへのワイヤ、ケーブル、光ファイバリンク、および／または同様の物理的接続を含むことができる。
【００３７】
いくつかの例では、ネットワーク通信インタフェースモジュール202は、信頼性があり、安全であり、かつ／または認証された通信を提供するように構成され得る。本明細書に記載の各通信について、信頼できる通信を保証するための情報（すなわち保証されたメッセージ配信）は、おそらくメッセージヘッダおよび／またはフッタ（例えばパケット／メッセージシーケンス情報、カプセル化ヘッダおよび／またはフッタ、サイズ／時間情報、ならびに巡回冗長検査（CRC）および／またはパリティ検査値などの伝送検証情報）の一部として提供され得る。データ暗号化規格（DES）、高度暗号化規格（AES）、Rivest−Shamir−Adelman（RSA）アルゴリズム、Diffie−Hellmanアルゴリズム、Secure Sockets Layer（SSL）またはTransport Layer Security（TLS）などのセキュアソケットプロトコル（secure sockets protocol）、および／またはデジタル署名アルゴリズム（DSA）を含むがこれらに限定されない、1つまたは複数の暗号プロトコルおよび／またはアルゴリズムを使用して、通信を安全にすること（例えば、符号化または暗号化）および／またはデクリプト／デコードすることができる。他の暗号化プロトコルおよび／またはアルゴリズムが、通信を安全にする（そして次にデクリプト／デコードする）ために本明細書に列挙されたものと同様にまたはそれに加えて使用され得る。
【００３８】
プロセッサ203は、1つまたは複数の中央処理装置、コンピュータープロセッサ、モバイルプロセッサ、デジタル信号プロセッサ（DSP）、グラフィック処理装置（GPU）、マイクロプロセッサ、コンピューターチップ、プログラマブルプロセッサ、マルチコアプロセッサ、および／または機械語命令を実行しデータを処理するように構成された他の処理装置を含む。プロセッサ203は、データ記憶装置204に含まれるコンピューター読み取り可能な命令206（例えば、プログラム命令）および／または本明細書に記載の他の命令を実行するように構成され得る。
【００３９】
データ記憶装置204は、読み出し専用メモリ（ROM）、ランダムアクセスメモリ（RAM）、リムーバブルディスクドライブ、ハードドライブ、サムドライブ、磁気テープメモリ、光ディスクメモリ、フラッシュメモリ、揮発性記憶デバイス、不揮発性記憶デバイス、および／または他の記憶デバイスなどの1つまたは複数の物理的および／または非一時的記憶デバイスを含む。一般に、記憶デバイスは、例えば、データ、コンピューター読み取り可能なプログラム命令、および／または一時的もしくは永久的な他の適切な情報などの情報を記憶することができるハードウェアを含む。データ記憶装置204は、コンピューター読み取り可能な命令206および任意の関連するデータ構造を含むのに少なくとも十分な結合記憶容量を有する1つまたは複数の物理的および／または非一時的記憶デバイスを含むことができる。いくつかの実施形態では、データ記憶装置204のいくつかまたはすべては、取り外し可能ハードドライブ、取り外し可能ディスク、またはフラッシュメモリなど、取り外し可能であり得る。
【００４０】
コンピューター読み取り可能な命令206およびデータ記憶装置204に含まれる任意のデータ構造は、コンピューティングデバイスの本明細書に記載の機能の少なくとも一部を実行するために、必要とされるプロセッサ203および任意の記憶装置によってそれぞれ実行可能なコンピューター読み取り可能なプログラム命令を含む。例えば、データ記憶装置204はまた、コンピューティングデバイスの本明細書に記載の機能の少なくとも一部を実行するために使用されるデータを格納することもできる。コンピューター読み取り可能な命令206は、プロセッサ203によって実行されたときに、ソフトウェア、ディスプレイ、および／またはユーザインタフェースの本明細書に記載の機能を含むがこれらに限定されない機能を実行する命令を含むことができる。例えば、コンピューター読み取り可能な命令206は、誘導システム110、軌道計算機120、および／または飛行管理システム130に関連する本明細書に記載の機能のうちのいくつかまたはすべてを実行するためにプロセッサ203によって実行されるときの命令を含み得る。
【００４１】
いくつかの実施形態では、コンピューティングデバイス200は1つまたは複数のセンサ210を含む。センサ210は、コンピューティングデバイス200の周囲の環境内の状態を測定し、その環境の測定された状態についてのデータを提供するように構成され得る。データは、限定されないが、風速、風向、温度、湿度、気圧、および／または降雨を含むがこれらに限定されない気象条件；緯度、経度、および／または高度のデータを含むがこれらに限定されないコンピューティングデバイス200に関する位置データ；コンピューティングデバイス200、1つまたは複数のビークル、および／または1つまたは複数の航空機に関する運動学的情報（例えば、位置、速さ、速度、加速度データ）、ならびに電磁放射データ（例えば、赤外線、紫外線、X線データ）、を含むことができる。1つまたは複数のセンサ210は、限定されないが、全地球測位システム（GPS）センサ、位置センサ、ジャイロスコープ、加速度計、磁力計、ビデオおよび／またはスチルカメラ、光センサ、赤外線センサ、紫外線センサ、X線センサ、気象センサ、近接センサ、振動および／またはモーションセンサ、熱センサ、温度計、レーザ、風センサ、気圧計、雨量計、およびマイク、のうちの1つまたは複数を含むことができる。いくつかの例では、センサ210を相対位置検出に利用することができ、相対位置検出は、ビークルに対する航空機の速度についての情報を、例えば、差動GPSおよび／または無線三角測量法を使用して提供する。センサ210の他の例も同様に可能である。
【００４２】
図3、図4、および図5は、例示的な実施形態による、コンピューティングデバイス102の軌道計算機120が航空機100の飛行軌道を計算するシナリオ300を示している。シナリオ300の開始時に、軌道計算機120は、3つのそれぞれの飛行計画、すなわちFP1，FP2，およびMOD（修正）FPについての飛行軌道を決定するために初期化される3つの軌道プロセス（TP）310，320，330を有し、ここで、FP1は、第1の飛行計画についての情報のフローを表し、FP2は、第2の飛行計画についての情報のフローを表し、MOD FPは、最初は空である（すなわち、実際の飛行計画を表さない）飛行計画についての情報のフローを表す。FP1，FP2，およびMOD FPのそれぞれを、INACTIVE状態に初期化することができ、INACTIVE状態の飛行計画は航空機100を制御するために使用されていない。
【００４３】
シナリオ300は、第1の飛行計画を表すFP1をアクティブ化することによって航空機100のパイロットが航空機100をオートパイロットにすることを続ける。FP1は、第1の飛行計画に関連する情報のフローを提供することにより第1の飛行計画を表し、情報のフローは、限定されないが、第1の飛行計画に関する入力、および表された飛行計画に対して計算された飛行軌道に従って航空機（例えば航空機100）を制御して飛行させる（あるいはタクシーなどで移動させる）ための命令／出力を含むことができる。
【００４４】
FP1をアクティブ化することは、航空機100を制御するために使用されているFP1／第1の飛行計画に関連する軌道プロセス310の出力を引き起こす。シナリオ300では、続いて、航空機100の乗務員の一員が第1の飛行計画を編集し、これは、第1の飛行計画を新しい第3の飛行計画にコピーし、次いで第3の飛行計画を変更することを含む。MOD FPは、第3の飛行計画を表すように割り当てられ、第3の飛行計画に対する横方向および垂直方向の軌道が計算される。第3の飛行計画についての横方向および垂直方向の軌道が計算された後、航空機100の乗務員の一員がMOD FPをアクティブ化する。MOD FPがアクティブ化された後、シナリオ300は終了する。
【００４５】
図3は、シナリオ300の開始時の軌道計算機120を示している。シナリオ300では、軌道計算機120は、3つの軌道プロセス310，320，330を使用して、3つの飛行計画FP1，FP2，およびMOD FPを表す3つの情報のフローをサポートする。例えば、シナリオ300の開始時に、FP1は航空機100の乗務員の一員によって決定された第1の飛行計画を表し、FP2は航空機100の乗務員の一員によって決定された第2の飛行計画を表し、そしてMOD FPは空なので実際の飛行計画を表すものではない。具体的には、FP1，FP2，およびMOD FPのそれぞれは、それぞれの表された飛行計画に関する飛行計画関連入力140のサブセット、関連する軌道プロセスによって計算された表された飛行計画に関する飛行軌道、および表された飛行計画の軌道に従って飛行するように航空機100を制御するために（例えば飛行管理システム130の）パイロットまたはオートパイロットによって使用され得る関連する軌道プロセスの出力を含む情報を含む。
【００４６】
シナリオ300の開始時に、軌道プロセス310，320，330はそれぞれ初期化されて、それぞれFP1，FP2，およびMOD FPによって表される3つのそれぞれの飛行計画の軌道を決定する。軌道プロセス310，320，330の各々は、シナリオ300において、横方向軌道または横方向および垂直方向の軌道の2つの軌道のうちの一方を決定することができる。例えば、図3は、軌道プロセス310，320，330がそれぞれの横方向軌道（LT）312，322，332とそれぞれの横方向および垂直方向の軌道（LVT）314，324，334のうちの1つを決定できることを示している。
【００４７】
例えば、図3は、シナリオ300の開始時に、FP1，FP2，およびMOD FPの入力が、それぞれの軌道プロセス310，320，330を通って、それぞれ「FP1 IN」、「FP2 IN」、および「MOD FP IN」として入力ルータ122に提供され、それぞれの軌道プロセス310，320，330の対応する出力は、それぞれの出力「FP1 OUT」、「FP2 OUT」、および「EMPTY」出力（MOD FPはシナリオ300の開始時の飛行計画を表していないので）として出力ルータ126に渡される。シナリオ300の開始時に、FP1はFP1 OUT出力を提供することができ、これを第1の飛行計画に沿って航空機100を制御するために使用することができる。同様に、シナリオ300の開始時に、FP2はFP2 OUT出力を提供することができ、これを第2の飛行計画に沿って航空機100を制御するために使用することができる。
【００４８】
軌道プロセス310，320，330の各々は、飛行計画についての横方向軌道ならびに横方向および垂直方向の軌道のうちの少なくとも一方を計算することができる。また、軌道プロセス310，320，330のそれぞれの入力および出力は、軌道プロセスの横方向軌道または横方向および垂直方向の軌道のいずれかを介して選択的に方向づけされることができる。他のシナリオでは、軌道プロセス310，320，330のいくつかまたはすべては、横方向軌道ならびに横方向および垂直方向の軌道よりも多い、少ない、および／またはそれと異なる軌道を計算することができる。
【００４９】
入力および出力が軌道プロセスを介してルーティングされるとき、入力および出力は、横方向軌道、横方向および垂直方向の軌道、またはまったく飛行軌道なし（例えば、軌道プロセスが飛行計画に関連付けられていない場合）のいずれかでルーティングされ得る。例えば、図3は、シナリオ300の開始時に、軌道プロセス310の入力および出力が横方向軌道312を介してルーティングされ、軌道プロセス320の入力および出力が横方向軌道322を介してルーティングされ、軌道プロセス330の入力および出力が飛行軌道を介してルーティングされないことを示している。
【００５０】
シナリオ300全体を通して、軌道プロセス310，320，330のすべては並行して動作することができる；すなわち、軌道プロセス310は、第1の入力を受信し、第1の飛行計画に従って第1の飛行軌道を生成するために第1の入力を処理し、第2の入力を受信する軌道プロセス320と並行して第1の飛行軌道に沿って航空機100を制御することに関連する第1の出力を生成し、第2の飛行計画に従って第2の飛行軌道を生成するために第2の入力を処理し、第3の入力を受信する軌道プロセス330と並行して第2の飛行軌道に沿って航空機100を制御することに関連する第2の出力を生成し、第2の飛行計画に従って第3の飛行軌道を生成するために第3の入力を処理し、第3の飛行軌道に沿って航空機100を制御することに関連する第3の出力の生成し、ここで、第1、第2、および／または第3の入力は異なり得、第1、第2、および／または第3の出力は異なり得、および／または第1、第2、および／または第3の飛行計画は異なり得る。すなわち、軌道プロセス310，320，330は集合的に最大3つの飛行軌道を計算して最大3つの異なる出力を生成するために最大3つの飛行計画を処理することができ、一方軌道プロセス310，320，330は独立して並行して動作する。
【００５１】
入力ルータ122は、飛行計画および対応する軌道プロセスに指定された入力をルーティングするために使用され得る。シナリオ300の開始時に、入力ルータ122は、入力ルータ122を横断する矢印を使用して図3に示すように、軌道プロセス310への第1の飛行計画に対して指定されたFP1入力、軌道プロセス320への第2の飛行計画に対して指定されたFP2入力／入力、および軌道プロセス330への指定されたMOD FP入力をルーティングする。
【００５２】
出力ルータ126は、軌道プロセスの出力を指定された飛行計画出力にルーティングするために使用され得る。シナリオ300の開始時に、出力ルータ126は、出力ルータ126を横断する矢印を使用して図3に示すように、軌道プロセス310の出力を第1の飛行計画に対して指定されたFP1出力に、軌道プロセス320の出力を第2の飛行計画に対して指定されたFP2出力に、そして軌道プロセス330の出力を指定されたMOD FP出力にルーティングする。シナリオ300の開始時には、MOD FPは空であり、したがって、図3にも示されるように、指定されたMOD FP出力は「EMPTY」である。
【００５３】
シナリオ300では、FP1，FP2，およびMOD FPのそれぞれは、3つの状態、すなわちINACTIVE、PENDING、またはACTIVEのうちの1つにあることができる。INACTIVE状態は、表された飛行計画が航空機100を制御するために使用されていないことを示す。PENDING状態は、表された飛行計画が航空機100を制御する準備ができているが、現在使用されていないことを示す。INACTIVE飛行計画がアクティブ化されている場合、またはACTIVE飛行計画がMOD飛行計画として編集／使用されている場合は、飛行計画をPENDING状態にすることができる。ACTIVE状態は、例えば、パイロットまたは飛行管理システム130のいずれかによって、表された飛行計画が航空機100を制御するために使用されていることを示す。シナリオ300では、飛行計画は、航空機100の乗務員の一員によるアクティブ化および／または実行のために選択されると、ACTIVEになることができる。シナリオ300では、飛行計画がアクティブになると、飛行計画の状態がINACTIVEからPENDINGに変わることができる。飛行計画が後で実行されるとき、飛行計画の状態はPENDINGからACTIVEに変わることができる。図3は、シナリオ300の開始時に、軌道プロセス310，320，330の各々が非アクティブであることを示している。
【００５４】
シナリオ300では、一度に1つの飛行計画しかACTIVEにできない。飛行計画がACTIVEで別の飛行計画がアクティブになった場合、ACTIVE飛行計画はINACTIVEになり、現在アクティブになっている飛行計画がACTIVE飛行計画になる。飛行計画がアクティブ化されても、飛行計画を表す情報のフローの入力と出力は、以前に割り当てられた軌道プロセスを介してルーティングされたままになり、例えば、FP2がアクティブ化された場合、第2の飛行計画を表すFP2の入力および出力は、軌道プロセス320を介して入力ルータ122および出力ルータ126によってルーティングされたままになる。
【００５５】
他のシナリオでは、飛行計画をアクティブにするための特定のユーザ選択なしで飛行計画がアクティブになることがあり；例えば、MOD飛行計画についての飛行軌道が計算された後にMOD飛行計画をアクティブ化するための命令を有するMOD飛行計画として飛行計画を編集することができる。別の例として、航空機100は自律的に（例えば無人航空ビークル（UAV）として）飛行することができ、航空機100の制御プログラムはユーザ入力なしでアクティブ化のための飛行計画を選択することができる。特定のユーザ選択／入力なしで飛行計画をアクティブ化（または非アクティブ化）する他の例も同様に可能である。
【００５６】
シナリオ300では、続いて、FP1によって表される第1の飛行計画をアクティブ化することによって、人間のパイロットが航空機100をオートパイロットにする。図4は、第1の飛行計画がアクティブ化された後の軌道計算機120を示しており、これは、両方とも「ACTIVE」であるFP1の状態440および450によって示されている。ACTIVE FP1は、FP1 INとして入力ルータ122によって受信された入力と、第1の飛行計画に基づいて横方向および垂直方向の軌道414と同様に横方向軌道312を計算した軌道プロセス310とを含む。図4は、横方向および垂直方向の軌道414から外側に出る矢印を利用して、横方向および垂直方向の軌道414の出力が出力ルータ126を使用してFP1 OUTとして提供されることを示しており、FP1 OUT出力は、オートパイロットが航空機100を制御するために使用される。
【００５７】
FP1がACTIVE状態である間、FP1 IN入力を介して提供される入力は、軌道プロセス310に第1の飛行計画／FP1についての既に計算された飛行軌道を修正させ得、これにより、軌道プロセス310は追加のおよび／または異なるFP1 OUT出力を提供し得る。そして、シナリオ300の間にFP1がACTIVE状態である間、第1の飛行計画／FP1に関連付けられたFP1 OUTとして提供される軌道プロセス310の出力は、航空機100を制御するために使用される。図4は、第1の飛行計画／FP1について既に計算された飛行軌道が横方向および垂直方向の軌道414であることを示している。
【００５８】
シナリオ300では、続いて、航空機100の乗務員の一員が、新しい飛行計画を作成するためにACTIVEの第1の飛行計画を編集することに関連する飛行計画関連入力460（例えば、変更指示）を提供する。第1の飛行計画の編集を開始するために、軌道計算機120は、編集された飛行計画を表すためにMOD FPおよび軌道プロセス330を割り当て、軌道プロセス310から軌道プロセス330への第1の飛行計画および関連する軌道414をコピーすることによって軌道プロセス330を初期化し、新しい第3の飛行計画を表すMOD FPの状態442および452をPENDINGに変更する。MOD FPは、第3の飛行計画がACTIVEの第1の飛行計画の修正／編集バージョンであるため、PENDING状態になる。シナリオ300では、飛行計画関連入力460は、ウェイポイント「W12」を第3の飛行計画に追加するための編集命令を含み、ウェイポイントW12は第1の飛行計画には存在しなかった。
【００５９】
一旦第3の飛行計画が編集されると、軌道プロセス330は、ウェイポイントW12が第3の飛行計画に追加されたと決定し、次に、（MOD FPの一部として軌道プロセス330の初期化中に提供された）第1の飛行計画のために既に計算された横方向および垂直方向の軌道414に基づいて第3の飛行計画に対する横方向および垂直方向の軌道434を計算する。軌道プロセス330はまた、入力を横方向および垂直方向の軌道434にルーティングし、図4の矢印を使用して示されるように横方向および垂直方向の軌道434からの出力を提供する。
【００６０】
図4はまた、第3の飛行計画を表すMOD FPへの軌道プロセス330の割り当てが、第1の飛行計画を表すFP1に割り当てられた軌道プロセス310または関連する第2の飛行計画を表すFP2に割り当てられた軌道プロセス320によって提供される処理に影響しないことを示している。特に、軌道プロセス330が横方向および垂直方向の軌道434を計算している間に、軌道プロセス310は、FP1 OUTを介して出力を提供し続け、第1の飛行計画の横方向および垂直方向の軌道414に沿って航空機100を制御する；すなわち、第1の飛行計画に沿った航空機100の中断されない／連続的な制御は、第3の飛行計画を作成するために第1の飛行計画が編集され、第3の飛行計画のための横方向および垂直方向の軌道434が計算される間に、横方向および垂直方向の軌道414に沿った軌道プロセス310の出力を介して提供される。
【００６１】
シナリオ300では、続いて、軌道プロセス330が横方向および垂直方向の軌道434の計算を完了し、航空機100の乗務員の一員が後に第3の飛行計画を表すMOD FPをアクティブ化する。MOD FPをアクティブ化すると、軌道計算機120は事前にアクティブであったFP1に関連する入力および出力を現在アクティブのMOD FPにルーティングし、航空機制御をFP1によって提供される命令のフローからMOD FPによって提供される命令のフローに効果的に切り替える。
【００６２】
図5に示すように、MOD FPのアクティブ化の後、FP1 IN入力は、入力ルータ122を介して軌道プロセス330の横方向および垂直方向の軌道534にルーティングされる。図5はまた、MOD FPのアクティブ化の後、FP1 OUT出力が出力ルータ126を介して（MOD FPに割り当てられた）軌道プロセス330の横方向および垂直方向の軌道534からルーティングされることを示すために、横方向および垂直方向の軌道534から外側に出る矢印を利用し、ここで、FP1 INおよびFP1 OUTは、状態542および552によって示されるように、ACTIVE状態にある。また図5に示されるように、MOD FPのアクティブ化の後、MOD FP IN入力は入力ルータ122を介して（FP1に割り当てられた）軌道プロセス310にルーティングされ、軌道プロセス310の出力は出力ルータ126を介して空のMOD FP OUT出力としてルーティングされ、ここで、MOD FP INおよびMOD FP OUTは、状態540および550によって示されるようにINACTIVE状態にある。
【００６３】
オートパイロットの観点からは、FP1に関連する命令のフローは、第1の飛行計画から第3の飛行計画への切り替え前、切り替え中、および切り替え後、FP1 OUTを介して継続的に利用可能であった。特に、FP1 OUTを介して提供される命令が、FP1（第1の飛行計画を表す）に割り当てられた軌道プロセス310から提供されるものから、MOD FP（第3の飛行計画を表す）に割り当てられた軌道プロセス330から提供されるものに切り替えられた場合でも、オートパイロットは、FP1 OUTを介して、第1の飛行計画から第3の飛行計画への切り替え前、切り替え中、および切り替え後、第1の飛行計画に沿って連続飛行を維持するための十分な命令を受けている。したがって、FP1／第1の飛行計画からMOD FP／第3の飛行計画への切り替えによる命令の不連続性は発生せず、オートパイロットは乱れることなく飛行することができた。その後、FP1からMOD FPに切り替わった後も、オートパイロットはFP1 OUTからコントロールを受信し続け、第3の飛行計画に沿って連続飛行を維持する。
【００６４】
シナリオ300では、MOD FPをアクティブ化してもFP2には影響せず、図4および図5に示すように、INACTIVE FP2の入力は、FP2 INとして軌道プロセス320の横方向軌道322に提供され、軌道プロセス320の横方向軌道322の出力は、MOD FPがアクティブ化される前と後の両方でFP2 OUTとして提供される。MOD FPがアクティブ化された後、シナリオ300を完了することができる。
【００６５】
図6は、例示的な実施形態による、軌道計算機120が航空機の飛行軌道の入力および出力をルーティングするシナリオ600を示している。軌道計算機120は、飛行計画を処理する際に入力決定エンジン128（これは入力ルータ122の一部であるが、明確にするために図6では入力ルータ122の外側に示されている）を使用することができる。飛行計画において変更が検出された場合、飛行計画の変更は入力決定エンジン128による入力として受信されることができ、入力決定エンジン128は、各飛行計画の連続的な軌道プロセスを維持するために、必要に応じて飛行計画に軌道プロセスを割り当てることができる。
【００６６】
いくつかの例では、入力決定エンジン128は、「タグ」および信号を生成し送信することによって通信することができる。タグは、軌道計算機120内で軌道プロセス、飛行計画、および情報のフローを整列させるための情報を伝達することができる。入力決定エンジン128はまた、限定されないが、1つまたは複数の軌道プロセスの変更を引き起こす飛行計画の変更が生じたことを示す信号および軌道プロセスが何らかの方法で開始、終了、または修正されることを示す信号を含む、変更に関連する信号を使用して通信することができる。いくつかの例では、タグの機能を信号によって実行することができ、その逆も可能である。
【００６７】
シナリオ600は、入力決定エンジン128によるタグの使用を例示する。図6の上部に示されるように、シナリオ600の開始時に、軌道計算機120（図6の上部に軌道計算機120−1として示される）は、M＞2の飛行計画FP1，FP2，・・・FP Mに割り当てることができるN＞2の軌道プロセス610A，610B，・・・610Nを有する。シナリオ600では、それぞれのFP1、FP2、およびFP Mの入力は、入力ルータ122によってそれぞれのルート（R）612，614，616を介してそれぞれの軌道プロセス610A，610B，610Nにルーティングされる。そして、それぞれの軌道プロセス610A，610B，610Nからのそれぞれの出力は、シナリオ600の間に、それぞれのルート622，624，626を介して出力ルータ126によってそれぞれのFP1，FP2，およびFP Mの出力にルーティングされる。
【００６８】
シナリオ600では、続いて、入力決定エンジン128が飛行計画関連入力140を受信し、飛行計画関連入力140は、パラメータ「FP1」を有する飛行計画変更メッセージ630を含み、飛行計画変更メッセージ630がFP1に関連する命令のフローの変更を示すことを示す。飛行計画変更メッセージ630を受信した後、入力決定エンジン128は、飛行計画変更メッセージ630の内容を調べ、軌道プロセス610NをFP1に割り当てるべきであると決定し、これはまた、軌道プロセス610Aを別のFPに再割り当てすることを含む。シナリオ600では、軌道プロセス610Aは、FP1からFP Mに再割り当てされる。その後、入力決定エンジン128は、タグITag640およびOTag642をそれぞれ入力ルータ122および出力ルータ126に送信する。ITag640およびOTag642はそれぞれ、FP1に関する変更を示す「FP1」と、「FP1」パラメータが示すFP1に軌道プロセス610Nを割り当てるべきであることを示す「TP610N」との2つのパラメータを有する。ITag640およびOTag642の各々は、飛行計画／情報のフローへの軌道プロセス610Aおよび610Nの割り当てが、タグ640，642において提供されている（現在FP1に割り当てられている）軌道プロセス610Aに対する特定の割り当てがないので交換されるべきであることを暗示的に知らせる。いくつかのシナリオでは、方法700などの方法を実行しながら、ITag640および／またはOTag642が送信され、これについては少なくとも図7に関連して説明する。
【００６９】
図6の下部に示されるように、シナリオ600では、続いて、軌道計算機120（図6の下部に軌道計算機120−2として示される）の入力ルータ122が、ルート612をルート650に再ルーティング（または変更）してITag640に応答する。ルート650は、軌道プロセス610NについてはFP1 INをTP610N INにマッピングし、ルート616をルート652に再ルーティング（または変更）することによって、軌道プロセス610AについてはFP M INをTP610A INにマッピングする。また、出力ルータ126は、ルート622をルート660に再ルーティング（または変更）することによってOTag642に応答し、これにより軌道プロセス610AのTP610A OUT出力をFP M OUTにマッピングし、そしてルート626をルート662に再ルーティング（または変更）することによって軌道プロセス610Nの出力TP 610N OUTをFP 1 OUTにマッピングする。同時に、シナリオ600で入力ルータ122および出力ルータ126によって実行される再ルーティング動作は、軌道プロセス610AをFP1からFP Mに再割り当てし、軌道プロセス610NをFP MからFP1に再割り当てする。再ルーティング動作が実行された後、シナリオ600を完了することができる。
【００７０】
他のシナリオでは、入力決定エンジン128は、軌道プロセス610Aおよび610Nの割り当ての交換に関連するFP1およびFP Mの状態の変化を知らせるためにITag640およびOTag642に追加のタグを送信することができる。例えば、これらの追加のタグは、（1）FP1、軌道プロセス610A、および／またはFP1によって表される飛行計画が現在INACTIVEであることを示す、および／またはFP M、軌道プロセス610N、および／またはFP Mによって表される飛行計画が現在ACTIVEであることを示すITag640以外の入力ルータ122宛ての1つまたは複数のタグ、および（2）FP1、軌道プロセス610A、および／またはFP1によって表される飛行計画が現在INACTIVEであることを示す、および／またはFP M、軌道プロセス610N、および／またはFP Mによって表される飛行計画が現在ACTIVEであることを示すOTag642以外の出力ルータ126宛ての1つまたは複数のタグ、を含むことができる。追加のタグが入力決定エンジン128によって送信された後、出力ルータ126は、航空機を制御するための軌道プロセス610Nの1つまたは複数の飛行軌道出力を飛行管理システム、例えば、飛行管理システム130に設けることができる。他のタグも可能である。
【００７１】
図7は、例示的な実施形態による、飛行計画を変更する理由に基づいてルーティング構成を決定するための方法700のフローチャートである。方法700は、本明細書に記載の軌道計算機の本明細書に記載の入力決定エンジン、例えば、入力決定エンジン128として機能するコンピューティングデバイスによって実行することができる。
【００７２】
方法700はブロック710で開始することができる。ブロック710で、入力決定エンジンは、1つまたは複数の飛行計画関連入力、例えば、飛行計画関連入力140を入力FPRIとして受信することができる。他の例では、入力決定エンジンは、飛行計画関連入力に関連するデータを入力FPRIとして、例えば、バッファまたは他の記憶装置から取り出すことができる。
【００７３】
いくつかの例では、方法700はブロック710で終了することができる。例えば、入力決定エンジンが実行を停止する必要があることを入力FPRIが示している場合、例えば、電源投入または他のシステム初期化の一部として、入力決定エンジンはそれに応じて実行を停止することができ、方法700は終了することができる。別の例として、入力FPRIが完全に処理されたと入力決定エンジンが判断した場合、方法700は、入力FPRIとしての追加の入力の受信を待たずに終了することができる。方法700を終了させる他の理由および／または例は、例えば、ブロック710においても同様に可能である。
【００７４】
ブロック712で、入力決定エンジンは、入力FPRIが軌道プロセスのためのルーティング入力および出力の初期化を要求する初期化入力を含むかどうかを判断することができる。入力FPRIが初期化入力を含む場合、入力決定エンジンはブロック714に進むことができる。そうでなければ、入力決定エンジンは、入力FPRIが初期化入力を含まないと判断することができ、ブロック720に進むことができる。
【００７５】
ブロック714で、入力決定エンジンはルーティング入力および出力を初期化することができる。いくつかの例では、入力FPRIは、初期化されるべき軌道計算機の特定の情報のフローおよび／または軌道プロセスを識別する；他の例では、入力FPRIは初期化されるべき特定の情報のフローおよび／または軌道プロセスを特定せず、デフォルトでは、ルーティング入力および出力の初期化は軌道計算機に対するすべてのルーティング入力および出力の初期化を含む。ルーティング入力を初期化するために、入力決定エンジンは、少なくとも図3から図6に関して上述したように、軌道計算機の入力ルータに、初期化されていない情報のフローに関連する入力を情報のフローに割り当てられた軌道プロセスにルーティングさせることができる。ルーティング出力を初期化するために、入力決定エンジンは、少なくとも図3から図6に関して上述したように、軌道計算機の出力ルータに、初期化されていない情報のフローに割り当てられた軌道プロセスからの出力を初期化されていない情報のフローにルーティングさせることができる。また、入力決定エンジンは、少なくとも図3から図6に関連して上述したように、初期化されていない軌道プロセスに、初期化されていない軌道プロセスの特定の軌道に入力および／または出力をルーティングさせることができ、その軌道は、例えば、横方向軌道または横方向および垂直方向の軌道である。ブロック714の手順が完了すると、入力決定エンジンはブロック710に進むことができる。
【００７６】
ブロック720で、入力決定エンジンは、入力FPRIが飛行計画を変更する理由Rを含むかどうかを判断することができる。入力FPRIが飛行計画を変更する理由Rを含むと入力決定エンジンが判断した場合、入力決定エンジンはブロック710に進むことができる。そうでなければ、入力決定エンジンは、入力FPRIが飛行計画を変更する理由Rを含まないと判断することができ、ブロック710に進むことができる。
【００７７】
ブロック730で、入力決定エンジンが、理由Rは飛行計画が修正飛行計画として実行された理由であるかどうかを判断することができる。例えば、飛行計画が修正された飛行計画として実行された理由の受信は、MOD FPの状態がACTIVE FPに変更されたこと、ならびに以前のACTIVE FPが破棄された、および／または状態がINACTIVE FPに変更されたことを示すことができる。入力決定エンジンが、理由Rは飛行計画が修正飛行計画として実行された理由であると判断した場合、入力決定エンジンはブロック732に進むことができる。そうでなければ、入力決定エンジンは、理由Rは飛行計画が修正飛行計画として実行された理由ではないと判断し、ブロック740に進むことができる。
【００７８】
ブロック732で、入力決定エンジンは、情報のフローについて入力と出力の両方のルーティングを切り替えるために1つまたは複数のタグを送信することができ、それによって情報のフローは修正された飛行計画に関連する軌道プロセスを使用する。例えば、少なくとも図6に関連して上述したシナリオ600は、情報のフロー（例えば、FP1）について入力と出力の両方のルーティングを切り替えるために入力決定エンジンがどのように入力および出力タグ（例えば、ITag640およびOTag642）を送信できるかを示す。ブロック732の手順が完了すると、入力決定エンジンはブロック710に進むことができる。
【００７９】
ブロック740で、入力決定エンジンは、理由Rが飛行計画の編集が破棄された理由または以前にアクティブ化された飛行計画が破棄された理由のいずれかであるかを判断することができる。例えば、飛行計画の編集が破棄された理由の受信は、編集され続けることおよび／またはアクティブになることの代わりに編集されていた修正飛行計画が破棄されたことを示すことができ、これにより、現在破棄されている飛行計画に関連する軌道プロセスによる軌道計算を終了させることができる。別の例として、以前にアクティブ化された飛行計画が破棄された理由の受信は、アクティブ化された飛行計画が実行される代わりに破棄されたことを示すことができ、これにより、現在破棄されている飛行計画に関連する軌道プロセスによる軌道計算を終了させることができる。
【００８０】
理由Rが飛行計画の編集が破棄された理由または以前にアクティブ化された飛行計画が破棄された理由のいずれかであると入力決定エンジンが判断した場合、入力決定エンジンはブロック742に進むことができる。そうでなければ、入力決定エンジンは、理由Rが飛行計画の編集が破棄された理由ではなく、さらに理由Rが以前にアクティブ化された飛行計画が破棄された理由ではないと判断することができ、そしてブロック750に進むことができる。
【００８１】
ブロック742で、軌道は破棄された編集または破棄された飛行計画に関連付けられているため、入力決定エンジンは、1つまたは複数のタグを、飛行計画の編集が破棄されたMOD FPに関連付けられた軌道プロセスおよび／または以前にアクティブ化された飛行計画が破棄された軌道プロセスに送信して、飛行軌道の計算を終了することができる。ブロック742の手順が完了すると、入力決定エンジンはブロック710に進むことができる。
【００８２】
ブロック750で、入力決定エンジンは、理由RがACTIVE飛行計画の編集が開始された理由であるかどうかを判断することができる。例えば、ACTIVE飛行計画の編集が開始された理由の受信は、飛行計画の出発地を変更する入力、飛行計画の目的地を変更する入力、飛行計画にウェイポイントを追加する入力、飛行計画のウェイポイントを変更する入力、飛行計画の滑走路を変更する入力、および／または飛行計画のウェイポイントを削除する入力が飛行計画の編集として受信されたことを示すことができる。別の例として、飛行計画の編集が開始された理由の受信は、飛行計画の気象条件データを変更する入力、飛行計画の航空機重量データを変更する入力、飛行計画に関連する手順を変更する入力、および／または飛行計画の航空機速度データを変更する入力の受信を示すことができる。他の例では、ACTIVE飛行計画の編集が開始された理由は、上述したものとは異なる入力の受信を示すことができる。理由Rが、ACTIVE飛行計画の編集が開始された理由であると入力決定エンジンが判断した場合、入力決定エンジンはブロック752に進むことができる。そうでなければ、入力決定エンジンは、理由RがACTIVE飛行計画の編集が開始された理由ではないと判断することができ、入力決定エンジンはブロック760に進むことができる。
【００８３】
ブロック752で、入力決定エンジンは、ACTIVE飛行計画の編集が開始されたとの決定に応答して、ACTIVE飛行計画を編集して作成した新しい飛行計画を表すようにFP情報フロー（例えば、シナリオ300のFP1、FP2、またはFP MOD）を割り当てることができる。FP情報フローを割り当てるために、入力決定エンジンは、編集中のACTIVE飛行計画に割り当てられた軌道プロセスからACTIVE飛行計画および関連する飛行軌道を新しい軌道プロセス（例えば、INACTIVE FP情報フローに割り当てられたもの）にコピーすることができ、少なくともシナリオ300ならびに図3、図4、および図5に関連して上述したように、新しい軌道プロセスを使用して新しい飛行計画を処理することができる。
【００８４】
ブロック760で、入力決定エンジンは、理由Rが入力決定エンジンによって制御されるルートの現在のルーティング構成を変更することに関連していないと判断することができ、したがって現在のルーティング構成を維持することができる。現在のルーティング構成の変更に関連しない理由Rの例としては、限定されないが、ルートの内容が変更されておらず、ルートが既に同期されていることを示す同期理由；INACTIVE飛行計画がPENDING状態にアクティブ化されたことを示すアクティブ化理由；PENDING飛行計画がACTIVE状態にアクティブ化されたことを示す実行済みのアクティブ化理由；以前のACTIVE飛行計画がINACTIVEになった（例えば、別の飛行計画が実行されたために）非アクティブ化理由、が挙げられる。他の例では、入力FPRIおよび／または理由Rは、本明細書で論じられるよりも多いおよび／または異なる入力を含むことができ、かつ／または飛行計画の変更についてのより多いおよび／または異なる理由を示すことができる。
【００８５】
図8は、例示的な実施形態による、航空機を制御するための方法のフローチャートである。方法800は、図2に関連して説明したコンピューティングデバイス200などのコンピューティングデバイスによって実行可能である。
【００８６】
方法800はブロック810で開始することができる。ブロック810で、コンピューティングデバイスは、少なくとも図1、図3、図4、図5、図6、および図7に関連して本明細書で説明したように、1つまたは複数のウェイポイントを経由して出発地から目的地へ飛行する第1の飛行計画を含む1つまたは複数の第1の飛行計画関連入力を受信することができる。いくつかの例では、第1の飛行軌道は、少なくとも図3、図4、および図5に関連して本明細書で説明したように、横方向軌道または横方向および垂直方向の軌道を含むことができる。
【００８７】
ブロック820で、コンピューティングデバイスは、少なくとも図1、図3、図4、図5、図6、および図7に関連して本明細書で説明したように、コンピューティングデバイスを使用して第1の飛行計画の第1の飛行軌道を計算することができる。
【００８８】
ブロック830において、コンピューティングデバイスは、少なくとも図3、図4、図5、および図7に関連して本明細書で説明したように、第1の飛行軌道に沿って飛行するように航空機を制御しながら、第1の飛行計画を第2の飛行計画に変更する1つまたは複数の第2の飛行計画関連入力を受信し；第2の飛行計画関連入力が、出発地を変更する入力、目的地を変更する入力、1つまたは複数のウェイポイントにウェイポイントを追加する入力、および1つまたは複数のウェイポイントのウェイポイントを削除する入力のうちの1つまたは複数を含むかどうかを判断し；第2の飛行計画関連入力が、出発地を変更する入力、目的地を変更する入力、1つまたは複数のウェイポイントにウェイポイントを追加する入力、および1つまたは複数のウェイポイントのウェイポイントを削除する入力のうちの1つまたは複数を含むと判断した後、第2の飛行計画の第2の飛行軌道を計算することができる。
【００８９】
ブロック840で、第2の飛行軌道を計算した後、コンピューティングデバイスは、少なくとも図3、図4、および図5に関連して本明細書で説明したように、コンピューティングデバイスを使用して第1の飛行軌道に沿って飛行するように航空機を制御することから第2の飛行軌道に沿って飛行するように航空機を制御することへの切り替えを実行することができ、航空機は、切り替え中、第1の飛行軌道に沿って連続飛行を維持する。
【００９０】
いくつかの例では、コンピューティングデバイスは、少なくとも図3、図4、および図5に関連して本明細書で説明したように、第1の軌道プロセスと、第2の軌道プロセスと、第1の軌道プロセスと第2の軌道プロセスの両方に関連する入力ルータとを有する軌道計算機を含むことができ；次に、第1の飛行計画の第1の飛行軌道を計算することは、第1の軌道プロセスを使用して第1の飛行計画の第1の飛行軌道を計算することを含むことができ、第2の飛行計画の第2の飛行軌道を計算することは、第1の軌道プロセスがアクティブな間に第2の軌道プロセスを使用して第2の飛行計画の第2の飛行軌道を計算することを含むことができ、第1の飛行軌道に沿って飛行するように航空機を制御することから第2の飛行軌道に沿って飛行するように航空機を制御することへの切り替えを実行することは、入力ルータを使用して第1の軌道プロセスが非アクティブであると判断すること、および入力ルータを使用して第2の軌道プロセスがアクティブであると判断することを含むことができる。これらの例のいくつかにおいて、少なくとも図4、図5、および図7に関連して本明細書で説明したように、入力ルータは入力決定エンジンを含むことができ、次に、第1の飛行軌道に沿って飛行するように航空機を制御することから第2の飛行軌道に沿って飛行するように航空機を制御することへの切り替えを実行することは、入力ルータで飛行計画の変更を示す変更指示を受信すること、入力決定エンジンを使用して、変更指示に基づいて軌道プロセスを変更すると決定すること、および軌道プロセスを変更すると決定した後、入力ルータが、第1の軌道プロセスを利用することから第2の軌道プロセスを利用することに切り替えることを決定することを含むことができる。これらの他の例では、少なくとも図7に関連して本明細書で説明したように、変更指示は飛行計画の変更の理由を示すことができ、次に、入力決定エンジンを使用して変更指示に基づいて軌道プロセスを変更すると決定することは、飛行計画の変更の理由に基づいて軌道プロセスを変更すると決定することを含むことができる。これらの他の例では、飛行計画の変更の理由は、少なくとも図7に関連して本明細書で説明したように、飛行計画がアクティブ化されたことを示す理由、飛行計画が非アクティブ化されたことを示す理由、飛行計画が実行されたことを示す理由、飛行計画が破棄されたことを示す理由、および飛行計画が編集されたことを示す理由のうちの1つまたは複数を含むことができる。これらの他の例では、少なくとも本明細書で図6に関連して説明したように、コンピューティングデバイスは出力ルータをさらに含むことができ、次に、入力決定エンジンを使用して変更指示に基づいて軌道プロセスを変更すると決定することは、入力決定エンジンを使用して軌道プロセスの変更を示す1つまたは複数のタグを生成すること、軌道プロセスの変更を出力ルータに示す1つまたは複数のタグを設けることを含むことができる。これらの他の例では、少なくとも図6に関連して本明細書で説明したように、軌道プロセスの変更を出力ルータに示す1つまたは複数のタグを設けることは、第1の飛行計画が第1の軌道プロセスに対して非アクティブであることを示す1つまたは複数のタグのうちの第1のタグ���設けること、および第2の飛行計画が第2の軌道プロセスに対してアクティブであることを示す1つまたは複数のタグのうちの第2のタグを設けることを含むことができる。これらの他の例では、少なくとも図6に関連して本明細書で説明したように、方法800は、軌道プロセスの変更を出力ルータに示す1つまたは複数のタグが設けられた後、出力ルータが、第2の飛行軌道に基づいて航空機の飛行管理システムに航空機を制御するための第2の軌道プロセスの飛行軌道出力を提供するステップをさらに含むことができる。
【００９１】
他の例では、少なくとも図3、図4、および図5に関連して本明細書で説明したように、第1の飛行軌道に沿って飛行するように航空機を制御することから第2の飛行軌道に沿って飛行するように航空機を制御することへの切り替えを実行することは、中断することなく第1の飛行軌道に沿って飛行するように航空機を制御することから第2の飛行軌道に沿って飛行するように航空機を制御することへの切り替えを実行することを含むことができる。
【００９２】
他の例では、少なくとも図3、図4、および図5に関連して本明細書で説明したように、中断することなく第1の飛行軌道に沿って飛行するように航空機を制御することから第2の飛行軌道に沿って飛行するように航空機を制御することへの切り替えを実行することは、切り替えの間中、第1の飛行軌道と第2の飛行軌道を並行して処理することを含むことができる。
【００９３】
いくつかの例では、少なくとも図5に関連して本明細書で説明したように、軌道計算機は第3の軌道プロセスをさらに含むことができ；次に、方法800は、コンピューティングデバイスにおいて、第1の飛行計画および第2の飛行計画とは異なる第3の飛行計画に関する1つまたは複数の第3の飛行計画関連入力を受信するステップと；第3の軌道プロセスを使用して第3の飛行計画のための第3の飛行軌道を計算するステップと；第3の軌道プロセスが第3の飛行軌道を計算した後、コンピューティングデバイスを使用して第2の飛行軌道に沿って飛行するように航空機を制御することから第3の飛行軌道に沿って飛行するように航空機を制御することへの第2の切り替えを実行するステップと、をさらに含むことができ、これにより、少なくとも、入力ルータを使用して第2の軌道プロセスが非アクティブであると判断し、入力ルータを使用して第3の軌道プロセスがアクティブであると判断し、航空機は第2の切り替え中に第2の飛行軌道に沿った連続飛行を維持する。これらの例のいくつかにおいて、少なくとも図7に関連して本明細書で説明したように、第3の飛行計画関連入力は、気象条件データを変更する入力、航空機重量データを変更する入力、および航空機速度データを変更する入力のうちの1つまたは複数を含む。
【００９４】
さらに、本開示は、以下の条項に係る例を含む。
【００９５】
条項1．航空機を制御するための方法であって、方法は、コンピューティングデバイスにおいて、出発地から目的地へ1つまたは複数のウェイポイントを経由して飛行するための第1の飛行計画を含む1つまたは複数の第1の飛行計画関連入力を受信するステップと、コンピューティングデバイスを使用して第1の飛行計画のための第1の飛行軌道を計算するステップと、第1の飛行軌道に沿って飛行するように航空機を制御しながら、コンピューティングデバイスが、第1の飛行計画を第2の飛行計画に変更する1つまたは複数の第2の飛行計画関連入力を受信するステップと、第2の飛行計画関連入力が、出発地を変更する入力、目的地を変更する入力、1つまたは複数のウェイポイントにウェイポイントを追加する入力、および1つまたは複数のウェイポイントのウェイポイントを削除する入力のうちの1つまたは複数を含むかどうかを判断するステップと、第2の飛行計画関連入力が、出発地を変更する入力、目的地を変更する入力、1つまたは複数のウェイポイントにウェイポイントを追加する入力、および1つまたは複数のウェイポイントのウェイポイントを削除する入力のうちの1つまたは複数を含むと判断した後、第2の飛行計画のための第2の飛行軌道を計算するステップと、コンピューティングデバイスが第2の飛行軌道を計算した後、コンピューティングデバイスを使用して第1の飛行軌道に沿って飛行するように航空機を制御することから第2の飛行軌道に沿って飛行するように航空機を制御することへの切り替えを実行するステップであって、航空機は、切り替え中、第1の飛行軌道に沿って連続飛行を維持する、ステップとを含む、方法。
【００９６】
条項2．コンピューティングデバイスが、第1の軌道プロセスと、第2の軌道プロセスと、第1の軌道プロセスと第2の軌道プロセスの両方に関連する入力ルータとを有する軌道計算機を備え、第1の飛行計画の第1の飛行軌道を計算するステップは、第1の軌道プロセスを使用して第1の飛行計画の第1の飛行軌道を計算するステップを含み、第2の飛行計画の第2の飛行軌道を計算するステップは、第1の軌道プロセスがアクティブな間に第2の軌道プロセスを使用して第2の飛行計画の第2の飛行軌道を計算するステップを含み、第1の飛行軌道に沿って飛行するように航空機を制御することから第2の飛行軌道に沿って飛行するように航空機を制御することへの切り替えを実行するステップは、入力ルータを使用して第1の軌道プロセスが非アクティブであることを判断するステップ、および入力ルータを使用して第2の軌道プロセスがアクティブであることを判断するステップを含む、条項1に記載の方法。
【００９７】
条項3．入力ルータが入力決定エンジンを備え、第1の飛行軌道に沿って飛行するように航空機を制御することから第2の飛行軌道に沿って飛行するように航空機を制御することへの切り替えを実行するステップは、入力ルータで飛行計画の変更を示す変更指示を受信するステップと、入力決定エンジンを使用して、変更指示に基づいて軌道プロセスを変更すると決定するステップと、軌道プロセスを変更すると決定した後、入力ルータが、第1の軌道プロセスを利用することから第2の軌道プロセスを利用することに切り替えることを決定するステップとを含む、条項2に記載の方法。
【００９８】
条項4．変更指示が飛行計画の変更の理由を示し、入力決定エンジンを使用して変更指示に基づいて軌道プロセスを変更すると決定するステップは、飛行計画の変更の理由に基づいて軌道プロセスを変更すると決定するステップを含む、条項3に記載の方法。
【００９９】
条項5．飛行計画の変更の理由が、飛行計画がアクティブ化されたことを示す理由、飛行計画が非アクティブ化されたことを示す理由、飛行計画が実行されたことを示す理由、飛行計画が破棄されたことを示す理由、および飛行計画が編集されたことを示す理由のうちの1つまたは複数を含む、条項4に記載の方法。
【０１００】
条項6．コンピューティングデバイスが出力ルータをさらに備え、入力決定エンジンを使用して変更指示に基づいて軌道プロセスを変更すると決定するステップは、入力決定エンジンを使用して軌道プロセスの変更を示す1つまたは複数のタグを生成するステップと、軌道プロセスの変更を出力ルータに示す1つまたは複数のタグを設けるステップとを含む、条項3に記載の方法。
【０１０１】
条項7．軌道プロセスの変更を出力ルータに示す1つまたは複数のタグを設けるステップが、第1の飛行計画が第1の軌道プロセスに対して非アクティブであることを示す1つまたは複数のタグのうちの第1のタグを設けるステップと、第2の飛行計画が第2の軌道プロセスに対してアクティブであることを示す1つまたは複数のタグのうちの第2のタグを設けるステップとを含む、条項6に記載の方法。
【０１０２】
条項8．軌道プロセスの変更を出力ルータに示す1つまたは複数のタグが設けられた後、出力ルータが、第2の飛行軌道に基づいて航空機の飛行管理システムに航空機を制御するための第2の軌道プロセスの飛行軌道出力を提供するステップをさらに含む、条項7に記載の方法。
【０１０３】
条項9．軌道計算機が第3の軌道プロセスをさらに含み、方法は、コンピューティングデバイスにおいて、第1の飛行計画および第2の飛行計画とは異なる第3の飛行計画に関する1つまたは複数の第3の飛行計画関連入力を受信するステップと、第3の軌道プロセスを使用して第3の飛行計画のための第3の飛行軌道を計算するステップと、第3の軌道プロセスが第3の飛行軌道を計算した後、コンピューティングデバイスを使用して第2の飛行軌道に沿って飛行するように航空機を制御することから第3の飛行軌道に沿って飛行するように航空機を制御することへの第2の切り替えを実行するステップと、をさらに含み、少なくとも、入力ルータを使用して第2の軌道プロセスが非アクティブであると判断し、入力ルータを使用して第3の軌道プロセスがアクティブであると判断し、航空機は第2の切り替え中に第2の飛行軌道に沿った連続飛行を維持する、条項2に記載の方法。
【０１０４】
条項10．第3の飛行計画関連入力が、気象条件データを変更するための入力、航空機重量データを変更するための入力、および航空機速度データを変更するための入力のうちの1つまたは複数を含む、条項9に記載の方法。
【０１０５】
条項11．第1の飛行軌道が、横方向軌道または横方向および垂直方向の軌道を含む、条項1に記載の方法。
【０１０６】
条項12．第1の飛行軌道に沿って飛行するように航空機を制御することから第2の飛行軌道に沿って飛行するように航空機を制御することへの切り替えを実行するステップが、中断することなく第1の飛行軌道に沿って飛行するように航空機を制御することから第2の飛行軌道に沿って飛行するように航空機を制御することへの切り替えを実行するステップを含む、条項1に記載の方法。
【０１０７】
条項13．中断することなく第1の飛行軌道に沿って飛行するように航空機を制御することから第2の飛行軌道に沿って飛行するように航空機を制御することへの切り替えを実行するステップが、切り替えの間中、第1の飛行軌道と第2の飛行軌道を並行して処理するステップを含む、条項1に記載の方法。
【０１０８】
条項14．1つまたは複数のプロセッサと、1つまたは複数のプロセッサによって実行されると、コンピューティングデバイスに機能を実行させる少なくともコンピューター読み取り可能な命令を格納する1つまたは複数の非一時的コンピューター読み取り可能な媒体と、を備えるコンピューティングデバイスであって、機能は、出発地から目的地へ1つまたは複数のウェイポイントを経由して航空機を飛行させるための第1の飛行計画を含む1つまたは複数の第1の飛行計画関連入力を受信すること、第1の飛行計画のための第1の飛行軌道を計算すること、第1の飛行軌道に沿って飛行するように航空機を制御しながら、第1の飛行計画を第2の飛行計画に変更する1つまたは複数の第2の飛行計画関連入力を受信し、第2の飛行計画関連入力が、出発地を変更する入力、目的地を変更する入力、1つまたは複数のウェイポイントにウェイポイントを追加する入力、および1つまたは複数のウェイポイントのウェイポイントを削除する入力のうちの1つまたは複数を含むかどうかを判断し、第2の飛行計画関連入力が、出発地を変更する入力、目的地を変更する入力、1つまたは複数のウェイポイントにウェイポイントを追加する入力、および1つまたは複数のウェイポイントのウェイポイントを削除する入力のうちの1つまたは複数を含むと判断した後、第2の飛行計画のための第2の飛行軌道を計算すること、および、第2の飛行軌道を計算した後、第1の飛行軌道に沿って飛行するように航空機を制御することから第2の飛行軌道に沿って飛行するように航空機を制御することへの切り替えを実行し、航空機は、切り替え中、第1の飛行軌道に沿って連続飛行を維持すること、を含む、コンピューティングデバイス。
【０１０９】
条項15．第1の軌道プロセスと、第2の軌道プロセスと、第1の軌道プロセスと第2の軌道プロセスの両方に関連する入力ルータとを有する軌道計算機をさらに備え、第1の飛行計画の第1の飛行軌道を計算することは、第1の軌道プロセスを使用して第1の飛行計画の第1の飛行軌道を計算することを含み、第2の飛行計画の第2の飛行軌道を計算することは、第1の軌道プロセスがアクティブな間に第2の軌道プロセスを使用して第2の飛行計画の第2の飛行軌道を計算することを含み、第1の飛行軌道に沿って飛行するように航空機を制御することから第2の飛行軌道に沿って飛行するように航空機を制御することへの切り替えを実行することは、入力ルータを使用して第1の軌道プロセスが非アクティブであると判断すること、および入力ルータを使用して第2の軌道プロセスがアクティブであると判断することを含む、条項14に記載のコンピューティングデバイス。
【０１１０】
条項16．入力ルータが入力決定エンジンを備え、第1の飛行軌道に沿って飛行するように航空機を制御することから第2の飛行軌道に沿って飛行するように航空機を制御することへの切り替えを実行することは、入力ルータで飛行計画の変更を示す変更指示を受信すること、入力決定エンジンを使用して、変更指示に基づいて軌道プロセスを変更すると決定すること、および軌道プロセスを変更すると決定した後、入力ルータが、第1の軌道プロセスを利用することから第2の軌道プロセスを利用することに切り替えることを決定すること、を含む、条項15に記載のコンピューティングデバイス。
【０１１１】
条項17．変更指示が飛行計画の変更の理由を示し、入力決定エンジンを使用して変更指示に基づいて軌道プロセスを変更すると決定することは、飛行計画の変更の理由に基づいて軌道プロセスを変更すると決定することを含み、飛行計画の変更の理由は、飛行計画がアクティブ化されたことを示す理由、飛行計画が非アクティブ化されたことを示す理由、飛行計画が実行されたことを示す理由、飛行計画が破棄されたことを示す理由、および飛行計画が編集されたことを示す理由のうちの1つまたは複数を含む、条項16に記載のコンピューティングデバイス。
【０１１２】
条項18．出力ルータをさらに備え、入力決定エンジンを使用して変更指示に基づいて軌道プロセスを変更すると決定することは、入力決定エンジンを使用して軌道プロセスの変更を示す1つまたは複数のタグを生成すること、および軌道プロセスの変更を出力ルータに示す1つまたは複数のタグを設けることを含む、条項16に記載のコンピューティングデバイス。
【０１１３】
条項19．軌道プロセスの変更を出力ルータに示す1つまたは複数のタグを設けることが、第1の飛行計画が第1の軌道プロセスに対して非アクティブであることを示す1つまたは複数のタグのうちの第1のタグを設けること、および第2の飛行計画が第2の軌道プロセスに対してアクティブであることを示す1つまたは複数のタグのうちの第2のタグを設けることを含み、機能は、軌道プロセスの変更を出力ルータに示す1つまたは複数のタグが設けられた後、出力ルータが、第2の飛行軌道に基づいて航空機の飛行管理システムに航空機を制御するための第2の軌道プロセスの飛行軌道出力を提供することをさらに含む、条項18に記載のコンピューティングデバイス。
【０１１４】
条項20．コンピューター読み取り可能な命令が格納された非一時的コンピューター読み取り可能な媒体であって、非一時的コンピューター読み取り可能な媒体は、航空機に関連するコンピューティングデバイスの1つまたは複数のプロセッサによって実行されると、出発地から目的地へ1つまたは複数のウェイポイントを経由して飛行させるための第1の飛行計画を含む1つまたは複数の第1の飛行計画関連入力を受信すること；第1の飛行計画のための第1の飛行軌道を計算すること；第1の飛行軌道に沿って飛行するように航空機を制御しながら、第1の飛行計画を第2の飛行計画に変更する1つまたは複数の第2の飛行計画関連入力を受信すること；第2の飛行計画関連入力が、出発地を変更する入力、目的地を変更する入力、1つまたは複数のウェイポイントにウェイポイントを追加する入力、および1つまたは複数のウェイポイントのウェイポイントを削除する入力のうちの1つまたは複数を含むかどうかを判断すること；第2の飛行計画関連入力が、出発地を変更する入力、目的地を変更する入力、1つまたは複数のウェイポイントにウェイポイントを追加する入力、および1つまたは複数のウェイポイントのウェイポイントを削除する入力のうちの1つまたは複数を含むと判断した後、第2の飛行計画のための第2の飛行軌道を計算すること；第2の飛行軌道を計算した後、第1の飛行軌道に沿って飛行するように航空機を制御することから第2の飛行軌道に沿って飛行するように航空機を制御することへの切り替えを実行し、航空機は、切り替え中、第1の飛行軌道に沿って連続飛行を維持すること、を含む機能をコンピューティングデバイスに実行させる、非一時的コンピューター読み取り可能な媒体。
【０１１５】
例示的な実施形態の特色と考えられる新しい特徴が、添付の特許請求の範囲に記載されている。ただし、例示的な実施形態、ならびにその好ましい使用モード、さらなる目的および説明は、添付の図面と併せて読まれるとき、本明細書を参照することによって最も良く理解されるが、開示された実施形態のすべてが示されているわけではない。
【０１１６】
本明細書に開示されたこのおよび他のプロセスおよび方法について、フローチャートは本実施形態の1つの可能な実装の機能性および動作を示すことを理解されたい。これに関して、各ブロックは、プロセスの特定の論理機能またはステップを実施するためにプロセッサによって実行可能な1つまたは複数の命令を含むモジュール、セグメント、またはプログラムコードの一部を表してもよい。プログラムコードは、例えば、ディスクまたはハードドライブを含む記憶デバイスのような、任意のタイプのコンピューター読み取り可能な媒体またはデータ記憶装置に格納され得る。さらに、プログラムコードは、機械読み取り可能なフォーマットのコンピューター読み取り可能な記憶媒体、または他の非一時的媒体もしくは製造品に符号化され得る。コンピューター読み取り可能な媒体は、例えば、レジスタメモリ、プロセッサキャッシュおよびランダムアクセスメモリ（RAM）のような短時間のデータを記憶するコンピューター読み取り可能な媒体などの非一時的なコンピューター読み取り可能な媒体またはメモリを含んでもよい。コンピューター読み取り可能な媒体はまた、例えば、ROM（read only memory）、光学ディスクもしくは磁気ディスク、CD−ROM（compact−disk read only memory）などの二次的なまたは永続的な長期記憶装置などの非一時的媒体を含んでもよい。コンピューター読み取り可能な媒体はまた、任意の他の揮発性または不揮発性ストレージシステムであってもよい。コンピューター読み取り可能な媒体は、例えば、有形のコンピューター読み取り可能な記憶媒体と考えることができる。
【０１１７】
さらに、開示されたフローチャート中の各ブロックは、プロセス中の特定の論理機能を実行するように配線されている回路を表すことができる。代替の実装は、本開示の例示的な実施形態の範囲内に含まれ、当業者には理解されるように、機能は、含まれる機能に応じて、実質的に同時または逆の順序を含む、図示または説明された順序とは異なる順序で実行されてもよい。
【０１１８】
別の好適な構成の説明は、例示および説明のために提示されており、開示された形態での実施形態を網羅または限定することを意図するものではない。多くの修正および変形が当業者には明らかとされよう。さらに、異なる好適な実施形態は、他の好適な実施形態と比較して異なる利点を説明することができる。選択された1つまたは複数の実施形態は、実施形態の原理、実用的な応用を最も良く説明し、当業者が、企図された特定の用途に適した様々な変更を伴う様々な実施形態の開示を理解できるように選択され、記述されている。
【符号の説明】
【０１１９】
100  航空機
102  コンピューティングデバイス
110  誘導システム
120  軌道計算機
122  入力ルータ
124  軌道プロセス
126  出力ルータ
128  入力決定エンジン
130  飛行管理システム
140  飛行計画関連入力
142  飛行計画軌道出力
200  コンピューティングデバイス
201  ユーザインタフェース構成要素
202  ネットワーク通信インタフェースモジュール
203  プロセッサ
204  データ記憶装置
205  接続機構
206  コンピューター読み取り可能な命令
207  無線インタフェース
208  有線インタフェース
210  センサ
300  シナリオ
310  軌道プロセス
312  横方向軌道
314  横方向および垂直方向の軌道
320  軌道プロセス
322  横方向軌道
324  横方向および垂直方向の軌道
330  軌道プロセス
332  横方向軌道
334  横方向および垂直方向の軌道
414  横方向および垂直方向の軌道
434  横方向および垂直方向の軌道
460  飛行計画関連入力
534  横方向および垂直方向の軌道
540  状態
550  状態
600  シナリオ
610  軌道プロセス
612  ルート
614  ルート
616  ルート
622  ルート
624  ルート
626  ルート
630  飛行計画変更メッセージ
640  タグ
642  タグ
650  ルート
700  方法
【図１】
2020042011.tif 000003
【図２】
2020042011.tif 000004
【図３】
2020042011.tif 000005
【図４】
2020042011.tif 000006
【図５】
2020042011.tif 000007
【図６】
2020042011.tif 000008
【図７】
2020042011.tif 000009
【図８】
2020042011.tif 000010
【外国語明細書】
2020042011000001.pdf