(57)【要約】【課題】速度演算誤差を生じず、コストの低減を可能にした速度検出装置を提供する。【解決手段】エンコーダの出力パルスのエッジを検出するラッチ信号作成部２１と、速度演算周期に同期して時間を計測する時間カウンタ２３と、ラッチ信号作成部２１から出力される第１ラッチ信号により時間計測値を保持する第１ラッチ部４１のデータラッチ２５−１〜２５−４と、第１ラッチ部４１により保持された時間計測値を第２ラッチ信号により保持する第２ラッチ部４２のデータラッチ２８−１〜２８−４と、前記エッジが速度演算周期信号と同時に発生した際に同時検出信号を発生する同時信号検出手段３５と、同時検出信号の発生時に、速度演算周期信号を所定時間だけずらした調整信号を第２ラッチ信号として第２ラッチ部４２に与える第２ラッチ信号選択手段３６と、第２ラッチ部４２により保持した時間計測値を用いて回転速度を演算するＣＰＵ３０と、を備える。【選択図】図１
2010008235.tif 000002
【特許請求の範囲】
【請求項１】
速度検出対象としての回転体に取り付けられたエンコーダの出力パルスから、回転体の回転速度を検出する速度検出装置において、
前記出力パルスのエッジを検出するエッジ検出手段と、
速度演算周期信号に同期した時間を計測する時間計測手段と、
前記エッジ検出手段によるエッジ検出信号を第１ラッチ信号として用いることにより前記時間計測手段による時間計測値を保持する第１の時間記憶手段と、
第１の時間記憶手段により保持された時間計測値を、第２ラッチ信号により保持する第２の時間記憶手段と、
前記エッジが前記速度演算周期信号と同時に発生した際に同時検出信号を発生する同時信号検出手段と、
前記同時検出信号の発生時に、前記速度演算周期信号を所定時間だけずらした調整信号を前記第２ラッチ信号として第２の時間記憶手段に与える第２ラッチ信号選択手段と、
第２の時間記憶手段により保持した時間計測値を用いて、前記回転体の回転速度を演算する演算手段と、
を備えたことを特徴とする速度検出装置、
【請求項２】
請求項１に記載した速度検出装置において、
第１の時間記憶手段は、位相が異なる複数のパルスのエッジ検出信号を第１ラッチ信号として複数の時間計測値をそれぞれ保持し、
第２の時間記憶手段は、複数の前記エッジ検出信号のうち前記速度演算周期信号と同時に発生したエッジ検出信号に対応する時間計測値を、第２ラッチ信号としての前記調整信号により保持すると共に、他のエッジ検出信号に対応する時間計測値を、第２ラッチ信号としての前記速度演算周期信号により保持することを特徴とする速度検出装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、例えば電動機を可変速駆動する電動機駆動装置において、電動機に取り付けたエンコーダの出力パルスを用いて電動機速度を検出する速度検出装置に関するものである。
【背景技術】
【０００２】
電動機を可変速駆動する装置として、インバータが知られている。インバータの機能の中で、電動機の速度を高精度に制御するために、電動機に取り付けたエンコーダの出力パルス信号に基づいて電動機速度を検出し、速度指令値との偏差をゼロにする速度調節機能を用いて制御を行うものがある。
【０００３】
しかし、エンコーダの出力パルスは通常、１回転あたりのパルス数が決められており、パルスは回転速度によって粗密が発生する。パルスが粗となる低速領域では、検出精度が悪化して速度検出値に誤差が生じるため、速度制御性能を悪化させる原因となる。速度制御性能が悪化すると、例えばクレーンなどでは、速度制御誤差がトルクのリプルとなり、積荷に振動が伝わって問題になる。あるいは速度制御誤差により、自動運転中に積荷の停止位置に誤差が生じ、他の機器に影響を及ぼす等の問題が生じる。
また、エンコーダの取り付け方により、出力パルスの位相誤差が発生し、この出力パルスに基づく検出方法では、速度検出値に位相誤差の影響が現れ、上述したようなトルクリプル等の問題を引き起こす。
【０００４】
そこで、上述の問題を解決するため、特許文献１には、エンコーダの出力パルスの立ち上がりエッジ、立ち下がりエッジを利用して速度を検出する方法が開示されている。以下、この従来技術について簡単に説明する。
【０００５】
図３は、特許文献１に記載された従来技術の構成図である。
図３において、ラッチ信号作成部２１は、エンコーダから出力されるＡ相、Ｂ相という位相の異なった２種類のパルスからそれぞれの立ち上がりエッジ、立ち下がりエッジを検出し、合計４種類のラッチ信号ＥＤ０〜ＥＤ３を作成する。角度計測カウンタ２２は、ラッチ信号（４Ｆ）と電動機の回転方向を示すＵＰ／ＤＯＷＮ信号を用いてカウンタのＵＰ，ＤＯＷＮを行う。
【０００６】
時間計測カウンタ２３は、速度演算周期に同期してゼロになるダウンカウンタである。また、４種類のラッチ信号ＥＤ０〜ＥＤ３のそれぞれに対応させて、角度計測カウンタ２２の値をラッチして保存する第１データラッチ２４−１〜２４−４と、時間計測カウンタ２３による時間計測値をラッチして保存する第２データラッチ２５−１〜２５−４とを設け、更に、速度演算周期毎に入力データをラッチする角度データラッチ２７−１〜２７−４，時間データラッチ２８−１〜２８−４を設ける。
ＣＰＵ３０では、速度演算周期毎に角度計測値（データラッチ２７−１〜２７−４の値）と時間計測値（データラッチ２８−１〜２８−４の値）とを読み込み、検出フローチャートに従って電動機の速度を検出する。
【０００７】
なお、２６は、ラッチ信号ＥＤ０〜ＥＤ３からＡ相パルス、Ｂ相パルスのエッジ変化を検出して保持するエッジ保持部、２９は、エッジ保持部２６の出力信号ＦＩＬ０〜ＦＩＬ３から、エッジの変化が１回でもあれば「１」を、エッジの変化が１回もなければ「０」を設定して保持することによりエッジの変化情報を保持するエッジ変化情報保持部、３１はコントローラ、３２は第３データラッチを示す。
【０００８】
図４は、上記従来技術による速度検出動作を示すフローチャートである。
速度演算周期毎にエッジの変化の有無を図３のエッジ保持部２６により検出し、速度演算周期毎にラッチしたエッジ変化情報保持部２９の出力値Ｆ０〜Ｆ３をＣＰＵ３０が読み込む。速度演算周期において一度でもエッジを検出していたら、カウント値の大小から最新のエッジを検索し、最新エッジに対応するデータラッチ２７−１〜２７−４の角度計測値とデータラッチ２８−１〜２８−４の時間計測値とを用いて、数式１に基づいて速度ωを演算する。
【０００９】
【数１】
2010008235.tif 000003
【００１０】
ただし、θＮｅｗは今回のサンプルタイミングで読み込んだ角度計測値、θＯＬＤは前回のサンプルタイミングで読み込んだ角度計測値、ＴＳはサンプリング周期、ＴＮｅｗは今回のサンプルタイミングで読み込んだ時間計測値、ＴＯＬＤは前回のサンプルタイミングで読み込んだ時間計測値である。
また、速度演算周期内にパルスが一度も存在しなかった場合は、ＴＯＬＤにサンプリング周期ＴＳを加えて速度ωＳを推定する。
【００１１】
【特許文献１】特開平６−１１８０９０号公報（［００２４］〜［００４３］、図２，図１４）
【発明の開示】
【発明が解決しようとする課題】
【００１２】
上述した従来技術においては、角度計測カウンタ２２によりエンコーダの出力パルスの数を計測しているので、速度演算周期毎にパルスが多数存在するような高速域では、角度計測カウンタ２２がオーバーフローして速度を検出できないことがある。これを防止するために、角度計測カウンタ２２の測定可能な範囲に余裕をもたせると記憶容量が大きくなり、制御装置のコストが増大する等の問題がある。
【００１３】
そこで出願人は、上記の問題点を解決可能な速度検出装置を、特願２００７−２５４４４５号として既に出願している。
この先願発明は、エンコーダの出力パルスが粗となる低速域での検出精度を悪化させずに、高速域でも高精度に速度を検出可能としたものであり、図３における角度計測カウンタ２２と、その値を保持する第１データラッチ２４−１〜２４−４及び角度データラッチ２７−１〜２７−４を用いずに速度検出を行っている。
【００１４】
図５は上記先願発明の構成を示している。図５において、２１はエッジ検出手段としてのラッチ信号作成部であり、エンコーダ（図示せず）から出力される位相の異なったＡ相パルス、Ｂ相パルスの立ち上がりエッジと立ち下がりエッジ（合計４種類のエッジ）とを検出し、ラッチ信号（第１ラッチ信号）ＥＤ０，ＥＤ１，ＥＤ２，ＥＤ３を作成する。上記エンコーダは、例えば速度を検出するべき回転体である電動機回転軸に連結されて、その回転速度に比例した数のＡ相パルス、Ｂ相パルスを出力する。
【００１５】
上記Ａ相パルス、Ｂ相パルスは、回転方向検出部３７にも入力されている。この回転方向検出部３７は、後述するように、Ａ相パルス、Ｂ相パルス及びラッチ信号ＥＤ０，ＥＤ１，ＥＤ２，ＥＤ３から、電動機の回転方向（ＣＷ：正転，ＣＣＷ：逆転）を検出するものである。
回転方向検出部３７から出力される信号ＣＷ／ＣＣＷは、回転方向保持部３３に入力され、速度演算周期信号（サンプリング信号）ＳＭＰＬによりラッチされて回転方向検出信号ＣＷＤＥＴとして出力される。
【００１６】
前記ラッチ信号ＥＤ０，ＥＤ１，ＥＤ２，ＥＤ３は、時間記憶手段としてのデータラッチ２５−１〜２５−４に入力されていると共に、Ｊ−Ｋフリップフロップ等からなるエッジ保持部２６にも入力されている。
データラッチ２５−１〜２５−４には、図３と同様に時間計測カウンタ２３から出力された時間計測値ＴＤＥ０ＥＮ〜ＴＤＥ３ＥＮが入力されており、ラッチ信号ＥＤ０，ＥＤ１，ＥＤ２，ＥＤ３によってこれらの時間計測値ＴＤＥ０ＥＮ〜ＴＤＥ３ＥＮを記憶し、次段のデータラッチ２８−１〜２８−４に送るように構成されている。上記時間計測カウンタ２３は、速度演算周期に同期してゼロになるダウンカウンタである。
データラッチ２８−１〜２８−４では、第２ラッチ信号としての速度演算周期信号ＳＭＰＬによりラッチした時間計測値ＴＤＥ０ＥＮ〜ＴＤＥ３ＥＮを、時間計測値Ｔ０ＥＮ〜Ｔ３ＥＮとしてＣＰＵ３０に送出する。
【００１７】
ラッチ信号ＥＤ０，ＥＤ１，ＥＤ２，ＥＤ３はエッジ保持部２６に入力され、速度演算周期における各エッジの変化の有無が検出される。エッジ保持部２６では、各ラッチ信号ＥＤ０，ＥＤ１，ＥＤ２，ＥＤ３について、エッジの変化が１回でもあれば「１」を設定して保持し、変化が１回もなければ「０」を設定して保持する。これらの保持データは、エッジ変化情報保持部２９に送られ、速度演算周期信号ＳＭＰＬによりラッチされてエッジ変化検出信号ＥＤＦ０〜ＥＤＦ３としてＣＰＵ３０に送出される。
【００１８】
図６は、前記回転方向検出部３７の動作を示すタイミングチャートである。
回転方向検出部３７は、ラッチ信号ＥＤ０，ＥＤ１，ＥＤ２，ＥＤ３が発生した際の、Ａ相パルス，Ｂ相パルスの状態から回転方向を検出する。
【００１９】
図６において、例えば時点（３）でＡ相パルスの立ち上がりエッジを信号ＥＤ０により検出したときに（ＥＤ０が「１」）、Ｂ相パルスが検出されない場合（Ｂ相パルスが「０」）は、正回転と判断して信号ＣＷ（＝「１」）を出力する。一方、時点（４）においてＢ相パルスの立ち下がりエッジを信号ＥＤ３により検出したときに（ＥＤ３が「１」）、Ａ相パルスが検出された場合（Ａ相パルスが「１」）には、逆回転と判断して信号ＣＣＷ（＝「０」）を出力する。
こうして得られた回転方向検出信号は、回転方向保持部３３において速度演算周期信号ＳＭＰＬによりラッチされ、回転方向検出信号ＣＷＤＥＴとしてＣＰＵ３０に送られる。
なお、図６において、ＴＣＨＮＧは回転方向が変化した時点を示している。
【００２０】
ＣＰＵ３０では、速度演算周期毎に、データラッチ２８−１〜２８−４からの時間計測値Ｔ０ＥＮ〜Ｔ３ＥＮと、回転方向保持部３３からの回転方向検出信号ＣＷＤＥＴと、エッジ変化情報保持部２９からのエッジ変化検出信号ＥＤＦ０〜ＥＤＦ３とを用いて、電動機の速度を検出する。
【００２１】
図７は、先願発明における速度検出動作を示すタイミングチャートである。ここでは、一例として、図７における時点（１）のサンプルタイミング（速度演算周期信号ＳＭＰＬのタイミング）で速度を検出するものとして説明する。
図７の時点（１）において、図示するサンプルタイミングによれば、最新のエッジは信号ＥＤ０によるＡ相パルスの立ち上がりエッジである。これは、エッジ変化検出信号ＥＤＦ０〜ＥＤＦ３から、ＥＤＦ０が「１」であり、その他のＥＤＦ１〜ＥＤＦ３が「０」であることから判断する。ここで、図７ではＥＤＦ０の値のみを図示し、ＥＤＦ１〜ＥＤＦ３を省略してある。
【００２２】
なお、エッジ変化検出信号ＥＤＦ０〜ＥＤＦ３のうち複数が「１」になった場合は、対応する時間計測値が最小になるものを最新のエッジとみなす。これは、時間計測カウンタ２３が、サンプルタイミングでゼロとなるダウンカウンタであり、最新エッジに対応する時間計測値がゼロに近いからである。勿論、時間計測カウンタ２３としてアップカウンタを使用しても良く、その場合には、対応する時間計測値が最大になるものを最新のエッジとみなせば良い。
【００２３】
このため、信号ＥＤ０によりラッチした時間計測値ＴＤＥ０ＥＮ＝Ｔ０ＥＮ１が最新の時間計測値（今回値）であり、前回の信号ＥＤ０が発生した時の時間計測値ＴＤＥ０ＥＮ＝Ｔ０ＥＮ０を前回値として使用する。このＴ０ＥＮ０の値は、時点（１）でデータラッチ２８−１から読み込むことはできないが、前回のエッジ変化検出信号ＥＤＦ０が「１」であった時点（１）’でＣＰＵ３０内のメモリに保存しておくことにより使用可能である。
また、速度演算周期に対応する時間計測カウンタ２３の最大値をＴｍａｘとし、前回値Ｔ０ＥＮ０から今回値Ｔ０ＥＮ１までの間にＥＤＦ０がゼロであったサンプリング回数をＮ０として、これらをＣＰＵ３０のメモリに記憶しておき、数式２に基づいて速度ｎを演算する。
【００２４】
【数２】
2010008235.tif 000004
【００２５】
なお、数式２において、ＣＷｓｉｇｎは回転方向を示し、正回転（ＣＷ）を「１」、逆回転（ＣＣＷ）を「−１」とする。また、Ｋはエンコーダの１回転あたりの出力パルス数に関係する定数である。
【００２６】
上記の先願発明において、図３の従来技術における角度計測カウンタ２２及びデータラッチ２４−１〜２４−４，２７−１〜２７−４を用いずに速度検出が可能になる理由は以下の通りである。
回転方向が変化していない場合には、Ａ相パルス、Ｂ相パルスは順序通り発生する。例えば、図７より、Ａ相パルスの立ち上がり→Ｂ相パルスの立ち上がり→Ａ相パルスの立ち下がり→Ｂ相パルスの立ち下がりという順序は不変である。このため、図７の時点（１）のサンプルタイミングで速度検出を行う場合、回転方向が変化していなければ、前回のＡ相パルスの立ち上がりから今回のＡ相パルスの立ち上がりまでに計４回のエッジが発生したことがわかる。
【００２７】
従って、角度計測カウンタ等を用いてパルス数を計測することなく、数式２の分子を、Ａ相パルス１周期内に存在するＡ相，Ｂ相パルスのエッジ数とおいて速度ｎを検出することができる。なお、数式２における分子の４は、Ａ相パルス，Ｂ相パルスを出力する２相エンコーダを使用した場合に、Ａ相パルス（またはＢ相パルス）の１周期内に存在する全相（つまりＡ相，Ｂ相）パルスのエッジ数であり、エンコーダの相数によって異なるのは明らかである。また、数式２における定数Ｋは、前述した如く、使用するエンコーダの１回転あたりの出力パルス数によって変わる。
【００２８】
従って、エンコーダの相数や出力パルス数に応じて上記エッジ数（数式２における分子の数値）や定数ＫをＣＰＵ３０が変更すれば、数式２により、エンコーダの相数や出力パルス数に関係なく速度を検出することができる。また、低速域において、速度演算周期内にエンコーダの出力パルスのエッジが存在しない場合は、数式２におけるＮ０の値に１を加えれば、低速域でも簡単に速度を検出可能である。
【００２９】
さて、図３に示した従来技術や前記先願発明では、速度演算周期信号ＳＭＰＬに同期した時間計測カウンタ２３による時間計測値をラッチ信号（第１ラッチ信号）ＥＤ０，ＥＤ１，ＥＤ２，ＥＤ３によりラッチするデータラッチ２５−１〜２５−４（そのラッチデータ、つまり時間計測値を第１ラッチデータという）と、これらの第１ラッチデータを速度演算周期信号ＳＭＰＬ（第２ラッチ信号）によりラッチするデータラッチ２８−１〜２８−４（そのラッチデータを第２ラッチデータという）とを備えている。
ここで、第１ラッチ信号ＥＤ０，ＥＤ１，ＥＤ２，ＥＤ３と速度演算周期信号ＳＭＰＬとは通常、同期しておらず、両信号は任意のタイミングで発生する。従って、場合によっては両信号が同時に発生する可能性がある。
【００３０】
第１ラッチ信号と速度演算周期信号ＳＭＰＬとが同時に発生すると、第２ラッチデータは、第１ラッチデータが確定していないために誤った値を保持するおそれがあり、その結果、第２ラッチデータが不定となって速度を正確に演算できないおそれがある。
この問題の解決手段としては、データラッチ２５−１〜２５−４及びデータラッチ２８−１〜２８−４以外に第３のデータラッチを設け、この第３のデータラッチが、速度演算周期信号ＳＭＰＬと異なるタイミングで第１ラッチデータをラッチし、これを第２ラッチデータと使い分けることも可能であるが、この場合、第３のデータラッチの記憶容量や演算負荷が増大し、コストが増加するおそれがある。
【００３１】
そこで本発明の解決課題は、第１ラッチ信号と速度演算周期信号ＳＭＰＬとが同時に発生した場合でも速度演算誤差を生じず、しかもコストの増加を招くおそれもない速度検出装置を提供することにある。
【課題を解決するための手段】
【００３２】
上記課題を解決するため、請求項１に係る発明は、速度検出対象としての回転体に取り付けられたエンコーダの出力パルスから、回転体の回転速度を検出する速度検出装置において、
前記出力パルスのエッジを検出するエッジ検出手段と、
速度演算周期信号に同期した時間を計測する時間計測手段と、
前記エッジ検出手段によるエッジ検出信号を第１ラッチ信号として用いることにより前記時間計測手段による時間計測値を保持する第１の時間記憶手段と、
第１の時間記憶手段により保持された時間計測値を、第２ラッチ信号により保持する第２の時間記憶手段と、
前記エッジが前記速度演算周期信号と同時に発生した際に同時検出信号を発生する同時信号検出手段と、
前記同時検出信号の発生時に、前記速度演算周期信号を所定時間だけずらした調整信号を前記第２ラッチ信号として第２の時間記憶手段に与える第２ラッチ信号選択手段と、
第２の時間記憶手段により保持した時間計測値を用いて、前記回転体の回転速度を演算する演算手段と、
を備えたものである。
【００３３】
請求項２に係る発明は、請求項１に記載した速度検出装置において、
第１の時間記憶手段は、位相が異なる複数のパルスのエッジ検出信号を第１ラッチ信号として複数の時間計測値をそれぞれ保持し、
第２の時間記憶手段は、複数の前記エッジ検出信号のうち前記速度演算周期信号と同時に発生したエッジ検出信号に対応する時間計測値を、第２ラッチ信号としての前記調整信号により保持すると共に、他のエッジ検出信号に対応する時間計測値を、第２ラッチ信号としての前記速度演算周期信号により保持するものである。
【発明の効果】
【００３４】
本発明によれば、第１ラッチ信号と速度演算周期信号ＳＭＰＬとが同時に発生した場合に、第２ラッチデータを得るためのラッチ信号（第２ラッチ信号）を速度演算周期信号ＳＭＰＬに対して所定時間だけずらすことにより、第１ラッチデータの確定後に第２ラッチデータを得ることができる。このため、速度演算誤差の発生を防ぐことができ、新たなデータラッチの増設に伴うコストや演算負荷の増加を招くおそれもない。
【発明を実施するための最良の形態】
【００３５】
以下、図に沿って本発明の実施形態を説明する。この実施形態は、前述したデータラッチ２８−１〜２８−４に対するラッチタイミングだけを所定時間だけ遅らせることで、速度演算誤差の発生を防ぎ、記憶容量や演算負荷の増加を防止するものである。
図１は、本発明の実施形態を示す構成図であり、図５と同一の部分には同一の参照符号を付してある。以下では、図５と異なる部分を中心に説明する。
【００３６】
図１において、３５は、ラッチ信号（第１ラッチ信号）ＥＤ０，ＥＤ１，ＥＤ２，ＥＤ３とコントローラ３１からの速度演算周期信号ＳＭＰＬとが同時に発生したか否かを検出するための同時信号検出手段であり、各ラッチ信号ＥＤ０，ＥＤ１，ＥＤ２，ＥＤ３にそれぞれ対応する同時検出信号ＳＴ０，ＳＴ１，ＳＴ２，ＳＴ３として、各ラッチ信号ＥＤ０，ＥＤ１，ＥＤ２，ＥＤ３が速度演算周期信号ＳＭＰＬと同時に発生した場合には「１」を、同時でない場合には「０」を出力する。
上記の同時検出信号ＳＴ０，ＳＴ１，ＳＴ２，ＳＴ３は、速度演算周期信号ＳＭＰＬと共に第２ラッチ信号選択手段３６に入力されている。
【００３７】
なお、図１において、データラッチ２５−１〜２５−４を便宜的に第１ラッチ部４１とし、データラッチ２８−１〜２８−４、エッジ変化情報保持部２９、３３及び回転方向変化エッジ記憶部３４を第２ラッチ部４２というものとする。ここで、回転方向変化エッジ記憶部３４は、回転方向の変化検出要因となったエッジ情報を記憶し、これを回転方向変化エッジ信号ＣＨＮＧＥＤとして出力するものである。
【００３８】
第２ラッチ信号選択手段３６は、同時検出信号ＳＴ０〜ＳＴ３が「１」である第１ラッチ信号ＥＤ０〜ＥＤ３（言い換えればＡ相またはＢ相パルスの立ち上がりエッジまたは立ち下がりエッジ）に対応した第２ラッチ部４２内のデータラッチに対する第２ラッチ信号だけを、速度演算周期信号ＳＭＰＬから所定時間だけ遅らせた信号（第２ラッチ調整信号という）として出力し、それ以外のデータラッチに対する第２ラッチ信号としては、元の速度演算周期信号ＳＭＰＬを出力する。  
【００３９】
前述した第２ラッチ調整信号を得るために速度演算周期信号ＳＭＰＬを遅らせる所定時間（遅延時間）は、集積化されたロジックＩＣ（ＦＰＧＡやＰＬＤなど）のクロックの一周期程度でよい。また、本実施形態において、同時検出信号が「１」であるラッチ信号だけを操作するのは、余計な論理回路や記憶容量を必要とすることなく最小限の構成により本発明を実現するためである。
【００４０】
次に、この実施形態の動作を説明する。
ラッチ信号作成部２１は、Ａ相パルス、Ｂ相パルスの立ち上がりエッジ及び立ち下がりエッジを検出し、第１ラッチ信号ＥＤ０〜ＥＤ３を出力する。第１ラッチ部４１では、各ラッチ信号ＥＤ０〜ＥＤ３に基づいて時刻計測カウンタ２３の出力データをラッチし、時間計測値ＴＤＥ０ＥＮ〜ＴＤＥ３ＥＮとして記憶する。
【００４１】
回転方向検出部３７は、前述した図６の動作により、Ａ相パルス、Ｂ相パルス及びラッチ信号ＥＤ０，ＥＤ１，ＥＤ２，ＥＤ３から、電動機の回転方向（ＣＷ：正転，ＣＣＷ：逆転）を検出する。この回転方向検出部３７から出力される信号ＣＷ／ＣＣＷは、回転方向保持部３３に入力され、第２ラッチ信号によりラッチされて回転方向検出信号ＣＷＤＥＴとして出力される。
また、回転方向が変化した際に回転方向検出部３７から出力される回転方向変化検出信号ＣＨＮＧが、回転方向変化エッジ記憶部３４によって記憶される。
【００４２】
更に、第１ラッチ信号ＥＤ０，ＥＤ１，ＥＤ２，ＥＤ３はエッジ保持部２６に入力され、エッジ保持部２６では、各ラッチ信号ＥＤ０，ＥＤ１，ＥＤ２，ＥＤ３について、エッジの変化が１回でもあれば「１」を設定して保持し、変化が１回もなければ「０」を設定して保持する。これらの保持データは、エッジ変化情報保持部２９に送られ、第２ラッチ信号によりラッチされてエッジ変化検出信号ＥＤＦ０〜ＥＤＦ３としてＣＰＵ３０に送出される。
【００４３】
ＣＰＵ３０では、速度演算周期毎に、データラッチ２８−１〜２８−４からの時間計測値Ｔ０ＥＮ〜Ｔ３ＥＮと、回転方向保持部３３からの回転方向検出信号ＣＷＤＥＴと、回転方向変化エッジ記憶部３４からの回転方向変化エッジ信号ＣＨＮＧＥＤと、エッジ変化情報保持部２９からのエッジ変化検出信号ＥＤＦ０〜ＥＤＦ３とを用いて、電動機の速度を検出する。
【００４４】
図２は、同時信号検出手段３５や第２ラッチ信号選択手段３６等を中心とした本実施形態の動作を説明するためのものである。図２におけるクロックは、集積化されたロジックＩＣのクロック周波数で、速度演算周期信号ＳＭＰＬよりも十分に高い周波数を有するものとする。
【００４５】
いま、図２に示すように、Ａ相パルスの立ち上がりエッジによる第１ラッチ信号ＥＤ０と速度演算周期信号ＳＭＰＬとが同一のクロックによって発生したとする。この時、同時信号検出手段３５により、論理が「１」の同時検出信号ＳＴ０が生成される。
次に、第２ラッチ信号選択手段３６では、第１ラッチ信号ＥＤ０に対応したデータラッチ２８−１に対する第２ラッチ信号として、図示する如く速度演算周期信号ＳＭＰＬを１クロック遅らせた第２ラッチ調整信号を生成する。
【００４６】
第２ラッチ部４２において、データラッチ２８−１では、第２ラッチ信号として上記第２ラッチ調整信号を用いて入力データ（時間計測値ＴＤＥ０ＥＮ）をラッチすることにより時間計測値Ｔ０ＥＮを保持し、他のデータラッチ２８−２〜２８−４では、第２ラッチ信号として速度演算周期信号ＳＭＰＬを用いて入力データ（時間計測値ＴＤＥ１ＥＮ〜ＴＤＥ３ＥＮ）をラッチすることにより時間計測値Ｔ１ＥＮ〜Ｔ３ＥＮを保持する。
この結果、時間計測値Ｔ０ＥＮと他の時間計測値Ｔ１ＥＮ〜Ｔ３ＥＮとはクロック１周期分だけ時間が異なったものとなるが、第１ラッチ部４１におけるラッチタイミングはずれていないため、実際の演算値に誤差が発生することはない。
【００４７】
上記のように、本実施形態によれば、第１ラッチ部４１に対するラッチタイミングを変更せずに、第２ラッチ部４２において第１ラッチ信号ＥＤ０〜ＥＤ３と速度演算周期信号ＳＭＰＬとが同時に発生した場合にのみ、第２ラッチ調整信号により第２ラッチ部４２内の該当するデータラッチに対するラッチタイミングを遅延させるようにした。
このため、第１ラッチ信号と速度演算周期信号ＳＭＰＬとが同時に発生した場合でも、第１ラッチ部４１によるラッチデータが確定してから第２ラッチ部４２によりラッチされ、かつ、第１ラッチ部４１によるラッチデータのバラツキも発生しないため、速度演算誤差が発生するおそれはない。また、ＣＰＵ３０における速度演算タイミングを第２ラッチ調整信号から更に１クロック分、遅延させれば、ＣＰＵ３０がデータを読み込むタイミングが第２ラッチ部４２によるラッチデータの確定後になるので、同様に演算誤差の発生を防止することができる。
【図面の簡単な説明】
【００４８】
【図１】本発明の実施形態を示す構成図である。
【図２】実施形態の動作説明図である。
【図３】従来技術を示す構成図である。
【図４】従来技術による速度検出動作を示すフローチャートである。
【図５】先願発明の構成図である。
【図６】先願発明における回転方向検出部の動作を示すタイミングチャートである。
【図７】先願発明における速度検出動作を示すタイミングチャートである。
【符号の説明】
【００４９】
２１：ラッチ信号作成部
２３：時間計測カウンタ
２５−１〜２５−４：データラッチ
２６：エッジ保持部
２８−１〜２８−４：データラッチ
２９：エッジ変化情報保持部
３０：ＣＰＵ
３１：コントローラ
３３：回転方向保持部
３４：回転方向変化エッジ記憶部
３５：同時信号検出手段
３６：第２ラッチ信号選択手段
３７：回転方向検出部
４１：第１ラッチ部
４２：第２ラッチ部
【図１】
2010008235.tif 000005
【図２】
2010008235.tif 000006
【図３】
2010008235.tif 000007
【図４】
2010008235.tif 000008
【図５】
2010008235.tif 000009
【図６】
2010008235.tif 000010
【図７】
2010008235.tif 000011