0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

编码器基础——格雷码这样图案化编码的好处

电子工程师 来源:lq 2019-01-11 10:28 次阅读

编码器是一种测量角度(或直线长度)的传感器,它将需要测量的角度(或直线长度)预先在传感器内部编码,并以数字编码的方式向外发送传感器测量的数据。其中,格雷码就是其最常用的编码方式。

01

格雷码(Gray Code)因1953年公开的弗兰克.格雷的专利而得名。格雷码是二进制循环码,其编码最大的特点是任意上下相邻的两个码值间,只有一位码不同,这样在码值上下变化过程中,每次只改变一位码,从而传输、读数的错码率最小。格雷码还是循环码,其最大码到最小码同样遵循只改变一位码的编码原则,因而形成循环码。

每次只变一位的唯一性、循环性、图案化编码对称性是格雷码的编码原则,它的图案化编码形式犹如小孩子搭积木来搭建金字塔般简单,而又优美。

以下是以4位代码为例,对比格雷码与纯二进制码:

(1)每次只变化一位,例如在7到8之间,纯二进制(0111到1000)4位都发生了码值的变化,格雷码(0100到1100)仅最高位码值变化。

(2)循环码,最大码15与最小码0的格雷码只有一位最高位码值的不同(1000到0000)。

(3)图案化编码金字塔对称,最低位从1(2的0次)开始向大变化,连续两个1再连续两个0,再两个1;第二低位从2(2的1次)开始向大变化,连续四个1,再连续四个0;第三低位从4(2的2次)开始,连续8个1,再8个0;第四低位从8(2的3次)开始,连续16个1,再16个0......如果横过来看,像积木搭金字塔型图案,依此规律方法,即使小学生都可随手写出更多位数的格雷码编码。

02

格雷码这样图案化编码的好处:

(1)同步性多位数读码容错宽度最大。

由于格雷码两个相邻码值变化时每次只变一位,那么在多码道位数同时读取(例如光学码盘)、输出(例如多芯电缆的并行输出)、以及后续设备的多位数的接收,在数值增加或减少时,编码与同步读取的误差最小。多位数的数据刷新是不可能做到完全同步的(由于物理位置精度的原因,以及时间精度瞬间有先后),格雷码因只有一位的变化,而可以“从容”分辨出这仅一位的变化,其余的没有改变,没有同步性偏差。而如果是纯二进制码,有多个数据改变了,这些刷新改变的数据读取会有同步性上的先后,就有可能有些已经读到刷新后的数据,有些还没有读到刷新后的数据,这样就会乱码,例如表1内的7到8,纯二进制有多个位0和1发生改变,如果有一位还停留在刷新前的,如第二位,那么读到的就不是8(1000),而是10(1010)了。而格雷码由于每次只改变一位,因为就只有一位在刷新,就不存在刷新先后的问题,也就不会发生错码了。

(2)制作时容错宽度最大,格雷码编码的刻线宽度大,一条刻线容下了两个码值,一个刻线周期容下了4个码值。

例如上图一个5位格雷码32个分辨位置,最密的刻线码道仅需8个刻线,宽度比纯二进制码宽一倍。同时,由于相邻两个格雷码只有一位的变化,刻线位置的误差宽度可达±1/2码而不会发生错码。这对于码盘的加工以及读取传感器的安装精度要求大大放宽,便于制作出在同样尺寸下更高分辨率的编码器。

(3)编码与刻线有规律的图案化排列。

格雷码以搭宝塔积木似的编码刻线,对于码盘设计极为的方便,也便于布排各个码道的传感器读取头。

(4)循环码,便于多周期的旋转循环而不会发生错码。

格雷码的最高两位是特别的,在一个循环周期里面,最高两位的刻线宽度是一样的,而位置错开了1/4周期,格雷码最高位的变化是在整个格雷码编码测量周期的中点和起始点。也就是在周期的1/2(180度相位)时,仅有最高位的码值从0到1,而在周期的终点循环到起始点,也仅有最高位的码值从1到0,其间的变化不会发生错码。

