CN106643827B - 一种编码器输出信号处理方法 - Google Patents

一种编码器输出信号处理方法 Download PDF

Info

Publication number
CN106643827B
CN106643827B CN201611021381.7A CN201611021381A CN106643827B CN 106643827 B CN106643827 B CN 106643827B CN 201611021381 A CN201611021381 A CN 201611021381A CN 106643827 B CN106643827 B CN 106643827B
Authority
CN
China
Prior art keywords
encoder output
corresponding pin
encoder
level
output
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.)
Active
Application number
CN201611021381.7A
Other languages
English (en)
Other versions
CN106643827A (zh
Inventor
翟建波
雷莎莎
庞振新
张喜娜
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Le Pu Medical Electronic Instrument Ltd By Share Ltd
Original Assignee
Le Pu Medical Electronic Instrument Ltd By Share Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Le Pu Medical Electronic Instrument Ltd By Share Ltd filed Critical Le Pu Medical Electronic Instrument Ltd By Share Ltd
Priority to CN201611021381.7A priority Critical patent/CN106643827B/zh
Publication of CN106643827A publication Critical patent/CN106643827A/zh
Application granted granted Critical
Publication of CN106643827B publication Critical patent/CN106643827B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01DMEASURING NOT SPECIALLY ADAPTED FOR A SPECIFIC VARIABLE; ARRANGEMENTS FOR MEASURING TWO OR MORE VARIABLES NOT COVERED IN A SINGLE OTHER SUBCLASS; TARIFF METERING APPARATUS; MEASURING OR TESTING NOT OTHERWISE PROVIDED FOR
    • G01D5/00Mechanical means for transferring the output of a sensing member; Means for converting the output of a sensing member to another variable where the form or nature of the sensing member does not constrain the means for converting; Transducers not specially adapted for a specific variable
    • G01D5/12Mechanical means for transferring the output of a sensing member; Means for converting the output of a sensing member to another variable where the form or nature of the sensing member does not constrain the means for converting; Transducers not specially adapted for a specific variable using electric or magnetic means
    • G01D5/244Mechanical means for transferring the output of a sensing member; Means for converting the output of a sensing member to another variable where the form or nature of the sensing member does not constrain the means for converting; Transducers not specially adapted for a specific variable using electric or magnetic means influencing characteristics of pulses or pulse trains; generating pulses or pulse trains
    • G01D5/24471Error correction
    • G01D5/24476Signal processing

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Transmission And Conversion Of Sensor Element Output (AREA)
  • Input From Keyboards Or The Like (AREA)

Abstract

本发明公开了一种编码器输出信号处理方法,包括以下步骤:通过两次检测中断引脚的电平,避免因为中断相对应为低电平时,当噪声较大产生错误中断,确保中断为一次正确的上升沿中断;另外,本发明采用延时检测编码器中断引脚的电平,有效提高判定编码器旋转方向的准确性,该方法能够有效解决编码器输出信号处于低电平或下降沿的一段时间内抖动误码脉冲较大不能准确判断编码器上旋钮旋转方向的问题。

Description

一种编码器输出信号处理方法
技术领域
本发明属于信号处理领域,涉及一种编码器输出信号处理方法。
背景技术
编码器作为一个机械与电子相结合的精密测量器件,外部有一个可以左右旋转同时又可按下的旋钮,很多设备(如显示器、示波器等)用它作为人机交互接口。旋转编码器信号输出通道分为单路输出和双路输出两种。单路输出是指旋转编码器的输出是一组脉冲,而双路输出的旋转编码器输出两组存在A/B相位差的脉冲,通过这两组脉冲不仅可以测量转速,还可以判断旋转的方向。一般情况下,双路编码器旋转时,A相和B相各会发出一个脉冲信号,可通过A相还是B相在前判断编码器的旋转方向,通过A相或B相变化的次数可以得出旋钮旋转的次数。在嵌入式系统中,多采用中断方式来处理编码器输出信号。一般情况下,设置A相和B相为上升沿和下降沿均触发中断,等中断到来,再检测另外一相的信号状态,从而确定编码器的旋转方向。
现有技术中,如上所述的编码器输入信号处理方法中存在的问题:虽然这种方法可以确定编码器的正转和反转,但在实际应用过程中,由于工作环境,编码器本身等因素影响,加在旋转编码器上的振动,往往会成为误脉冲发生的原因,每转发生的脉冲数越多,越易受到振动的影响,在低速旋转或停止时,加在轴或本体上的振动使旋转槽圆盘抖动,可能会发生抖动误码脉冲,将会引起误计数,旋转方向误判等测量错误,因此需要急需一种方法,能够有效解决编码器输出信号处于低电平或下降沿的一段时间内抖动误码脉冲较大不能准确判断编码器上旋钮旋转方向的问题。
发明内容
本发明的目的在于克服上述现有技术的缺点,提供了一种编码器输出信号处理方法,该方法能够有效解决编码器输出信号处于低电平或下降沿的一段时间内抖动误码脉冲较大不能准确判断编码器上旋钮旋转方向的问题。
为达到上述目的,本发明所述的编码器输出信号处理方法包括以下步骤:
将编码器输出信号A相对应引脚及B相对应引脚均设置为上升沿触发中断,然后等待编码器所有引脚的中断到来;
当编码器输出信号A相对应引脚中断到来时,检测编码器输出信号B相对应引脚的电平,当编码器输出信号B相对应引脚为低电平时,则说明编码器输出信号A相对应引脚误中断;当编码器输出信号B相对应引脚为高电平时,则再次检测编码器输出信号A相对应引脚的电平,当本次编码器输出信号A相对应引脚为低电平时,则说明编码器输出信号A相有抖动;当本次编码器输出信号A相对应引脚为高电平时,则延迟N毫秒,然后再检测当前编码器输出信号A相对应引脚的电平,当当前编码器输出信号A相对应引脚为低电平时,则认为编码器输出信号A相有抖动;当当前编码器输出信号A相对应引脚为高电平时,则说明编码器上旋钮的旋转方向为右旋;
当编码器输出信号B相对应引脚中断到来时,检测编码器输出信号A相对应引脚的电平,当编码器输出信号A相对应引脚为低电平时,则认为编码器输出信号B相对应引脚误中断;当编码器输出信号A相对应引脚为高电平时,则再次检测编码器输出信号B相对应引脚的电平,当本次编码器输出信号B相对应引脚为低电平时,则认为编码器输出信号B相有抖动;当本次编码器输出信号B相对应引脚为高电平时,则延迟N毫秒,然后再检测当前编码器输出信号B相对应引脚的电平,当当前编码器输出信号B相对应引脚为低电平时,则认为编码器输出信号B相有抖动;当当前编码器输出信号B相对应引脚为高电平时,则说明编码器上旋钮的旋转方向为左旋。
N等于1。
本发明具有以下有益效果:
本发明所述的编码器输出信号处理方法在具体操作时,通过两次检测中断引脚的电平,避免因为中断相对应为低电平时,当噪声较大产生错误中断,确保中断为一次正确的上升沿中断,在实际操作中,以最快的速度旋转编码器上旋钮时,由于抖动信号的时间小于旋转编码器上旋钮时中断引脚的高电平持续时间,本发明采用延时检测编码器中断引脚的电平,有效提高判定编码器旋转方向的准确性,从而有效的解决编码器输出信号处于低电平或下降沿的一段时间内抖动误码脉冲较大不能准确判断编码器上旋钮旋转方向的问题。
附图说明
图1为有干扰信号时编码器的输出波形图;
图2为本发明中编码器输出信号的时序图;
图3为本发明中编码器输出信号A相中断处理的流程图。
具体实施方式
下面结合附图对本发明做进一步详细描述:
参考图1,本发明所述的编码器输出信号处理方法包括以下步骤:
将编码器输出信号A相对应引脚及B相对应引脚均设置为上升沿触发中断,然后等待编码器所有引脚的中断到来;
当编码器输出信号A相对应引脚中断到来时,检测编码器输出信号B相对应引脚的电平,当编码器输出信号B相对应引脚为低电平时,则说明编码器输出信号A相对应引脚误中断;当编码器输出信号B相对应引脚为高电平时,则再次检测编码器输出信号A相对应引脚的电平,当本次编码器输出信号A相对应引脚为低电平时,则说明编码器输出信号A相有抖动;当本次编码器输出信号A相对应引脚为高电平时,则延迟1毫秒,然后再检测当前编码器输出信号A相对应引脚的电平,当当前编码器输出信号A相对应引脚为低电平时,则认为编码器输出信号A相有抖动;当当前编码器输出信号A相对应引脚为高电平时,则说明编码器上旋钮的旋转方向为右旋;
当编码器输出信号B相对应引脚中断到来时,检测编码器输出信号A相对应引脚的电平,当编码器输出信号A相对应引脚为低电平时,则认为编码器输出信号B相对应引脚误中断;当编码器输出信号A相对应引脚为高电平时,则再次检测编码器输出信号B相对应引脚的电平,当本次编码器输出信号B相对应引脚为低电平时,则认为编码器输出信号B相有抖动;当本次编码器输出信号B相对应引脚为高电平时,则延迟1毫秒,然后再检测当前编码器输出信号B相对应引脚的电平,当当前编码器输出信号B相对应引脚为低电平时,则认为编码器输出信号B相有抖动;当当前编码器输出信号B相对应引脚为高电平时,则说明编码器上旋钮的旋转方向为左旋。
本发明通过两次检测中断引脚的电平,其因为在于当中断引脚为低电平时,如果噪声较大,会产生错误中断。另外,本发明通过延时1毫秒后再次检测中断引脚上的电平,其原因在于以最快速度旋转编码器上的旋钮时,编码器输出的抖动信号较多,但抖动信号不会超过1ms,然而中断引脚上高电平的持续时间总长于1ms,因此通过延时1ms后再次检测中断引脚上的电平,从而有效过滤该抖动信号,进而有效提高判定编码器上旋钮旋转方向的准确性。

Claims (1)

1.一种编码器输出信号处理方法,其特征在于,包括以下步骤:
将编码器输出信号A相对应引脚及B相对应引脚均设置为上升沿触发中断,然后等待编码器所有引脚的中断到来;
当编码器输出信号A相对应引脚中断到来时,检测编码器输出信号B相对应引脚的电平,当编码器输出信号B相对应引脚为低电平时,则说明编码器输出信号A相对应引脚误中断;当编码器输出信号B相对应引脚为高电平时,则再次检测编码器输出信号A相对应引脚的电平,当本次编码器输出信号A相对应引脚为低电平时,则说明编码器输出信号A相有抖动;当本次编码器输出信号A相对应引脚为高电平时,则延迟1毫秒,然后再检测当前编码器输出信号A相对应引脚的电平,当当前编码器输出信号A相对应引脚为低电平时,则认为编码器输出信号A相有抖动;当当前编码器输出信号A相对应引脚为高电平时,则说明编码器上旋钮的旋转方向为右旋;
当编码器输出信号B相对应引脚中断到来时,检测编码器输出信号A相对应引脚的电平,当编码器输出信号A相对应引脚为低电平时,则认为编码器输出信号B相对应引脚误中断;当编码器输出信号A相对应引脚为高电平时,则再次检测编码器输出信号B相对应引脚的电平,当本次编码器输出信号B相对应引脚为低电平时,则认为编码器输出信号B相有抖动;当本次编码器输出信号B相对应引脚为高电平时,则延迟1毫秒,然后再检测当前编码器输出信号B相对应引脚的电平,当当前编码器输出信号B相对应引脚为低电平时,则认为编码器输出信号B相有抖动;当当前编码器输出信号B相对应引脚为高电平时,则说明编码器上旋钮的旋转方向为左旋。
CN201611021381.7A 2016-11-15 2016-11-15 一种编码器输出信号处理方法 Active CN106643827B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201611021381.7A CN106643827B (zh) 2016-11-15 2016-11-15 一种编码器输出信号处理方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201611021381.7A CN106643827B (zh) 2016-11-15 2016-11-15 一种编码器输出信号处理方法

Publications (2)

Publication Number Publication Date
CN106643827A CN106643827A (zh) 2017-05-10
CN106643827B true CN106643827B (zh) 2019-01-08

Family

ID=58808142

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201611021381.7A Active CN106643827B (zh) 2016-11-15 2016-11-15 一种编码器输出信号处理方法

Country Status (1)

Country Link
CN (1) CN106643827B (zh)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107589933B (zh) * 2017-09-06 2024-04-09 大唐终端技术有限公司 旋钮式数字编码开关装置及其工作状态识别方法
CN112146686B (zh) * 2019-06-27 2022-07-15 西安诺瓦星云科技股份有限公司 旋转信息获取方法、装置及系统和计算机可读存储介质
CN112504316A (zh) * 2019-09-16 2021-03-16 西安诺瓦星云科技股份有限公司 旋转编码器检测方法、装置及系统
CN110879298B (zh) * 2019-11-07 2022-01-14 上海新时达机器人有限公司 基于通讯式编码器的速度获取方法
CN112596693A (zh) * 2020-12-10 2021-04-02 惠州市德赛西威汽车电子股份有限公司 一种旋钮式音量编码器的去抖动方法及存储介质
CN112815967A (zh) * 2021-01-20 2021-05-18 苏州长风航空电子有限公司 一种基于linux平台的数字编码器中断滤波方法
CN113848466A (zh) * 2021-08-02 2021-12-28 惠州市德赛西威汽车电子股份有限公司 一种实现旋钮迅速响应的检测电路及检测方法
CN114353836B (zh) * 2022-01-17 2022-09-09 中国人民解放军国防科技大学 光纤传感系统3×3信号检测中乘性强度噪声的抑制方法

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3179266B2 (ja) * 1993-10-22 2001-06-25 キヤノン株式会社 帯電部材
CN101539437A (zh) * 2009-04-25 2009-09-23 恩平市西特尔数码科技有限公司 增量型旋转编码器精确计数的算法及其实现装置
CN101833690A (zh) * 2009-03-13 2010-09-15 北京同步科技有限公司 一种简单可靠的增量式编码器计数方法
CN101995533A (zh) * 2009-08-11 2011-03-30 深圳市英威腾电气股份有限公司 一种数字增量式编码器断线实时检测的方法和系统
US20130142302A1 (en) * 2011-11-25 2013-06-06 Lsis Co., Ltd. Input circuit in high speed counter module in plc
CN103162725A (zh) * 2013-02-28 2013-06-19 重庆大学 一种光电编码器旋转脉冲显示装置
CN103575312A (zh) * 2013-11-25 2014-02-12 济南飞越机电科技有限公司 一种用于光电转台的增量式光电编码器的消抖方法
CN105915229A (zh) * 2016-04-06 2016-08-31 珠海格力电器股份有限公司 对旋转编码开关的输出进行处理的方法及装置

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5062064A (en) * 1989-09-01 1991-10-29 Berkeley Process Control, Inc. Method and apparatus for measuring velocity in servo systems

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3179266B2 (ja) * 1993-10-22 2001-06-25 キヤノン株式会社 帯電部材
CN101833690A (zh) * 2009-03-13 2010-09-15 北京同步科技有限公司 一种简单可靠的增量式编码器计数方法
CN101539437A (zh) * 2009-04-25 2009-09-23 恩平市西特尔数码科技有限公司 增量型旋转编码器精确计数的算法及其实现装置
CN101995533A (zh) * 2009-08-11 2011-03-30 深圳市英威腾电气股份有限公司 一种数字增量式编码器断线实时检测的方法和系统
US20130142302A1 (en) * 2011-11-25 2013-06-06 Lsis Co., Ltd. Input circuit in high speed counter module in plc
CN103162725A (zh) * 2013-02-28 2013-06-19 重庆大学 一种光电编码器旋转脉冲显示装置
CN103575312A (zh) * 2013-11-25 2014-02-12 济南飞越机电科技有限公司 一种用于光电转台的增量式光电编码器的消抖方法
CN105915229A (zh) * 2016-04-06 2016-08-31 珠海格力电器股份有限公司 对旋转编码开关的输出进行处理的方法及装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
基于ARM和光电编码器单键飞梭的设计;孔令彬等;《微计算机信息》;20081215;第24卷(第12-2期);第143-145页

Also Published As

Publication number Publication date
CN106643827A (zh) 2017-05-10

Similar Documents

Publication Publication Date Title
CN106643827B (zh) 一种编码器输出信号处理方法
CN101825484B (zh) 增量式编码器的故障检测方法
CN101825481B (zh) 一种应用编码器计数的方法和装置
CN201608680U (zh) 电机旋转检测装置
CN102830247A (zh) 一种检测旋转部件旋转状态的方法和装置
US10379530B2 (en) Signal protocol fault detection system and method
KR950005940B1 (ko) 클럭 감시 회로
WO2013123768A1 (zh) 编码器的故障检测方法、装置和系统
US11933645B2 (en) Methods and apparatus to determine a position of a rotatable shaft of a motor
WO2016091092A1 (zh) 四相开关磁阻电机四只位置传感器故障诊断与定位方法
CN105353212A (zh) 一种检测信号频率的方法及装置
CN103439907A (zh) 多信号采集的测速及反转保护控制装置和反转判定方法
US10921767B2 (en) Encoder system
CN110487316B (zh) 增量式编码器的故障检测方法以及机器人
CN105842473B (zh) 一种旋转编码器测速方法及其系统
CN103793287B (zh) 捕获模拟信号周期的方法及系统
US10209099B2 (en) Device and method for checking a clock signal of a position measuring device
CN108555906B (zh) 机器人的控制方法、装置及机器人
JP2015179051A5 (zh)
JP7193298B2 (ja) マルチターンロータリエンコーダ及びマルチターンロータリエンコーダを作動させるための方法
CN103716020B (zh) 用于检测脉冲信号的截止频率的方法和装置
CN206618773U (zh) 一种电动晾衣机的检测系统
CN202009306U (zh) 编带马达转盘
CN106996799B (zh) 用于仪器面板的微调编码器、系统及识别方法
CN201615827U (zh) 机械旋转系统的定转速触发非稳态信号采集装置

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant