(57)【特許請求の範囲】
【請求項１】
所望の周波数を持つクロック信号を発生する方法であって、
格納された累積器の値が格納されたトリガー値より大きいか等しいと見られる度にパルスを発生する段階を有し、
第１のループにて、前記格納された累積器の値が前記格納されたトリガー値より大きいか等しくなるまで、前記格納された累積器の値が第１の反復値により反復的にインクリメントされ、引き続き、第２のループにて、前記格納された累積器の値が前記格納されたトリガー値より少なくなるまで、前記格納された累積器の値が第２の反復値によりデクリメントされ、
前記第１のループの各反復の間、前記クロック信号の現在の周波数が、所望の周波数値と比較され、もし２つの値が異なるならば、前記第１の反復直は、発生された前記クロック信号の周波数が前記所望の周波数の検出された値に対応するまで、１つ又はそれ以上の連続的な反復にて所定の速度で補正される、方法。
【請求項２】
前記クロック信号の所望の周波数に対応する入力値を検出する段階を更に有し、
発生された前記クロック信号の周波数が、前記所望の周波数に等しい条件のもとで、前記第１の反復値は、前記クロック信号の前記所望の周波数に対応する前記検出入力の値により設定される、請求項１に記載の方法。
【請求項３】
前記第２の反復値は、前記格納されたトリガー値により設定され、前記格納されたトリガー値は、第１及び第２の反復ループが駆動される予め決められた入力割り込み周波数（ヘルツ）である、請求項１又は２に記載の方法。
【請求項４】
前記格納されたトリガー値及び割り込み周波数が２nであり、ここでｎは正の整数である請求項１〜３のいずれか一項に記載の方法。
【請求項５】
反復値を補正する反復の数は、前記第１の反復値及び前記所望の周波数が正確に等しくない各反復に対して、加速器−累積器に加えられる格納された加速器の値に対応する、請求項１〜４のいずれか一項に記載の方法。
【請求項６】
前記格納されたトリガー値及び格納された累積器の値は可変する請求項５に記載の方法。
【請求項７】
所望の周波数を持つクロック信号を発生する段階と、
発生されたクロック信号を用い、所定の速度プロファイルに従って、２つのステップ速度の間で、連続的な加速を提供する段階であって、
所望の周波数を持つクロック信号を発生する前記段階は、格納された累積器の値が格納されたトリガー値より大きいか等しいと見られる度にパルスを発生する段階を有し、
第１のループにて、前記格納された累積器の値が前記格納されたトリガー値より大きいか等しくなるまで、前記格納された累積器の値が第１の反復値により反復的にインクリメントされ、引き続き、第２のループにて、前記格納された累積器の値が前記格納されたトリガー値より少なくなるまで、前記格納された累積器の値が第２の反復値によりデクリメントされ、そして、
前記第１のループの各反復の間、前記クロック信号の現在の周波数が、所望の周波数値と比較され、もし２つの値が異なるならば、前記第１の反復値は、発生された前記クロック信号の周波数が前記所望の周波数の検出された値に対応するまで、１つ又はそれ以上の連続的な反復にて所定の速度で補正される、段階を具備する、
ステッパーモータを制御する方法。
【請求項８】
クロック信号を発生する装置は、所望の周波数の値に対応する入力を検出する手段と、格納された累積器の値が格納されたトリガー値より大きいか等しいと見られる度にパルスを発生する手段と、前記格納された累積器の値が前記格納されたトリガー値より大きいか等しいことを検出するまで、前記格納された累積器の値が、前記所望の周波数の値に対応する第１の反復値によりインクリメントされる第１のループを制御する手段と、前記格納された累積器の値が前記格納されたトリガー値より小さいことを検出するまで、前記格納された累積器の値が第２の反復値によりデクリメントされる第２のループを制御する手段と、前記所望の周波数の入力値を検出する手段が前記所望の周波数の値が変化したことを検出したときに、前記第１の反復値の変化速度を制御するために使用される累積器の値を格納する手段及び加速器−累積器の値を格納する手段と、を具備する、クロック信号を発生する装置。
【請求項９】
所望の周波数の値、現在の周波数、トリガー値、累積器の値、及び加速器の値を格納するメモリをさらに具備する請求項８に記載の装置。
【請求項１０】
第１及び第２のループが実行されているときの速度を制御する割り込み信号を発生する手段と、格納された累積器の値と格納されたトリガー値を比較し、前記格納された累積器の値をインクリメント又はデクリメントし、前記所望の周波数が変化したときに所定の速度で前記第１の反復値を変化させる機能を担う処理手段と、を具備する請求項８又は９に記載の装置。
【請求項１１】
事前にプログラムされたマイクロプロセッサを具備する集積回路上に実現された請求項８〜１０のいずれか一項に記載の装置。
【請求項１２】
クロック信号を発生する装置であって、所望の周波数の値に対応する入力を検出する手段と、格納された累積器の値が格納されたトリガー値より大きいか等しいと見られる度にパルスを発生する手段と、前記格納された累積器の値が前記格納されたトリガー値より大きいか等しいことを検出するまで、前記格納された累積器の値が、前記所望の周波数の値に対応する第１の反復値によりインクリメントされる第１のループを制御する手段と、前記格納された累積器の値が前記格納されたトリガー値より小さいことを検出するまで、前記格納された累積器の値が第２の反復値によりデクリメントされる第２のループを制御する手段と、前記所望の周波数の入力値を検出する手段が前記所望の周波数の値が変化したことを検出したときに、前記第１の反復値の変化速度を制御するために使用される累積器の値を格納する手段及び加速器−累積器の値を格納する手段と、を含み、
ステッパーモータであって、前記ステッパーモータは前記クロック発生器により発生されるクロック信号により駆動される、
を具備する、ドライブシステム。
【請求項１３】
複数の配水ポンプであって、各々の配水ポンプは液体の出口を持ち環状通路を規定するポンプハウジングを備え、前記環状通路内で軸方向に摺動するように配置され前記環状通路の一方の端部を封止したポンププランジャーとを備えた液体配水装置であって、さらに、前記液体配水装置は、配水ポンプに対して所定の速度プロファイルに従って環状通路の長手の少なくとも一部に沿って前記ポンププランジャーを駆動するように配置され、液体をその出口から放出するポンププランジャー駆動手段を備え、各配水ポンプの所定の速度プロファイルは、使用上で、前記複数の配水ポンプの出口から同時に放出される液体の結合した液体速度は、複数のプランジャーの動作の範囲の少なくとも一部において実質的に一定に維持され、そして前記ポンププランジャー駆動手段は、
クロック信号を発生する装置であって、所望の周波数の値に対応する入力を検出する手段と、格納された累積器の値が格納されたトリガー値より大きいか等しいと見られる度にパルスを発生する手段と、前記格納された累積器の値が前記格納されたトリガー値より大きいか等しいことを検出するまで、前記格納された累積器の値が、前記所望の周波数の値に対応する第１の反復値によりインクリメントされる第１のループを制御する手段と、前記格納された累積器の値が前記格納されたトリガー値より小さいことを検出するまで、前記格納された累積器の値が第２の反復値によりデクリメントされる第２のループを制御する手段と、前記格納された蓄積器の値が前記格納されたトリガー値より大きいか等しいことを検出するまで、第２の反復値によってデクリメントされる第２のループを制御する手段と、前記所望の周波数の入力値を検出する手段が前記所望の周波数の値が変化したことを検出したときに、前記第１の反復値の変化速度を制御するために使用される累積器の値を格納する手段及び加速器−累積器の値を格納する手段と、を含み、
ステッパーモータであって、前記ステッパーモータは前記クロック発生器により発生されるクロック信号により駆動される、
を具備する、液体配水装置。
【発明の詳細な説明】
技術分野
本発明はクロック信号を発生する方法及び装置に関する。本出願において、用語「クロック信号」は、固定又は可変周波数にて特定の電子回路又は装置をクロックするために使用される一連の周期的信号として定義される。特に、クロック信号は、波形の発生、ＲＣ及びＲＬ回路の電位的な置き換え、双安定、掃引周波数発生器、エラー訂正増幅器及び位相ロックループにおいて使用される。
背景技術
周知の周波数の発生は、無線機器、移動電話、双方向無線、テレビジョン及びラジオ周波数チューナ、を含む多くの商業的応用において共通である。このようなチューナにおけるデジタル制御の必要性は、高価な専用の位相ロックループ集積回路をもたらしている。これらの回路は、これらの回路が発生の可能な所定の離散的な数の周波数及び所定の範囲の周波数を有しているとして、制限を持つ。このような構成は、ＦＭ周波数が２０ＭＨｚ範囲で通常０．１ＭＨｚステップで変化する場所でデジタルカーラジオをチューニングするときに通常見られる。
周波数制御はまた、モータコントローラにおいて、特に、クロック信号がモータの速度を制御するようなステッパー及びＤＣモータ製品において、使用される。クロック信号の周波数の変化は回転子の速度を制御する。周波数の変換を行う多くの異なる形式の電気的モータ及び多くの商業的に入手可能な集積回路を駆動するために、クロック信号の周波数を変換する多くの確立された方法がある。
従来のステッパーコントローラは、通常２５０周辺の異なる所定のステップ速度のみを生じることができ、その結果、ステップ速度を変える必要があるときに段階的な形態でのみなされる。従って、いくかの製品にて非常に望まれている、一つのステップ速度から他の速度への滑らかな変化は不可能である。
発明の開示
本発明の第１の態様によれば、所望の周波数を持つクロック信号を発生する方法は、格納された累積器の値が格納されたトリガー値より大きいか等しいと見られる度にパルスを発生する段階であって、、第１のループにて、格納された累積器の値が格納されたトリガー値より大きいか等しくなるまで格納された累積器の値が第１の反復値により反復的にインクリメントされ、引き続き、第２のループにて、格納された累積器の値が格納されたトリガー値より少なくなるまで格納された累積器の値が第２の反復値によりデクリメントされ、そして、
第１のループの各反復の間、クロック信号の現在の周波数は所望の周波数値と比較され、２つの値が異なるならば、第１の反復値は、発生されたクロック信号の周波数が所望の周波数の検出された値に対応するまで、１つ又はそれ以上の連続的な反復にて所定の速度にて補正される。
好ましくは、発生されたクロック信号の周波数が所望の周波数に等しい条件のもとでは、第１の反復値は、クロック信号の所望の周波数に対応する検出入力の値により設定される。ヘルツにて所望の周波数の検出値に等しい反復的なインクリメントは、第１の反復ループの各反復の間、格納された累積器の値に加算される。クロック信号の所望の周波数が変化するとき、第１の反復値は、発生されたクロック信号の周波数及び結果的に第１の反復値が所望の周波数の検出値に対応するまで、１つ又はそれ以上の引き続く反復にて所定の速度にて補正される。従って、クロック信号の周波数は、中間的な周波数を失うことなく、所定の速度で２つの周波数の間での加速を可能にする。ステッパーモータに関連して、これは、ステッピング速度が連続的な機能に非常に近い近似する方法にて加速されることを意味する。
好ましくは、第２の反復値は格納されたトリガー値により設定され、格納されたトリガー値は、少なくとも、第１及び第２の反復ループが駆動される所定の割り込み周波数（ヘルツ）である。より好ましくは、格納されたトリガー値及び割り込み周波数の両方は値２nであり、ここで、ｎは正の整数である。これは格納されたトリガー値と格納された累積器の値の間の比較を簡素化する。これは格納されたトリガー値の２進値が、レジスタに単一ビットがセットされることにより表され、そしてトリガー値を越えるものもまた単一ビットがセットされることにより表される。この場合、格納されたトリガー値に等しい反復デクリメントは、第２の反復ループの各反復に対して格納された累積器の値から引算され、又はもし格納されたトリガー値が２nであれば、単一ビットはレジスタにてクリアされる。他の方法として、第２のループの実行は、発生が必要なパルスの数を予め計算することにより単一の反復に減少される。例えば、もし所望の周波数が格納されたトリガー値より大きいならば、第１のループの各反復に対して幾つのパルスが発生に必要かを決めるために、事前の計算が自動的に行われる。
好ましくは、第１の反復値を変えるために必要とされる反復の数は、第１の反復値及び所望の周波数が正確に等しくない各反復に対して、加速器−累積器に加算される格納された累積器の値により決められる。このような反復において、各時間で加速器−累積器は格納されたトリガー値より大きいか等しくなり、第１の反復値は１つインクリメントされ（又は減速に対してはデクリメントされ）、そして加速器−累積器はは格納されたトリガー値の値により減少される。このような構成は、実際のユニット（ヘルツ）において正確に制御されるべき加速速度を可能にする。
好ましくは、格納されたトリガー値及び格納された累積器の値は可変である。特に、格納されたトリガー値は、期待された所望の周波数と比較して十分に大きいように配置され、その結果周波数は、迅速に通常１０ｍｓ以内で設定されるように発生される。格納された累積器の値は、所望の周波数が変化したときに第１の反復値が補正される速度を制御するために選択される。
本発明の第２の態様によれば、クロック信号を発生する装置は、
所望の周波数の値に対応する入力を検出する手段と、
格納された累積器の値が格納されたトリガー値より大きいか等しいと見られる度にパルスを発生する手段と、
格納された累積器の値が格納されたトリガー値より大きいか等しいことを検出するまで、格納された累積器の値が所望の周波数の値に対応する第１の反復値によりインクリメントされる第１のループを制御する手段と、
格納された累積器の値が格納されたトリガー値より小さいことを検出するまで、格納された累積器の値が第２の反復値によりデクリメントされる第２のループを制御する手段と、
所望の周波数の入力値を検出する手段が、所望の周波数の値が変化したことを検出したときに、第１の反復値の変化速度を制御するために使用される累積器の値を格納する手段及び加速器−累積器の値を格納する手段と、
を具備する。
好ましくは、装置は、さらに所望の周波数の値、現在の周波数、トリガー値、累積器の値、及び加速器の値を格納するメモリを具備する。好ましくは、装置はまた、第１及び第２のループが実行されているときの速度を制御する割り込み信号を発生する手段と、格納された累積器の値と格納されたトリガー値を比較し、格納された累積器の値をインクリメント又はデクリメントし、所望の周波数が変化したときに所定の速度で第１の反復値を変化させる機能を担う処理手段と、を具備する。
好ましくは、装置は、事前にプログラムされたマイクロプロセッサを具備する集積回路上に実現される。
１つの好ましい実現において、本発明の第１及び第２の態様の方法及び装置により発生されるクロック信号は、所定の速度プロファイルに従って２つのステッピング速度の間で連続的な加速を提供するステップモータを制御するために使用される。
最も簡素化された形態において、本発明は、特定の固定又は連続的に変化する周波数において繰り返しの一連のパルスを発生するために使用される。参照テーブル又は波形を発生するアルゴリズムに結合すると、本発明の方法は、所望の周波数における所望の波形を発生するために使用される。本発明の使用は、動作制御、位相ロックループ置換、無線周波数のハーモニックチューニング、周波数発生器、及び固定又は可変周波数に依存するその他の装置を含む。本発明は、モータ速度を統制するのに特に適しており、特に、全ステップ、半ステップを含むステッパーモータ、及びマクロ・ステッパーを制御するのに特に適している。同様に、ＤＣモータの速度は、アーマチュアの回転速度を統制する制御周波数を提供することによりこの方法で調整できる。本発明は固定又は変化する周波数を正確に提供するので、モータを直線的に加速又は減速するために使用可能であり、一連の動作を実施するために使用できる。
本発明は、非常に効率的、即ち、速くかつコンパクトであり、商業的に入手可能な積分回路及び埋め込まれたコントローラ上で非常に廉価に実現され得る。
【図面の簡単な説明】
本発明を、添付の図面にそって詳細に説明する。
図１は本発明の実施形態としてのマイクロコントローラを示す。
図２は本発明の方法を示すフローチャートである。
図３乃至図５は図２に示す本発明の方法における個々のステップの拡大した形態を示す。
図６はポンプピストンの駆動に使用するステッパーモータを含む液体配水装置を示す。
図７ａは２つの分離したポンプから放出される液体の速度のグラフを示し、各ポンプは図６に示す装置により駆動され、本発明の周波数発生器により制御される。
図７ｂは図６に示す装置により駆動される２つの分離したポンプに対するポンプピストン変位のグラフを示す。
詳細な説明
図１は、典型的な専用の事前プログラムされたマイクロプロセッサ、例えば、モトローラ  ６８０５  Ｋシリーズ  マイクロコントローラを示す。マイクロプロセッサ１は、幾つかの変数を格納するための幾つかのレジスタ２を具備し、その内の幾つかはプロセッサが、パワーオンリセット３を使用してスイッチオンされるときにプリセットされる。格納された変数は、格納されたトリガー値triggger、格納された累積器の値tank、インクリメント値ｒ、加速器の値accRate、所望の周波数Fd、加速器−累積器AccTank及び検出されたパルスカウントを含む。
プロセッサ１は、以下に詳しく説明するように、外部発振器５により駆動される割り込み発生器４を使用して割り込み信号を内部的に発生する。
事前プログラムされたユニット６は、以下に詳しく説明するように、矩形波パルス発生器７を動作させるために使用する２つのループを制御する。本例において、パルス発生器７は波形発生器８を駆動するために使用される。
ユーザインタフェース９はプロセッサ１を制御するため、特にレジスタ２に格納された変数の値を変えるために提供される。さらに、フィードバックループはパルス発生器７の出力をモニタするために提供される。
図２は、所望の周波数を持つクロック信号を発生するときにプロセッサ１により担持される処理のフローチャートを示す。
事前プログラムされたプロセッサ１は最初にスイッチオンされ、プログラムは、変数triggger，tank，AccTank，accRate及びｒを初期化する。
その後に、第１のループ１０において、割り込み信号が割り込み発生器４により発生される度に、プロセッサ１は、ユーザが所望の周波数をエンターしたならばチェックし、もしそうならば、所望の周波数としてこの値を格納する。本例において、プロセッサ１は、変数ｒを初期化するように事前にプログラムされ、反復インクリメントをゼロとし、この反復インクリメントは、反復インクリメントが検出された所望の周波数に等しくなるまで、図５に沿って以下に詳細に説明される加速ルーチンにて反復の数にそって増大される。代わって、初期化に際して、プロセッサ１は、所望の周波数が検出されそしてその後に所望の周波数を等しくするために反復のインクリメントｒをプリセットするまで、代わりに待機することができ、その結果、反復インクリメントｒの初期の加速は必要とされなくなる。
プロセッサ１は、反復インクリメントｒに等しい値によりtank値を連続的に増大する。プロセッサは、さらにtank値とtrigger値を比較し、もしtank値がtrigger値より大きいか等しいと見られるならば、第２のループ１１において、プロセッサはtrigger値によりtank値の現在値をデクリメントし、クロックパルスが発生される。パルスカウンタは「１」でインクリメントされ、trigger値とtank値の比較が再び行われる。本例において、必要ならば、第２のループ１１が、tank値がtrigger値より小さいと見られるまで繰り返される。一度、tank値がtrigger値より小さいと見られると、第１のループ１０が再びスタートし、それによりtank値は、tank値がtrigger値より大きいか等しい条件が再び満足されるまで、第１のループ１０の１つ又はそれ以上のサイクルにて反復的にインクリメントされる。
図２のフローチャートの各ボックスに戻り、「変数を初期化する」ボックス１２を図３に詳しく示す。本例において、初期化の際に、プロセッサ１は、加速器の値accRateを１Ｈｚ  ｓ-2に設定し、反復インクリメント値ｒを１００  Ｈｚに設定し、tank値及びAccTank値をゼロに設定し、trigger値を割り込み信号の周波数に設定する。
「割り込みを待つ」ボックス１３の動作は図４のフローチャートに示される。全体のシステムは、外部発振器５により駆動される割り込み信号の速度にて動作される。システムは割り込みの間で維持され、ユーザがユーザインタフェース９を経て変数を変更するために信号を入力することができるのはこの期間である。パイプライン又はこれに同等な標準的な技術を介して、各反復が同時に実行でき、又は効果的にそのようにできるので、割り込み信号の周波数は、発振器５の周波数に等しい周波数合成を可能にする発振器５の周波数を含むいずれかの値にプリセットすることができる。
図５は「加速（ｒ）」ボックス１４の動作を示す。プロセッサ１は、所望の周波数の格納された値が、第１のループ１０の現在の反復インクリメント値ｒと異なることを検出すると、加速器の値accRateは、加速器−累積器の値AccTank値に加算される。AccTankはtrigger値と連続的に比較され、そしてもしそれがtrigger値より大きいか等しいならば、AccTankはtrigger値によりデクリメントされ、そしてｒは１つだけインクリメントされる（減速ではデクリメントされる）。第１のループの連続的なサイクルの間、これらのステップは、ｒが所望の周波数に等しくなるまで、繰り返される。この方法で、プロセスは、加速器の値accRateにより設定され正確に制御された速度にて、１つの周波数から他の周波数に加速することができる。
本質的に、本発明は、通常は割り込みとして使用さる入力周波数と、３つの変数、即ち、trigger，ｒ，tankに依存する。変数triggerは、割り込み周波数（ヘルツ）に設定され、通常は変えられることはなく、変数ｒはいつでも変えることができる所望の周波数（ヘルツ）に設定され、tankは累積器の値を示す。割り込みがある度に、インクリメント値ｒが調整され、もし所望の周波数がまだ達成されていないならば、tankはｒの値によりインクリメントされ、そしてtankはtriggerと比較される。もし、tankがtriggerより大きいか等しいならばパルスが発生され、追加の作用が、パルス幅変調器の波形を変えるか又は他の値又は物理的な設定を変えることで、ステッパーモータのステップをとるように行われる。さらに、内部レジスタ２は、サイクルカウント、ステップカウント、現在の周波数、実際の周波数、及び周波数が変化していること及び他の同様な情報を示すフラグ、を維持するために使用される。
tankがtriggerより大きいか等しいことが見られる度に、tankは、常に正又はゼロでありパルスが発生されるtank−triggerの値に割り当てられる。同様に、tank値はクリアされず、triggerによってのみ減少され、tankは常に剰余を維持し、割り込み周波数の１つの期間より少なく発生された周波数の実際のエラーを最小にする。
発生された周波数のエラーは累積されな。もし所望の周波数が割り込み周波数より少ないか又は等しいならば、エラーは１割り込みクロック周期より決して大きくならない。もし所望の周波数が割り込みクロック周波数より大きいならば、プロセスは飽和され、そして各割り込みにおけるパルスの正しい数を維持するように次の割り込み前にパルスを束ねる。一方、平均周波数は維持されるが、このような技術が受入れられないシステムがある。他の技術として、システムはパルスを発生する度に、２つ又はそれ以上の等しい間隔のパルスが発生され、ハードウェアの周波数ダブラー又はハードウェアの発生遅延がこの方法に関連して使用される。例えば、第２のループは、所望の周波数が、第１のループの各反復に続いて必要とされるパルスの数を予め計算することにより、trigger値を越える場合に対して、単一の反復ステップに減少される。しかしながら、大抵のシステムでは、これらの技術は実際に必要とされず、所望の最大周波数より高い割り込みクロック周波数を選択することは容易である。
割り込みがそれ自身で割り込まれるか又は完全に失敗されるような適用において、プロセッサは、累積器の値が失敗されるか省略される各割り込みに対して反復インクリメントによりインクリメントされる、ことを提供する正しい周波数を維持する。システムが割り込みを完全にサービスする時間を持つときに、パルスの束は一時的な休止エラーを補正する。失敗した割り込みの数は個々に記録され、実時間クロックとの比較から計算され、全体のプロセスは割り込みの代わりに実際の時間クロックとの比較に依存する。
このシステムが、ステッパーモータと共に、特にマイクロステッパーと共に使用されると、飽和は、モータ上で測定可能な効果を持たない。これは、パルスの束がモータの対応するよりも高い周波数で発生するからである。一般に、ステップモータの回転子は、回転子のイナーシャ及び銅捲線のリラクタンスによって、２０ミリ秒より少ないコイル電圧にて変化するように応答することができない。実際に比較的遅い場合でも、低価格の集積回路の飽和は、近似的に１０ＫＨｚ以上の周波数にて発生し、モータ上の効果は不明である。さらに、モータコイルに一連の値の組を迅速に一緒に送るパルスの束の代わりに、マイクロステッパー又はルックアップテーブルを使用すると、組の最後の値のみが送られる必要があり、中間値はモータ上での効果はない。このスキップ技術は、位置ステップカウント又は精度を失うことなく、高い周波数にてマイクロステッパーを制御することを可能にする。通常の動作から飽和への移行は、周波数が、システムに依存する制限を越えるときはいつでもプロセスにより自動的に実行される。移行は、パルスの束が正しい平均周波数を維持するためのみ使用されので滑らかになり、そしてパルスの束の使用は常に最小化される。
本発明の１つの利点として、システムが運用されている間、変数が変えられることである。加速ループを経て、直接的に又は間接的にｒ値を変化させることにより、本発明の方法は、実現に依存する最大までいずれの周波数に対しても加速し、維持しそして減速する。そして位置又は周波数の情報はリアルタイムに報告され得る。加速及び減速の速度は、各割り込みにてｒを変えるaccRate値を変えることにより制御できる。さらに、加速及び減速に対する異なる速度は、個別の変数を使用することにより達成される。
プロセスが非常に簡素化されコンパクト化されたことで、そして比較上の特徴にのみ依存して、そして加算か減算か、又は適切な割り込み周波数と共に、ビットセット及びビットクリアの特徴に依存して、本発明は、最も安価で、結果的に非常に低価格のデバイスで最小の計算で強力なマイクロプロセッサにより実現され得る。１５，６２５ステップ／秒までの速度でステッパーモータを制御するために、この方法を採用する低価格で埋め込み型のコントローラは、いずれの周波数をスキップすることなく達成でき、かつ他の周波数ごとにスキップする間、３１０００ステップ／秒までの速度を生じるように形成される。より強力なプロセッサ又はプログラマブル論理デバイスとともに使用すると、エラーの無い最大周波数は、デバイスの発振周波数の限度まで増大する。このようなプロセスは、専用のシリコンで作られ、１５ＫＨｚのスキップが無く飽和の無い周波数が達成でき、３００ＭＨｚの周波数が現在可能である。各反復は単一のクロックサイクルにて現在実行されるので、周波数の制限は全くシリコンにある。ＧａＡｓのような貴金属材料を使用することにより、この周波数の最大は連続的に増大する。この方法は、現在１ＧＨｚを越える周波数を発生できる。この方法がマイクロコントローラとともに使用されると、ステッパーモータを制御するために一般に必要とされる全てはソースクロックと電力増幅器であり、全又は半又はマイクロステップに必要な信号は、現存するマイクロコントローラとともに内部的に発生される。
プロセスは、trigger値を変えることにより、又は同等な動作を実行することにより、断片的な周波数を発生することができる。例えば、０．１Ｈｚの解像度をもつ周波数は、もしtriggerが割り込み周波数の代わりに１０倍の割り込み周波数に設定されるならば発生され、そしてｒは所望の速度の１０倍に設定される。同様に、このルーティンは、断片的な周波数を生じるために整数の代わりに浮動小数点の数とともに使用される。
この方法は、閉ループシステムの一部としてもまた使用することができ、ここでモータ上に取り付けられた位置エンコーダは、モータ位置についての情報を提供する。このようなシステムは、実際の位置が内部的に計算された位置に従っており相違を最小にすることを照合するために使用される。
本発明の１つの格別の特徴は、現存の周波数発生器と対応するものであり、本発明にて発生されるクロック信号周波数は、入力クロック周波数から独立である。さらに、方法は、ゼロからシステムに依存する最大までの各周波数を正確に発生するためのケイパビリティを持ち、ゼロからシステムに依存する最大までの直線的な加速度を同様に発生する。
テーブル１から９は、どのようにして異なる割り込み周波数値で周波数を正確に発生するかを示し、より高い割り込み周波数にて迅速に設定する。さらに、テーブル９はどのようにして１つの周波数から他の周波数へ加速するかを示す。
本発明の実現の例は図６に示す。液体配水装置１５は本発明の周波数発生器（図示なし）を使用して制御されるステップモータ１６を具備する。ステップモータ１６は、部材１９を垂直円筒柱２０にそって上下に駆動するために、カップリング１８を経てリードスクリュー１７を回転する。部材１９の１つのアーム２１は、上端部に入口／出口２４を持つポンプ２３のピストン２２に接続される。
使用上で、ポンプピストン２２は低い位置（図示せず）に戻され、希釈剤がポンプ２３に満たされる。所望のステップ速度にて反対方向におけるモータ１６の動作はリードスクリュー組立を駆動し、ポンプピストン２２を上方に戻し、制御された速度にて出口２４を経て液体を放出する。
デジタル希釈器は２つの液体配水組立１５を具備し、目的は、混合の濃度、即ち、濃度勾配の変化を達成するために、所定の速度にて２つのポンプの内容を混合することである。従来のステップモータのコントローラは、それらが所定の範囲を越える周波数の所定の離散的な数のみ発生できるので、制限される。従って、各ポンプピストンの速度は、直線的な速度プロファイルにのみ近似するより粗い段階で変化される。ポンプピストンの速度が上下にステップする度に、ポンプからの液体の流出は乱れ、従って、混合でなされた測定の精度を減少される。
反対に、本発明の周波数発生器は、所定の速度プロファイルに従って、２つのステップ速度の間でステッパーモータを加速することを可能にする。図７ａ及び７ｂは、２つのポンプから放出された液体に対してポンプピストンの相対的な変位に対する時間と速度のグラフを示す。
本例では、塩水のサンプルが純水のサンプルと混合される。図７ａに示すように、塩分の溶液が満たされたポンプを駆動するステップモータは、速度Ｖ1にて液体を放出するためにポンプピストンを加速し、一方、純水が満たされたポンプを駆動するステップモータは、低い速度Ｖ2にて液体を放出するためにポンプピストンを加速する。
一度、各ポンプから一定の流速が確立されると、時刻Ｔ1にて、塩水の満たされたポンプに関連したステッパーコントローラは、期間（Ｔ2−Ｔ1）上で速度Ｖ2に直線的に減速され、同時に、水の満たされたポンプに関連するステッパーコントローラは速度Ｖ1に直線的に加速される。この期間において、２つのポンプの結合された流速は一定に残る。最終的に、２つおポンプは期間（Ｔ3−Ｔ2）にて勢いよく放出する。
本例により示されるように、本発明の周波数発生器は２つの周波数の間を、ユーザにより決められた速度で段階的でなく直線的に加速することができる。使用上で、ユーザは、手動で新たな所望の周波数をエンターせずに、所定の期間又はパルス数の後に、周波数を変えるためにシステムを事前にプログラムする。所定の変位に対する速度の変化は変数accRate（図５参照）により決められる。
テーブル１０は、どのようにして事前にプログラムされたマイクロプロセッサが、図７ａに示す速度プロファイルの形式を達成するために、クロック信号周波数を自動的に変化させるかの例を示す。本例では、周波数は、１００Ｈｚにて第１の３０００クロックパルスに対して一定を保ち、所望の周波数が、９ＫＨｚ及び速度ｒ、又は第１の反復インクリメントに変え、さらに１００Ｈｚから９ＫＨｚに、約２０秒又は４２０００パルスの期間で加速する。
【図１】
0003955631.tif 000002
【図２】
0003955631.tif 000003
【図３】
0003955631.tif 000004
【図４】
0003955631.tif 000005
【図５】
0003955631.tif 000006
【図６】
0003955631.tif 000007
【図７ａ】
0003955631.tif 000008
【図７ｂ】
0003955631.tif 000009
【図８】
0003955631.tif 000010
【図９】
0003955631.tif 000011
【図１０】
0003955631.tif 000012
【図１１】
0003955631.tif 000013
【図１２】
0003955631.tif 000014