用于解码正交编码信号的方法及装置的制作方法

文档序号:6019222阅读:240来源:国知局
专利名称:用于解码正交编码信号的方法及装置的制作方法
技术领域
本发明涉及计算机技术领域,尤其涉及一种用于解码正交编码信号的方法及装置。
背景技术
正交编码信号是两个相位相差90度的方波信号,具有良好的抗噪性能。在电机系 统中,通常使用正交编码信号来传递电机的转速或方向信号。解码器用于将正交编码信号 转换为电机的转速或方向信号,然后将转换的转速或方向信号传递给控制单元使其完成控 制和测试任务。
在传统的用于解码正交编码信号的方法中,对两个正交编码信号的相位关系的判 断需要使用两个系统时钟周期。
图1是两个正交编码信号的示意图。如图1所示,当A、B两个信号的相位关系保 持不变时,A、B两个信号的电平组合会周期性地呈现四个状态。
在图1中,从上到下依次有四种信号,,“clock”是时钟信号、“A”是A相QEP(正交 编码信号)信号(A信号)、“B”是B相QEP信号(B信号)、“direction”是解码后得到的方 向信号。当A相位落后B相位时,A、B信号电平组合变化的顺序是“00、01、11、10”这样一 个环形变化的规律。所谓环形变化,是指电平组合可以起始于“00、01、11、10”中的任何一 个,但是相邻的顺序不变。同理,当B相位落后A相位时,A、B电平组合变化的顺序是“11、01、00、10”这样一个环形变化的规律。
解码的过程,就是要用时钟信号来判断A、B电平组合是处于哪种变化规律,当变 化规律发生改变时,表明光电编码器的旋转方向发生了变化,解码器就给出相反的方向电 平。通过保存上一次的A、B电平组合的状态,然后再根据这一次的A、B电平组合的实际 状态,来对旋转方向做出判断。A、B电平组合的状态变化只可能有四种情况,由“10”变为 “ 11”,由“ O I”变为“ 00 ”,由“ 00 ”变为“ 01”,由“ 11”变为“ IO ”。当A、B相位保持不变时, 其电平组合关系保持上述环形变化规律。全部状态转移关系如图2所示。
在图2中,表示了八个状态其及相互间的转移条件,箭头所指方向为状态转移的 方向。八个状态分别是“StO”、“stI”、“st2”、“st3”、“st4”、“st5”、“st6”、“st7”。其中“AB =01”表示当前时刻A、B电平组合为“01”,“dir = O”表示当前解码器输出的方向信号为 低电平,“Quad == 2’ b 11”表示状态转移的条件是AB电平组合值为“2’ b 11”,依此类推。
此方法的特点是对方向的判断既要知道当前的AB电平组合,又要知道上一次的 AB电平组合,而每次的电平组合都是两位,所以一共需要知道四位电平值。由于每次只能判 断两位,所以需要两个时钟周期进行判断。发明内容
本发明旨在至少解决上述技术问题之一。
为此,本发明的一个目的在于提出一种节省时间、效率高的用于解码正交编码信号的方法。
本发明的另一目的在于提出一种用于解码正交编码信号的装置。
为了实现上述目的,根据本发明第一方面的实施例的用于解码正交编码信号的方 法中,所述正交编码信号包括正交的第一信号和第二信号,所述方法包括以下步骤对所述 第一信号和所述第二信号分别用D触发器打一拍,生成第一缓存信号和第二缓存信号;获 取第一信号、第一缓存信号、第二信号和第二缓存信号的电平组合;以及根据所述电平组合 的状态获取所述正交编码信号的解码信号。
为了实现上述目的,根据本发明第二方面的实施例的用于解码正交编码信号的装 置中,所述正交编码信号包括正交的第一信号和第二信号,所述装置包括缓存信号生成单 元,用于对所述第一信号和所述第二信号分别用D触发器打一拍以生成第一缓存信号和第 二缓存信号;电平组合获取单元,用于获取第一信号、第一缓存信号、第二信号和第二缓存 信号的电平组合;以及解码信号获取单元,用于根据所述电平组合的状态获取所述正交编 码信号的解码信号。
根据本发明实施例的用于解码正交编码信号的方法或装置,可以在一个时钟周期 中解码出信号,与现有解码方法或解码器相比,时间缩短一半,效率得以提高;并且由于状 态由八个减少为二个,所以代码量也大为减少,不仅判断速度提高一倍,而且在相同的制造 工艺条件下,芯片的面积也大为减小。
本发明附加的方面和优点将在下面的描述中部分给出,部分将从下面的描述中变 得明显,或通过本发明的实践了解到。


