什么是旋转编码器:工作原理及其应用
编码器是一种用于将数据的一种格式更改为另一种格式的设备。换句话说,一种用于检测机械运动并将其转换为模拟编码或数字编码o/p信号的设备。编码器有两种配置。。。
编码器是一种用于将数据的一种格式更改为另一种格式的设备。换句话说,一种用于检测机械运动并将其转换为模拟编码或数字编码o/p信号的设备。编码器有两种配置,如线性和旋转,但最常用的配置是旋转。所以旋转编码器以两种基本形式设计,如绝对编码器和增量编码器。
大多数旋转编码器都是用塑料或玻璃开槽盘设计的,因为每个轨道内的径向线会破坏光电发射器-探测器对之间的光束,从而产生数字脉冲。本文概述了旋转编码器及其应用。
什么是旋转编码器?
旋转编码器(轴编码器)是一种机电设备,用于改变轴的运动和旋转轴的角位置。该编码器基于旋转运动产生电信号,类似于模拟或数字。
这些用于需要控制或监测的各种应用,如机器人、工业控制、摄影镜头、计算机输入设备,如轨迹球、光学机械鼠标、受控应力流变仪等。
这个旋转编码器结构可以通过使用不同的部件来完成,如编码器轴、码盘或包括标签的转盘、包括电子板的光源、接收IR光电传感器、包括齿轮的光学机械块、带数字接口转换器和信号处理器的电子板。
引脚配置
这个旋转编码器的引脚配置包括五个引脚,其中每个引脚及其功能将在下面讨论。
- 引脚1(接地):这是一个接地引脚
- 引脚2(VCC):这是工作电压为3.3 V或5 V的正电压电源引脚。
- 引脚3(SW):这是激活的低位按钮开关。按下旋钮后,电压将为LOW(低)。
- DT(输出B):这与时钟输出类似;然而,它以90°的相移滞后于时钟。因此,这个输出可以用来决定旋转的方向。
- CLK(输出-A):这是主要的输出信号,用于确定旋转量。每次,编码器中的旋钮都会向任何方向转动一个棘爪。“CLK”的输出将经过一个HIGH(高)循环,之后为LOW(低)
旋转编码器工作
在旋转编码器中,我们可以观察到方波信号是如何产生的。通常,该编码器包括一个圆盘,该圆盘与接触区均匀间隔。这些接触区的连接可以连接到公共引脚C和其他两个单独的接触引脚,如下图所示的A和B。

这个编码器中的磁盘将开始缓慢旋转,像A和B这样的两个引脚将通过公共引脚接触。因此,可以相应地生成两个方波输出信号。
这里,旋转位置可以通过使用两个输出中的任何一个来确定。但是,如果我们想决定旋转的方向,那么我们必须同时考虑这两个信号。
我们可以观察到,这两个o/p信号以90度的相位偏移移动。如果此编码器按顺时针方向转动,则输出a将在输出B之后。
每次,如果我们计算步数,那么信号将从低变为高或从高变为低。到那时,我们可以观察到像A和B这样的两个输出信号将具有相反的值。
如果这个编码器是逆时针旋转的,那么两个输出信号将具有相同的值。考虑到这一点,我们可以简单地对控制器进行编程,以研究编码器的位置和旋转方向。
旋转编码器类型
这些编码器分为两种类型,包括以下类型。
- 增量类型
- 绝对类型
增量旋转编码器
增量旋转编码器用于提供一系列的低频和高频。这些波浪将指定位置的移动。由于轴的旋转运动,这些类型的编码器将在脉冲形式内提供一系列周期性信号。
物体的速度可以通过脉冲计数测量一段时间。这些脉冲可以简单地从参考点开始计数,以确定所覆盖的位置。
增量旋转编码器产生两个数字o/p信号,其中这两个传感器之间的相位关系将决定编码器的轴是顺时针旋转还是逆时针旋转。因此,通过使用这个编码器,可以简单地确定位置。
一旦发光二极管产生光,它就会穿过一个水晶般透明的圆盘。一旦光传感器接收到该光信号,就可以产生正弦信号,该正弦信号被改变为脉冲串或方波。脉冲波可以向旋转计数器传输,旋转计数器将传输信号以产生优选函数。
绝对旋转编码器
一旦从旋转编码器断开电源,就使用绝对旋转编码器来保持位置信息。一旦提供电源,该编码器的位置立即可用。
该编码器通过不同的二进制加权包括不同的代码环,其提供用于表示旋转编码器在单圈中的绝对位置的数据字。因此,这种类型的编码器也被称为并行绝对编码器。
多圈绝对旋转编码器主要包括额外的齿轮和编码轮。高分辨率的齿轮可以测量较低分辨率的分数旋转,而低分辨率的齿轮编码齿轮可以记录轴的完整旋转。
旋转编码器连接图
带有Arduino的旋转编码器接线图如下所示。旋转编码器与轴一起可以改变角度位置,否则轴的运动。该编码器的输出提供了关于轴的运动的信息,这些信息通常在控制器或处理器内处理成距离、位置和速度等信息。轴的旋转角度为360度。
此接线图所需的材料主要包括Arduino Uno、旋转编码器、USB电缆3、从母线到公线的跳线等。

