説明

指針式電子時計

【課題】 ステッピングモータの駆動命令を出力する側と、駆動命令を受けて実際に駆動パルスを出力する側とで個別の制御が行われる構成において、複数のステッピングモータを早送り駆動する場合に、早送り駆動を速やかに完了できるようにする。
【解決手段】
早送り駆動の速度を決定する際に、複数のステッピングモータの駆動信号(D1,D2)が重ならないよう後方の駆動信号(D2)の出力タイミングがずらされることで、ステッピングモータの最大速度を超えるような時間間隔(T1)で駆動命令(C2)が入力されて、この駆動命令(C2)が破棄されるような状況を条件に含めて、指定されたステップ数の早送り駆動をより短時間で遂行できる駆動命令の出力速度(X)を決定する。

【発明の詳細な説明】
【技術分野】
【0001】
この発明は、複数の指針を複数のステッピングモータで駆動する指針式電子時計に関する。
【背景技術】
【0002】
以前より、指針式の電子時計において、指針による表示内容を変更する際などに、複数の指針を各々に指定されたステップ数だけ早送りで駆動することがある。
【0003】
また、特許文献1には、1つのモータのみを早送りする場合と、2つのモータを同時に早送りする場合とで、モータの駆動速度を変更するようにした指針式電子時計が開示されている。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特開昭60−162980号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
電子時計においてステッピングモータを駆動する際には、適宜設計された波形の駆動パルスを各ステッピングモータへ出力しなければならなかったり、複数の駆動パルスが重なって同時に出力されないよう出力タイミングを調整したり、ステッピングモータに設定された最大速度を超えないよう過度な駆動パルスの出力を禁止したりする制御が必要となる。
【0006】
そのため、複数のステッピングモータを駆動する場合には、駆動処理の全てを1系統の制御(例えばソフトウェア制御)により実現するのではなく、ソフトウェア制御では大まかにステッピングモータの駆動命令を出力する処理まで行い、駆動パルスの実際の出力やその他の必要な調整は別系統(例えばハードウェア処理)で処理させるように構成することがある。
【0007】
このような構成とした場合、駆動パルスが実際に出力されている期間をソフトウェア側が直接的に監視することができない。そのため、何ら工夫がないと、複数のステッピングモータを早送りで駆動する場合に、別系統の処理によって駆動パルスの出力タイミングが調整されて、次のような課題が生じることがある。
【0008】
すなわち、他の駆動パルスと出力期間が重ならないように、或る駆動パルスの出力タイミングが後ろに大きくずらされる調整が行われたとする。その結果、次に、このステッピングモータに対する駆動命令が入力されたときに、前回の駆動パルスの出力からこの駆動命令の入力までの時間長が非常に短くったとする。そして、この時間長がステッピングモータの最大速度を超過しないように設定された間隔より短くなった場合に、過度な駆動パルスの出力を行わないために、この駆動命令が破棄される。この場合、ソフトウェア側が想定したステッピングモータの駆動速度よりも実際の駆動速度が遅くなるという課題が生じる。
【0009】
この発明の目的は、ステッピングモータの駆動命令を出力する側と、駆動命令を受けて実際に駆動パルスを出力する側とで個別の制御が行われる構成において、複数のステッピングモータを早送り駆動する場合に、早送り駆動を速やかに完了することのできる指針式電子時計を提供することにある。
【課題を解決するための手段】
【0010】
上記目的を達成するため、請求項1記載の発明は、
複数の指針と、
前記複数の指針を駆動する複数のステッピングモータと、
前記複数のステッピングモータの駆動命令を出力する制御部と、
前記制御部から前記駆動命令を受けて当該駆動命令により指定されたステッピングモータに駆動信号を出力する駆動処理部と、
を備え、
前記駆動処理部は、
異なるステッピングモータに対する複数の駆動命令を受けた場合に、各ステッピングモータの駆動信号が重ならないようにタイミングをずらして駆動信号を出力する逐次出力手段と、
1つのステッピングモータに対して前回の駆動信号の出力から次の駆動命令を受け付けるまでの時間長を制限して、当該ステッピングモータに設定された最大速度を超えた駆動が行われないようにする速度保障手段と、
を有し、
前記制御部は、
前記複数のステッピングモータのうち駆動対象の2個以上のステッピングモータを指定されたステップ数だけ早送り駆動する場合に、当該駆動対象の2個以上のステッピングモータの駆動命令の出力速度を決定する速度決定手段と、
前記速度決定手段により決定された出力速度に従って駆動命令を出力する実行手段と、
を有し、
前記制御部の前記速度決定手段は、
前記逐次出力手段により駆動信号の出力タイミングがずらされることで前記速度保障手段により次の駆動命令が正常に受け付けられない状況を条件に含めて、前記指定されたステップ数の早送り駆動をより短時間で遂行できる前記駆動命令の出力速度を決定することを特徴としている。
【0011】
請求項2記載の発明は、請求項1記載の指針式電子時計において、
前記制御部の前記速度決定手段は、
前記駆動対象の2個以上のステッピングモータの駆動命令を共に第1の速度で出力した場合に、前記速度保障手段により次の駆動命令が正常に受け付けられない場合が生じるか判別する判別手段と、
前記駆動対象の2個以上のステッピングモータの駆動命令が共に同一速度の出力で常に受け付けられる前記第1の速度より遅い第2の速度を算出する候補速度算出手段と、
前記駆動対象の2個以上のステッピングモータを共に駆動する期間に、前記第1の速度で駆動命令を出力する場合と、前記第2の速度で駆動命令を出力する場合のどちらが前記指定されたステップ数の早送り駆動を早く終えるか比較する比較手段と、
を備え、
前記判別手段の判別結果または前記比較手段の比較結果に基づいて前記駆動命令を共に出力する周期を前記第1の速度または前記第2の速度に決定することを特徴としている。
【0012】
請求項3記載の発明は、請求項2記載の指針式電子時計において、
前記第1の速度は、前記駆動対象の2個以上のステッピングモータにそれぞれ設定されている最大速度のうち最も遅い最大速度であり、
前記第2の速度は、当該第2の速度に対応する周期が、前記第1の速度に対応する周期に前記駆動対象の2個以上のステッピングモータに出力される各駆動信号の出力幅をそれぞれ加えた時間長となる速度である
ことを特徴としている。
【0013】
請求項4記載の発明は、請求項2又は3に記載の指針式電子時計において、
前記比較手段は、
前記駆動対象の2個以上のステッピングモータのうち1つのステッピングモータのみが早送り駆動を完了していない期間については、当該1つのステッピングモータを当該ステッピングモータに設定された最大速度で駆動した場合の時間を計算して比較を行うことを特徴としている。
【0014】
請求項5記載の発明は、請求項2〜4の何れか一項に記載の指針式電子時計において、
前記比較手段は、
前記駆動対象の2個以上のステッピングモータのうち、前記次の駆動命令が正常に受け付けられない場合が生じるステッピングモータについては、前記第1の速度の半分の速度で駆動されるものとして、早送り駆動にかかる時間を計算することを特徴としている。
【発明の効果】
【0015】
本発明に従うと、駆動処理部による実際の駆動信号の出力タイミングを制御部が直接に監視できなくても、駆動処理部により駆動命令が正常に受け付けられなくなる状況を考慮して複数のステッピングモータを共に早送り駆動する周期が決定される。それゆえ、この周期で駆動命令が出力されることで、指定されたステップ数の早送りを速やかに遂行することができる。
【図面の簡単な説明】
【0016】
【図1】本発明の実施形態の指針式電子時計の全体構成を示すブロック図である。
【図2】最大速度で2つのモータに駆動命令を出力した場合の動作を説明するタイムチャートである。
【図3】速度を落として2つのモータに駆動命令を出力した場合の動作を説明するタイムチャートである。
【図4】CPUにより実行される針早送り速度決定処理の制御手順を示すフローチャートの第1部である。
【図5】同、針早送り速度決定処理のフローチャートの第2部である。
【図6】同、針早送り速度決定処理のフローチャートの第3部である。
【図7】CPUにより実行される針早送り処理の制御手順を示すフローチャートである。
【発明を実施するための形態】
【0017】
以下、本発明の実施の形態を図面に基づいて説明する。
【0018】
図1は、本発明の指針式電子時計1の全体構成を示すブロック図である。
【0019】
この実施形態の指針式電子時計1は、複数の指針(秒針2、分針3、時針4)を回転させて時刻を表示する電子時計である。この指針式電子時計1は、上記複数の指針(2〜4)と、秒針2を駆動する第1モータ7と、分針3と時針4を連動させて駆動する第2モータ8と、第1モータ7と第2モータ8の回転運動を各指針(2〜4)に伝達する輪列機構9と、第1モータ7と第2モータ8に駆動パルスをそれぞれ出力するモータドライバ5,6と、時計全体の制御を行う制御部としてのCPU(中央演算処理装置)10と、CPU10に作業用のメモリ空間を提供するRAM(Random Access Memory)11と、CPU10が実行する制御プログラムや制御データが格納されたROM(Read Only Memory)12と、複数の操作ボタンを有し外部から操作指令を入力する操作部13と、現在時刻の計数を行う計時回路14と、計時用のクロック信号や動作クロック信号を生成する発振回路16および分周回路15と、CPU10からモータの駆動命令を受けてモータドライバ5,6に駆動信号を出力する駆動信号処理部(駆動処理部)20等を備えている。
【0020】
第1モータ7と第2モータ8は、駆動パルスを受けて1ステップずつ回転するステッピングモータである。第1モータ7と第2モータ8には、それぞれ安定した回転が得られる範囲で最も速い回転速度となる最大速度がそれぞれ設定されている。最大速度は、モータの構造や輪列機構9の駆動に必要なトルク等によって決定される。この実施形態では、第1と第2モータ7,8の最大速度が、次のように設定されている。
第1モータ7 ・・・ 最大速度x1(例えば60pps(パルス/秒))
第2モータ8 ・・・ 最大速度x2(例えば70pps)
【0021】
モータドライバ5,6は、駆動信号処理部20からの駆動信号を所定の電圧レベルに変換して第1と第2のモータ7,8に出力する。
【0022】
駆動信号処理部20は、CPU10から第1および第2モータ7,8の駆動命令をそれぞれ受けて、駆動命令に応じて第1モータ7又は第2モータ8の駆動信号をモータドライバ5又は6に出力する回路である。ハードウェア処理によりこれらの処理を実行する回路である。
【0023】
駆動信号処理部20には、駆動パルス波形データ21の記憶部と、逐次出力制御部(逐次出力手段)22と、モータ最大速度保障部(速度保障手段)23とが設けられている。
【0024】
駆動パルス波形データ21は、第1および第2モータ7,8に出力される駆動パルスの信号波形を規定するデータである。駆動信号処理部20は、第1モータ7の駆動命令が入力したときには、第1モータ7に対応する波形データに基づいて駆動信号を生成および出力し、第2モータ8の駆動命令が入力したときには、第2モータ8に対応する波形データに基づいて駆動信号を生成および出力する。駆動パルス波形データ21の各波形データは、対応する第1又は第2モータ7,8を低い消費電流で且つ安定的に駆動できるようにそれぞれ最適設計されたものである。また、指針式電子時計1の状態変化等に応じて常に最適な駆動パルスが出力されるように、指針式電子時計1の状態変化等に応じた複数種類の波形データが含まれている。
【0025】
第1および第2モータ7,8の各々の駆動信号のパルス幅(始端から終端までの時間長)を、次のように記す。パルス幅は、使用されるパルス波形の種類によって変化する場合もある。
第1モータ7の駆動パルス ・・・ パルス幅a(例えば4〜6msec)
第2モータ8の駆動パルス ・・・ パルス幅b(例えば3〜5msec)
【0026】
逐次出力制御部22は、二つのモータの駆動信号をほぼ同時に入力した場合、或いは、一つのモータの駆動信号の出力中に他のモータの駆動命令を入力した場合に、2つの駆動信号が同一期間に重なって出力されないように、駆動信号の出力タイミングを調整する回路である。例えば、複数のモータの駆動命令を同時期に入力した場合には、後に入力した駆動命令を待機させ、先に入力した駆動命令に基づく駆動信号の出力が完了したタイミングで、後に入力した駆動命令に基づく駆動信号の出力処理を開始させる。
【0027】
モータ最大速度保障部23は、第1および第2モータ7,8にそれぞれ設定された最大速度を超えるような駆動が行われないように、CPU10からの過度の駆動命令の入力を禁止する制御を行う。具体的には、一つのモータに駆動信号を出力したタイミングから同一のモータに対する次の駆動命令の入力までの時間をカウントし、この時間がモータの最大速度に対応する周期より短くなっていた場合に、この駆動命令を受け付けずに破棄する。駆動命令が破棄されたときには、CPU10に駆動命令の入力不可の情報が通知されて、CPU10側でこれを認識することができる。
【0028】
次に、上記構成の指針式電子時計1の動作について説明する。
【0029】
[時刻表示処理]
時刻表示中は、第1モータ7および第2モータ8の駆動速度は、各々に設定された最大速度に比べて非常に遅い。CPU10から所定周期で第1モータ7の駆動命令および第2モータ8の駆動命令が出力され、この駆動命令に基づいて駆動信号処理部20からモータドライバ5,6に駆動信号がそれぞれ出力される。そして、例えば第1モータ7は1secの周期で1ステップずつ駆動され、第2モータ8は10secの周期で1ステップずつ駆動される。
【0030】
第1モータ7の駆動命令と第2モータ8の駆動命令がほぼ同時に出力された場合には、駆動信号処理部20の逐次出力制御部22の制御によって第2モータ8の駆動信号の出力タイミングがずらされて、第1モータ7の駆動信号の出力が完了してから第2モータ8の駆動信号が出力される。この制御により、2個のモータドライバ5,6から同時に駆動電流が出力されて一時的に負荷が過大になることが回避される。
【0031】
[針早送り処理の概要]
図2には、最大速度で2つのモータに駆動命令を出力した場合の動作を説明するタイムチャートを、図3には、速度を落として2つのモータに駆動命令を出力した場合の動作を説明するタイムチャートを、それぞれ示す。図2と図3において、C1,C2がCPU10から出力される駆動命令、D1,D2が駆動信号処理部20から出力される駆動信号である。
【0032】
例えば、指針(2〜4)を0時0分0秒の位置まで帰零させたり、帰零状態から現在時刻の位置まで移動させる場合などに、第1モータ7と第2モータ8を指定されたステップ数だけ早送りする針早送り処理が実行される。
【0033】
第1モータ7と第2モータ8を早送り駆動する場合、第1モータ7と第2モータ8の駆動命令は、駆動制御を容易にするため共に同一速度(すなわち同一周期)で出力されるように制御される。
【0034】
ここで、図2に示すように、駆動命令C1,C2の出力速度Xを、第1および第2モータ7,8の最大速度x1,x2のうち遅い方にしたとする。例えば、第1モータ7の最大速度x1が60pps、第2モータ8の最大速度x2が70ppsとすれば、駆動命令C1,C2の出力速度を“X=x1=60pps”、その周期を“1/X=(1/60)sec”とする。
【0035】
この場合、第1モータ7側では、駆動命令C1の直後に駆動信号D1が出力されるので、駆動信号D1の出力から次の駆動命令C1が入力されるまでの時間長は“1/X”となり、速度Xでの駆動が実現される。
【0036】
一方、第2モータ8側では、駆動命令C2の入力時に第1モータ7の駆動信号D1が出力されているため、逐次出力制御部22の制御によって、駆動信号D2の出力タイミングか後方にずらされる。そのため、この駆動信号D2の出力から次の駆動命令C2が入力されるまでの時間長T1は少し短くなって、時間長“1/X−a+ε”となる。ここで、aは、第1モータ7の駆動信号D1のパルス幅、εは駆動命令C1と駆動命令C2の出力タイミングの差である。
【0037】
そして、この時間長“1/X−a+ε”が、パルス幅の大きなパルス波形が選択されている場合などに、第2モータ8の最大速度の周期“1/x2=(1/70)sec”より短くなることがある。また、実際の制御動作では、CPU10の制御に比較的に大きな頻度でタイムラグが発生するため、その影響によっても短くなることがある。この場合、モータ最大速度保障部23の制御によって、次の駆動命令C2の入力が禁止されて破棄される。そのため、この駆動命令C2に応じた駆動信号D2aは出力されず、第2モータ8は二倍の周期“2/X”で1ステップずつ駆動されることになる。
【0038】
次に、図3に示すように、駆動命令C1,C2の出力速度を、駆動命令C2の破棄が回避される遅い速度Yにしたとする。この出力速度Yは、その周期“1/Y”が第1および第2モータ7,8のうち最も遅い最大速度の周期“1/X”に第1および第2モータ7,8の各駆動信号のパルス幅a,bをそれぞれ加えた周期“1/X +a +b”となる速度である。このような出力速度Yとした場合、駆動命令C1,C2がどのように出力されても、また、CPU10の制御にパルス幅b程度のタイムラグが発生しても、モータ最大速度保障部23により駆動命令C1,C2が破棄されることがほぼ生じなくなる。
【0039】
例えば、図3に示すように、駆動命令C1,C2が周期“1/Y”で出力されると、逐次出力制御部22の制御により第2モータ8の駆動信号D2の出力タイミングか後方にずらされても、第2モータ8の前回の駆動信号D2の出力から次の駆動命令C2の入力までの時間長T2は“1/X +b +ε”となる。この時間長T2は、第2モータ8の最大速度の周期“1/x2”より短くならない。また、前回の駆動命令C1,C2の出力が、CPU10の制御のタイムラグによりパルス幅b程度遅れた場合でも、前回の駆動信号D2の出力から次の駆動命令C2の入力までの時間長は“1/X +ε”となって、第2モータ8の最大速度の周期“1/x2”より短くならない。
【0040】
従って、この場合、第1モータ7と第2モータ8は、駆動命令C1,C2の出力周期“1/Y”でそれぞれ1ステップずつ駆動されることになる。
【0041】
[針早送り速度決定処理]
図4〜図6には、CPU10により実行される針早送り速度決定処理のフローチャートを示す。この針早送り速度決定処理のソフトウェアにより速度決定手段が構成される。また、ステップS1の処理により速度決定手段の判別手段が、ステップS9,S23,S34の処理により速度決定手段の候補速度算出手段が、ステップS5,S10,S19,S24,S30,S35,S14の処理により速度決定手段の比較手段が、それぞれ構成される。
【0042】
針早送り処理の開始時には、別の制御処理によって、第1および第2モータ7,8を早送り駆動するステップ数が指定されている。
第1モータ7 ・・・ 指定された早送り駆動のステップ数α
第2モータ8 ・・・ 指定された早送り駆動のステップ数β
CPU10は、この指定されたステップ数α,βの早送りをより速やかに遂行できるように、針早送り処理の開始時に、第1および第2モータ7,8の両方を早送り駆動する際の速度を決定する針早送り速度決定処理を実行する。
【0043】
上記速度の決定は、指定された早送り駆動のステップ数α,βと、上述した第1および第2モータ7,8の最大速度ならびに駆動信号のパルス幅a,bを考慮した駆動命令C1,C2の出力速度(速度X又は速度Y)とから、何れの出力速度を選択した方が早送り駆動が速やかに完了するか比較することで行う。
【0044】
この実施形態の針早送り速度決定処理では、次のようなA〜Gの場合分けを行って、早送り駆動を速やかに完了することのできる駆動命令の出力速度を決定する。図4〜図6のフローチャートを参照しながら説明する。
【0045】
なお、この実施形態の針早送り処理では、第1および第2モータ7,8の両方を駆動する期間には、共に同一速度で駆動命令C1,C2の出力を行う一方、第1および第2モータ7,8のうち一方のみが早送り駆動のステップ数が残っている期間には、一方のモータの最大速度“x1又はx2”で駆動命令の出力が行われるようになっている。また、第1モータ7と第2モータ8の両方を駆動する場合の駆動信号の出力優先順序は、第1モータ7、第2モータ8の順に固定されている。従って、このような駆動パターンで早送り駆動が行われるものとして、何れの場合に速やかに早送り駆動が完了するか比較を行う。
【0046】
A.速い方の駆動命令の出力速度Xに対応する周期1/Xから、第1および第2モータ7,8の各駆動信号のパルス幅a,bを差し引いた長さ“1/X−(a+b)”が、駆動信号の出力優先順序が低い方の第2モータ8の最大速度の周期“1/x2”以上である場合(図4のステップS1で“YES”判定の場合)
【0047】
Aの場合、第1および第2モータ7,8の駆動命令が速い速度X(周期1/X)で出力されても、駆動命令C2の破棄が図2(b)のように行われることがない。従って、Aの場合には、第1および第2モータ7,8の両方を速い速度Xで1ステップずつ駆動することができ、指定された早送り駆動のステップ数α,βがどのような値であっても、最も速やかに早送り駆動を完了することができる。それ故、Aの場合には、駆動命令C1,C2の出力速度は速い速度Xに決定する(図4のステップS2)。
【0048】
一方、Aの条件を満たさない場合(パルス幅a,bの大きな波形データが選択されている場合など)には、駆動命令C1,C2の出力速度を速い速度X(周期1/X)とすると、図2(b)に示したように、第2モータ8は2倍の周期で1ステップずつ駆動されることになる。従って、この場合(図4のステップS1で“NO”判定の場合)には、指定された早送り駆動のステップ数α,βに応じて、次のB〜Gの場合分けを行って、早送り駆動が完了するまでの時間を計算して比較する。
【0049】
B.第1モータ7の早送り駆動のステップ数αよりも第2モータ8の早送り駆動のステップ数βの方が大きい“α <β”場合(図4のステップS3で“YES”判定の場合)で、且つ、駆動命令C1,C2の出力速度を速い速度Xと仮定した場合(ステップS4)
【0050】
Bの場合、第1および第2モータ7,8の両方で早送り駆動が開始された後、先に、第1モータ7の早送り駆動が完了し、その後、第2モータ8の早送り駆動が完了する。第1モータ7の早送り駆動が完了するまでは、第1モータ7は周期1/Xで1ステップずつ駆動され、第2モータ8は周期1/Xの2倍の周期で1ステップずつ駆動される。第1モータ7の早送り駆動の完了後は、第2モータ8は周期1/x2で1ステップずつ駆動される。
【0051】
従って、第1モータ7の早送り駆動が完了する時間をt1(X)、第2モータ8の早送り駆動が完了する時間をt2(X)として、これらの時間t1(X),t2(X)を上記の運針パターンに応じた計算式により演算する(図4のステップS5)。ステップS5の式において、“(β−α/2)”は、第1モータ7の早送り駆動完了時に残された第2モータ8の駆動ステップ数である。そして、両者を比較して(ステップS6)、長いほうをBの場合の早送り駆動の総合時間T(X)とする(ステップS7,S8)。
【0052】
なお、Bの場合には、第1モータ7の駆動完了時間t1(X)が、第2モータ8の駆動完了時間t2(X)より長くなることはない。それゆえ、後者のみを計算して、これをBの場合の早送り駆動の総合時間T(X)としても良い。
【0053】
C.第1モータ7の早送り駆動のステップ数αよりも第2モータ8の早送り駆動のステップ数βの方が大きい“α <β”場合(図4のステップS3で“YES”判定の場合)で、且つ、駆動命令C1,C2の出力速度を遅い速度Yと仮定した場合(ステップS9)
【0054】
Cの場合、第1および第2モータ7,8の両方で早送り駆動が開始された後、先に、第1モータ7の早送り駆動が完了し、その後、第2モータ8の早送り駆動が完了する。第1モータ7の早送り駆動が完了するまで、第1および第2モータ7,8は周期1/Yで1ステップずつ駆動され、第1モータ7の早送り駆動の完了後は、第2モータ8は最大速度の周期1/x2で1ステップずつ駆動される。
【0055】
従って、第1モータ7の早送り駆動が完了する時間をt1(Y)、第2モータ8の早送り駆動が完了する時間をt2(Y)として、これらの2つの時間t1(Y),t2(Y)を上記の運針パターンに応じた計算式により演算する(図4のステップS10)。そして、両者を比較して(ステップS11)、長いほうをCの場合の早送り駆動の総合時間T(Y)とする(ステップS12,S13)。
【0056】
なお、Cの場合には、第1モータ7の駆動完了時間t1(Y)が、第2モータ8の駆動完了時間t2(Y)より長くなることはない。それゆえ、後者のみを計算して、これをCの場合の早送り駆動の総合時間T(Y)としても良い。
【0057】
D.第1モータ7の早送り駆動の半分のステップ数α/2が、第2モータ8の早送り駆動のステップ数β以上“α/2 ≧β”となる場合(図5のステップS17で“YES”判定の場合)で、且つ、駆動命令C1,C2の出力速度を速い速度Xと仮定した場合(ステップS18)
【0058】
Dの場合、第1および第2モータ7,8の両方で早送り駆動が開始された後、同時に早送り駆動が完了するか、或いは、先に第2モータ8の早送り駆動が完了する。両方が早送り駆動されている期間には、第1モータ7は周期1/Xで1ステップずつ駆動され、第2モータ8はその2倍の周期2/Xで1ステップずつ駆動される。第1モータ7のみが早送り駆動される期間には、第1モータ7は最大速度の周期1/x1で1ステップずつ駆動される。
【0059】
従って、第1モータ7の早送り駆動が完了する時間t1(X)と、第2モータ8の早送り駆動が完了する時間t2(X)とを、上記の運針パターンに応じた計算式により演算する(図5のステップS19)。そして、両者を比較して(ステップS20)、長いほうをBの場合の早送り駆動の総合時間T(X)とする(ステップS21,S22)。
【0060】
E.第1モータ7の早送り駆動のステップ数αの半分が、第2モータ8の早送り駆動のステップ数β以上“α/2 ≧β”となる場合(図5のステップS17で“YES”判定の場合)で、且つ、駆動命令C1,C2の出力速度を遅い速度Yと仮定した場合(ステップS23)
【0061】
Eの場合、第1および第2モータ7,8の両方で早送り駆動が開始された後、先に、第2モータ8の早送り駆動が完了し、その後、第1モータ7の早送り駆動が完了する。第2モータ8の早送り駆動が完了するまで、第1および第2モータ7,8は周期1/Yで1ステップずつ駆動され、第2モータ8の早送り駆動の完了後は、第1モータ7は最大速度の周期1/x1で1ステップずつ駆動される。
【0062】
従って、第1モータ7の早送り駆動が完了する時間t1(Y)と、第2モータ8の早送り駆動が完了する時間t2(Y)とを、上記の運針パターン応じた計算式により演算する(図5のステップS24)。そして、両者を比較して(ステップS25)、長いほうをEの場合の早送り駆動の総合時間T(Y)とする(ステップS26,S27)。
【0063】
なお、Eの場合には、第2モータ8の駆動完了時間t2(Y)が、第1モータ7の駆動完了時間t1(Y)より長くなることはない。それゆえ、後者のみを計算して、これをEの場合の早送り駆動の総合時間T(Y)としても良い。
【0064】
F.第2モータの早送り駆動のステップ数βが、第1モータ7の早送り駆動のステップ数αの半分より大きく、且つ、第1モータ7の早送り駆動のステップ数α以下“α/2 <β ≦α”となる場合(図6のステップS28で“YES”判定の場合)で、且つ、駆動命令C1,C2の出力速度を速い速度Xと仮定した場合(ステップS29)
【0065】
Fの場合、第1および第2モータ7,8の両方で早送り駆動が開始された後、先に、第1モータ7の早送り駆動が完了し、その後、第2モータ8の早送り駆動が完了する。第1モータ7の早送り駆動が完了するまで、第1モータ7は周期1/Xで1ステップずつ駆動され、第2モータ8はその2倍の周期2/Xで1ステップずつ駆動される。第1モータ7の早送り駆動の完了後は、第2モータ8は最大速度の周期1/x2で1ステップずつ駆動される。
【0066】
従って、第1モータ7の早送り駆動が完了する時間t1(X)と、第2モータ8の早送り駆動が完了する時間t2(X)とを、上記の運針パターンに応じた計算式により演算する(図6のステップS30)。そして、両者を比較して(ステップS31)、長いほうをFの場合の早送り駆動の総合時間T(X)とする(ステップS32,S33)。
【0067】
なお、Fの場合には、第1モータ7の駆動完了時間t1(Y)が、第2モータ8の駆動完了時間t2(Y)より長くなることはない。それゆえ、後者のみを計算して、これをFの場合の早送り駆動の総合時間T(Y)としても良い。
【0068】
G.第2モータの早送り駆動のステップ数βが、第1モータ7の早送り駆動のステップ数αの半分より大きく、且つ、第1モータ7の早送り駆動のステップ数α以下“α/2 <β ≦α”となる場合(図6のステップS28で“YES”判定の場合)で、且つ、駆動命令C1,C2の出力速度を遅い速度Yと仮定した場合(ステップS34)
【0069】
Gの場合、第1および第2モータ7,8の両方で早送り駆動が開始されて、同時に早送り駆動が完了するか、或いは、先に第2モータ8の早送り駆動が完了する。両方が早送り駆動されている期間において、第1および第2モータ7,8は周期1/Yで1ステップずつ駆動される。第1モータ7のみが早送り駆動される期間は、第1モータ7の最大速度の周期1/x1で1ステップずつ駆動される。
【0070】
従って、第1モータ7の早送り駆動が完了する時間t1(Y)と、第2モータ8の早送り駆動が完了する時間t2(Y)とを、上記の運針パターンに応じた計算式により演算する(図6のステップS35)。そして、両者を比較して(ステップS36)、長いほうをEの場合の早送り駆動の総合時間T(Y)とする(ステップS37,S38)。
【0071】
なお、Gの場合には、第2モータ8の駆動完了時間t2(Y)が、第1モータ7の駆動完了時間t1(Y)より長くなることはない。それゆえ、後者のみを計算して、これをGの場合の早送り駆動の総合時間T(Y)としても良い。
【0072】
上述のように、指定された第1および第2モータ7,8の早送り駆動のステップ数α,βの関係に応じて、BとCの場合、DとEの場合、或いは、FとGの場合の早送り駆動にかかる総合時間T(X),T(Y)を計算したら、次に、これら2つを比較して(図4のステップS14)、総合時間が短くなるほうで採用された速度X又は速度Yを、駆動命令C1,C2の出力速度として決定する(ステップS15,S16)。
【0073】
そして、この早送り速度決定処理を終了して、実際に指針を早送り駆動する針早送り処理に移行する。
【0074】
[針早送り処理]
図7には、CPU10が実行する針早送り処理のフローチャートを示す。この針早送り処理のソフトウェアにより実行手段が構成される。
【0075】
針早送り処理は、第1モータ7を早送り駆動するステップ数α、第2モータ8を早送り駆動するステップ数β、第1および第2モータ7,8の両方を駆動する期間における駆動命令C1,C2の出力速度(針早送り速度決定処理で決定された速度X又は速度Y)が、それぞれ指定された状態で開始される。
【0076】
この針早送り処理では、ステップS41,S49,S54の判別処理において、早送り駆動するステップ数α,βが両方とも残っているか、一方のステップ数αだけ残っているか、もう一方のステップ数βだけ残っているかCPU10が判別し、この判別結果に応じた駆動処理を実行する。
【0077】
すなわち、両方のステップ数α,βが残っている期間には、ステップS41の判別処理で“NO”の判定となって、ステップS41〜S48のループ処理が繰り返し実行される。すなわち、このループ処理に移行すると、CPU10は、指定速度(速度X又は速度Y)の周期の経過を待って(ステップS42)、第1モータ7の駆動命令C1を駆動信号処理部20に出力し(ステップS43)、命令が正常に受け付けられたか応答を確認する(ステップS44)。そして、正常であれば第1モータ7の残りのステップ数αを1ステップ分減じ(ステップS45)、正常でなければ残りのステップ数αをそのままとする。
【0078】
さらに、第2モータ8の駆動命令C2を駆動信号処理部20に出力し(ステップS46)、応答を確認する(ステップS47)。そして、正常であれば第2モータ8の残りのステップ数βを1ステップ分減じ(ステップS48)、正常でなければ残りのステップ数βをそのままとする。そして、ステップS41に戻る。
【0079】
このステップS41〜S48のループ処理により、第1および第2モータ7,8の両方を早送り駆動する期間において、指定された速度(速度X又は速度Y)で駆動命令C1,C2がそれぞれ出力されて第1および第2モータ7,8の早送り駆動が実現される。条件によって第2モータ8の駆動命令C2が2回に1回破棄される場合も生じる。
【0080】
また、一方のステップ数αだけ残っている期間には、ステップS49の判別処理で“NO”の判定となって、ステップS49〜S53のループ処理が繰り返し実行される。すなわち、このループ処理に移行すると、CPU10は、第1モータ7の最大速度の周期1/x1の経過を待って(ステップS50)、第1モータ7の駆動命令C1を駆動信号処理部20に出力する(ステップS51)。その後、命令が正常に受け付けられたか応答を確認し(ステップS52)、正常であれば第1モータ7の残りのステップ数αを1ステップ分減じる(ステップS53)。そして、ステップS49に戻る。
【0081】
また、もう一方のステップ数βだけ残っている期間には、ステップS54の判別処理で“NO”の判定となって、ステップS54〜S58のループ処理が繰り返し実行される。すなわち、このループ処理に移行すると、CPU10は、第2モータ8の最大速度の周期1/x2の経過を待って(ステップS55)、第2モータ8の駆動命令C2を駆動信号処理部20に出力する(ステップS56)。その後、命令が正常に受け付けられたか応答を確認し(ステップS57)、正常であれば第2モータ8の残りのステップ数βを1ステップ分減じる(ステップS58)。そして、ステップS54に戻る。
【0082】
上記のステップS49〜S53のループ処理、或いは、ステップS54〜S58のループ処理により、第1および第2モータ7,8の何れか一方のみを早送り駆動する期間に、一方のモータの最大速度で対応する駆動命令が出力されて、一方のモータのみ早送り駆動が実現される。
【0083】
そして、第1および第2モータ7,8の早送り駆動が全て完了したら、この早送り処理を終了する。
【0084】
以上のように、この実施形態の指針式電子時計1によれば、大まかに駆動命令を出力する制御(例えばCPU10のソフトウェア制御)と、細かな駆動信号の出力制御(例えば駆動信号処理部20の制御)とが、別系統で行われる。従って、細かな駆動信号の出力制御の処理のために、大まかな制御処理が滞ったりすることがなく、スムーズな指針の駆動制御を実現できる。
【0085】
一方で、上記のように大まかな制御と細かな制御とが別系統になっていると、CPU10側で直接に駆動信号の出力タイミングを監視することができないため、第1および第2モータ7,8の両方を早送り駆動する場合に、一部の駆動命令が破棄されてモータの駆動速度が遅くなってしまうことがある。しかしながら、この実施形態の指針式電子時計1では、上述の針早送り速度決定処理によって、駆動命令が破棄される場合も考慮して、何れの速度で駆動命令を出力した場合に、より速やかに指定された早送り駆動が完了するか比較されて、駆動命令の出力速度が決定されるようになっている。それゆえ、このような場合でも、速やかな早送り駆動を実現することができる。
【0086】
また、この実施形態の指針式電子時計1によれば、駆動命令が破棄されることのある速い速度Xと、駆動命令が破棄される可能性がほぼない遅い速度Yとで、何れの速度とした場合に、指定されたステップ数α,βの早送り駆動がより速やかに完了するか比較を行って、駆動命令の出力速度を決定するようになっている。従って、容易な演算処理で駆動命令の出力速度を決定することができる。
【0087】
また、この実施形態の指針式電子時計1によれば、速い速度Xとして、早送り駆動する複数のモータ7,8の各最大速度のうち最も遅い最大速度を採用している。また、遅い速度Yとして、速い速度の周期1/Xに各モータ7,8の駆動信号のパルス幅a,bをそれぞれ加えた周期“1/X +a +b”に対応する速度を採用している。従って、速い速度Xで駆動命令が出力されると仮定して計算を行った場合には、一方のモータの早送り駆動のステップ数が少なくて、このモータの駆動命令が半分破棄されても速やかに早送り駆動を完了できるような場合を見いだすことができる。また、上記の遅い速度Yで駆動命令が出力されると仮定して計算を行った場合には、駆動命令の破棄が生じないことで速やかに早送り駆動を完了できるような場合を見いだすことができる。
【0088】
また、この実施形態の指針式電子時計1によれば、早送り駆動の総合時間を計算して比較する際に、一方のモータのステップ数のみが残っている期間はそのモータを最大速度で駆動した場合の時間を計算するようにしている。従って、このような駆動パターンで針早送り処理が実行される構成に即した時間の比較が行え、速やかに早送り駆動を完了できる速度を正しく決定することができる。
【0089】
また、この実施形態の指針式電子時計1によれば、駆動命令の破棄が生じる場合には、2回の駆動命令の出力で1ステップの駆動が行われるものとして、早送り駆動にかかる時間が計算されるようになっている。従って、実際の駆動パターンに即した時間の比較を容易な演算で行うことができ、速やかに完了できる速度を正しく且つ容易に決定することができる。
【0090】
なお、本発明は、上記実施の形態に限られるものではなく、様々な変更が可能である。例えば、上記実施形態では、運針命令の破棄が生じない出力速度Yとして、ソフトウェア制御のタイムラグを考慮して少し余裕のある長さに設定した例を示しているが、ソフトウェア制御のタイムラグが全く生じないのであれば、この出力速度Yとして、ギリギリで運針命令の破棄が生じない速度を採用することもできる。具体的には、その周期1/Yが、第2モータ8の最大速度の周期1/x2に第1モータ7の駆動信号のパルス幅aを加えた時間長“1/x2 +a”となるような速度を採用できる。
【0091】
また、上記実施の形態では、第1および第2モータ7,8のうち一方のモータのみを早送り駆動する期間には、その駆動速度をそのモータの最大速度に変更するようにしている。そのため、早送り駆動の速度を決定する際にも、このような駆動パターンに対応した時間の計算を行っている。しかしながら、針早送り処理において、最初から最後まで駆動命令の出力速度を変更しない駆動処理が行われる場合には、早送り駆動の速度を決定する際に、その駆動パターンに対応した時間の計算を行って、その時間の比較を行うようにすれば良い。
【0092】
また、上記実施の形態では、2個のモータを早送り駆動する構成を示したが、3個以上のモータを早送り駆動する場合にも本発明を同様に適用することができる。例えば、3個のモータを共に早送り駆動する場合には、1個または2個のモータの駆動命令が2回に1回破棄される速い速度の候補と、3個のモータとも駆動命令の破棄がほぼ生じない遅い速度の候補とを設定し、指定された早送り駆動のステップ数に応じて両方の速度をそれぞれ採用した場合の早送り駆動の総合時間をそれぞれ計算および比較して、より速やかに早送り駆動を完了できる速度を決定するようにすれば良い。
【0093】
その他、早送り駆動する指針の種類や数など、実施の形態で示した細部等は発明の趣旨を逸脱しない範囲で適宜変更可能である。
【符号の説明】
【0094】
1 指針式電子時計
2 秒針
3 分針
4 時針
5,6 モータドライバ
7 第1モータ
8 第2モータ
9 輪列機構
10 CPU
11 RAM
12 ROM
20 駆動信号処理部
21 駆動パルス波形データ
22 逐次出力制御部
23 モータ最大速度保障部
C1,C2 駆動命令
D1,D2 駆動信号
x1,x2 最大速度
X 速い速度(第1の速度)
Y 遅い速度(第2の速度)

