A New Way of Measuring Velocity and Acceleration Based on Photoelectric Encoder
姜庆明 杨旭 甘永梅 王晓钰 王兆安
jiang qing ming(西安交通大学电气工程学院,西安 710049)
【摘要】在比较常用的基于光电编码器的测速、测加速度方法的优缺点的基础上,本文提出了一种新的基于光电编码器的高精度测速和测加速度的方法,论述了软硬件的实现方法。并且针对编码器脉冲不均匀性对测速、测加速度精度的造成的影响,提出了一种软件处理的方法,很好的提高了精度。
关键词:光电编码器 测速 测加速度 脉宽误差
【Abstract】By analyzing and comparing the existing ways of measuring velocity and acceleration based on photoelectric encoder, the paper proposed a new way of measuring the velocity and acceleration. How to design and realize the hardware and software is introduced. And how to improve the measuring accuracy influenced by the width error of the pulse is also introduced. 【Key words】photoelectric encoder、measure velocity、measure acceleration、width error of pulse
求。 1.引言
光电脉冲编码器是一种数字式角度传2.常用的几种基于光电编码器的测速感器, 它能将角位移量转换为与之对应的方法 电脉冲进行输出,主要用于机械转角位置和 在下图中列出了三种常用的基于光电旋转速度的检测与控制。在以光电编码器构编码器的测速方法,假定时钟频率为f,光
电编码器每转脉冲数为P。M1和M2分别是成的测速系统中,常用的测速方法有三种,即 “M法”、“T法”和“M/T 法”。加速
度值理论上只要根据上述方法测得的相邻两个速度点的速度差及其间隔时间即可计算得到。
本文在分析、比较现有的基于光电编码器的各种测速方法的基础上提出了一种新的方法,具有较高的测速精度和实时性;此外,普通编码器的制造误差使得编码器的脉宽是不均匀的,这对测速、测加速度精度的影响很大,本文提出了一种软件处理方法用于解决这个问题。
本文所提出的测速、测加速度方法在我国首台自行研制的摩托车交流底盘测功机测控系统得到应用。底盘测功机是摩托车整车室内试验中最常用的大型关键设备之一,其测控系统对测速、测加速度的精度和实时性要求都非常高,现有的几种常用的基于光电编码器的测速、测加速度方法都无法满足要求,本文提出的方法很好地满足了其测控系统对速度、加速度测量精度和实时性的要
对编码器脉冲和时钟脉冲进行计数的计数
值。
M1编码器脉冲...........T(a)编码器脉冲M2M法.......f(b)T法:M1编码器脉冲........M2.......f
(c)M/T法:图1. 各种测速法原理图
2.1 “M法”测速
通过测量一段固定的时间间隔内的编码器脉冲数来计算转速,适用于高速场合。
如图1(a)所示;设在固定时间T内测得的编码器脉冲数为M1,则转速为:
N60M1 (1) PT其相对误差:
NM1 (2)
NM12.2 “T法”测速
通过测量编码器两个相邻脉冲的时间 间隔来计算转速,适用于速度比较低的场 合,当转速较高时其准确性较差。由图1(b)可以得到:
N60f (3) PM2其相对误差:
NM2M2 (4) NMM22M22.3 “M/T 法”测速
“M/T 法”则是前两种方法的结合,同时测量一定个数编码器脉冲和产生这些脉冲所花的时间,在整个速度范围内都有较好的准确性,但是对于低速,该方法需要较长的检测时间才能保证结果的准确性,无法满足转速检测系统的快速动态响应指标。由图1(c)有:
N60fM1 (5P)
M2式中M1的值在测量前已经确定了,所以其相对误差为:
NM2M2 (6) NM2M2M2通常时钟频率f远大于转角编码器的输出脉冲频率,因此上面各式中M2也远大于
M1。对比(2)
、(4)、(6)式可以发现“M法”测速主要适用于中高速段,随着速度降
低M1也减小,因而低速段的测速精度很差,但通过选取适当采样时间T可以很容易地满足动态响应要求;“T”法测速情况与此恰恰相反;“M/T法”在整个速度范围都可以达到较高的测速精度,但是通常选取的M1值大于1,在低速段的动态响应比“T”法还慢。
3.提出一种基于光电编码器的新的测
速方法
3.1基本原理
根据以上分析可知,“M/T法”综合了“M法”和“T法”的优点,但低速段动态响应太慢,因此如果能够根据速度情况实时改变“M/T法”中的M1值,随着速度的降低减少
M1的值,
就可以改善“M/T法”在低速段测速动态响应慢的问题。本文就是基于这个原
理,通过相应的软硬件设计实现了一种高精度的测速方法。其测速原理与相对误差的计算表面上和“M/T法”没有区别,而实际上“M/T法”的采样周期总是产生M1个编码器脉冲的时间,随着转速升高,编码器脉冲频率变大,采样周期逐渐变小,其相对误差增大了;而由本文提出的测速方法由于M1的值可以随速度改变,在高速段增加M1值使得采样周期基本不变。因而其相对误差也基本不变,在低转速段,M1值可降到1,满足系统的动态响应要求,而相对误差与“M/T法”相差很小。
3.2 软硬件实现
如果测控系统中选用了工控机,只需
加上计数板卡以及部分外围电路就可以实现这种新的测速方法。
测量过程中计数板卡要分别对编码器脉冲和时钟脉冲进行计数,由测速原理可知两个计数通道并不是完全独立的,从其相对误差的计算式可以看出对编码器脉冲的计数必须是完全没有误差的,这就要求计数周期要与编码器脉冲的上升沿严格同步,并且要实现“M/T法”中M1值随着速度变化而改变,系统的外围电路中采用了两个D触发器和一些附属电路实现了上述功能。如图2所示:
周期为10ms的VCC窄脉冲CDCDQ2编码器CLK1CLK脉冲QQQGATE信号VCCDQDQSDSDVCC延时电路
图2. 外围硬件电路图
在摩托车交流底盘测功机测控系统中
要求10ms左右刷新一次速度,所以在第一个D触发器的置零端接了一个周期为10ms的窄脉冲,脉冲宽度为10us。最终生成的Q2信号用于接到计数器的GATE端用于控制计数器的工作。其中第二个D 触发器所接的延时电路延时时间t为20us左右,利用这段时间锁住计数器,这样可以很精确的读取计数器的值。
周期为10ms的窄脉冲负脉冲宽度10微秒编码器脉冲........Q1Q2延时时间 t
图3. 硬件电路工作时序图
从图3所示的工作时序图可以看出,第一个D触发器使得Q1信号的上升沿与编码器脉冲严格同步,从而保证了可以无误差的对编码器脉冲进行计数;而且在周期为10ms的负脉冲的作用下,其相邻两个脉冲的时间间隔为最接近10ms的M1个编码器脉冲的时间,这个间隔时间不受编码器脉冲频率变化的影响,所以测速的动态响应不受影响。第二个D触发器主要作用是在Q1信号的上升沿来临的时候锁住计数器,并通过延时电路延时一段时间再启动计数器计数,这样就可以精确的读取计数器的值,把差值加上延时时间就得到编码器输出M1个脉冲的同时输出的时钟脉冲数M2。
通过简单的电路就可以使得“M/T法”测速中M1值随着转速变化自动改变,并且在整个速度范围内采样周期都在10ms左右,解决了“M/T法”测速存在低速段动态响应慢的问题。
测速程序每10ms产生一次中断,中断来临后查询Q2信号是否为低电平,确认是低电平后读取编码器脉冲计数器和时钟脉冲计数器的值,与上一次中断得到的值相减,并将钟脉冲数加上延时时间,就可以精确的得到M1、M2的值,由式(5)计算得到转速值。
4.编码器脉宽不均匀性对测速的影响及其处理方法
以上提到的各种测速方法误差分析都建立在编码器脉宽是均匀的基础上的。而普通的编码器的制造偏差在0.5%左右,如果不加以处理,将会大大影响测速精度。下图中虚线是电机在一恒定速度下旋转时实测得到的转速曲线,可以看出编码器脉冲不均匀性对测速精度的影响是很大的,大大超过了式(6)的误差分析结果。
图4. 用软件方法处理前后的速度曲线
本文提出了一种对测量数据进行软件处理的办法取得了很好的效果。由于速度不能突变,当选取的采样周期很小时,分析实际系统所能达到的加速度情况,通常连续测得的几十个点的实际速度变化很小,可近似认为是一条直线,所以可以对之前实际测得的n个速度点采用线性最小二乘法拟合出一条直线S=aT+b,根据这条直线计算得到当前的速度值,图4中的实线是取n=24时处理后的结果,对比两条曲线可以发现,转速波动从2rpm下降至0.1rpm。其中a、b 计算公式如下:
nnnna[(n1)T2niSiTiSi]/[(n1)Ti(T2i)]i0i0i0i0i0 „(7)
nnnnnnb[T2iS]/[(n1)i0TTST2iii(Ti)2ii]
i0i0i0i0i0 „(8)
通过上述简单的软件处理方法就可以大为改善编码器脉冲不均匀性带来的测速
问题。
5.加速度测量
从理论上分析,只要测得相邻的两个速度点的速度差V及其时间间隔T就可以通过简单的
VT计算得到加速度值。而实际上由于量化误差、计算舍入误差和编码器的脉宽误差等因素的影响,实际测得的转速值波动很大,无法简单的用
VT计算得到加速度值。
本文采用的方法是对之前实际测得的m个速度点用线性最小二乘法拟合出一条直线S=aT+b,把式(7)计算得到的斜率a作为当前的加速度值。根据系统的要求选取合适的m值来计算加速度,很明显当前计算得到加速度值实际上是
12m个采样周期前的加速度,所以m的选取要兼顾测加速度精度和实时性要求。为了减少测加速度的滞后时间,在软硬件允许的条件下应该尽可能的缩
短测速的采样周期。 6.结论
本文在对比分析了常用的各种基于光电 编码器的测速方法的原理、相对误差、动态
响应的基础上提出了一种新的高精度的测
速方法。 (1)通过相应的软硬件设计使得本文
提出的新的测速方法在测速精度和相对误
差上和“M/T法”相近,并且很好解决了“M/T法”在低速段动态响应慢的问题。
(2)针对编码器脉宽不均匀性问题,
提出了用线性最小二乘法根据之前的n个点预测当前点速度值的方法,很好的提高了测
速精度。
(3)通过对之前m个测得的速度点采用线性最小二乘法拟合计算斜率的测加速度
方法简单实用,而且可以得到较高的测量精
度。
采用本文提出的方法可以仅使用普通的编码器就可以获得很高的测速、测加速度精度,并在我国首台自行研制的摩托车交流底盘测功机测控系统中得到成功应用,具有较大的应用价值。
【参考文献】
1. 张秀香, 电动机转速的微机测量系统。
电子工程师,2002年(第28卷)第四期 2. Galvan, E. A simple digital
tachometer with high precision in a wide speed range,Industrial Electronics, 1994. IECON '94., 20th International Conference on , Volume: 2 , 5-9 Sept. 1994 Page(s): 920 -923 vol.2
3. Hagiwara, N. A method of
improving the resolution and accuracy of rotary encoders using code compensation technique. Instrumentation and Measurement Technology
Conference, 1991. IMTC-91. Conference Record., 8th IEEE ,
14-16 May 1991,Page(s): 183 -184 第一作者 姜庆明,男,1979年生,2001年
毕业于西安交通大学,现为在读硕士生;研究领域:现场总线技术、自动控制 通讯地址:西安交通大学工业自动化教研室 邮编:710049 电话:029-2664911 Email:jiang.qm@163.com
因篇幅问题不能全部显示,请点此查看更多更全内容