(5)增量型编码器的AB相编码,也就是利用了格雷码最高2位为循环编码不易错码,并上述各项格雷码与刻线的优点。

这样的编码可以分辨出进位与退位(编码器旋转的正转于反转),可以每个周期的2位格雷码编码的4个位置(四倍频),可以有刻线与读取的最大限度的容错。

例如一个光学增量型编码器,通过传感器内的光学码盘,分割有很多个分割刻线,通过度取刻线通与暗的规律,输出每圈的脉冲数(PPR)对一个360度圆周分割,也称为分辨率。每个脉冲周期的变化代表了一定角度变化,这样预先分割角度到每个周期并读取计数周期变化的方式为“增量编码”,增量编码器输出一般是A、B、Z三相信号,A和B的编码按格雷码一个周期内循环码最高2位的位置编排,输出相差1/4个周期的A和B,正转(进位)是1/4相差,而反转(退位)是3/4相差,以此可以判断编码器的正反转;另外一个信号Z相是每圈仅提供一个位置脉冲,以此可以设定零位值。

(6)绝对值编码器的N位数编码,也就是利用了格雷码多码道同步读取时错码率最小,以及便于码盘设计、刻线以及传感器安装的宽容度最大。并行信号输出的格雷码,也便于后续设备读取变化时错码率最低。用格雷码制作绝对值码盘,物理制作最简单经济,同时又达到最大的宽容度容错性。

较易错误的纯二进制编码码盘

格雷码编码的码盘,制作宽容度与容错性最佳。

绝对值编码的编码器内部码盘已对应有整个测量行程预先有N位的大数据编码,在整个规定的测量行程中每一个位置都是唯一性的编码,与时间轴无关,任何时间读取或者不读取都可以根据数据下游指令,可直接一次输出与时间轴无关的编码大数据。在360度以内的唯一编码的为单圈绝对值编码器,超出360度有更多圈数量程的唯一编码的为绝对值多圈编码器。

03

格雷码对纯二进制的解码,以下表规律解码:

解码过程:以“0”和格雷码的最高位以上表方法比较,结果保留在(纯二进制码)最高位,再以此结果与格雷码的第二高位比较,结果保留在(纯二进制码)第二高位;再以刚得到的值与第三高位比较,结果保留在(纯二进制码)第三高位......以此类推,直到最低位。

例如自然数14,格雷码为1001,向纯二进制码解码,最高位比较值(0与1)结果为1,第二高位比较(1与0),结果为1;第三高位比较(1与0),结果为1;最低位比较(1与1),结果为0,得到纯二进制代码1110。

格雷码的读取:由于格雷码是循环码,在读码时要确认多少位,一次完整地从高位向低位读取,而不能因为只改变低位,就仅仅只读低位而不读高位。

格雷码有规律的积木式编码方式,可以节省位数的解码。编码器在快速旋转中当需要快速读取码值而放弃了高分辨率的最后几位,仅读取高位,可大胆放弃最后几位的格雷码向二进制码的解码----格雷码的解码是从高位开始的,例如原先一个13位的格雷码编码,当放弃最后最后3位后可以成为一个10位的格雷码编码。

04

故事:国王的红酒,简单图案化的格雷码编码。

B. 找十个死囚犯,从低位到高位编号,轮到各自位数有记号的逢1便尝酒。如果有囚犯中毒,即可根据格雷码的编排图案化规律而找到了那瓶毒酒。

C. 半天后,有可能有死囚会死去,那样就有了毒酒的格雷码编码数。究竟有多少个死囚会被毒死?那要看这个毒酒的编号里有几个“1”,也就是“尝”到的有几个囚犯。根据几个死囚死去的位置编号,就能找到那瓶毒酒。

