基于增量式光电编码器的速度测量方法及速度测量系统的制作方法

文档序号:6021002阅读:380来源:国知局
专利名称:基于增量式光电编码器的速度测量方法及速度测量系统的制作方法
技术领域
本发明涉及伺服驱动以及控制系统的速度测量领域,更具体的说是涉及一种基于增量式光电编码器的速度测量方法以及基于FPGA实现的速度测量系统。
背景技术
目前增量式光电编码器在工业控制领域得到了广泛的应用,尤其是再伺服驱动和数控系统上,它被用来做反馈速度和反馈位置的测量。反馈速度和反馈位置的测量非常重要,它关系到整个机器运行的平稳性和运动位置的精确性。一般来说,在用增量式光电编码器做反馈元件时,位置的测量通过对编码器输出脉冲的计数来实现,相对来说就比较容易。 不过,实时反馈速度的测量一直是一个比较难的问题。目前基于增量式光电编码器的速度测量主要有M法、T法、M/T法,一般基于DSP 实现。不过由于DSP模块都已经固化,不能够灵活的对增量式编码器的输出脉冲进行操作, 所以基于DSP的速度观测方法是有一些缺陷的。M法的原理是测量单位时间内的反馈脉冲数,由于DSP的局限性,因存在时间的开始和结尾处有不够一个脉冲的情况,所以M法可能会有2个脉冲的误差。当速度较低时,因为单位时间内的脉冲数较少,所以M法在低速时会导致很大的测量误差,适宜测量高速。T法的原理是测量两个反馈脉冲的时间间隔,由于 DSP的局限性,因存在半个时间单位的问题,所以T法可能会有一个单位时间的误差。速度较高时,测得的周期较小,误差所占的比例变大,所以T法宜测量低速。M/T法的原理是综合M法和T法的优点,在高速时采用M法,在低速时采用T法。通过判断速度值的大小进行 M法和T法的切换。不过由于速度阀值的不好确定,另外由于M法在测量高速时也还会存在可能2个脉冲的误差,误差也较大;T法在测量低速时也还会存在可能一个单位时间的误差,误差也较大。所以综合应用M法和T法的M/T法也存在较大的测量误差,而且实时性也较差。这些都会导致电机控制的不稳定,继而会导致机器运行的不稳定性和不精确性。

发明内容
鉴于现有技术的不足,本发明的目的在于提供一种实时性较强,误差极小的基于增量式光电编码器的速度测量方法,以及基于FPGA实现的速度测量系统。它具有方案简单,实时性高,速度计算误差极小,而且可以在高低速下都很精确的测量速度值。避免了 M 法或者T法的缺陷。本发明的技术方案是提供一种基于增量式光电编码器的速度测量方法,包括如下步骤
a)对A相、B相反馈脉冲信号进行滤波;
b)对滤波后的A相、B相信号进行正交脉冲解码,并输出正交脉冲方向和正交解码脉
冲;
c)根据正交脉冲方向、正交解码脉冲进行计数,并根据计算周期同步脉冲对寄存器赋值N,对计数器清零;d)对两个相邻的编码器脉冲的上升沿进行计时,得到单个编码器脉冲的时间周期TO;
e)对计算周期同步的起始脉冲与相邻的编码器脉冲的上升沿进行计时,得到起始脉冲与相邻的编码器脉冲的时间Tl ;
f)对计算周期同步的结束脉冲与相邻的编码器脉冲的上升沿进行计时,得到结束脉冲与相邻的编码器脉冲的时间T2 ;
g)令T1+T2为被除数,令TO为除数,调用除法器。得到商值Q;
h)得到计算周期内的编码器脉冲个数为N+Q;然后换算成速度值。本发明还提供一种基于FPGA实现的速度测量系统,包括信号滤波单元,信号解码单元,脉冲计数单元,计时器TO单元,计时器Tl单元,计时器T2单元,除法器单元,速度值计算单元,其中
所述信号滤波单元,用于把编码器的两路正交信号A相输入脉冲信号、B相输入脉冲信号进行滤波,滤除尖脉冲等干扰信号;
所述信号解码单元,用于把滤波后的A相、B相正交信号进行解码,输出解码脉冲和脉冲方向信号;
所述脉冲计数单元,用于根据解码脉冲和脉冲方向信号来进行计数N,并在计算周期同步脉冲的上升沿将计数值保存到寄存器,并同时对计数器清零;
所述计时器TO单元,用于对两个相邻的编码器脉冲的上升沿进行计时; 所述计时器Tl单元,对计算周期同步的起始脉冲与相邻的编码器脉冲的上升沿进行计时;
所述计时器T2单元,对计算周期同步的结束脉冲与相邻的编码器脉冲的上升沿进行计时;
所述除法器单元,用于以T1+T2为被除数,令TO为除数,进行除法运算Q ; 所述速度值计算单元,用于得到计算周期内的编码器脉冲个数为N+Q ;然后换算成速度值。本发明提供的基于增量式光电编码器的速度测量方法以及基于FPGA实现的速度测量系统,可以与速度环控制计算同步,而且可以消除M法或者T法带来的观测误差。而且计时精确,计时器位数高,除法器精度高,所以在低速高速都可以比较精确的观测电机反馈的实际速度值。


