(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024011842
(43)【公開日】2024-01-25
(54)【発明の名称】情報通信システム及び情報通信装置
(51)【国際特許分類】
H04L 7/00 20060101AFI20240118BHJP
【FI】
H04L7/00 160
【審査請求】未請求
【請求項の数】5
【出願形態】OL
(21)【出願番号】P 2022114119
(22)【出願日】2022-07-15
(71)【出願人】
【識別番号】390005223
【氏名又は名称】株式会社タムラ製作所
(74)【代理人】
【識別番号】100081961
【弁理士】
【氏名又は名称】木内 光春
(74)【代理人】
【識別番号】100112564
【弁理士】
【氏名又は名称】大熊 考一
(74)【代理人】
【識別番号】100163500
【弁理士】
【氏名又は名称】片桐 貞典
(74)【代理人】
【識別番号】230115598
【弁護士】
【氏名又は名称】木内 加奈子
(72)【発明者】
【氏名】蒔田 憲和
【テーマコード(参考)】
5K047
【Fターム(参考)】
5K047AA05
5K047AA18
5K047BB14
(57)【要約】
【課題】情報通信の伝搬時間の変動を吸収し、誤差を低減した同期制御が可能な情報通信システム及び情報通信装置を提供する。
【解決手段】実施形態の情報通信システム100は、スレーブ装置CLbから送信された複数の同期情報を、マスター装置CLaが受信した受信タイミングの集合において、所定時間未満に受信した1対の同期情報の組の受信間隔時間を、時系列に沿って複数組演算する間隔時間演算部76と、各組の受信間隔時間と、スレーブ装置CLbが同期情報を送信する送信間隔時間を決める所定の単位時間とに基づいて、各組の同期情報の伝搬時間の差分を求める差分演算部77と、伝搬時間の差分の平均値を求める平均値演算部78と、平均値を求めた同期情報の組よりも時系列で後続の同期情報の組について求めた伝搬時間の差分と、平均値とに基づいて、伝搬時間の補正値を求める補正値演算部79と、補正値を、スレーブ装置CLbに送信する同期情報に記録する補正値記録部80と、を有する。
【選択図】
図4
【特許請求の範囲】
【請求項1】
複数の情報通信装置が、マスター装置又はスレーブ装置として情報の通信を行う情報通信システムであって、
前記マスター装置が、前記スレーブ装置から送信された複数の同期情報を、前記マスター装置が受信した受信タイミングの集合において、所定時間未満に受信した1対の前記同期情報の組の受信間隔時間を、時系列に沿って複数組演算する間隔時間演算部と、
各組の受信間隔時間と、前記スレーブ装置が前記同期情報を送信する送信間隔時間を決める所定の単位時間とに基づいて、各組の前記同期情報の伝搬時間の差分を求める差分演算部と、
前記差分演算部が求めた前記伝搬時間の差分の平均値を求める平均値演算部と、
前記平均値を求めた前記同期情報の組よりも時系列で後続の前記同期情報の組について前記差分演算部が求めた前記伝搬時間の差分と、前記平均値演算部が求めた前記平均値とに基づいて、前記伝搬時間の補正値を求める補正値演算部と、
前記補正値を、前記スレーブ装置に送信する前記同期情報に記録する補正値記録部と、
を有することを特徴とする情報通信システム。
【請求項2】
前記所定時間は、前記マスター装置と前記スレーブ装置との周波数偏差の影響が表れる最小の間隔時間であることを特徴とする請求項1記載の情報通信システム。
【請求項3】
前記スレーブ装置は、前記補正値が記録された前記同期情報に基づいて、同期制御を行う同期制御部を有することを特徴とする請求項1又は請求項2記載の情報通信システム。
【請求項4】
他の情報通信装置と情報の通信を行う情報通信装置であって、
他の情報通信装置からの複数の同期情報の受信タイミングの集合において、所定時間未満に受信した1対の前記同期情報の組の受信間隔時間を、時系列に沿って複数組演算する間隔時間演算部と、
各組の受信間隔時間と、他の情報通信装置が前記同期情報を送信する送信間隔時間を決める所定の単位時間とに基づいて、各組の前記同期情報の伝搬時間の差分を求める差分演算部と、
前記差分演算部が求めた前記伝搬時間の差分の平均値を求める平均値演算部と、
前記平均値を求めた前記同期情報の組よりも時系列で後続の前記同期情報の組について前記差分演算部が求めた前記伝搬時間の差分と、前記平均値演算部が求めた前記平均値とに基づいて、前記伝搬時間の補正値を求める補正値演算部と、
前記補正値を、他の情報通信装置に送信する前記同期情報に記録する補正値記録部と、
を有することを特徴とする情報通信装置。
【請求項5】
前記所定時間は、他の情報通信装置との周波数偏差の影響が表れる最小の間隔時間であることを特徴とする請求項4記載の情報通信装置。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、複数の情報通信装置の間で通信により同期する情報通信システム及び情報通信装置に関する。
【背景技術】
【0002】
複数の情報通信装置間の一般的な時刻同期方法として、例えば、非特許文献1のIEEE1588 Precision Time Protocol(PTP)が知られている。非特許文献1では、基準時刻を持つマスター装置と、マスター装置の時刻に時刻同期するスレーブ装置とが定義され、マスター装置とスレーブ装置との間で定期的に時刻同期用パケットを交換することでスレーブ装置の時刻を補正する。
【0003】
具体的には、マスター装置からスレーブ装置に送信されるパケットのマスター装置の送信時刻とスレーブ装置の受信時刻、並びにスレーブ装置からマスター装置に送信されるパケットのスレーブ装置の送信時刻とマスター装置の受信時刻を用いて、スレーブ装置においてマスター装置とスレーブ装置との時差である時刻オフセットを推定して補正する。
【先行技術文献】
【非特許文献】
【0004】
【非特許文献1】“IEEE Standard for a Precision Clock Synchronization Protocol for Networked Measurement and Control Systems.”IEEE Standard 1588-2008.
【特許文献1】特開2016-225880号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
PTPシステムにおいては、マスター装置とスレーブ装置の双方向で情報の送受信をする際に、一方から他方への伝搬時間と、他方から一方への伝搬時間とが同じであることを前提としている。しかしながら、伝搬時間は、ネットワークを構成する装置のバッファリングの時間や、送受信において経由するノードの数等に左右される。このため、現実には、送信と受信の時間に相違が生じて、対称性を維持できない場合が生じる。
【0006】
これに対処するため、PTPシステムにおいては、バウンダリークロック(BC)、トランスペアレントクロック(TC)といったネットワーク中継装置を介することにより、変動する伝搬時間をキャンセルし、伝搬時間の変動に由来する時刻同期精度低下の問題を低減している。BCは、上位のマスター装置から受信した時刻に基づいて、遅延時間や揺らぎを補正して、下位のスレーブに対するマスターとしての時刻を生成する。TCは、パケットの中継時に、中継装置内での滞在時間を付加して下位のスレーブに送信する。
【0007】
しかし、一般的に、BC、TCは高価であり、時刻同期システム構築のコスト高を招く。このため、BC、TCを導入せずに、時刻同期精度のシステム要求仕様を満足させる代替案が期待されている。
【0008】
例えば、特許文献1では、最小パケット時間を用いることにより、伝搬時間の変動を吸収する方式を提唱している。しかし、情報通信の各方向での最小パケット時間を、独立して時々刻々と求めているため、伝搬時間の対称性を評価しておらず、時刻同期精度の低下を招く。
【0009】
また、時差変動の主要因は装置間のクロックの周波数偏差であるため、PTPの一部の実装においては、この周波数偏差を求めてキャンセルするオプションが用意されている。しかし、伝搬時間の変動による誤差要因を除去していないため、時刻同期精度の低下を招く。
【0010】
本発明は、上記のような課題を解決するためになされたものであり、情報通信の伝搬時間の変動を吸収し、誤差を低減した同期制御が可能な情報通信システム及び情報通信装置を提供することにある。
【課題を解決するための手段】
【0011】
本発明は、複数の情報通信装置が、マスター装置又はスレーブ装置として情報の通信を行う情報通信システムであって、前記マスター装置が、前記スレーブ装置から送信された複数の同期情報を、前記マスター装置が受信した受信タイミングの集合において、所定時間未満に受信した1対の前記同期情報の組の受信間隔時間を、時系列に沿って複数組演算する間隔時間演算部と、各組の受信間隔時間と、前記スレーブ装置が前記同期情報を送信する送信間隔時間を決める所定の単位時間とに基づいて、各組の前記同期情報の伝搬時間の差分を求める差分演算部と、前記差分演算部が求めた前記伝搬時間の差分の平均値を求める平均値演算部と、前記平均値を求めた前記同期情報の組よりも時系列で後続の前記同期情報の組について前記差分演算部が求めた前記伝搬時間の差分と、前記平均値演算部が求めた前記平均値とに基づいて、前記伝搬時間の補正値を求める補正値演算部と、前記補正値を、前記スレーブ装置に送信する前記同期情報に記録する補正値記録部と、を有する。
【0012】
本発明は、他の情報通信装置と情報の通信を行う情報通信装置であって、他の情報通信装置からの複数の同期情報の受信タイミングの集合において、所定時間未満に受信した1対の前記同期情報の組の受信間隔時間を、時系列に沿って複数組演算する間隔時間演算部と、各組の受信間隔時間と、他の情報通信装置が前記同期情報を送信する送信間隔時間を決める所定の単位時間とに基づいて、各組の前記同期情報の伝搬時間の差分を求める差分演算部と、前記差分演算部が求めた前記伝搬時間の差分の平均値を求める平均値演算部と、前記平均値を求めた前記同期情報の組よりも時系列で後続の前記同期情報の組について前記差分演算部が求めた前記伝搬時間の差分と、前記平均値演算部が求めた前記平均値とに基づいて、前記伝搬時間の補正値を求める補正値演算部と、前記補正値を、他の情報通信装置に送信する前記同期情報に記録する補正値記録部と、を有する。
【発明の効果】
【0013】
本発明によれば、情報通信の伝搬時間の変動を吸収し、誤差を低減した同期制御が可能な情報通信システム及び情報通信装置を提供することができる。
【図面の簡単な説明】
【0014】
【
図1】実施形態に係る情報通信システムの模式図である。
【
図2】実施形態に係る情報通信システムを構成する情報通信装置の機能ブロック図である。
【
図3】情報通信装置間の通信の態様を示す図である。
【
図4】実施形態に係る制御部の機能ブロック図である。
【
図5】伝搬時間の対称性を有する通信の態様を示す図である。
【
図6】伝搬時間の対称性を有しない通信の態様を示す図である。
【
図7】伝搬時間及び時差に変動による誤差のない同期状態ベクトルを示す図である。
【
図8】伝搬時間及び時差に変動による誤差を含む同期状態ベクトルを示す図である。
【
図9】実施形態に係る情報通信システムの情報通信の集合を示す図である。
【
図10】時系列の伝搬時間差分と、平均値から補正値を求める手法を説明するグラフである。
【
図11】実施形態の同期制御の処理の手順を示すフローチャートである。
【発明を実施するための形態】
【0015】
以下、実施形態に係る情報通信システム及び情報通信装置について、図面を参照して説明する。
【0016】
[構成]
図1は実施形態に係る情報通信システム100の模式図である。
図2は実施形態に係る情報通信システム100を構成する情報通信装置1の機能ブロック図である。
図3は情報通信装置1間の通信の態様を示す図、
図4は
図2の制御部70の機能ブロック図である。
【0017】
本実施形態に係る情報通信システム100は、複数の情報通信装置1からなり、各情報通信装置1が情報通信により同期を図る。マスター装置となる情報通信装置1に対し、スレーブ装置となる情報通信装置1が同期する。マスター装置とは、情報通信システム100において、他の情報通信装置1と同期される対象となる情報通信装置1である。スレーブ装置とは、情報通信システム100において、マスター装置である他の情報通信装置1に対して同期する情報通信装置1である。時刻同期を図るための情報である同期情報の送受信を、スレーブ装置とマスター装置で行うことにより、スレーブ装置がマスター装置に同期する。
【0018】
マスター装置となる情報通信装置1をマスター装置CLaとし、スレーブ装置となる情報通信装置1をスレーブ装置CLbとする。マスター装置CLaに対するスレーブ装置CLbは少なくとも1台が存在すればよいが、
図1に示すように、複数台のスレーブ装置CLbを備えるシステムであってもよい。
【0019】
マスター装置CLaとスレーブ装置CLbは、情報を通信可能なネットワークを介して接続されている。本実施形態では、情報通信装置1が、有線で情報を送信及び受信することで、同期を図る例を説明するが、無線であってもよい。
【0020】
(情報通信装置)
情報通信装置1は、コンピュータを含み構成されており、あらかじめHDDやSSD等の記憶部に記憶されたプログラムを、CPUなどを含むプロセッサが実行することにより、必要な演算を行う。
【0021】
具体的には、
図2に示すように、情報通信装置1は、通信部10、クロック20、時計30、記憶部50、外部インターフェイス60、制御部70を有する。例えば、各部10~70は、ハードウェアとして構成される。制御部70の各部は、プログラム及びデータを含むソフトウェアにより構成しても良い。制御部70のどの部分をソフトウェアとして構成するかは適宜設計変更可能である。
【0022】
通信部10は、他の情報通信装置1との間で情報を送受信する。つまり、通信部10は、情報通信装置1の外部への情報の送信、情報通信装置1の外部からの情報の受信又はこれらの両方を行う。通信部10は、送信器11、受信器12、送信タイミング検出部13、受信タイミング検出部14を有する。
【0023】
送信器11は、入力された情報を送信する機器である。具体的には、送信器11は、情報を最小構成要素に時系列に分解の上、当該情報を外部へ送信する。情報のパケット長(通信情報量)は任意であり、通信毎に異なっていても良い。例えば、マイクから入力された音声信号を音声データに変換する入力部が情報通信装置1に接続され、入力部から情報としての音声データが情報通信装置1に入力される。
【0024】
受信器12は、外部から情報を受信する機器である。具体的には、受信器12は、情報通信装置1の外部から受信した、最小構成要素に時系列に分解された情報を再構成し、情報通信装置1内の他の構成部へ出力する。例えば、音声を出力するイヤーレシーバやスピーカなどの再生部が情報通信装置1に接続され、受信器12が音声データを音声信号に変換して再生部に出力する。このように、送受信される最小構成要素に時系列に分解された情報は、各要素の時系列上の位置、すなわち情報要素位置を特定できる。
【0025】
ここで、情報通信装置1が通信する情報、つまり、送信器11により送信される情報、受信器12により受信される情報には、マスター装置CLaとスレーブ装置CLbとの間で時刻を同期させるための同期情報が含まれる。
【0026】
送信タイミング検出部13は、送信タイミングを検出する。送信タイミングは、送信器11により送信される情報の所定の情報要素位置が、本情報通信装置1の外部へ送信されるタイミングである。この送信タイミングは、後述するクロック20のクロック周期(換言すれば、クロック20の発振するパルスの周期)をベースとして検出される。つまり、送信タイミングは、クロック周期の整数倍に基づいて表現される。
【0027】
また、送信タイミング検出部13は、その検出結果を情報通信装置1内の他の構成へ出力することもできる。ここでいう情報は、例えばパケットであり、この場合、所定の情報要素位置(以下、所定情報要素位置とする)は、ビット位置である。
【0028】
受信タイミング検出部14は、受信タイミングを検出する。受信タイミングは、受信器12により受信される情報が、情報通信装置1の外部から受信されるタイミングである。この受信タイミングは、後述するクロック20のクロック周期をベースとして検出される。つまり、受信タイミングは、クロック周期の整数倍として表現される。また、受信タイミング検出部14は、その検出結果を情報通信装置1内の他の構成へ出力する。
【0029】
図3は、有線通信を例に、情報通信装置1間のパケット伝送において、パケット内の特定ビット位置を送受信タイミングとして検出し、隣接する送信タイミング及び受信タイミングから、それぞれ送信間隔及び受信間隔を求める構成を示している。
【0030】
なお、送信タイミング及び受信タイミングは、何れも同じ最小構成要素の位置を検出してもよいが、送受信する情報通信装置1間において各タイミング検出で所定関係を保つのであれば、必ずしも同じ位置を検出しなくても良く、検出する要素位置のずれは無視又は補正可能である。
【0031】
また、送信タイミングは実際に送信されるタイミングから所定時間前後して検出されても良い。受信タイミングは実際に受信されるタイミングから所定時間前後して検出されても良い。これらの所定値は通信部内にて固定的でも、外部から静的または動的に設定されても良い。
【0032】
クロック20は、所定の周波数により発振し、情報通信装置1の各部に動作タイミングを与える信号を出力する。これにより、情報通信装置1内の各部は、クロック20に同期して動作する。情報通信装置1の全体が単一のクロック20に一斉に同期しても良いし、複数のクロック20にて複数の機能部毎に独立して同期しても良い。このクロック20は、固有の有限な発振周波数許容偏差を有する。つまり、クロック20は、所定の発振周波数(例えば10MHz)に対する誤差(例えば20ppm)を有する。クロック20としては、例えば、水晶振動子などの周波数固定の発振器を用いることができる。
【0033】
クロック20は、マスター装置CLaとスレーブ装置CLbとで公称周波数が同じでも、実際には個体差が存在する。すなわち、マスター装置CLaとスレーブ装置CLbのクロック20の周波数間には周波数偏差が存在する。クロック20は外部より周波数制御信号を入力し、同信号に対応して発振周波数を可変制御しても良い。
【0034】
時計30は、クロック20の出力信号を源振として刻時し、情報通信装置1の起動からの相対的な時刻を出力する。刻時は入力されたクロック信号の分周波に同期しても良い。また、刻時は、1クロックあたりの進み幅が可変であってもよく、クロック周波数が固定であっても間欠的に時計の駆動周波数を制御可能としてもよい。時刻は規定の単位にて参照されるが、この規定値は時計内にて固定的でも、外部から静的または動的に設定されても良い。時計30の相対的な時刻の出力は、例えば外部からの参照要求に応じて行う。
【0035】
記憶部50は、HDD、SSD、メモリ、レジスタなどの記録媒体である。記憶部50は、制御部70で演算を行うのに必要な情報を記憶する。後述の送信タイミング又は受信タイミングに対応する時計30の時刻は、CPU又はソフトウェアを介さず、ハードウェアのみのアクセスで保持できる記録媒体に保持すると良い。ソフトウェアに起因するジッターを排除できるからである。なお、送受信タイミングと時刻との対応付けにおいてソフトウェアのジッターを受けないことが重要であり、送受信タイミングと時刻とが対応付けられた後は、低速なアクセス領域に記憶されても良い。
【0036】
記憶部50としてのメモリは、任意の情報を入出力し、当該情報を指定された記憶領域へ記憶する。情報の記憶は、外部からの記憶要求により行われるが、その際に記憶する情報と記憶領域が入力される。情報の参照は、外部からの参照要求により行われるが、その際に参照情報の記憶領域が入力され、その入力により指定された記憶領域の情報を出力する。情報の記憶の保持は、本装置の動作中のみであっても、動作停止時も含めて永続的であっても良い。
【0037】
外部インターフェイス60(以下、外部I/F60ともいう。)は、本情報通信装置1内部と外部を接続し、任意の情報を入出力する。情報は、同期情報などの送受信データや時計30の時刻、その他、記憶部50に記憶させる情報を含む。さらに、情報通信装置1は、内部状態を制御および表示可能な表示装置等のユーザーインターフェイスを有しても良い。
【0038】
制御部70は、情報通信装置1の各部の動作全般を制御する。
図4は、制御部70の機能ブロック図である。
図4に示すように、制御部70は、主制御部71、送受信データI/F72、通信制御部73、スケジューラ74、時刻記録部75、間隔時間演算部76、差分演算部77、平均値演算部78、補正値演算部79、補正値記録部80、同期制御部81を有する。
【0039】
主制御部71は、制御部70内の各部と連携されており、制御部70内の各部の動作を統制する。送受信データI/F72は、記憶部50や外部I/F60の情報を装置外部へ送信可能な形式にする。また、送受信データI/F72は、装置外部から受信した情報を制御部70及び記憶部50に適した形式にする。
【0040】
通信制御部73は、通信部10の動作を統制する。通信制御部73は、通信部10と制御部70との間で送受信情報の入出力をする。
【0041】
スケジューラ74は、情報を送信又は受信するスケジュール(時間)を制御する。例えば、情報を一方向に通信する場合において、送信側のスケジューラ74は、情報の送信間隔を制御したり、情報の送信タイミングが所定時刻に検出されるスケジュールを設定したりする。
【0042】
本実施形態のスレーブ装置CLbにおけるスケジューラ74は、同期情報の送信タイミングを制御する。ここでいう同期情報は、例えば、IEEE1588のDelay_Reqメッセージに相当する。IEEE1588においては、スレーブ装置CLbは、同期情報であるDelay_Reqメッセージをランダムな送信間隔で繰り返し送信する。同期情報の送信間隔は、同期情報の伝搬時間と比較して十分に大きな間隔であるが、離散的な乱雑さを含んでいる。例えば、1/2秒、1/4秒といった2の累乗で決まる時間のように、所定の単位時間Gの倍数である。多数のスレーブ装置CLbから送信されるため、バッティングが生じないようにランダムな間隔となっている。
【0043】
時刻記録部75は、受信タイミング検出部14により受信した情報の受信タイミングと、当該受信タイミングにおける時計30の時刻とを対応付けて、メモリに記憶させる。この対応付けは、例えば、時刻記録部75が、受信タイミング検出部14から、受信した情報の受信タイミングか検出された旨の信号を受けて、時計30の時刻を参照し、当該時刻と受信タイミングとを対応付ける。
【0044】
このように、本実施形態において、「時刻」は、情報の所定情報要素位置の検出された受信タイミング又は送信タイミングに対応する時計30の時刻をいい、「時間」は、当該時刻の差分をいう。
【0045】
間隔時間演算部76は、他の情報通信装置1から送信された複数の同期情報の受信タイミングの集合において、所定時間内に受信した1対の同期情報の組の受信間隔時間を、時系列に沿って複数組演算する。この受信タイミングは、スレーブ装置CLbから送信された複数の同期情報を、マスター装置CLaが受信したタイミングである。所定時間とは、後述するように、マスター装置CLaとスレーブ装置CLbとの間の情報の伝搬時間に、マスター装置CLaとスレーブ装置CLbにおける周波数偏差の影響が表れる最小の間隔時間である。周波数偏差は、マスター機のクロック周波数とスレーブ機のクロック周波数のずれである。
【0046】
受信間隔時間は、1対の同期情報の受信タイミングの受信時刻の差分である。受信間隔時間は、受信タイミングに対応する時刻を時計30より参照し、二つの受信間の時刻差により求める。
【0047】
差分演算部77は、各組の受信間隔時間と、スレーブ装置CLbが同期情報を送信する送信間隔時間を決める所定の単位時間Gとに基づいて、各組の同期情報の伝搬時間の差分を求める。この単位時間Gは、後述するように、伝搬時間よりも十分に大きな値であって、情報通信システム100に固有の値とすることができる。
【0048】
平均値演算部78は、差分演算部77によって求めた複数組の伝搬時間の差分の平均値を求める。補正値演算部79は、平均値を求めた同期情報の組よりも、時系列で後続の同期情報の組について、差分演算部77が求めた伝搬時間の差分と、平均値とに基づいて、伝搬時間の補正値を求める。補正値記録部80は、送信する同期情報に補正値を記録する。つまり、スレーブ装置CLbに送信する同期情報のパケットに、補正値を含める。
【0049】
同期制御部81は、受信した同期情報に基づいて、時刻同期を行う。つまり、スレーブ装置CLbが受信した同期情報に含まれる補正値を、マスター装置CLaとスレーブ装置CLbとの間の対称性のある伝搬時間であるとして、同期制御を行う。例えば、後述するように、被同期装置(マスター装置CLa)となる情報通信装置1との時間のずれ、つまり時差を演算し、その時差に基づいて時計30の刻時する値を補正する。補正は、例えば、時計30自体を制御して刻時を補正しても良い。あるいは、時計30が時刻を出力する際に時差に基づいて補正しても良い。すなわち、時計30の刻時自体は補正せず、時計30が時刻を出力する際にずれ分を補正した時刻を出力するように時計30を制御しても良い。
【0050】
[伝搬時間に対称性がある場合の時差の計測]
次に、伝搬時間に対称性がある場合の伝搬時間及び時差の計測について、
図5を参照して説明する。
図5は、有線通信を例に、一対のマスター装置CLaとスレーブ装置CLbとの間で、それぞれのクロック間の時差および情報の伝搬時間と、情報通信により観測される送受信タイミングとの関係を示す。
【0051】
なお、ここでのマスター装置CLaが送信する同期情報、及び、スレーブ装置CLbが送信する別の同期情報とは、同期するためにタイミングを計る目的のものであり、当該同期情報にはマスター装置CLaの送信時刻等が載せられているが、当該同期情報及び当該別の同期情報の中身は任意である。
【0052】
図5に示すように、マスター装置CLaが情報を時刻t
a,Tに送信し、伝搬時間dを経て時刻t
b,Rにスレーブ装置CLbが受信する。Δt
b後に別の情報を、スレーブ装置CLbが時刻t
b,Tに送信し、同じく伝搬時間dを経てマスター装置CLaが時刻t
a,Rに受信する。
【0053】
ここで、マスター装置CLaにおける送信から受信までの間隔をΔtaとし、スレーブ装置CLbにおける受信から送信までの間隔をΔtbとし、マスター装置CLaの送信タイミングta,Tと同一のタイミングが、スレーブ装置CLbではt´a,Tとして観測されるものとする。このため、ある瞬間のマスター装置CLaを基準としたスレーブ装置CLbとの、クロック20間の時差gは、式(1)のとおり求めることができる。さらに、同じ瞬間のスレーブ装置CLbを基準とするマスター装置CLaとのクロック間の時差は、-gと表すことができる。
【0054】
なお、上記のように、マスター装置CLaからのスレーブ装置CLbへの伝搬時間dとスレーブ装置CLbからマスター装置CLaへの伝搬時間dは同じ、つまり情報通信の方向において対称であることを前提としている。
【0055】
これらの条件から、伝搬時間dは、式(2)の通り、求めることができる。
【0056】
よって、クロック20間の時差gは、式(2)を用いて、式(3)の通り求めることができる。
【0057】
スレーブ装置CLbの同期制御部81は、クロック20間の時差gが0となるように、クロック周波数や時刻を繰り返し調整することにより、マスター装置CLaに対して時刻同期することができる。
【0058】
マスター装置CLaとスレーブ装置CLbのクロック周波数が同一であれば、すなわち、クロックドメインが単一であれば、時刻を一旦調整するのみで時刻同期可能であるが、一般的に2クロック間には周波数偏差が存在するため、時刻同期にはクロック周波数の調整が必須となる。クロック周波数を直接的に調整できないシステムであっても、1クロックあたりの刻時の進み幅を繰り返し調整することにより、時計30の駆動周波数を制御し、時刻同期できる。これらの周波数調整においては、同期位相を入力とし、周波数調整値を出力とする閉ループ制御を定期的に行い、入力される同期位相が0となるように出力値を制御する。
【0059】
なお、送受信タイミング間にある、伝搬時間や内部遅延は、システムの要求条件などにより無視または補正可能である。また、マスター装置CLaから同期情報の送信を開始するのではなく、スレーブ装置CLbから同期情報を送信するようにしてもよい。さらに、情報通信に必要なインターフェイス数は1で必要十分であるが、例えば、送信と受信のインターフェイスを独立して実装するなど、複数インターフェイスを同時に使用する構成としてもよい。
【0060】
[時差と伝搬時間の変動の影響]
上記の説明は、時差が一定であり、伝搬時間が情報通信の方向において対称であることを前提としている。しかしながら、実際の情報通信装置1の間のクロック20の公称周波数に対する周波数偏差は異なり、時々刻々と変動する。このため、情報通信装置1の間の時差も変動し、マスター装置CLaとスレーブ装置CLbが接続されるネットワークシステムによっては、情報の伝搬経路や通信の調停が影響し、
図6に示すように、伝搬時間は非対称となることが一般的である。
【0061】
すなわち、ある瞬間のマスター装置CLaとスレーブ装置CLbの間の時差g
b/aと、その後、一定期間経過した同じマスター装置CLaとスレーブ装置CLbの間の時差g
a/bは同一にはならない。また、マスター装置CLaからスレーブ装置CLbへの情報の伝搬時間d
b/aは、スレーブ装置CLbからマスター装置CLaへの情報の伝搬時間d
a/bと同一にならないことが一般的である。なお、
図6での時差は、
図5での時差と表現を合わせるために、g
b/aとg
a/bは同符号であり、g
b/a・g
a/b≧0としている。さらに、上記のように、時差と伝搬時間は時々刻々と変動し、ある瞬間に観測された時差g
b/a[m]と伝搬時間d
b/a[m]は、異なる瞬間に観測された時差g
b/a[n]と伝搬時間d
b/a[n]とは、それぞれ異なることが一般的である。
【0062】
ここで、
図6の各時間の関係から、伝搬時間d
b/a,d
a/bと時差g
b/a,g
a/bを用いて、式(2)、(3)を、それぞれ式(4)、(5)のとおり整理する。
【0063】
式(2)では、対称性を前提として伝搬時間を求めることができたが、式(4)では、伝搬時間の平均値に時差の変動成分が含まれてしまうことがわかる。同様に、式(3)では、時差が一定であることを前提として、時差を求めることができたが、式(5)では、時差の平均値に伝搬時間の変動成分が含まれてしまうことがわかる。このように時差及び伝搬時間の変動成分が含まれると、時刻同期の精度の低下を招くことになる。
【0064】
[時差と伝搬時間の変動による誤差]
時刻同期システムにおいて、時差と伝搬時間の変動が生じさせる時刻同期の誤差を説明する。まず、式(4)、(5)の両式を合成し、式(6)に示すように行列形式に変形する。
【0065】
【0066】
すると、式(6)の共通因数に着目して、式(7)のR
θを用いることにより、式(6)は式(8)のように変形できる。
【0067】
図7に示すように、横軸がマスター装置CLaからスレーブ装置CLbへ通信を行った場合の時差g
b/a及び伝搬時間d
b/aの成分、縦軸がスレーブ装置CLbからマスター装置CLaへ通信を行った場合の時差g
a/b及び伝搬時間d
a/bの成分とする二次元空間を考える。すると、(g
b/a -g
a/b)
Tを時差ベクトルg、(d
b/a d
a/b)
Tを伝搬時間ベクトルdとすれば、式(8)の変動誤差を含んだ時差と伝搬時間を要素とする同期状態ベクトルs=(g
d d
g)
Tは、時差ベクトルgと伝搬時間ベクトルdの和を、同空間上に+π/4回転させて、各次元をスケーリングしたものと解釈できる。
【0068】
式(8)の操作において、時差ベクトルgの要素g
b/a、g
a/bに変動がなく、伝搬時間ベクトルdの要素d
b/a、d
a/bに変動がない、すなわち、g
b/a=g
a/bかつd
b/a=d
a/bであるとき、
図7に示すように、同期状態ベクトルsは、d
g成分とg
d成分に直交分解すれば、誤差を含まず時差と遅延時間を求めることができることがわかる。
【0069】
しかし、一般的には、
図8に示すように、時差ベクトルgと伝搬時間ベクトルdは、それぞれの要素に変動誤差を含む。このため、直交成分のそれぞれに互いの誤差が合成されることにより、式(8)の操作だけでは、時差と伝搬時間から誤差を取り除くことはできず、時刻同期精度の低下を招いてしまう。
【0070】
式(4)、(5)は、線形従属であるため、他の独立した操作を導入しなければ、解析的に解は求められないが、同期情報の送受信タイミング計測のみでは、
図7に示すベクトルとなるような新たな独立操作を見出すことはできない。このため、変動誤差を除去するには、別のアプローチを導入する必要がある。
【0071】
[マスター装置による同期精度の向上]
IEEE1588などの従来の時刻同期原理では、時刻同期演算を行うのは、スレーブ装置CLbであり、マスター装置CLaは、同期情報の送受信を行うのみである。このため、既存の情報通信システム100を更新し、新たな原理による時刻同期を行うためには、多数のスレーブ装置CLbにそれぞれ新たなアプリケーションを組み込んだり、既存のスレーブ装置CLbを新たなスレーブ装置CLbに置き換える必要があり、大きな手間とコストが発生する。このため、情報通信システム100において、スレーブ装置CLbよりも少数のマスター装置CLaを置き換えることによって、時刻同期精度を向上させることが好ましい。
【0072】
図9は、本実施形態において、スレーブ装置CLbからマスター装置CLaへ同期情報を通信する際の送受信タイミングの時差と伝搬時間の関係を表している。
【0073】
マスター装置CLaは、上記のようにスレーブ装置CLbから送信された同期情報を受信する。マスター装置CLaは同期情報の送信タイミングを知る必要はなく、Delay_Reqメッセージには含まれないことが一般的である。よって、マスター装置CLaはこの同期情報の受信タイミングしか知り得ない。本実施形態では、マスター装置CLaは、このようなスレーブ装置CLbからマスター装置CLaへの方向の同期情報の受信タイミングのみを用いる。
【0074】
図9に示すt
a,R[j]とt
a,R[i]の間隔を、Δt
a,R[i,j]=t
a,R[j]-t
a,R[i]としたとき、式(9)のように表すことができる。
【0075】
式(9)において、右辺の第1項tb,T[j]-tb,T[i]は、スレーブ装置CLbの送信間隔である。右辺の第2項ga/b[j]-ga/b[i]は、マスター装置CLaとスレーブ装置CLbの間の時差と、送信間隔をおいた後の同じマスター装置CLaとスレーブ装置CLbの間の時差との差分である。右辺の第3項da/b[j]-da/b[i]は、マスター装置CLaからスレーブ装置CLbへの伝搬時間と、送信間隔をおいた後の同じマスター装置CLaからスレーブ装置CLbへの伝搬時間との差分である。
【0076】
マスター装置CLaが認識できるのは、左辺のΔta,R[i,j]のみである。右辺の第1項、第2項、第3項は、マスター装置CLaは認識できない情報である。以下、各項について検討する。
【0077】
まず、第2項は、上述の通り、時差の差分である。このため、タイミングnからタイミングn+Nまでを時差が生じる最小時間Lg[n]未満とすれば、第2項を0とみなすことができる。一般的に、伝搬時間は、この最小時間Lg[n]よりも小さいためである。伝搬時間は非常に小さい値なので、これに周波数偏差を作用させたとしても、その影響が表れない。
【0078】
ここで、クロック20が公称周波数f
N、見かけの周波数偏差e[n]の情報通信装置1間において、両装置での観測時間に時差が生じる最小時間L
g[n]は、式(10)の通り表すことができる。なお、T
N=1/f
Nである。
【0079】
従って、タイミングnから最小時間Lg[n]未満のタイミングn+Nの通信を選択することにより、第2項をキャンセルできることになる。つまり、受信間隔時間の演算対象とする1対の受信タイミングの組に求められる所定時間未満とは、この最小時間Lg[n]よりも小さい(未満の)時間である。なお、情報通信システム100に求められる時刻同期精度を満足できる限り、Lg[n]以上の時間としてもよい。つまり、所定時間は、最小時間Lg[n]には限定されず、情報通信システム100の要求精度に応じて、より大きな値であってもよい。ここで、例えば、所定時間の上限としては、マスター装置CLaとスレーブ装置CLbの両装置間で生じる観測時間の許容時差GTに対応し、k=GTfNとすれば、kLg[n]となる。
【0080】
次に、第1項は同期情報の送信間隔であるが、この送信間隔は、伝搬時間よりも十分に大きな値、つまり各伝搬時間da/b[n]~da/b[n+N]よりも、十分に大きな単位時間Gの倍数である。このため、Δta,R[i,j]に対応するw[i,j]Gを求めることができる。なお、w[i,j]は、Δta,R[i,j]に対応する係数である。
【0081】
単位時間Gは、IEEE1588の設定値であるため、情報通信システム100に固有の値とすることで、特定することができる。但し、上記のように、スレーブ装置CLb同士のバッティングを避けるために、スレーブ装置CLb毎に異なる値も設定可能である。この場合には、各種[i,j]の組み合わせでΔta,R[i,j]を求めて比較することで、Gを特定してもよい。Gは定数であり、w[i,j]はランダムな整数であるため、Gを特定することができる。たとえば、w[i,j]Gとw[i,k]Gの比は、w[i,j]/w[i,k]となるが、これが2であった場合、w[i,j]G-w[i,k]G=(2-1)G=Gとして求めることができる。
【0082】
以上の条件を満足することにより、式(9)から式(11)が言える。つまり、伝搬時間の差分であるΔd
a/b[i,j]を求めることができる。
【0083】
そして、タイミングnを基準とし、タイミングn+1からタイミングn+Nまでの各伝搬時間の差分Δd
a/b[n,n+1],…,Δd
a/b[n,n+N]の平均値μΔd
a/b[n,N]は、式(12)の通り求めることができる。このような各伝搬時間の差分を時系列で模式的に並べたグラフを、
図10に示す。
【0084】
式(12)の最右辺の第1項μda/b[n+1,n+N]は、タイミングn+1からタイミングn+Nまでの伝搬時間da/b[ ]の平均値であり、第2項da/b[n]はタイミングnの伝搬時間を意味する。つまり、伝搬時間差分の平均値は、伝搬時間の平均値を含んでいる。そこで、タイミングnを時系列にシフトしてμda/b[n+1,n+N]を継続的に求めることができれば、各タイミングでの伝搬時間da/b[ ]よりも、安定的で滑らかな伝搬時間が得られる。
【0085】
このため、続けてタイミングn+N+1においても、伝搬時間の差分Δd
a/b[n+1,n+N+1]を求め、式(13)の通り、式(12)のμd
a/b[n+1,n+N]を用いて、タイミングn+N+1における伝搬時間の補正値c
a/b[n+N+1]を求める。式(24)の右辺の第1項と第2項に含まれるd
a/b[n]は、減算により相殺される。
【0086】
スレーブ装置CLbでの時刻同期演算のためには、マスター装置CLaは、スレーブ装置CLbからの同期情報の受信タイミングta,R[ ]を、新たな同期情報に記録してスレーブ装置CLbへ返送する必要がある。この際、式(13)で求めた補正値ca/b[n+N+1]を、同期情報に記録しておく。
【0087】
より具体的には、マスター装置CLaが返送する同期情報は、IEEE1588におけるDelay_Respメッセージに相当する。そして、補正値ca/b[n+N+1]は、Delay_RespメッセージにおけるCorrectionFieldに挿入される値に相当する。IEEE1588において、CorrectionFieldには、同期情報が、マスター装置CLaとスレーブ装置CLbとの間の中継装置を経由することによる滞留時間の総和が含まれている。
【0088】
IEEE1588に準拠したスレーブ装置CLbは、Delay_Respメッセージの受信タイミングから、CorrectionFieldの値を減ずることにより、情報通信の伝搬時間の変動を補正する。同様に、本実施形態においても、スレーブ装置CLbは、返送された同期情報の受信タイミングから、CorrectionFieldに記録された補正値c
a/b[n+N+1]を差し引くことにより、式(14)の通り、安定した同期情報の伝搬時間の平均値μd
a/b[n+1,n+N]を求める(
図10参照)。
【0089】
これにより、スレーブ装置CLbは、同期情報の伝搬時間の平均値μda/b[n+1,n+N]を伝搬時間として用いて、時刻同期演算を行うことができるため、時刻同期精度を向上させることができる。同期精度を向上させるためには、上りと下りの伝搬時間が対称な状態に近いほど良い。上記のように、一方向でも伝搬時間を実際の時間とは異なる値に操作したとしても、その値が平均値μda/b[n+1,n+N]により平滑化されることにより、双方向の伝搬時間の揺らぎの差は平滑化前よりも小さくなる。これにより、双方向の伝搬時間を対称な状態により近づけて、時差を求めることができる。
【0090】
[動作]
以上を前提として、本実施形態の情報通信システム100の動作を、
図12のフローチャートを参照して説明する。なお、以下の手順による情報通信方法、情報通信プログラム及び情報通信プログラムを記録した記録媒体も、本発明の一態様である。まず、スレーブ装置CLbの通信制御部73は、スケジューラ74に従って、複数の同期情報をマスター装置CLaに送信する。これは、上記のように、単位時間Gに基づく送信間隔で行う。
【0091】
マスター装置CLaは、スレーブ装置CLbからの同期情報を受信する(ステップS101)。マスター装置CLaの間隔時間演算部76は、タイミングnから最小時間Lg[n]未満のタイミングn+Nの受信タイミングの組を選択し、各組の受信間隔時間を演算する(ステップS102)。
【0092】
差分演算部77は、各組の同期情報の伝搬時間の差分を求める(ステップS103)。これは、受信間隔から、所定の単位時間Gに基づいて設定された送信間隔を減算することにより行う。平均値演算部78は、複数の組の伝搬時間の差分の平均値を求める(ステップS104)。補正値演算部79は、後続の同期情報の組について差分演算部77が求めた伝搬時間の差分から、平均値演算部78が算出した平均値を減算することにより、補正値を求める(ステップS105)。補正値記録部80は、補正値を同期情報に記録する(ステップS106)。つまり、Delay_RespメッセージのCorrectionFieldに補正値を書き込む。
【0093】
マスター装置CLaの通信制御部73は、補正値が記録された同期情報をスレーブ装置CLbに送信する(ステップS107)。スレーブ装置CLbの同期制御部81は、受信した同期情報に基づいて、同期制御を行う。
【0094】
[効果]
(1)本実施形態は、複数の情報通信装置1が、マスター装置CLa又はスレーブ装置CLbとして情報の通信を行う情報通信システム100であって、スレーブ装置CLbから送信された複数の同期情報を、マスター装置CLaが受信した受信タイミングの集合において、所定時間未満に受信した1対の同期情報の組の受信間隔時間を、時系列に沿って複数組演算する間隔時間演算部76と、各組の受信間隔時間と、スレーブ装置CLbが同期情報を送信する送信間隔時間を決める所定の単位時間Gとに基づいて、各組の同期情報の伝搬時間の差分を求める差分演算部77と、差分演算部77が求めた伝搬時間の差分の平均値を求める平均値演算部78と、平均値を求めた同期情報の組よりも時系列で後続の同期情報の組について差分演算部77が求めた伝搬時間の差分と、平均値演算部78が求めた平均値とに基づいて、伝搬時間の補正値を求める補正値演算部79と、補正値を、スレーブ装置CLbに送信する同期情報に記録する補正値記録部80と、を有する。
【0095】
スレーブ装置CLbは、補正値が記録された同期情報に基づいて、同期制御を行う同期制御部81を有する。
【0096】
また、本実施形態は、他の情報通信装置1と情報の通信を行う情報通信装置1であって、他の情報通信装置1からの複数の同期情報の受信タイミングの集合において、所定時間未満に受信した1対の同期情報の組の受信間隔時間を、時系列に沿って複数組演算する間隔時間演算部76と、各組の受信間隔時間と、他の情報通信装置1が同期情報を送信する送信間隔時間を決める所定の単位時間Gとに基づいて、各組の同期情報の伝搬時間の差分を求める差分演算部77と、伝搬時間の差分の平均値を求める平均値演算部78と、平均値を求めた同期情報の組よりも時系列で後続の同期情報の組について差分演算部77が求めた伝搬時間の差分と、平均値演算部78が求めた平均値とに基づいて、伝搬時間の補正値を求める補正値演算部79と、補正値を、他の情報通信装置1に送信する同期情報に記録する補正値記録部80と、を有する。
【0097】
このように、情報通信装置1間の伝搬時間、つまりスレーブ装置CLbからマスター装置CLaへの伝搬時間を補正値により平滑化するため、スレーブ装置CLbは、平滑化された伝搬時間に基づいて、時刻同期が可能となる。このため、伝搬時間の変動を吸収し、誤差を低減して時刻同期精度を向上させることができる。また、同期情報に補正値を含めることにより、既存の時刻同期の仕組みを利用して、低コストで時刻同期を実現できる。つまり、既存のPTPシステムを活用しつつ、BCやTCを用いずに、情報通信システム100に要求される所望の精度での時刻同期が可能となる。スレーブ装置CLbも、既存のプロトコルに準拠したものをそのまま用いることができるので、高コスト化を抑えることができる。
【0098】
(2)所定時間は、前記マスター装置と前記スレーブ装置との周波数偏差の影響が表れる最小の間隔時間である。このため、周波数偏差の影響が表出しない最小時間内の観測により、時差の誤差を排除することができる。
【0099】
[他の実施形態]
本発明は上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記実施形態に開示されている複数の構成要素の適宜な組み合わせにより、種々の発明を形成できる。
【符号の説明】
【0100】
1 情報通信装置
10 通信部
11 送信器
12 受信器
13 送信タイミング検出部
14 受信タイミング検出部
20 クロック
30 時計
50 記憶部
60 外部インターフェイス
70 制御部
71 主制御部
72 送受信データI/F
73 通信制御部
74 スケジューラ
75 時刻記録部
76 間隔時間演算部
77 差分演算部
78 平均値演算部
79 補正値演算部
80 補正値記録部
81 同期制御部
100 情報通信システム