这个旋转编码器与Arduino Uno的接口可以如下所述进行。
- 将编码器的VCC引脚连接到Arduino的5V引脚
- 将编码器的GND引脚连接到Arduino的GND针脚
- 将编码器的CLK引脚连接到Arduino的D3引脚
- 将编码器的CLK引脚连接到Arduino的D4引脚
连接完成后,将Arduino Uno板连接到您的电脑。将编码器上传到您的Arduino Uno板中。单击工具->选择串行监视器,您将在串行监视器上找到BEGIN。因此,现在您可以开始转动编码器的轴,并观察串行监视器上的打印输出。
顺时针转动轴后,串行监视器将打印编码器计数。
读取与Arduino Uno接口的旋转编码器的代码
以下是代码
/**************
*VCC至5V*
*GND到GND*
*CLK至D3*
*CLK至D4*
**************/
int pinA=3;
int针B=4;
int encoderPosCount=0;
int pinALast;
整数aVal;
布尔bCW;
无效设置()
{
//设置引脚A和引脚B以及输入
引脚模式(引脚A,输入);
引脚模式(引脚B,输入);
pinALast=数字读取(pinA)//读取引脚A
序列号:begin(9600);
Serial.println(“开始”);
Serial.println()序列号;
}
空心环()
{
aVal=数字读取(pinA);
if(aVal!=pinALast)
{
if(digitalRead(pinB)!=aVal)//我们正在顺时针旋转
{
编码器位置计数++;
bCW=真;
}
其他的
{
bCW=错误;
encoderPosCount–;
}
如果(bCW)
{
Serial.println(“顺时针旋转”);
}
其他的
{
Serial.println(“逆时针旋转”);
}
Serial.print(“编码器计数:”);
Serial.println(编码器端口计数);
Serial.println()序列号;
}
pinALast=aVal;
要执行的代码旋转编码器与微控制器的接口除了应使用微控制器特定的Api之外,与上述相同。
优势
这个旋转编码器的优点包括以下内容。
- 这些都是可靠的
- 精确的
- 分辨率高
- 尺寸紧凑
- 较少的成本反馈
- 集成电子设备
- 可以包含在现有应用程序中
这个旋转编码器的缺点包括以下内容。
- 它很容易受到油、污垢和灰尘污染物的影响。
- 直接光源的接口。
应用
这个旋转编码器的应用包括以下内容。
- 这些用于需要速度、方向、加速度和监测转速的情况。
- 这些应用于不同的行业,如物料搬运、包装和输送机。
- 在自动化领域,这些编码器被用作速度、角度、加速度和位置的传感器。
- 这些用于通过使用齿条、心轴、拉线或测量轮来测量线性运动。
- 这些编码器用于在工业中使用转速表、计数器、PLC系统和PC将机械输入转换为电信号。
- 这些产品用于包装、装配机、指示系统、打印机、数控机床、测试机、机器人、纺织品、电机反馈、医疗设备、钻孔和贴标机。
旋转编码器的精度如何?
旋转编码器的精度通常可以用度或角秒来表示。
什么是最准确的编码器?
绝对光学轴编码器是最准确的,因为它的典型精度为0.18度(10.8弧分),最大精度为0.25度。
编码器可以是转换器吗?
是的,换能器具有发射和接收数据的能力。
旋转编码器有什么用?
旋转编码器主要用于控制输送带的速度及其运动方向。
角度编码器是如何工作的?
角度编码器是一种用于测量旋转轴角度位置的位置传感器。
因此,这一切都是关于旋转编码器及其工作的概述。这些编码器在某些恶劣条件下会出现故障。在这种情况下,编码器故障主要有三种常见原因,如液体污染、机械轴承过载和信号输出故障。因此,旋转编码器将停止工作,否则系统将随机工作。这里有一个问题要问你,解码器的功能是什么?