专研DSP28XX系列,深入了解C语言的'奥妙,掌握ORCAD中电路图的仿真功能,学习MCU等控制理论.努力. 每天都要有收获.生活才会因此多姿多彩.相信自己.未来就会有希望!

DSP的正交解码电路与捕获单元在电机测速中的运用

上一篇 / 下一篇  2007-05-19 15:55:27 / 天气: 晴朗 / 心情: 高兴 / 个人分类:学习日记

2d a0`PY%n'o(v~I0

DSP的正交解码电路与捕获单元在电机测速中的运用
 

|^+XaNQ?:\.R3Wm0摘 要:TMS320F240是美国德州仪器公司为满足数字电机控制(DMC)应用而设计的数字信号处理芯片。本文详细介绍了该芯片的专用模块(正交解码电路和捕获单元)的功能、特点,在此基础上给出了实现M法、T法以及M/T法三种测速方法的基本思路。  EDA中国门户网站!?)pvrC4^5k#Mg2V
关键词:数字信号处理器 正交解码电路 捕获单元 电机测速 
l9|8k~|:x/D0Abstract: TMS20F240 is a kind of DSP Controller designed for the Digital Motor Control by 
_ wT X8c"~MA8Mg0Texas Instruments Co.. This paper describes the functions and features of the special module, EDA中国门户网站 m Ff/L5e
Quadrature Encoder Pulse and Capture Unit in the DSP Controller. Based on this point, 

O n6TiRw)E{0

#VqJ!?/f-r6|(_)M0the realization EDA中国门户网站J&fLuEPlZ{\ X
of three methods is presented, which are the M method ,T method, M/T method.  EDA中国门户网站} X3fRd${lsK
Keywords: Digital Signal Processor Quadrature Encoder Pulse Capture Unit Speed Measuring  EDA中国门户网站q,`6h*WY!K [:O
[中图分类号] TM921 [文献标识码] A 文章编号 1561-0330(2002)03-0033-03 
l)u.Yq0c:Fm q!w0EDA中国门户网站iY5D7i t} A
1 引言  EDA中国门户网站,t7u'_u'F.`7]T#g
  对于交流异步电机调速来讲,电机转子转角和转速的测量是一个极其关键的环节。美国TI公司专为电机调速设计的数字电机微控制器TMS320F240具有其特殊功能模块--正交解码(QEP)电路和捕获单元,它们可直接与光电编码器相连,用于转速检测。其中QEP电路内部设有转向判别和倍频功能,因此不再需要其它辅助电路,接口电路设计变得非常简单。而且F240具有三个功能强大的通用定时器,可灵活应用于各种测速方法。  EDA中国门户网站?K{rk jB
TMS320F240与测速相关的管脚主要有四个:CAP1/QEP1,CAP2/QEP2,CAP3和CAP4。正交解码(QEP)电路与捕获单元CAP1、CAP2共享两个输入引脚,因此需要正确配置捕获控制寄存器CAPCON来使能正交解码电路并禁止捕获单元1、2。这样就把相应的管脚分配给QEP电路使用。 
lb CXGS"z/MU,n0  F240与增量式光电编码器连接如图一所示,光码盘的A与B信号相差900,-A、-B分别为反向1800的信号。Z、-Z信号互为反向,是每转输出一个脉冲的零位参考信号。其中TL714是高速差分比较器。 
P7Qdz\Wx3k;Vl0EDA中国门户网站FS5Wj~kK JZ
2 QEP电路和捕获单元的工作原理 
Ixi L'~+D#c0  正交解码电路必须选择一个计数器用于计算电路的输入脉冲次数,即将QEP电路脉冲信号作为某通用定时器的时钟源。F240的通用定时器2,3或2和3一起形成的一个32位定时器可供其选择。以通用定时器2为例,首先要求T2定时器工作在双向加/减计数模式。在这种工作模式下,QEP电路不仅为定时器T2提供计数时钟,而且还决定了计数方向。 
D#D+lB&`4uoP%o/r0  当电机正转时,QEP电路的方向检测逻辑测定出连接到光码盘A相的QEP1输入引脚上脉冲序列的相位领先于QEP2上的脉冲信号,然后产生一个方向信号(此信号可以在特殊寄存器内读取,以此判别转向)作为T2定时器的计数方向,则计数器T2CNT递增计数;反之,若电机反转,QEP2输入是先导脉冲序列,则计数器T2CNT递减计数。定时器T2在计数器下溢或上溢时发生翻转,并重新开始计数。如果两列正交解码输入脉冲的两个边沿均被QEP电路检测,则T2的时钟频率是每个输入序列频率的4倍,如图2所示。由此省去了原有的正交解码脉冲电路4倍频电路。 
Z3K.i f|p/P&J9q0  F240共有四个捕获单元,每一个捕获单元都有一个相应的捕获输入引脚。用户定义捕获控制寄存器检测捕获引脚上的转换:上升沿、下降沿或二者均检测。每个捕获单元都可以选择通用定时器2或3作为其时间基准。每当在捕获输入引脚上检测到一个设定的转换时, 该捕获单元选定的通用定时器的计数器值被捕获并锁存在相应的2级深度FIFO堆栈中。如果去除了捕获中断屏蔽,捕获单元同时会向CPU发送一个中断申请。  EDA中国门户网站T+UrR:G
在检测电机转角和转速之前,必须先作以下设置:  EDA中国门户网站2}'p:Tu7jQed9W1n
  选择通用定时器1工作在连续递增计数模式,允许周期定时中断。在这种工作模式下,定时器按照定标输入时钟递增计数,直到计数器的值与周期寄存器的值相同时,计数器复位为零,周期中断标志被设置为1,然后开始另一个计数周期。通用定时器2工作在双向加/减计数模式,计算QEP电路输入脉冲个数。通用定时器3工作方式与定时器1完全相同,但是被选为捕获单元4的时间基准。  EDA中国门户网站9x3e Y\cN