这是我编的一个故事,各位记住格雷码了吗?当然,你就不用试毒酒就可以记住它的编码图案规律了。

每次只改变一位,带来最经济的物理制作、读取与解码,最大的容错性,格雷码是如此简单而又优美,搭建起编码器数学编码的基础。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 编码器
    +关注

    关注

    41

    文章

    3360

    浏览量

    131509
  • 二进制
    +关注

    关注

    2

    文章

    705

    浏览量

    41248
  • 格雷码
    +关注

    关注

    2

    文章

    34

    浏览量

    13092

原文标题:编码器基础——格雷码的编码美学

文章出处:【微信号:wwygzxcpj,微信公众号:电机技术及应用】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    绝对式多极磁电轴角编码器的设计

    为了实现多对极磁电式轴角编码器的高分辨率绝对式检测并降低其成本,基于改进构建了一种新型多极磁电轴角编码器模型,提出一种基于校准查表的信
    发表于 06-02 10:04

    常用编码(BCD编码、余3反射、奇偶校验)

    反射(循环)十进制数 二进制数 十进制数 二进制数
    发表于 04-11 10:00

    简介及格与二进制的转换程序

    ] 。  属于可靠性编码,是一种错误最小编码,因为它大大地减少了由一个状态到下一个状态
    发表于 04-22 09:00

    什么是BCD、8421、余三

    的是8421BCD,无权用得较多的是余三,我们通常所说的BCD
    发表于 11-03 17:36

    编码器工作原理

    均匀分布的刻线。由于其给出的位置信息是增量式的,当应用于伺服领域时需要初始定位。绝对式编码器一般都做成循环二进制代码,道道数与二进制
    发表于 02-24 22:03

    【STM32源代码分享】STM32F10xxx 正交编码器接口应用笔记 及...

    ,制作简便,成本低等优点。增量式编码器结构简单,制作容易,一般在盘上刻A、B、Z三道均匀分布的刻线。由于其给出的位置信息是增量式的,当应用于伺服领域时需要初始定位。
    发表于 03-18 10:03

    编码器的基础知识

    ),这就称为n位绝对编码器这样编码器是由光电码盘的机械位置决定的,它不受停电、干扰的
    发表于 11-24 19:00

    的规则和应用问题?

    今天看到一个计数的程序,搜了下定义,觉得还是云里雾里,定义写的是若任意两个相邻的代码只有一位二进制数不同,则这种编码
    发表于 08-20 14:41

    编码器扫盲,带你了解编码器的原理和应用

    的通、暗,获得一组从2的零次方到2的n-1次方的唯一的2进制编码(),这就称为n位绝对编码器这样
    发表于 10-13 08:00

    【原创分享】编码器的分类及增量式光电编码器的工作原理

    和循环,所以很安全。每步只有一位变化。数据处理时,必须转换成二进制。8、转速改速度指示编码器
    发表于 05-17 13:20

    编码器和译码(数电实验报告)精选资料分享

    组合逻辑电路设计二、 实验原理1. 编码器把二进制按一定的规律编排,例如 8421
    发表于 07-30 07:41

    正交编码器原理

    1. 正交编码器原理盘:正交编码器有两个光电传感,另一头有一个光源,当黑白相间的盘转到白色对准光电传感
    发表于 08-12 07:10

    编码器的定义

    编码器  编码器的定义:在数字系统里,常常需要将某一信息(输入)变换为某一特定的代码(输出)。把二进制按一定的规律编排,例如8421
    发表于 09-03 06:35

    绝对值编码器和增量编码器的区别

    ,在编码器的每一个位置,通过读取每道刻线的通、暗,获得一组从2的零次方到2的n-1次方的唯一的2进制编码),这就称为n位绝对
    发表于 04-20 16:19

    编码器,编码器是什么意思

    编码器,编码器是什么意思 编码器 编码器(encoder)是将信号
    发表于 03-08 15:04 2892次阅读