(57)【要約】【課題】  秒未満の情報を有しない時計ＩＣに対する時刻の設定を極力回避しつつ、時刻歩進の不連続が発生しないように時計ＩＣに基づく時刻を補正するとともに、時刻制御で動作する外部装置の設計効率を向上させることが可能な時計ＩＣの時刻補正装置及び時計ＩＣの時刻補正方法を提供する。【解決手段】  秒未満の情報を有しない時計ＩＣ５に基づく時刻を補正するための時計ＩＣの時刻補正装置１００であって、時計ＩＣ５から取得した時計ＩＣ時刻「Ｔｉ」に対して、さらに実時刻と、この実時刻に対応する前記時計ＩＣ上の時刻との差を示す秒以上の情報及び秒未満の情報で構成される時刻差情報「Ｔｇ」を加算して時刻を補正するシステム時刻関連情報格納場所１３を備えることを特徴とする。【選択図】  図２
2008111678.tif 000002
【特許請求の範囲】
【請求項１】
秒未満の情報を有しない時計ＩＣに基づく時刻を補正するための時計ＩＣの時刻補正装置であって、
前記時計ＩＣから取得した時計ＩＣ時刻情報に対して、さらに実時刻と、該実時刻に対応する前記時計ＩＣ上の時刻との差を示す秒以上の情報及び秒未満の情報で構成される時刻差情報を加算して時刻を補正する時刻補正手段を備えることを特徴とする時計ＩＣの時刻補正装置。
【請求項２】
前記時刻補正手段が、前記時刻差情報に基づく時刻差が１秒未満になるように該時刻差情報を補正するとともに、補正した分の時刻差を前記時計ＩＣに設定することを特徴とする請求項１記載の時計ＩＣの時刻補正装置。
【請求項３】
前記時刻補正手段が、前記時刻差情報を時間経過とともに所定の割合づつ次第に加算していくことを特徴とする請求項１または２記載の時計ＩＣの時刻補正装置。
【請求項４】
さらに外部装置へ補正した時刻に対応するシステム時刻情報を出力した際に、該外部装置からの応答を監視する監視手段と、前記システム時刻情報を出力してから応答があるまでの遅延時間を算出する遅延時間算出手段とを備えるとともに、
前記時刻補正手段がさらに前記遅延時間に基づき、前記外部装置が前記システム時刻情報を出力する時刻が前記実時刻になるように、前記システム時刻情報に基づく時刻を補正することを特徴とする請求項１から３いずれか１項記載の時計ＩＣの時刻補正装置。
【請求項５】
秒未満の情報を有しない時計ＩＣに基づく時刻を補正するための時計ＩＣの時刻補正方法であって、
前記時計ＩＣから得た時計ＩＣ時刻情報に、該時計ＩＣ時刻情報に基づく時刻と、該時刻に対応する実時刻との差を示す時刻差情報を加算して時刻を補正することを特徴とする時計ＩＣの時刻補正方法。
【請求項６】
さらに前記時刻差情報に基づく時刻差が１秒未満になるように該時刻差情報を補正するとともに、補正した分の時刻差を前記時計ＩＣに設定することを特徴とする請求項５記載の時計ＩＣの時刻補正方法。
【請求項７】
さらに前記時刻差情報を時間経過とともに所定の割合づつ次第に加算していくことを特徴とする請求項５または６記載の時計ＩＣの時刻補正方法。
【請求項８】
さらに外部装置へ補正した時刻に対応するシステム時刻情報を出力した際に、該外部装置からの応答を監視するとともに、前記システム時刻情報を出力してから応答があるまでの遅延時間を算出し、該遅延時間に基づき、前記外部装置が前記システム時刻情報を出力する時刻が前記実時刻になるように、前記システム時刻情報に基づく時刻を補正することを特徴とする請求項５から７いずれか１項記載の時計ＩＣの時刻補正方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、時計ＩＣの時刻補正装置及び時計ＩＣの時刻補正方法に関し、特に秒未満の情報を有しない時計ＩＣに基づく時刻を補正するための時計ＩＣの時刻補正装置及び時計ＩＣの時刻補正方法に関する。
【背景技術】
【０００２】
従来、業務用のＣＤ演奏機等の時刻制御機器では、秒未満の情報を有しない安価な時計ＩＣが利用されている。図１５は、時刻制御機器が備える一般的な時刻補正装置１００Ｘの機能ブロックを示す図である。時計ＩＣ５Ｘから時刻を読み出すとき、一般的には図１５（ａ）に示す時刻補正装置１００Ｘａのように、時計ＩＣ５Ｘに基づく時刻（以下、単に時計ＩＣ時刻とも称す）をシステム機能処理部１２Ｘが直接読出すか、或いは図１５（ｂ）に示す時刻補正装置１００Ｘｂのように、時計ＩＣ時刻読取設定処理部（以下、単に読取設定処理部とも称す）１１Ｘが取得した時計ＩＣ時刻をシステム時刻格納場所１３Ｘに一旦格納し、別のタイミングでシステム機能処理部１２Ｘがこれをシステム時刻として読み出している。その一方で、時計ＩＣ時刻は誤差を含んでおり、この誤差は時間経過とともに時計ＩＣ時刻に累積されていく。その結果、時計ＩＣ時刻と実時刻の差は少しずつ拡がり、時計ＩＣ時刻は次第に実時刻からずれていく。
【０００３】
このため、係る時計ＩＣ５Ｘのような精度の低い時計ＩＣを備える時刻制御機器では、一般に時刻補正という機能を実装し、時刻補正を頻繁に行うことで精度の高い時刻歩進を確保している。ここで時刻補正とは、外部の正確な時刻に基づいて一定間隔毎に（例えば一日一回12:00:00に）特定の補正信号を受信し、それを引き金にして時計ＩＣに時刻を設定することにより補正を行うことである。このとき「外部の正確な時刻」には、例えば放送局の時報やＧＰＳ（Global Positioning System）からの電波やＪＪＹ（標準時報局）等の電波時計用信号などを利用できる。なお、これらの信号の元になる時計の誤差は０に等しいと考えてよく、この外部の正確な時刻は実時刻とみなす。
【０００４】
図１６は一般的な時刻補正を模式的に示す図である。一般的な時刻補正では、例えば１２時丁度に補正信号を受信したときに、時計ＩＣに12:00:00という時刻を設定することで補正を行う。これにより時計ＩＣ時刻の累積誤差がゼロになり、補正を行った瞬間ずれが解消されることになる。なお、この図においてグラフの傾きの大きさは誤差の大きさを意味し、傾きの大きさが小さいほど誤差が少ないことを意味する。さらに誤差には進み誤差と遅れ誤差があり、それぞれ正の傾きと負の傾きで表現される。また、このようにして時計ＩＣに時刻を設定する場合、一般的には図１５（ａ）に示す時刻補正装置１００Ｘａのようにシステム機能処理部１２Ｘが時計ＩＣ５Ｘに直接設定時刻を書き込むか、或いは図１５（ｂ）に示す時刻補正装置１００Ｘｂのようにシステム機能処理部１２Ｘがデータ保持場所１３Ｘに設定時刻を保管しておき、この設定時刻を読取設定処理部１１Ｘが読み出して時計ＩＣ５Ｘに書き込んでいる。
【０００５】
また上記に関連し、時間に関する技術として例えば特許文献１では、システムクロックを用いて測定対象の信号の時間間隔を計測する計時技術が開示されており、特許文献１では係る計時技術を用いて計時を行うか否かを制御する技術が提案されている。また、特許文献２では、社団法人電波産業会の標準規格ＡＲＩＢ  ＳＴＤ−Ｂ１０で定められた時刻日付テーブルを、より正確なものに補正して伝送するための技術が提案されている。
【０００６】
【特許文献１】特開平１１−１４７７４号公報
【特許文献２】特許第３５３１６０４号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
時計ＩＣ５Ｘから時刻を読み出す際、図１５（ｂ）から、まず読取設定処理部１１Ｘが時計ＩＣ５Ｘからシステム時刻格納場所１３Ｘに時計ＩＣ時刻を読み出す際に遅延が発生し、さらにそれをシステム機能処理部１２Ｘがシステム時刻格納場所１３Ｘからシステム時刻として読み出す際に遅延が生じることがわかる。秒未満の情報を有しない時計ＩＣ５Ｘの場合、これによりシステム時刻が最大で１秒近くの時間のずれを含む可能性がある。図１７は、時計ＩＣ時刻がシステム時刻として読み出され、さらにリレー接点出力として外部に出力されるまでの間に遅延する様子を模式的に示す図である。図１７は、具体的には図１５（ｂ）に示した時刻制御装置１００Ｘｂの構成で、さらに読取設定処理部１１Ｘが時計ＩＣ５Ｘからシステム時刻格納場所１３Ｘに読み出したシステム時刻を元にして、１秒毎にＣＰＵ（Central Processing Unit：中央演算処理装置）１Ｘ（図示省略）の所定ポートのＯｎ／Ｏｆｆを繰り返す制御プログラムを実行し、かつそのポートの出力がリレーに接続されて接点のＯｎ／Ｏｆｆとして外部に出力された場合に、時計ＩＣ時刻（或いはシステム時刻）が各段階で遅延する様子を示したものである。
【０００８】
まず時計ＩＣ時刻が読取設定処理部１１Ｘによってシステム時刻格納場所１３Ｘに読み出されるまでの間に、この読取設定処理部１１Ｘで実行される処理のサイクルタイム分だけ遅延が生じることがわかる（Ａ−Ｂ間遅延）。次にシステム時刻格納場所１３Ｘに格納されたシステム時刻をシステム機能処理部１２Ｘが認知するまで、システム機能処理部１２Ｘで実行される処理のサイクルタイム分だけ遅延が生じることがわかる（Ｂ−Ｃ間遅延）。さらにリレーのコイルに電圧が印加されてから実際に接点が閉じるまでの間にも遅延が生じることがわかる（Ｃ−Ｄ間遅延）。このようにして発生した遅延は通常は正確に把握されていないが、従来このような累積遅延が発生していても、正確な時刻に対して１秒未満のずれであれば特に問題にされることはなかった。しかしながら、このような装置を基準に他の装置を制御する場合、小さな遅延が積み重なると１秒以上の累積遅延になってしまうこともあり得る。このため、この種の遅延は極力小さい方が好ましい。
【０００９】
また時計ＩＣで１秒以上の遅延が生じると、時刻補正を行った結果、時計ＩＣの時刻歩進が不連続になる虞がある。図１８は時刻補正により時刻歩進の不連続が発生する様子を模式的に示す図である。具体的には図１８（ａ）では、時計ＩＣ時刻が実時刻に対して１.５秒ほど遅れている状況を示しており、図１８（ｂ）では、時計ＩＣ時刻が実時刻に対して１.５秒ほど進んでいる状況を示している。図１８（ａ）において、実時刻が11:59:55のときに時計ＩＣ時刻は11:59:53半くらいになっている。その後時刻が歩進して実時刻が12:00:00となったとき、時計ＩＣ時刻は11:59:58半くらいになるが、このときに時刻補正が行われると、時計ＩＣ時刻は突然12:00:00になる。すなわち、時計ＩＣ時刻は時刻補正によって約１.５秒間スキップされることになる。このような状況が時刻歩進の不連続（以下、係る態様の時刻歩進の不連続をスキップと称す）である。
【００１０】
一方図１８（ｂ）において、実時刻が11:59:55のときに時計ＩＣ時刻は11:59:56半くらいになっている。その後時刻が歩進して実時刻が12:00:00となったとき、時計ＩＣ時刻は12:00:01半くらいになるが、このときに時刻補正が行われると、時計ＩＣ時刻は突然12:00:00へ戻る。すなわち、時計ＩＣ時刻は時刻補正によって約１.５秒間再度繰り返されることになる。このような状況も時刻歩進の不連続（以下、以下、係る態様の時刻歩進の不連続をバックと称す）である。
【００１１】
つまり、このように時刻の突然の切り替わりが時計の進む方向に作用するとスキップが発生し、その結果、時刻の空白時間帯に行われるべき動作が実行されなくなってしまうことになる。また、時刻の突然の切り替わりが時計の遅れる方向に作用するとバックが発生し、その結果、時刻の重複時間帯に同じ動作が２度実行されてしまうことになる。さらに時刻制御で動作する装置は、通常時刻歩進が連続であることを前提に設計される。これに対して、上記のスキップやバックのような不連続歩進が発生することを想定した設計は動作理論が複雑になるとともに設計工数が上昇してしまう。またそのような設計は検証する為の検証工数も多大なものになってしまう虞があり、さらには不具合の原因にもなり得る。
【００１２】
また、時計ＩＣに時刻を設定する場合、この設定中に電源が切れると当然にして正しい時刻が時計ＩＣに設定されない虞がある。特に時計ＩＣにはＲＯＭ（Read Only Memory）／ＲＡＭ（Random Access Memory）等の素子と比較して低速でしかアクセスできないので、時計ＩＣへの時刻設定中に電源が切れる確率は相対的に高いといえる。このため、時刻制御機器に対する初回電源投入時は別としても、それ以外には極力時計ＩＣへの設定は行わない方が機器の安定動作を考えると望ましい。しかしながら、秒未満の情報を有しない安価な時計ＩＣでは、時刻補正を頻繁に行わないと精度の高い時刻歩進を確保できなくなってしまう。このため、例えば時刻制御機器に対してさらに電源切断検知装置を備えるとともに電源装置のコンデンサ容量を増加することで、時計ＩＣに時刻を設定している際の電源切断を避けることも可能ではあるが、係る対策ではコストが上昇してしまう。
【００１３】
そこで、本発明は上記の課題に鑑みてなされたものであり、秒未満の情報を有しない時計ＩＣに対する時刻の設定を極力回避しつつ、時刻歩進の不連続が発生しないように時計ＩＣに基づく時刻を補正するとともに、時刻制御で動作する外部装置の設計効率を向上させることが可能な時計ＩＣの時刻補正装置及び時計ＩＣの時刻補正方法を提供することを目的とする。
【課題を解決するための手段】
【００１４】
上記課題を解決するために、本発明は、秒未満の情報を有しない時計ＩＣに基づく時刻を補正するための時計ＩＣの時刻補正装置であって、前記時計ＩＣから取得した時計ＩＣ時刻情報に対して、さらに実時刻と、該実時刻に対応する前記時計ＩＣ上の時刻との差を示す秒以上の情報及び秒未満の情報で構成される時刻差情報を加算して時刻を補正する時刻補正手段を備えることを特徴とする。本発明によれば時計ＩＣそのものに時刻を設定せずとも、時計ＩＣ時刻を実時刻に補正できるため、時計ＩＣに対する時刻の設定を回避することができる。なお、時計ＩＣ上の時刻とは、時計ＩＣ（或いは時計ＩＣ時刻情報）に基づく時刻とは異なり、時計ＩＣ上で観念される時刻であり、秒未満の時刻も観念される。
【００１５】
また本発明は、前記時刻補正手段が、前記時刻差情報に基づく時刻差が１秒未満になるように該時刻差情報を補正するとともに、補正した分の時刻差を前記時計ＩＣに設定してもよい。ここで時刻差情報に基づく時刻差が余りにも大きくなり、時計ＩＣそのものの時刻が実時刻から大きく乖離してしまうことは、補正という性質上、好ましくない。これに対して本発明によれば、補正した時刻に対応するシステム時刻を変化させることなく、時計ＩＣそのものの時刻が実時刻から大きく乖離してしまうことを解消できる。同時に本発明によれば、時計ＩＣに時刻を設定する機会を必要最小限に抑制することができる。なお、係る補正は、具体的には例えばユーザ操作に基づいて行われるようにしてもよく、時計ＩＣ時刻情報に基づく時刻が実時刻から所定時刻以上乖離したり、時刻差情報に基づく時刻差が所定値よりも大きくなったりしたときに行われるようにしてもよい。
【００１６】
また本発明は、前記時刻補正手段が、前記時刻差情報を時間経過とともに所定の割合づつ次第に加算していってもよい。本発明によれば、時刻歩進の不連続が発生することを解消可能である。したがって本発明によれば、時刻制御で動作する外部装置の設計効率を向上させることができる。
【００１７】
また本発明は、さらに外部装置へ補正した時刻に対応するシステム時刻情報を出力した際に、該外部装置からの応答を監視する監視手段と、前記システム時刻情報を出力してから応答があるまでの遅延時間を算出する遅延時間算出手段とを備えるとともに、前記時刻補正手段がさらに前記遅延時間に基づき、前記外部装置が前記システム時刻情報を出力する時刻が前記実時刻になるように、前記システム時刻情報に基づく時刻を補正してもよい。本発明によれば、さらに時刻制御で動作する外部装置の出力端での動作を実時刻に同期させることができるため、これによっても時刻制御で動作する外部装置の設計効率を向上させることができる。
【００１８】
また本発明は、秒未満の情報を有しない時計ＩＣから取得した時計ＩＣ時刻情報に対して、さらに実時刻と、該実時刻に対応する前記時計ＩＣ上の時刻との差を示す秒以上の情報及び秒未満の情報で構成される時刻差情報を加算して時刻を補正することを特徴とする時計ＩＣの時刻補正方法である。
【００１９】
また本発明は、さらに前記時刻差情報に基づく時刻差が１秒未満になるように該時刻差情報を補正するとともに、補正した分の時刻差を前記時計ＩＣに設定してもよい。
【００２０】
また本発明は、さらに前記時刻差情報を時間経過とともに所定の割合づつ次第に加算していってもよい。
【００２１】
また本発明は、さらに外部装置へ補正した時刻に対応するシステム時刻情報を出力した際に、該外部装置からの応答を監視するとともに、前記システム時刻情報を出力してから応答があるまでの遅延時間を算出し、該遅延時間に基づき、前記外部装置が前記システム時刻情報を出力する時刻が前記実時刻になるように、前記システム時刻情報に基づく時刻を補正してもよい。
【発明の効果】
【００２２】
本発明によれば、秒未満の情報を有しない時計ＩＣに対する時刻の設定を極力回避しつつ、時刻歩進の不連続が発生しないように時計ＩＣに基づく時刻を補正するとともに、時刻制御で動作する外部装置の設計効率を向上させることが可能な時計ＩＣの時刻補正装置及び時計ＩＣの時刻補正方法を提供できる。
【発明を実施するための最良の形態】
【００２３】
以下、本発明を実施するための最良の形態を図面と共に詳細に説明する。
【実施例】
【００２４】
図１は、本実施例に係る時計ＩＣの時刻補正装置（以下、単に時刻補正装置と称す）１００の構成を示す図である。時刻補正装置１００は、ＣＰＵ１と、ＲＯＭ２と、ＲＡＭ３を有して構成されるマイコンシステムである。ＣＰＵ１は、ＲＯＭ２内に格納されたファームウェアに従って種々の処理を実行するための構成である。ＲＯＭ２はファームウェアやシステムを制御する上で必要な定数などのデータを格納するための構成であり、ＣＰＵ１とバスでつながっている。なお、ＲＯＭ２には、具体的には例えばＥＥＰＲＯＭやＵＶＥＰＲＯＭやマスクＲＯＭやフラッシュＲＯＭなど適宜のＲＯＭを適用してよい。ＲＡＭ３はＣＰＵ１の一時作業領域や動的データの保存領域を提供するとともに、ファームウェア以外の時刻制御用プログラムを格納するための構成であり、ＣＰＵ１とバスでつながっている。本実施例ではＲＡＭ３は電源供給がバッテリでバックアップされるスタティックＲＡＭで実現されている。なお、さらに高速アクセス可能な一時作業専用のダイナミックＲＡＭをＲＡＭ３と別に実装してもよい。
【００２５】
動作クロック４はＣＰＵ１を律動させる為の一定周波数の基準パルスを生成するための構成である。なお、動作クロックの精度は０.１％〜１.０％が一般的であり、動作クロック４の精度も同程度の精度となっている。時計ＩＣ５はバスやＩ２Ｃ等の通信線を介してＣＰＵ１と接続される。時計ＩＣ５は内部に水晶などの安定した特性の専用クロックを持っている。ＣＰＵ１は時計ＩＣ５から年月日時分秒曜といったデータの全部または一部の取得したり、時計ＩＣ５にこれらのデータの全部または一部を設定したり、時計ＩＣ５に対して０秒アジャストを行うこと等ができる。なお、一般的な時計ＩＣの精度は１〜５ｐｐｍ程度であり、時計ＩＣ５の精度も同程度の精度となっている。
【００２６】
入力回路６は他の外部装置等が発する電気信号をＣＰＵ１のＩ／Ｏポートやその他のＩ／Ｆへ仲介するための構成である。入力回路６には、具体的には例えばロジックＩＣを介してＣＰＵ１の入力ポートへ接続して二値信号を検知するものや、電圧変換バッファＩＣを介してＣＰＵ１のシリアルポートへ接続してシリアル通信を行うものや、保護回路を介してＡ／Ｄ変換ポートへ接続してアナログ量計測を行うものなど、ＣＰＵ１の入力可能な信号に合わせて各種の回路構成を適用してよい。なお時刻補正信号は、外部からこの入力回路６を経てＣＰＵ１に認知される。出力回路７は、ＣＰＵ１の発する信号を他の外部装置等へ仲介するための構成である。出力回路７には、具体的には例えばＣＰＵ１の出力ポートからロジックＩＣを介して二値信号を出力するものや、ＣＰＵのシリアルポートから電圧変換バッファＩＣを介してシリアル通信を行うものや、ＣＰＵのＤ／Ａ変換ポートから増幅回路を介してアナログ出力を行うものなど、ＣＰＵ１の出力可能な信号に合わせて各種の回路構成を適用してよい。
【００２７】
次に、図２を用いて時刻補正装置１００の機能ブロック図について詳述する。ＣＰＵ１はＲＯＭ２内のファームウェアに従って動作するが、本実施例ではこれにより図２に示す読取設定処理部１１と、システム機能処理部１２の２つの処理部が実現される。また本実施例では動作クロック４からＣＰＵ１に供給される動作クロックが２０ＭＨｚとなっており、ＣＰＵ１内部でこれを２５００逓倍し、これを元に１６ｂｉｔの１２５μsecのＦＲＣ（フリーランニングカウンタ）１４を構成する。このＦＲＣ１４は0000hに初期化された後、１２５μsec毎にインクリメント（＋１）されFFFFhに至った後0000hへ戻る動作を繰り返す。なお、これに限られず、ＦＲＣ１４は同等の機能が得られれば、例えばタイマ割込みとＲＡＭ３上でインクリメントする変数とでも実現できる。
【００２８】
ＦＲＣ１４はフリーランニングである為、その値１つだけでは意味を持たない。その一方で、ある時点でのＦＲＣ値と別のある時点でのＦＲＣ値の差からその間に要した相対時間を算出することができる。具体的には、変化したＦＲＣ値に１２５μsecをかけることで相対時間を算出できる。なお、本実施例の場合、相対時間を最大で８.１９２秒（１２５μsec×６５５３６）まで測定することができる。本実施例では、読取設定処理部１１は時計ＩＣ時刻以外にＦＲＣ値も読み取る。また、本実施例ではシステム時刻を生成する為に複数の情報を元にする為、これらの情報の格納場所をシステム時刻関連情報格納場所（以下、単に関連情報格納場所とも称す）１３としている。なお、上記の処理部１１、１２を独立したハードウェアで設計してもよい。但し、一般的には係る処理部はＣＰＵ１、ＲＯＭ２及びＲＡＭ３等で構成されたマイコンシステムの一部で実現したほうが合理的である。この場合、上記の処理部１１、１２は割込みルーチンやタスクやスレッドといったものに相当する。同様に、関連情報格納場所１３も独立したハードウェアで設計してもよいが、マイコンシステムの一部で実現した方が合理的である。
【００２９】
図３は、ＦＲＣ値の変動と時刻の歩進の関係を示す図である。図３では誤差に起因して実時刻と時計ＩＣ時刻がずれている状況を示している。また実時刻及び時計ＩＣ時刻の目盛りは秒単位となっている。前述の通り、ＦＲＣ値は相対的な時間を測定するものであり、図３に示すようにＦＲＣ値がどの程度変化したかを把握することで相対時間を算出できる。図４は、図３に示す区間Ａの拡大図である。この拡大図は、時刻が１秒経過する部分を拡大して示したものとなっている。図４で新たに表示している縦方向の矢印は、読取設定処理部１１が時計ＩＣ５に時計ＩＣ時刻を読み出しにいったタイミングを示している。図４に示すように、本実施例では時計ＩＣ時刻は１秒間に約１６〜１７回、読み出されている。
【００３０】
このように時間ＩＣ時刻を読み出すために、読取設定処理部１１は図５に示すフローチャートに基づく動作を繰り返し行う。まず読取設定処理部１１は、時計ＩＣ時刻を読み出す。同時にこの時点でのＦＲＣ値も読み出す（ステップＳ１１）。続いて読取設定処理部１１は、前回ステップＳ１１で読み出した時計ＩＣ時刻と、今回ステップＳ１１で読み出した時計ＩＣ時刻とを比較し、変化があるか否かを判定する（ステップＳ１２）。否定判定であればステップＳ１１に戻る。肯定判定であれば、読取設定処理部１１は時計ＩＣ時刻「Ｔｉ（時計ＩＣ時刻情報）」と、時計ＩＣ時刻「Ｔｉ」を読み出した時のＦＲＣ値「ＣＦＲＣ」を関連情報格納場所１３に格納する（ステップＳ１３）。ステップＳ１３の後にはステップＳ１１に戻る。このようにして読取設定処理部１１は、基本的に時計ＩＣ５の時刻歩進の監視を行うとともに、時計ＩＣ時刻「Ｔｉ」と、それを読み出した時のＦＲＣ値「ＣＦＲＣ」を関連情報格納場所１３に格納する。
【００３１】
次に関連情報格納場所１３における時刻の取扱いについて詳述する。前回関連情報格納場所１３へ時計ＩＣ時刻を格納した時のＦＲＣ値と、今回のＦＲＣ値の差から、今回時計ＩＣ５が「時計ＩＣ５上で」１秒歩進するのにかかった相対時間を得ることができる。但し、このとき処理部１１の実行タイミングに起因するばらつきや動作クロック４の誤差などから、相対時間は理論通りの８０００にはならない。これに対して、過去Ｎ回分の相対時間を加重平均すればばらつきを排除できる。またこのときＮを大きくするほど、精度を向上させることができる。さらにＮを２ｎ（例えば３２や２５６など）に設定すれば、リングバッファ状にして加算平均を計算しやすくなるので好適である。本実施例ではこれによって得られたＦＲＣ１秒平均値を「Ｃ１ｓＡｖ」とする。
【００３２】
図６は、関連情報格納場所１３に格納されている各種の情報を模式的に示す図である。上述のような処理が繰り返されると、関連情報格納場所１３では、最後に読み出された時計ＩＣ時刻「Ｔｉ」と、そのＴｉを読み出した時のＦＲＣ値「ＣＦＲＣ」と、ＦＲＣ１秒平均値「Ｃ１ｓＡｖ」が次々と更新されていく。また、関連情報格納場所１３には、実時刻と時計ＩＣ５上の時刻との差を示す時刻差情報「Ｔｇ」が格納されている。時刻差情報「Ｔｇ」は、Ｔｉと同様な「年月日時分秒」からなる「Ｔｇｔ」と、ＣＦＲＣと同様なＦＲＣ値からなる「Ｔｇｃ」とで構成される。これらは、秒以上の差情報と秒未満の差情報を意味する。システムの実行開始時においてＴｇは０である。すなわち、時刻合せをきちんとしてあればその時点ではＴｉと実時刻は同一である筈だからである。しかしながら、時計ＩＣ５の誤差によりＴｉは実時刻から少しずつ次第にずれていく。これに対してある時点で、時刻補正信号の入力を認知したとする。このある時点が実時刻で正午であり、さらに時計ＩＣ時刻が約１.５秒遅れている状態である場合には、例えば次のようなシステム時刻関連情報のデータが関連情報格納場所１３に格納されている。すなわち、係る場合には例えばＴｉ＝11:59:58、ＣＦＲＣ＝4000h、Ｃ１ｓＡｖ＝1F40h、ＦＲＣ＝4FA0h、Ｔｇｔ＝０、Ｔｇｃ＝０になっている。なお、読取設定処理部１１は、時刻補正信号の入力を認知した際のＦＲＣ値も関連情報格納場所１３に格納する。
【００３３】
この場合、Ｔｉが11:59:58になってからＦＲＣ値が4000hから4FA0hに変化したことを意味するので、ＦＲＣ値は0FA0h分増えたことになる。これにより、Ｔｇを、（12:00:00#0000h）―（11:59:58#0FA0h）＝ （00:00:01#0FA0h）と算出するとともに、Ｔｇｔ＝00:00:01、Ｔｇｃ＝0FA0h、と算出することができる。これは、時計ＩＣ時刻に対して秒以上の単位で１秒、秒未満の単位でＦＲＣ値0FA0h、を加算すると実時刻に換算されたシステム時刻を算出できることを意味する。なお、＃の右側の16bit数値はｍｏｄ（Ｃ１ｓＡｖ）で扱う。また相対時間は、0FA0h／Ｃ１ｓＡｖで約0.5秒となる。システム機能処理部１２はこのようにしてシステム時刻で実時刻を得ることができる。またこれにより、時計ＩＣ５に時刻を設定することなく時刻補正を実現できる。本実施例では関連情報格納場所１３は具体的なハードウェア資源としてはＲＡＭ３と、ＲＡＭ３に格納された時刻制御用プログラムと、ＣＰＵ１とで実現されており、この関連情報格納場所１３で時刻補正手段が実現されている。
【００３４】
次に時刻補正の一具体例を時刻補正モデル１として示した図７を用いて、時刻補正について詳述する。先述の通り、時計ＩＣ時刻に時刻差情報Ｔｇを加算した値（時計ＩＣ時刻＋Ｔｇ）を現在のシステム時刻として取り扱う。ｔ０は時刻補正装置１００を実装した時刻制御機器が動作を開始した時刻である。この時点で時計ＩＣ時刻は実時刻と同一であるとする。すなわち、時刻差情報Ｔｇは±０であるとする。時刻が経過するにつれて時計ＩＣ時刻は誤差の為に実時刻から少しずつ次第にずれていく。そして実時刻ｔ１において時刻補正を実行したとする。このとき、一般的な時刻補正では、時計ＩＣ５そのものに対して実時刻ｔ１と同一の時刻（例えば12:00:00）を設定する。これに対して、本実施例では実時刻ｔ１の時点での時計ＩＣ時刻およびシステム時刻関連情報から時刻差情報Ｔｇ１を算出する。そして、これ以降はＴｇ＝Ｔｇ１となる。システム内で参照される現在のシステム時刻は「時計ＩＣ時刻＋Ｔｇ」である為、これにより時計ＩＣ５に対して設定を行わなくても現在のシステム時刻が補正される。さらに時刻経過とともに誤差が累積した状態で、実時刻ｔ２において時刻補正を実行したとする。このときにも、同様に時計ＩＣ時刻およびシステム時刻関連情報からＴｇ２を算出する。これにより、これ以降はＴｇ＝Ｔｇ２となる。このようにしてＴｇに対して補正を行うことによって時計ＩＣ５に時刻を設定しなくても時刻補正が可能になる。
【００３５】
図８は、時計ＩＣ５の誤差が一定ではなく、時刻の経過とともに正方向と負方向に変化する場合の時刻補正の具体例を時刻補正モデル１´として示す図である。図８では、最初、正方向に発生した誤差がその後に負方向に転じ、ｔ１とｔ２の間で累積誤差が負値になる状況を示している。図８は、係る状況の場合でも図７で示した時刻補正モデル１と同様に、時刻補正を行う毎に時刻差情報Ｔｇを補正することにより、時計ＩＣ５への時刻設定を行わずに時刻補正を行うことができることを示している。
【００３６】
ところで、図７で示した時刻補正モデル１では、時刻差情報Ｔｇに対して補正を行うことにより時計ＩＣ５に時刻を設定しなくても時刻補正が可能であることを説明したが、時刻差情報Ｔｇの絶対値が徐々に増加して時計ＩＣ時刻が実時刻から大きく乖離するのは好ましい状態ではない。すなわち理論上は、ＴｉとＴｇがどのようになっていても動作は可能であるが、誤差の補正という性格上、Ｔｇが余りにも大きくなって時計ＩＣ時刻が実時刻から乖離するのは好ましくはない。このため、次に図９に意図的に時計ＩＣ時刻と実時刻との乖離状態を解消する旨の指示があった場合の動作の一具体例を時刻補正モデル２として示す。なお、この時刻補正モデル２では実際には補正動作は行われず、乖離状態の解消のみが行われる。また、乖離状態を解消する旨の指示は、例えば時刻制御機器を手動でスタンバイするときなど、人手で操作するときに生成されるようにしたほうが好ましい。但しこれに限られず、例えば時計ＩＣ時刻が実時刻から所定時刻以上乖離したり、Ｔｇが所定値よりも大きくなったりしたときに乖離状態を解消する旨の指示が生成されるようにしてもよい。
【００３７】
図９に示すように、まず実時刻ｔｓにおいて乖離状態の解消処理が行われるとする。また実時刻ｔｓ直前の時刻差情報ＴｇをＴｇｂ、直後の時刻差情報ＴｇをＴｇａとする。ここで行われる解消処理は時刻差情報Ｔｇの乖離（絶対値の増大）を解消するのが目的である。このため本実施例では係る目的を達成すべく、処理後のＴｇａが１秒未満になるように補正するとともに、補正した分の時刻差を時計ＩＣ５に設定する。具体的には例えば、実時刻11:30:00においてこの解消処理が行われるとする。このとき、時計ＩＣ時刻は実時刻に対して６.０秒進んでいるとし、Ｔｇｂは−２.５秒であるとする。この場合、解消処理前における現在のシステム時刻は実時刻に対して３.５秒進んで（＋６.０−２.５＝＋３.５）いることになる。この状態で実時刻が11:30:00になった時、時計ＩＣ時刻は11:30:06、現在のシステム時刻は11:30:3.5となる。ここで解消処理を行うが、解消処理後のＴｇａが１秒未満になるようにする為、Ｔｇｂを−２.５秒から−０.５秒に補正するとともに、さらに補正した分の時刻差−２秒を時計ＩＣ５に設定して、時計ＩＣ時刻を11:30:06から11:30:04に設定する。これにより、現在のシステム時刻に変化を与えることなく、乖離状態を解消できる。なお、この乖離状態の解消処理は関連情報格納場所１３と時計ＩＣ５への設定で行われる。
【００３８】
ところで、上記までに説明した時刻補正は、時計ＩＣ５への時刻設定頻度を低減する意味では効果があるが、時刻歩進の不連続の発生を解消することはできない。これに対して本実施例では、上述したＴｇへの補正を一度に行わず、時間をかけてゆっくりと変更することによって時刻歩進の不連続発生を解消する。図１０は時刻歩進の不連続発生を解消する様子を模式的に示す図である。例えば、実時刻に対して時計ＩＣ時刻が１秒遅れている場合、時計ＩＣ５の歩進を少し速めることで数秒かけて実時刻に追いつかせることができる。具体的には図１０（ａ）に示すように時計ＩＣ５の１秒を０.９秒にすれば、実時間１０秒で補正可能である。また、これを０.９９秒にすれば１００秒で補正が終了することになるので、違和感なく自然に補正を行える。一方、実時刻に対して時計ＩＣ時刻が１秒進んでいる場合には、図１０（ｂ）に示すように例えば時計ＩＣ５の一秒を１.１秒にすれば、実時間１１秒で補正可能である。
【００３９】
次に時刻歩進の不連続発生の解消処理を図１１に示す時刻補正モデル３を用いて詳述する。時刻補正を行うときにＴｇを一度に変化させると、図１１（ａ）に示すように、前述した補正モデル１では現在のシステム時刻（時計ＩＣ時刻＋Ｔｇ）が不連続になることは明らかである。これに対してＴｇをｔ１で一度に変化させず、ｔ１Ｓからｔ１Ｅの間でなだらかに変化させると図１１（ａ）に示すＢ部は図１１（ｂ）に示す時刻補正モデル３のようになる。ここではＴｇを０からＴｇ１へ次第に変化させることで、すなわち、時計ＩＣ時刻にＴｇを時間経過とともに所定の割合づつ次第に加算していくことで、時刻歩進の不連続発生を解消している。
【００４０】
但し、なだらかにＴｇを変化させる間の時間をｔＡとした場合、これを極端に長くとるとこの時間の間にも時計ＩＣ５の誤差が累積する。また、ｔＡの時間帯では精度の低い動作クロック４を用いて計時を行うので、ｔＡは時計ＩＣ５と動作クロック４の精度を考慮して算出する。例えば、時計ＩＣ５の精度εＩＣが±１ppmで、動作クロック４の精度εＣＬが±１％であるときに、１日１回時刻補正をする（補正間隔Ｔ＝６０＊６０＊２４ｓｅｃ）場合には、ｔＡ＊εＣＬ  ＜ Ｔ＊εＩＣとなるべきなので、ｔＡ  ＜ Ｔ＊ (εＩＣ ／ εＣＬ )より、ｔＡの最大値として８.６４秒が目安になる。これにより、時刻歩進の不連続発生を解消でき、その結果、時刻制御で動作する外部装置の設計効率を向上させることができる。なお、この時刻歩進の不連続発生を解消する処理は関連情報格納場所１３で行われる。
【００４１】
次に、遅延時間を把握するために出力回路７からの出力を入力回路６にフィードバックする方法について図１２を用いて詳述する。フィードバックは、例えば図１２（ａ）に示すように時刻補正装置１００だけで完結するものと、図１２（ｂ）に示すように外部装置２０を制御してその応答を得るものとが考えられる。ここでは、図１２（ｂ）に示すような外部装置２０にリレーを使用した環境を想定する。時刻補正装置１００にはフィードバックを行って遅延を把握する為に、専用の測定モードが実装されている。このモードに設定されると時刻補正装置１００ではＣＰＵ１の特定のポートが１秒間隔でＯｎ／Ｏｆｆされる。
【００４２】
図１３は、フィードバックされるまでの間にシステム時刻が遅延する様子を模式的に示す図である。時刻補正が正常に動作している場合、実時刻（Ａ）とシステム時刻（Ｂ）は同じである。そして、図１７で前述した通り、システム時刻をシステム機能処理部１２が認知するまで、システム機能処理部１２で実行される処理のサイクルタイム分だけ遅延が生じ（Ｂ−Ｃ間遅延）、さらにリレーのコイルに電圧が印加されてから実際に接点が閉じるまでの間にも遅延が生じる（Ｃ−Ｄ間遅延）。加えて、リレー接点出力（Ｄ）とＣＰＵ１のポート入力（Ｅ）の間で、システム機能処理部１２で実行される処理のサイクルタイム分だけ遅延が生じる（Ｄ−Ｅ間遅延）。
【００４３】
このとき、システム機能処理部１２はＣＰＵ１のポート入力（Ｅ）を監視することでシステム時刻がフィードバックされるまでの累積遅延（Ｚ）を計測することができる。本実施例ではシステム機能処理部１２で監視手段及び遅延時間算出手段が実現されている。また、このようにして計測された累積遅延（Ｚ）を、Ｔｇから動作目標時刻からの累積遅延（Ｚ）が０になるように減算することで、外部装置２０の出力端での動作を実時刻に同期させることができるようになる。これにより、時刻制御で動作する外部装置２０の設計効率を向上させることができる。なお、Ｔｇから計測された累積遅延（Ｚ）を減算する処理は関連情報格納場所１３で行われ、このときにシステム時刻が遅延する様子は図１４に示すようになる。以上により、秒未満の情報を有しない時計ＩＣ５に対する時刻の設定を極力回避しつつ、時刻歩進の不連続が発生しないように時計ＩＣ５に基づく時刻を補正するとともに、時刻制御で動作する外部装置の設計効率を向上させることが可能な時刻補正装置１００及び時計ＩＣ５の時刻補正方法を実現できる。
【００４４】
上述した実施例は本発明の好適な実施の例である。但し、これに限定されるものではなく、本発明の要旨を逸脱しない範囲内において種々変形実施可能である。
【図面の簡単な説明】
【００４５】
【図１】時刻補正装置１００の構成を示す図である。
【図２】時刻補正装置１００の機能ブロック図である。
【図３】ＦＲＣ値の変動と時刻の歩進の関係を示す図である。
【図４】図３に示す区間Ａの拡大図である。
【図５】読取設定処理部１１が時間ＩＣ時刻を読み出すために行う動作をフローチャートで示す図である。
【図６】関連情報格納場所１３に格納されている各種の情報を模式的に示す図である。
【図７】時刻補正の一具体例を時刻補正モデル１として示す図である。
【図８】時刻の経過とともに正方向と負方向に変化する場合の時刻補正の具体例を時刻補正モデル１´として示す図である。
【図９】時計ＩＣ時刻と実時刻との乖離状態を解消する旨の指示があった場合の動作の一具体例を時刻補正モデル２として示す図である。
【図１０】時刻歩進の不連続発生を解消する様子を模式的に示す図である。
【図１１】不連続発生の解消処理を時刻補正モデル３として示す図である。
【図１２】出力回路７からの出力を入力回路６にフィードバックする方法を模式的に示す図である。
【図１３】フィードバックされるまでの間にシステム時刻が遅延する様子を模式的に示す図である。
【図１４】実時刻との同期が行われたときに、システム時刻が遅延する様子を模式的に示す図である。
【図１５】時刻制御機器が備える一般的な時刻補正装置１００Ｘの機能ブロックを示す図である。
【図１６】一般的な時刻補正を模式的に示す図である。
【図１７】時計ＩＣ時刻が遅延する様子を模式的に示す図である。
【図１８】時刻歩進の不連続が発生する様子を模式的に示す図である。
【符号の説明】
【００４６】
１  ＣＰＵ
２  ＲＯＭ
３  ＲＡＭ
４  動作クロック
５  時計ＩＣ
６  入力回路
７  出力回路
１１  時計ＩＣ時刻読取設定処理部
１２  システム機能処理部
１３  システム時刻関連情報格納場所
１４  ＦＲＣ
１００  時計ＩＣの時刻補正装置
【図１】
2008111678.tif 000003
【図２】
2008111678.tif 000004
【図３】
2008111678.tif 000005
【図４】
2008111678.tif 000006
【図５】
2008111678.tif 000007
【図６】
2008111678.tif 000008
【図７】
2008111678.tif 000009
【図８】
2008111678.tif 000010
【図９】
2008111678.tif 000011
【図１０】
2008111678.tif 000012
【図１１】
2008111678.tif 000013
【図１２】
2008111678.tif 000014
【図１３】
2008111678.tif 000015
【図１４】
2008111678.tif 000016
【図１５】
2008111678.tif 000017
【図１６】
2008111678.tif 000018
【図１７】
2008111678.tif 000019
【図１８】
2008111678.tif 000020