(57)【要約】      （修正有）【課題】ＩＥＥＥ１５８８規格のＰＴＰ（Ｐｒｅｃｉｓｉｏｎ  Ｔｉｍｅ  Ｐｒｏｔｏｃｏｌ）において、ハードウェアを追加することなく、グランドマスタークロックの時刻異常をソフトウェア的な検出を図る。【解決手段】スレーブ装置２ａ，２ｂが時刻同期時における１秒間の調整量とクロック精度とをグランドマスタークロック「ＧＭ」１に配信する。「ＧＭ」１は、調整量のクロック精度に対する変位（％）を算出する。ただし、クロック精度が事前設定の閾値を越えている場合、変位は算出されない。そして、変位がスレーブ装置２ａ，２ｂから算出できた場合、各スレーブ装置２ａ，２ｂの変位がすべて「＋１００％以上」または、すべて「−１００％以下」であれば、「ＧＭ」１の内部時計４ａをクロック異常と判定する。【選択図】図１
2018156513.tif 000002
【特許請求の範囲】
【請求項１】
マスター側のグランドマスタークロックにスレーブ側のクロックを時刻同期させるシステムにおいて、前記グランドマスタークロックの異常を検出する方法であって、
前記スレーブ側において、前記時刻同期における調整量と、自身のクロック精度とを前記マスター側に配信する配信ステップと、
前記マスター側において、前記配信ステップの配信に基づき前記調整量の前記クロック精度に対する変位情報を算出する変位算出ステップと、
前記マスター側において、前記変位算出ステップで算出された変位情報と事前設定の条件とを照合し、該照合の結果に応じてグランドマスタークロックの異常を検出する検出ステップと、
を有することを特徴とするクロック異常の検出方法。
【請求項２】
前記配信ステップは、１秒間の調整量を前記クロック精度と併せて通知する
ことを特徴とする請求項１記載のクロック異常の検出方法。
【請求項３】
前記変位算出ステップにおいて、
［変位（％）］＝（［１秒間の調整量］×１００）÷［クロック精度］
を用いて変位情報を算出することを特徴とする請求項２記載のクロック異常の検出方法。
【請求項４】
前記変位算出ステップにおいて、
前記クロック精度が設定基準よりも悪い場合には、前記変位情報を算出しないことを特徴とする請求項２または３記載のクロック異常の検出方法。
【請求項５】
前記検出ステップにおいて、
前記変位情報が複数の前記スレーブから算出された場合に
前記各スレーブの変位情報の絶対値が閾値以上であれば、グランドマスタークロックの時計をクロック異常と判定する
ことを特徴とする請求項２〜４のいずれか１項に記載のクロック異常の検出方法。
【請求項６】
前記検出ステップにおいて、
前記閾値は「絶対値＝１００％」と定められていることを特徴とする請求項５記載のクロック異常の検出方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ＩＥＥＥ１５８８規格の「Ｐｒｅｃｉｓｉｏｎ  Ｔｉｍｅ  Ｐｒｏｔｏｃｏｌ」（以下、「ＰＴＰ」とする。）において、グランドマスタークロック（Ｇｒａｎｄｍａｓｔｅｒ：以下「ＧＭ」とする。）のクロック異常を検出する方法に関する。
【背景技術】
【０００２】
「ＰＴＰ」は、ＬＡＮ上の装置を高精度で時刻同期させることができる。例えばＬＡＮ上の各装置の時刻（クロック）を１０マイクロ秒ＲＭＳ以下の精度で同期させることが可能である。
【０００３】
この「ＰＴＰ」の時刻同期は、ロボット間の時刻同期や継電器の時刻同期などに利用されている。特許文献１を一例に説明すれば、ターゲットを複数ロボットでトラッキングする際の時刻同期に「ＰＴＰ」が利用されている。具体的には、まず複数ロボット群の各マスター装置を「ＧＭ」に時刻同期させ、つぎに時刻同期後のマスター装置に各ロボット群のスレーブ装置を時刻同期させている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１４−２１１８５１
【発明の概要】
【発明が解決しようとする課題】
【０００５】
確かに「ＰＴＰ」によれば、「ＧＭ」からの時刻配信により各スレーブ装置の時計を高精度で時刻同期させることができる。
【０００６】
しかしながら、「ＰＴＰ」の「ＧＭ」は、各装置の時刻の基準となる時計なため、主に原子時計や高精度の水晶が使用されている。このような高精度の「ＧＭ」は高価であり、故障や回線異常を考慮して複数台を用意することは容易ではない。
【０００７】
その一方で、ロボットによるターゲットのトラッキングや継電器の事故解析などでは、現在時刻の正確な把握は重要ではなく、各装置のタイミングが同期していることが重要となる。その結果、高価な「ＧＭ」の実装が費用的に難しい場合、水晶を使用した安価な「ＧＭ」を採用したいという要望があった。
【０００８】
ところが、高価な「ＧＭ」は、内部クロックの異常を検出するための機構が用意されており、自ら時計の異常を検出して異常を通知し、あるいは「ＧＭ」の役割を辞退することができる。
【０００９】
この点につき安価な水晶を利用した「ＧＭ」のネットワークには、同様な機構は期待できない。すなわち、一般的なリアルタイムクロック（ＲＴＣ）は精度が低いため、極端に時刻が狂ったときしか異常を検出できず、ハードウェアの追加により同様な機構を用意しようとすれば、却って費用的な負担が増加するおそれがある。
【００１０】
本発明は、このような従来の問題を解決するためになされ、「ＰＴＰ」において、ハードウェアを追加することなく「ＧＭ」の時刻異常をソフトウェア的に検出することを解決課題としている。
【課題を解決するための手段】
【００１１】
本発明は、マスター側のグランドマスタークロックにスレーブ側のクロックを時刻同期させるシステムにおいて、前記グランドマスタークロックの異常を検出する方法に関する。
【００１２】
この方法は、
前記スレーブ側において、前記時刻同期における調整量と、自身のクロック精度とを前記マスター側に配信する配信ステップと、
前記マスター側において、前記配信ステップの配信に基づき前記調整量の前記クロック精度に対する変位情報を算出する変位算出ステップと、
前記マスター側において、前記変位算出ステップで算出された変位情報と事前設定の条件とを照合し、該照合の結果に応じてグランドマスタークロックの異常を検出する検出ステップと、
を有する。
【００１３】
前記通知ステップにおいては、１秒間の調整量を前記クロック精度と併せて通知することが好ましい。この場合の前記変位算出ステップは、［変位（％）］＝（［１秒間の調整量］×１００）÷［クロック精度］を用いて変位情報を算出する。
【００１４】
前記変位算出ステップにおいて、前記クロック精度が閾値よりも悪い場合は、前記変位情報を算出しなくともよい。また、前記検出ステップにおいて、前記変位情報が複数の前記スレーブから算出された場合に前記各スレーブの変位情報の絶対値が閾値以上であれば、グランドマスタークロックの時計をクロック異常と判定することができる。この閾値は、例えば「絶対値＝１００％」と定められている。
【発明の効果】
【００１５】
本発明によれば、「ＰＴＰ」において、ハードウェアを追加することなく「ＧＭ」の時刻異常をソフトウェア的に検出することができる。
【図面の簡単な説明】
【００１６】
【図１】本発明の実施形態に係るクロック異常の検出方法を実行するＩＥＥＥ１５８８規格の「ＰＴＰ」のシステム構成図。
【図２】同  １秒間の調整量の一例を示す説明図。
【発明を実施するための形態】
【００１７】
以下、本発明の実施形態に係るクロック異常の検出方法を説明する。このクロック異常の検出方法は、「ＰＴＰ」の時刻同期システムに適用される。
【００１８】
≪システム構成例≫
図１に基づき前記システムの構成例を説明する。図１中の１は、「ＧＭ」に選定されたマスター側の装置（以下、「ＧＭ」とする。）を示している。また、２ａ，２ｂは、「ＧＭ」１とネットワークで接続された２台のスレーブ側の装置（以下、スレーブ装置とする。）を示している。
【００１９】
前記システムによれば、矢印Ｐに示すように、「ＧＭ」１から各スレーブ装置２ａ，２ｂに高精度時刻が配信される。この高精度時刻に基づきスレーブ装置２ａ，２ｂで時刻同期が実行される。これにより「ＧＭ」１の内部時計４ａとスレーブ装置２ａ，２ｂの内部時計４ｂ，４ｃとが一致する。
【００２０】
ここで各内部時計４ａ〜４ｃは、水晶５ａ〜５ｃの周波数により時刻をカウントするため、水晶５ａ〜５ｃの精度に応じて進む速度が異なる。このとき「ＰＴＰ」の時刻同期によれば、スレーブ装置２ａ，２ｂの内部時計４ｂ，４ｃにおいて１秒間のカウント数を調整して進み方を調整する。例えば内部時計４ｂの水晶５ｂが、内部時計４ａの水晶５ａよりも「１０ｐｐｍ」（１秒間に１０μｓｅｃ）早く進むとする。
【００２１】
このとき時刻同期の際、従来と同じく１秒間のカウントを「１０μｓｅｃ」だけ遅く進ませることで、内部時計４ｂの進む速度を内部時計４ａに一致させる。また、位相同期回路（ＰＬＬ回路）の調整で周波数を変更させる場合もある。このように時刻調整は従来と同様に実行されるものの、前記システムは前記クロック異常の検出方法を実行する点で従来と相違する。
【００２２】
≪処理手順≫
以下、前記クロック異常の検出方法の処理手順（処理ステップ）を説明する。
【００２３】
（１）パケット配信
スレーブ装置２ａ，２ｂは、前記［１秒間の調整量］と、内部時計４ｂ，４ｃで使用されている水晶５ｂ，５ｃの［クロック精度］とを、矢印Ｑに示すように、ブロードキャストあるいはマルチキャストのパケットで周期的に配信する。
【００２４】
図２に基づき詳細を説明する。図２中のＸ１は、「ＧＭ」１の内部時計４ａの「１秒」を示し、Ｘ２はスレーブ装置２ａ，２ｂの内部時計４ｂ，４ｃの「１秒」を示している。ここでは水晶５ｂ，５ｃの周波数が水晶５ａよりも高いため、「Ｘ２＜Ｘ１」が成立し、内部時計４ｂ，４ｃは内部時計４ａより１秒が短い。
【００２５】
このとき矢印Ｐの時刻同期においては、「ＧＭ」１の内部時計４ａの１秒に合わせるため、スレーブ装置２ａ，２ｂの内部時計４ｂ，４ｃにおいて「１秒」とするカウント値を増大させる。図２中のＸ３は時刻同期で増大させた部分の時間を示し、「Ｘ２＋Ｘ３＝Ｘ１」が成立している。
【００２６】
このＸ３を［１秒間の調整量］として、［クロック精度］と併せて前記パケットで配信される。これにより「ＧＭ」１は、［１秒間の調整量］および［クロック精度］を受信でき、受信パケットをクロック異常の検出に用いることが可能となる。
【００２７】
なお、［１秒間の調整量］は、内部時計４ｂ，４ｃが内部時計４ａより進んでいた場合は、図２に示すように、カウント値の増大分を示すため、正の符号「＋」が付される一方、遅れていた場合はカウント値の減少分を示すため、負の符号「−」が付される。
【００２８】
（２）変位値の算出
スレーブ装置２ａ，２ｂからの前記パケットを受信した「ＧＭ」１は、自身の内部時計４ａに対するクロック異常の判定を実行する。この判定には前記パケットに含まれる［１秒間の調整量］および［クロック精度］に基づき算出された〔変位（％）〕が用いられる。
【００２９】
ただし、事前に定められた設定基準よりも〔クロック精度〕が悪い場合は前記判定には用いられず、〔変位（％）〕は算出されない。例えば「ＧＭ」１で使用されている水晶５ａのクロック精度が「１．０ｐｐｍ」であれば、設定基準としての［クロック精度］は「１０ｐｐｍ」以内が好ましい。
【００３０】
この場合に前記パケットに含まれる［クロック精度］が「１０ｐｐｍ」を越えていれば、〔変位（％）〕は算出されない。この判定対象外の場合を除き、次の式１を用いて［変位（％）］が算出される。
式１：［変位（％）］＝（［１秒間の調整量］×１００）÷［クロック精度］
算出例を以下に示す。
【００３１】
・算出例１
例えば［１秒間の調整量］が「＋１０００ｎｓｅｃ」、かつ［クロック精度］が「１０ｐｐｍ（１０μｓｅｃ）」であれば、次のように算出される。
【００３２】
［変位（％）］＝（［＋１０００ｎｓｅｃ］×１００）÷［１００００ｎｓｅｃ］＝＋１０％
ここで算出される変位の値は、スレーブ装置２ａ，２ｂにおいて水晶５ｂ，５ｃの精度の範囲内で調整されていることを意味している。
【００３３】
・算出例２
［クロック精度］に対する［１秒の調整量］の絶対値が大きくなれば、変位の絶対値は「１００％」以上となる場合がある。例えば算出例１の〔クロック精度］の場合に［１秒間の調整量］が「１００００ｎｓｅｃ」であれば、次のように算出される。
【００３４】
［変位（％）］＝（［１００００ｎｓｅｃ］×１００）÷［１００００ｎｓｅｃ］＝＋１００％
なお、算出された「変位（％）」の値は、スレーブ装置２，３毎に記録される。ここでは古い記録データを破棄するため、記録時刻が併せて記録され、所定時間が経過した記録データはタイムアウトとして破棄される。
【００３５】
（３）判定内容
算出された「変位（％）」の値と事前設定の条件とを照合し、該照合結果に応じて「ＧＭ」１の異常を検出する。この条件としては、「変位（％）」が算出されたスレーブ装置の台数や「変位（％）」の閾値が定められている。
【００３６】
この台数については１台のみの場合と、複数台の場合とに大別して定めておくことが好ましい。ここでは一例として、「変位（％）」の閾値として「絶対値＝１００％」と定められているものとする。
【００３７】
まず、「変位（％）」が算出されたスレーブ装置が１台のみの場合を説明する。図１のシステム構成例に基づき説明すれば、スレーブ装置２ａ，２ｂのいずれか一方の［クロック精度］が設定基準を越えている場合は判定には用いられない
例えばスレーブ装置２ａの〔クロック精度〕が設定基準を越えていれば、スレーブ装置２ｂについてのみ〔変位（％）〕が算出される。この場合には算出されたスレーブ装置２ｂの〔変位（％）〕の絶対値が閾値、即ち「１００％」を越えていれば、異常と判定する。ただし、「ＧＭ」１の水晶５ａが異常か否かは不明なため、保守点検などのシステムに応じた異常処理が実行される。
【００３８】
つぎに「変位（％）」が算出されたスレーブ装置が複数台の場合を説明する。図２のシステム構成例に基づき説明すれば、スレーブ装置２ａ，２ｂの〔クロック精度〕が共に設定基準以内であれば、それぞれ〔変位（％）〕が算出される。
【００３９】
この場合に各スレーブ装置２ａ，２ｂの〔変位（％）〕の絶対値が「１００％」以上であれば、内部時計４ａの水晶５ａは異常と判定する。例えば各スレーブ装置２ａ，２ｂの〔変位（％）〕が、すべて「＋１００以上」又はすべて「−１００以下」の場合が該当する。
【００４０】
この場合には内部時計４ａの水晶５ａは異常と判定され、マスター装置１は「ＧＭ（グランドマスタークロック）」を辞任する。その後は、システムの規格にしたがって次の「ＧＭ（グランドマスタークロック）」が選出される。
【００４１】
ただし、ＩＥＥＥ１５８８の「ＰＴＰ」による時刻同期の精度は、その伝送路の伝送時間の変動の影響を受ける。このとき伝送時間の最大変動幅分だけ誤差を含んでいる。
【００４２】
また、「ＰＴＰ」がサーボ制御などで時刻を収束する場合にもＰＩＤ制御の積分項などにより伝送時間の変動以上の変化を与えることがある。そうすると前記クロック異常の検出方法は、伝送時間の変動がない場合は正確動作する一方、伝送時間に大きな変動がある場合には異常判定の基準を落とす必要が生じ得る。そこで、前記クロック異常の検出方法の運用にあたっては、各伝送路に応じて閾値を調整する必要がある。
【００４３】
≪作用効果≫
以上のように前記クロック異常の検出方法によれば、ハードウェアを追加することなく「ＧＭ」の時刻異常をソフトウェア的に検出することができる。
【００４４】
すなわち、高価な「ＧＭ」の用意が困難であれば、安価な水晶を内部時計に使用した「ＧＭ」が用いられる。この「ＧＭ」の水晶は、スレーブ装置で使用している水晶と精度が大きく異なるものではない。
【００４５】
この「ＧＭ」やスレーブ装置に使用される水晶の周波数は、温度や電圧などの環境により変化し、劣悪な環境ほど周波数の変位が大きい。例えば水晶の精度が「１０ｐｐｍ」のとき１秒間に最大「±１０μｓｅｃ」の誤差が発生するおそれがあるものの、これは最悪値であって実際はより小さい変位で動作する。
【００４６】
このように水晶が停止するほどの異常であれば別途ハードウェアにて確認することで異常検出ができるものの、この手段は周波数が微妙に狂っているときには検出が難しい。仮に検出できない場合、他の装置の内部時計までも狂わせてしまいネットワークシステムに重大な影響を与えるおそれがある。
【００４７】
この点につき前記クロック異常の検出方法によれば、内部時計の水晶の精度を向上させることは不可能なものの、特別な手段を設けることなく、スレーブ装置の内部時計に使用された水晶と比較することで、「ＧＭ」の内部時計に使用された水晶の故障を検出することが可能となる。これにより以下の効果が得られる。
【００４８】
（１）低い精度の安価な水晶を内部時計に使用した「ＧＭ」についても、その周波数の異常を検出することができる。したがって、新たに水晶を追加するなどの改造を施すことなく、「ＧＭ」の異常をソフトウェアのみで異常検出することができる。さらに異常な「ＧＭ」を辞退させることでネットワークシステムを健全に保つことができる。
【００４９】
（２）スレーブ装置の水晶と比較して「ＧＭ」の水晶の異常を検出するため、スレーブ装置も含めて内部時計の状態を把握することができる。このとき〔クロック精度〕の閾値以内であれば、各スレーブ装置の内部時計で使用している水晶の精度が異なっていても、異常判定に用いることができる。
【００５０】
（３）スレーブ装置からの［１秒間の調整量］および［クロック精度］の配信の度に「変位（％）」が算出され、古い記録データは破棄される。すなわち、最新の〔変位（％）〕に基づき「ＧＭ」の異常を判定することができる。
【符号の説明】
【００５１】
１…マスター側の装置（マスター装置）
２ａ，２ｂ…スレーブ側の装置（スレーブ装置）
４ａ〜４ｃ…内部時計
５ａ〜５ｃ…水晶
【図１】
2018156513.tif 000003
【図２】
2018156513.tif 000004