《电子技术应用》
您所在的位置:首页 > 测试测量 > 设计应用 > 如何进行正交编码器测量
如何进行正交编码器测量
NI
摘要: 编码器是一种机电装备,可以用来测量机械运动或者目标位置。大多数编码器都使用光学传感器来提供脉冲序列形式的电信号,这些信号可以依次转换成运动、方向或位置信息。
关键词: 编码器 NI
Abstract:
Key words :

编码器及其应用概述

编码器是一种机电装备,可以用来测量机械运动或者目标位置。大多数编码器都使用光学传感器来提供脉冲序列形式的电信号,这些信号可以依次转换成运动、方向或位置信息。

旋转编码器可以用来测量轴的旋转运动。图1显示了旋转编码器的基本组成部分,包括一个发光二极管(LED)、一个码盘,以及码盘背面的一个光传感器。这个码盘安置在旋转轴上,上面按一定编码形式排列着不透光和透光的扇形区域。当码盘转动时,不透光扇区能够遮挡光线,而透光扇区则允许光线透过。这样就产生了方波脉冲,可以编译成相应的位置或运动信息。编码器每转通常分为100到6000个扇区。这就表明,100个扇区的编码器可以提供3.6度的精度,而6000个扇区的编码器则可以提供0.06度的精度。

线性编码器与旋转编码器的工作原理类似。它采用了一条固定的不透光带取代了旋转码盘,在不透光带表面上有一些透光缝隙,而LED探测器组件则被附在运动体上。

 

ni.com/video/popup/?url=rtmp://cosine.ni.com/flvplayback/us/2008/quadrature_encoder.flv" target="_blank">  

图1. 光电编码器的组件

仅有一路脉冲输出的编码器不能确定旋转的角度,所以用处不大。如果使用两路码道,其扇区之间的相位差为90度(如图2所示),那么通过该正交编码器的两路输出通道就可以确定位置和旋转的方向两个信息。例如,如果通道A相位超前,码盘就以顺时针旋转。如果通道B相位超前,那么码盘就是以逆时针旋转。因此,通过监控脉冲的数目和信号A、B之间的相对相位信息,就可以同时获得旋转的位置和方向信息。

图2.  正交编码器A和B的输出信号

除此之外,有些正交编码器还包含被称为零信号或者参考信号的第三个输出通道。这个通道每旋转一圈输出一个单脉冲。你可以使用这个单脉冲来精确计算某个参考位置。在绝大多数编码器中,这个信号称为Z轴或者索引

为止,本文之前介绍了单端增量式正交编码器。由于A和B信号都以地作为参考信号,所以被称作为单端,并且每个信号只有一根线(或者说只有一端)。而另外一种常用的编码器为差分编码器,它的A和B信号都有两根线。A信号的两根线分别是A’和A,B信号的两根线分别是B’和B。因为这四根线总是输出某个已知电平(0V或者Vcc),所以这种结构也被称为推挽结构。当A是Vcc时A’就是0V,反之,当A是0V时A’就是Vcc。而在单端编码器的情况下,A或者是Vcc或者悬空。采用差分检测可以保证信号的准确性,所以差分编码器通常可以用在电噪声较大的环境中。

采用增量式编码器仅能测量出位置的变化信息(从中可以计算出运动速度和加速度),但却无法确定目标的绝对位置。在这里,我们将介绍第三种编码器:绝对式编码器,该类编码器能够获得目标的绝对位置。这种编码器同增量式编码器一样,具有交替变化的不透光扇区和透光扇区。但是绝对式编码器在编码器的码盘上,采用了多组分区形成同心码道,如同靶环一样。同心码道从编码器码盘的中心出发,向外扩展直到码盘外部,每一层码道都比其内层多了一倍的分区。第一层,即最内层的码道,只有一个透光扇区和一个不透光扇区;位于中心的第二层就具有两个透光扇区和两个不透光扇区;而第三层码道的透光扇区和不透光扇区就各有四个。如果编码器有10层码道,那么最外围的码道就有512个扇区;如果有16层码道,那么最外围的码道就有32,767个扇区。

因为绝对式编码器的每层码道都比它里面一层的码道多了一倍数目的扇区,所以扇区的数目就形成了二进制计数系统。在这种编码器中,码盘上的每个码道都对应一个光源和一个接收器。这意味着10层码道的编码器就需要10组光源和接收器,而16层码道的编码器就需要16组光源和接收器。

