什么是旋转编码器?

旋转编码器,也称为轴编码器,是一种机电设备,可将轴或轴的角位置或运动转换为模拟或数字输出信号。

旋转编码器主要有两种类型:绝对式和增量式。绝对编码器的输出指示当前轴位置,使其成为角度传感器。增量编码器的输出提供有关轴运动的信息,这些信息通常在其他地方处理成位置、速度和距离等信息。

旋转编码器用于需要监视或控制机械系统或两者兼而有之的广泛应用,包括工业控制、机器人、摄影镜头、计算机输入设备,如光机械鼠标和轨迹球、受控应力流变仪和旋转雷达平台。

旋转编码器的工作原理是通过检测旋转部件上的位置变化来测量角度。它可以使用两种主要类型的编码器:增量编码器和绝对编码器。

增量编码器:

增量编码器通过在旋转部件上安装光学或磁性刻度来工作。这些刻度通常具有固定的间隔,用于测量旋转部件的位置变化。 当旋转部件旋转时,增量编码器会发出脉冲信号。每个脉冲代表旋转部件旋转一个固定的角度,通常称为计数单位。 通过计数脉冲的数量和方向,可以确定旋转部件的准确位置和旋转方向。

绝对编码器:

绝对编码器可以直接测量旋转部件的绝对位置,而不仅仅是位置变化。 绝对编码器通常使用多个刻度和传感器来实现。每个刻度上都有一个唯一的编码模式,可以识别旋转部件的绝对位置。 当旋转部件旋转时,传感器会读取刻度上的编码模式,并将其转换为相应的位置值。 绝对编码器可以提供非常准确的角度测量,但通常更昂贵。

旋转编码器是如何工作的?

旋转编码器(rotary encoder)也称为轴编码器,是将旋转的机械位移量转换为电气信号,对该信号进行处理后检测位置速度等信号的传感器。检测直线机械位移量的传感器称为线性编码器。一般装设在旋转物体中垂直旋转轴的一面。旋转编码器用在许多需要精确旋转位置及速度的场合,如工业控制、机器人技术、专用镜头、电脑输入装置(如鼠标及轨迹球)等。

旋转编码器可分为绝对型(absolute)编码器及增量型(incremental)编码器两种。增量型编码器也称作相对型编码器(relative encoder),利用检测脉冲的方式来计算转速及位置,可输出有关旋转轴运动的信号,一般会由其他设备或电路进一步转换为速度、距离、每分钟转速或位置的信号。绝对型编码器会输出旋转轴的位置,可视为一种角度传感器。

二者的主要区别在于码盘的结构和输出信号的形式不同。增量型编码器输出的是脉冲信号,而绝对编码器输出的是二进制的数值。

如何使用旋转编码器?

选型 在选型或采购旋转编码器的时候,需要从多方面进行考虑,特别是在技术参数上需要进行一个技术参数上的参考:包括编码器的尺寸、类型、分辨率、电气接口等等,总的来说,第一步则是判断应用需要的是增量编码器、绝对编码器还是换向编码器。一经确定,就必须考虑分辨率、安装方式、电机轴尺寸等其他参数。(对磁场环境有要求的务必不能选择磁电技术的编码器!!!)

除了编码器的定位止口,轴径,安装孔位,安装空间体积等常规参数,还需考虑比如:安装空间与选定轴的形态(中空轴、杆轴类)、以及连接线缆类型

分解率精度 在考虑组装机械装置的要求精度和机械的成本的基础上,选择最适合的产品。一般选择机械综合精度的1/2~1/4精度的分辨率。

输出电路方式 对增量型编码器而言,其输出电路有很多类型,当使用高速计数器对编码器的脉冲信号进行计数时,必须首先搞清楚该编码器的输出类型才能正确的接线并调试。 增量型编码器的输出电路包括集电极输出(Collector Output)型、电压输出(Voltage Output)型、推挽输出(Push-Pull Output)型及线驱动输出(Line Driver Output)型。输出电路的核心元器件是三极管。我们知道三极管有三个极:基极(Base)、发射极(Emitter)和集电极(Collector)。

