目录

一、增量式编码器介绍

二、ESP32drive控制霍尔电机

  • 2.1、原理图
  • 2.2、读编码器获取角度
  • 2.2.1、硬件准备
  • 2.2.2、硬件连接
  • 2.2.3、代码演示
  • 2.2.4、观察角度输出
  • 2.3、控制电机
  • 2.3.1、硬件连接
  • 2.3.2、代码演示
  • 2.3.3、观察电机运行
  • 三、ESP32drive-D控制电机
  • 3.1、原理图
  • 3.2、硬件连接
  • 3.3、控制单个电机
  • 3.4、控制双电机
  • 3.4.1、打开示例
  • 3.4.2、修改代码
  • 3.4.3、观察电机运行
  • 3.4.4、双电机控制出现的问题
  • 问题总结分析

SimpleFOC教程目录:请点击

一、增量式编码器介绍

  • ABZ或者ABI,叫法不同但都是指 增量式编码器;
  • ABZ编码器最初是光电式的,近几年随着磁编码器的兴起,磁编码器上也增加了ABZ信号的输出;
  • A、B两相相差90度,可通过比较A相在前还是B相在前,以判断编码器的正转与反转,通过零位脉冲,可获得编码器的零位参考位。
  • 一般采用四倍频技术,比如500线的编码器,转一圈可以获得2000个脉冲信号,

二、ESP32drive控制霍尔电机

2.1、原理图

esp32gpio复用 esp32 simplefoc_ESP32

2.2、读编码器获取角度

2.2.1、硬件准备

序号

名称

数量

1

USB转串口

1

2

ESP32drive

1

3

带增量编码器电机

1

4

12V电源

1

5

杜邦线

若干

esp32gpio复用 esp32 simplefoc_电机驱动_02

ESP32drive 购买链接:https://item.taobao.com/item.htm?ft=t&id=662591519566,图锐科技 2804电机 购买链接:https://item.taobao.com/item.htm?ft=t&id=643573104607,图锐科技  

2.2.2、硬件连接

esp32gpio复用 esp32 simplefoc_编码器_03

2.2.3、代码演示

  • 2.2.3.1、打开示例
  • 2.2.3.2、修改代码

2.2.4、观察角度输出

  • 如果编码器的CPR设置正确,转动电机一圈,角度输出刚好是6.28 rad,

2.3、控制电机

2.3.1、硬件连接

esp32gpio复用 esp32 simplefoc_simpleFOC_04

ESP32drive 购买链接:https://item.taobao.com/item.htm?ft=t&id=662591519566,图锐科技 2804电机 购买链接:https://item.taobao.com/item.htm?ft=t&id=643573104607,图锐科技  

2.3.2、代码演示

  • 打开示例
  • 修改代码

2.3.3、观察电机运行

  • 性能和SPI接口差不多,
  • AS5047P和TLE5012B都经过了测试,TLE5012B的最大转速没有AS5047P的高,大概是因为TLE5012B的CPR比AS5047P大,导致进入中断的频率高,影响了单片机的处理速度。

三、ESP32drive-D控制电机

3.1、原理图

esp32gpio复用 esp32 simplefoc_编码器_05

3.2、硬件连接

序号

名称

数量

1

USB转串口

1

2

ESP32drive-D

1

3

带编码器电机

2

4

12V电源

1

5

杜邦线

若干

esp32gpio复用 esp32 simplefoc_simpleFOC_06

esp32gpio复用 esp32 simplefoc_esp32gpio复用_07

ESP32drive 购买链接:https://item.taobao.com/item.htm?ft=t&id=662591519566,图锐科技 2804电机 购买链接:https://item.taobao.com/item.htm?ft=t&id=643573104607,图锐科技  

3.3、控制单个电机

  • 代码在上面的ESP32drive的基础上修改,只需改动驱动引脚配置,

3.4、控制双电机

3.4.1、打开示例

esp32gpio复用 esp32 simplefoc_电机驱动_08

3.4.2、修改代码

esp32gpio复用 esp32 simplefoc_esp32gpio复用_09

3.4.3、观察电机运行

esp32gpio复用 esp32 simplefoc_esp32gpio复用_10

3.4.4、双电机控制出现的问题

  • 电机初始化一切正常,发送指令,电机转动也正常,但会逐渐失控,表现为转速越来越快,或者突然堵转。

问题总结分析

  • 单电机控制都正常,双电机控制不行,
  • 霍尔电机和ABZ编码器的处理方式都是利用引脚中断,在信号没有硬件和软件滤波的情况下,出现问题是正常的。
  • 目前只能学习演示,等待创作者升级。