【特許請求の範囲】
【請求項1】
複数の指針と、
前記複数の指針を駆動する複数のステッピングモータと、
前記複数のステッピングモータの駆動命令を出力する制御部と、
前記制御部から前記駆動命令を受けて当該駆動命令により指定されたステッピングモータに駆動信号を出力する駆動処理部と、
を備え、
前記駆動処理部は、
異なるステッピングモータに対する複数の駆動命令を受けた場合に、各ステッピングモータの駆動信号が重ならないようにタイミングをずらして駆動信号を出力する逐次出力手段と、
1つのステッピングモータに対して前回の駆動信号の出力から次の駆動命令を受け付けるまでの時間長を制限して、当該ステッピングモータに設定された最大速度を超えた駆動が行われないようにする速度保障手段と、
を有し、
前記制御部は、
前記複数のステッピングモータのうち駆動対象の2個以上のステッピングモータを指定されたステップ数だけ早送り駆動する場合に、当該駆動対象の2個以上のステッピングモータの駆動命令の出力速度を決定する速度決定手段と、
前記速度決定手段により決定された出力速度に従って駆動命令を出力する実行手段と、
を有し、
前記制御部の前記速度決定手段は、
前記逐次出力手段により駆動信号の出力タイミングがずらされることで前記速度保障手段により次の駆動命令が正常に受け付けられない状況を条件に含めて、前記指定されたステップ数の早送り駆動をより短時間で遂行できる前記駆動命令の出力速度を決定することを特徴とする指針式電子時計。
【請求項2】
前記制御部の前記速度決定手段は、
前記駆動対象の2個以上のステッピングモータの駆動命令を共に第1の速度で出力した場合に、前記速度保障手段により次の駆動命令が正常に受け付けられない場合が生じるか判別する判別手段と、
前記駆動対象の2個以上のステッピングモータの駆動命令が共に同一速度の出力で常に受け付けられる前記第1の速度より遅い第2の速度を算出する候補速度算出手段と、
前記駆動対象の2個以上のステッピングモータを共に駆動する期間に、前記第1の速度で駆動命令を出力する場合と、前記第2の速度で駆動命令を出力する場合のどちらが前記指定されたステップ数の早送り駆動を早く終えるか比較する比較手段と、
を備え、
前記判別手段の判別結果または前記比較手段の比較結果に基づいて前記駆動命令を共に出力する周期を前記第1の速度または前記第2の速度に決定することを特徴とする請求項1記載の指針式電子時計。
【請求項3】
前記第1の速度は、前記駆動対象の2個以上のステッピングモータにそれぞれ設定されている最大速度のうち最も遅い最大速度であり、
前記第2の速度は、当該第2の速度に対応する周期が、前記第1の速度に対応する周期に前記駆動対象の2個以上のステッピングモータに出力される各駆動信号の出力幅をそれぞれ加えた時間長となる速度である
ことを特徴とする請求項2記載の指針式電子時計。
【請求項4】
前記比較手段は、
前記駆動対象の2個以上のステッピングモータのうち1つのステッピングモータのみが早送り駆動を完了していない期間については、当該1つのステッピングモータを当該ステッピングモータに設定された最大速度で駆動した場合の時間を計算して比較を行うことを特徴とする請求項2又は3に記載の指針式電子時計。
【請求項5】
前記比較手段は、
前記駆動対象の2個以上のステッピングモータのうち、前記次の駆動命令が正常に受け付けられない場合が生じるステッピングモータについては、前記第1の速度の半分の速度で駆動されるものとして、早送り駆動にかかる時間を計算することを特徴とする請求項2〜4の何れか一項に記載の指針式電子時計。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate


【公開番号】特開2012−83273(P2012−83273A)
【公開日】平成24年4月26日(2012.4.26)
【国際特許分類】
【出願番号】特願2010−231047(P2010−231047)
【出願日】平成22年10月14日(2010.10.14)
【出願人】(000001443)カシオ計算機株式会社 (8,748)
【Fターム(参考)】