(57)【要約】【課題】  分散された取得システムのマスターノードが提供される。【解決手段】  マスターノードは、制御コンポーネントとバスとの間のインターフェースを行う通信インターフェース及び制御コンポーネントを含む。バスは、取得システムにおいて分散されているスレーブノードに結合される。制御コンポーネントは、パケット間隔の定義を提供する構成を取得し、パケット間隔の定義は、マスターノード及び１つ以上のスレーブノードにより送信される通信パケットがパケット間隔により定義される高調波においてのみ発生することを確実とするのに適切なタイミングマージンを提供するものであって、パケット間隔の定義に基づく通信パケットの時刻参照パケットを、バスを介して、分散された取得システムのスレーブノードすべてに配信し、パケット間隔の定義に基づいて選択された１つ以上のスレーブノードへの送信をスケジュールするように構成される。【選択図】図１
2020108144.tif 000002
【特許請求の範囲】
【請求項１】
分散された取得システムのマスターノードであって、
通信インターフェースと、
制御コンポーネントと、を備え、
前記通信インターフェースは、前記制御コンポーネントと、前記取得システム内に分散された１つ以上のスレーブノードに結合された通信バスとの間のインターフェースを行い、
前記制御コンポーネントは、パケット間隔の定義を提供する構成を取得し、
前記パケット間隔の定義は、前記マスターノード及び前記１つ以上のスレーブノードにより送信される通信パケットが前記パケット間隔により定義される高調波においてのみ発生することを確実とするのに適切なタイミングマージンを提供するものであり、
前記パケット間隔の定義に基づく前記通信パケットの時刻参照パケットを、前記バスを介して、前記分散された取得システムの前記スレーブノードすべてに配信し、
前記マスターノードによって前記バスを介して送信される通信パケットの、前記パケット間隔の定義に基づいて選択された前記１つ以上のスレーブノードへの送信をスケジュールするように構成された、マスターノード。
【請求項２】
前記バスは、双方向通信用に構成され、前記制御コンポーネントは、前記パケット間隔の定義に基づいて、前記バスの所有権をさらに制御する、請求項１に記載のマスターノード。
【請求項３】
前記１つ以上のスレーブノードは複数のスレーブノードを含み、前記バスの所有権を制御することは、前記複数のスレーブノードのうちの単一の選択されたスレーブノードに対して前記バスへの制限されたアクセスを許可することを含む、請求項２に記載のマスターノード。
【請求項４】
前記許可された制限されたアクセスは、前記選択されたスレーブノードが前記バスへのアクセスを許可されている間における、前記選択されたスレーブノードによって送信されることを許容された指定数のパケットに対するものである、請求項２に記載のマスターノード。
【請求項５】
前記バスの所有権を制御することは、前記バスが非アクティブ条件またはタイムアウト条件を満たすときに、制限されたアクセスの前記許可が切れた後、前記バスの制御を取り戻すことを含む、請求項２に記載のマスターノード。
【請求項６】
前記バスは双方向通信用に構成され、前記パケット間隔の定義は、前記マスターノードによって送信される通信パケットの連続する送信開始時刻間の最大予想時間であり、前記制御コンポーネントは前記１つ以上のスレーブノードによって送信される通信パケットがパケット間隔の定義に基づいて同期されることを予想する、請求項１に記載のマスターノード。
【請求項７】
前記パケット間隔の定義は、取得した構成の最大パケットペイロードサイズ及び通信ボーレートの定義に基づいて、前記マスターノードまたは１つ以上の前記スレーブノードによって送信される前記通信パケットを送信するための最大予想送信時間に対処したものである、請求項６に記載のマスターノード。
【請求項８】
前記制御コンポーネントは、前記マスターノードによって送信された通信パケットの送信の開始から前記スレーブノードの１つによる前記通信パケットの受信の時間までの時間及び／または、前記スレーブノードの１つによって送信された通信パケットの送信の開始から前記マスターノードによる前記通信パケットの受信までの時間に関連する伝搬遅延を判定し、前記伝搬遅延を、前記バスを介して前記スレーブノードに送信するようにさらに構成される、請求項１に記載のマスターノード。
【請求項９】
前記マスターノードによって前記スレーブノードのいずれかに送信される前記時刻参照パケット及び前記通信パケットの各パケットは、前記パケット間隔の定義の倍数である開始時刻を有する、請求項１に記載のマスターノード。
【請求項１０】
前記パケット間隔の定義は、マスターノードまたはスレーブノードによる前記バスの制御とマスターノード及びスレーブノードの他方による前記バスの制御との間での遷移時の処理の際の、前記マスターノードと前記少なくとも１つのスレーブノードとの間のクロック差に起因するボーレートエラー、及びキャラクタ間タイミングギャップの合計である、請求項１に記載のマスターノード。
【請求項１１】
分散された取得システムのマスターノードと１つ以上のスレーブノードとの間の通信を同期させる方法であって、
パケット間隔の定義を提供する構成を取得し、
前記パケット間隔の定義は、前記マスターノード及び前記１つ以上のスレーブノードにより送信される通信パケットが前記パケット間隔により定義される高調波においてのみ発生することを確実とするのに適切なタイミングマージンを提供するものであることと、
前記パケット間隔の定義に基づく前記通信パケットの時刻参照パケットを、前記バスを介して、前記分散された取得システムの前記スレーブノードすべてに配信することと、
前記マスターノードによって前記バスを介して送信される通信パケットの、前記パケット間隔の定義に基づいて選択された前記１つ以上のスレーブノードへの送信をスケジュールすることと、
を備えた、方法。
【請求項１２】
前記バスは、双方向通信用に構成され、前記制御コンポーネントは、前記パケット間隔の定義に基づいて前記バスの所有権をさらに制御する、請求項１０に記載の方法。
【請求項１３】
前記１つ以上のスレーブノードは複数のスレーブノードを含み、前記バスの所有権を制御することは、前記複数のスレーブノードのうちの単一の選択されたスレーブノードに対して前記バスへの制限されたアクセスを許可することを含む、請求項１２に記載の方法。
【請求項１４】
前記許可された制限されたアクセスは、前記選択されたスレーブノードが前記バスへのアクセスを許可されている間における、前記選択されたスレーブノードによって送信されることを許容された指定数のパケットに対するものである、請求項１２に記載の方法。
【請求項１５】
前記バスの所有権を制御することは、前記バスが非アクティブ条件またはタイムアウト条件を満たすときに、制限されたアクセスの前記許可が切れた後、前記バスの制御を取り戻すことを含む、請求項１２に記載の方法。
【請求項１６】
前記バスは双方向通信用に構成され、前記パケット間隔の定義は、前記マスターノードによって送信される通信パケットの連続する送信開始時刻間の最大予想時間であり、前記制御コンポーネントは前記１つ以上のスレーブノードによって送信される通信パケットがパケット間隔の定義に基づいて同期されることを予想する、請求項１０に記載の方法。
【請求項１７】
前記パケット間隔の定義は、取得した構成の最大パケットペイロードサイズ及び通信ボーレートの定義に基づいて、前記マスターノードまたは１つ以上の前記スレーブノードによって送信される前記通信パケットを送信するための最大予想送信時間を考慮したものである請求項１０に記載の方法。
【請求項１８】
前記方法は、前記マスターノードによって送信された通信パケットの送信の開始から前記スレーブノードの１つによる前記通信パケットの受信の時間までの時間、及び／または、前記スレーブノードの１つによって送信された通信パケットの送信の開始から前記マスターノードによる前記通信パケットの受信までの時間に関連する伝搬遅延を判定することと、前記伝搬遅延を、前記バスを介して前記スレーブノードに送信することをさらに含む、請求項１０に記載の方法。
【請求項１９】
前記マスターノードによって前記スレーブノードのいずれかに送信される前記時刻参照パケット及び前記通信パケットの各パケットは、前記パケット間隔の定義の倍数である開始時刻を有する、請求項１０に記載の方法。
【請求項２０】
分散された取得システムのマスターノードの制御コンポーネントであって、前記制御コンポーネント及び処理デバイスは、
パケット間隔の定義を提供する構成を取得し、
ここにおいて、前記パケット間隔の定義は、前記マスターノード及び前記１つ以上のスレーブノードにより送信される通信パケットが前記パケット間隔により定義される高調波においてのみ発生することを確実とするのに適切なタイミングマージンを提供するものであって、
前記パケット間隔の定義に基づく前記通信パケットの時刻参照パケットを、前記バスを介して、前記分散された取得システムの前記スレーブノードすべてに配信し、
前記マスターノードによって前記バスを介して送信される通信パケットの、前記パケット間隔の定義に基づいて選択された前記１つ以上のスレーブノードへの送信をスケジュールする、
ように構成された、制御コンポーネント。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、非同期通信システムのためのプロトコルに関し、より詳細には、非同期通信システム用の分散時刻同期プロトコルに関する。
【背景技術】
【０００２】
分散された取得システムは、リモートデータの取得と処理を実行する。取得または処理された情報は、集約、分析、データ保存、及び／または報告のために１つ以上の通信リンクを介して処理コンポーネントに転送できる。
【０００３】
特定の動作モードでは、分散されたスレーブデバイスのセット間でデータ取得を高度に相関させる必要がある。この必要性を満たすために、マスターにより生成され、パルスの遷移が各スレーブに対する時刻基準を示す時刻同期パルスがしばしば使用される。
【０００４】
同期パルスは、時刻同期専用の独立した物理リンクを介して配信され、コストと重量が増加する。さらに、ケーブル長が様々であることによるスレーブデバイス間の伝搬遅延の違いにより、システムパフォーマンスを低下させる可能性のあるタイミングエラーが増加する。
【発明の概要】
【発明が解決しようとする課題】
【０００５】
従来の方法及びシステムは、一般に、それらの意図された目的に対して十分であると考えられてきたが、非同期通信システムのための改善された分散時刻同期プロトコルに対する当技術分野における必要性が依然として存在する。
【課題を解決するための手段】
【０００６】
以下に説明する例示の実施形態の目的及び利点は、以下の説明に記載され、それにより明らかとなるであろう。例示された実施形態の追加の利点は、本明細書及びその特許請求の範囲、ならびに添付の図面で特に指摘されたデバイス、システム及び方法によって実現及び達成される。
【０００７】
これらの利点及び他の利点を達成するため、かつ例示された実施形態の目的に従って、一態様では、分散された取得システムのマスターノードが提供される。マスターノードは、制御コンポーネントとバスとの間のインターフェースを行う通信インターフェース及び制御コンポーネントを含む。バスは、取得システムにおいて分散されている１つ以上のスレーブノードに結合される。制御コンポーネントは、パケット間隔の定義を提供する構成を取得し、パケット間隔の定義は、マスターノード及び１つ以上のスレーブノードにより送信される通信パケットがパケット間隔により定義される高調波においてのみ発生することを確実とするのに適切なタイミングマージンを提供するものであって、パケット間隔の定義に基づく通信パケットの時刻参照パケットを、バスを介して、分散された取得システムのスレーブノードすべてに配信し、マスターノードによってバスを介して送信される通信パケットの、パケット間隔の定義に基づいて選択された１つ以上のスレーブノードへの送信をスケジュールするように構成される。
【０００８】
本開示のさらなる態様によれば、分散された取得システムのマスターノードと１つ以上のスレーブノードとの間の通信を同期させる方法が提供される。この方法には、パケット間隔の定義を提供する構成を取得し、パケット間隔の定義は、マスターノード及び１つ以上のスレーブノードにより送信される通信パケットがパケット間隔により定義される高調波においてのみ発生することを確実とするのに適切なタイミングマージンを提供するものであることと、パケット間隔の定義に基づく通信パケットの時刻参照パケットを、バスを介して、分散された取得システムのスレーブノードすべてに配信することと、マスターノードによってバスを介して送信される通信パケットの、パケット間隔の定義に基づいて選択された１つ以上のスレーブノードへの送信をスケジュールすることと、を含む。
【０００９】
本開示の別の態様によれば、分散された取得システムのマスターノードの制御コンポーネントが提供される。制御コンポーネントには、パケット間隔の定義を提供する構成を取得し、パケット間隔の定義は、マスターノード及び１つ以上のスレーブノードにより送信される通信パケットがパケット間隔により定義される高調波においてのみ発生することを確実とするのに適切なタイミングマージンを提供するものであり、パケット間隔の定義に基づく通信パケットの時刻参照パケットを、バスを介して、分散された取得システムのスレーブノードすべてに配信し、マスターノードによってバスを介して送信される通信パケットの、パケット間隔の定義に基づいて選択された１つ以上のスレーブノードへの送信をスケジュールするように構成された処理デバイスが含まれる。
【００１０】
主題の開示のシステム及び方法のこれら及び他の特徴は、図面と併せて好ましい実施形態の以下の詳細な説明から当業者にとってより容易に明らかになるであろう。
【００１１】
主題の開示が関係する当業者が、不要な実験をすることなく主題の開示のデバイス及び方法をどのように作成及び使用するかを容易に理解するように、その好ましい実施形態は、特定の図を参照して以下に詳細に説明される。
【図面の簡単な説明】
【００１２】
【図１】本開示の実施形態による例示的な分散データ取得システム通信トポロジの概略図である。
【図２】本開示の実施形態による、分散データ取得システムのノードによって使用される例示的なコンピュータシステムのブロック図である。
【図３Ａ】本開示の実施形態による、分散データ取得システム内の１つ以上のスレーブノードと通信するためにマスターノードによって実行される例示的な方法を示す流れ図である。
【図３Ｂ】本開示の実施形態による、分散データ取得システム内のマスターノードと通信するためにスレーブノードによって実行される例示的な方法を示す流れ図である。
【図４】本開示の実施形態による例示的な時刻同期プロトコル補正ロジックを実装するための分散データ取得システムのスレーブノードによって実行される例示的な方法を示す流れ図である。
【図５】本開示の実施形態による例示的な時刻同期プロトコル機能論理を実装するための、分散データ取得システムのスレーブノードによって実行される例示的な方法を示す流れ図である。
【図６】本開示の実施形態による例示的な時刻同期プロトコル機能ロジックを実装するための分散データ取得システムのマスターノードによって実行される例示的な方法を示す流れ図である。
【図７】本開示の実施形態による、出力生成ロジックを実装するための分散データ取得システムのマスターノードによって実行される例示的な方法を示す流れ図である。
【図８】本開示の実施形態による、バス制御ロジックを実装するための分散データ取得システムのマスターノードによって実行される例示的な方法を示す流れ図である。
【図９】本開示の実施形態に従って伝搬遅延補正論理を実施するためにマスターノードによって実行される例示的な方法を示すフローチャート９００を示す。
【発明を実施するための形態】
【００１３】
通信バス上のバスアクティビティは、構成可能なパケット間隔の高調波で通信パケットのタイミングが発生するように制御される。パケット間隔は、マスターとスレーブの両方に既知の構成可能な値である。システム設定の一部として、マスターノードとスレーブノードの不揮発性メモリは、構成可能なパラメーター（最大ペイロードサイズ、ボーレート、及びパケット間隔）を含む通信パラメーターデータ項目（ＰＤＩ）で更新される。リセット時に、ノードはこれらのパラメーターを使用して通信動作を制御する。パケット間隔は、ＭＯＳＩチャネル及びＭＩＳＯチャネルアクティビティに適用される。
【００１４】
通信パケットの開始自体を基準時刻として使用して、スレーブノードのセット間の時刻同期を実現できる。データ転送は、タイミングマージンを含む構成可能なパケット間隔内に収まるパケットに分割される。最大パケットペイロードサイズ及び通信ボーレートは、任意のパケットの最大予想送信時間を定義する構成可能なパラメーターである。タイミングマージンは、ボーレートの差や文字間のギャップ時間などの誤差原因を考慮する。パケット間隔は、同期と通信の考慮事項のバランスを取って選択される。スレーブデバイス間のデータ取得タイミングは、クロックの違いにより時間とともにドリフトする可能性がある。パケット間隔は、このエラーを修正するのに十分な頻度で発生する必要がある。通信プロトコルのオーバーヘッドは、データ転送時間に影響する。パケット間隔は、適切な帯域幅の利用を考慮に入れる必要がある。
【００１５】
本開示のさらなる態様によれば、分散された取得システムのマスターノードと１つ以上のスレーブノードとの間の通信を同期させる方法が提供される。この方法は、パケット間隔、最大ペイロードサイズ、及びボーレートを定義して、適切なタイミングマージンを提供し、パケット間隔のすべての高調波で通信パケットが発生することができるようにすることを含む。適切な選択を行えば、これらのパラメーターは通信アクティビティが決定論的であることを確実とする。さらに、この方法は、パケット間隔に基づいてバスの所有権を管理するための構成可能な備えを含む。マスターノードは、すべてのスレーブノードが受信して条件付きで消費し、パケットの開始に基づいて時刻同期を更新するために条件付きで使用する出力パケットを生成する。パケットが有効で、パケットの送信元アドレスが、マスターがパケットを生成したことを示す特定のアドレス基準に合格した場合、すべてのスレーブノードがパケットを使用して時刻同期を更新する。さらに、パケットの宛先アドレスが、パケットがスレーブノードを対象としていること及びパケットの内容がチャネルデータと一致することを示す特定のアドレス基準に合格した場合、特定のスレーブノードは任意のパケットペイロードを消費し、任意の適切なスレーブ出力パケットをスケジュールする。チャネルデータは、ポート番号、データオフセット、及びトランザクションＩＤで構成される。ポート番号は、独立したデータ転送、方向、及び優先度を管理する。データオフセットはデータの順序を管理する。トランザクションＩＤは、特に複数のチャネルで複数のデータ転送が保留中またはアクティブな場合に、特定のトランザクションを識別し、データの整合性を確保するのに役立つ。チャネルデータに一致することは、特定のデータトランザクションに対してデータ転送が順序付けられていることを示す。マスター出力パケットに基づいて、スレーブノードは１つだけがバスアクセスを許容される。スレーブのバスアクセスは、マスターノードバスの所有権に依存する最小のレートによって時刻同期が更新されるよう、制限される必要がある。このプロトコルは、バス制御パラメーターを使用して、構成可能な数のパケット間隔のバス所有権を転送する。スレーブノードは、マスターノードによって指定されたバス制御番号に制限された後続のパケット間隔のセットに対して、次のパケット間隔から始まるデータを出力する。このアプローチによれば、時刻同期の更新と帯域幅の使用率が決定論的な方法で管理される。プロトコルはすべての順列を処理する。データ転送の終わりに達すると、スレーブノードはバスの所有権を早期にマスターに戻す転送を行う。このプロトコルには、データの順序と整合性チェックへの備えが含まれ、マスターノードが通信エラーから回復できるようになっている。
【００１６】
本開示の別の態様によれば、分散された取得システムのマスターノードの制御コンポーネントが提供される。制御コンポーネントは、マスターノードの同期時刻に対する各スレーブノードからの通信パケット入力の開始時刻をキャプチャするように構成された処理デバイスを含み、これはパケット間隔の電流高調波として定義される。時間差に基づいて、マスターノードはスレーブ固有の伝搬遅延を判定する。マスターノードはこの情報を各スレーブノードに提供し、その結果、スレーブノードのデータ取得タイミングを修正して伝搬遅延に対応し、将来のスレーブからマスターへの通信パケットにも反映させることができる。このアプローチによれば、分散された取得システムの時刻同期エラーを無視できるレベルに減らすことができる。
【００１７】
ここで図面を参照することとし、同様の参照番号は、本開示の類似の構造的特徴または態様を識別する。限定ではなく説明及び例示の目的で、本開示の第１の実施形態による非同期取得システムの例示的な実施形態のブロック図を図１に示し、全体として参照符号１００で示す。取得システム１００は、マスターノード１０２と、バス１０６を介して通信する１つ以上の分散スレーブノード１０４とを含む。バス１０６は、半二重マルチドロップ２線物理リンクとすることができ、マスターノード１０２は、バス１０６の第１の端部に結合し、スレーブノード１０４は、バス１０６のマルチドロップの第２の端部に結合する。一例では、バス１０６は、ノイズの多い環境で効果的な長距離通信をサポートするために、信号終端抵抗器を備えたツイストペア上の差動シグナリングを使用するＲＳ−４８５物理層である。トライステートロジックにより、ドライバーを無効にしてマルチドロップ通信をサポートできる。ＲＳ−４８５物理層ドライバーとレシーバーは、データリンク層のタイミングとフレーミングスキームとを定義するユニバーサル非同期レシーバートランスミッター（ＵＡＲＴ）とインターフェースする。シフトレジスタが使用され、パラレルからシリアルへの変換を行って個々のビットをシーケンシャルに出力し、シリアルからパラレルへの変換を行って入力ビットをバッファする。マスターノード１０２は、１つ以上の選択されたスレーブノード１０４と通信し、またはすべてのスレーブノード１０４にブロードキャストすることができる。
【００１８】
取得システム１００は、リモートデータの取得及び処理を実行することができる。例えば、スレーブノード１０４は、物理的特性を感知し、集約、分析、データ保存、及び／または報告のために感知したデータをマスターノード１０２に送信する取得ノードとすることができる。マスターノード１０２がすべてのバストランザクションを開始する。特定のトランザクションについて、マスターノード１０２は、指定された期間、選択されたスレーブノード１０４にバス所有権を転送する。
【００１９】
特定の用途では、データ取得は、分散スレーブノード１０４のセットの間で高度に相関する必要がある。この必要性を満たすために、特定の取得システムは、マスターノードによって生成されスレーブノードの時刻基準として使用される同期パルスを使用してきた。ただし、これには、時刻同期専用の独立した物理リンクの使用によりそのようなデータ取得システムのコストと重量が増加するなどの不利益があり、また、データの送信は、集約したデータの一貫性に影響を与え得る伝搬遅延の影響を受ける。
【００２０】
取得システム１００では、バス１０６自体を使用してデータ転送と時刻同期の両方に対応し、これは、マスターノード１０２とスレーブノード１０４によりそれぞれプロトコル論理を使用して達成される。プロトコル論理により、時刻同期のための独立した物理リンクが不要になり、コストと重量が削減される。プロトコル論理はさらに、スレーブノード１０４が伝搬遅延を補償してスレーブデバイス１０４間の時刻同期エラーを減らすことができるように、伝搬遅延をマスターノード１０２によって測定し、スレーブノード１０４に通信することを可能にする。
【００２１】
取得システム１００は、確立された時刻同期プロトコル（ＴＳＰ）を使用することができ、これは、通信システムのための開放型システム間相互接続（ＯＳＩ）モデルに基づくネットワーク及びトランスポート層プロトコルの組み合わせである。ＴＳＰは確認応答とエラーチェックを使用して、信頼性の高い送信を実現する。ＴＳＰはさらに、セグメンテーション、多重化、及びバス所有論理を使用して、データ優先度、データ待ち時間、データ転送効率、及び時刻同期の考慮事項のバランスを取る。ＴＳＰでは、データはそれぞれペイロード部分を持つ一連のデータパケット内にカプセル化される。ＴＳＰはさらにヘッダーとフッターを使用して、データ転送の管理及びルーティングを行う。制御パケットとして知られる特定のパケットには、ペイロード部分が含まれていない。
【００２２】
ＴＳＰデータ転送は特定のチャネルにマッピングされ、データの優先度とデータの方向に関する考慮事項に対応する。このプロトコルは、高と低の２つの優先度を定義している。高優先度データ転送は、特定の場合、バス管理ロジックに基づいて低優先度データ転送に対する先取り（ｐｒｅｅｍｐｔ）を行う。高優先度の転送は、制御及びステータス情報に適している。低優先度の転送は、ファイル転送に適している。各チャネルは、パケットペイロードに含まれるセッションデータの流れを示す２つのポート、１つの出力ポートと１つの入力ポートで構成される。方向は、マスターアウトスレーブイン（ＭＯＳＩ）またはマスターインスレーブアウト（ＭＩＳＯ）のいずれかとして指定される。ＭＯＳＩチャネルの場合、マスターノード１０２のみがペイロードを含むデータパケットを生成する。逆に、ＭＩＳＯチャネルの場合、スレーブノード１０４のみがペイロードを含むデータパケットを生成する。ＭＯＳＩチャネルとＭＩＳＯチャネルの両方で、ペイロードを含まない制御パケットが生成される場合がある。制御パケットはセッションデータを転送せず、データ転送自体の制御におけるデータパケットの補足のみを行う。パケットヘッダには、チャネルを定義するポート番号パラメーターが含まれている。マスターノードは、マスターアウト／スレーブイン（ＭＯＳＩ）チャネルを使用して、マスターノード１０２から１つ以上のスレーブノード１０４へのマスターパケットのセッションデータ送信信号を送信し、データの転送（書き込み動作）またはスレーブのデータの出力のためのバッファリング（読み取り動作の前半）のトリガーを行うことができる。ＭＯＳＩチャネルを使用して、マスターノード１０２はまた、特定のスレーブノード１０４へのデータ転送のステータスを、データパケットまたは制御パケットを使用して要求することもできる。それに応じて、特定のスレーブノード１０４は、セッションデータ転送の進行を、制御パケットを使用して確認応答し、起こり得る通信エラーからの回復をマスターノード１０２に対して可能とする。マスターノードは、マスターイン／スレーブアウト（ＭＩＳＯ）チャネルを使用して、スレーブノードに対し、バッファリングされたセッションデータ（読み取り動作の後半）を、制御パケットを使用して出力するよう要求できる。それに応じて、データが利用可能な場合、スレーブノード１０４は、要求されたセッションデータを含むデータパケットを生成する。データが利用可能でない場合、スレーブノード１０４は、その可能性を示すための制御パケットを生成する。各チャネルには、バスアクティビティを制御するための優先度が割り当てられている。マスターノードがバスの所有権を特定のスレーブノードに転送した場合、マスターはすべての入力を評価して、スレーブノードがバスの所有権をマスターノードに戻す転送を行ったかどうかを判断する。さらに、マスターはタイムアウトを使用して起こり得る通信エラーを処理し、バスの所有権を取り戻す。
【００２３】
例示的な用途では、マスターノード１０２は、スレーブノード１０４のネットワークまたはサブネットワークのコントローラーまたはホストである。スレーブノード１０４は、それらが展開されるシステムの物理的特性を感知する感知要素を含むことができる。感知に応答して、感知要素は、スレーブノード１０４のバッファにバッファリングできる感知データを出力できる。航空機などの輸送手段の健全性モニタリングなどの用途では、スレーブノード１０４は、その感知要素によって感知されたデータを高速に取得することができるが、特定の用途に限定されるものではない。感知されたデータは、感知された状態を地理的に特定するためにマスターノード１０４によって分析することができる。そのような用途では、高速感知データの相互関連付けに対応するため、スレーブノード１０４を同期させる必要がある。
【００２４】
図２を参照すると、マスターノード１０２及びスレーブノード１０４の例示的な構成を提供する例示的なノード２００のブロック図が示されている。ノード２００は、適切なシステムの一例にすぎず、本明細書で説明する本開示の実施形態の使用または機能の範囲に関するいかなる制限も示唆するものではない。ノード２００は、ハードウェア、ソフトウェア、及び／またはファームウェアを使用して実装できる。いずれの場合も、ノード２００は、本開示に記載されている機能を実装及び／または実行することができる。
【００２５】
ノード２００は、汎用コンピューティングデバイスの形で示されている。ノード２００は、処理デバイス２０２、メモリ２０４、外部コンポーネント２２０と通信できる入出力（Ｉ／Ｏ）インターフェース（Ｉ／Ｆ）２０６、及び任意選択的に内部コンポーネント２０８を含む。
【００２６】
処理デバイス２０２は、例えば、プログラマブルロジックデバイス（ＰＬＤ）、マイクロプロセッサ、デジタルシグナルプロセッサ（ＤＳＰ）、マイクロコントローラ、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）、特定用途向け集積回路（ＡＳＩＣ）、または他の同様の処理能力を持つディスクリート回路または統合論理回路とすることができる。
【００２７】
処理装置２０２及びメモリ２０４は、例えば、ＦＰＧＡ、ＡＳＩＣ、マイクロコントローラ、またはマイクロプロセッサに設けられたコンポーネントに含めることができる。メモリ２０４は、例えば、データを一時的または長期的に記憶し、処理装置２０２により実行可能なプログラム可能な命令を記憶するための揮発性及び不揮発性メモリを含むことができる。
【００２８】
Ｉ／Ｏ  Ｉ／Ｆ２０８は、バス１０６に通信可能に結合することができる。加えて、Ｉ／Ｏ  Ｉ／Ｆ１０８は、１つ以上の外部コンポーネント２２０、外部感知要素、キーボード、ポインティングデバイス、ディスプレイ、別のコンピューティングデバイス、及び／または、ローカルエリアネットワークまたはインターネットなどのワイドエリアネットワークに、例えば、コネクタ、近距離通信、有線通信または無線通信を介して結合するインターフェースを含むことができる。例えば、スレーブノード１０４は、Ｉ／Ｏ  Ｉ／Ｆ２０６を介してバス１０６に結合することができ、場合によっては外部感知要素に結合することができる。マスターノード１０２は、Ｉ／Ｏ  Ｉ／Ｆ２０６を介してバス１０６に結合することができ、場合によってはリモートデータベースに結合して、スレーブノード１０２から受信したデータをアップロードすることができる。
【００２９】
スレーブノード１０４に関して、内部コンポーネント２０８は、例えば、感知素子、アナログ／デジタル（Ａ／Ｄ）変換器、及び／または信号調整（ＳＣ）回路を含むことができる。感知要素は、例えば、温度、振動、速度、加速度、変位、湿度、圧力、またはその他の特性など、その環境の物理的特性を感知することができる。感知要素はアナログでもデジタルでもよく、アナログ／デジタル変換、一部の信号調整、及び／または一部の前処理を実行する能力を有することができる。
【００３０】
取得システム１００の動作に関して、取得システム１００によって使用されるＴＳＰのタイミングは、構成可能なデータ（ペイロードサイズ、ボーレート、及びパケット間隔）によって決定される。ペイロードサイズは、パケットごとに許容されるペイロードの最大バイト数である。この値は、パケットの送信のための予想時間を制約する。ボーレートは、１秒あたりのシンボル数によって通信速度を定義する。ＵＡＲＴベースの通信の場合、シンボルには、開始ビットや停止ビットなどのオーバーヘッドビットとともにデータビットが含まれる。最大パケットペイロードサイズとボーレートは、すべてのパケットの最大予想送信時間を定義する。
【００３１】
パケット間隔は、マスターノード１０２からスレーブノード１０４へ、またはスレーブノード１０４からマスターノード１０２への連続するパケット間の時間を定義する。バスアクティビティは、構成可能なパケット間隔の高調波において発生する通信パケットのタイミングにおいて制御される。このようにして、マスターの出力通信パケットの開始自体を基準時刻として使用して、スレーブノードのセット間の時刻同期を実現できる。
【００３２】
パケット間隔＝｛（最大ペイロードサイズ＋オーバーヘッドバイト数）×バイトあたりシンボル数｝／ボーレート＋タイミング
データ転送は、タイミングマージンを含む構成可能なパケット間隔内に収まるパケットに分割される。タイミングマージンは、ボーレートの差や文字間のギャップ時間などの誤差原因に対処する。さらに、タイミングマージンは、マスターノードまたはスレーブノードによるバスの制御と、マスターノードまたはスレーブノードの他方によるバスの制御との間での遷移の際の処理遅延に対処する。
【００３３】
例として、２０バイトのＴＳＰプロトコルオーバーヘッドと１バイトあたり１０シンボル（１スタートビット、８データビット、１ストップビット）のＵＡＲＴ構成、及び４０ｕｓのタイミングマージンによる場合、構成可能なパラメーターは次のように選択できる：最大ペイロードサイズ４６０バイト、ボーレート５Ｍｂａｕｄ、パケット間隔１ミリ秒。
【００３４】
ボーレートエラーは、マスターとスレーブ間のクロックの違いが原因である可能性がある。タイミングマージンは、これらのボーレートエラーに対処する。
【００３５】
ＵＡＲＴの文字間ギャップ時間は、１つのパケット内のストップビットと後続のスタートビットの間の時間として定義される。これは大幅なタイミング変動の原因になる可能性がある。ただし、先入れ先出し（ＦＩＦＯ）メモリインターフェースなどのハードウェアバッファメカニズムでは、ＵＡＲＴの文字間ギャップ時間はゼロであると予想される。製作者は、バイトをＵＡＲＴに転送するときにアンダーフローを簡単に回避でき、これにより、データがバッファリングされている限り、連続する出力が生成される。この知識により、パケット間隔は決定論的なバスアクティビティを推測し、ＵＡＲＴハードウェアとインターフェースするための決定論的な動作を促進するため、パケットはマスターノード１０２によって周期的で決定論的なパケット間隔で送信されることができる。ただし、バス１０６での送信をトリガーする出力ポートに新しいパケットを書き込む前にＵＡＲＴインターフェース（ＦＩＦＯまたはシフトレジスタ）が空であることをマスターノード１０２が確認することは優れた実践である。パケット間隔が超過されている場合は、ＵＡＲＴインターフェースが空でないことによって示され、送信信号は次の間隔の開始時に送信されるべきである。
【００３６】
マスターノード１０２によるバスの制御からスレーブノード１０４によるバスの制御への遷移、またはスレーブノード１０４によるバスの制御からマスターノード１０２によるバスの制御への遷移の際の遅延は、パケットの内容が受信者を対象とするものかどうかのフィルタリング及び検証を行う時間に起因する。フィルタリングは、アドレス指定方式を使用して、送信信号が受信者を対象とするものかどうかを判定するプロセスである。検証は、受信した送信信号のコンテンツを評価して、そのコンテンツをラッチされたチャネルデータと比較するプロセスである。パケット間隔は、ａ）すべてのマスター出力パケットを生成するためにマスターノード１０２が使用するタイミングを定義し、ｂ）すべてのスレーブ出力パケットを生成するためにスレーブノード１０４が使用するタイミングを定義し、ｃ）データを取得するためにスレーブノード１０４を同期し、ｄ）バス１０６の所有権を制御し、及び／または、ｅ）スレーブノード１０４の生成出力に反映されるフィードバックによりデータ取得タイミングを修正するために、マスターノード１０２がスレーブノード１０４の伝搬遅延を判定できるようにするために使用することができる。
【００３７】
パケットを送信するためにマスターノード１０２によって使用されるタイミングを定義することに関して、マスターノード１０２は、パケット間隔の高調波で出力を開始するように制御を行う。これは、マスターパケットのすべての開始時刻がパケット間隔の倍数であることを意味する。
【００３８】
パケットを送信するためにスレーブノード１０４によって使用されるタイミングを定義することに関して、各スレーブノード１０４は、すべてのマスターノード１０２のパケットの開始時刻をキャプチャし、キャプチャされた開始時刻に対しスレーブ固有の伝搬遅延分をオフセットして、パケット間隔の後続の高調波と一致するように出力をスケジュールする。
【００３９】
スレーブデバイス１０４間の同期を提供することに関して、スレーブノード１０４は、すべてのマスターノード１０２のパケットのキャプチャされた開始時刻を使用して、キャプチャされた開始時刻に対しスレーブ固有の伝搬遅延分をオフセットして、パケット間隔の後続の高調波と一致するようにデータ取得同期イベントをトリガーする。
【００４０】
スレーブノード１０４の同期は、マスターノード１０２の能力及び同期を実行する個々のスレーブノードの能力に依存する任意選択のプロトコル機能である。プロトコルは、ノードタイプまたは同期機能が組み合わさることに基づいて中断しない。いくつかのスレーブノード１０４間では、それらのデータ取得及び／またはそれらの出力パケットを同期させることができるが、他のスレーブノード１０４はその能力を持たない場合がある。
【００４１】
時刻同期がサポートされている場合、スレーブノード１０４は、同期時刻（ｓｙｎｃ  ｔｉｍｅ）とも呼ばれる計算された同期時刻（ｃａｌｃｕｌａｔｅｄ  ｓｙｎｃｈｒｏｎｉｚａｔｉｏｎ  ｔｉｍｅ）に出力を開始するようにスケジュールする。マスターノード１０２は、往復伝搬遅延の半分であるスレーブからマスターへの伝搬遅延によりオフセットされたパケット間隔の高調波においてパケットの受信を開始することを予想する。このタイミングを達成するために、スレーブノード１０４は、受信したマスター出力パケットの開始にタイムスタンプを付け、パケット間隔を追加しマスターからスレーブまでの伝搬遅延を差し引くことにより、応答出力パケットを出力するための開始時刻を計算する。伝搬遅延は、個々のスレーブについてマスターノード１０２によって測定され、それぞれのスレーブノード１０４に伝えられる。パケット間隔は、連続するマスターパケット開始時刻とスレーブパケット開始時刻の間の基本時間を定義する。つまり、すべてのマスターパケットとすべてのスレーブパケットは、パケット間隔の倍数で出力され、いずれのマスターパケットがいずれのスレーブパケット１０４に受領されたときでも同期が提供される。
【００４２】
時刻同期がサポートされていない場合、スレーブノード１０４の出力は、パケット処理の直後に開始され、これは、最小遅延時間と最大遅延時間に制限される。スレーブノード１０４による連続的なデータ転送の場合、スレーブノード１０４の出力は、スレーブノード１０４による最初の出力の開始後のパケット間隔の倍数になるようにスケジュールされる。実施形態において、パケット間隔は、マスターノード１０２の最後のパケット終了時刻とスレーブノード１０４の最初のパケット開始時刻との間の時間を制限する。最大遅延は（１．ｎ×パケット間隔）であり、ｎは、ｎ％のマージンを以ってパケット間隔で通信インターフェースのサービスを提供することに対処して選択される、ソフトウェアの実装に対応している。実施形態において、ｎ＝２である。最小遅延は、ファームウェアの実装に対応し、物理構成に左右される。例えば１０μｓの遅延である。
【００４３】
バス所有権の制御に関して、マスターノード１０２はパケット間隔を使用して、送信信号の受取確認応答のため、または、マスターノード１０２からの要求に応じてデータを送信するためのいずれのためにも、バス所有権を限られた期間スレーブノード１０４に転送することを制御できる。パケットヘッダ内に含まれるパケットバス制御値に反映されるバス所有権の制御は、スレーブノード１０４が例えばパケットに関してバスを使用できる期間を定義する。スレーブノード１０４の観点からは、マスターノード１０２はバス１０６の制御を定義し、スレーブノード１０４はマスターノード１０２により指示されたことのみを行う。バス１０６の所有権がスレーブノード１０４に転送された後、マスターノード１０２は、スレーブノード１０４がその出力の完了を示すか、またはスレーブノードによる制御の期限が終了するかのいずれかが先に発生した後、バス所有権を取り戻す。スレーブノード１０４は、パケットヘッダ内に含まれる同じパケットバス制御値を使用することにより、バス所有権をマスターノード１０２に戻す転送を行う。スレーブノード１０４からの入力パケットが処理されると、マスターノード１０２はこの値に基づいてバス所有権を更新する。マスターノード１０２は、バス所有権を取り戻した後、次の利用可能なパケット間隔で次の送信信号を出力することができる。
【００４４】
スレーブノード１０４については、バス１０６の制御がスレーブ１０４に転送されている期間中にスレーブノードの送信を遅延させる予想しない事態が発生した場合、マスターノード１０４によって提供された制御期間とは無関係に、スレーブノードが次の送信信号を出力するときにバス所有権がマスターノード１０４に対して放棄される。マスターノード１０２は、スレーブノード１０４からの入力の受信に対するタイムアウトを使用して、そのような状況または他の通信エラーなどに対応することもできる。
【００４５】
バス所有権の転送は、マスターノード１０２からスレーブノード１０４への送信にバス制御値を設定することで実行できる。０から２５５の間に制限された８ビットのバス制御値は、スレーブノード１０４が出力を生成することを許容される連続するパケット間隔の数を示す。ゼロ以外のバス制御値を受信すると、スレーブノード１０４は、バス制御値に対応するカウントの出力パケットを有効にする。スレーブノード１０４がバス１０６を所有している間は時刻同期の更新ができないため、最大許容バス制御値を選択する際にタイミングエラーと帯域幅利用を考慮する必要がある。スレーブノード１０４は８ビットのバス制御値を使用するが、許容される値は０または１である。スレーブノード１０４がバス１０６の所有権を有する場合、バス制御値が１であるとき、スレーブノード１０４はバス所有権をマスターノード１０２に戻す転送を行い、バス制御値が０である場合、バス所有権を保持する。
【００４６】
マスターノード１０２が、例えば、スレーブノード１０４にステータスを要求するか、または取得したデータを要求することなどにより、バス所有権を特定のスレーブノード１０４に転送すると、スレーブノード１０４は、時刻同期がサポートされている場合は次の同期時刻に開始するよう、時刻同期がサポートされていない場合はパケット処理の直後に開始するように、その最初の出力をスケジュールする。
【００４７】
伝搬遅延の決定に関して、スレーブノード１０４の出力が時刻基準をキャプチャすること及びパケット間隔に基づいて次の同期時刻を予測することによってマスターノード１０２の出力と同期されるとき、マスターノード１０２は、そのスレーブノード１０４への伝搬遅延を測定することができる。そのとき、マスターノード１０２は伝搬遅延をスレーブノード１０４に報告することができる。その上で、スレーブノード１０４は、伝搬遅延を使用してその送信のタイミングを補償することができ、したがって、スレーブノード１０４間の同期またはスレーブノード１０４とマスターノード１０２間の同期を妨げる可能性があるタイミングエラーを低減する。
【００４８】
実施形態では、ペイロード、ボーレート、パケット間隔、及びそれらの許容解像度のそれぞれの最小値及び最大値及び解像度値などの設計考慮事項を満たすために、ＴＳＰタイミングの構成可能データに制約を適用することができる。例えば、パケット間隔の分解能は同期イベントとすることができ、そこで、同期イベントは、例えばトグリング方式バッファのように、データ取得アクティビティのための設計に固有のタイミングである。ボーレートは、ハードウェアクロックの制限、送受信機の能力、及び信号品位の考慮事項に基づいて、対象範囲のデータレートをカバーできる。最大ペイロード制約は、オーバーヘッド、帯域幅使用率、及びパケットバッファーサイズをバランスさせるある程度の柔軟性を提供できる。４バイトの倍数により、巡回冗長検査（ＣＲＣ）の計算を簡素化できる。さらに、タイミングの変動に対処するタイミングマージン制約を提供できる。
【００４９】
マスターノード１０２の動作に関して、マスターノード１０２は、各送信の開始をパケット間隔の倍数だけ間隔を空けてスレーブノード１０４への送信信号を送信する。マスターノード１０２は、バス１０６の所有権を制御し、ステータスまたは指定されたデータに対する要求をスレーブノード１０４に送信していない限り、バス１０６はマスターノード１０２の送信のための使用のみが許容される。マスターノード１０２は、スレーブノード１０４に対し、指定した間隔数につき、バス１０６を制御して要求されたデータとともに応答することを許容し、その後は、マスターノード１０２はバス１０６の制御を再開する。実施形態において、マスターノード１０２は、スレーブノードの応答を待つことができ、指定した間隔数に及ぶ応答を許容する。マスターノード１０２は、通信エラーが発生した場合にバス１０６の制御を再開するためにタイムアウト機能を適用することができる。
【００５０】
同期が適用されると、マスターノード１０２は、確認応答を要求するマスターパケットをスレーブノード１０４に送信し、実質的に同時にスレーブノード１０４にバス１０６の所有権を付与することができる。マスターノード１０２は、スレーブノード１０４がリクエストに応答することを可能とするのに十分なバスの所有権をスレーブノード１０４に付与し、その後バス１０６の所有権を取り戻すことができる。マスターノード１０２は、特定の時間、例えば、ファームウェアまたはハードウェアの実施形態における次のパケット間隔の開始、またはソフトウェアの実施形態における第２のパケット間隔の開始において、スレーブノードからの応答において確認応答を予想することができる。マスターノード１０２は、予想される応答受信時間と実際の応答受信時間との差に基づいて伝搬遅延を判定することができる。マスターノード１０２は、バス１０６を介して、判定された伝搬遅延をスレーブノード１０４に送信することができる。
【００５１】
スレーブノード１０４が、データ取得及び／または送信信号の出力をマスターノード１０２の送信と同期させるように構成される実施形態では、スレーブノード１０４は、送信信号が送信されていない非アクティブ状態から送信信号が送信されているアクティブ状態への遷移についてバス１０６を監視する。マスターノード１０２の動作に関して、マスターノード１０２はバス所有権を制御し、ＭＯＳＩ送信を様々なスレーブノード１０４に出力することができる。最小の同期レートとするために、マスターノード１０２は、出力された送信信号を最大許容遅延内で送信することができる。マスターノード１０２は、さらに、データ転送が必要でないときに同期が維持されることを確実とするために、保留中のデータトランザクションがない場合に制御パケットを条件付きで出力することができる。このようにして、すべてのマスターパケットが各スレーブノード１０４により使用されて、その同期時刻を修正することができる。同期時刻の修正は、取得システム１００の装置やケーブリングの修正及び／または環境の変化に基づいて伝搬遅延が変更される場合でも、継続的なプロセスとすることができる。
【００５２】
データ取得の同期及び／または出力パケットの生成に使用する同期時刻を判定するためのスレーブノード１０４の動作に関して、マスター出力パケットがバス１０６を介して受信されると、各スレーブノード１０４は入力された送信をデコードのためその受信機（例えば、この例では、ＵＡＲＴ）の入力にルーティングする。さらに、入力された送信信号はキャプチャポートにルーティングされ、キャプチャポートは、新しいパケットの開始にタイムスタンプを付けるために信号の遷移を評価する。スレーブノード１０４は、予想される文字間ギャップ時間が０であること及びパケット間最小時間が例えば１０μｓであることを利用して、スレーブノード１０４が非アクティブな入力状態（バス１０６が非アクティブである間）を少なくとも閾値の時間検出する特定の状態を待つ。その後はアクティブな入力状態に遷移（その間バス１０６はアクティブ状態に遷移）する。ＵＡＲＴは非ゼロ復帰（ＮＲＺ）エンコード方式を使用するように構成されているため、この例では、非アクティブ状態は論理レベル高と定義される。アクティブな遷移は、論理レベル高から論理レベル低への遷移として定義される。
【００５３】
実施形態において、所定の条件の検出は、遷移非アクティブ時間カウンタをゼロに初期化し、入力状態が非アクティブのままである限りカウンタを増分することにより実行される。タイムアウトが発生すると、すなわち非アクティブな入力状態が閾値時間持続する（ここで閾値はタイムアウト値である）と、スレーブノード１０４は入力状態がアクティブ（論理レベル低）に遷移するのを待つ。タイムアウトが発生するまでに入力状態がアクティブになると、カウンタはリセットされる。
【００５４】
遷移が検出されると、すなわちパケットがバス１０６から受信されていると、スレーブノード１０４は、パケットの開始に対応し、開始時刻（ｔ＿ｋ）と呼ばれる現在時刻をキャプチャする。現在時刻は、自走（ｆｒｅｅ−ｒｕｎｎｉｎｇ）タイマーから取得できる。ここでタイマーのカウント値は、例えばスレーブノード１０４のファームウェアによってラッチされる。
【００５５】
パケットのバイトが受信されると、スレーブノード１０４はパケットの有効性を評価して、パケットがマスターノード１０２からの送信であるかどうか（どのスレーブノード１０４に宛てられているかには関係なく）を判定する。パケットが別のスレーブノード１０４からのものである場合、無視することができ、ラッチされた時間は使用されない。パケットがマスターノード１０２からのものである場合、同期時刻（ｔ＿ｓ）は式（１）に基づいて修正される：
ｔ＿ｓ＝ｔ＿ｋ＋ｔ＿ｐ−ｔ＿ｐｒｏｐ            （１）、
ここで、（ｔ＿ｐ）は構成可能なパケット間隔であり、（ｔ＿ｐｒｏｐ）はマスターによって提供されるスレーブ固有の伝搬遅延である。スレーブノード１０４は、同期時刻を使用して、そのデータ取得及び出力送信のタイミングを制御する。
【００５６】
スレーブノード１０４が、データがスレーブノード１０４に対してプッシュされたマスターノード１０２から出力されたパケットを受信した場合、スレーブノード１０４はパケットをバッファリングする。完全なパケットが受信されると、スレーブノード１０４は、その内容に基づいて、所定の基準に従ってパケットを処理する。パケットが無効であるか、スレーブを対象としていない場合、パケットは同期時刻を判定することを除いて無視される。パケットが有効であり、（パケットのヘッダーの宛先アドレスで示されるように）スレーブノード１０４を対象とするものである場合、スレーブノード１０４は、パケットが受信された特定のチャネルのトランザクションデータを初期化し、その後受信したパケットに基づいてデータを維持する。トランザクションデータには、特定のチャネルのポート番号、データオフセット、トランザクションＩＤ、及び送信元／宛先アドレスが含まれる。データが正常である場合、スレーブノード１０４はデータをバッファリングし、データオフセットを更新する。セッション層では、バッファされたデータが評価され、完全である場合は消費される。
【００５７】
マスターノード１０２が、例えば、書き込み動作ステータス要求または読み出し動作プル要求を介してバス所有権をスレーブノード１０に転送するときの動作において、スレーブノード１０４からの次の送信信号出力は、将来の時刻に開始するようにスケジュールされるか、またはパケット処理の直後に開始される。時刻同期がサポートされていない場合、最小遅延時間と最大遅延時間によって制限されるため、スレーブ出力はパケット処理の直後に開始される。連続するスレーブデータ転送は、パケット間隔の倍数においてスケジュールされる。
【００５８】
時刻同期がサポートされている場合、送信出力は、マスターノード１０２がそのパケット間隔の高調波においてパケットの受信を開始すると予想される計算された同期時刻に開始するようにスケジュールされる。
【００５９】
リセット時に、自走タイマーが開始され、その「カウント値」が現在時刻ｔ＿ｃを表わす。自走タイマーを初期化するリセットは、電源投入時リセット、監視回路やウォッチドッグ回路などからのハードウェアリセット、またはソフトウェアやファームウェアのアクションなどのコントローラーが開始するリセットである。さらに、同期時刻は、式（２）に基づいて現在時刻を使用して更新される。
【００６０】
ｔ＿ｓ＝ｔ＿ｃ＋ｔ＿ｐ−ｔ＿ｐｒｏｐ            （２）
ここで、ｔ＿ｐはパケット間隔、ｔ＿ｐｒｏｐはマスターノード１０２がスレーブノード１０４に提供する特定の伝搬遅延である。
【００６１】
現在時刻が同期時刻に達すると、動作モードに応じて取得プロセスが更新される。
例えば、バッファリング方式が使用される場合、スレーブノード１０４はそのアクティブバッファをトグルすることができる。該当する各スレーブノード１０４（取得プロセスの実行指示を同報するマルチキャストによってアドレス指定されたスレーブノード１０４）が同期してこのアクションをほぼ同時に実行するシナリオでは、取得されたデータは各バッファの開始時に時刻同期される。適用可能なスレーブノード１０４のバッファのうち、わずかに異なる数の取得サンプルをバッファに含めることができ、これはマスターノード１０２による処理またはデータ集約中に考慮することができる。例えば、データセットを最小データセットの長さに切り詰めることができる。
【００６２】
スレーブノード１０４は、スケジュールされているかどうかに基づいてバッファリングされたデータの出力を条件付きで開始する。チャネルの優先度と、チャネルの以前の出力（ある場合）が予想どおりに完了したかどうかに応じて、連続出力を発生させるようにスケジュールされる場合がある。
【００６３】
ここで図３Ａ〜図９を参照する。図３Ａ〜図９は、様々な例示的実施形態の実施を示すフローチャート及びフロー図である。なお、図３Ａ〜図９に示す動作の順序は、必須ではないので、原則として、様々な動作は、例示された順序から外れて、または並行して実行することができる。また、特定の動作をスキップしたり、異なる動作を追加または置換したり、選択した動作または動作のグループを、本明細書で説明する実施形態に従って別個のアプリケーションで実行したりすることもできる。
【００６４】
図３Ａは、図１に示される取得システム１００のマスターノード１０２などの取得システムのマスターノードによって実行される例示的な方法を示す流れ図３００を示す。入力３０２で、パケット間隔の定義を提供する構成が取得され、パケット間隔の定義は、マスターノード及び１つ以上のスレーブノードにより送信される通信パケットがパケット間隔により定義される高調波においてのみ発生することを確実とするのに適切なタイミングマージンを提供するものである。つまり、データ転送は、タイミングマージンを含む構成可能なパケット間隔内に収まるパケットに分割される。動作３０４で、通信パケットの時刻基準は、バスを介して分散された取得システムのすべてのスレーブノードに配信され、時刻基準はパケット間隔の定義に基づいている。具体的には、マスターの出力通信パケットの開始自体を、スレーブノードのセット間の時刻同期を達成するための基準時刻として使用できる。この方法は、動作３０６、３０８、及び／または３１０に続くことができる。
【００６５】
動作３０６で、バスを介した通信は、パケット間隔の定義に基づいて１つ以上のスレーブノードと同期される。
【００６６】
動作３０８で、バスの所有権はパケット間隔に基づいて制御される。実施形態では、スレーブノードの１つにバスの制御を提供した後に、タイムアウト機能を使用してバスの制御を取り戻すことができる。事実上、構成可能なパケット間隔の高調波で通信パケットのタイミングが発生するバスアクティビティが制御される。
【００６７】
動作３１０で、伝搬遅延が判定され、伝搬遅延は、マスターノードによって送信された通信パケットの送信の開始からスレーブノードの１つによる通信パケットの受信の時間までの時間、及び／または、スレーブノードの１つによって送信された通信パケットの送信の開始からマスターノードによる通信パケットの受信までの時間に関連する。動作３１２で、伝搬遅延がバスを介してスレーブノードに送信される。
【００６８】
実施形態では、動作３０６、３０８、及び／または（３１０及び３１２）のうちの１つ以上を、異なる時間に、異なる順序で、または同時に実行することができる。
【００６９】
実施形態では、バス１０６は双方向通信に使用される。制御コンポーネントは、パケット間隔の定義に基づいてバスの所有権をさらに制御する。
【００７０】
実施形態において、１つ以上のスレーブノードは複数のスレーブノードを含み、バスの所有権を制御することは、複数のスレーブノードのうちの単一の選択されたスレーブノードに対してバスへの制限されたアクセスを許可することを含む。
【００７１】
実施形態において、許可された制限されたアクセスは、選択されたスレーブノードがバスへのアクセスを許可されている間における、選択されたスレーブノードによって送信されることを許容された指定数のパケットに対するものである。
【００７２】
実施形態では、バスは双方向通信用に構成され、パケット間隔の定義は、マスターノードによって送信される通信パケットの連続する送信開始時刻間の最大予想時間であり、制御コンポーネントは１つ以上のスレーブノードによって送信される通信パケットがパケット間隔の定義に基づいて同期されることを予想する。
【００７３】
実施形態では、パケット間隔の定義は、取得された構成の最大パケットペイロードサイズ及び通信ボーレートの定義に基づいて、マスターノードまたは１つ以上のスレーブノードによって送信される通信パケットを送信するための最大予想送信時間を考慮したものである。
【００７４】
実施形態では、マスターノードによってスレーブノードのいずれかに送信される時刻参照パケット及び通信パケットの各パケットは、パケット間隔の定義の倍数である開始時刻を有する。
【００７５】
実施形態では、パケット間隔の定義は、マスターノードまたはスレーブノードによるバスの制御とマスターノード及びスレーブノードの他方によるバスの制御との間での遷移時の処理の際の、マスターノードと少なくとも１つのスレーブノードとの間のクロック差に起因するボーレートエラー、及びキャラクタ間タイミングギャップの合計である。
【００７６】
図３Ｂは、図１に示す取得システム１００のスレーブノード１０４などの取得システムの複数の分散スレーブノードのスレーブノードによって実行される例示的な方法を示す流れ図３５０を示す。入力３５２で、マスターノード及び１つ以上のスレーブノードによって送信される通信パケットがパケット間隔の定義の高調波でのみ発生することを確実とするパケット間隔の定義を提供する構成が取得される。動作３５４で、新しいマスター送信の開始時刻が判定される。
【００７７】
次に、動作３５５において、特定のスレーブノードについてマスターノードによって測定された伝搬遅延がマスター送信に含まれるかどうかの判定が行われる。動作３５５での判定がＹＥＳの場合、つまりマスター送信がマスターノードによって判定されるスレーブノードの特定の伝搬遅延を含む場合、動作３５７でスレーブノードは更新された伝搬遅延をラッチし、その後、方法は動作３５６に続く。動作の判定がＮＯであった場合、つまりマスター送信に伝搬遅延が含まれていなかったことを意味する場合、動作３５６で、スレーブノードはラッチされた伝搬遅延とマスター送信の開始時刻に基づいて同期時刻を修正する。マスターノードに送信信号において送信する必要のある特定のメッセージがない場合、スレーブノードが同期時刻を修正することにより自身の同期を修正するために使用できる同期メッセージを送信できる。
【００７８】
動作３５８で、取得システムのバスの一時的な所有権がスレーブノードに割り当てられているかどうかの判定が行われる。動作３５８での判定がＹＥＳである場合、つまり、バスの所有権が、例えば、一定の時間またはパケット間隔数の間、スレーブノードに一時的に割り当てられていることを意味する場合、動作３６０で、スレーブによるバスの所有権がまだ有効かどうかの判定が行われる。動作３５８での判定がＮＯである場合、つまりバスの所有権がスレーブノードに割り当てられていないことを意味する場合、方法は動作３５４に続く。
【００７９】
動作３６０での判定がＹＥＳであり、スレーブの所有権がまだ有効であり、失効していないことを意味する場合、動作３６２で、マスターノードが確認応答（ＡＣＫ）を要求したかどうかの判定が行われる。動作３６０での判定がＮＯである場合、すなわちバスのスレーブの所有権がもはや有効ではない、例えば失効していることを意味する場合、方法は動作３５４に続く。動作３６２の判定がＹＥＳであり、確認応答が要求されたことを意味する場合、動作３６８で、スレーブノードは、次の利用可能な同期時刻に確認応答を送信し、各同期時刻はパケット間隔だけ間隔をあける。マスターノードは、確認応答の受信時間を使用して、スレーブノードの伝搬遅延を判定できる。次に、方法はオペレーション３５４に続く。
【００８０】
動作３６２での判定がＮＯであり、確認応答が要求されていないことを意味する場合、動作３６４で、取得データがマスターノードによって要求されているかどうかの判定が行われる。動作３６４での判定がＹＥＳであり、取得データが要求されていることを意味する場合、動作３６６で、利用可能な取得データがあるかどうかの判定が行われる。そのような利用可能な取得データはバッファリングされ、前の要求（読み取りトランザクションの前半）に基づいてマスターノードに送信されるのを待つ場合がある。動作３６４での判定がＮＯであり、取得データが要求されていないことを意味する場合、方法は動作３５４に続く。
【００８１】
動作３６６の判定がＹＥＳであり、取得データが利用可能であることを意味する場合、動作３７０で、スレーブノードは、次に利用可能な同期時刻に取得データを送信する。次に、方法はオペレーション３５４に続く。動作３６６での判定がＮＯであり、取得データが利用できないことを意味する場合、動作３７２で、スレーブノードは、データが利用できないことを示すために制御パケットを送信する。この入力により、マスターノードは、スレーブノードが要求されたデータをバッファリングするのにより多くの時間が必要であることを認識する。この方法は動作３５４に続く。
【００８２】
図４は、図１に示される取得システム１００のスレーブノード１０４などの取得システムのスレーブノードによって実行されるスレーブノードを同期させるための例示的な方法を示す流れ図４００を示す。動作４０２では、動作４０４からのリセット信号またはアクティブ入力に応答して、非アクティブ時間カウンタが初期化される。動作４０４において、スレーブノード入力状態がアクティブであるか非アクティブであるかが判定される。入力状態がアクティブである場合、制御は動作４０２に戻り、非アクティブ時間カウンタはゼロにリセットされる。入力状態が非アクティブである場合、方法は動作４０６に進む。オペレーション４０６で、非アクティブタイマーが増分される。動作４０８で、非アクティブ時間カウント値が評価されて、それが閾値を超えたかどうかを評価する。閾値を超えると、タイムアウト状態が発生したと判断される。タイムアウト状態が発生していない場合、つまり、非アクティブ時間カウンタが閾値を超えていない場合、制御は動作４０４に戻る。タイムアウト状態が発生した場合、方法はオペレーション４１０に進む。
【００８３】
動作４１０で、スレーブノードの入力状態がアクティブであるか非アクティブであるかが再び判定される。動作４１０は、非アクティブタイマーが増分され続けている間に実行される。入力状態が非アクティブであるという判定である場合、非アクティブ時間カウンタが増分され続ける間、動作４１０が繰り返される。入力状態がアクティブであると判定された場合、方法は動作４１２に進み、現在時刻のタイムスタンプが、例えば、自走タイマーからキャプチャされ、ラッチされる。自走タイマーのカウント値は、現在時刻ｔ＿ｃを表す。動作４１４において、アクティブな入力状態にある間に受信された着信パケットが有効なマスター出力パケットであるかどうかの判定がなされる。
【００８４】
動作４１４での判定がＮＯ、つまり着信パケットがマスターパケットではないが、したがって別のスレーブノード１０４からのものである場合、非アクティブタイマーをゼロに再初期化するために制御は動作４０２に続く。入力パケットは同期時刻（ｔ＿ｓ）を修正するために無視され、ラッチされた時間は使用されない。動作４１４での判定がＹＥＳの場合、つまり着信パケットが有効なマスターパケットであることを意味する場合、動作は動作４１６に続く。動作４１６で、同期時刻（ｔ＿ｓ）が上記の式（１）に基づいて修正される。スレーブノードは、補正された同期時刻（ｔ＿ｓ）を使用して、データ取得のタイミングを制御し、スレーブノードによる送信信号を出力できる。
【００８５】
図５は、図１に示す取得システム１００のスレーブノード１０４などの取得システムのスレーブノードによって、同期時刻（ｔ＿ｓ）を適用してスレーブノードの動作を同期するために実行される例示的な方法を示す流れ図５００を示す。動作５０２で、自走タイマーは、現在時刻ｔ＿ｃに初期化される。自走タイマーの値は、時間の経過とともに増分され、更新された現在時刻を表す。動作５０４で、式（２）に基づいて、現在時刻ｔ＿ｃを使用して同期時刻（ｔ＿ｓ）が更新される。
【００８６】
オペレーション５０６で、自走タイマー値（更新された現在時刻）が同期時刻ｔ＿ｓに到達したかどうかの判定が行われる。判定がＮＯの場合、つまり、自走タイマー値がまだ同期時刻ｔ＿ｓに達していないことを意味する場合、経過する時間に基づいて自走タイマーが増分される間、動作５０６が繰り返される。判定がＹＥＳ、つまり自走タイマー値が同期時刻ｔ＿ｓに達したことを意味する場合、方法はオペレーション５０８に続く。動作５０８で、センサノードが取得の動作モードにある場合、そのアクティブバッファをトグルすることなどにより取得が更新される。動作５０８は、マスターノードと通信している他のスレーブノードと同期する必要がある。
【００８７】
動作５１０で、出力がスケジュールされているかどうかの判定が行われる。出力は、確認応答を送信する、または、取得したデータなどの要求されたデータで応答するなど、スレーブノードがマスターノードによってバスの制御権を与えられたときにスケジュールされる。動作５１０での判定がＮＯの場合、つまり、出力がスレーブノードに対してスケジュールされていないことを意味する場合、方法はｓｙｎｃ＿ｔｉｍｅを更新するためにオペレーション５０４に続く。動作５１０での判定がＹＥＳであり、出力がスレーブノードに対してスケジュールされることを意味する場合、方法は動作５１２に続き、その後、方法は動作５０４に続く。動作５１２で、要求されたデータまたは確認応答を出力するための送信手順が実行される。
【００８８】
図６は、取得システムのスレーブノードとタイミングを同期するための図１に示されるマスターノード１０２などの取得システムのマスターノードの機能のための例示的な方法を示す流れ図６００を示す。動作６０２で、同期時刻（ｔ＿ｓ）が初期化され、自走タイマーの値が時間とともに増分され、更新された現在時刻を表す。動作６０４で、同期時刻（ｔ＿ｓ）が更新され、ｔ＿ｓ＝ｔ＿ｃ＋ｔ＿ｐであり、ｔ＿ｐは構成可能なパケット間隔である。
【００８９】
動作６０６で、自走タイマー値（更新された現在時刻）が同期時刻ｔ＿ｓに到達したかどうかの判定が行われる。動作６０６での判定がＮＯ、つまり自走タイマー値がまだ同期時刻ｔ＿ｓに到達していないことを意味する場合、経過時間に基づいて自走タイマーが増分される間、動作６０６が繰り返される。動作６０６での判定がＹＥＳである場合、つまり、自走タイマー値が同期時刻ｔ＿ｓに達したことを意味する場合、方法は動作６０８に続く。
【００９０】
動作６０８で、マスターノードが図１に示されるバス１０６などの取得システムのバスを所有しているかどうかの判定が行われる。動作６０８での判定がＮＯ、つまりマスターノードがバスを所有していないことを意味する場合、方法はｓｙｎｃ＿ｔｉｍｅを更新するために動作６０４に続く。動作６０８での判定がＹＥＳ、つまりマスターがバスを所有していることを意味する場合、方法は動作６１０に続き、その後、方法は動作６０４に続く。動作６１０で、マスターノードは出力を生成する。マスターは、すべてのアクティブな高優先度出力を再開することにより、何を出力するかを判定する。他の場合、マスターノードは保留中の高優先度出力を開始する。他の場合、マスターノードはすべてのアクティブな低優先度出力を再開する。他の場合、マスターノードはすべての保留中の低優先度出力を開始する。他の場合、データ取得がアクティブな場合、マスターノードは、ペイロードを含まず、時刻同期の更新のみを提供する同期パケットを出力する。
【００９１】
図７は、図６の動作６１０内のプロセスを説明するフロー図７００を示す。フロー図は、図１に示される取得システム１００のバス１０６及びマスターノード１０２などの取得システムのマスターノードによる、どの出力パケットを生成するかを選択し、バスを制御するための例示的な方法を示す。動作７０２で、マスターノードは、スレーブのいずれかとのＭＩＳＯチャネル（読み取りトランザクション）がアクティブであるかどうかを判定する。オペレーション７０２での判定が、ＭＩＳＯチャネルがアクティブである場合、方法はオペレーション７０４に進み、マスターノードがプル出力制御パケットを生成する。このパケットは、特定のスレーブノードからの読み取りトランザクションデータ転送の開始または再開を要求する。動作７０６で、プル出力に基づいて、マスターノードは、バスの制御をアクティブなＭＩＳＯチャネルに関連付けられたスレーブノードにパケット間隔の最大数の期間転送し、その間、スレーブノードは、データを転送するための出力を生成することが予想される。
【００９２】
オペレーション７０２で、ＭＩＳＯチャネルがアクティブではないと判定された場合、オペレーション７０８で、ＭＯＳＩチャネル（書き込みトランザクション）がアクティブであるか保留中であるかが判定される。そうでない場合、図７には示されていないが、同期時刻（ｔ＿ｓ）を更新するための制御パケット出力をバスに送信することができる。動作７０８で、ＭＯＳＩチャネルがアクティブまたは保留中であると判定された場合、動作７１０で、マスターノードはデータを１つ以上のスレーブノードにプッシュする。出力パケットは、書き込みトランザクションの開始、再開、及び／またはステータスの要求の役割を果たす。動作７１２で、確認応答が予想されるかどうかの判定が行われる。動作７１２での判定がＹＥＳであり、確認応答が予想される場合、方法は動作７０６に続く。動作７０６で、要求状態出力に基づいて、マスターノードは、バスの制御をアクティブなＭＯＳＩチャネルに関連付けられたスレーブノードに１パケット間隔で転送し、その間、スレーブノードはマスターノードからのその受け取った入力の状態を示す出力を生成することが予想される。動作７１２での判定がＮＯであり、確認応答が予想されない場合、方法は動作７１４に続く。動作７１４で、最後のパケットが出力されたかどうかの判定が行われる。動作７１４での判定がＮＯであり、最後のパケットが出力されなかった場合、方法は終了し、その後、方法は動作７０２で次のパケット間隔で再開する。他の場合、動作７１４でＹＥＳと判定された場合、最後のパケットが出力され、動作７１６で、出力が読み取りトランザクション用であるか書き込みトランザクション用であるかが判定される。動作７１６でＮＯと判定され、出力は読み出し動作ではなく書き込み動作である場合、方法は動作７１８に進み、現在のトランザクションが完了し、その後、方法は終了し、動作７０２で次のパケット間隔において再開する。動作７１６でＹＥＳと判定され、出力が読み出し動作である場合、方法は動作７２０に進み、読み出しトランザクションを実行しているスレーブデバイスのＭＩＳＯチャネルがアクティブ化され、その後、方法は終了し動作７０２で次のパケット間隔において再開する。事実上、マスターノードはＭＯＳＩチャネルを使用してデータを書き込み、出力をバッファリングするためにスレーブノードをトリガーし、出力はその後、関連付けられたＭＩＳＯチャネルを使用してプルされることができる。
【００９３】
図８は、スレーブノード入力またはタイムアウト条件に基づいてマスターノードによるバスの再取得を提供するマスターノードによって実行される例示的な方法を示す流れ図８００を示す。動作８０２で、スレーブノードがバスの制御を有する間、マスターノードはバスから入力データを取得する。動作８０４で、マスターノードは、所定の基準に基づいて入力を処理する。動作８０６で、スレーブノードがバス所有権をマスターノードに戻す転送をしたかどうかの判定が行われる。スレーブノードは、データ転送の最後のパケットに到達した場合、または許容されたパケットの数に到達した場合、バス制御値１を使用してバス所有権を放棄する。動作８０６での判定がＹＥＳであり、バスが回収される状態である場合、動作８１０でマスターノードはバスを回収し、その後、方法は動作８０２に続く。動作８０６での判定がＮＯであり、スレーブノードはバス所有権を明示的に放棄していない場合、動作８０８で、タイムアウト条件が満たされたかどうかの判定が行われる。事実上、マスターノードは、バスの所有権を自律的に取り戻すのに十分な時間が経過したかどうかを評価する。構成可能なタイムアウトは、最後のマスターノード出力パケットの間に、マスターノードがスレーブノードに許可したパケット間隔の数に対応する時間が超過されるように選択される。動作８０８での判定がＹＥＳであり、タイムアウト条件が満たされた場合、動作８１０でマスターノードはバスを回収し、方法は動作８０２に続く。動作８０８での判定がＮＯであり、タイムアウト条件が満たされていない場合、方法は動作８０２に続く。
【００９４】
図９は、伝搬遅延補正を判定するためにマスターノードによって実行される例示的な方法を示すフロー図９００を示す。マスターノード１０２によって受信されるスレーブノード１０４からのバス１０６上の送信は、デコードのために、例えばＵＡＲＴの入力にルーティングされ、例えばキャプチャポートでのキャプチャのためにさらにルーティングされ、受信中の新しいパケットの開始をタイムスタンプするために信号の遷移を評価されることができる。この方法は、マスターノードのファームウェアによって実行できる。例えば、予想される文字間ギャップ時間０と最小パケット間時間１０μｓを利用することにより、マスターファームウェアはバスが非アクティブな状態になり、その後にアクティブな遷移が発生するのを待つことができる。例えば、ＵＡＲＴを使用する実施形態では、非ゼロ復帰（ＮＲＺ）符号化方式が使用され、非アクティブ状態は論理レベル高と定義され、アクティブ遷移は論理レベル高から論理レベル低への遷移として検出することができる。
【００９５】
動作９０２で非アクティブ時間カウンタが、リセット信号または動作９０４からのアクティブ入力のいずれかに応答して、初期化される。オペレーション９０４では、新しいパケットがキャプチャされたかどうかに基づいて、マスターノード入力状態がアクティブか非アクティブかが判定される。入力状態がアクティブ、つまりパケットがキャプチャされたことを意味する場合、制御は動作９０２に戻り、非アクティブ時間カウンタはゼロにリセットされる。入力状態が非アクティブ、つまりパケットがキャプチャされていないことを意味する場合、方法はオペレーション９０６に進む。動作９０６で、非アクティブタイマーが増分される。動作９０８で、非アクティブ時間カウント値が評価されて、それが閾値を超えたかどうかを判定する。閾値を超えると、タイムアウト状態が発生したと判断される。タイムアウト状態が発生していない場合、つまり非アクティブ時間カウンタが閾値を超えていないことを意味する場合、制御は動作９０４に戻る。タイムアウト状態が発生した場合、方法はオペレーション９１０に続く。
【００９６】
動作９１０で、スレーブノードの入力状態がアクティブであるか非アクティブであるかが再び判定される。動作９１０は、非アクティブタイマーが増分され続けている間に実行される。入力状態が非アクティブであるという判定である場合、非アクティブ時間カウンタが増分され続ける間、動作９１０が繰り返される。
【００９７】
入力状態がアクティブであると判定された場合、方法は動作９１２に進み、現在時刻のタイムスタンプが、例えば、自走タイマーからキャプチャされラッチされる。自走タイマーのカウント値は、現在時刻ｔ＿ｃを表す。動作９１４では、予想されるパケットの有効性を評価することに加えて、マスターノードは、マスター同期時刻（ｔ＿ｅ）に対するタイミングエラー（ｔ＿ｓ）を判定することにより、計算式ｔ＿ｅ＝ｔ＿ｋ−ｔ＿ｓ−ｔ＿ｐｒｏｐを使用して、検出された送信信号を送信した特定のスレーブノードの伝搬遅延を更新する。ここで、（ｔ＿ｐｒｏｐ）は現在のスレーブ固有の伝搬遅延である。動作９１８では、場合によってはフィルタリング後に、エラーが有意であるか、例えば所定の閾値を超えるかどうかの判定が行われる。動作９１８で、マスターノードは、特定のスレーブノードへの出力をスケジュールして、スレーブノードの特定の伝搬遅延を更新する。伝搬遅延は、エラーの半分を累積することにより更新され、両方向の遅延に対応する。
【００９８】
開示されている取得システムの様々な実施形態の潜在的な利点は、プロトコル論理を通信リンクの使用に適用して、マスターノードと分散されたスレーブノード間のデータ転送に対処し、タイミングエラーを修正し、分散スレーブノードの同期を提供できることである。別個の同期リンクは不要である。
【００９９】
航空機エンジン関連のアプリケーションの健全性モニタリングの例示的なコンテキストで示され、説明されているが、当業者は、本開示による取得システムが、分散スレーブノードによって取得された高度に相関した感知データを使用する、民間及び軍事アプリケーションを含む、他のすべての適切なアプリケーションで使用できることを容易に理解するであろう。マスターノードとスレーブノード間の通信を再同期するための同期時刻の修正は継続的なプロセスになる可能性があるため、取得システムは、取得システムの装置及びケーブルの修正に基づいて伝搬遅延が変更された場合でも、再同期が可能である。したがって、取得システムは、陸、海、宇宙、空中輸送手段などの固定システムまたはモバイルシステムの監視に使用できる。
【０１００】
本開示の装置及び方法を好ましい実施形態を参照して図示及び説明したが、当業者は、本開示の趣旨及び範囲から逸脱することなく、変更及び／または修正を行うことができることを容易に理解するであろう。
【図１】
2020108144.tif 000003
【図２】
2020108144.tif 000004
【図３Ａ】
2020108144.tif 000005
【図３Ｂ】
2020108144.tif 000006
【図４】
2020108144.tif 000007
【図５】
2020108144.tif 000008
【図６】
2020108144.tif 000009
【図７】
2020108144.tif 000010
【図８】
2020108144.tif 000011
【図９】
2020108144.tif 000012