本发明上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变 得明显和容易理解,其中,
图1是两个正交编码信号的示意图2是现有技术中用于解码正交编码信号的方法的状态转移图3是根据本发明一个实施例的用于解码正交编码信号的方法的原理框图4是根据本发明一个实施例的用于解码正交编码信号的方法的流程图5是根据本发明一个实施例的根据电平组合的状态获取正交编码信号的解码 信号的方法的流程图6是根据本发明一个实施例的用于解码正交编码信号的方法的示意图7是根据本发明一个实施例的用于解码正交编码信号的方法中的状态转移图8是根据本发明一个实施例的用于解码正交编码信号的装置的结构框图;以及
图9是根据本发明一个实施例的解码信号获取单元的结构框图。
具体实施方式
下面详细描述本发明的实施例,所述实施例的示例在附图中示出,其中自始至终 相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附 图描述的实施例是示例性的,仅用于解释本发明,而不能理解为对本发明的限制。
在本发明的描述中,需要理解的是,术语“第一”、“第二”等仅用于描述目的,而不能理解为指示或暗示相对重要性。在本发明的描述中,需要说明的是,除非另有明确的规定 和限定,术语“相连”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接, 或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介 间接相连。对于本领域的普通技术人员而言,可以具体情况理解上述术语在本发明中的具 体含义。此外,在本发明的描述中,除非另有说明,“多个”的含义是两个或两个以上。
下面参考附图描述根据本发明实施例的用于解码正交编码信号的方法及装置。
图3是根据本发明一个实施例的用于解码正交编码信号的方法的原理框图。如图 3所示,图中的一级缓存和二级缓存采用流水线作业方式,所以在正常工作过程中,解码得 出结果平均只需要一个系统时钟周期。
图4是根据本发明一个实施例的用于解码正交编码信号的方法的流程图。如图4 所示,用于解码正交编码信号的方法包括下述步骤。
步骤S101,对正交编码的第一信号和第二信号分别用D触发器打一拍,生成第一 缓存信号和第二缓存信号。其中“打一拍”表示使信号延迟一个周期。
步骤S102,获取第一信号、第一缓存信号、第二信号和第二缓存信号的电平组合。
步骤S103,根据电平组合的状态获取正交编码信号的解码信号。
在本发明的一个实施例中,当第一信号的相位落后第二信号的相位90度时,第一 电平组合的集合包括0100、0000、0010、0011、1011、1111、1101和1100。当第一信号的相 位超前第二信号的相位90度时,第二电平组合的集合包括1110、1111、0111、0011、0001、0000、1000 和 1100。
在本发明的一个实施例中,还可以包括步骤S104从第一电平组合的集合和第二 电平组合的集合中分别去除0000、0011、1111和1100以得到第三电平组合的集合0100、0010,1011,1101和第四电平组合的集合 1110、0111、0001、1000。
图5是根据本发明一个实施例的根据电平组合的状态获取正交编码信号的解码 信号的方法的流程图。如图5所示,步骤S103具体包括下述步骤。
步骤S1031,判断第一信号、第一缓存信号、第二信号和第二缓存信号的电平组合 是否属于第三电平组合的集合或第四电平组合的集合。
步骤S1032,如果属于第三电平组合的集合,则输出低电平。
步骤S1033,如果属于第四电平组合的集合,则输出高电平。
步骤S1034,如果既不属于第三电平组合的集合也不属于第四电平组合的集合,则 输出不变的电平,表不方向没有发生变化。
根据输出电平的不同可以表示光电编码器的转动方向的变化。
根据本发明实施例的用于解码正交编码信号的方法,可以在一个时钟周期中解码 出信号,与现有解码方法相比,时间缩短一半,效率得以提高。
图6是根据本发明一个实施例的用于解码正交编码信号的方法的示意图。在图6 中,“clock”是时钟信号,“A”和“A_bufTer”分别是A相原始QEP信号及其一级缓存信号, “B”和“B_bufTer”分别是B相原始QEP信号及其一级缓存信号,direction”是解码器输 出的方向信号。
如图6所示,当A相落后B相90度时,有八种信号电平组合值是“0100、0000、0010、 0011、1011、1111、1101、1100”这样的环形变化规律;而当A相超前B相90度时,有八种信号电平组合值是“1110、1111、0111、0011、0001、0000、1000、1100”这样的环形变化规律。
再来比较一下这两组值“0100、0000、0010、0011、1011、1111、1101、1100”和 “1110、1111、0111、0011、0001、0000、1000、1100”,可以发现它们有部分值是重复的,这些值 是“0000、0011、1111、1100”。除去这些重复值,则当A相落后B相90度时,四个特有的信 号电平组合值为“0100、0010、1011、1101”;当A相超前B相90度时,四个特有的信号电平 组合值为 “ 1110、0111、0001、1000 ”。这样一来,只需要判断 “ A、A_buffer、B、B_buf f er ” 这 四个信号的实际电平组合值到底是属于哪一组。如果属于“0100、0010、1011、1101”其中某 个值,则直接输出低电平;如果属于“1110、0111、0001、1000”其中某个值,则直接输出高电 平。所以只需要一个时钟周期就可以做出判断。当然,如果不属于任何一组,则表明光电编 码器的方向没有发生变化,输出电平也不做任何变化。
图7是是根据本发明一个实施例的用于解码正交编码信号的方法中的状态转移 图。在图7中,状态转移关系只有两种。图中的“Quad”表示“A、A_buffer、B、B_buffer”四 个信号电平组合。当Quad的值为“0100、0010、1011、1101”中的任何一个时,直接跳到状态 “stl”,并且输出方向信号为高电平;当Quad的值为“1110、0111、0001、1000”中的任何一 个时,直接跳到状态“stO”,并且输出方向信号为低电平;当Quad的值为“0000、0011、1111、 1100”中的任何一个时,状态保持不变,输出方向电平也保持不变。
与现有解码方法相比,由于状态由八个减少为二个,所以代码量也大为减少,不仅 判断速度提高一倍,而且在相同的制造工艺条件下,芯片的面积也减小。
下面结合附图描述根据本发明实施例的用于解码正交编码信号的装置。图8是根 据本发明一个实施例的用于解码正交编码信号的装置的结构框图。如图8所示,用于解码 正交编码信号的装置10包括缓存信号生成单元110,电平组合获取单元120以及解码信号 获取单元130。
具体地,缓存信号生成单元110用于对正交编码的第一信号和第二信号分别用D 触发器打一拍以生成第一缓存信号和第二缓存信号。电平组合获取单元120用于获取第一 信号、第一缓存信号、第二信号和第二缓存信号的电平组合。解码信号获取单元130用于根 据电平组合的状态获取正交编码信号的解码信号。
在本发明的一个实施例中,当第一信号的相位落后第二信号的相位90度时,第一 电平组合的集合包括0100、0000、0010、0011、1011、1111、1101和1100。当第一信号的相 位超前第二信号的相位90度时,第二电平组合的集合包括1110、1111、0111、0011、0001、0000、1000 和 1100。
在本发明的一个实施例中,用于解码正交编码信号的装置10进一步包括电平组 合的集合获取单元140。电平组合的集合获取单元140用于从第一电平组合的集合和第二 电平组合的集合中分别去除0000、0011、1111和1100以得到第三电平组合的集合0100、0010,1011,1101和第四电平组合的集合 1110、0111、0001、1000。
在本发明的一个实施例中,解码信号获取单元130包括判断模块1310和输出模 块1320。判断模块1310判断所述第一信号、所述第一缓存信号、所述第二信号和所述第二 缓存信号的电平组合是否属于所述第三电平组合的集合或所述第四电平组合的集合。输出 模块1320在判断模块1310判断属于所述第三电平组合的集合时输出低电平;在判断模块 1310判断属于所述第四电平组合的集合时输出高电平;以及在判断模块1310判断既不属于所述第三电平组合的集合也不属于所述第四电平组合的集合时输出不变的电平。
根据本发明实施例的用于解码正交编码信号的装置,可以在一个时钟周期中解码 出信号,与现有解码器相比,时间缩短一半,效率得以提高;并且由于状态由八个减少为二 个,所以代码量也大为减少,不仅判断速度提高一倍,而且在相同的制造工艺条件下,芯片 的面积也大为减小。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示 例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特 点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不 一定指的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任何 的一个或多个实施例或示例中以合适的方式结合。
尽管已经示出和描述了本发明的实施例,对于本领域的普通技术人员而言,可以 理解在不脱离本发明的原理和精神的情况下可以对这些实施例进行多种变化、修改、替换 和变型,本发明的范围由所附权利要求及其等同限定。
权利要求
1.一种用于解码正交编码信号的方法,所述正交编码信号包括正交的第一信号和第二信号,其特征在于,包括以下步骤对所述第一信号和所述第二信号分别用D触发器打一拍,生成第一缓存信号和第二缓存信号;获取第一信号、第一缓存信号、第二信号和第二缓存信号的电平组合;以及根据所述电平组合的状态获取所述正交编码信号的解码信号。
2.根据权利要求1所述的用于解码正交编码信号的方法,其特征在于,当第一信号的相位落后第二信号的相位90度时,第一电平组合的集合包括0100、0000、0010、0011、1011、1111、1101 和 1100 ;以及当第一信号的相位超前第二信号的相位90度时,第二电平组合的集合包括1110、 1111、0111、0011、0001、0000、1000 和 1100。
3.根据权利要求2所述的用于解码正交编码信号的方法,其特征在于,进一步包括步骤从所述第一电平组合的集合和所述第二电平组合的集合中分别去除0000、0011、1111 和1100以得到第三电平组合的集合0100、0010、1011、1101和第四电平组合的集合1110、 0111、0001、1000。
4.根据权利要求3所述的用于解码正交编码信号的方法,其特征在于,根据所述电平组合的状态获取所述正交编码信号的解码信号包括判断所述第一信号、所述第一缓存信号、所述第二信号和所述第二缓存信号的电平组合是否属于所述第三电平组合的集合或所述第四电平组合的集合;如果所述第一信号、所述第一缓存信号、所述第二信号和所述第二缓存信号的电平组合属于所述第三电平组合的集合,则输出低电平;如果所述第一信号、所述第一缓存信号、所述第二信号和所述第二缓存信号的电平组合属于所述第四电平组合的集合,则输出高电平;以及如果所述第一信号、所述第一缓存信号、所述第二信号和所述第二缓存信号的电平组合既不属于所述第三电平组合的集合也不属于所述第四电平组合的集合,则输出不变的电平。
5.一种用于解码正交编码信号的装置,所述正交编码信号包括正交的第一信号和第二信号,其特征在于,包括缓存信号生成单元,用于对所述第一信号和所述第二信号分别用D触发器打一拍以生成第一缓存信号和第二缓存信号;电平组合获取单元,用于获取第一信号、第一缓存信号、第二信号和第二缓存信号的电平组合;以及解码信号获取单元,用于根据所述电平组合的状态获取所述正交编码信号的解码信号。
6.根据权利要求5所述的用于解码正交编码信号的装置,其特征在于,当第一信号的相位落后第二信号的相位90度时,第一电平组合的集合包括0100、0000、0010、0011、1011、1111、1101 和 1100 ;以及当第一信号的相位超前第二信号的相位90度时,第二电平组合的集合包括1110、.1111、0111、0011、0001、0000、1000 和 1100。
7.根据权利要求6所述的用于解码正交编码信号的装置,其特征在于,进一步包括电平组合的集合获取单元,所述电平组合的集合获取单元用于从所述第一电平组合的集合和所述第二电平组合的集合中分别去除0000、0011、1111和1100以得到第三电平组合的集合0100、0010、1011、1101 和第四电平组合的集合 1110、0111、0001、1000。
8.根据权利要求7所述的用于解码正交编码信号的装置,其特征在于,所述解码信号获取单元包括判断模块,所述判断模块用于判断所述第一信号、所述第一缓存信号、所述第二信号和所述第二缓存信号的电平组合是否属于所述第三电平组合的集合或所述第四电平组合的集合;以及输出模块,所述输出模块用于在所述第一信号、所述第一缓存信号、所述第二信号和所述第二缓存信号的电平组合属于所述第三电平组合的集合时输出低电平,在所述第一缓存信号、所述第二信号和所述第二缓存信号的电平组合属于所述第四电平组合的集合时输出高电平,和在所述第一信号、所述第一缓存信号、所述第二信号和所述第二缓存信号的电平组合既不属于所述第三电平组合的集合也不属于所述第四电平组合的集合时输出不变的电平。
全文摘要
本发明提出一种用于解码正交编码信号的方法及装置。用于解码正交编码信号的方法中,所述正交编码信号包括正交的第一信号和第二信号,该方法包括以下步骤对所述第一信号和所述第二信号分别用D触发器打一拍,生成第一缓存信号和第二缓存信号;获取第一信号、第一缓存信号、第二信号和第二缓存信号的电平组合;以及根据所述电平组合的状态获取所述正交编码信号的解码信号。根据本发明实施例的用于解码正交编码信号的方法可以在一个时钟周期中解码出信号,节省时间并且效率高。
文档编号G01D5/26GK103017800SQ20111029675
公开日2013年4月3日 申请日期2011年9月27日 优先权日2011年9月27日
发明者曹利兵, 华福春 申请人:比亚迪股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1