CN103644924A - 一种光电编码器干扰消除方法 - Google Patents
一种光电编码器干扰消除方法 Download PDFInfo
- Publication number
- CN103644924A CN103644924A CN201310599208.5A CN201310599208A CN103644924A CN 103644924 A CN103644924 A CN 103644924A CN 201310599208 A CN201310599208 A CN 201310599208A CN 103644924 A CN103644924 A CN 103644924A
- Authority
- CN
- China
- Prior art keywords
- pulse
- photoelectric encoder
- frequency
- continuous
- elimination method
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Landscapes
- Optical Transform (AREA)
Abstract
一种光电编码器干扰消除方法,基于FPGA消除干扰脉冲。设置一个4位的分频计数器,以时钟频率16分频的采样脉冲去检测编码器发出的脉冲,采用的是18.452MHz的晶振,检测到电平转为上升沿刻开始,采样脉冲连续对光电编码器的相脉冲进行检测;设定连续检测次数为6次,若连续6次检测结果都为高电平,则判定此为有效高电平,若在第6次或更少次数检测到低电平,则判定此为干扰脉冲;此方法对于消除光电编码器抖动干扰或电路中产生的毛刺干扰有着良好的效果。通过改变采样脉冲的频率和采样脉冲连续检测的次数,可以适用于不同的***精度要求。方法已运用于切纸机的推纸器定位控制当中,取得了良好的效果。
Description
技术领域
本发明属于电学技术,特别涉及一种光电编码器干扰消除方法。
背景技术
在现代工业化中,为实现高精度的伺服控制,需要精确检测转动机构的速度,以实现定向和速度控制。光电编码器作为一种位置检测元件,从上世纪九十年代开始应用于机床和计算仪器,因其结构简单,计量精度高,使用寿命长等优点在国内外受到重视和推广。近年来取得长足的发展,在精密定位,速度,长度,加速度,振动等方面得到广泛运用,特别是在数控机床等精密定位方面使用较多。光电编码器由装在转子上的码盘与装在定子上的光电检测元件构成,利用光谱衍射原理实现位移数字变换。光电编码器大致按编码方式可分为两类:绝对式光电编码器,增量式光电编码器。 其中绝对式光电编码器有与位置相对应的代码输出,通常为二进制码或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 即为8μs。我们设置一个4 位的分频计数器,以时钟频率16分频的采样脉冲去检测编码器发出的脉冲,采用的是18.452MHz 的晶振,采样脉冲频率为: 以所示为例,检测到电平转为上升沿刻开始,采样脉冲连续对光电编码器的相脉冲进行检测。设定连续检测次数为6 次,若连续6 次检测结果都为高电平,则判定此为有效高电平,若在第6 次或更少次数检测到低电平,则判定此为干扰脉冲。同理,从下降沿开始,连续6 次检测都为低电平,则判定此为有效低电平,假如不满足连续6 次,则认定为干扰脉冲,予以过滤。
若需提高检测的精度,可以提高晶振频率,从而提高采样脉冲的频率,以滤更高次的谐波。增加连续采样脉冲的次数,可以增加检测的电平宽度。
基于 FPGA 上的实现
根据上述分析,本文基于FPGA 技术消除光电编码器的干扰脉冲,实现高精度计量。
采用硬件描述语言 VHDL 完成,设计时为了便于扩展,预设了四路输入输出。代码如下:
library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;entity inputfilter isgeneric ( DATAWIDTH :integer:=4;SAMPLECLK
:std_logic_vector(3 downto 0) :="0110" );port(rrst :in std_logic; --clk :in std_logic; -- 18.432Mhzinput :in std_logic_vector(DATAWIDTH-1 downto
0); -- < 30 Khzinport :out std_logic_vector(DATAWIDTH-1 downto 0) -- < 30 Khz);end inputfilter;architecture bhv of inputfilter istype Count is
array(DATAWIDTH-1 downto 0) of std_logic_vector(3 downto 0);signal cntp :Count;signal cntn :Count;signal samclk :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 (clk) beginif
rising_edge(clk) theninput_s <= input;inport <= inpp;end if;end process;process (clk) beginif rising_edge(clk) thenif rrst='1' thensamclk <=
(others=>'0');for n in 0 to DATAWIDTH-1 loopcntp(n) <= (others=>'0');cntn(n) <= (others=>'0');end loop;elsesamclk <= samclk+1;for n in 0 to
DATAWIDTH-1 loopif samclk = 0 thenif input_s(n) = '1' thenif cntp(n) > SAMPLECLK thencntp(n) <= cntp(n);inpp(n) <= '1';elsecntp(n) <=
cntp(n) + 1;inpp(n) <= inpp(n);end if;cntn(n) <= (others=>'0');elsecntp(n) <= (others=>'0');if cntn(n) > SAMPLECLK theninpp(n) <= '0';cntn(n) <=
cntn(n);elseinpp(n) <= inpp(n);cntn(n) <= cntn(n)+1;end if;end if;elsecntp(n) <= cntp(n);cntn(n) <= cntn(n);inpp(n) <= inpp(n);end if;end loop;end
if;end if;end process;end bhv;
input[0~3]为输入,inport[0~3]为输入,这里我们只用到input0和input1两路,分别为光电编码器的A, B 相输入。inport0 和inport1分别对应为滤波后的A, B 相输出。可以以看出,带有干扰的输入脉冲经过滤波后的输出非常平整,便于计数器准确计数。
Claims (4)
1.一种光电编码器干扰消除方法,其特征在于:基于FPGA 消除干扰脉冲。
2.如权利要求1所述的光电编码器干扰消除方法,其特征在于:设置一个4 位的分频计数器,以时钟频率16分频的采样脉冲去检测编码器发出的脉冲,采用的是18.452MHz 的晶振,检测到电平转为上升沿刻开始,采样脉冲连续对光电编码器的相脉冲进行检测;设定连续检测次数为6 次,若连续6 次检测结果都为高电平,则判定此为有效高电平,若在第6 次或更少次数检测到低电平,则判定此为干扰脉冲;同理,从下降沿开始,连续6 次检测都为低电平,则判定此为有效低电平,假如不满足连续6 次,则认定为干扰脉冲,予以过滤。
3.如权利要求2所述的光电编码器干扰消除方法,其特征在于:若需提高检测的精度,可以提高晶振频率,从而提高采样脉冲的频率,以滤更高次的谐波。
4.如权利要求2所述的光电编码器干扰消除方法,其特征在于:增加连续采样脉冲的次数,可以增加检测的电平宽度。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310599208.5A CN103644924A (zh) | 2013-11-25 | 2013-11-25 | 一种光电编码器干扰消除方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310599208.5A CN103644924A (zh) | 2013-11-25 | 2013-11-25 | 一种光电编码器干扰消除方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN103644924A true CN103644924A (zh) | 2014-03-19 |
Family
ID=50250176
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310599208.5A Pending CN103644924A (zh) | 2013-11-25 | 2013-11-25 | 一种光电编码器干扰消除方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103644924A (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106482753A (zh) * | 2016-09-23 | 2017-03-08 | 嘉兴礼海电气科技有限公司 | 可自动消除位置累积误差的驱动器及控制*** |
CN106877844A (zh) * | 2017-01-03 | 2017-06-20 | 青岛海尔空调器有限总公司 | 一种过零信号滤波方法及装置 |
CN108777578A (zh) * | 2018-06-29 | 2018-11-09 | 东莞市李群自动化技术有限公司 | 一种编码器信号采样方法及装置 |
CN108873763A (zh) * | 2017-05-11 | 2018-11-23 | 佛山市顺德区美的电热电器制造有限公司 | 工作模式调节方法、装置及设备 |
CN111486918A (zh) * | 2020-06-15 | 2020-08-04 | 泉州慧霁科技有限公司 | 一种智能电子感应水表的用水度数采集方法 |
CN111953353A (zh) * | 2020-08-21 | 2020-11-17 | 烟台艾睿光电科技有限公司 | 一种增量式编码器的解码方法及相关装置 |
-
2013
- 2013-11-25 CN CN201310599208.5A patent/CN103644924A/zh active Pending
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106482753A (zh) * | 2016-09-23 | 2017-03-08 | 嘉兴礼海电气科技有限公司 | 可自动消除位置累积误差的驱动器及控制*** |
CN106482753B (zh) * | 2016-09-23 | 2019-04-16 | 嘉兴礼海电气科技有限公司 | 可自动消除位置累积误差的驱动器及控制*** |
CN106877844A (zh) * | 2017-01-03 | 2017-06-20 | 青岛海尔空调器有限总公司 | 一种过零信号滤波方法及装置 |
CN108873763A (zh) * | 2017-05-11 | 2018-11-23 | 佛山市顺德区美的电热电器制造有限公司 | 工作模式调节方法、装置及设备 |
CN108777578A (zh) * | 2018-06-29 | 2018-11-09 | 东莞市李群自动化技术有限公司 | 一种编码器信号采样方法及装置 |
WO2020001658A1 (zh) * | 2018-06-29 | 2020-01-02 | 东莞市李群自动化技术有限公司 | 编码器信号采样方法及装置 |
US11177827B2 (en) | 2018-06-29 | 2021-11-16 | Qkm Technology (Dong Guan) Co., Ltd | Encoder signal sampling method and device |
EP3817235A4 (en) * | 2018-06-29 | 2022-03-23 | QKM Technology (Dong Guang) Co., Ltd | ENCODER SIGNAL SAMPLING METHOD AND DEVICE |
CN111486918A (zh) * | 2020-06-15 | 2020-08-04 | 泉州慧霁科技有限公司 | 一种智能电子感应水表的用水度数采集方法 |
CN111953353A (zh) * | 2020-08-21 | 2020-11-17 | 烟台艾睿光电科技有限公司 | 一种增量式编码器的解码方法及相关装置 |
CN111953353B (zh) * | 2020-08-21 | 2023-02-17 | 烟台艾睿光电科技有限公司 | 一种增量式编码器的解码方法及相关装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103644924A (zh) | 一种光电编码器干扰消除方法 | |
CN102045062B (zh) | 一种基于Cordic算法的数字锁相环 | |
CN102914665B (zh) | 电机转速测量和故障状态检测*** | |
CN109945819B (zh) | 一种永磁同步电机转子位置测量方法 | |
US10935397B2 (en) | Position-measuring device and method for operating a position-measuring device | |
EP2813820B1 (en) | Measuring apparatus, measuring method, and processing apparatus | |
EP2554950A1 (en) | Encoder, drive device, absolute position calculation method, and encoder manufacturing method | |
CN105305755A (zh) | 一种永磁同步电动机转子位置的检测方法 | |
CN107421569B (zh) | 一种高分辨率高精度双光电编码器补偿细分装置及方法 | |
CN104180895A (zh) | 旋转机械的振动信号同步采集装置及振动信号采集方法 | |
US4506312A (en) | Apparatus for controlling the speed of a rotating body | |
CN103162725A (zh) | 一种光电编码器旋转脉冲显示装置 | |
CN104167874A (zh) | 一种带有编码器功能的伺服电机及其位置检测方法 | |
CN114323542B (zh) | 一种风洞动态试验多信号采集同步方法 | |
CN201776187U (zh) | 用于离心机的两轴向自适应式动平衡执行装置 | |
Johnson et al. | Optimization of incremental optical encoder pulse processing | |
CN103267869A (zh) | 双头型高精度速度传感器及工作方法 | |
CN101144702A (zh) | 一种基于双码盘的低速测量方法 | |
CN107064542A (zh) | 基于磁栅条脉冲信号的风力发电机轴系转速测量方法 | |
CN103940398A (zh) | 回转角度测量方法、装置、***及工程机械 | |
CN110133316B (zh) | 一种光电编码器精密测速***及方法 | |
CN206077268U (zh) | 用于速度和位置反馈的正余弦信号处理电路 | |
CN101912825A (zh) | 用于离心机的两轴向自适应式动平衡执行装置 | |
CN114165298B (zh) | 倍频-分频联用实现转子叶片锁相跟踪定位的方法和装置 | |
CN203178299U (zh) | 双头型高精度速度传感器 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20140319 |