编码器是用于测量机械旋转或位移的传感器。它可以测量机械零件在旋转或直线运动过程中的位移、位置或速度等信息,并将其转换成一系列电信号。
光电编码器是一种通过光电转换将输出轴上的机械几何位移转换为脉冲或数字量的传感器。这是目前应用最广泛的传感器。光电编码器由光源、光码盘和光敏元件组成。
光栅盘是一块具有一定直径的圆盘,上面均匀开有若干个矩形孔。由于光电码盘与电机同轴,当电机旋转时,光栅盘与电机同轴旋转,由发光二极管等电子元件组成的检测装置检测并输出多个脉冲信号。通过计算光电编码器每秒输出的脉冲数,可以反映当前电机的转速。
此外,为了确定旋转方向,码盘还可以提供两个相位差为90的脉冲信号。
霍尔编码器是一种通过磁电转换将输出轴上的机械几何位移转换为脉冲或数字量的传感器。
霍尔编码器由霍尔码盘(磁环)和霍尔元件组成。
霍尔码盘是将不同的磁极均匀排列在一定直径的圆板上。霍尔码盘与电机同轴。当电机转动时,霍尔元件检测并输出多个脉冲信号。为了确定转向方向,一般输出两组具有一定相位差的方波信号。
增量式编码器将设备运动时的位移信息转换为连续脉冲信号。脉冲数代表位移量。其特点如下:
仅当设备运动时才会输出信号。
一般输出两组信号,A通道和B通道,相位差90(1/4周期)。通过同时采集这两组信号,就可以计算出设备的运动速度和方向。
如下图所示,A通道和B通道的信号周期相同,相位差为1/4周期。合并两相的信号值:
当B相和A相先读高电平(1 1),然后B读高电平,A相读低电平(1 0)时,是顺时针旋转。
当B相和A相先读低电平(0 0),然后B读高电平,A相读低电平(1 0)时,为逆时针旋转。
除了A通道和B通道外,还会设置一个额外的Z通道信号来表示编码器的具体参考位置。
如下图所示,传感器旋转一圈后,Z轴信号才会输出脉冲。 Z轴输出时,通过清零AB通道的计数即可计算出码盘的绝对位置。
增量编码器仅输出设备的位置变化和运动方向,但不输出设备的绝对位置。
绝对式编码器的整体结构与增量式编码器类似。它们都是由码盘、检测装置和放大整形电路组成,但具体的码盘结构和输出信号的含义不同。
它通过二进制编码(专用码盘)将设备运动时的位移信息转换为数字量并直接输出。其特点如下:
码盘采用多个透光和不透明的线槽组成一组二进制码。这些二进制代码唯一对应于编码器轴的每个不同角度。
绝对式编码器的码盘上有许多圈线槽,称为码道。每个(圈)码道内部线槽的数量和长度不同。它们一起形成一组二进制代码。一(圈)码道对应二进制数的一位(通常码轮最外面的码道代表最低位,最里面的码道代表最高位)。
编码通道数决定了二进制编码位数。绝对式编码器有N个码通道,因此其输出的二进制数总数为2的N次方。
通过读取这些二进制码,就可以知道设备的绝对位置,因此称为绝对编码器。
编码方式一般采用自然二进制、格雷码或BCD码等。
天然的二进制码轮很容易理解,但是当码轮的制造过程出现错误时,在两组信号的临界区域内,所有码道的值可能不会改变同时,或者因为所有传感器检测存在微小的时间差,导致读取到错误的值。例如,如果从000 跨越到111,理论上应该读取111。但是,如果从内到外的三个条码轨道没有完全对齐,则可能会读取001 或其他异常值。
格雷码(相邻的两个二进制数仅相差1位)码盘可以避免二进制码盘数据读取异常,因为格雷码盘的两个相邻信号组只会改变1位。即使制造过程中存在误差导致信号读取出现偏差,最多也只会出现一个偏差(相邻信号的偏差)。
指的是编码器能够区分的最小单位。
对于增量编码器,分辨率表示为编码器轴旋转一圈产生的脉冲数,即每转脉冲数(Pulse Per Revolution或PPR)。
码盘上透明线槽的数量实际上等于分辨率,也称为线数。比较常见的是5-6000行。
对于绝对式编码器来说,内码盘所使用的位数就是其分辨率,单位是位(bit)。具体分为单圈分辨率和多圈分辨率。
首先我们要明确一点,精度和分辨率是两个不同的概念。
精度是指每个编码器读数与转轴实际位置之间的最大误差,通常以度、弧分或弧秒表示。
例如,有的绝对式编码器参数表会写20'',这意味着编码器输出读数与转轴实际位置之间存在正负20角秒的误差。
其精度由码盘刻线的加工精度、转轴的同心度、材料的温度特性、电路的响应时间等多种因素决定。
指编码器每秒输出的脉冲数,单位为Hz。计算公式为:
最大响应频率=分辨率*轴转速/60
例如,某电机编码器的分辨率为100(即光电码盘一圈有100格),轴转速为每分钟120转(即每秒2转),则响应频率为100*120/60=200Hz,即在此速度下,编码器每秒输出200个脉冲(电机带动编码器旋转2圈)。
对于增量编码器,每个通道的信号独立输出。输出电路形式通常有集电极开路输出、推挽输出、差分输出等。
对于绝对式编码器,由于直接输出几十位二进制数,为了保证传输速率和信号质量,一般采用串行输出或总线输出,如同步串行接口(SSI)、RS485、CANopen或EtherCAT等。有的为并行输出,输出电路形式与增量编码器相同。
编码器倍频是什么意思?例如,光栅编码器一圈内有N个网格。理论上,电机带动编码器旋转一圈,只能输出N个信号。通过倍频技术,它可以旋转一次,但可以输出N*n个信号,其中n为倍频数。
增量式编码器输出的脉冲波形一般为占空比为50%的方波,A、B通道相位差为90。
如果只使用A通道进行计数,并且只捕获A通道的上升沿,则一圈的计数值=码盘上的格数,即1倍(无倍频)
如果只使用A通道进行计数,并捕获A通道的上升沿和下降沿,则编码器一转的计数值加倍,达到2倍频率。
如果通道A和通道B都用于计数,并且捕获上升沿和下降沿,则可以实现4倍的频率。
假设增量编码器的分辨率为600PPR,则其可解析的最小角度为0.6。增加一倍4相当于将分辨率提高到600*4=2400PPR。此时,编码器可以分辨率的最小角度为0.15。
也称为频率测量法。该方法是对固定时间段(以秒为单位)内的编码器脉冲数进行计数,并计算出速度值。 M方法适合测量高速。
假设:
编码器单转脉冲总数为C(常数)
统计时间为(固定值,单位秒)
这段时间内计数的编码器脉冲数为(测量值)
则:转速n(转/秒)的计算公式为:
如何理解这个公式:
/C为统计时间内编码器脉冲数,除以统计时间,即1s(单位时间)内的转数
例如:统计时间为3s,3s内测得的脉冲数为60,编码器单圈脉冲数C为20,则每秒的速度圈数
由于C 是常数,因此速度n 与成正比。这使得:
高速时,测量变得更大,可以获得更好的测量精度和稳定性。
但在低速时(低至每次只有几个脉冲),此时计算出的速度误差会比较大,而且很不稳定。
如下图所示,方波是编码器某个通道输出的脉冲。
当转速越高时,每次统计时间内的计数值越大,能够得到更准确的转速测量值。
当速度较低时,每次统计的计数值较小。由于统计时间的起始位置不一定对应于编码器脉冲的上升沿,当统计时间的起始位置不同时,就会出现脉冲误差(只统计上升沿时,会出现最大1 个脉冲错误;计数上升沿和下降沿时,最多会出现2 个脉冲错误)。
通过倍频增加单位时间测量的脉冲数,可以提高M法在低速测量时的精度(例如原来捕获的脉冲只有4个,但4倍频后,同样的电机状态变成了16个) ),但也无法从根本上改变低速时的测量问题。
也称为周期测量法。该方法是创建已知频率的高频脉冲并对它们进行计数。 T法适合测量低速。
假设:
编码器单转脉冲总数为C(常数)
高频脉冲的频率为(固定值,单位Hz)
捕获编码器相邻两个脉冲之间的间隔,其间的计数值为(测量值)
则:转速n的计算公式为:
如何理解这个公式:
1/即1s内有多少个编码器脉冲,除以一转的脉冲数C,即1s内转了多少转
/即1s内的高频脉冲数除以两个编码器脉冲之间的高频脉冲数,即1s内有多少个编码器脉冲,然后除以1s内的脉冲数转C,即1秒内转了多少转。
例如:高频脉冲的周期为1ms,即频率为1000Hz。编码器的两个脉冲之间,产生的高频脉冲数量为50个(即两个编码器脉冲之间的间隔为0.05s)。一转的脉冲C数为20,旋转速度为每秒一转。
由于C 和是常数,因此速度n 成反比。这使得:
高速时,编码器脉冲间隔时间很小,使得测量周期内的高频脉冲计数值变得很小,从而产生较大的测量误差。
低速时,数量足够大,测量周期内也有足够的时间,所以T法正好与M法相反,更适合测量低速。
如下图所示,黑色方波为编码器某通道输出的脉冲,黄色方波为高频测量脉冲。
当转速较低时,高频测量脉冲数量较多,可以获得更准确的转速测量值。
当速度较高时,编码器两个脉冲之间的时间间隔变短,导致高频测量脉冲数量较少。由于高频脉冲的上升沿位置不一定与编码器脉冲的上升沿相对应,因此当两个波形的上升沿位置不同时,就会出现脉冲错误。
该方法结合了M法和T法各自的优点,既测量编码器脉冲数,又测量一定时间内的高频脉冲数。
在一个相对固定的时间内,假设:
产生的编码器脉冲数为(测量值)
对已知频率(固定值,单位Hz)的高频脉冲进行计数,计数值为(测量值),并计算速度值
编码器单转的脉冲总数为C(常数)
那么转速n的计算公式为:
例如:在相对固定的时间内,编码器脉冲数为3;高频脉冲的周期为1ms,即频率为1000Hz,产生的高频脉冲数量为150个。编码器一转的脉冲数C为20,则为每秒转数。
由于M/T方法公式中的和C是常数,因此转速n仅受和的影响。
高速时增减,相当于M法
低速时增减,相当于T法。