|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
6 q d" l W1 f P0 @% Y9 B0 k( r摘要比较了常见的转速测量方法,指出了它们的不足,提出一种基于单片机的转速测量算法。它可* N+ Q0 j+ n1 S: }& V
以使所测转速的周期数随转速变化而线性变化,文中对算法中参数的选取作了讨论,并根据单片机的特' Q! i- g1 F- q/ N) F8 ^+ v6 p
性提出了基2算法,简化了运算,设计了相关的实验软件。实验表明,该算法能实现高精度、宽范围測
$ Y* M7 [. I5 _7 J量,且实时性较强。
# L0 U- E* j0 z7 [% X+ G; X: ?关键词 转速测量 高精度测量 基2算法 单片机5 f- ?5 u* H# F! D+ K. w( k
! E$ q6 Q4 s1 K" l Y
数字转速测量法主要有两种:测频法和测周3 {: M) |: L5 B7 I: `( [* h. P
法。测频法在低转速时误差较大,仅适合高转速;; R5 `" _ {- `( @
测周法适用于低转速场合。在测周法中,当时基
0 e) F9 B0 @" z' A/ a$ ^△t一定时,则有Mx△t=NxT(其中M为时基脉
4 i: |7 q1 {) o冲数,N为脉冲数,T为相邻两个脉冲之间的时/ h7 n# _$ R) z: t6 H% ~8 \
间)。在测某- -转速时,若要提高M,则提高N即$ `4 w d! V# ~0 w
可,N不能无原则地取大,取得太大则影响实时性;+ k% @9 u# `3 |8 Q, k2 D! @
取得太小,则提高不了精度。所以N应当是可以
" l) v. A3 V/ r$ o- ?随转速变化而能线性变化的适当大的值。为解决.
) e& x0 n6 K: C P7 q/ \5 V; U以上问题,文献[1]选用浮点定时计数法,但精度和/ H5 D3 E0 {! h7 o
测量范围仍可以提高。文献[2]是根据不同的转" N: [/ d# q* x8 h9 q, Z
速事先人为计算出需要测的脉冲数(在文献中由K
, J2 x% k- T3 U% A+ a7 S表示),但K不是随转速线性变化的,故对不同的
3 _: W- s4 t" F& Y转速适应性不强,且范围不宽、精度不高。本文提
Z: u7 Y3 T; I出的算法,能够确保所测的脉冲数N随转速而改" T# e* c1 F$ a
变。这是通过算法实现的,无须人为判断转速高* k3 Y$ h6 R. A/ J1 ?4 h6 q" M
低,同时所设计的软件结构简单,所占机时很少。7 A ^! G* O1 G/ O
* e t! d5 T0 E2 g; z3 _1转速测量算法
" D$ M) I/ ~3 v) N5 k+ @# d# y本文讨论快速响应且高精度的转速测量算2 D- ]1 l9 s% W4 V4 R6 f
法。假设转速脉冲信号是方波,且转子转动一转
1 O) m) a. h3 c8 v' S, @* p* ~/ ~* {3 {. l
& k! v6 O: u2 }# Z
* |* C9 c$ P, h" C
|
|