最合适的输出信号类型并不总是那么明显,而且往往受到忽视。最常见的三种类型是开集输出(电压输出-E)、推挽输出(F型HTL格式)和差分线路驱动器输出。本文将分别介绍这三种输出类型,帮助大家根据具体应用需求选择合适的设备。

旋转编码器的供应商有哪些?

  • 日本 NEMICON(内密控)
  • 韩国 Autonics
  • 欧姆龙(OMRON)自动化
  • 宜科(ElCO)电子
  • 西克(SICK)传感器
  • 无锡瑞普海德
  • 长春禹衡光学
  • 光洋电子(无锡)
  • 上海佳武自动化

    从哪里选型和购买旋转编码器?

    当选型和购买旋转编码器时,有几个关键要考虑的因素:

1. 分辨率:旋转编码器的分辨率决定了它能够检测到的旋转角度的精度。通常以每转的脉冲数(PPR)来表示,较高的PPR意味着更高的分辨率。

  1. 接口类型:旋转编码器的接口类型取决于你的应用需求。常见的接口类型包括模拟输出、数字脉冲输出(如A、B相信号)和通信接口(如SPI、I2C等)。
  2. 尺寸和安装方式:根据你的应用空间和安装要求,选择合适的旋转编码器尺寸和安装方式,如轴式、中空式、平面式等。
  3. 工作电压和电流:确保旋转编码器的工作电压和电流与你的电路系统匹配。
  4. 品牌和质量:选择可靠的品牌和供应商,确保旋转编码器的质量和售后服务。

以下是一些旋转编码器选型和购买的在线资源链接:

  1. Mouser Electronics: https://www.mouser.com/
  2. Digi-Key Electronics: https://www.digikey.com/
  3. Allied Electronics: https://www.alliedelec.com/
  4. 示例

    from encoder import Encoder from machine import Pin ,PwM, SPI from ssd1306 import SSD1306_SPI # from sh1106 import SH1106_SPI from sprite import DataDisplayScreen from EC11 import EC11 led0 = PwM(Pin(16),freq = 200000,duty = 0) led1 = PwM(Pin(17),freq = 200000,duty = 0) # 。Pin1(GND):一个接地引脚。 # . Pin2(vcC):与3.3V或5V一起工作的正电压电源引脚。 # . Pin3(sW):这是低电平有效按钮开关。按下旋钮后,电压将为低。 # 。DT (Output B):类似于时钟输出,但是它以90°相移滞后时钟。所以,这个输出可以用来决定旋转的方向。 # 。CLK (Output-A):这是主输出信号,用于确定旋转量。每次,编码器中的旋钮都会通过一个棘爪向任何方向转动。“CLK'的输出将经历一个高周期&之后的低周期。 e = Encoder(0,1,Pin.PULLUP ,maxval=10000,min_val=-10000) eButton = Pin(13,Pin.IN,pull = Pin.PULL_uP) # 初始化spi总线 # 初始化oled显示 spi = SPI(1, 100000, mosi=Pin(pincfg.spi1mosi), sck=Pin(pincfg.spi1sck)) oled = SSD1306SPI(128, 64, spi, Pin(pincfg.spi1dc),Pin(pincfg.spi1rstn), Pin(pincfg.spi1_cs)) dds1 = DataDisplayScreen(y = 40,delta = 1,height = 0.5) def show( ): dds1.draw(display)
    display.show()
    value = 0 while True: display.fil1(0)
    # if e.value < value: # print( '—') display.text(str(e.value) ,0,0)
    if not eButton.value():
    display.text(“Button” ,0,8)
    dds1re.value
    value = e.value
    # dds2+ea.value() show()