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”,也就是“尝”到的有几个囚犯。根据几个死囚死去的位置编号,就能找到那瓶毒酒。

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

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

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

    关注

    45

    文章

    3604

    浏览量

    134258
  • 二进制
    +关注

    关注

    2

    文章

    794

    浏览量

    41609
  • 格雷码
    +关注

    关注

    2

    文章

    34

    浏览量

    13182

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

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

收藏 人收藏

    评论

    相关推荐

    编码器的定义与功能 编码器的工作原理和种类

    在数字系统里,常常需要将某一信息(输入)变换为某一特定的代码(输出)。把二进制按一定的规律编排,例如8421等,使每组代码具有一
    的头像 发表于 10-27 09:29 1.2w次阅读
    <b class='flag-5'>编码器</b>的定义与功能 <b class='flag-5'>编码器</b>的工作原理和种类

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

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

    的规则和应用问题?

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

    编码器的定义

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

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

    什么是编码器 什么叫编码器 编码器什么意思 第一种含义:编码器是把角位移或直线位移转换成电信号的一种装置。前者成为盘,后者称码尺.按照读
    发表于 12-18 00:13 1.5w次阅读
    什么是<b class='flag-5'>编码器</b> 什么叫<b class='flag-5'>编码器</b> <b class='flag-5'>编码器</b>什么意思

    码式旋转编码器在位移检测中的应用

    码式旋转编码器在位移检测中的应用 介绍码式旋转编码器的特点,通过PLC转换成二进制式运
    发表于 04-30 08:43 2221次阅读
    <b class='flag-5'>格</b><b class='flag-5'>雷</b>码式旋转<b class='flag-5'>编码器</b>在位移检测中的应用

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

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

    编码规则_有什么规律

    典型的二进制简称,因1953年公开的弗兰克·
    的头像 发表于 03-02 14:29 5.5w次阅读
    <b class='flag-5'>格</b><b class='flag-5'>雷</b><b class='flag-5'>码</b><b class='flag-5'>编码</b>规则_<b class='flag-5'>格</b><b class='flag-5'>雷</b><b class='flag-5'>码</b>有什么规律

    编码器功能实现

    编码器是将信号或数据进行编制、转换为可用以通讯、传输和存储的信号形式的设备。属于可靠性编码,是一种错误最小
    的头像 发表于 03-02 16:13 1.3w次阅读
    <b class='flag-5'>格</b><b class='flag-5'>雷</b><b class='flag-5'>码</b><b class='flag-5'>编码器</b>功能实现

    绝对值编码器原理

    绝对编码器盘上有许多道光通道刻线,每道刻线依次以2线、4线、8线、16线编排,在编码器的每一个位置,通过读取每道刻线的通、暗,获得一组从2的零次方到2的n-1次方的唯一的2进制编码
    的头像 发表于 12-06 17:12 5.4w次阅读

    转换为二进制编码器的方法

    绝对编码器中的传感输出格序列,需要一些复杂的转换方法才能正确使用。本文展示了如何获取绝对编码器使用的
    的头像 发表于 05-05 15:41 6494次阅读
    将<b class='flag-5'>格</b><b class='flag-5'>雷</b><b class='flag-5'>码</b>转换为二进制<b class='flag-5'>编码器</b>的方法

    一文详解编码器

    本文介绍,这是绝对编码器与控制通信所必需的一种特殊二进制排列。
    的头像 发表于 05-05 15:47 1w次阅读

    结构光|解码方法

    是一种特殊的二进制,在结构光三维视觉中,常常被用于编码。比起我们常见的二进制
    的头像 发表于 12-21 11:14 1217次阅读

    编码器是什么?编码器有哪些分类及应用

    编码器是什么?编码器有哪些分类及应用;编码器是什么?在数字信号处理和通信系统中,编码器是一种重要的设备,用于将原始数据转换为字符序列或二进制
    的头像 发表于 05-18 11:08 5230次阅读
    <b class='flag-5'>编码器</b>是什么?<b class='flag-5'>编码器</b>有哪些分类及应用

    光电编码器盘和狭缝设计的区别

    光电编码器是一种将机械位置或运动转换为电信号的传感,广泛应用于自动控制、机器人技术、精密测量等领域。光电编码器的核心部件是盘和狭缝,它
    的头像 发表于 10-12 09:51 415次阅读