JP2018100832A - 速度検出装置 - Google Patents
速度検出装置 Download PDFInfo
- Publication number
- JP2018100832A JP2018100832A JP2016245025A JP2016245025A JP2018100832A JP 2018100832 A JP2018100832 A JP 2018100832A JP 2016245025 A JP2016245025 A JP 2016245025A JP 2016245025 A JP2016245025 A JP 2016245025A JP 2018100832 A JP2018100832 A JP 2018100832A
- Authority
- JP
- Japan
- Prior art keywords
- time
- edge
- speed
- pulse
- phase
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- Transmission And Conversion Of Sensor Element Output (AREA)
Abstract
【課題】回転速度検出装置において、経過時間が長くなった場合に零への減衰率が小さくなることを防止し、零速付近での回転速度推定の精度の向上を図る。
【解決手段】4カウントの位相差の差分を使用する方式や、1カウントの位相差の差分を使用する方式のうち、どちらかの方式を選択してしまうのではなく、これらを時間経過に応じて使いわける。さらに、4カウントか1カウントのどちらかの位相差だけを使用するのではなく、3カウントや2カウントという中間のパルス数も有効に利用する。
【選択図】図1
【解決手段】4カウントの位相差の差分を使用する方式や、1カウントの位相差の差分を使用する方式のうち、どちらかの方式を選択してしまうのではなく、これらを時間経過に応じて使いわける。さらに、4カウントか1カウントのどちらかの位相差だけを使用するのではなく、3カウントや2カウントという中間のパルス数も有効に利用する。
【選択図】図1
Description
本発明は、可変速のモータ等における回転速度を検出する速度検出装置およびその速度検出方法に関する。
対象とする回転位置センサは90度位相差をもつ2相パルスエンコーダであり、パルス数とそのパルスが発生した時間間隔を計測して速度を検出する方式を想定している。
一般的に、パルス数の計測や発生時刻のラッチなどはディジタル回路で行われている。ディジタル演算器(CPU)により速度検出演算を実行する割込処理を行い、この計測したパルス数や発生時刻を読み出して速度を演算する方式を用いている。実現方法は種々存在するが、一般的な方法で説明する。
エンコーダの出力パルス周波数は速度に比例しており、低速になるとパルス周期が割込間隔よりも長くなり、パルスが発生しないため計測情報が無い割込処理状態になる。これをパルス休止期間と呼ぶことにする。本願発明は、このような低速域におけるパルス休止期間において、速度検出が出来ない場合の速度推定方法について改善方法を提案するものである。
先行文献としては、特許文献1がある。この原理については、非特許文献1の2章に記載されている。
また、パルス休止期間の速度推定(最大速度の制限値)に関しては、非特許文献1に「タウマチック方式」として原理が説明されている。
まず、先行技術の内容について説明する。
(1)パルスエンコーダの原理
図4はパルスエンコーダの原理図であり、回転スリットの構造とセンサの位置関係を定義したものである。
図4はパルスエンコーダの原理図であり、回転スリットの構造とセンサの位置関係を定義したものである。
(a)回転円板17にはNpp個のスリットがあり、各スリットをS0,S1,…,S(Npp−1)とする。この各スリットS0,S1,…,S(Npp−1)には2か所のエッジがあり、スリットS0の場合には各エッジをp(0),q(0)とする。また、このスリットを矢印の方向に移動させる場合を正転と定義する。
(b)固定側には2個の回転角度検出センサA,Bが組み込まれており、回転円板17を正転方向に回転させると、スリットS0,S1,S2通過時に回転角度検出センサA,Bから2つのパルス波形が出力される。
(c)スリットの幅をスリットピッチに対して1/2とし、回転角度検出センサA,Bの取り付け位置をスリットピッチの1/4だけずらして配置すれば、回転角度検出センサA,Bの出力信号(以下、A相信号とB相信号と称する)の2相信号には、180°方形波でかつ位相が90°だけずれた波形が出力される。
(d)Z相に関しては、回転円板17にスリットSZを一個だけ追加し、固定側には検出センサZを追加する。これにより、1回転に1パルスの信号を出力する。この検出センサZの出力信号(以下、Z相信号と称する)は本願発明と無関係であるが、これを説明用の位相原点として利用する。
上記のエンコーダを正転方向、かつ、一定速度で回転している場合には、図5のようなA相信号,B相信号,Z相信号の波形例となる。A相信号とB相信号のパルス信号は、スリットS0,S1,…,Sn,…(n:0〜Npp1の整数値)に対応し、立ち上がりや立下りのエッジはp(n),q(n)のスリットエッジに対応している。
したがって、パルス波形よりスリットのエッジ位相を検出することができる。
表1は4種類のA相信号,B相信号のエッジと2種類の回転方向(正転・逆転)の組み合わせを示したものである。トリガ信号E0〜E3は、表1の横方向の論理和、つまり、各エッジの正転方向と逆転方向の論理和を取ったものとし、正転方向に回転(For)と逆転方向に回転(Rev)は表1の縦方向の論理和をとったものとする。そして、4種類のエッジ信号と正転・逆転判定より、カウンタを増減させて位相を計測する。
特許文献1および本願発明の特徴は、この4種類のエッジについて、個別の発生時刻とカウンタ値を計測することであり、これにより後述する波形の発生誤差の対策を行うことができる。
(2)速度検出の原理
図6は、このようなパルスエンコーダの信号から、ディジタル回路やCPUなどを使って速度を検出する従来の構成例である。これは、ディジタル計測回路とその他の割込処理の2種類に大別できる。
図6は、このようなパルスエンコーダの信号から、ディジタル回路やCPUなどを使って速度を検出する従来の構成例である。これは、ディジタル計測回路とその他の割込処理の2種類に大別できる。
(2−1)ディジタル計測回路1
エンコーダパルスの発生時刻を正確に計測する必要があるため、このディジタル計測回路1は高速な基準クロックによって動作するディジタル回路で構成する。さらに、このディジタル計測回路1は次のような構成となっている。
エンコーダパルスの発生時刻を正確に計測する必要があるため、このディジタル計測回路1は高速な基準クロックによって動作するディジタル回路で構成する。さらに、このディジタル計測回路1は次のような構成となっている。
(a)エッジ検出回路2
回転角度検出センサA,Bの出力信号から、表1により回転位相に応じた4種類のトリガ信号E0〜E3を出力する。
回転角度検出センサA,Bの出力信号から、表1により回転位相に応じた4種類のトリガ信号E0〜E3を出力する。
また、表1の回転方向は正転/逆転信号として出力する。これを位相カウンタ部3のDown/Up制御に使用する。正転/逆転信号は、正転の場合Down/Up制御ではL、逆転の場合Down/Up制御ではHとなる。
(b)位相カウンタ部3
この位相カウンタ部3は、OR回路8において各トリガ信号E0〜E3の論理和を取ったものをイネーブル信号4Fとして入力する。また、位相カウンタ部3は、正転/逆転信号をDown/Up制御のために入力する。位相カウンタ部3は、このイネーブル信号4Fが有効で、かつ、Down/Up=Lであればカウントアップする。また、イネーブル信号4Fが有効で、かつ、Down/Up=Hの時はカウントダウンの動作を行う。これにより位相カウンタ値Cは、回転円板17がスリットの1ピッチ相当だけ回転すると4カウントする。
この位相カウンタ部3は、OR回路8において各トリガ信号E0〜E3の論理和を取ったものをイネーブル信号4Fとして入力する。また、位相カウンタ部3は、正転/逆転信号をDown/Up制御のために入力する。位相カウンタ部3は、このイネーブル信号4Fが有効で、かつ、Down/Up=Lであればカウントアップする。また、イネーブル信号4Fが有効で、かつ、Down/Up=Hの時はカウントダウンの動作を行う。これにより位相カウンタ値Cは、回転円板17がスリットの1ピッチ相当だけ回転すると4カウントする。
そして、スリットS0,S1,…,Snのように正転方向にスリットが移動すると、上位のカウンタ値が増加方向に変化する。
(c)基準時刻発生/割込用カウンタ4
4種類のトリガ信号E0〜E3が発生した時刻を計測するために基準クロックをカウントアップして基準時刻を示すタイマ値Tとする。また、この基準クロックを分周し、CPUの速度検出演算用の割込信号Intrを出力する。
4種類のトリガ信号E0〜E3が発生した時刻を計測するために基準クロックをカウントアップして基準時刻を示すタイマ値Tとする。また、この基準クロックを分周し、CPUの速度検出演算用の割込信号Intrを出力する。
(d)位相ラッチ/時刻ラッチLE10〜E13,LE20〜LE23,SR−FF
4種類のトリガ信号E0〜E3が発生した時刻において、タイマ値Tをラッチすることにより発生時刻を計測する。本願発明では、4種類のトリガ信号E0〜E3に対応して、下記のラッチ回路を構成している。
・ラッチLE10〜LE13:トリガ信号E0〜E3発生時に、位相カウンタ値Cをラッチ(計測)する
・ラッチLE20〜LE23:ラッチLE10〜LE13と連動し、タイマ値Tをラッチ(計測)する。
・エッジ有無検出フラグ用SR−FF5:トリガ信号E0〜E3をセット信号とし、割込信号Intrを共通なリセットとするSRフリップフロップ回路であり、このSR−FF5の出力信号es0〜es3により割込周期間におけるエッジ発生有無を判断する。
4種類のトリガ信号E0〜E3が発生した時刻において、タイマ値Tをラッチすることにより発生時刻を計測する。本願発明では、4種類のトリガ信号E0〜E3に対応して、下記のラッチ回路を構成している。
・ラッチLE10〜LE13:トリガ信号E0〜E3発生時に、位相カウンタ値Cをラッチ(計測)する
・ラッチLE20〜LE23:ラッチLE10〜LE13と連動し、タイマ値Tをラッチ(計測)する。
・エッジ有無検出フラグ用SR−FF5:トリガ信号E0〜E3をセット信号とし、割込信号Intrを共通なリセットとするSRフリップフロップ回路であり、このSR−FF5の出力信号es0〜es3により割込周期間におけるエッジ発生有無を判断する。
(e)レジスタR10〜R13,R20〜R23,R50〜R53,R60
上記のディジタル回路の計測値をCPUで読み出すデータ群はデータ間の同時性を確保する必要がある。そのため、前記のラッチLE10〜LE13,LE20〜LE23,SR−FFの出力を、割込信号Intr発生時に、同時に、2段目のレジスタR10〜R13,R20〜R23,R50〜R53,R60群に保持させる。CPUからはこの割込周期間は変化しない次段のラッチから読み出す。CPUからアクセスする2段目のラッチをレジスタと呼び、このレジスタには下記のものがある。また、図6では、このレジスタからの読み出し動作をRの記号を付けたスイッチとして模擬している。
・レジスタR10〜R13:ラッチLE10〜LE13の位相データをラッチするレジスタ
・レジスタR20〜R23:ラッチLE20〜LE23の時刻データをラッチするレジスタ
・レジスタR50〜R53:SR−FF5の出力データをラッチするレジスタ
・レジスタR60:割込信号Intr発生時の時刻Tの値をラッチするレジスタ,割込時刻を計測する。
上記のディジタル回路の計測値をCPUで読み出すデータ群はデータ間の同時性を確保する必要がある。そのため、前記のラッチLE10〜LE13,LE20〜LE23,SR−FFの出力を、割込信号Intr発生時に、同時に、2段目のレジスタR10〜R13,R20〜R23,R50〜R53,R60群に保持させる。CPUからはこの割込周期間は変化しない次段のラッチから読み出す。CPUからアクセスする2段目のラッチをレジスタと呼び、このレジスタには下記のものがある。また、図6では、このレジスタからの読み出し動作をRの記号を付けたスイッチとして模擬している。
・レジスタR10〜R13:ラッチLE10〜LE13の位相データをラッチするレジスタ
・レジスタR20〜R23:ラッチLE20〜LE23の時刻データをラッチするレジスタ
・レジスタR50〜R53:SR−FF5の出力データをラッチするレジスタ
・レジスタR60:割込信号Intr発生時の時刻Tの値をラッチするレジスタ,割込時刻を計測する。
(2−2)CPUの割り込み処理
CPUは割込信号Intrにより起動される割込処理で、上記のレジスタ値を読み出して速度演算処理を行う。OR回路6では、SR−FF5(レジスタR50〜R53)の出力信号e0〜e3を入力し、その論理和をエッジ発生・休止期間を区別する速度検出有効信号SelEnとして出力する。
CPUは割込信号Intrにより起動される割込処理で、上記のレジスタ値を読み出して速度演算処理を行う。OR回路6では、SR−FF5(レジスタR50〜R53)の出力信号e0〜e3を入力し、その論理和をエッジ発生・休止期間を区別する速度検出有効信号SelEnとして出力する。
また、比較器Comp60によりパルス休止期間ΔTτが設定した零速判定時間TLIM4より長くなると速度が零であると判断して零速判定信号SelZeroを出力する。この速度検出有効信号SelEnと零速判定信号SelZeroにより、速度演算処理には次のような3種類の異なる動作を実行する。
(ア)スイッチSWEn=「速度検出有効信号(エッジ有り)」→速度検出演算
保存しておいた過去の位相情報・時刻情報と最新の読出値より速度を計算する。
保存しておいた過去の位相情報・時刻情報と最新の読出値より速度を計算する。
(イ)スイッチSWEn=「速度検出有効信号(エッジ無)」,零速判定信号SWZero≠「零速」→タウマチック処理
これは、直前のパルスが休止しており、まだ零速判定に至っていない状態である。基本的には前回の速度検出値を保持するが、非特許文献1の「タウマチック処理」と呼ばれる処理を行って、割込直後にパルスが発生すると仮定した場合の制限速度Fτを計算し、これにより保持している検出速度を修正する。
これは、直前のパルスが休止しており、まだ零速判定に至っていない状態である。基本的には前回の速度検出値を保持するが、非特許文献1の「タウマチック処理」と呼ばれる処理を行って、割込直後にパルスが発生すると仮定した場合の制限速度Fτを計算し、これにより保持している検出速度を修正する。
本願発明は、このタウマチック処理の部分に新たな機能を追加するものであり、それ以外の速度検出や零速判定処理は従来のままである。すでに、特許文献1に記述されているので本願明細書での詳細な説明は省略する。
(ウ)スイッチSWEn=「速度検出有効信号(エッジ無)」,SWZero=「零速」→零速設定
パルス休止期間ΔTτが予め設定した零速判定時間TLIM4を経過した状態であり、強制的に速度検出を零にする。
パルス休止期間ΔTτが予め設定した零速判定時間TLIM4を経過した状態であり、強制的に速度検出を零にする。
まず、従来の速度演算方式の原理を簡単に説明しておく。
ここでは、4種類の位相レジスタR10〜R13の読出値をエッジ位相C0〜C3とする。この値は差分を取るために前回エッジ位相C0z〜C3zとして保存しておく必要があるので、イネーブル付きのラッチLE30〜LE33とレジスタR30〜R33とのダブルラッチ構成で表している。
具体的なCPUの動作としてトリガ信号E0における例を説明すると、レジスタR50の読出値により直前の割込期間におけるトリガ信号E0の発生有無を判別し、「トリガ(エッジ)有り」の場合のみレジスタR10の値を読み出してエッジ位相C0をメモリに格納する。
また、この格納動作と同時にLE30,R30から更新前の位相検出データ(エッジ位相)を前回エッジ位相C0zとしてメモリに転送する。これにより、割込時刻の直前のエッジ位相C0がメモリに格納され、差分を取るための前回の割り込み以前のエッジ位相C0zがメモリに格納される。
したがって、エッジ位相C0と前回エッジ位相C0zには、割込周期程度およびそれ以上の時間差における位相差が現れる。残りのトリガ信号E1〜E3までの3種類のエッジ位相C1〜C3についても、同様に前回エッジ位相C1z〜C3zを保持する。
位相読み出しと同様に、4種類のトリガ信号E0〜E3に応じて、時刻についてもレジスタR50〜R53のエッジの有無情報によりエッジ時刻T0〜T3のエッジ発生時刻を読み出す。さらに、同様に、ラッチLE40〜LE43とレジスタR40〜R43のダブルラッチ構成で示した部分にて、前回の割り込み以前のエッジ時刻T0z〜T3zを保存する。
また、このダブルラッチで表した機能は、図6のようなハードウェアのラッチ回路でもCPUのソフトウェア(メモリと組み合わせ)でも、どちらでも実現することもできる。
以上の計測および読出値から、下記のような速度検出演算やタウマチック処理などを行う。
(ア)速度検出演算
特許文献1の速度検出演算の特徴は、4種類のエッジ検出情報から精度のよい同一エッジを選択して演算することにある。そのため、エッジ時刻T0〜T3から割込時刻に最も近い最新のエッジを最新エッジ選択部7で判定し、最新エッジ選択信号SelEdgeとして出力する。
特許文献1の速度検出演算の特徴は、4種類のエッジ検出情報から精度のよい同一エッジを選択して演算することにある。そのため、エッジ時刻T0〜T3から割込時刻に最も近い最新のエッジを最新エッジ選択部7で判定し、最新エッジ選択信号SelEdgeとして出力する。
この最新エッジ選択信号SelEdgeによりスイッチSWC10では4種類のエッジに関するエッジ位相C0〜C3の中から最新エッジのエッジ位相を選択し、スイッチSWC20では前回エッジ位相C0z〜C3zの中から、これと同一種類の位相を選択する。
同様に、計測時刻についても、スイッチSWT10ではエッジ時刻T0〜T3の中から最新エッジのエッジ時刻を選択し、スイッチSWT20では前回エッジ時刻T0z〜T3zの中から同一エッジの前回エッジ時刻をそれぞれ選択する。
そして、差分器9により最新エッジのエッジ位相とこれと同一種類の前回エッジ位相の位相差を算出し、差分器10により最新エッジのエッジ時刻とこれと同一種類の前回エッジ時刻の時間差を算出する。除算器Div1により、前記位相差を前記時間差で除することにより回転速度(パルス周波数Fs)に変換する。
そして、直前の割込期間に少なくとも一種類のエッジが発生している場合には、SR−FF5の出力信号e0〜e3の論理和である速度検出有効信号SelEnがイネーブル(「エッジ有」)となり、後段のスイッチSWEnにて除算器Div1の出力が最終の速度検出出力Fdetとして選択される。これが、特許文献1で示された速度検出法の要点である。
(イ)タウマチック処理
もし、直前の割込期間にどのエッジも発生しなければ速度検出有効信号SelEnがディスエーブル(「エッジ無」)となり、その場合には、スイッチSWEnが切り替わり、このタウマチック処理か零速設定のどちらかが行われる。
もし、直前の割込期間にどのエッジも発生しなければ速度検出有効信号SelEnがディスエーブル(「エッジ無」)となり、その場合には、スイッチSWEnが切り替わり、このタウマチック処理か零速設定のどちらかが行われる。
パルスエッジの休止期間には速度検出ができないが、もし割込信号Intrの発生時刻に次のパルスが発生したと仮定して推定速度を計算すると、現在の速度はこれ以下であるはずである。もし、実速度がその推定速度以上であれば既にパルスが発生しているはずであり、それ以上の速度であることはあり得ない。
したがって、過去の速度検出結果の保持値をこの推定速度以下に制限すれば、保持速度がより正確になるように補正・修正することができる。そこで、仮想パルスにより推定した速度を以降では制限速度Fτと呼ぶことにする。
この機能を図6では次のように表した。まず、減算器14a〜14dにより、レジスタR60でラッチした現在の割込時刻tsとエッジ時刻T0〜T3との差分(経過時間)をとる。最古エッジ選択部11にて、4種類の経過時間(ts−T0,ts−T1,ts−T2,ts−T3)のうちから最古エッジ選択信号SelτTaを出力する。スイッチSWT60により最古エッジ選択信号SelτTaに基づいて、経過時間ts−T0,ts−T1,ts−T2,ts−T3の中から最古の時刻を選出し、制限速度計測時間(パルス休止期間)ΔTτとして出力する。
位相差の方は、最新エッジに対して次のエッジ種類が発生するものと仮定して、スリット1周期相当の4カウントとする。そして、除算器Div2により4カウントからパルス休止期間ΔTτを除して制限速度Fτを演算する。
ここで、正転と逆転に応じて位相差の4カウントの符号を切り替えるべきだが、ここでは制限速度という特性を利用して、正の4パルスを使用して正の制限速度を計算しておき、この正の値を負値にした制限速度の間に制限するリミッタ処理Lim10で制限したFlimを出力する回路に置き換えてある。これは、もし正負の符号に誤りが存在しても、確実に制限を加えられるように工夫したものである。
(ウ)零速設定
もし、前述のパルス休止期間ΔTτが零速判定時間TLIM4よりも長くなった場合には、比較器Comp60から零速選択信号SelZeroを出力して、スイッチSWZeroにより出力値を強制的に零に切りかえる。
もし、前述のパルス休止期間ΔTτが零速判定時間TLIM4よりも長くなった場合には、比較器Comp60から零速選択信号SelZeroを出力して、スイッチSWZeroにより出力値を強制的に零に切りかえる。
以上が、従来方式の概要である。
山本 康弘,吉田 康宏,山田 哲夫,市岡 忠士,「オーバーラップ速度検出方式の提案と速度オブザーバの特性改善」,電気学会,論文誌D、Vol.115,11号,pp1316−1324
センサ・インターフェーシングno.2メカトロニクス・センサ活用編,pp131−142,CQ出版(1983/04),ISBN-10:4789835723
図6のような構成の従来方式の問題点を、図7に示すタイムチャートの例を用いて説明する。
図7は、回転速度が低下して零速度になる減速停止時であり、低速になって割込信号(サンプル信号)Intrの周期間に、パルスエッジが発生しない休止期間が生じ始めている例である。
図7では、上段からA相信号,B相信号,発生したエッジの種類を示す番号,位相カウンタ値C,割込信号Intr(速度検出タイミングに相当),そして最下段に速度検出と制限速度を示してある。
各記号にはパルスエッジを区別するためa,b,cの添え字を付け、パルスエッジが発生したときの位相カウンタ値Cと時刻Tの組み合わせを(Ca,Ta),(Cb,Tb),…として表している。
エッジ発生直後の速度検出タイミング(割込信号Intr発生時刻:以下、割込時刻と称する)は、ts(a),ts(b),…とした。速度検出タイミングのうち、パルスエッジが休止してタウマチック処理を適用する場合には、x、y、zの添え字を付けた。
パルス周波数Fsは以下の式となる。
ここで、m,n,iは整数であり、(4m+i)と(4n−i)は図中のa,b,cに相当した選択番号のことである。また、θは位相角の一般形であり、図7では、整数である位相カウンタCa,Cbに相当する。数1ではこれらの差が4の整数倍の関係にあることを明示したいため、このような表記にしたが、以降では具体的なa,b,c,…の記号を付して説明する。
まず、図7の(ア)に示すように、aのエッジとeエッジの情報から、1スリット周期に相当する4カウント差の位相差と時間差を計算し、Fs(a,e)=(Ce−Ca)/(Te−Ta)として割込時刻ts(a)の割込処理にて速度検出の演算を行う。図7では、このeエッジが最後のパルスであり、以降は回転が停止してパルスが発生しなくなる例として示してある。
以降の割込処理ではパルスが休止状態と判断してタウマチック処理を行うが、図7の(イ)に示すように割込時刻ts(x)場合には精度を優先して4パルス幅を使用したいので、4種類の前回エッジ時刻T0z〜T3zから最古のエッジであるbエッジを選択し、これに対して4カウント加算したパルスつまりCe+1のパルスが割込時刻ts(x)に発生すると仮定して制限速度Fτ(ts(x))を計算する。
Fτ(ts(x))=(Ce+1−Cb)/(ts(x)−Tb)=4/(ts(x)−Tb)
同様に割込時刻ts(y)や割込時刻ts(z)の割込処理では、仮想する位相差は4のままで、時間差だけが(ts(y)−Tb)と(ts(z)−Tb)のように増加するため、制限速度Fτ(ts(y)),Fτ(ts(zy))は時間の経過によって減少していく。つまり、この減衰特性は最古のパルス発生時刻Tbに対して制限速度Fτ4(Tb,t)のように双曲線関数となる。そして、パルス周波数Fs(a,e)は、この制限速度Fτ4(Tb,t)以下に制限される。
同様に割込時刻ts(y)や割込時刻ts(z)の割込処理では、仮想する位相差は4のままで、時間差だけが(ts(y)−Tb)と(ts(z)−Tb)のように増加するため、制限速度Fτ(ts(y)),Fτ(ts(zy))は時間の経過によって減少していく。つまり、この減衰特性は最古のパルス発生時刻Tbに対して制限速度Fτ4(Tb,t)のように双曲線関数となる。そして、パルス周波数Fs(a,e)は、この制限速度Fτ4(Tb,t)以下に制限される。
しかし、このFτ4(Tb,τ)の双曲線は最初のうちは急激に減衰するものの、検出速度に近づいて制限動作するころの減衰率は小さくなっており、なかなか零に漸近しない。これは、精度を重視して、4[count]を位相差に設定したことが要因となっている。
もし、4種類の前回エッジ時刻T0z〜T3zから最新エッジ(Ce,Te)を過去のエッジとして選択し、位相差を1[count]として制限速度を計算したとすると、制限速度Fτ1(Te,t)の双曲線になる。こちらは、制限速度Fτ4(Tb,t)よりも早く零に近づいており、こちらを使った方がより速く零速に減衰させることができる。
しかし、この方式は、パルスの90°位相差を利用する方式であるため、現在の技術で述べたようにエッジの発生バラツキによる誤差が大きいという問題も有している。
なお、図8は、エッジの発生バラツキによる誤差を説明する図である。A相パルスの立ち上がりエッジからB相パルスの立ち上がりエッジまでの期間に、X1min〜X1maxのバラツキによる誤差が発生することがわかる。A相とB相の位相差は、図4のセンサの取り付け位置の誤差によるものであり、各相のH/Lの比率差はセンサの感度によるものであるので、どちらもバラツキが大きい。これに対して、1周期(T=1)はスリットの加工精度による誤差が生じるが、前述の2つのバラツキ成分よりも相対的に誤差が小さい。
このように、タウマチック方式による制限速度を計算する場合に、精度を重視して4カウント(スリット一周期)の差分を使用する場合は零に漸近するのに時間を要し、応答を重視して1カウント(最小分解能)の差分を選定する場合にはエッジの発生バラツキによる誤差の影響を受ける。
以上示したようなことから、速度検出装置において、経過時間が長くなると零への減衰率が小さくなることを防止し、零速付近での回転速度推定の精度の向上を図ることが課題となる。
本発明は、前記従来の問題に鑑み、案出されたもので、その一態様は、回転角度検出センサから出力された90°位相差の2相信号に基づいて、トリガ信号および正転/逆転信号を出力するエッジ検出回路と、前記トリガ信号の論理和と正転/逆転信号に基づいて、アップ/ダウンカウントを行って位相を検出し、エッジ位相を出力する位相カウンタと、基準クロックをカウントしてエッジ時刻を出力する時刻/割込用カウンタと、前記エッジ時刻に基づいて最新エッジを選択する最新エッジ選択部と、前記最新エッジのエッジ位相とこれと同一種類の前回エッジ位相との偏差を、前記最新エッジのエッジ時刻とこれと同一種類の前回エッジ時刻の偏差で徐してパルス周波数を出力する第1除算器と、割込時間から前記エッジ時刻を減算して経過時間として出力する減算器と、前記経過時間に基づいて、エッジ時刻選択信号と仮想パルス数選択信号を出力する制限速度用エッジ選択部と、前記仮想パルス数選択信号に基づいて選択したカウント数を、前記エッジ時刻選択信号に基づいて前記経過時間の中から選択したパルス休止期間で除した制限速度を出力する第2除算器と、前記パルス休止期間が零速判定時間以上か否かを判定する零速判定部と、を備え、エッジ検出があれば前記パルス周波数を出力し、エッジ検出が無く、前記パルス休止期間が零速判定時間よりも小さければ前記パルス周波数を前記制限速度で制限した値を出力し、エッジ検出が無く、前記パルス休止期間が零速判定時間以上であれば、0を出力することを特徴とする。
また、その一態様として、前記制限速度用エッジ選択部は、前記経過時間のうち最大時間のものが予め設定した時間よりも小さければカウント数=4を選定して前記パルス休止期間を前記経過時間のうち最大時間のものとし、前記経過時間のうち2番目に長い時間が予め設定した時間よりも小さければカウント数=3を選定して前記パルス休止期間を前記経過時間のうち2番目に長い時間とし、前記経過時間のうち3番目に長い時間が予め設定した時間よりも小さければカウント数=2を選定して前記パルス休止期間を前記経過時間のうち3番目に長い時間とし、前記経過時間のうち4番目に長い時間が零速判定時間よりも小さければカウント数=1を選定して前記パルス休止期間を前記経過時間のうち4番目に長い時間とし、前記経過時間のうち4番目に長い時間が零速判定時間よりも大きければ、零速とすることを特徴とする。
また、他の態様として前記制限速度用エッジ選択部は、前記経過時間のうち最大時間のものが予め設定した時間よりも小さければカウント数=4を選定して前記パルス休止期間を前記経過時間のうち最大時間のものとし、前記経過時間のうち4番目に長い時間が零速判定時間よりも小さければカウント数=1を選定して前記パルス休止期間を前記経過時間のうち4番目に長い時間とし、前記経過時間のうち4番目に長い時間が零速判定時間よりも大きければ零速とすることを特徴とする。
本発明によれば、速度検出装置において、パルス休止期間であっても、休止期間の長さに応じて検出速度をすみやかに零に収束させることができ、零速付近での回転速度推定の精度の向上を図ることが可能となる。
本願発明は、4カウントの位相差の差分を使用する方式や、1カウントの位相差の差分を使用する方式のうち、どちらかの方式を選択してしまうのではなく、これらを時間経過に応じて使いわけることを提案するものである。さらに、位相差を4カウントか1カウントのどちらかだけに固執せず、3カウントや2カウントという中間のパルス数も有効に利用することを提案するものである。
[実施形態]
本実施形態における速度検出装置のブロック図を図1に示す。図1に示すように、本実施形態1における速度検出装置は、制限速度演算部13bのみが従来技術の制限速度演算部13aと異なっており、それ以外は従来技術と同じ構造である。従来技術と同様の構成については説明を省略する。
本実施形態における速度検出装置のブロック図を図1に示す。図1に示すように、本実施形態1における速度検出装置は、制限速度演算部13bのみが従来技術の制限速度演算部13aと異なっており、それ以外は従来技術と同じ構造である。従来技術と同様の構成については説明を省略する。
制限速度演算部13bでも、原理的に同様なパルスが発生しない休止期間おけるタウマチック方式を演算している。これを4種類のエッジを個別に検出・計測する方式に拡張し、経過時間(パルス休止期間)に応じて逐次に選択する機能を有している。
まず、最新の割込時刻tsをレジスタR60でサンプリングして読み出す。
次に、減算器15a〜15dにおいて、この割込時刻tsから、前回およびそれ以前の割込処理で読み出している4種類のエッジ時刻T0〜T3を減算して、過去のエッジからの経過時間(ts−T0)〜(ts−T3)を計算する。
制限速度用エッジ選択部12では、図2のフローチャートにしたがって、経過時間(ts−T0)〜(ts−T3)のうち、どのエッジとの経過時間を使って制限速度Fτを算出するかを選択する。具体的には、経過時間(ts−T0)〜(ts−T3)のうちどれをパルス休止期間ΔTτとするかを選択するエッジ時刻選択信号SelτTと、その選択されたエッジに対応する仮想するカウント数(エッジ位相差)を選択する仮想パルス数選択信号SelτCを出力する。
問題は、このエッジの選択方法であり、図2のようなフローチャートなどにより決めるものとする。
本実施形態の発想としては、経過時間の長い最も古いエッジ情報から最初に判断し、もし経過時間が長すぎる場合には次に古い時刻のエッジに順に判断を繰り返す。この選択により、時間が経過すると、制限速度を計算する仮想のパルスカウント差分値ΔCτが4→3→2→1[count]の順に切り替わるようになる。
図2のフローチャートで示したエッジ選択機能について下記に説明する。
S1:パルス休止期間ΔTτ[0]=t−T0,ΔTτ[1]=t−T1,ΔTτ[2]=t−T2,ΔTτ[3]=t−T3を演算する。
S2:4種類のエッジ発生時刻のうち古い順に、エッジ種類を示すエッジ番号を設定しておく。具体的には、パルス休止期間ΔTτ[0],ΔTτ[1],ΔTτ[2],ΔTτ[3]のうち最大時間のエッジ番号をSel4th,パルス休止期間ΔTτ[0],ΔTτ[1],ΔTτ[2],ΔTτ[3]のうち2番目に長い時間のエッジ番号をSel3rd,パルス休止期間ΔTτ[0],ΔTτ[1],ΔTτ[2],ΔTτ[3]のうち3番目に長い時間のエッジ番号をSel2nd,パルス休止期間ΔTτ[0],ΔTτ[1],ΔTτ[2],ΔTτ[3]のうち最新のエッジ番号をSel1stとする。
S3:最大のパルス休止期間ΔTτ[Sel4th]と予め設定した時間差Tτを比較し、ΔTτ[Sel4th]≦Tτの場合はS4へ移行し、ΔTτ[Sel4th]>Tτの場合はS5へ移行する。
S4:4countモードを選択する。エッジ時刻選択信号SelτTにはSel4thのエッジ番号を選択し、仮想パルス数選択信号についてはSelτC=3つまりΔCτ=4[count]を使用する番号を選択する。よって、ΔTτ=ΔTτ[Sel4th],ΔCτ=4となる。
S5:S3でパルス休止期間ΔTτ[Sel4th]が時間差Tτを超過していれば、双曲線の減衰率が小さくなっているものとして、パルス休止期間ΔTτ[Sel3rd]と時間差Tτを比較し、ΔTτ[Sel3rd]≦Tτの場合はS6へ移行し、ΔTτ[Sel3rd]>Tτの場合はS7へ移行する。
S6:3countモードを選択する。エッジ時刻選択信号SelτTにはSel3rdのエッジ番号を選択し、仮想パルス数選択信号SelτCは3[count]を選択する番号(=2)を選択する。よって、ΔTτ=ΔTτ[Sel3rd],ΔCτ=3となる。
S7:パルス休止期間ΔTτ[Sel2nd]と時間差Tτを比較し、ΔTτ[Sel2nd]≦Tτの場合はS8へ移行し、ΔTτ[Sel2nd]>Tτの場合はS9へ移行する。
S8:2countモードを選択する。エッジ時刻選択信号SelτTにはSel2ndのエッジ番号を選択し、仮想パルス数選択信号SelτCは2[count]を選択する番号(=1)を選択する。よって、ΔTτ=ΔTτ[Sel2nd],ΔCτ=2となる。
S9:次に、4番目、すなわち、最新エッジのパルス休止期間ΔTτ[Sel1st]と零速判定として設定した零速判定時間TLIM1を比較し、ΔTτ[Sel1st]≦TLIM1の場合はS10へ移行し、ΔTτ[Sel1st]>TLIM1の場合はS11へ移行する。
S10:1countモードを選択する。エッジ時刻選択信号SelτTにはSel1stのエッジ番号を選択し、仮想パルス数選択信号SelτCは1[count]を選択する番号(=0)を選択する。よって、ΔTτ=ΔTτ[Sel1st],ΔCτ=1となる。
S11:比較器Comp61から出力される零速判定信号SelZero=「零速」として、強制的に零速度にするようにスイッチSWzeroの切替信号を選択する。この場合は選択速度を演算しても出力は利用されないので演算処理をスキップする。
S12:「4カウントモード」〜「2カウントモード」が選択されている場合は、比較器Comp61から出力される零速判定信号SelZero=「τ制限」とする。エッジに対応したエッジ時刻選択信号SelτTと仮想パルス数選択信号Selτcを選択して、制限速度Fτ=SelτC/SelτT(ΔCτ/ΔTτ)を計算し、リミッタ16により、保持されている検出速度に対して正負のリミッタ動作を行う。
さらに、「1カウントモード」の場合には、経過時間が長くなった場合に零速に切替、それ以前なら他のモードと同様に制限速度による保持速度のリミッタ動作を行う。
以上の構成により、経過時間に応じて,4カウント→3カウント→2カウント→1カウントモードの順に4種類のエッジが順番に切り替わる。
実施形態1の動作を,図3のタイムチャート例で説明する。
図7と同様に、(ア)のように(Ca,Ta)−(Ce,Te)のエッジ期間で速度検出した後にパルスが休止し、以降では制限速度を演算して保持されている検出速度を補正する状態である。
最初は(イ)の区間のように、従来技術と同様に制限速度を「4カウントモード」の仮想パルスで計算する。この場合は、図3の最下段のチャートに示す制限速度Fτ4(Tb,ts)の関数で制限される。
しかし、(ウ)の区間のように時間が経過して(ts−Tb>Tτ)となると、「4カウントモード」の経過時間が長 くなりすぎたものと判断して、「3カウントモード」に移行する。この場合は図3の制限速度Fτ3(Tc,ts)の関数で制限されるようになり、より零に近い方向に制限されて零への減衰が速くなる。
さらに、(エ)の区間のように時間が経過して(ts−Tc>Tτ)となると「2カウントモード」に移行する。この場合は、制限速度Fτ2(Td,ts)の関数で制限されるようになり、さらにより零に近い方向に減衰するようになる。
そして、(オ)のように時間が経過して(ts−Td>Tτ)となると「1カウントモード」に移行する。この場合は制限速度Fτ1(Te,ts)の関数で制限されるので、最も減衰率が大きくなる。
最後に、(ts−Te>TLIM1)となると時間が十分に経過したので、強制的に零速に切り替える。
このように、経過時間に応じて「4カウントモード」から順に「1カウントモード」に切り替えることにより、制限速度が徐々により零に近い方に制限されるため、「4カウントモード」だけを使用した場合の問題点であった、経過時間が長くなると零への減衰率が小さくなることを防止できる。
これにより、減速時の制限速度の演算精度が向上し、零速付近での回転速度推定の精度が向上する。
また、4個の制限速度の計算モードを順番に切り替えていくので、「1カウントモード」だけを使用した場合の誤差の影響も少なくなる。さらに、その間に「3カウントモード」および「2カウントモード」も追加したので、モード切替時の制限速度の急変量も少なくすることができる。
なお、このモード切替時の制限速度の急変を許容するのであれば、「3カウントモード」および「2カウントモード」を追加しなくともよい。「4カウント→1カウント」,「4カウント→3カウント→1カウント」,「4カウント→2カウント→1カウント」に切り換える方法としてもよい。
以上、本発明において、ディジタル回路とCPUのソフトで実現する方法に限定し、記載された具体例に対してのみ詳細に説明したが、本発明の技術思想の範囲で多彩な変形および修正が可能であることは、当業者にとって明白なことであり、このような変形および修正が特許請求の範囲に属することは当然のことである。
1…ディジタル計測回路
2…エッジ検出回路
3…位相カウンタ
4…基準時刻発生/割込カウンタ
5…SR−FF
6…OR回路
7…最新エッジ選択部
9,10…減算部
12…制限速度用エッジ選択部
13a,13b…制限速度演算部
14a〜14d…減算器
15a〜15d…減算器
16…リミッタ
17…回転円板
2…エッジ検出回路
3…位相カウンタ
4…基準時刻発生/割込カウンタ
5…SR−FF
6…OR回路
7…最新エッジ選択部
9,10…減算部
12…制限速度用エッジ選択部
13a,13b…制限速度演算部
14a〜14d…減算器
15a〜15d…減算器
16…リミッタ
17…回転円板
Claims (3)
- 回転角度検出センサから出力された90°位相差の2相信号に基づいて、トリガ信号および正転/逆転信号を出力するエッジ検出回路と、
前記トリガ信号の論理和と正転/逆転信号に基づいて、アップ/ダウンカウントを行って位相を検出し、エッジ位相を出力する位相カウンタと、
基準クロックをカウントしてエッジ時刻を出力する時刻/割込用カウンタと、
前記エッジ時刻に基づいて最新エッジを選択する最新エッジ選択部と、
前記最新エッジのエッジ位相とこれと同一種類の前回エッジ位相との偏差を、前記最新エッジのエッジ時刻とこれと同一種類の前回エッジ時刻の偏差で徐してパルス周波数を出力する第1除算器と、
割込時間から前記エッジ時刻を減算して経過時間として出力する減算器と、
前記経過時間に基づいて、エッジ時刻選択信号と仮想パルス数選択信号を出力する制限速度用エッジ選択部と、
前記仮想パルス数選択信号に基づいて選択したカウント数を、前記エッジ時刻選択信号に基づいて前記経過時間の中から選択したパルス休止期間で除した制限速度を出力する第2除算器と、
前記パルス休止期間が零速判定時間以上か否かを判定する零速判定部と、
を備え、
エッジ検出があれば前記パルス周波数を出力し、
エッジ検出が無く、前記パルス休止期間が零速判定時間よりも小さければ前記パルス周波数を前記制限速度で制限した値を出力し、
エッジ検出が無く、前記パルス休止期間が零速判定時間以上であれば、0を出力することを特徴とする速度検出装置。 - 前記制限速度用エッジ選択部は、
前記経過時間のうち最大時間のものが予め設定した時間よりも小さければカウント数=4を選定して前記パルス休止期間を前記経過時間のうち最大時間のものとし、
前記経過時間のうち2番目に長い時間が予め設定した時間よりも小さければカウント数=3を選定して前記パルス休止期間を前記経過時間のうち2番目に長い時間とし、
前記経過時間のうち3番目に長い時間が予め設定した時間よりも小さければカウント数=2を選定して前記パルス休止期間を前記経過時間のうち3番目に長い時間とし、
前記経過時間のうち4番目に長い時間が零速判定時間よりも小さければカウント数=1を選定して前記パルス休止期間を前記経過時間のうち4番目に長い時間とし、
前記経過時間のうち4番目に長い時間が零速判定時間よりも大きければ、零速とすることを特徴とする請求項1記載の速度検出装置。 - 前記制限速度用エッジ選択部は、
前記経過時間のうち最大時間のものが予め設定した時間よりも小さければカウント数=4を選定して前記パルス休止期間を前記経過時間のうち最大時間のものとし、
前記経過時間のうち4番目に長い時間が零速判定時間よりも小さければカウント数=1を選定して前記パルス休止期間を前記経過時間のうち4番目に長い時間とし、
前記経過時間のうち4番目に長い時間が零速判定時間よりも大きければ零速とすることを特徴とする請求項1記載の速度検出装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2016245025A JP2018100832A (ja) | 2016-12-19 | 2016-12-19 | 速度検出装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2016245025A JP2018100832A (ja) | 2016-12-19 | 2016-12-19 | 速度検出装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2018100832A true JP2018100832A (ja) | 2018-06-28 |
Family
ID=62715308
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2016245025A Pending JP2018100832A (ja) | 2016-12-19 | 2016-12-19 | 速度検出装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2018100832A (ja) |
-
2016
- 2016-12-19 JP JP2016245025A patent/JP2018100832A/ja active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JPS62162968A (ja) | 速度検出装置 | |
US10451647B2 (en) | Method and device for measuring speed of permanent magnet synchronous motor | |
CN106645780B (zh) | 一种基于dsp的转速检测方法及系统 | |
JP2690210B2 (ja) | エレベータの速度検出装置 | |
JP2018100832A (ja) | 速度検出装置 | |
CN105628956A (zh) | 利用正交编码器检测旋转运动系统的方法 | |
JP4782434B2 (ja) | 回転検出装置の信号処理装置 | |
JPH061279B2 (ja) | デイジタル式速度検出装置 | |
JP6825260B2 (ja) | 速度検出装置および速度制御システム | |
JPH04346069A (ja) | 速度信号生成回路 | |
Huang et al. | Hysteresis switch adaptive velocity evaluation and high-resolution position subdivision detection based on FPGA | |
CN112422017A (zh) | 一种单电阻采样方法 | |
US6310458B1 (en) | Blended velocity estimation | |
JPS61110005A (ja) | 位置検出方法および装置 | |
JPH04285815A (ja) | ロータリエンコーダの位置カウンタ回路 | |
KR101135253B1 (ko) | 전동기 속도 검출 방법 | |
JP4998788B2 (ja) | 速度検出装置 | |
JP2002311040A (ja) | 速度検出装置 | |
JP2020079760A (ja) | 物品移動速度計測装置 | |
JP5664895B2 (ja) | 電動機の制御装置 | |
JPH0529045B2 (ja) | ||
JPH043225Y2 (ja) | ||
KR19990043005A (ko) | 증분형 엔코더를 이용한 전동기 속도 검출 장치 | |
JPS62266468A (ja) | 速度検出装置 | |
JP2024000028A (ja) | 速度検出装置および速度検出方法 |