(57)【特許請求の範囲】
【請求項１】
上位装置にネットワークを介して接続された複数の下位装置の時刻補正を行うシステムにおいて、
前記上位装置内に、前記下位装置の時計の誤差許容範囲値と、該下位装置に対して時刻補正を行う周期の最大値及び最小値とを蓄積する記憶手段を設け、
前記下位装置毎に、時刻補正実行時間と、時刻補正実行間隔とを蓄積する記憶手段を設け、
さらに、前記誤差許容範囲値と、前記周期の最大値及び最小値を設定する手段と、
前記下位装置毎に、前記時刻補正実行時間の値と前記時刻補正実行間隔の値を設定する手段と、
時刻補正を実行する度に、前記下位装置の各々の時計の現在の誤差時間値を取得する手段と、
前記下位装置毎に、前記誤差許容範囲値の範囲内に収めることのできる時刻補正の次回実行間隔値を算出する手段と、
該算出した次回実行間隔値から次回時刻補正時間を算出する手段と、
該算出した次回時刻補正時間に基づいて動的に次回の時刻補正の実行スケジュールを生成して時刻補正動作を継続する手段とを備えることを特徴とする時刻補正システム。
【請求項２】
前記算出された次回実行間隔が前記周期の最小値未満の場合には、次回実行間隔を該周期の最小値とするとともに、アラームを送出する手段を備えることを特徴とする請求項１に記載の時刻補正システム。
【請求項３】
前記誤差許容範囲値と、前記周期の最大値及び最小値を蓄積するメモリを前記下位装置毎に設け、該下位装置毎に、前記誤差許容範囲値と、前記周期の最大値及び最小値を設定する手段と、該下位装置毎の前記誤差許容範囲値と、前記周期の最大値及び最小値を使用して、該下位装置毎の誤差許容範囲値の範囲内に収めることのできる時刻補正の次回実行間隔値を算出する手段を備えることを特徴とする請求項１又は２に記載の時刻補正システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、時刻補正システムに関し、特に、ネットワークに接続されるセンタ装置（上位装置）によって複数の下位装置の時計機能の時刻を補正するシステムに関する。
【背景技術】
【０００２】
ネットワークに接続される各種装置で、時計機能を有する装置は、独自の時計回路を備え、時計情報の更新は、この独自回路を使って行うのが一般的である。この場合、時刻の更新は、各装置内で行うため、各装置の時計回路の特性等により、装置毎に時計情報の誤差が生じるという問題がある。
【０００３】
この問題を解決するため、ネットワーク内に基準時計情報を備えた時刻管理装置を設置し、時計機能を有する各装置が定期的に時刻管理装置を参照して自装置の時計情報を更新することにより、ネットワーク内の各装置の時計情報の誤差を解消する手段が知られている。例えば、インターネットで標準的に利用されている時刻情報プロトコルＮＴＰ（ＲＦＣ−１３０５）がその一例である。
【０００４】
また、特許文献１に記載の送受信装置は、特定の装置（マルチリンクセンタ）が、自走する時計を具備しない複数の装置に対して一括して時計情報を供給し、自走する時計を持たない装置でも時計表示を行なうことができる。
【０００５】
さらに、特許文献２に記載の時刻信号供給システムは、スレーブ時刻装置に対し、予め定めたスケジュールに従って、スレーブ時刻装置の配下の装置に対して一斉に時刻情報を送信する。
【０００６】
【特許文献１】特開平４−３７３９１号公報
【特許文献２】特開２００１−１３６３１１号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
しかし、上記従来の技術において、時刻の更新を各装置内で行い、各装置の時計回路の特性等により、装置毎に時計情報の誤差が生じる状態を放置すると、各装置間の誤差が増幅するため、各装置間で機能の連携がある場合に、機能間に動作不良が生じる可能性がある。また、装置単独でも、例えば、データ通信量を時間で測定することが一般的な課金装置等、正確な時間情報が必要な装置では、時間に誤差が生じることで、その装置の性能を十分に発揮できなくなる可能性がある。
【０００８】
一方、インターネットにおける一般的な手段であるＮＴＰによる時刻合わせは、定期的な周期、またはスケジュールに基づいて時刻合わせを実行するため、各装置の時計の精度に関わらず、一定のネットワーク負荷がかかることとなる。
【０００９】
また、特許文献１に記載の送受信装置は、特定の装置（マルチリンクセンタ）が、自走する時計を具備しない複数の装置に対して、一括して時計情報を供給するため、自走する時計を持たない装置でも時計表示を行うことができるが、自走する時計を持たない装置上で正確な時計表示を行うため、数十ミリ秒から数百ミリ秒（同文献の実施例では、１００ミリ秒毎）での情報供給が必要である。このため、有限の帯域中に、音声、画像、テキスト等、多種多様なデータが共存するネットワーク上にこの技術を適用した場合、時刻情報の供給のために多くのネットワーク帯域を必要とし、ネットワーク上の他のデータトラフィックを阻害するおそれがあるという問題があった。そして、これにより、例えば音声データが伝送されている場合には、音声の遅延や、音切れなどが発生するおそれがあった。
【００１０】
また、特許文献２に記載の時刻信号供給システムは、予め誤差許容範囲を設定して異常装置を特定するが、スレーブ時刻装置の配下にある各装置の時計精度にばらつきがある場合でも、一定の周期によって一斉に時計合わせが実行されるため、時計精度の高い装置に合わせた周期で時計合わせを実行した場合、誤差許容範囲を超える装置が発生する可能性がある。逆に、時計精度が低い装置に合わせた周期で時刻合わせを実行すると、時刻合わせの周期が短くなり、ネットワークに多大の負荷がかかる。このように、各装置の時計精度に適した時刻合わせの周期を設定することが難しく、ネットワークに負荷をかけずに、誤差許容範囲内に各装置の時刻を維持することができないという問題がある。
【００１１】
そこで、本発明は、上記従来の技術における問題点に鑑みてなされたものであって、予め定められた時計の誤差時間値（誤差許容範囲値）を超える前に時刻を補正することができるとともに、ネットワークの負荷を軽減することもできる時刻補正システムを提供することを目的とする。
【課題を解決するための手段】
【００１２】
上記目的を達成するため、本発明は、上位装置にネットワークを介して接続された複数の下位装置の時刻補正を行うシステムにおいて、前記上位装置内に、前記下位装置の時計の誤差許容範囲値と、該下位装置に対して時刻補正を行う周期の最大値及び最小値とを蓄積する記憶手段を設け、前記下位装置毎に、時刻補正実行時間と、時刻補正実行間隔とを蓄積する記憶手段を設け、さらに、前記誤差許容範囲値と、前記周期の最大値及び最小値を設定する手段と、前記下位装置毎に、前記時刻補正実行時間の値と前記時刻補正実行間隔の値を設定する手段と、時刻補正を実行する度に、前記下位装置の各々の時計の現在の誤差時間値を取得する手段と、前記下位装置毎に、前記誤差許容範囲値の範囲内に収めることのできる時刻補正の次回実行間隔値を算出する手段と、該算出した次回実行間隔値から次回時刻補正時間を算出する手段と、該算出した次回時刻補正時間に基づいて動的に次回の時刻補正の実行スケジュールを生成して時刻補正動作を継続する手段とを備えることを特徴とする。                                                                             
【００１３】
そして、本発明によれば、上記装置がネットワークに接続されている各下位装置の時刻を補正する際に、その下位装置の誤差時間値を収集し、収集した誤差時間値を基に、誤差許容範囲値内に収めることのできる時刻補正の次回実行間隔を算出し、算出した結果に基づいて動的に次回の時刻補正の実行スケジュールを生成して時刻補正動作を継続するため
、下位装置の誤差時間値を誤差許容範囲値内に収めながら、時刻補正を行うために必要なネットワーク負荷を自動的に最適値に維持することができる。
【００１４】
ここで、次回時刻補正実行間隔Ｔは、例えば、予め設定された誤差許容範囲値Ｔ１と現在の誤差時間値Ｔ２と現在の実行間隔値Ｔ３を基に、Ｔ＝（Ｔ１÷Ｔ２）×Ｔ３として算出する。尚、下位装置の現在の誤差時間値が０の場合には、Ｔ＝最大実行間隔時間値とする。また、１回目の下位装置の時刻補正の時に現在の実行間隔値が存在しないが、その場合は、Ｔ＝最小実行間隔時間値とする。
【００１５】
この算出手段で次回時刻補正実行間隔を求めることで、下位装置の誤差時間値を誤差許容範囲値の範囲内に収めながら時刻補正を行うことができ、かつ時刻補正を行うために必要なネットワーク負荷を自動的に最適化することができる。求められた次回時刻補正実行間隔を下位装置の実行時間値に加算し、動的に次回の時刻補正の実行スケジュールを生成して時刻補正の動作を継続する。
【００１６】
前記時刻補正システムにおいて、前記算出された次回実行間隔が前記周期の最小値未満の場合には、次回実行間隔を該周期の最小値とするとともに、アラームを送出する手段を備えることができる。
【００１７】
次回実行間隔が、設定されている周期の最小値未満であった場合には、システムで想定している時計の精度よりその下位装置の時計の精度が低くなっていることから、装置の時計回路が故障している可能性があると判断し、外部の管理端末等にアラームを通知することにより、時刻を補正する下位装置の時計回路の障害をいち早く管理者等へ連絡し、障害の対応を早期に行うことができる。
【００１８】
また、前記時刻補正システムにおいて、前記誤差許容範囲値と、前記周期の最大値及び最小値を蓄積するメモリを前記下位装置毎に設け、該下位装置毎に、前記誤差許容範囲値と、前記周期の最大値及び最小値を設定する手段と、該下位装置毎の前記誤差許容範囲値と、前記周期の最大値及び最小値を使用して、該下位装置毎の誤差許容範囲値の範囲内に収めることのできる時刻補正の次回実行間隔値を算出する手段を備えることができる。これによって、下位装置毎に必要な時計精度が異なる場合でも柔軟にシステムを運用することができるとともに、下位装置毎に保守担当者が異なる場合等でも、下位装置毎に異なる通知先へアラームを通知することも可能となる。
【発明の効果】
【００１９】
以上のように、本発明によれば、予め定められた時計の誤差許容範囲値を超える前に時刻を補正することができるとともに、ネットワークの負荷を軽減することもできる時刻補正システムを提供することができる。
【発明を実施するための最良の形態】
【００２０】
次に、本発明の実施の形態について図面を参照しながら詳細に説明する。
【００２１】
図１は、本発明にかかる時刻補正システムの一実施の形態の構成を示し、このシステムは、ネットワーク２００に接続されるセンタ装置（上位装置）１００によって複数の下位装置４００、４０１の時刻補正を行うものであって、ネットワーク２００に接続されているセンタ装置１００と、端末３００と、下位装置４００、４０１と、管理者端末６００とで構成される。
【００２２】
センタ装置１００は、正確な世界標準時を備える時計回路１０５と、周期的にイベント発生を通知する起動タイマ１０３と、時刻の補正を実行するにあたって必要なスケジュール情報と装置情報とを格納するメモリ１０１と、スケジュールを制御、監視するスケジュール管理部１０４と、既知の手段で各装置に時刻を設定する時刻補正実行部１０８と、一時的にデータを保存するワークメモリのメモリ１０２及びメモリ１１０と、端末３００から受け取った設定データをメモリ１０１に格納する設定データ受信処理部１０６と、管理者端末６００に対してアラームを通知するアラーム通知処理部１０７とで構成される。
【００２３】
また、端末３００は、ネットワーク２００を介してセンタ装置１００の設定データ受信処理部１０６に対し、下位装置４００、４０１のスケジュール情報と装置情報の設定要求を行う手段を備える。
【００２４】
下位装置４００、４０１は、装置内部に個別に時計回路を有し、外部からネットワーク２００経由で時計情報を設定する手段を備える。また、管理者端末６００は、外部からのアラーム情報を受け取る手段を備える。
【００２５】
次に、図１に示した時刻補正システムの動作について、図１〜図４を参照しながら説明する。尚、特に図番号の記載がない構成要素は、図１の要素を示す。
【００２６】
まず、管理者は、予め端末３００を用いて下位装置４００、４０１の時計の誤差時間値（以降、「誤差許容範囲値」という）と、下位装置４００、４０１に対して時刻補正を行う最大の周期（以降、「最大実行間隔時間値」という）と、最小の周期（以降、「最小実行間隔時間値」という）と、アラームを通知するための情報と、下位装置４００、４０１の各々の時刻補正実行日時と、下位装置４００、４０１各々の装置情報を入力する。
【００２７】
次に、端末３００は、入力した設定データをネットワーク２００を介して、センタ装置１００の設定データ受信処理部１０６へ送信する。設定データ受信処理部１０６は、受信した設定データを、図２に示すような構成を有するメモリ１０１に保存する。
【００２８】
次に、起動タイマ１０３が定期的にイベントを発生させると、そのイベントをスケジュール管理部１０４が検出し、時計回路１０５から現在時刻を取得するとともに、取得した時刻情報を基に、メモリ１０１の時刻補正実行日時を参照して時刻補正を実行するスケジュールの有無を検索し、時刻補正を実行する装置が発見された場合（本例では、下位装置４００）には、時刻補正を実行する装置の装置識別インデックスをメモリ１０２の装置識別インデックスに保存し、時刻補正実行部１０８を呼び出す。
【００２９】
時刻補正実行部１０８は、外部からネットワーク２００経由で時計情報を設定する手段を用い、下位装置４００が保持する時計回路に正確な時刻を設定する処理を行うとともに、後述の誤差情報取得手段等を用い、下位装置４００の保持する時計回路の誤差時間値を取得した後、誤差時間値を、図３に示すような構成を有するメモリ１０２に保存し、スケジュール管理部１０４へ処理完了を通知する。
【００３０】
スケジュール管理部１０４は、時計補正実行部１０８からの処理完了通知を受けると、下位装置４００の実行間隔値の計算及び実行時間値の計算を行う。以下、この計算方法の流れについて図５及び図６を中心に参照しながら説明する。
【００３１】
まず、メモリ１０２の装置識別インデックスを基に、ステップＳ１において、メモリ１０１の実行間隔値（下位装置４００）を参照し、値が設定されていない場合（１回目の時刻補正時）は、ステップＳ５において、メモリ１０２の次回実行間隔にメモリ１０１の最小実行間隔時間値を設定して処理を終了する。一方、メモリ１０１の実行間隔値（下位装置４００）が設定されている場合（２回目以降の時刻補正時）には、ステップＳ４において、以下の計算式Ａで求めた値（ｔ２）をメモリ１０２の次回実行間隔に設定する。
【００３２】
〔計算式Ａ〕
ステップＳ２において、メモリ１０２の誤差時間値が０の場合には、ステップＳ６に移行し、ｔ２＝メモリ１０１の最大実行間隔時間値とする。
ステップＳ２において、メモリ１０２の誤差時間値が０以外の場合には、ステップＳ３に移行し、
ｔ２＝（メモリ１０１の誤差許容範囲値（ミリ秒）÷メモリ１０２の誤差時間値（ミリ秒））×メモリ１０１の実行間隔値（下位装置４００）とする。
【００３３】
次に、スケジュール管理部１０４は、上述によりメモリ１０２に設定された次回実行間隔を参照し、メモリ１０２の次回実行間隔の値がメモリ１０１の最小実行間隔時間値とメモリ１０１の最大実行間隔時間値の範囲内（ステップＳ７で「同じ又は大きい」、ステップＳ８で「同じ又は小さい」の場合）であれば、ステップＳ９において、メモリ１０２の次回実行間隔の値をメモリ１０１の実行間隔（下位装置４００）に書き込み、ステップＳ１０において、メモリ１０１の時刻補正実行日時（下位装置４００）にメモリ１０１の実行間隔（下位装置４００）を加算する。
【００３４】
一方、メモリ１０２の次回実行間隔の値がメモリ１０１の最大実行間隔より大きい（ステップＳ７で「同じ又は大きい」、ステップＳ８で「大きい」）場合には、ステップＳ１３において、メモリ１０１の実行間隔（下位装置４００）にメモリ１０１の最大実行間隔を書き込み、ステップＳ１０において、メモリ１０１の時刻補正実行日時（下位装置４００）にメモリ１０１の実行間隔（下位装置４００）を加算する。
【００３５】
また、メモリ１０２の次回実行間隔の値がメモリ１０１の最小実行間隔未満（ステップＳ７で「小さい」）の場合には、メモリ１０１の実行間隔（下位装置４００）にメモリ１０１の最小実行間隔を書き込み、ステップＳ１０において、メモリ１０１の時刻補正実行日時（下位装置４００）にメモリ１０１の実行間隔（下位装置４００）を加算する。
【００３６】
このように、時刻補正実行のタイミングで、実行間隔を動的に修正することで、ネットワークの負荷を軽減するとともに、下位装置４００の保持する時計に生じる誤差が許容範囲外になる前に時刻補正を行うことができる。尚、上記メモリ１０２の次回実行間隔が最小実行間隔未満の場合には、下位装置４００が保持する時計回路に障害が発生した可能性があるため、スケジュール管理部１０４は、アラーム通知処理部１０７にメモリ１０１の装置情報を送出する。アラーム通知処理部１０７は、図６のステップＳ１２において、引き渡された装置情報を基に、ネットワーク２００を介して管理者端末６００にアラームを通知する。これにより、下位装置４００が保持する時計回路の障害を迅速に管理者に伝え、早期に障害への対応を行うことができる。
【００３７】
尚、上述の動作では、メモリ１０１に蓄積する誤差許容範囲値、最小実行間隔時間値、最大実行間隔時間値、及びアラーム連絡情報を、システム全体で１種類、すなわち、これらの情報を複数の下位装置４００、４０１で共通して使用する場合について説明したが、メモリ１０１に下位装置４００、４０１の装置識別インデックス毎の蓄積領域を用意し、下位装置４００、４０１毎に誤差許容範囲値、最小実行間隔時間値、最大実行間隔時間値、及びアラーム連絡情報を蓄積して動作させることもできる。
【００３８】
この場合、次回実行間隔を算出する際に使用する誤差許容範囲値、最小実行間隔時間値、最大実行間隔時間値の検出の際、及び次回実行間隔が最小実行間隔時間値未満であった場合のアラーム連絡情報の検出の際に、下位装置４００、４０１の装置識別インデックスによりメモリ１０１から必要な情報を抽出し、下位装置４００、４０１毎に次回実行間隔を算出する。これにより、下位装置４００、４０１毎に誤差許容範囲値等の値を設定することができ、下位装置４００、４０１毎に必要な時計精度が異なる場合でも、柔軟にシステムを運用することができる。また、下位装置４００、４０１毎に保守担当者が異なる場合でも、異なる通知先へアラームを通知することが可能である。
【００３９】
次に、スケジュール管理部１０４が、下位装置４００の誤差を取得した後の実行間隔の設定の具体例について説明する。
【００４０】
メモリ１０１の誤差許容範囲値が「２０００ミリ秒」、最小実行間隔時間値が「７２０分」、最大実行間隔時間値が「４３２００分」、アラーム連絡情報が「ａｂｃ＠ｄｅｆ．ｃｏ．ｊｐ」、実行間隔値（下位装置４００）が「１００８０分」であるものとする。
【００４１】
〔例１〕メモリ１０２の誤差時間値が「１０００ミリ秒」であり、メモリ１０１の誤差許容範囲値より小さい場合について説明する。
【００４２】
スケジュール管理部１０４は、まず、メモリ１０１の実行間隔値（下位装置４００）を参照し、値が設定されているので、上記計算式Ａを用いて、次回実行間隔を求め、メモリ１０２の次回実行間隔に設定する。メモリ１０２の誤差時間値が「１０００ミリ秒」であるため、
ｔ２＝（２０００÷１０００）×１００８０
ｔ２＝２０１６０（分）
メモリ１０２の次回実行間隔＝２０１６０分
メモリ１０２の次回実行間隔は、メモリ１０１の最小実行間隔時間値とメモリ１０１の最大実行間隔時間値の範囲内であるので、メモリ１０１の実行間隔値（下位装置４００）＝２０１６０分になる。
【００４３】
〔例２〕メモリ１０２の誤差情報が「４００００ミリ秒」であり、メモリ１０１の誤差許容範囲値より大きい場合の例について説明する。
【００４４】
スケジュール管理部１０４は、まず、メモリ１０１の実行間隔値（下位装置４００）を参照し、値が設定されているので、上記計算式Ａを用いて、次回実行間隔を求めメモリ１０２の次回実行間隔に設定する。メモリ１０２の誤差時間値が「４００００ミリ秒」であるため、
ｔ２＝（２０００÷４００００）×１００８０
ｔ２＝５０４（分）
メモリ１０２の次回実行間隔＝５０４分
メモリ１０２の次回実行間隔は、メモリ１０１の最小実行間隔時間値未満であるので、メモリ１０１の実行間隔値（下位装置４００）＝７２０分（メモリ１０１の最小実行間隔時間値）になる。
また、この場合は、管理者に対してアラーム通知を行う。
【００４５】
次に、本発明にかかる時刻補正システムにおける誤差情報取得方法の一例について説明する。
【００４６】
時刻補正実行部１０８がネットワークを介して下位装置４００に要求を送信するとともに、時計回路１０５から現在時刻を取得し、図４に示すような構成を有するメモリ１１０のｔ１に書き込む。下位装置４００は、その要求を受信した時刻（ｔ２）と、時刻補正実行部１０８に応答する時刻（ｔ３）を応答データとし、時刻補正実行部１０８へ送信する。時刻補正実行部１０８は、応答データを受信した時刻を時計回路１０５から取得し、メモリ１１０のｔ４に書き込む。
【００４７】
時刻補正実行部１０８は、メモリ１０２の装置識別インデックスから、メモリ１０１の装置情報を読み出し、応答データｔ２、ｔ３を世界標準時に変換し、変換データのｔ２をメモリ１１０のｔ２に、変換データｔ３をメモリ１１０のｔ３へ書き込む。
【００４８】
メモリ１１０のデータから、伝送所要時間は（（ｔ４−ｔ１）−（ｔ２−ｔ３））÷２で求められ、センタ装置１００と下位装置４００の誤差は（（ｔ２−ｔ１）＋（ｔ３−ｔ４））÷２で求められる。下位装置４００への時刻設定は、時刻補正実行部１０８が時計回路１０５から読み出した時刻に上記で求めた伝送所要時間を加算し、メモリ１０２の装置識別インデックスから、メモリ１０１の装置情報を読み出し、下位装置４００のロケールの時刻に変換し、ネットワーク２００を介して下位装置４００へ送信することで行うことができる。
【００４９】
尚、上記構成及び動作は、誤差情報取得方法の一例であって、時刻補正実行部１０８が、下位装置４００の保持する時計回路の誤差情報を取得できれば、その手段は問わない。
【図面の簡単な説明】
【００５０】
【図１】本発明にかかる時刻補正システムの一実施の形態の構成を示すブロック図である。
【図２】図１のセンタ装置のメモリ１０１の構成例を示す図である。
【図３】図１のセンタ装置のメモリ１０２の構成例を示す図である。
【図４】図１のセンタ装置のメモリ１１０の構成例を示す図である。
【図５】本発明の時刻補正システムにおいて、下位装置の実行間隔値の計算及び実行時間値の計算方法の流れを示すフローチャートである。
【図６】本発明の時刻補正システムにおいて、下位装置の実行間隔値の計算及び実行時間値の計算方法の流れを示すフローチャートである。
【符号の説明】
【００５１】
１００  センタ装置
１０１、１０２、１１０  メモリ
１０３  起動タイマ
１０４  スケジュール管理部
１０５  時計回路
１０６  設定データ受信処理部
１０７  アラーム通知処理部
１０８  時刻補正実行部
２００  ネットワーク
３００  端末
４００、４０１  下位装置
６００  管理者端末
【図１】
0004662842.tif 000002
【図２】
0004662842.tif 000003
【図３】
0004662842.tif 000004
【図４】
0004662842.tif 000005
【図５】
0004662842.tif 000006
【図６】
0004662842.tif 000007