旋转编码器
第一个编码器:
是一种最简单的编码器样式,使用对射式红外传感器来测速,为了测速,需要配合一个光栅编码盘,当编码盘转动时,红外传感器的红外光就会出现遮挡、透过、遮挡、透过的现象,对应模块输出的电平就是高低电平交替的方波,方波个数代表转过的角度,方波频率代表转速。那就可以用外部中断来捕获这个方波的边沿,以此判断位置和速度,不过模块只有一路输出,正转反转没法区分,无法测量旋转方向
第二个编码器:
左边是外观,右边是拆解结构
内部用金属触点来进行通断,所以是一种机械触点式编码器
左右是两部分开关触点,内侧两根细的触点,都是和中间的引脚连接,外侧的触点,左边接在左边引脚,右边接在右边引脚,中间圆的金属片是一个按键,旋转编码器的轴是可以按下去的,按键的两根线在上面引出来了,按键的轴按下,上面的两根线短路,松手上面的两根线断开就是个普通按键。编码盘也是一系列像光栅一样的东西,只不过是金属触点,旋转时,依次接通和断开两边的触点,并且还有一个关键部分是:金属盘的位置经过了设计,能让两侧触点的通断产生一个90°的相位差,最终配合外部电路,编码器的两个输出就会输出这样的波形。相位相差90°的波形,叫正交波形,带正交波形信号输出的编码器是可以测方向的。单相输出和两相正交输出的区别。还有的编码器不是输出正交波形,而是一个输出方波信号代表转速,一个输出高低电平代表旋转方向
第三个编码器:
直接附在电极后面的编码器,霍尔传感器形式的编码器,中间是一个圆形磁铁,边上有两个位置错开的霍尔传感器,当磁铁旋转时,通过霍尔传感器就可以输出正交的方波信号,
第四个编码器:
独立的编码器器件元件了,输入轴转动时,输出就会有波形,也可以测速和测方向,具体用法再看相应的手册。
第二种是(一般用来调节,比如音响调节音量,因为是触点接触的形式,所以不适合电极这种高速旋转的地方)
另外几种都是非接触的形式,可以用于电机测速,电机测速在电机驱动的应用中还是比较常见。
先学外部中断读取编码器计次数据的用法,学习定时器之后,再看一下编码器测速的用途。
硬件电路
中间的框是旋转编码器,上面按键的两根线,模块并没有使用,是悬空的
下面是编码器内部的两个触点,旋转轴旋转时,这两个触点以相位相差90°的方式交替导通,因为这还只是开关信号,要配合外围电路才能输出高低电平,
R3位输出限流电阻,防止模块引脚电流过大的。
右边是使用这个模块的接线图:VCC和GND接电源,A相输出和B相输出接到STM32的两个引脚上(比如Pin0口和Pin1口,但是别相同),C引脚GND暂时用不到