图1所示为速度测量方法的原理示意图。图2所示是本发明所述方法实施例的详细流程示意图。图3是本发明基于FPGA实现的速度测量系统的结构示意图。
具体实施例方式本发明提供了一种基于增量式编码器的速度测量方法以及基于FPGA实现的速度测量系统。其基本原理是在一个速度环的控制周期内,通过计时以及计算得到所通过的编码器脉冲沿总的个数,这样就可以根据时间以及编码器脉冲分辨率来计算得到准确的速度。
如图1所示为速度测量方法的原理示意图。滤波解码后的编码器脉冲如图所示, 计算周期同步脉冲也如图所示。同步脉冲的周期是固定的,我们就是要得到同步脉冲上升沿之间的时间内总共有多少个编码器脉冲。由于同步脉冲上升沿和编码器脉冲的上升沿不一定会重合,所以才出现Tl和T2这两段计时。这也正是为了消除M法所带来的误差。在同步脉冲上升沿之间共有N个整数脉冲,Tl段和T2段为小数个脉冲。在同步脉冲的一个周期内,我们认为速度是均勻的,所以同步脉冲一个周期内的编码器脉冲周期是固定的,那么在计算周期内,编码器脉冲周期TO的值是不变的。所以在同步脉冲的一个计算周期内, 所得到的编码器脉冲总数为N+ (Tl+T2)/T0。其中N为整数个脉冲沿个数,(Tl+D)/TO为小数个脉冲,其值最大不超过2。需要说明的是,T0、T1、T2计时器的时钟为100MHz,所得到计时的最大偏差为10ns,这相对于同步脉冲周期几百us级别的计时来说,误差非常小,只有几万分之一,远远小于M法或者T法百分之几乃至十分之几的误差。而且所用到的除法器为32bit除法器,可观测到的最小速度为0. 00000112r/m。如图2所示是本发明所述方法实施例的详细流程图。该流程图包括 第一步,对A相、B相反馈脉冲信号进行滤波;
第二步,对滤波后的A相、B相信号进行正交脉冲解码,并输出正交脉冲方向和正交解码脉冲;
第三步,根据正交脉冲方向、正交解码脉冲进行计数,并根据计算周期同步脉冲对寄存器赋值N,对计数器清零。第四步,对两个相邻的编码器脉冲的上升沿进行计时,得到单个编码器脉冲的时间周期TO。第五步,对计算周期同步的起始脉冲与相邻的编码器脉冲的上升沿进行计时,得到起始脉冲与相邻的编码器脉冲的时间Tl。第六步,对计算周期同步的结束脉冲与相邻的编码器脉冲的上升沿进行计时,得到结束脉冲与相邻的编码器脉冲的时间T2。第七步,令T1+T2为被除数,令TO为除数,调用除法器。得到商值Q; 第八步,得到计算周期内的编码器脉冲个数为N+Q ;然后换算成速度值。本发明还提供了一种基于FPGA实现的速度测量系统,如图3所示,其包括信号滤波单元,信号解码单元,脉冲计数单元,计时器TO单元,计时器Tl单元,计时器T2单元,除法器单元,速度值计算单元,其中
所述信号滤波单元,用于把编码器的两路正交信号A相输入脉冲信号、B相输入脉冲信号进行滤波,滤除尖脉冲等干扰信号;
所述信号解码单元,用于把滤波后的A相、B相正交信号进行解码,输出解码脉冲和脉冲方向信号;
所述脉冲计数单元,用于根据解码脉冲和脉冲方向信号来进行计数N,并在计算周期同步脉冲的上升沿将计数值保存到寄存器,并同时对计数器清零;
所述计时器TO单元,用于对两个相邻的编码器脉冲的上升沿进行计时; 所述计时器Tl单元,对计算周期同步的起始脉冲与相邻的编码器脉冲的上升沿进行计时;
所述计时器T2单元,对计算周期同步的结束脉冲与相邻的编码器脉冲的上升沿进行计时;
所述除法器单元,用于以T1+T2为被除数,令TO为除数,进行除法运算Q。所述速度值计算单元,用于得到计算周期内的编码器脉冲个数为N+Q ;然后换算成速度值。该实施例中,同步脉冲的计算周期可以根据伺服电机的速度以及计算的实时性进行变更。所采用的除法器为32bit,所进行的除法可以采用定点算法进行,具体格式可以自定,本实施例所采用的为10. 22格式。应当理解的是,对本领域普通技术人员来说,可以根据上述说明加以改进或变换, 而所有这些改进和变换都应属于本发明所附权利要求的保护范围。
权利要求
1.一种基于增量式光电编码器的速度测量方法,其特征在于,包括步骤a)对A相、B相反馈脉冲信号进行滤波;b)对滤波后的A相、B相信号进行正交脉冲解码,并输出正交脉冲方向和正交解码脉冲;c)根据正交脉冲方向、正交解码脉冲进行计数,并根据计算周期同步脉冲对寄存器赋值N,对计数器清零;d)对两个相邻的编码器脉冲的上升沿进行计时,得到单个编码器脉冲的时间周期TO;e)对计算周期同步的起始脉冲与相邻的编码器脉冲的上升沿进行计时,得到起始脉冲与相邻的编码器脉冲的时间Tl ;f)对计算周期同步的结束脉冲与相邻的编码器脉冲的上升沿进行计时,得到结束脉冲与相邻的编码器脉冲的时间T2 ;g)令T1+T2为被除数,令TO为除数,调用除法器得到商值Q;h)得到计算周期内的编码器脉冲个数为N+Q;然后换算成速度值。
2.一种基于FPGA实现的速度测量系统,其特征在于,包括信号滤波单元,信号解码单元,脉冲计数单元,计时器TO单元,计时器Tl单元,计时器T2单元,除法器单元,速度值计算单元,其中所述信号滤波单元,用于把编码器的两路正交信号A相输入脉冲信号、B相输入脉冲信号进行滤波,滤除尖脉冲等干扰信号;所述信号解码单元,用于把滤波后的A相、B相正交信号进行解码,输出解码脉冲和脉冲方向信号;所述脉冲计数单元,用于根据解码脉冲和脉冲方向信号来进行计数N,并在计算周期同步脉冲的上升沿将计数值保存到寄存器,并同时对计数器清零;所述计时器TO单元,用于对两个相邻的编码器脉冲的上升沿进行计时; 所述计时器Tl单元,对计算周期同步的起始脉冲与相邻的编码器脉冲的上升沿进行计时;所述计时器T2单元,对计算周期同步的结束脉冲与相邻的编码器脉冲的上升沿进行计时;所述除法器单元,用于以T1+T2为被除数,令TO为除数,进行除法运算Q ; 所述速度值计算单元,用于得到计算周期内的编码器脉冲个数为N+Q ;然后换算成速度值。
全文摘要
一种基于增量式光电编码器的速度测量方法及速度测量系统,其方法为对A相、B相反馈脉冲信号滤波、解码,输出;计数,对寄存器赋值N,对计数器清零;对上升沿进行计时,得到单个编码器脉冲的时间周期T0;对计算周期同步的起始脉冲与相邻的编码器脉冲的上升沿进行计时,得到起始脉冲与相邻的编码器脉冲的时间T1;对计算周期同步的结束脉冲与相邻的编码器脉冲的上升沿进行计时,得到结束脉冲与相邻的编码器脉冲的时间T2;令T1+T2为被除数,令T0为除数,调用除法器;得到商值Q;得到计算周期内的编码器脉冲个数为N+Q;然后换算成速度值。本发明具有方案简单,实时性高,速度计算误差极小,而且可以在高、低速下都很精确的测量速度值的优点。
文档编号G01P3/486GK102495226SQ20111032862
公开日2012年6月13日 申请日期2011年10月26日 优先权日2011年10月26日
发明者李永利 申请人:深圳市三艾科技有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1