一种基于fpga的编码器滤波算法

文档序号:779349 发布日期:2021-04-09 浏览:8次 >En<

阅读说明:本技术 一种基于fpga的编码器滤波算法 (Encoder filtering algorithm based on FPGA ) 是由 陈诚 于 2020-11-25 设计创作,主要内容包括:本发明提供一种基于FPGA的编码器滤波算法,包括以下步骤:增量式编码器;FPGA;空闲状;计数状;判决状,该装置滤波效果好,能够完全滤除低于设定脉宽阈值的干扰信号,并对有用信号的边沿不产生影响;滤波的脉宽阈值灵活可配置,根据不同的应用场合选择不同的脉宽阈值即可移植使用,该滤波算法消耗的逻辑资源极少。(The invention provides an encoder filtering algorithm based on an FPGA (field programmable gate array), which comprises the following steps of: an incremental encoder; an FPGA; an idle state; counting; the device has good filtering effect, can completely filter interference signals lower than a set pulse width threshold value, and does not affect the edge of a useful signal; the filtering pulse width threshold is flexible and configurable, different pulse width thresholds can be selected according to different application occasions to be transplanted for use, and the filtering algorithm consumes few logic resources.)

一种基于FPGA的编码器滤波算法

技术领域

本发明涉及基于FPGA的编码器滤波算法设备领域,具体为一种基于FPGA的编码器滤波算法。

背景技术

编码器作为常见传感器的一种,主要用于检测机械运动的角度、距离、速度、位置或计数,是一种高集成度的数字化检测装置,其具有精度高、响应快、分辨率高、性能可靠等优点,近些年来,编码器已经发展为一种成熟的高性能、多规格的系列工业化产品,主要应用于各类数字电子电路中,凡是需要检测、伺服控制的产品都可用到编码器,光电编码器根据输出脉冲的方式和光电码盘刻度方法的不同,可以分为增量式光电编码器、绝对式光电编码器以及复合式光电编码器三大类,在实际的工业应用中,增量式光电编码器经常与大型机电设备协同工作,电磁环境较为复杂,编码器的输出信号也比较容易受到干扰产生毛刺,从而导致误检测,影响了系统的控制精度,。

发明内容

针对现有技术存在的不足,本发明目的是提供一种基于FPGA的编码器滤波算法,以解决上述背景技术中提出的问题,本发明结构新颖,使用时基于FPGA的编码器滤波消抖算法用于滤除编码器在实际工作中产生的尖峰干扰,提高编码器检测的可靠性。

为了实现上述目的,本发明是通过如下的技术方案来实现:一种基于FPGA的编码器滤波算法,包括以下步骤:

步骤一:进入到增量式器的内部,增量式编码器的工作频率一般小于10KHz,即周期大于100US,相邻两个边沿的时间大于50US;而干扰脉冲的宽度一般小于4US,因此,我们可以选定一个阈值,例如5US,并在软件中检测编码器信号中相邻两个边沿的时间宽度,将宽度低于5US的脉冲剔除,即可得出纯净的编码器信号;

步骤二:使编码器信号进入到FPGA实现滤波算法的状态机内部;

步骤三:系统复位后首先进入到空闲状态;

步骤四:当检测到跳变,系统进入到计数状态;并在计数状态下不停的检测是否还有跳变的到来;

步骤五:当计数值达到5US时,系统进入到判决状态。

作为本发明的一种优选方式,所述步骤四如果有跳变则计数器清零重新计数。

作为本发明的一种优选方式,所述步骤五判断当前值S2和跳变之前的状态值S1是否相等,并返回空闲状态。

本发明的有益效果:

1.该基于FPGA的编码器滤波算法滤波效果好,能够完全滤除低于设定脉宽阈值的干扰信号,并对有用信号的边沿不产生影响。

2.该基于FPGA的编码器滤波算法滤波的脉宽阈值灵活可配置,根据不同的应用场合选择不同的脉宽阈值即可移植使用,该滤波算法消耗的逻辑资源极少。

附图说明

图1为本发明一种基于FPGA的编码器滤波算法的结构示意图;

图2为本发明一种基于FPGA的编码器滤波算法的理想波形的结构示意图;

图3为本发明一种基于FPGA的编码器滤波算法的实际波形的结构示意图;

图4为本发明一种基于FPGA的编码器滤波算法的FPGA实现滤波算法的状态机跳转图;

具体实施方式

为使本发明实现的技术手段、创作特征、达成目的与功效易于明白了解,下面结合具体实施方式,进一步阐述本发明。

请参阅图1至图4,本发明提供一种技术方案:一种基于FPGA的编码器滤波算法,包括以下步骤:

步骤一:进入到增量式器的内部,增量式编码器的工作频率一般小于10KHz,即周期大于100US,相邻两个边沿的时间大于50US;而干扰脉冲的宽度一般小于4US,因此,我们可以选定一个阈值,例如5US,并在软件中检测编码器信号中相邻两个边沿的时间宽度,将宽度低于5US的脉冲剔除,即可得出纯净的编码器信号;

步骤二:使编码器信号进入到FPGA实现滤波算法的状态机内部;

步骤三:系统复位后首先进入到空闲状态;

步骤四:当检测到跳变,系统进入到计数状态;并在计数状态下不停的检测是否还有跳变的到来;

步骤五:当计数值达到5US时,系统进入到判决状态。

作为本发明的一种优选方式,所述步骤四如果有跳变则计数器清零重新计数。

作为本发明的一种优选方式,所述步骤五判断当前值S2和跳变之前的状态值S1是否相等,并返回空闲状态。

其步骤二至步骤五的FPGA中实现的部分主要代码如下:

以上显示和描述了本发明的基本原理和主要特征和本发明的优点,对于本领域技术人员而言,显然本发明不限于上述示范性实施例的细节,而且在不背离本发明的精神或基本特征的情况下,能够以其他的具体形式实现本发明。因此,无论从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的,本发明的范围由所附权利要求而不是上述说明限定,因此旨在将落在权利要求的等同要件的含义和范围内的所有变化囊括在本发明内。不应将权利要求中的任何附图标记视为限制所涉及的权利要求。

此外,应当理解,虽然本说明书按照实施方式加以描述,但并非每个实施方式仅包含一个独立的技术方案,说明书的这种叙述方式仅仅是为清楚起见,本领域技术人员应当将说明书作为一个整体,各实施例中的技术方案也可以经适当组合,形成本领域技术人员可以理解的其他实施方式。

8页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:电光调制激光干涉线位移及角位移测量装置和方法

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!

技术分类