当前位置: 首页 > 专利查询>简玉君专利>正文

一种光电编码器干扰消除方法技术

技术编号:9793520 阅读:93 留言:0更新日期:2014-03-21 07:50
一种光电编码器干扰消除方法,基于FPGA消除干扰脉冲。设置一个4位的分频计数器,以时钟频率16分频的采样脉冲去检测编码器发出的脉冲,采用的是18.452MHz的晶振,检测到电平转为上升沿刻开始,采样脉冲连续对光电编码器的相脉冲进行检测;设定连续检测次数为6次,若连续6次检测结果都为高电平,则判定此为有效高电平,若在第6次或更少次数检测到低电平,则判定此为干扰脉冲;此方法对于消除光电编码器抖动干扰或电路中产生的毛刺干扰有着良好的效果。通过改变采样脉冲的频率和采样脉冲连续检测的次数,可以适用于不同的系统精度要求。方法已运用于切纸机的推纸器定位控制当中,取得了良好的效果。

【技术实现步骤摘要】

本专利技术属于电学技术,特别涉及。
技术介绍
在现代工业化中,为实现高精度的伺服控制,需要精确检测转动机构的速度,以实现定向和速度控制。光电编码器作为一种位置检测元件,从上世纪九十年代开始应用于机床和计算仪器,因其结构简单,计量精度高,使用寿命长等优点在国内外受到重视和推广。近年来取得长足的发展,在精密定位,速度,长度,加速度,振动等方面得到广泛运用,特别是在数控机床等精密定位方面使用较多。光电编码器由装在转子上的码盘与装在定子上的光电检测元件构成,利用光谱衍射原理实现位移数字变换。光电编码器大致按编码方式可分为两类:绝对式光电编码器,增量式光电编码器。其中绝对式光电编码器有与位置相对应的代码输出,通常为二进制码或BCD码,从代码数大小的变化可以判别正反方向和位移所在的位置。但都价格昂贵,与控制系统的连接线多,抗干扰能力差,在此不做研究。增量式光电编码器转轴旋转时,会有A,B,Z三路脉冲输出,其计数起点任意设定,可实现多圈无限累加和测量。其中A,B脉冲相差90°,由此判断转向,零位脉冲Z,转子转一圈产生一个,做为转子的基准位置。如所示:增量式光电编码器检测相对位置,原理及结构简单,机械寿命长,可在几万小时以上,抗干扰能力强,可靠性高。所以本文选取增量式光电编码器作为研究对象。增量式光电编码器没有记忆功能,其高精度的码盘对外界因素引起的干扰非常敏感,在实际应用当中,由于工作环境,系统负载及电机本身都无可避免的会产生机械震动,码盘产生机械抖动时,透光缝的晃动使得光源与感光元件之间发生很轻微的明暗交替。另夕卜,光电编码器的回路与系统其他回路之间太近或不同工作电压之间隔离不充分,这些都能引起干扰脉冲。导致检测值与实际值之间存在比较大的偏差,使得计数不准确,严重降低系统的精度。所以有必要设计一种方案将干扰脉冲进行过滤,以保证伺服系统的准确。
技术实现思路
本专利技术的目的是提供。本专利技术的技术方案是: ,基于FPGA消除干扰脉冲。设置一个4位的分频计数器,以时钟频率16分频的采样脉冲去检测编码器发出的脉冲,采用的是18.452MHz的晶振,检测到电平转为上升沿刻开始,采样脉冲连续对光电编码器的相脉冲进行检测;设定连续检测次数为6次,若连续6次检测结果都为高电平,则判定此为有效高电平,若在第6次或更少次数检测到低电平,则判定此为干扰脉冲;同理,从下降沿开始,连续6次检测都为低电平,则判定此为有效低电平,假如不满足连续6次,则认定为干扰脉冲,予以过滤。若需提闻检测的精度,可以提闻晶振频率,从而提闻米样脉冲的频率,以滤更闻次的谐波。增加连续采样脉冲的次数,可以增加检测的电平宽度。本专利技术给出了一种基于FPGA实现消除光电编码器干扰脉冲的方法。此方法对于消除光电编码器抖动干扰或电路中产生的毛刺干扰有着良好的效果。通过改变采样脉冲的频率和采样脉冲连续检测的次数,可以适用于不同的系统精度要求。利用VHDL语言,维护与扩展十分方便。本方法已运用于切纸机的推纸器定位控制当中,取得了良好的效果。【具体实施方式】干扰脉冲通常频率都比有效脉冲频率高很多,利用这一特点,本文提出了一种基于FPGA消除干扰脉冲的方法。以一个切纸机控制系统为例,大致结构如所示,丝杆在电机的驱动下转动,带动推纸器移动,在丝杆的一端安装有光电编码器,检测丝杆的转动情况。推纸器最高移动速度为15m/min,则在推纸器以最高速运动时,可以得知光电编码器每秒钟的转数即:此为推纸器最高速时的脉冲周期,也是符合系统要求的最小的脉冲周期,平均一个高电平(或低电平)的时间为T/2即为S。我们设置一个4位的分频计数器,以时钟频率16分频的采样脉冲去检测编码器发出的脉冲,采用的是18.452MHz的晶振,采样脉冲频率为:以所示为例,检测到电平转为上升沿刻开始,采样脉冲连续对光电编码器的相脉冲进行检测。设定连续检测次数为6次,若连续6次检测结果都为高电平,则判定此为有效高电平,若在第6次或更少次数检测到低电平,则判定此为干扰脉冲。同理,从下降沿开始,连续6次检测都为低电平,则判定此为有效低电平,假如不满足连续6次,则认定为干扰脉冲,予以过滤。若需提闻检测的精度,可以提闻晶振频率,从而提闻米样脉冲的频率,以滤更闻次的谐波。增加连续采样脉冲的次数,可以增加检测的电平宽度。基于FPGA上的实现 根据上述分析,本文基于FPGA技术消除光电编码器的干扰脉冲,实现高精度计量。采用硬件描述语言VHDL完成,设计时为了便于扩展,预设了四路输入输出。代码如下:library ieee;use ieee.std_logic_1164.alljuse ieee.std_logic_unsigned.all;entity inputfilter isgeneric ( DATAWIDTH:1nteger:=4;SAMPLECLK:std—logic—vector(3 downto 0):=〃0110〃 );port (rrst:1n std—logic; —elk:1nstd—logic; — 18.432Mhzinput:1n std—logic—vector(DATAWIDTH-1 downto0); — < 30 Khzinport:out std—logic—vector(DATAWIDTH-1 downto 0) — < 30Khz);end inputfilter;architecture bhv of inputfilter istype Count isarray(DATAWIDTH-1 downto 0) of std—logic—vector (3 downto 0);signal cntp:Count;signal cntn: Count;signal sameIk:std_logic_vector(3 downto 0);signal input_s:std_logic_vector(DATAWIDTH-1 downto 0);signal inpp:std_logic_vector (DATAWIDTH-1 downto 0);beginprocess (elk) beginifri sing_edge(elk) theninput_s <= input;inport <= inpp;end if;endprocess;process (elk) beginif rising—edge(elk) thenif rrst=’ I’ thensamclk <=(others = )' 0' ) ; for n in 0 to DATAWIDTH-1 loopcntp (n) < =(others=>,O’);cntn(η) <= (others=)' Oi);end loop;elsesamclk <= samclk+1;for nin 0 to DATAWIDTH-1 loopif sameIk = 0 thenif input_s(n) = ’1' thenif cntp(n) >SAMPLECLK thencntp (n) <= cntp (n) ; inpp (n) <= ’1'本文档来自技高网
...

【技术保护点】
一种光电编码器干扰消除方法,其特征在于:基于FPGA?消除干扰脉冲。

【技术特征摘要】
1.一种光电编码器干扰消除方法,其特征在于:基于FPGA消除干扰脉冲。2.如权利要求1所述的光电编码器干扰消除方法,其特征在于:设置一个4位的分频计数器,以时钟频率16分频的采样脉冲去检测编码器发出的脉冲,采用的是18.452MHz的晶振,检测到电平转为上升沿刻开始,采样脉冲连续对光电编码器的相脉冲进行检测;设定连续检测次数为6次,若连续6次检测结果都为高电平,则判定此为有效高电平,若在第6次或...

【专利技术属性】
技术研发人员:简玉君
申请(专利权)人:简玉君
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1