绝对式编码器的优势在于您可以降低编码器的转速,可以使编码器的码盘在整个机器运动周期中只转一圈。如果机器运动距离为10英寸,而编码器具有16位精度,那么机器位置的精度就是10/65,536,即0.00015英寸。如果机器的行程更长譬如6英尺,那么粗旋转编码器可以保证跟踪每一英尺距离;第二级称为细旋转编码器可以跟踪1英尺以内的距离。这就意味着,你可以调整粗编码器,使其在整个6英尺距离内旋转一圈;也可以调整细编码器,使其能够分辨的范围为1英尺(即12英寸)。 

怎样使用编码器进行测量

要使用编码器进行测量,必需有一个基本的电子设备即计数器。基本的计数器是通过其几个输入通道,产生一个数值,来表示检测到的边沿(即波形中从低到高或高到低的变化)数目。大多数计数器都有三个相互关联的输入——门限升/降选择。计数器记录输入中的事件数目,并且根据升/降选择线的状态进行加计数或者减计数。例如:如果升/降状态位”高”,那么计数器加计数;如果升/降状态位”低”,那么计数器就减计数。图3显示了一个简化的计数器框图。

 

图3. 计数器的简化模型

编码器通常有5根线需要连接。不同的编码器,这些线的颜色是不一样的。你可以使用这些线来给编码器提供电源,并且读入A、B和Z信号。图4显示了一个增量式编码器的典型接口定义。

 

图4. 增量式编码器接口

接下来一步就要决定这些线应该接到什么位置。如上文所述,将信号A接到接线端上,对其信号中的脉冲进行计数。信号B连接到升/降选择端口上。将任意+5V的直流电源接到电源和地接线端口上——大多情况下,一个数据采集设备只需一根数字线就足够了。

既然对信号边沿计数了,接下来你需要考虑的就是这些数值应如何转换成位置信息。这个由边沿数值转换为位置信息的过程,取决于所采用的编码类型。总共有三种基本的编码类型:X1、X2和X4。

X1编码

图5显示了一个正交周期和其相应的X1编码类型下的计数值的加减数目。当通道A引导通道B时,增量发生在通道A的上升沿。当通道B引导通道A时,减量发生在通道A的下降沿。

 

图5.  X1编码

 

X2编码

X2编码与上述过程类似,只是计数器A通道的每个边沿计数是增加还是减少,取决于由哪个通道引导哪个通道。计数器的数值每个周期都会增加2个或减少2个,如图6所示。

 

图6.  X2编码

 

X4编码

X4编码模式下,计数器同样也在通道A和B的每个沿上发生增加或者减少。计数器的数目是增加还是减少,取决于哪个通道引导哪个通道。计数器的数目每个周期都会增加4个或减少4个,如图7所示。

 


[+] Enlarge Image

图7. X4编码

 

一旦你设置了编码类型以及脉冲计数类型,就可以使用下列公式把数值信息转换为位置信息了:

 

对于转动位置

 

旋转量    

其中 N=轴每旋转一周过程中,编码器所生成的脉冲数目

         x = 编码类型

 

对于线性位置

位移量    

其中 PPI=脉冲每英寸(这个参数与所选的编码器有关)

将编码器连接到仪器上

在这部分中,以NI cDAQ-9172机箱和NI 9401 C系列的数字I/O模块为例。使用不同的测量仪器和设备,都与该过程类似。

 


[+] Enlarge Image

图8.  NI CompactDAQ系统

 

使用的设备:

         cDAQ-9172 : NI CompactDAQ 8插槽高速USB机箱

         NI 9401:8-通道、5 V/TTL高速双向数字I/O模块

         24脉冲/转的旋转正交编码器

NI 9401有一个 D-Sub连接器,可以为8个数字通道提供连接。每个通道都有一个数字I/O端口,可以连接到一个数字输入或输出设备。只有通过机箱上的第5和第6个插槽,才可以连接到cDAQ-9172中的两个计数器上;所以,将9401插入到第5插槽上。图8显示了这种结构的端口,图9显示了默认的计数器接线端。

图9. NI9401的端口(插槽5)

 

 表1. 默认的计数器接线端

根据这些规范,编码器上的连线A连接到14脚上,连线B连接到17脚上,“5 VDC Power”连接到任何一个设置为“高”的尚未使用的的数字线上,“Ground”连接到任何COM端口上。 

开始测量

前面已经将编码器连接到测量设备上了,接下来就可以使用NI LabVIEW图形化编程软件,将这些数据传到计算机中进行观察和分析了。

图10显示了一个例子,在LabVIEW编程环境中显示边沿数目和相应的位置增量。

 


图10. LabVIEW前端面板显示测量

此内容为AET网站原创,未经授权禁止转载。