EDA中国门户网站7x#g#l'Efza _/[
3 转角计算  EDA中国门户网站1x5h]}v}4e^ b
  在计算电机转角之前,必须先解决转角定位问题。当在捕获输入引脚CAP3上检测到零位参考信号时,定时器2的计数值T2CNT被捕获并存储在相应的2级深度FIFO堆栈中,被捕获的T2CNT值就可以作为计算转角的基准值。这样,转子每旋转一周,基准值就被重新定义一次,从而保证了转角的准确性。 
@~czX)y4BR0为了方便说明,我们只考虑正转情况。用于正交解码电路计数的定时器T2是一个16的通用定时器,因此当定时器T2计数到最大值FFFFH时,计数器T2CNT发生翻转,重新从零开始计数。必须分两种情况来计算转角。 
;h{:i#i9?f03.1 定时器T2不发生翻转计数 
d q$hf5}-IM0  如图3(a)所示,f(1)、f(2)分别是t1、t2时刻定时器T2计数值;f(0)、f1(0)为相邻两次零位参考信号时的定时器T2计数值。那么在t1~t2时间内电机转子旋转的机械角度应是 
@ttf#[5p&i%I0(rad) (1) 
]mAGj,Tp4e7y0式中PN—每转脉冲数, PN=2500脉冲/转;  EDA中国门户网站"KDfB,b|
式中Δ1=f(2)-f(1)。 
d/h8?Pt8[&e3M0若要计算t2时刻相对于以光码盘Z信号转角基准的旋转夹角,则必须以最后一次捕获值f1(0)为参考值。可表示为 
,kmV!p$VMW%v0(rad) (2)  EDA中国门户网站eK n8WW$Y${
式中Δ2=f(2)-f1(0) 
X3] R/phF(OrPc03.2 定时器T2发生翻转  EDA中国门户网站A)LT4cJ%n7G
因为计数器T2CNT每计数FFFFH次,才翻转一次,这远远大于光码盘每转输出脉冲的四倍数(10000)。因此,在相邻两个零位参考信号之间,计数器T2CNT最多出现一次翻转的情况。如图3(b)所示。可知  EDA中国门户网站}:WluC2_-u+e;_
(rad) (3)  EDA中国门户网站#z9i\k2YL:\
其中Δ1=f(2)-f(1)+FFFFH 
MAP?$D?7y5|0同定时器T2不翻转情况相同:  EDA中国门户网站q'H-z[7yMsa!I4R
(rad) (4)  EDA中国门户网站2V e_5b"N
式中Δ2=f(2)-f1(0)+FFFFH 
JEo/[)R*m4Xd6I D0EDA中国门户网站%ar|9B3@l
4 转速计算 
:i%nw\$~M'V*t0  下面介绍M法、T法以及M/T法三种常用测速方法。M法测速是在相等的时间间隔Tc内用光码盘输出脉冲个数来算出转速,从而得到转速的测量值T法测速是测出相邻两个脉冲之间的间隔时间来计算转速。根据以上定义可知,转速越低,M法测速误差越大;T法测速则正好相反,测速误差随转速加大而加大。那么若想检测低转速,同时又要保证高转速的精度,就必须综合这两种测速方法的特点,从而得到M/T法的测速方法:在M法的基础上,以时间TC之后光码盘再输出第一个脉冲为止的时间为检测时间。设置通用定时器T1的时钟输入为20MHz。并且开通定时器周期中断,中断周期等于计算转速的采样周期TC。则定时器每隔时间TC向CPU发出一次中断请求,CPU响应中断后,在中断服务子程序中按前面所述方法求出定时器T2变化量 ,则电机转速: 
[#sojm}0(5)  M法计算转速只需要检测一个变化量,即定时器T2变化量, 而且由于PN和TC均为常数,令,将上式改为: 
2v9BgD%t6{|3N0(6)  这样避免了复杂的定点除法运算,因此计算程序十分简单,只需四、五条语句便能实现。  EDA中国门户网站2?q$O+}8[6Zv
不过,正如前面讲到的一样:转速越低,M法测速误差越大。这在DSP中更加明显。通常情况下,我们希望控制周期越短越好,而同一转速下,周期越短,能够检测到光码盘输出脉冲个数就越少,分辨率也越高。举例说明见表1。  EDA中国门户网站"Q5nW2b!|W4_$uE$S

8_&z \{E!C0表1 M法测速性能表  EDA中国门户网站Y4{0w+c'm;jj:AE;Y
每转脉冲数PN=2500脉冲/转: 
O`!OihwP0控制周期TC(ms) 转速(转/分) 定时器T2变化量△1 分辨率(q=1/△1) 
h f%Onx01 3000 500 0.2%  EDA中国门户网站:[#Z"C"b~0d x
50 8.33 12.5%  EDA中国门户网站 L]}"e:|5Bw&K
0.1 3000 50 2% 
o"^PL"e050 △1小于1无法检测 
"k4?:T"lKA9[yU0可知当控制周期TC=0.1ms,转速低于60转/分时,使用M法将无法检测到转速。 
!w/cfp5x03.2 T法测速 
9RY NnFJb7h0s0T法测速可以利用捕获单元的功能来实现。选择通用定时器T3时钟频率f=20MHz,作为计算转速的时钟基准.设定当捕获引脚上发生上升或下跳沿时,均将计数器T3CNT值捕获并锁存。在计算两个连续捕获发生的间隔时间T时也必须考虑16位定时器翻转情况。与前面所述定时器T2翻转情况相同: 
o:fO fp K(}0不翻转时,m=f(1)-f(0) (7)  EDA中国门户网站7e5W(u3ZU2E
f(1)为当前捕获发生时16位定时器的计数值; 
9c;E fgCa0UsUZa0f(2)为前一捕获发生时16位定时器的计数值; 
eA odRO+W{0翻转时,只考虑翻转一次的情况;  EDA中国门户网站j1g[%r9gc"KX
m=f(1)-f(0)+0FFFFh (8) 
&q Y|T[ HU3`*I0那么转子转速: 
d5|8UqS TZ0(9) 
n`*Vt#}/dl OMm0这里TC指引脚CAP3上两个连续跳变沿间隔时间,TC=(m/20)MHz 
vo s!f? Z5|%Q gs0在计数器T3CNT翻转一次的情况下,T时间里内,定时器计数值最大变化量为mmax=0FFFFH,则最大检测时间 
%]%wJ1O/E Z2y{8D0EDA中国门户网站Z| r%[e*F
那么可测最低转速  EDA中国门户网站O5Kv!](~;\$h7b

\%}gs{CU W0在一般情况下,每分钟3.66转的转速已经相当低了,因此不能一味地追求低速测量,而选取由通用定时器T2和T3合成的32位定时器作为QEP电路的计数器,设计复杂的32位运算程序来计算更低转速。所以可以认为定时器出现两次或两次以上翻转的情况时,转子是静止的,即n=0rpm。  EDA中国门户网站`;DYZ ds.m
当电机转速n为3000rpm时,两个脉冲间的计数值:  EDA中国门户网站D P,vT QI
EDA中国门户网站K:m3n$tq0N'f$W7C4E
分辨率q%=1/160=0.625%。这已经能满足一般测速系统要求,所以对高速的DSP而言,采用T法测速即可达到要求。  EDA中国门户网站9s2W,W!dJ&ON*z
但是T法测速含有定点除法运算,因此计算过程比M法稍微复杂一些。 
?q$XvY!b/_q:@ @03.3 M/T法  EDA中国门户网站M)J.~E8I:w6e
仍然按M法设置通用定时器T1,按T法设置通用定时器T3。当发生定时器T1周期中断时(中断周期TC,计算定时器T2计数值变化量△1,读取此时定时器T3计数值T3CNT(0),并允许捕获单元CAP4捕获中断。在此之后,当捕获单元CAP4捕获到第一个跳变沿时,向CPU申请捕获中断。在捕获中断子程序中,根据捕获的计数值T3CNT(1),得检测时间 
SBU!SEY:s3SH0(10) 
Rm/g#Qk.[B[!P8O0则电机转子转速: 
x_2x+nS*R!NCx0(11) 
6D9h7ClTA#d`0M/T法综合了M法和T法的测速特点,能够在很宽范围内按要求检测转速。但是它涉及两个通用定时器、捕获单元、QEP电路等多个特殊寄存器的设计,所以在定义特殊寄存器时一定要小心,以免相互冲突。 
`]{u-{W|e0
.@r(ID%@b;j1r6O05 结束语 
fkR0DC@0本文主要介绍了数字电机控制专用控制芯片TMS320F240中专用模块正交解码电路和捕获单元的功能特点,给出了由它们实现M法、T法以及M/T法测速的三种方案,并做了对比。无论采用哪一种方法,在设计过程中都应该注意硬件与软件的配合,有效地利用QEP电路、捕获单元、定时器三者间的关系实现了测速功能。 
/}9UBk.U0
\DX%y c06 参考文献 
$ix+g0w@"|5v+x0[1] 武汉力源电子股份有限公司,“TMS320C24X DSP控制器参考手册”,1998.8  EDA中国门户网站,c mP0Kx6y$j"t+S
[2] 北京闻亭科技发展有限公司,“TMS320F24X 高速数字信号控制器原理与应用”  EDA中国门户网站;`7t ue:qu
[3] 曲家骐等编著,“伺服控制系统中的传感器”,机械工业出版社,1992.2  EDA中国门户网站\c,EAAj-r^
EDA中国门户网站#Of@,~"S

日期:2004-12-8  作者:南京航空航天大学航空电源重点实验室 王晓琳 张宏荃 邓智泉 严仰光  

/DQ \$M-ir0

TAG: 学习日记

 

评分:0

我来说两句

显示全部

:loveliness: :handshake :victory: :funk: :time: :kiss: :call: :hug: :lol :'( :Q :L ;P :$ :P :o :@ :D :( :)

Open Toolbar