(57)【特許請求の範囲】
【請求項１】
デジタル信号である基準クロック信号を出力する基準クロック発生手段と、前記基準クロック信号を入力して予め設定されたそれぞれの設定値までカウントし、それぞれの設定値になった時に出力信号を出力するとともにカウント値を初期化する２つのカウンタ手段と、前記２つのカウンタ手段の設定値を異ならせるとともに書き換える書き換え手段をとを備え、前記カウンタ手段の出力信号をフリップフロップ回路のリセット入力とセット入力にそれぞれ1対1に接続し、前記フリップフロップ回路の出力信号をパルス列とするとともに、前記カウンタ手段の予め設定されたカウントアップ設定値を次のカウントアップ設定値に書き換えた後に、現在のカウンタ積算値と書き換えたカウントアップ設定値とを比較し、現在のカウンタ積算値が書き換えたカウントアップ設定値以上の値の場合、かつ、カウンタ手段がアップカウント処理の場合に、現在のカウンタ積算値をリセットするパルス列生成装置。
【請求項２】
デジタル信号である基準クロック信号を出力する基準クロック発生手段と、前記基準クロック信号を入力して予め設定されたそれぞれの設定値までカウントし、それぞれの設定値になった時に出力信号を出力するとともにカウント値を初期化する２つのカウンタ手段と、前記２つのカウンタ手段の設定値を異ならせるとともに書き換える書き換え手段を備え、前記カウンタ手段の出力信号をフリップフロップ回路のリセット入力とセット入力にそれぞれ1対1に接続し、前記フリップフロップ回路の出力信号をパルス列とするとともに、カウンタ手段の予め設定されたカウントダウン設定値を次のカウントダウン設定値に書き換えた後に、現在のカウンタ積算値と書き換えたカウントダウン設定値とを比較し、現在のカウンタ積算値が書き換えたカウントダウン設定値以下の値の場合、かつ、カウンタ手段がダウンカウント処理の場合に、現在のカウンタ積算値をリセットするパルス列生成装置。
【請求項３】
モータへの電力を制御するＰＷＭ回路として、入力信号を電圧に変換するＰＷＭ変換手段と、信号に極性を付加する極性付加手段を有し、請求項１または２記載のフリップフロップ回路の出力信号を前記ＰＷＭ変換手段に入力するモ−タ回転速度指令生成装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、任意のデュ−ティと周波数を有するパルス列を生成するパルス列生成方法とその装置およびこれを用いたモ−タ回転速度指令生成装置に関する。
【０００２】
【従来の技術】
従来、図９に示す基本三角波を基にスレッショルド電圧レベル＋Ｖａを時間軸に対して任意に変化させ、前記基本三角波と前記スレッショルド電圧レベルが一致する点で例えばウィンドコンパレ−タ（図示せず）を用いて前記一致点に応じたパルス幅を有する所望のパルス列を生成していた。
【０００３】
このようなパルス列の使用方法としては、このパルス列をモータの制御に用いるＰＷＭ回路に入力し、このＰＷＭ回路で電圧に変換してモ−タ回転速度指令電圧を生成し、パルス列のパルス数で回転量を決定し、パルス列の周波数で回転速度を決定してモ−タの回転制御を行っていた。
【０００４】
【発明が解決しようとする課題】
しかし、従来の構成では下記問題点を有していた。
【０００５】
すなわち、前述の所望のパルス列をＰＷＭ回路にて速度指令電圧に変換してモータの制御を行う方法では、パルス列のパルス数で回転量を決定してパルス列の周波数で回転速度を決定しているステッピングモ−タの回転を制御することはできなかった。
【０００６】
また、基本三角波とスレッショルド電圧値との交点によりパルスを生成するときによくコンパレ−タが用いられるが、前記基本三角波と前記スレッショルド電圧値とを前記コンパレ−タの入力として両入力信号の一致検出を行いパルス列生成を実施する場合、前記２つの入力信号はアナログ信号でノイズが重畳するのが常であり、この影響によりコンパレ−タの不要な出力反転が発生しないように不感帯をつくり、ヒステリシスをもたせているので、モ−タの回転速度を精度良く制御できなかった。
【０００７】
これに加えて、パルス列生成因子である前記基本三角波と前記スレッショルド電圧レベルは、アナログ信号であるため回路自体や経年変化や周囲環境温度によるアナログ誤差を含むので、精度よい所望のパルス列生成を得ることができず最終のモ−タ回転速度を精度良く制御できなかった。
【０００８】
本発明は上記問題点を解決するもので、経年変化や周囲環境温度等による影響を少なくでき、精度のよいパルス列の生成を行えるパルス列生成方法とその装置を提供するものである。
【００１４】
また、請求項１記載の本発明は、デジタル信号である基準クロック信号を出力する基準クロック発生手段と、前記基準クロック信号を入力して予め設定されたそれぞれの設定値までカウントし、それぞれの設定値になった時に出力信号を出力するとともにカウント値を初期化する２つのカウンタ手段と、前記２つのカウンタ手段の設定値を異ならせるとともに書き換える書き換え手段をとを備え、前記カウンタ手段の出力信号をフリップフロップ回路のリセット入力とセット入力にそれぞれ1対1に接続し、前記フリップフロップ回路の出力信号をパルス列とするとともに、前記カウンタ手段の予め設定されたカウントアップ設定値を次のカウントアップ設定値に書き換えた後に、現在のカウンタ積算値と書き換えたカウントアップ設定値とを比較し、現在のカウンタ積算値が書き換えたカウントアップ設定値以上の値の場合、かつ、カウンタ手段がアップカウント処理の場合に、現在のカウンタ積算値をリセットするパルス列生成装置である。
【００１５】
また、請求項２記載の本発明は、デジタル信号である基準クロック信号を出力する基準クロック発生手段と、前記基準クロック信号を入力して予め設定されたそれぞれの設定値までカウントし、それぞれの設定値になった時に出力信号を出力するとともにカウント値を初期化する２つのカウンタ手段と、前記２つのカウンタ手段の設定値を異ならせるとともに書き換える書き換え手段をとを備え、前記カウンタ手段の出力信号をフリップフロップ回路のリセット入力とセット入力にそれぞれ1対1に接続し、前記フリップフロップ回路の出力信号をパルス列とするとともに、前記カウンタ手段の予め設定されたカウントダウン設定値を次のカウントダウン設定値に書き換えた後に、現在のカウンタ積算値と書き換えたカウントダウン設定値とを比較し、現在のカウンタ積算値が書き換えたカウントダウン設定値以下の値の場合、かつ、カウンタ手段がダウンカウント処理の場合に、現在のカウンタ積算値をリセットするパルス列生成装置である。
【００１６】
また、請求項３記載の本発明は、モータへの電力を制御するＰＷＭ回路として、入力信号を電圧に変換するＰＷＭ変換手段と、信号に極性を付加する極性付加手段を有し、請求項１または２に記載のフリップフロップ回路の出力信号を前記ＰＷＭ変換手段に入力するモ−タ回転速度指令生成装置である。
【００１７】
【発明の実施の形態】
本発明によれば、２つのカウンタ手段の設定値を異ならせているので、これら設定値の差に相当するデジタル信号である基準クロック信号間隔のパルスを生成でき、この設定値を随時書き換えることにより任意の周波数・デュ−ティを正確に有するパルス列を生成することができる。
【００１８】
また、カウント目標設定値を１対２の比に設定するので、デュ−ティを５０％に正確に制御できる。
【００１９】
そして、本発明によるパルス列を用いればステッピングモ−タの回転位置（角度）と速度の制御を行うことができるとともに、従来の基本三角波を用いて速度指令電圧を生成するものに比べて、より確実に精度良く制御することができる。
【００２０】
さらに、生成された任意のデュ−ティを有するパルス列をＰＷＭ変換手段と極性付加手段により加工し、指令電圧を生成するので、従来の基本三角波を用いて速度指令電圧を生成する場合よりもアナログ誤差を小さくできるので、モ−タの回転速度をより精度良く、制御することができる。
【００２１】
（実施の形態）
次に、本発明の実施の形態例について説明を行う。
【００２２】
第一の実施の形態例を図１と図３と図４を用いて説明する。
【００２３】
まず、図４において、ＣＰＵ（図示せず）はラッチ回路７を用い、デ−タバスの所定のビットをＨＩＧＨ（１）またはＬＯＷ（０）に設定しておいて、ＷＲＩＴＥＭ端子に、ゲートをＬＯＷ信号時にアクティブにする（アクティブＬＯＷ）信号をセットしてモ−タを回転させる方向を書き込む。
【００２４】
このラッチ回路７の前述のビットに対応した出力がサ−ボアンプ（図示せず）に伝達されてモ−タ回転方向が定まる。
【００２５】
このモ−タ回転方向設定状態は、モ−タの回転方向を変更するまでは設定を変更する必要はない。
【００２６】
次に、図１に示すような１周期（ｔ１＋ｔ２）秒でｔ１＝ｔ２秒の幅を即ち、デュ−ティ５０％を有するパルス列を生成する場合について説明を行う。
【００２７】
まず、図３に示すように第１のカウンタ１と第２のカウンタ２を備えている。
【００２８】
ＣＰＵ（図示せず）は、第１のカウンタ１をチップセレクトし、データバス上に第１のカウンタのカウント目標設定値としてパルスＯＦＦ時間ｔ１秒をデジタル信号である基準クロックの１周期時間で除算した値（もしもこの値が小数点以下の値を含む場合は四捨五入して整数値とした値）をセットして、次にＷＲＩＴＥ信号をパルス的にＬＯＷ（アクティブＬＯＷ）信号にすることで第１のカウンタに書き込む。
【００２９】
次に、同様にしてＣＰＵにより、第２のカウンタ２をチップセレクトし、データバス上に第２のカウンタ２のカウント目標設定値としてパルスＯＮ時間ｔ２秒をセットし、次にＷＲＩＴＥ信号をパルス的にＬＯＷ（アクティブＬＯＷ）信号にすることで第２のカウンタに書き込む。
【００３０】
本実施の形態例の場合、ｔ１＝ｔ２秒の幅、即ちデュ−ティ５０％を有するパルス列を生成するので、前記第１のカウンタ１のカウント目標設定値の２倍の値を第２のカウンタ２のカウント目標設定値として書き込む。
【００３１】
このように、パルス周期（ｔ１＋ｔ２）秒のパルスを生成する場合、パルス幅ｔ１秒を作るのが第１のカウンタであり、パルス周期を（ｔ１＋ｔ２）秒とするのが第２のカウンタとなる。
【００３２】
この時、ＣＰＵは図３のＳＴＡＲＴ信号をアクティブＬＯＷにする。
【００３３】
この瞬間、図３の第１のカウンタ１と第２のカウンタ２が同時に基準クロック数のカウント動作を開始し、また、最終出力ＯＵＴはＬＯＷレベル状態からの開始となる。
【００３４】
常時、（第１のカウンタ１のカウント目標設定値）＜（第２のカウンタ２のカウント目標設定値）とするので、前記基準クロック数のカウント動作開始後、目標設定値到達時に第１のカウンタ１がカウント完了状態となりカウント完了出力Ｏ１を出力する。
【００３５】
この出力信号がＲＳフリップフロップ３のセット入力ＳとなりＲＳフリップフロップ３の出力ＯＵＴの論理がＬＯＷ状態からＨＩＧＨ状態へと切り替わる。
【００３６】
次に、第１のカウンタ１の目標設定値より第２のカウンタ２の目標設定値が大きいので、第１のカウンタ１からのカウント完了出力Ｏ１からそれぞれの目標設定値の差に相当する基準クロック数が経過した時、すなわち、第２のカウンタ２の目標設定値までカウント動作が行われた時、第２のカウンタ２もカウント完了状態となり、カウント完了出力Ｏ２を出力する。
【００３７】
この出力信号がＲＳフリップフロップ３のリセット入力ＲとなりＲＳフリップフロップ３の出力ＯＵＴの論理がＨＩＧＨ状態からＬＯＷ状態へと切り替わる。
【００３８】
この時、前記ＲＳフリップフロップ３の出力ＯＵＴの論理をＨＩＧＨ状態からＬＯＷ状態へと切り替えた前記カウント完了出力Ｏ２は第１のカウンタ１と第２のカウンタ２のカウント動作開始（それぞれのカウンタの現在カウント値のリセットも兼ねる）信号ともなっていて再び、前述のパルス周期（ｔ１＋ｔ２）秒に合致したパルス列生成を行う動作を開始させる。
【００３９】
ここで、例えばモ−タを等速度回転させ続ける場合はパルス周期（ｔ１＋ｔ２）秒の値は各パルスにおいて同値でよいのでＣＰＵが介在することなく図３のハ−ドウェアでモ−タを等速度回転させ続けることができる。
【００４０】
一方、モ−タを停止状態からあるいは等速度回転状態から加速あるいは減速させたいときはパルスデュ−ティとなる時間ｔ１秒とｔ２秒の比は変化させずにモ−タやそのモ−タを用いた機構に合致させた加減速特性データテ−ブル（図示しない）あるいは加減速特性式（図示せず）により求められた値に合致した値を各カウンタのカウントアップの目標設定値としてセットするため、ＣＰＵが図３のバスとＷＲＩＴＥ信号等を制御して第２のカウンタ２のカウント目標設定値として書き換えた後に前記求めた値の半分の値を第１のカウンタ１のカウント目標設定値として書き換える。
【００４１】
この後、ＣＰＵが図３のＳＴＡＲＴ信号をアクティブＬＯＷにする。
【００４２】
この瞬間、図３の第１のカウンタ１と第２のカウンタ２が同時に基準クロック数のカウント動作を開始する。
【００４３】
この後の図３の回路動作は前述している内容と同じなので割愛する。
【００４４】
前述の加減速特性テ−ブル（図示しない表）あるいは加減速特性式（図示せず）に合致するモ−タ回転速度変化となるようにＣＰＵはリアルタイムに前記（第１のカウンタ１のカウント目標設定値）＜（第２のカウンタ２のカウント目標設定値）を書き換え、この後、ＣＰＵが図３のＳＴＡＲＴ信号をパルス的にアクティブＬＯＷにする工程をモ−タ回転速度が等速度になるまで続ける。
【００４５】
モ−タの回転方向を反転させる場合は必ずモ−タ速度を０即ち、ほぼ停止状態にした後図４のラッチ回路の所定出力ビットを反転させて実施している。
（実施の形態２）
本実施の形態例２を以下に説明する。
【００４６】
本実施の形態例は前述の説明において、所望のパルス１周期（ｔ１＋ｔ２）秒で、図２に示すように第２のカウンタ２のカウント目標設定値より小さい設定値を第１のカウンタ１のカウント目標設定値とするという条件だけでパルスデュ−ティを可変とするものである。
【００４７】
その他の動作内容は第一の実施例に即し前述の詳細な説明と同じなので説明を割愛する。
（実施の形態３）
（実施の形態３）
次に、本発明の実施の形態例３について説明を行う。
【００４８】
実施の形態例３は、カウンタのカウント動作としてカウントアツプ動作の場合を説明する。
【００４９】
まず、前述の実施の形態例１又は２においては第１のカウンタ１と第２のカウンタ２のカウント目標設定値を書き換えた場合、ＣＰＵが図３のＳＴＡＲＴ信号をアクティブＬＯＷにして、図３の第１のカウンタ１と第２のカウンタ２を同時にリセットして、基準クロック数のカウント動作を再開始するものである。
【００５０】
この場合、ＣＰＵによるカウンタ１あるいはカウンタ２のカウント積算値を強制的にリセツトすることによりパルス出力が停止あるいは乱調になってしまう。
【００５１】
この課題を解決するための本発明の実施の形態３を図３と図５と図６と図７を用いて説明する。
【００５２】
図３において、第１のカウンタ１の目標設定値より第２のカウンタ２の目標設定値が大きいので、第１のカウンタ１からのカウントアップ出力Ｏ１からそれぞれの目標設定値の差に相当する基準クロック数が経過した時、すなわち、第２のカウンタ２の目標設定値までカウント動作が行われた時、第２のカウンタ２もカウントアツプ状態となり、カウントアツプ出力Ｏ２を出力する。
【００５３】
この出力信号がＲＳフリツプフロツプ３のリセツト入力ＲとなりＲＳフリツプフロツプ３の出力ＯＵＴの論理がＨＩＧＨ状態からＬＯＷ状態へと切り替わる。
【００５４】
この時、前記ＲＳフリツプフロツプ３の出力ＯＵＴの論理をＨＩＧＨ状態からＬＯＷ状態へと切り替えた前記カウントアツプ出力Ｏ２は第１のカウンタ１と第２のカウンタ２のカウント動作開始（それぞれのカウンタの現在カウント値のリセットも兼ねる）信号ともなつていて再び、前述のパルス周期  （ｔ１＋ｔ２）秒に合致したパルス生成を行う動作を開始させる。
【００５５】
本発明の実施の形態３はＣＰＵによるカウンタ１あるいはカウンタ２のカウント積算値を強制的にリセツトすることは行わず、ハードウェアの系だけで、すなわち、前述のカウントアツプ出力Ｏ２でのみ第１のカウンタ１と第２のカウンタ２のカウント動作開始（それぞれのカウンタの現在カウント値のリセツトも兼ねる）信号とし、前述のパルス周期（ｔ１＋ｔ２）秒に合致したパルス列生成を行う動作を継続させるものである。
【００５６】
ところが、図５において、カウントアツプ中の現在のカウンタ値、つまりカウンタ値が図のｔｃｌｋの区間（便宜的に）アとイの区間内において、ＣＰＵが第２のカウンタの設定値を現在設定値より小さな値を第２のカウンタの次の設定値としてカウンタ２に書き込んだ瞬間、現在のカウンタ（積算）値は第２のカウンタの目標設定値（第２のカウンタの次の設定値）より大きな値となつてしまう。
【００５７】
この場合、現在のカウンタ（積算）値は第２のカウンタのハードウェア的なビット数による有限カウント値に到達するまで、即ちカウントオーバーフロー状態となるまでカウントして初めて、リセット状態となる。
【００５８】
つまり、図５の区間（便宜的に）アとウの区間内においてパルス列出力動作停止という状態が発生してしまう。
【００５９】
この状態を回避するために本発明の実施の形態３においては、図６のアルゴリズムに示すようにカウンタの目標設定値を更新した場合は、次に現在のカウンタ積算値を読み込み両者を比較して、カウンタ積算値が大きければ積算カウンタ値をリセットするものである。
【００６０】
このことにより、図５の区間（便宜的に）アとウの区間内で示されるパルス列出力動作停止という区間を発生しないものである。
【００６１】
次に、カウンタのカウント動作がカウントダウンの動作の場合も本発明の実施の形態例３と同じ技術的思想で実現可能であり、図７に示すアルゴリズムに従い、カウンタの目標設定値を更新した場合は、次に現在のカウンタ積算値を読み込み両者を比較して、カウンタ積算値が小さければ積算カウンタ値をリセツトするものである。
【００６２】
このことにより、前述と同様にカウントダウン動作においても、図示しないが図５の区間（便宜的に）アとウの区間内で示されるパルス列出力動作停止という区間と同様なカウントダウン動作における該区間を発生することがないものである。
（実施の形態４）
次に、本発明をモータの制御装置に適用する実施の形態例を図２、３，４、８を用いて説明する。
【００６３】
本実施の形態例４の構成を図８に示す。
【００６４】
図２に示す出力ＯＵＴを図３のＯＵＴ出力として取り出し、この図３のＯＵＴ出力（図２のＯＵＴ出力でもある）を図８に示すＰＷＭ変換部４の入力信号とするものである。
【００６５】
ここで、本実施の形態例では速度に比例したパルスデュ−ティを必要とするため、図２に示すＯＵＴ出力を用いている。
【００６６】
即ち、図２に示すパルス幅ｔ２をＰＷＭ変換し速度電圧指令とするものである。
【００６７】
速度指令を電圧で実施する場合は電圧の正負でモ−タの回転方向を決定するため、図８のＰＷＭ変換部４の出力信号を極性付加部５に入力しかつ、ＣＰＵが極性付加部５内のスイッチ６を切り替えることにより所望の回転方向の速度指令電圧ＣＶを生成するものである。
【００６８】
前記スイッチ６の切換は速度指令電圧がほぼ０のとき即ち、ほぼ停止状態にした後、図４に示すラッチ回路７の所定出力ビットを反転させて実施している。
【００６９】
このように、第１のカウンタ１と第２のカウンタ２に設定するそれぞれのカウント目標設定値は所望のパルス周期（ｔ１＋ｔ２）秒と所望のパルスデュ−ティ（ｔ１／ｔ２）とを意味するものである。
【００７０】
なお、実施の形態例１（パルス列のパルス数で回転量をパルス列の周波数で回転速度が決定されるステッピングモ−タの回転を制御する装置に適用されるケース）においては、パルスデュ−ティは直接モ−タ制御に影響しないので理想的なパルスデュ−ティ５０％としている。
【００７１】
従って、１周期（ｔ１＋ｔ２）秒でｔ１＝ｔ２秒であり第２のカウンタ２のカウント目標設定値は第１のカウンタ１のカウント目標設定値の２倍の値としている。
【００７２】
また、実施の形態例２ではパルスデュ−ティを可変とするので１周期（ｔ１＋ｔ２）秒で、第２のカウンタ２のカウント目標設定値は第１のカウンタ１のカウント目標設定値より大きい値としている。
【００７３】
さらに実施の形態例４では実施の形態例２で生成された任意のパルスデュ−ティを有するパルス列をＰＷＭ変換器部と極性付加部により加工し指令電圧を生成するので従来の基本三角波を用いて速度指令電圧を生成する場合よりもアナログ誤差を小さくできるので、モ−タの回転速度をより精度良く、制御することができる。
【００７４】
【発明の効果】
以上の説明から明らかなように、本発明によれば、任意の周波数・デュ−ティ（例えば５０％デューティ）を有するパルス列を生成することができる。そこで、これをステッピングモ−タの回転制御に用いれば精度良く滑らかに回転させることができ、かつ位置決めを従来のものより確実に精度よく実施できる。
【００７５】
さらに、本発明によれば、フリップフロップ回路の出力信号を入力して電圧へ変換するＰＷＭ変換手段と、極性を付加する極性付加手段を有するので、任意の周波数で、任意のデュ−ティを有するパルス列を生成でき、このパルス列をＰＷＭ変換器部と極性付加部により加工し指令電圧を生成するので従来の基準三角波を用いて速度指令電圧を生成する場合よりもアナログ誤差を小さくできるので、モ−タの回転速度をより精度良く、制御することができる。
【図面の簡単な説明】
【図１】本発明の実施の形態例におけるパルス列生成を説明するタイミングチャ−ト
【図２】本発明の実施の形態例におけるパルス列生成を説明するタイミングチャ−ト
【図３】本発明の実施の形態例におけるパルス列生成回路の説明図
【図４】本発明の実施の形態例におけるモ−タ回転方向を制御する回路の説明図
【図５】カウンタ目標設定値の更新時を説明するタイミングチャート
【図６】アップカウント時におけるカウンタ目標設定値更新時の要部フローチャート
【図７】ダウンカウント時におけるカウンタ目標設定値更新時の要部フローチャート
【図８】本発明の実施の形態例におけるＰＷＭ回路部の説明図
【図９】基本三角波によりパルス列を生成する従来例を示す図
【符号の説明】
１  第１のカウンタ
２  第２のカウンタ
３  ＲＳフリップフロップ回路
４  ＰＷＭ変換器部
５  極性付加部
６  スイッチ
７  ラッチ回路
【図１】
0003622703.tif 000002
【図２】
0003622703.tif 000003
【図３】
0003622703.tif 000004
【図４】
0003622703.tif 000005
【図５】
0003622703.tif 000006
【図６】
0003622703.tif 000007
【図７】
0003622703.tif 000008
【図８】
0003622703.tif 000009
【図９】
0003622703.tif 000010