(57)【要約】【課題】分散方式の時刻合わせ方式に関し、各計算機での時刻合わせを中央値を選択することにより高精度に行う。【解決手段】各計算機からの時刻情報は伝送路１６から時刻情報受信部１で受信され、中央値選択部２で各データの中の中央値が選択され、システム時刻情報設定部３で自己のシステム時刻として設定され置き換えられる。時刻情報更新部４では一定周期で時刻情報が更新され、時刻情報送信部７から伝送路１６へ送信される。中央値を選択するので、多数決での選定、設定値との比較、等のロジックがなく、簡素化された方式により高精度の時刻合わせができる。【選択図】　　　　　　図１
2004078874.tif 000002
【特許請求の範囲】
【請求項１】
分散配置された複数の計算機を情報伝送路を介して互に接続してなる分散システムにおいて、前記各計算機毎に時刻情報を生成すると共に生成した時刻情報を他の計算機へ所定の周期で前記情報伝送路を介して送出し、システムの基準となるシステム時刻情報をすべての計算機の時刻情報の中から中央値を選択することにより設定し、同設定した中央値の時刻情報を自己の計算機のシステム時刻として置き換え、同置き換えた時刻情報を基に新たな時刻情報を生成することを特徴とする分散システムの時刻合わせ方法。
【請求項２】
前記中央値は、前記時刻情報の個数が奇数個（２ｎ＋１）の時にはｎ＋１番目の時刻情報、または、ｎ＋１番目を中心とした前後の任意の数の時刻情報の平均値を中央値とし、個数が偶数個（２ｎ）の時にはｎ番目とｎ＋１番目の時刻の平均値を中央値とすることを特徴とする請求項１記載の分散システムの時刻合わせ方法。
【請求項３】
分散配置された複数の計算機を情報伝送路を介して互に接続してなる分散システムの時刻合わせ装置において、前記各計算機には、他の計算機からの時刻情報を受信する時刻情報受信部と、同時刻情報受信部からの時刻情報を受け同時刻情報の中から中央値を演算して算出する中央値選択部と、同中央値選択部からの算出値を受けシステム時刻情報として出力するシステム時刻情報設定部と、同システム時刻情報設定部からのシステム時刻情報を受け一定周期毎に時刻情報を更新して出力する時刻情報更新部と、同時刻情報更新部からの更新時刻を受け自己の新たな時刻情報として前記情報伝送路へ出力する時刻情報送信部とを備えたことを特徴とする分散システムの時刻合わせ装置。
【請求項４】
前記中央値選択部は、前記時刻情報の個数が奇数個（２ｎ＋１）の時にはｎ＋１番目の時刻情報、または、ｎ＋１番目を中心とした前後の任意の数の時刻情報の平均値を中央値とし、個数が偶数個（２ｎ）の時にはｎ番目とｎ＋１番目の時刻の平均値を中央値として演算し出力することを特徴とする請求項３記載の分散システムの時刻合わせ装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は分散システムの時刻合わせ方法及び装置に関し、複数台の計算機が分散配置された分散システムにおいて、各計算機で認識するシステム時刻情報を高精度に一致させるに好適な方式としたものである。
【０００２】
【従来の技術】
近年、コンピュータの通信回線の著しい進歩に伴い、複数台の計算機を通信回線で結んだ分散型のシステムが実現している。このような分散型システムにおいては、分散配置された計算機のうち、単一の計算機に標準時刻が設定され、この時刻に従ってシステム時刻が設定され、この標準時刻が通信路を介して各計算機へ伝送されるようになっている。このため、時刻を受信する各計算機側では、時刻を補正することができず、時刻に異常が発生しても、その異常を検出して補正することができないという不具合があった。このような不具合に対し、絶対時刻を基準とする処理方式が提案されており、この処理方式では中央計算機から分散配置された他の計算機に対し、制御開始時刻からの相対時刻を連絡することにより、絶対時刻に対する処理同期をとる方式であるが、この方式においても、時刻が集中管理されており、分散配置されている各計算機独自で時刻情報を処理することができないものである。
【０００３】
近年、上記のような分散型システムにおいて、例えば、特許公報、第２７２４８８３号に示されるような、各計算機において個別に時刻を補正してシステム時刻を一致させるシステムが提案されており、まず、この例について概要を説明する。図６は上記の分散型システムの時刻一致化方式の構成図であり、計算機１０，１２，１４は伝送路１６に沿って分散配置されており、各計算機間で情報の送受が行なわれる。各計算機１０，１２，１４には時刻データ受信部１８、多数決判定部２０、システム時刻選択部２２、時刻更新部２４、時刻生成部２６、時刻チェック補正部２８、時刻データ送信部３０が設けられている。時刻データ受信部１８は伝送路１６から時刻データを入力し、入力した時刻データを多数決判定部２０へ出力する。多数決判定部２０は入力した時刻データのうちすくなくとも２台の計算機の時刻データが一致したか否かを判定し、その判定結果をシステム時刻選択部２２へ出力する。システム時刻選択部２２は多数決判定部２０からの判定結果を基にシステムの基準時刻となるシステム時刻を選択する。即ち、３台の計算機の時刻データのうち２台の計算機の時刻データが一致したときには、この時刻データに従った時刻をシステム時刻として選択するようになっている。
【０００４】
時刻更新部２４はカウンタの出力を基に、一定周期、例えば３秒周期で時刻更新指令を出力する。時刻生成部２６はカウンタの出力を基に時刻を生成し、生成した時刻のデータを時刻チェック補正部２８へ出力する。時刻チェック補正部２８は時刻生成部２６からの時刻データとシステム時刻選択部２２からのシステム時刻データとを入力し、生成した時刻がシステム時刻と一致しているか否かを判定し、かつその偏差が設定値を越えたときには生成した時刻をシステム時刻に補正する。そして時刻チェック補正部２８からは、生成された時刻または修正された時刻に関するデータが出力され、このデータが時刻データ送信部３０から伝送路１６へ出力される。
【０００５】
上記に説明した分散型システムの構成をまとめると、複数台の計算機１０，１２，１４を伝送路１６で互に接続してなる分散システムにおいて、各計算機ごとに時刻生成部２６で時刻を生成すると共に生成した時刻に関する情報を伝送路１６を介して他の計算機へ順次伝送し、システムの基準時刻となるシステム時刻を伝送路１６から受信したすべての計算機の時刻情報の中から多数決判定部２０で多数決で選択し、各計算機の時刻チェック補正部２８においてシステム時刻と生成した時刻とを比較して、その偏差が設定値を越えたときには、生成した時刻をシステム時刻に修正し、修正した時刻を基に新たな時刻を生成する分散システムの時刻一致化方式を構成している。このような構成により各計算機において、自律的に時刻情報を検出し、補正できるようにしている。
【０００６】
【特許文献１】
特許第２７２４８８３号　明細書
【０００７】
【発明が解決しようとする課題】
前述の従来の分散型システムの時刻一致方式では、各計算機において時刻を補正してシステム時刻に合わせることが可能となるが、システム時刻は各計算機のデータの中から多数決で選択しており、例えば、時刻がすべて異なる場合には時刻補正が次周期へ持ち越される場合があり、又、時刻情報が２個の時には、両者が互に異なる値であると多数決選択が不可能となる。そのため、時刻データ送受信およびシステム時刻選択周期は時刻更新周期と同一、または、ほぼ同等とすべきである。逆に、計算負荷低減のためシステム時刻選択周期を大きくすると、時刻設定の精度が低下してしまう。又、時刻を比較し、設定値との偏差を求めるロジック、等が必要であり、そのためのロジックが複雑である。
【０００８】
そこで本発明は複数の計算機からなる分散システムにおいて、システムの時刻合わせを行う際に、システムの基準時刻となるシステム時刻をすべての計算機の時刻情報の中から中央値を選択して決定し、多数決での選択や設定値からの偏差を求めるような複雑な演算をなくしてロジックの構成を簡略化し、システム構成や時刻情報の数によらずに、時刻合わせを可能とする分散システムの時刻合わせ方法及び装置を提供することを課題としてなされたものである。
【０００９】
【課題を解決するための手段】
本発明は前述の課題を解決するために次の手段を提供する。
【００１０】
（１）分散配置された複数の計算機を情報伝送路を介して互に接続してなる分散システムにおいて、前記各計算機毎に時刻情報を生成すると共に生成した時刻情報を他の計算機へ所定の周期で前記情報伝送路を介して送出し、システムの基準となるシステム時刻情報をすべての計算機の時刻情報の中から中央値を選択することにより設定し、同設定した中央値の時刻情報を自己の計算機のシステム時刻情報として置き換え、同置き換えた時刻情報を基に新たな時刻情報を生成することを特徴とする分散システムの時刻合わせ方式。
【００１１】
（２）前記中央値は、前記時刻情報の個数が奇数個（２ｎ＋１）の時にはｎ＋１番目の時刻情報、または、ｎ＋１番目を中心とした前後の任意の数の時刻情報の平均値を中央値とし、個数が偶数個（２ｎ）の時にはｎ番目とｎ＋１番目の時刻の平均値を中央値とすることを特徴とする（１）記載の分散システムの時刻合わせ方式。
【００１２】
（３）分散配置された複数の計算機を情報伝送路を介して互に接続してなる分散システムの時刻合わせ装置において、前記各計算機には、他の計算機からの時刻情報を受信する時刻情報受信部と、同時刻情報受信部からの時刻情報を受け同時刻情報の中から中央値を演算して算出する中央値選択部と、同中央値選択部からの算出値を受けシステム時刻情報として出力するシステム時刻情報設定部と、同システム時刻情報設定部からのシステム時刻情報を受け一定周期毎に時刻情報を更新して出力する時刻情報更新部と、同時刻情報更新部からの更新時刻を受け自己の新たな時刻情報として前記情報伝送路へ出力する時刻情報送信部とを備えたことを特徴とする分散システムの時刻合わせ装置。
【００１３】
（４）前記中央値選択部は、前記時刻情報の個数が奇数個（２ｎ＋１）の時にはｎ＋１番目の時刻情報、または、ｎ＋１番目を中心とした前後の任意の数の時刻情報の平均値を中央値とし、個数が偶数個（２ｎ）の時にはｎ番目とｎ＋１番目の時刻の平均値を中央値として演算し出力することを特徴とする（３）記載の分散システムの時刻合わせ装置。
【００１４】
本発明の（１）においては、各計算機でシステム時刻を設定する場合には、すべての計算機の時刻情報の中から中央値を選択し、選択した中央値を自己のシステム時刻情報に置き換えるのみであり、簡略化した方法によりシステム構成や時刻情報の数によらずに時刻合わせが可能となる。又、従来のように、多数決選択、設定値との比較、等の複雑なロジックも不要であり、ロジックも簡素化される。又、時刻データ送受信およびシステム時刻選択周期と時刻更新周期は独立に選択できるため、通信量も低減でき、分解能が向上するために、リアルタイム性が必要な制御システムにも適用できる。
【００１５】
本発明の（２）では、中央値の選択は、取込んだ時刻情報の数をカウントし、カウント値が奇数、偶数の場合で正確な中央値が選択できるように算出するので、簡便な方法で中央値の時刻が選べ、上記（１）の発明の時刻合わせを確実に実行することができる。
【００１６】
本発明の（３）においては、各計算機でシステム時刻を設定する場合には、時刻情報受信部で受信した他の計算機の時刻情報の中から中央値選択部において中央値を選択する。選択した中央値はシステム時刻情報設定部で自己のシステム時刻情報に置き換える。この自己のシステム時刻情報は時刻情報更新部で一定周期毎に更新され、時刻情報送信部から情報伝送路へ出力される。このような装置により、上記（１）の発明が容易に実施可能となる。又、本発明の（４）では、中央値選択部において上記（２）の発明の演算が容易に実施され、時刻合わせを確実に実行できる装置が実現できる。
【００１７】
【発明の実施の形態】
以下、本発明の実施の形態について図面に基いて具体的に説明する。図１は本発明の実施の一形態に係る分散システムの時刻合わせ方式の構成図である。図において、複数の計算機２０，２１，２２が伝送路１６に接続されて分散配置されており、各計算機間で情報の送受が行なわれる。各計算機内には、各計算機からの時刻情報を伝送路１６から受信する時刻情報受信部１、各計算機の時刻情報の中から中央値を演算して算出する中央値選択部２、中央値をシステム時刻情報として時刻情報更新部４に置き換え設定するシステム時刻情報設定部３、カウンタ出力に基いて一定周期毎に時刻情報を更新する時刻情報更新部４、時刻情報更新部４からの時刻情報を伝送路１６へ送信する時刻情報送信部７が設けられている。
【００１８】
時刻情報受信部１は伝送路１６を介して各計算機から送られてくる時刻情報を入力し、そのデータを中央値選択部２へ出力する。中央値選択部２では、後述するようにすべての計算機の時刻情報の中から中央値を算出し出力する。システム時刻情報設定部３は中央値選択部２から出力される中央値を入力し、この中央値を自己の新たなシステム時刻情報として時刻情報更新部４に設定する。
【００１９】
時刻情報更新部４は一定周期毎に時刻情報を更新し、時刻情報送信部７へ出力し、時刻情報送信部７は自己の更新された時刻情報として伝送路１６へ出力する。各計算機２０，２１，２２ではこのように他の計算機からの時刻情報を受け、中央値を求めて、この中央値を自己のシステム時刻情報として設定して他の計算機へ送るので、分散システムの時刻合わせが正確になされる。
【００２０】
図２は、図１に示した中央値選択部２で実施される中央値選択の演算のフローチャートである。図において、時刻合わせが開始すると、ステップＳ１において、他の計算機からの時刻情報を読出し、Ｓ２において一定周期間で受信したすべての時刻情報の個数をカウントする。この際、自己の時刻情報も含めて扱う。次に、Ｓ３において、カウントした個数が偶数個（２ｎ）か、又は奇数個（２ｎ＋１）のいずれになるか判定し、奇数個（２ｎ＋１）であれば、Ｓ４において、ｎ＋１番目の時刻の値を中央値として選択する。又、カウントした個数が偶数個（２ｎ）であれば、Ｓ５において、ｎとｎ＋１番目の時刻の平均値を求め、この平均値を中央値として設定する。
【００２１】
次に、Ｓ６において決定された中央値をシステム時刻情報設定部３へ出力し、この中央値を自己のシステムの時刻情報として設定して更新する。更新された自己のシステム時刻情報は、前述のように時刻情報更新部４から時刻情報送信部７へ送られ、伝送路１６を介して他の計算機へ送られ、他の計算機でも同様な時刻合わせが行なわれる。
【００２２】
図３および図４は分散システムにおける時刻の時刻合わせと時刻の伝送を示す図である。図３は計算機同士の時刻合わせ処理タイミングが同期している場合であり、図４は計算機同士の時刻合わせ処理タイミングが非同期の場合である。図３および図４とも、計算機がＡ，Ｂ，Ｃ，Ｄの４台からなり、計算機Ｄにおいて時刻合わせを行い、他の計算機Ａ，Ｂ，Ｃへ更新された自己のシステム時刻を伝送する場合を示している。
【００２３】
図３において、時刻更新は全ての計算機で同期して行われる。更新時には、それぞれ自己の（時刻更新前の）時刻情報を他の計算機に送信する。その後、受信した時刻情報と自己の時刻情報から中央値を選択し、自己の計算機の時刻として設定する。その後、次の時刻更新タイミングまでの間は自己の計算機のクロックにより時刻情報を更新する。
【００２４】
図４では、時刻更新は各計算機のタイミングで行われる。まず、計算機Ａからシステム時刻情報ＴＡ　が全計算機に送信される。計算機Ｄでは、システム時刻情報ＴＡ　受信時に受信時刻情報と受信時点での自己の時刻情報との差ΔＴＡ　＝ＴＡ　−ＴＤａ　を計算する。同様に、ΔＴＢ　＝ＴＡ　−ＴＤｂおよびΔＴＣ　＝ＴＡ　−ＴＤｃを計算する。その後、時刻情報更新タイミングにおいて、それぞれの計算機との時刻情報差ΔＴＡ　，ΔＴＢ　，ΔＴＣ　とΔＴＤ　＝０（自己との時刻情報差）から中央値選択を行い、中央値ΔＴを得る。このΔＴを用いて、自己の計算機の時刻情報をＴＤ　＋ΔＴにより補正し、その時点での更新時刻ＴＤＫを得る。このＴＤＫを他の計算機に送信し、他の計算機での時刻合わせ処理に使用する。
【００２５】
図５は上記に説明した実施の形態における分散システムの時刻合わせ方式を実際に適用した場合のシステム構成の一例を示す構成図である。図は、複数のセンサ、コントローラ、アクチュエータからなる制御装置をネットワークを介した分散システムとして構成した例である。この分散システムにおいて、図１に示す方式を適用することにより、全てのセンサ、コントローラ、アクチュエータの時刻情報を合わせることが可能となる。
【００２６】
以上説明したように、本実施の形態においては、中央値選択部２において、複数の計算機の時刻情報の中から中央値を選択して自己のシステム時刻情報として置き換えるようにしたので、あらゆる条件での時刻情報の補正ができるものである。従来の多数決選択方式では、時刻が一致しない場合システム時刻が選択できず、時刻補正が次周期へ持ち越される場合があり、又、時刻情報が２個の場合では多数決選択ができない。本発明の方式では、このような場合でも中央値の選択が可能である。
【００２７】
又、従来の方式では時刻データ送受信およびシステム時刻選択周期と時刻更新周期とは同一またはほぼ同等とすべきであるが、本実施の形態の中央値選択はその制約がなく、時刻更新周期を大きく選べるため、通信量が低減できる。又、精度（分解能）が向上するためハード・リアルタイム性が必要な制御システムに有効である。更に中央値選択部２を用いるので、各計算機でシステム時刻と生成した時刻とを比較する際の判定ロジック、設定値との比較、等が必要なくロジックが簡素化される。
【００２８】
なお、本発明の実施の形態では計算機を伝送路に接続した例で説明したが、本発明はセンサやアクチュエータを含む制御装置やこれらの制御信号を伝送する制御用計算機等の分散システムの時刻合わせにも適用でき、同様の効果が得られるものである。
【００２９】
【発明の効果】
本発明の分散システムの時刻合わせ方法は、（１）分散配置された複数の計算機を情報伝送路を介して互に接続してなる分散システムにおいて、前記各計算機毎に時刻情報を生成すると共に生成した時刻情報を他の計算機へ所定の周期で前記情報伝送路を介して送出し、システムの基準となるシステム時刻情報をすべての計算機の時刻情報の中から中央値を選択することにより設定し、同設定した中央値の時刻情報を自己の計算機のシステム時刻情報として置き換え、同置き換えた時刻情報を基に新たな時刻情報を生成することを特徴としている。
【００３０】
上記の方式により、各計算機でシステム時刻情報を設定する場合には、すべての計算機の時刻情報の中から中央値を選択し、選択した中央値を自己のシステム時刻情報に置き換えるのみであり、簡略化した方法によりシステム構成や時刻情報の数によらず時刻合わせが可能となる。又、従来のように多数決選択、設定値との比較、等の複雑なロジックも不要であり、ロジックも簡素化される。又、時刻データ送受信およびシステム時刻選択周期と時刻更新周期は独立に選択できるため通信量も低減でき、精度（分解能）が向上するために、リアルタイム性が必要な制御システムにも適用できる。
【００３１】
本発明の（２）では、中央値の選択は、取込んだ時刻情報の数をカウントし、カウント値が奇数、偶数の場合で正確な中央値が選択できるように算出するので、簡便な方法で中央値の時刻が選べ、上記（１）の発明の時刻合わせを確実に実行することができる。
【００３２】
本発明の（３）の装置は、各計算機には、他の計算機からの時刻情報を受信する時刻情報受信部と、同時刻情報受信部からの時刻情報を受け同時刻情報の中から中央値を演算して算出する中央値選択部と、同中央値選択部からの算出値を受けシステム時刻情報として出力するシステム時刻情報設定部と、同システム時刻情報設定部からのシステム時刻情報を受け一定周期毎に時刻情報を更新して出力する時刻情報更新部と、同時刻情報更新部からの更新時刻を受け自己の新たな時刻情報として前記情報伝送路へ出力する時刻情報送信部とを備えたことを特徴ととしている。
【００３３】
このような装置により、上記（１）の発明が容易に実施可能となる。又、本発明の（４）では、中央値選択部において上記（２）の発明の演算が容易に実施され、時刻合わせを確実に実行できる装置が実現できる。
【図面の簡単な説明】
【図１】本発明の実施の一形態に係る分散システムの時刻合わせ方式を示す構成図である。
【図２】本発明の実施の一形態に係る中央値選択の演算のフローチャートである。
【図３】本発明の実施の一形態に係る時刻合わせと時刻情報伝送を示す説明図で、タイミングが同期している場合である。
【図４】本発明の実施の一形態に係る時刻合わせと時刻情報伝送を示す説明図で、タイミングが非同期の場合である。
【図５】本発明の実施の一形態に係る分散システムの具体的構成例を示す構成図である。
【図６】従来の分散システムの時刻合わせ方式を示す構成図である。
【符号の説明】
１　　　　　　　　　時刻情報受信部
２　　　　　　　　　中央値選択部
３　　　　　　　　　システム時刻情報設定部
４　　　　　　　　　時刻情報更新部
７　　　　　　　　　時刻情報送信部
１６　　　　　　　　伝送路
２０，２１，２２　　計算機
【図１】
2004078874.tif 000003
【図２】
2004078874.tif 000004
【図３】
2004078874.tif 000005
【図４】
2004078874.tif 000006
【図５】
2004078874.tif 000007
【図６】
2004078874.tif 000008