(57)【要約】【課題】シリアル通信を用いてクロックの異常動作を検知することで、クロックの異常動作によるシステムの誤作動を防止するクロック異常検知システムを提供する。【解決手段】クロック異常検知システムの受信機２は、送信機１から送信されたシリアル通信（調歩同期）で受信した信号を周期的に読み込み、各ビットの区切りの直後に読み込んだビット値がその次の区切りの直前に読み込んだビット値と異なる場合、クロック異常検知装置２３はクロック異常と判定して警報を出力する。【選択図】図１
2011120059.tif 000002
【特許請求の範囲】
【請求項１】
シリアル通信を送信する１台もしくは複数台の送信機と、シリアル通信を受信する受信機と、ネットワークとにより構成されたクロック異常検知システムにおいて、
該送信機は、他受信機とシリアル通信を行うためのシリアル通信送信装置とシリアル通信による送信信号を作成するためのクロックを発生するクロック発生装置とを有し、
該受信機は、該シリアル通信を受信するためのシリアル通信受信装置と、該シリアル通信を読み込むタイミングを決定するためのクロックを発生するクロック発生装置と、該シリアル通信受信装置が受信した受信信号における各ビットの基本周期の区切り前後の信号を読み込み、各ビットの基本周期の区切りの直後に読み込んだビット値がその次の基本周期の区切りの直前に読み込んだビット値と不一致となる場合、クロック異常と判定して警報を出力するクロック異常検知装置とを有することを特徴とするクロック異常検知システム。
【請求項２】
請求項１に記載のクロック異常検知システムにおいて、
該クロック異常検知装置は、基本周期の区切り前後でビット値が不一致となった場合に、その不一致が発生した傾向や通信環境の特性を元に不一致が発生した要因を特定し、通信ノイズが要因であると推定される場合はクロックが正常と判断して警報を出力しない機能を有することを特徴とするクロック異常検知システム。
【請求項３】
請求項１または請求項２に記載のクロック異常検知システムにおいて、
該シリアル通信受信装置は、該クロック発生装置を利用する外部システムが許容するクロックの誤差範囲を元に受信信号を読み込むタイミングを決定する機能を有することを特徴とするクロック異常検知システム。
【請求項４】
請求項１ないし請求項３のいずれかに記載のクロック異常検知システムにおいて、
複数の送信機から受信したシリアル通信を元に異常が発生したクロックを多数決により特定する異常クロック特定装置を有することを特徴とするクロック異常検知システム。
【請求項５】
請求項１ないし請求項４のいずれかに記載のクロック異常検知システムにおいて、
該異常クロック特定装置は、各クロックの故障発生率を元に各クロックの評価を重みづけして異常が発生したクロックを特定する機能を有することを特徴とするクロック異常検知システム。
【請求項６】
請求項１ないし請求項５のいずれかに記載のクロック異常検知システムにおいて、
該シリアル通信受信装置が受信した受信信号に含まれるビット値を読み込み、該ビット値では通信異常となる場合、クロック異常ではないと判定して警報を出力しないクロック異常検知装置を有することを特徴とするクロック異常検知システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、外部装置からシリアル通信を受け入れて、その通信を元にクロックの異常動作を検知するクロック異常検知システムに関する。
【背景技術】
【０００２】
クロックとは、コンピュータやデジタル回路が動作する際、複数の電子回路の同期を取るために使用される周期的な信号である。クロックが異常動作した場合、電子回路の同期が取れず、予期せぬ誤動作を引き起こす可能性がある。そのため、クロック動作が正常であるか診断するためのクロック異常検知システムが必要となる。
【０００３】
例えば、光ディスクの記録再生装置における従来の異常検知システムでは、光ディスクで用いられるウォブル信号の周波数とクロック周波数を比較することで、クロック異常を検知する。ウォブル信号とは、光ディスクに設けられた所定の振幅および周期をもった微小な溝からの反射光の強度変化による信号を指す。ウォブル信号の周波数は光ディスクからデータを読み取るための搬送波として用いられる。
【０００４】
従来手法では、光ディスクから検出したウォブル信号の周期をクロック信号によりカウントした値と、ウォブル信号が正常に得られた場合の周期をカウントした値とを比較する。両者に差がある場合、ウォブル信号の周波数異常、もしくはクロック動作異常と判断される。
【０００５】
また、例えば、特許文献１には、シリアル入力回路において、通信完了時間と正常時の通信完了時間がずれていればクロック異常と判断する技術が開示され、特許文献２には、受信信号の周期をクロック信号でカウントし、そのカウント値が正常状態でのカウント数とずれていればクロック異常と判断し、カウント数が極端に小さい場合は、受信信号がノイズによる影響とみなし、クロック異常としない技術が開示されている。
【０００６】
また、特許文献３には、外部クロックの周期が１周期経過するまでの間に、ＡＤ変換器の変換したデジタルデータを複数個取得し、その取得した複数のデジタルデータが１つでも異なる場合に、ＡＤ変換器の故障（クロック線の断線によるＡＤ変換器の故障）と判断する技術が開示されている。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開２００２−２７０１６号公報
【特許文献２】特開２０００−２２２８２９号公報
【特許文献３】特開２０００−２３６３８８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】
上述のシステムは光ディスクの記録再生装置であるためウォブル信号を用いることができるが、一般の環境ではウォブル信号のように所定の振幅および周期をもった信号は得られないという問題点があった。
【０００９】
また、上述のシステムはウォブル信号の代わりにシリアル通信を用いることもできるが、振幅や周期が所定のものであるため、送信機は診断のためにテスト用の信号を送信する必要がある。また従来手法では、信号に通信ノイズが重畳すると受信信号の周期を誤ってカウントしてしまい、クロック動作の異常と誤判断するという問題点があった。
【００１０】
本発明は上記の問題に鑑み、所定の振幅および周期をもった信号が得られない環境においても、外部装置からシリアル通信を受け入れることによりクロック異常を検知するシステムであり、通信にノイズが重畳した場合でもノイズによる影響とクロック異常動作の影響を判定するクロック異常検知システムを提供することを目的とする。
【００１１】
なお、クロック異常とは、正常時の所定クロック動作速度よりも高速もしくは低速に動作する状態を指す。
【課題を解決するための手段】
【００１２】
上記目的を達成するため、本発明の第一の特徴は、クロック発生装置と、シリアル通信受信装置と、受信したシリアル通信の周期とクロックの周期を比較することでクロック異常を検知するクロック異常検知装置とを有するクロック異常検知システムであることを要旨とする。
【００１３】
また、上記クロック異常検知装置は、検知した異常の発生傾向を解析することにより、通信ノイズによる影響とクロック異常を識別するノイズ識別機能を有することを特徴とする。
【発明の効果】
【００１４】
本発明によれば、所定の振幅および周期をもった信号が得られない環境においても、外部装置からシリアル通信を受け入れることによりクロック異常を検知できる。またシリアル通信にノイズが重畳した場合でも、ノイズによる影響とクロック異常動作の影響を識別できる。
【図面の簡単な説明】
【００１５】
【図１】図１は本発明の実施例１によるクロック異常検知システムの構成の一例を示す図である。
【図２】図２は本発明の実施例２によるクロック異常検知システムの構成の一例（図１記載の構成に複数の送信機利用、および異常クロック特定装置を追加した構成）を示す図である。
【図３】図３は本発明の実施例１および２での受信機によるクロック異常検知により警報を出力するまでの手順を示すフローチャートである。
【図４】図４は本発明の実施例１および２での受信機によるクロック異常検知により警報を出力するまでの手順を示すフローチャートである。図３の手順に加え、ビット値の不一致が発生した箇所の傾向を元に不一致が発生した要因（クロック異常、もしくは通信ノイズ）を特定する処理を行う。
【図５】図５は本発明の実施例１および２での受信機によるクロック異常検知により警報を出力するまでの手順を示すフローチャートである。図４の手順に加え、シリアル通信を行った送信機・受信機の故障発生率を元に異常が発生したクロックを特定する処理を行う。
【図６】図６は本発明の実施例１および２での受信信号を読み込むタイミングを表した図である。併せて、送信機クロックと受信機クロックが同期することで正しく受信信号が読み取られる様子を示している。
【図７】図７は本発明の実施例１および２での受信信号を読み込むタイミングを表した図である。受信機クロックが送信機クロックよりも早く動作しているため、ビット値の区切り前後で読み込んだビット値が不一致となる様子を示している。
【図８】図８は本発明の実施例１および２での受信信号を読み込むタイミングを表した図である。受信機クロックが送信機クロックよりも遅く動作しているため、ビット値の区切り前後で読み込んだビット値が不一致となる様子を示している。
【図９】図９は本発明の実施例１および２での受信信号を読み込むタイミングを表した図である。送信機クロックと受信機クロックは同一速度で動作しているが、通信ノイズによりビット値の区切り前後で読み込んだビット値が不一致となる様子を示している。
【図１０】図１０は本発明の実施例１および２での受信信号を読み込むタイミングを表した図である。クロック動作の誤差許容範囲を考慮して読み込む範囲を変更している様子を示している。
【発明を実施するための形態】
【００１６】
以下、本発明の実施の形態について、図面を参照して説明する。ただし、図面は模式的なものであることに留意すべきである。
【実施例１】
【００１７】
図１に本実施例の構成を示す。本実施例では、シリアル通信を送信する送信機１と、送信機１からネットワーク３を介して送られてきたシリアル通信を受信してクロック異常を検知する受信機２が利用される。送信機１は、クロック発生装置１１、シリアル通信送信装置１２により構成される。また受信機２は、クロック発生装置２１、シリアル通信装置１２から送られてきたシリアル通信を受信するためのシリアル通信受信装置２２、シリアル通信の受信データを元にクロック異常を検知するクロック異常検知装置２３により構成される。
【００１８】
図６を用いて調歩同期によるシリアル通信について説明する。データを送受信する場合、無情報の時には送信機１はストップビットを連続送信する。情報送信の前には、スタートビットを１ビット送信し、その後にデータを７〜８ビット、パリティビットを１ビット送信し、最後にストップビットを１〜２ビット送信する。
【００１９】
スタートビットの値は０、ストップビットは１と規定されている。送信機１は各ビットを一定周期おきに送信する。このとき、送信する周期は送信機１のクロック発生装置１１を用いて測定する。受信機２側も同様にクロック発生装置２１を用い、受信した信号を所定周期おきに読み取り、ビット列として信号を受信する。
【００２０】
以下では、調歩同期を用いたシリアル通信を行う場合のクロック異常検知システムについて記述するが、クロック同期型シリアル通信でも同様に実施できる。クロック同期型シリアル通信の場合、データ信号と別に一定周期で０と１を繰り返すクロック信号が送付される。そのため、このクロック信号を受信信号として用いることで、下記記載のシステムと同様のクロック異常検知システムが構成される。
【００２１】
次に、図６を用いてクロックの異常検知動作について説明する。検知処理手順のフローチャート図を図３に示す。以下、受信データ１ビット当たりの周期を基本周期と呼ぶ。基本周期中は受信信号が一定であり、周期ごとにビット値の区切り目がある。受信信号は送信機により作成されるため、区切り位置は送信機１のクロック発生装置１１により決定され、受信信号を読み込むタイミングは受信機２のクロック発生装置２１により決定される。
【００２２】
該シリアル通信受信装置２２は送信機のシリアル通信送信装置１２から送信されるシリアル通信を受信する（Ｓ３００）。
【００２３】
該受信機２は受信信号の立下りを検知したら、そのときの時間をスタートビットの開始時間と認識し、自身のクロック発生装置２１により発生したクロックに基づき、基本周期ごとに送信される各ビットの区切り目の前後の受信信号を読み込み、そのビット値を記録する（Ｓ３０１）。
【００２４】
該シリアル通信受信装置２２はストップビットを読み込んだら読み込みを停止し、読み込んだビット値をクロック異常検知装置２３へ送る。ストップビットが０の場合はフレーミングエラーとなるが、その場合でも読み込んだビット値をクロック異常検知装置２３へ送る。該クロック異常検知装置２３は、区切り位置の直後のビット値をチェックする（Ｓ３０２）。
【００２５】
１基本周期後の区切り位置の直前のビット値が一致した場合はクロック異常なしと判断し、所定時間経過後、再度診断を実施する。ビット値が不一致となる場合はクロック異常と判断し（Ｓ３０３）、警報を出力する。
【００２６】
あるビットの区切り位置から次の区切り位置の間は本来ビット値が変化することはないため、区切り位置前後のビット値が一致している場合は異常と判断されない。しかしビット値が区切り位置前後で変化しているということは、送信機側と受信機側のクロックがずれて動作したことで、受信機側のクロックパルス発生装置２１により求められる区切り位置が実際の受信信号の区切り位置からずれたと推定される。よってビット値の一致検証をすることによりクロック異常を検出できる。
【００２７】
受信信号を読み込むタイミングは、クロック利用するシステムが許容するクロックずれの許容範囲に応じて決定しても良い。読込タイミングをシステムのクロック誤差許容範囲に応じて決定した場合の読込タイミングを図１０に示す。
【００２８】
図１０において、基本周期をＴ秒とし、クロックの許容誤差範囲を±Ｅパーセントとした場合、この許容誤差範囲内となる最短周期をＳ秒、最長周期をＬ秒とおく。このとき、Ｓ＝Ｔ×（１−Ｅ／１００）、Ｌ＝Ｔ×（１＋Ｅ／１００）となる。
【００２９】
クロック異常検知処理を行う場合、スタートビットを検出してからＳ秒待機し、その後Ｌ−Ｓ秒間受信信号を読み込む。読込の間に受信信号にビットの区切り目が検出された場合、その検出した時間からＳ秒間待機し、その後Ｌ−Ｓ秒間受信信号を読み込んで区切り目の検出を試みる。
【００３０】
ビット値の区切り目は、受信信号を読み込み始めてから初めてビット値が変化した場所とする。同一ビット値が続き、ビットの区切り目が検出されない場合は、最後に受信信号の読み込みを開始した時間からＳ秒後に受信信号の読み込みを開始し、最後に受信信号の読み込みを終了した時間からＬ秒後まで読み込んで区切り目の検出を試みる。以降、ストップビットを読み込むまで同様の処理を行う。
【００３１】
該クロック異常検知装置２３は、ビット値の不一致が発生する傾向を元にクロック異常を判断しても良い。ビット値の不一致は、クロック動作に異常が発生した場合だけでなく、通信ノイズが発生した箇所でも見られる。
【００３２】
ただし、ビット値不一致が発生する箇所はその要因によって異なる。通信ノイズが要因の場合はノイズが発生した箇所でのみビット値が不一致となるのに対し、クロック異常の場合は区切り位置のずれが累積するためビット値不一致が複数箇所で発生する。
【００３３】
よって、ビット値不一致が発生した箇所の傾向を元に通信ノイズとクロック異常を識別した上で、警報を出力しても良い。この処理を加えた処理手順のフローチャート図を図４に示す。
【００３４】
該シリアル通信受信装置２２は送信機のシリアル通信送信装置１２から送信されるシリアル通信を受信する（Ｓ４００）。受信した信号の最初に含まれるスタートビットを読み込んだら、自身のクロック発生装置２１により発生したクロックに基づき、基本周期ごとに送信される各ビットの区切り目の前後の受信信号を読み込み、そのビット値を記録する（Ｓ４０１）。
【００３５】
該シリアル通信受信装置２２はストップビットを読み込んだら読み込みを停止し、読み込んだビット値をクロック異常検知装置２３へ送る。該クロック異常検知装置２３は、区切り位置の直後のビット値をチェックし、１基本周期後の区切り位置の直前のビット値と不一致となる箇所を記録する（Ｓ４０２）。
【００３６】
ビット値が全て一致した場合はクロック異常なしと判断し、所定時間経過後に再度診断を実施する（Ｓ４０３）。
【００３７】
不一致となる箇所が検出された場合、該受信信号が送られた際の通信路の状況（ビット誤り率など）を元に不一致が発生した要因を特定する（Ｓ４０４）。
【００３８】
通信ノイズと推定される場合にはクロック異常なしと判断し、所定時間経過後に再度診断を実施する。それ以外の場合はクロック異常と判断し、警報を出力する（Ｓ４０５）。
【００３９】
クロックに異常が発生し、正常時より高速動作した場合の不一致発生例を図７、低速動作した場合の例を図８、通信ノイズによる不一致発生の例を図９にそれぞれ示す。
【００４０】
通信ノイズがビット不一致の要因となる場合と比較して、クロック異常の場合はビット値が不一致となる箇所が複数回発生する確率が明らかに高くなるため、ベイズ推定やデータマイニングなどの統計学的手法を用いることで不一致発生要因の高精度な特定が可能となる。
【００４１】
該クロック異常検知装置２３は、通信ノイズを識別するため、受信データに付加されたパリティビットのチェックやＥＣＣ（Error Correcting Code）、ＣＲＣ（Cyclic Redundancy
Check）などの通信エラー検知手法により、受信データに通信エラーが含まれていないか確認しても良い。
【００４２】
該クロック異常検知装置２３は、エラー訂正の結果を元にビット誤りを含まない受信データのみをクロック異常検知に用いても良い。
【００４３】
また複数の送信機や通信場所、通信時間帯など通信環境に応じてビット誤り率を測定し、ビット誤り率に応じて異常検知の実施要否や警報出力の要否を判断しても良い。例えばビット誤り率が高い（通信ノイズが多い）環境ではクロック異常検知の検知精度が低いと判断し、その時点での受信データを異常検知に用いないよう選別しても良い。
【００４４】
該クロック異常検知装置２３は、上記の通信エラーを確認する処理において所定回数以上の通信エラーが検知された場合、クロック異常と判断しても良い。すなわち、上記記載の手法では各ビット区切りの前後２箇所以上を読み込むが、各ビットを所定のタイミングで１度ずつ読み込んで受信信号に通信エラーが含まれていないか確認し、クロック異常を判断しても良い。
【００４５】
また、上記記載の手法と同様、受信信号を読み込むタイミングはクロックを利用するシステムが許容するクロックずれの許容範囲に応じて決定しても良い。このとき、通信エラーの原因を識別するため、通信エラーが発生したビットの箇所に関する情報を用いても良い。
【００４６】
通信エラーが発生する原因は通信ノイズとクロック異常の２つがありうるが、その原因が通信ノイズである場合、受信したビット列のうちどのビットに対しても等しくエラーが発生しうる。
【００４７】
一方、クロック異常が原因の場合、受信信号と受信側の該クロック発生装置２１の同期は累積的にずれるため、最初に受信するスタートビットでエラーが発生する確率は最も低く、後方のビットほど高くなる。そのため、エラーが発生したビットの箇所を元に、統計学的手法を用いることで通信エラー発生要因の高精度な特定が可能となる。
【実施例２】
【００４８】
実施例２では、複数の送信機からのシリアル通信による受信信号を元に、多数決によるビット不一致要因の特定、クロック異常発生元の特定を行っても良い。独立なクロック発生装置を利用している複数の送信機から信号を受信し、そのずれを検証して多数決により異常なクロックの特定が可能となる。この場合の装置構成を図２に示す。
【００４９】
例えば、受信機が送信機１ａおよび送信機１ｂから信号を受信してクロックのずれを検証した結果、送信機１ａの信号からはクロック異常が検出されないが１ｂの信号からは異常が検出された場合を考える。この場合、送信機１ａと受信機のクロックは同一速度であり、送信機１ｂのみ異なる速度と判断されるため、多数決により送信機１ｂのクロック異常と判断できる。
【００５０】
また、送信機１ａ、１ｂの両方の信号からクロック異常が検出された場合、受信機のクロック異常と判断できる。受信機２は複数の送信機１ａ、１ｂ、・・・からのシリアル通信を受信したら、それぞれの通信を用いてクロック異常検知装置２３によりクロック異常検知を行う。その結果を元に、異常クロック特定装置２４は多数決により異常が発生したクロックを特定する。
【００５１】
また、上記システムでは各クロック発生装置の故障発生率が同一と想定しているが、クロックごとに故障発生率が異なる場合、そのクロックの故障発生率を元に異常が発生したクロックを特定しても良い。
【００５２】
例えば、送信機１のクロック発生装置１１の故障発生確率が受信機２と比較して非常に小さいとする。この場合、受信機２が送信機１からの通信を用いてクロック異常が検知された場合、受信機２は自身のクロック発生装置２１が故障した確率が高いと判断できる。
【００５３】
複数の送信機を用いて多数決を行う場合も、この故障発生率を元に評価を重みづけして異常クロックを特定しても良い。故障発生率を元に評価を重みづけした場合のクロック異常検知のフローチャート図を図５に示す。
【００５４】
クロック異常を検出するまでの手順（Ｓ５００〜Ｓ５０５）は実施例１と同一である。異常が検出された場合、各クロックの故障発生率を元に評価の重みづけを行い（Ｓ５０６）、異常が発生したクロックの特定を行う（Ｓ５０７）。
【００５５】
クロックが特定されない場合、引き続き単一もしくは複数の送信機から送られるシリアル通信を受信し、クロック異常検知を行う。異常クロックが特定された場合、警報を出力する。この場合、警報には異常が発生しているクロックの情報を含んでも良い。
【００５６】
異常クロック特定装置２４により異常動作するクロックを特定する際に用いられる故障発生率を算出するため、過去のクロック異常検知による警報発生回数や頻度を履歴として記録しても良い。履歴は、各受信機が個別に記録しても良いし、各受信機が出力した全ての警報を集中管理しても良い。またクロック発生装置の故障発生率は、その装置を製造したメーカが保証する値を指標として用いても良い。
【産業上の利用可能性】
【００５７】
列車制御システムや自動車制御、エレベータ制御など安全性が重要となる制御システムにおいて、システム内部で用いられるクロックの動作異常を高精度に検知することにより、異常が発生した場合でもシステムを安全に停止、もしくは復旧することが出来る。
【符号の説明】
【００５８】
１  送信機
２  受信機
３  ネットワーク
１１  クロック発生装置
１２  シリアル通信送信装置
２１  クロック発生装置
２２  シリアル通信受信装置
２３  クロック異常検知装置
２４  異常クロック特定装置
Ｓ３００  シリアル通信受信手順
Ｓ３０１  受信信号読込手順
Ｓ３０２  ビット値一致検証手順
Ｓ３０３  ビット値不一致検証手順
Ｓ４００  シリアル通信受信手順
Ｓ４０１  受信信号読込手順
Ｓ４０２  ビット値一致検証手順
Ｓ４０３  ビット値不一致検証手順
Ｓ４０４  ビット値不一致発生要因特定手順
Ｓ４０５  クロック異常有無検証手順
Ｓ５００  シリアル通信受信手順
Ｓ５０１  受信信号読込手順
Ｓ５０２  ビット値一致検証手順
Ｓ５０３  ビット値不一致検証手順
Ｓ５０４  ビット値不一致発生要因特定手順
Ｓ５０５  クロック異常有無検証手順
Ｓ５０６  故障発生率に基づいた評価の重みづけ手順
Ｓ５０７  異常クロック特定可否検証手順
【図１】
2011120059.tif 000003
【図２】
2011120059.tif 000004
【図３】
2011120059.tif 000005
【図４】
2011120059.tif 000006
【図５】
2011120059.tif 000007
【図６】
2011120059.tif 000008
【図７】
2011120059.tif 000009
【図８】
2011120059.tif 000010
【図９】
2011120059.tif 000011
【図１０】
2011120059.tif 000012