JP4912511B2 - 速度検出装置 - Google Patents
速度検出装置 Download PDFInfo
- Publication number
- JP4912511B2 JP4912511B2 JP2011532411A JP2011532411A JP4912511B2 JP 4912511 B2 JP4912511 B2 JP 4912511B2 JP 2011532411 A JP2011532411 A JP 2011532411A JP 2011532411 A JP2011532411 A JP 2011532411A JP 4912511 B2 JP4912511 B2 JP 4912511B2
- Authority
- JP
- Japan
- Prior art keywords
- pulse
- value
- clock
- unit
- timing
- 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.)
- Expired - Fee Related
Links
Images
Classifications
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01P—MEASURING LINEAR OR ANGULAR SPEED, ACCELERATION, DECELERATION, OR SHOCK; INDICATING PRESENCE, ABSENCE, OR DIRECTION, OF MOVEMENT
- G01P3/00—Measuring linear or angular speed; Measuring differences of linear or angular speeds
- G01P3/42—Devices characterised by the use of electric or magnetic means
- G01P3/44—Devices characterised by the use of electric or magnetic means for measuring angular speed
- G01P3/48—Devices characterised by the use of electric or magnetic means for measuring angular speed by measuring frequency of generated current or voltage
- G01P3/481—Devices characterised by the use of electric or magnetic means for measuring angular speed by measuring frequency of generated current or voltage of pulse signals
- G01P3/489—Digital circuits therefor
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/38—Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
- G06F7/48—Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices
- G06F7/499—Denomination or exception handling, e.g. rounding or overflow
- G06F7/49905—Exception handling
- G06F7/4991—Overflow or underflow
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01P—MEASURING LINEAR OR ANGULAR SPEED, ACCELERATION, DECELERATION, OR SHOCK; INDICATING PRESENCE, ABSENCE, OR DIRECTION, OF MOVEMENT
- G01P3/00—Measuring linear or angular speed; Measuring differences of linear or angular speeds
- G01P3/42—Devices characterised by the use of electric or magnetic means
- G01P3/44—Devices characterised by the use of electric or magnetic means for measuring angular speed
- G01P3/48—Devices characterised by the use of electric or magnetic means for measuring angular speed by measuring frequency of generated current or voltage
- G01P3/481—Devices characterised by the use of electric or magnetic means for measuring angular speed by measuring frequency of generated current or voltage of pulse signals
Landscapes
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computational Mathematics (AREA)
- Computing Systems (AREA)
- Mathematical Analysis (AREA)
- Mathematical Optimization (AREA)
- Pure & Applied Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Measuring Frequencies, Analyzing Spectra (AREA)
Description
図1は、本発明の実施の形態1にかかる速度検出装置の構成例を示す図である。速度検出装置1の役割は、入力信号INの周波数を検出することである。関連図は、図1〜図9である。
・スペック設定ステップ301
キャプチャー周期Tcap、最大入力周波数Fmax、最小入力周波数Fmin、目標精度ACCtを設定する。例えば、
キャプチャー周期 Tcap=2.5ms
最大入力周波数 Fmax=8000Hz
最小入力周波数 Fmin=1Hz
目標精度 ACCt=200ppm*2.5ms=0.5ppm・s
とする。
・計時クロック周波数設定ステップ302
計時クロック周波数 Ftim≧1/ACCt−1/Tcap(例えば、≧1.9996MHzで、ここでは2.5MHzに設定する。)
・ハードウェア設定ステップ303
パルス計数必要ビット数 Nwidth=Roundup(log(Fmax*Tcap)/log(2),0)
パルス計時必要ビット数 Twidth=Roundup(log(Ftim*Tcap)/log(2),0)
例えば、両者は、それぞれ、5、13となるため、パルス計数部107のビット数を5、パルス計時部109のビット数を13に設定する。
・各種演算定数算出ステップ304
各種定数を求める。この値は、後述する演算部113で用いられる。
パルス計数マスク値0 NMASK0=2^Nwidth−1
パルス計数最大値 NMAX=Fmax*Tcap
パルス計時マスク値0 TMASK0=2^Twidth−1
キャプチャー周期指数 TCAP=Tcap*Ftim
パルス計時最大値 TMAX=Ftim/Fmin
例えば、上記はそれぞれ、0x1f、160、0x1fff、6250、2500000となる。
演算部113は、キャプチャー部110よりCN、CTを読み取りローカル変数XN、XTにコピーする。
・オーバーフロー処理ステップ202
演算部113は、図2、図3、図4の何れかを実施してオーバーフローフラグOVFFを得る。
・割込要求クリアステップ203
演算部113は、割込要求クリア要求ICRQを出力する。
・分子演算ステップ204
演算部113は、下記の式にて、ローカル変数NUMを求める。
NUM=MIN((XN−YN)&NMASK0,NMAX)
即ち、今回割込時におけるパルス計数レジスタの値(XN)から、前回割込時におけるパルス計数レジスタの値(YN)を減じた値に基づき、前回割込時から今回割込時の間(直前のキャプチャー周期Tcapの間)に入力されたパルスエッジの数NUMを求める。
・分母演算ステップ205
演算部113は、下記の式にて、XTを求める。
OVFF=0即ちオーバーフローなしの時、
XT=XT&TMASK0
即ち、演算部113は、パルス計時部109でオーバーフローが発生していない場合、パルス計時レジスタCTの値により、パルス計時データXTを求める。
それ以外、即ちオーバーフローありの時、
XT=MIN(YT+TCAP,TMAX)
このオーバーフローありの時の設定については、パルス計時レジスタCTがオーバーフローで無効であるため、前回値YTから計算しているのである。ただし、上限TMAXを設けている。なお、ソフトウェアで値を足しこんでいるので、周波数の精度劣化が発生するのかというと、そうではない。仮にパルス計時部109のビット幅が十分あったとしたら、キャプチャー周期Tcapの時間にキャプチャー周期指数TCAP分増加する。従って、これによる周波数の精度劣化はない。ハードウェア(パルス計時部109)は短い時間に関して分担し、ソフトウェアは長い時間に関して分担しているのである。即ち、演算部113は、パルス計時部109がオーバーフローしている場合、前回のパルス計時データ(YT)に、キャプチャークロック周期/計時クロック周期で得られる所定の定数値(TCAP)を加算して、最後のパルスエッジPEからの時間/計時クロック周期であるパルス計時データ(XT)を求める。
・周波数演算ステップ206
演算部113は、ステップ205で得られたパルス計時データ(XT)を用いて、下記演算式にて周波数演算値Fを算出する。
NUMが0のとき、
F=MIN(Ftim/XT,F)
即ち、演算部113は、所定の周期内に入力されたパルスエッジPEが0個の場合、直後にパルスエッジPEが入力されると仮定した周波数演算値(Ftim/XT)と、前回の周波数演算値Fと、の低い方の値を選択することにより、周波数演算値Fを推定する。
それ以外のとき、
F=NUM*Ftim/(TCAP+YT−XT)
・前回値設定ステップ207
演算部113は、次回の演算のために、XTと、XNを、前回値YTとYNとへ保存する。ここでひとつ注意点がある。※前回値YTはパルス計数最大値TMAXで初期化しなければならない。
次に、オーバーフローの検出方法が若干異なるものを紹介する。実施の形態1では、オーバーフローしているか否かをオーバーフロー検出部108のオーバーフローレジスタOVFで管理していた。実施の形態2では、オーバーフローしているか否かを、メモリーで管理する。それ以外は全く変わらないので、変更のある部分のみの説明を行う。
次に、さらにオーバーフローの検出方法が若干異なるものを紹介する。実施の形態1、2では、オーバーフローしているか否かをオーバーフロー検出部108および演算部113で協調して行うが、実施の形態3では、オーバーフローしているか否かを、オーバーフロー検出部108で自動的に判定し、演算部113では、このオーバーフローレジスタOVFを読み込んでオーバーフローフラグOVFFに設定する。
次に、ハードウェアの制約などにより、パルス計数部107のビット数や、パルス計時部109のビット数をあまり大きく出来ないが、精度を高める目的で、周波数を求める分母にあたるベース時間(=演算周期)を大きくしたいケースのために、実施の形態3に比べて、演算部113の構成を変更した実施の形態4を説明する。
・スペック設定ステップ601
演算周期Tcal、最大入力周波数Fmax、最小入力周波数Fmin、目標精度ACCtを設定する。例えば、
演算周期 Tcal=20ms
最大入力周波数 Fmax=8000Hz
最小入力周波数 Fmin=1Hz
目標精度 ACCt=25ppm*20ms=0.5ppm・s
とする。
・計時クロック周波数設定ステップ602
Ftim≧1/ACCt−1/Tcal 例えば、≧1.99995MHzで、ここでは2.5MHzに設定する。
・キャプチャー周期設定ステップ603
ハードウェア制約、ソフトウェア制約を考慮し、以下の条件を満たす様にキャプチャー周期Tcapを設定する。
パルス計数必要ビット数 Nwidth=Roundup(log(Fmax*Tcap)/log(2),0)
パルス計時必要ビット数 Twidth=Roundup(log(Ftim*Tcap)/log(2),0)
上記必要ビット数が大きくなると、ハードウェア制約となり、Tcapが小さくなると、割込頻度が増え、ソフトウェア制約となる。バランスを考慮して決定する。例えば、Tcap=2.5ms、Nwidth=5、Twidth=13に設定する。
・各種演算定数算出ステップ604
各種定数を求める。この値は後述する演算部113で用いられる。
パルス計数マスク値0(第1のマスク値) NMASK0 = 2^Nwidth−1
パルス計数最大値 NMAX = Fmax * Tcal
パルス計数マスク値1(第2のマスク値) NMASK1 = 2^(Roundup(log(NMAX)/log(2),0))−1
パルス計時マスク値0 TMASK0 = 2^Twidth−1
キャプチャー周期指数 TCAP = Tcap * Ftim
パルス計時最大値 TMAX = Ftim / Fmin
演算周期指数 TCAL = Tcal * Ftim
例えば、上記はそれぞれ、0x1f、160、0xff、0x1fff、6250、2500000、50000となる。
バッファ処理部901は、キャプチャー部110よりCN、CTを読み取り、ローカル変数XN、XTにコピーする。
・オーバーフロー処理402
バッファ処理部901は、図2、図3、図4の何れかを実施してオーバーフローフラグOVFFを得る。
・割込要求クリアステップ403
バッファ処理部901は、割込要求クリア要求ICRQを出力する。
・計数値編集ステップ404
バッファ処理部901は、下記の式にて、キャプチャー周期Tcap用から演算周期Tcal用にビット拡張した値XNを求める。
XN=(YN+(XN−YN)&NMASK0)&NMASK1
即ち、バッファ処理部901は、今回割込時におけるパルス計数レジスタXNの値から前回割込時におけるパルス計数レジスタYNの値を減じた値と、NMASK0と、の論理積から、前回割込時から今回割込時の間に入力されたパルスエッジの数を求める。さらに、バッファ処理部901は、前回のパルス計数データ(YN)に、前回割込時から今回割込時の間に入力されたパルスエッジの数を加算した値と、NMASK1と、の論理積により今回のパルス計数データ(XN)を求める。
・計時値編集ステップ405
バッファ処理部901は、下記の式にて、最後にパルスエッジPEが入力されてから、キャプチャークロックCK_CAPまでの時間XTを求める。
OVFF=0即ちオーバーフローなしの時、
XT=XT&TMASK0
即ち、バッファ処理部901は、パルス計時部109でオーバーフローが発生していない場合、パルス計時レジスタCTの値によって、パルス計時データXTを求める。
それ以外のとき、
XT=MIN(YT+TCAP,TMAX)
即ち、バッファ処理部901は、パルス計時部109でオーバーフローが発生している場合、前回のパルス計時データ(YT)に、キャプチャークロック周期/計時クロック周期で得られる所定の定数値(TCAP)を加算することで、最後のパルスエッジPEからの時間/計時クロック周期であるパルス計時データ(XT)を求める。
・バッファ更新ステップ406
バッファ処理部901は、次のリングバッファポインタの位置PNT2を求める。
下記の式にて、リングバッファを更新する。
N[PNT2]=XN
T[PNT2]=XT
・ポインタ更新ステップ407
バッファ処理部901は、リングバッファポインタPNTを更新する。
・前回値設定ステップ408
バッファ処理部901は、下記の式にて、前回値を設定する。
YN=XN
YT=XT
演算処理部902は、リングバッファポインタPNTを一度だけ参照し、ローカル変数C0には今回のポインタ位置を設定し、ローカル変数C1にはC0からTCAL/TCAP個分遡ったポインタ位置を設定する。
・分子演算ステップ502
演算処理部902は、下記の式にて、NUMを求める。
NUM = MIN((N[C0]−N[C1])&MASK1,NMAX)
即ち、演算処理部902は、リングバッファを参照して、今回のパルス計数データ(N[C0])から、所定の演算周期(TCAL/TCAP)分遡った位置のパルス計数データ(N[C1])を減じた値と、MASK1との論理積から、所定の演算周期の間に入力されたパルスエッジの数NUMを求める。
・周波数演算ステップ503
演算処理部902は、下記の式にて、Fを求める。
NUMが0のとき、
F=MIN(Ftim/T[C0],F)
それ以外のとき、
F=NUM*Ftim/(TCAL+T[C1]−T[C0])
次に、ノイズの影響を除去するために、フィルタ部105を追加した実施の形態5について説明する。図16は、本発明の実施の形態5にかかる速度検出装置の構成例を示す図である。以下、実施の形態1と同一部分には同一符号を付してその説明を省略し、ここでは異なる部分についてのみ述べる。
次に、多チャンネル化した実施の形態6について説明する。図17は、本発明の実施の形態6にかかる速度検出装置の構成例を示す図である。以下、実施の形態5と同一部分には同一符号を付してその説明を省略し、ここでは異なる部分についてのみ述べる。
101 波形整形部
102 フィルタクロック発生部
103 計時クロック発生部
104 キャプチャークロック発生部
105 フィルタ部
106 エッジ検出部
107 パルス計数部
108 オーバーフロー検出部
109 パルス計時部
110 キャプチャー部
111 割込要求部
113 演算部(周波数算出部)
701,702,801周波数演算値の波形
901 バッファ処理部
902 演算処理部
ACCt 目標精度
CK_CAP キャプチャークロック
CK_FIL フィルタクロック
CK_TIM 計時クロック
CN パルス計数レジスタ
CT パルス計時レジスタ
F 周波数演算値
Fmax 最大入力周波数
Fmin 最小入力周波数
Ftim 計時クロック周波数
ICRQ 割込要求クリア要求
IN 入力信号
IRQ 割込要求
LN ライブパルス計数値
LT ライブパルス計時値
N[ ] パルス計数リングバッファ
NMASK0 パルス計数マスク値0(第1のマスク値)
NMASK1 パルス計数マスク値1(第2のマスク値)
NMAX パルス計数最大値
NUM パルスエッジの数
Nwidth パルス計数必要ビット数
OVF オーバーフローレジスタ
OVFF オーバーフローフラグ
P パルス信号
PE パルスエッジ(パルス)
PNT リングバッファポインタ
T[ ] パルス計時リングバッファ
TCAL 演算周期指数
TCAP キャプチャー周期指数(所定の定数)
Tcap キャプチャー周期
Tcal 演算周期
TMASK0 パルス計時マスク値0
TMAX パルス計時最大値
Twidth パルス計時必要ビット数
Claims (10)
- 外部からの入力信号のパルス数を計数するパルス計数部と、
計時クロックによりカウントアップし、パルスによってクリアされることで、最後のパルスからの時間を計時するパルス計時部と、
前記パルス計時部がオーバーフローしたことを検出しオーバーフローレジスタに保持するオーバーフロー検出部と、
一定周期毎に測定結果を得るキャプチャークロックのタイミングで割込要求を出力することにより、前記パルス計数部からの出力をパルス計数レジスタに保持すると共に、前記パルス計時部からの出力をパルス計時レジスタに保持するキャプチャー部と、
前記パルス計数レジスタの値と、前記パルス計時レジスタの値と、前記オーバーフローレジスタの値と、を読み取り、所定の演算により、周波数演算値を算出する周波数算出部と、
を備え、
前記周波数算出部は、前記パルス計時部がオーバーフローした場合、前回割込時における最後のパルスからの時間/前記計時クロックの周期であるパルス計時データに、前記キャプチャークロックの周期/前記計時クロックの周期で得られる所定の定数を加算して、最後のパルスからの時間/前記計時クロックの周期であるパルス計時データを求めることにより、前記周波数演算値を算出し、
所定の周期内に入力されたパルスが0個の場合、直後にパルスが入力されると仮定した周波数演算値と、前回の周波数演算値と、の低い方の値を選択することにより、周波数演算値を推定すること、
を特徴とする速度検出装置。 - 前記オーバーフロー検出部は、
前記オーバーフローレジスタを、前記パルス計時部が所定の最大値を超えたことを検出してセットし、前記周波数算出部からクリアされるまで保持するように構成され、
前記周波数算出部は、
前回割込時のパルス計数レジスタの値と、今回割込時のパルス計数レジスタの値と、の差がない場合、オーバーフローが発生していないと判断すると共に、前記オーバーフローレジスタをクリアし、
前回割込時のパルス計数レジスタの値と、今回割込時のパルス計数レジスタの値と、の差がある場合、前記オーバーフローレジスタの値によりオーバーフローが発生しているか否かを判断すること、
を特徴とする請求項1に記載の速度検出装置。 - 前記オーバーフロー検出部は、
前記オーバーフローレジスタを、パルス計時部が所定の最大値を超えたことを検出してセットし、前記周波数算出部からクリアされるまで保持するように構成され、
前記周波数算出部は、
前記オーバーフローレジスタがセットされている場合、所定のメモリーに、オーバーフローの発生を示すオーバーフローフラグをセットすると共に、前記オーバーフローレジスタをクリアし、
前回割込時のパルス計数レジスタの値と、今回割込時のパルス計数レジスタの値と、の差がある場合、オーバーフローが発生していないと判断し、前記オーバーフローフラグをクリアすること、
を特徴とする請求項1に記載の速度検出装置。 - 前記オーバーフロー検出部は、
オーバーフロービットを、パルス計時部が所定の最大値を超えたことを検出してセットし、パルスによりクリアし、
前記キャプチャークロックにあわせて、前記オーバーフロービットを前記オーバーフローレジスタに保持すること、
を特徴とする請求項1に記載の速度検出装置。 - 前記周波数算出部は、
パルス計時レジスタのビット数を拡張して保持する変数であるパルス計時データを備え、
今回割込時におけるパルス計数レジスタの値から、前回割込時におけるパルス計数レジスタの値を減じた値に基づき、前回割込時から今回割込時の間に入力されたパルスの数を求め、
前記パルス計時部でオーバーフローが発生していない場合、前記パルス計時レジスタの値により、パルス計時データを求め、
前記パルス計時部でオーバーフローが発生している場合、前回のパルス計時データに、前記キャプチャークロックの周期/前記計時クロックの周期で得られる所定の定数を加算することで、最後のパルスからの時間/前記計時クロックであるパルス計時データを求め、
下記演算式により周波数演算値を求めること、
を特徴とする請求項1に記載の速度検出装置。
NUMが0以外の場合、
F=NUM*Ftim÷(TCAP+YT−XT)
NUMが0の場合、
F=MIN(Ftim÷XT,F)
ここで、
右辺に現れるFは、前回の周波数演算値。
左辺に現れるFは、今回の周波数演算値。
NUMは、前回割込時から今回割込時の間に入力されたパルスの数。
Ftimは、計時クロック周波数。
TCAPは、前記キャプチャークロックの周期を、計時クロックの周期で割った所定の定数。
XTは、今回割込時における最後のパルスからの時間/計時クロックの周期であるパルス計時データ。
YTは、前回割込時における最後のパルスからの時間/計時クロックの周期である前回のパルス計時データ。
MINは、最小値を返す関数。 - 前記周波数算出部は、
前記パルス計数レジスタの値と、前記パルス計時レジスタの値と、前記オーバーフローレジスタの値と、を読み取りバッファリングするバッファ処理部と、
前記キャプチャークロックの周期の整数倍の演算周期毎に起動し、前記バッファ処理部でバッファしたデータに基づき、演算周波数を算出する演算処理部と、
を有し、
前記バッファ処理部は、
前記パルス計数レジスタの値と前記パルス計時レジスタの値とを時系列的に記憶するリングバッファと、前記リングバッファの現在の位置を保持するリングバッファポインタとを備え、
今回割込時におけるパルス計数レジスタの値から前回割込時におけるパルス計数レジスタの値を減じた値と、第1のマスク値と、の論理積から前回割込時から今回割込時の間に入力されたパルスの数を求め、
前回のパルス計数データに、前回割込時から今回割込時の間に入力されたパルスの数を加算した値と、第2のマスク値と、の論理積により今回のパルス計数データを求め、
ここで、マスク値は2のべき乗−1の形式で表され、第2のマスク値は第1のマスク値より大きい値であり、
前記パルス計時部でオーバーフローが発生していない場合、前記パルス計時レジスタの値により、パルス計時データを求め、
前記パルス計時部でオーバーフローが発生している場合、前回のパルス計時データに、前記キャプチャークロックの周期/前記計時クロックの周期で得られる所定の定数を加算することで、最後のパルスからの時間/前記計時クロックであるパルス計時データを求め、
リングバッファの現在の位置の次の位置に、パルス計数データおよびパルス計時データを保存してからポインタを更新する処理を含み、
前記演算処理部は、
ポインタの値を参照し、今回のポインタ位置と、今回のポインタ位置から所定の演算周期分過去に遡ったポインタ位置と、を求め、
リングバッファを参照して、今回のパルス計数データから、所定の演算周期分過去のパルス計数データを減じた値と、第2のマスク値と、の論理積から、所定の演算周期の間に入力されたパルスの数を求め、
下記演算式により周波数演算値を求めること、
を特徴とする請求項1に記載の速度検出装置。
NUMが0以外の場合、
F=NUM*Ftim÷(TCAL+T[C1]−T[C0])
NUMが0の場合、
F=MIN(Ftim÷T[C0],F)
ここで、
右辺に現れるFは、前回の周波数演算値。
左辺に現れるFは、今回の周波数演算値。
NUMは、所定の演算周期の間に入力されたパルスの数。
Ftimは、計時クロック周波数。
TCALは、所定の演算周期を、計時クロック周期で割った所定の定数。
T[C0]は、今回のパルス計時データ。
T[C1]は、所定の演算周期分過去のパルス計時データ。
MINは、最小値を返す関数。 - 波形整形部の後段に設置されたフィルタ部と、
前記フィルタ部に必要なクロックを供給するフィルタクロック発生部と、
を備え、
前記フィルタ部は、フィルタクロックでパルス信号をサンプリングし、所定回数の連続一致を条件に、出力を変化させること、
を特徴とする請求項1に記載の速度検出装置。 - エッジ検出部と、前記パルス計数部と、前記オーバーフロー検出部と、前記パルス計時部と、前記キャプチャー部と、前記フィルタ部とを複数備え、
前記フィルタクロック発生部を共用すること、
を特徴とする請求項7に記載の速度検出装置。 - 外部からの入力信号のパルス数を計数するパルス計数部と、
計時クロックによりカウントアップし、パルスによってクリアされることで、最後のパルスからの時間を計時するパルス計時部と、
前記パルス計時部がオーバーフローしたことを検出しオーバーフローレジスタに保持するオーバーフロー検出部と、
一定周期毎に測定結果を得るキャプチャークロックのタイミングで割込要求を出力することにより、前記パルス計数部からの出力をパルス計数レジスタに保持すると共に、前記パルス計時部からの出力をパルス計時レジスタに保持するキャプチャー部と、
前記パルス計数レジスタの値と、前記パルス計時レジスタの値と、前記オーバーフローレジスタの値と、を読み取り、所定の演算により、周波数演算値を算出する周波数算出部と、
を備え、
前記周波数算出部は、前記パルス計時部がオーバーフローした場合、前回割込時における最後のパルスからの時間/前記計時クロックの周期であるパルス計時データに、前記キャプチャークロックの周期/前記計時クロックの周期で得られる所定の定数を加算して、最後のパルスからの時間/前記計時クロックの周期であるパルス計時データを求めることにより、前記周波数演算値を算出し、
前記オーバーフロー検出部は、
オーバーフロービットを、パルス計時部が所定の最大値を超えたことを検出してセットし、パルスによりクリアし、前記キャプチャークロックにあわせて、前記オーバーフロービットを前記オーバーフローレジスタに保持すること、
を特徴とする速度検出装置。 - 外部からの入力信号のパルス数を計数するパルス計数部と、
計時クロックによりカウントアップし、パルスによってクリアされることで、最後のパルスからの時間を計時するパルス計時部と、
前記パルス計時部がオーバーフローしたことを検出しオーバーフローレジスタに保持するオーバーフロー検出部と、
一定周期毎に測定結果を得るキャプチャークロックのタイミングで割込要求を出力することにより、前記パルス計数部からの出力をパルス計数レジスタに保持すると共に、前記パルス計時部からの出力をパルス計時レジスタに保持するキャプチャー部と、
前記パルス計数レジスタの値と、前記パルス計時レジスタの値と、前記オーバーフローレジスタの値と、を読み取り、所定の演算により、周波数演算値を算出する周波数算出部と、
を備え、
前記周波数算出部は、前記パルス計時部がオーバーフローした場合、前回割込時における最後のパルスからの時間/前記計時クロックの周期であるパルス計時データに、前記キャプチャークロックの周期/前記計時クロックの周期で得られる所定の定数を加算して、最後のパルスからの時間/前記計時クロックの周期であるパルス計時データを求めることにより、前記周波数演算値を算出し、
パルス計時レジスタのビット数を拡張して保持する変数であるパルス計時データを備え、
今回割込時におけるパルス計数レジスタの値から、前回割込時におけるパルス計数レジスタの値を減じた値に基づき、前回割込時から今回割込時の間に入力されたパルスの数を求め、
前記パルス計時部でオーバーフローが発生していない場合、前記パルス計時レジスタの値により、パルス計時データを求め、
前記パルス計時部でオーバーフローが発生している場合、前回のパルス計時データに、前記キャプチャークロックの周期/前記計時クロックの周期で得られる所定の定数を加算することで、最後のパルスからの時間/前記計時クロックであるパルス計時データを求め、
下記演算式により周波数演算値を求めること、
を特徴とする速度検出装置。
NUMが0以外の場合、
F=NUM*Ftim÷(TCAP+YT−XT)
NUMが0の場合、
F=MIN(Ftim÷XT,F)
ここで、
右辺に現れるFは、前回の周波数演算値。
左辺に現れるFは、今回の周波数演算値。
NUMは、前回割込時から今回割込時の間に入力されたパルスの数。
Ftimは、計時クロック周波数。
TCAPは、前記キャプチャークロックの周期を、計時クロックの周期で割った所定の定数。
XTは、今回割込時における最後のパルスからの時間/計時クロックの周期であるパルス計時データ。
YTは、前回割込時における最後のパルスからの時間/計時クロックの周期である前回のパルス計時データ。
MINは、最小値を返す関数。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/JP2010/054428 WO2011114438A1 (ja) | 2010-03-16 | 2010-03-16 | 速度検出装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP4912511B2 true JP4912511B2 (ja) | 2012-04-11 |
JPWO2011114438A1 JPWO2011114438A1 (ja) | 2013-06-27 |
Family
ID=44648570
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2011532411A Expired - Fee Related JP4912511B2 (ja) | 2010-03-16 | 2010-03-16 | 速度検出装置 |
Country Status (4)
Country | Link |
---|---|
US (1) | US9151772B2 (ja) |
JP (1) | JP4912511B2 (ja) |
CN (1) | CN102792167B (ja) |
WO (1) | WO2011114438A1 (ja) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9686062B2 (en) * | 2011-03-04 | 2017-06-20 | Alcatel Lucent | Virtual aggregation of fragmented wireless spectrum |
FR3037392B1 (fr) * | 2015-06-12 | 2018-11-09 | Renault S.A.S. | Procede de calcul d'une vitesse de roue et dispositif de mesure correspondant |
US10788853B2 (en) * | 2017-01-31 | 2020-09-29 | Texas Instruments Incorporated | Interrupt handling method and apparatus for slow peripherals |
CN109375128B (zh) * | 2018-10-15 | 2020-09-15 | 合肥本源量子计算科技有限责任公司 | 一种载频脉冲信号频率校准方法 |
CN111141926B (zh) * | 2019-12-27 | 2022-06-03 | 宁波三星智能电气有限公司 | 一种充电桩内的风机转速检测方法 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS59214920A (ja) * | 1983-05-20 | 1984-12-04 | Yaskawa Electric Mfg Co Ltd | パルス周波数演算方式 |
JPH0618538A (ja) * | 1992-02-05 | 1994-01-25 | Shinko Electric Co Ltd | 速度検出装置 |
JPH0757346A (ja) * | 1993-08-17 | 1995-03-03 | Rohm Co Ltd | Vtrのマイコンサーボ系におけるモータ起動回路 |
JP2000074962A (ja) * | 1998-08-28 | 2000-03-14 | Nec Ic Microcomput Syst Ltd | 周期計測装置および周期計測方法、並びに記録媒体 |
JP2007075395A (ja) * | 2005-09-15 | 2007-03-29 | Samii Kk | 遊技機用基板ユニット |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH061279B2 (ja) * | 1982-12-01 | 1994-01-05 | 株式会社日立製作所 | デイジタル式速度検出装置 |
JPH04121085A (ja) * | 1990-09-10 | 1992-04-22 | Hitachi Ltd | ディジタルパルス処理装置 |
JPH04350564A (ja) * | 1991-05-28 | 1992-12-04 | Zexel Corp | パルスの発生周期演算方法 |
JP2945284B2 (ja) | 1994-11-08 | 1999-09-06 | 神鋼電機株式会社 | 速度検出装置 |
JPH08233842A (ja) | 1995-02-28 | 1996-09-13 | Mitsubishi Electric Corp | 速度検出装置およびその異常検出方法 |
US6219624B1 (en) * | 1998-08-03 | 2001-04-17 | Visteon Global Technologies, Inc. | Synchronous timer vehicle speed measurement |
DE102006032788A1 (de) | 2005-07-15 | 2007-03-29 | Denso Corp., Kariya | Alternatives Eingabesteuerverfahren und -vorrichtung |
JP2007045395A (ja) | 2005-07-15 | 2007-02-22 | Denso Corp | 代替入力制御方法および代替入力制御装置 |
-
2010
- 2010-03-16 JP JP2011532411A patent/JP4912511B2/ja not_active Expired - Fee Related
- 2010-03-16 CN CN201080065451.3A patent/CN102792167B/zh not_active Expired - Fee Related
- 2010-03-16 WO PCT/JP2010/054428 patent/WO2011114438A1/ja active Application Filing
- 2010-03-16 US US13/582,313 patent/US9151772B2/en not_active Expired - Fee Related
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS59214920A (ja) * | 1983-05-20 | 1984-12-04 | Yaskawa Electric Mfg Co Ltd | パルス周波数演算方式 |
JPH0618538A (ja) * | 1992-02-05 | 1994-01-25 | Shinko Electric Co Ltd | 速度検出装置 |
JPH0757346A (ja) * | 1993-08-17 | 1995-03-03 | Rohm Co Ltd | Vtrのマイコンサーボ系におけるモータ起動回路 |
JP2000074962A (ja) * | 1998-08-28 | 2000-03-14 | Nec Ic Microcomput Syst Ltd | 周期計測装置および周期計測方法、並びに記録媒体 |
JP2007075395A (ja) * | 2005-09-15 | 2007-03-29 | Samii Kk | 遊技機用基板ユニット |
Also Published As
Publication number | Publication date |
---|---|
CN102792167A (zh) | 2012-11-21 |
CN102792167B (zh) | 2014-09-03 |
US9151772B2 (en) | 2015-10-06 |
WO2011114438A1 (ja) | 2011-09-22 |
US20120323523A1 (en) | 2012-12-20 |
JPWO2011114438A1 (ja) | 2013-06-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4912511B2 (ja) | 速度検出装置 | |
US7391240B2 (en) | Clock anomaly detection circuit and clock anomaly detection method | |
EP3598179B1 (en) | Seismic sensor and earthquake determination method | |
US9647606B2 (en) | Counter based circuit for measuring movement of an object | |
KR101240798B1 (ko) | 리얼타임클럭 주파수 오프셋 검출장치 및 그 방법 | |
JP3750924B2 (ja) | 放射線モニタ | |
JP5077815B2 (ja) | パルス入力装置 | |
JP6000652B2 (ja) | パルスモータ制御装置およびパルス信号生成方法 | |
JP6161682B2 (ja) | 信号周期検出装置及び信号周期検出方法 | |
JP5678868B2 (ja) | 信号処理装置 | |
KR19990043005A (ko) | 증분형 엔코더를 이용한 전동기 속도 검출 장치 | |
JP2018186639A (ja) | 保護継電装置 | |
EP3321764A1 (en) | Clock frequency detection method and apparatus | |
JP2007010593A (ja) | 周波数測定回路及びそれを用いた振動センサ式差圧・圧力伝送器 | |
KR19980054686A (ko) | 전동기에 있어서 속도검출방법 및 장치 | |
JP3842880B2 (ja) | クロックの周波数異常検出回路および方法 | |
JP6374350B2 (ja) | タイマ同期システム | |
JPS59214920A (ja) | パルス周波数演算方式 | |
KR19990001541A (ko) | 속도검출방법 및 장치 | |
JPH02295217A (ja) | パルス計測回路 | |
KR20140060931A (ko) | 레지스터를 이용한 스마트 휠 센서 신호 처리 방법 | |
JP2005009916A (ja) | 周波数測定装置 | |
JP2020031374A (ja) | Pwm信号受信装置 | |
JPH03100473A (ja) | パルス列入力処理装置 | |
JPH0314315A (ja) | フィルタ |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20110802 |
|
A871 | Explanation of circumstances concerning accelerated examination |
Free format text: JAPANESE INTERMEDIATE CODE: A871 Effective date: 20110802 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20110802 |
|
A975 | Report on accelerated examination |
Free format text: JAPANESE INTERMEDIATE CODE: A971005 Effective date: 20110920 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20110927 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20111108 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20111220 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20120117 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 4912511 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20150127 Year of fee payment: 3 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
LAPS | Cancellation because of no payment of annual fees |