SimpleFOC之ESP32(三)—— 闭环控制

目录

  • 一、硬件介绍
    • 1.1、原理图
    • 1.2、ESP32drive方案
      • 1.2.1、准备清单
      • 1.2.2、硬件连接
    • 1.3、SimpleFOCShield方案
      • 1.3.1、准备清单
      • 1.3.2、硬件连接
  • 二、代码演示 — I2C接口
    • 2.1、I2C接口说明
    • 2.2、速度模式
    • 2.3、位置模式
  • 三、代码演示 — SPI接口
    • 3.1、SPI接口说明
    • 3.2、修改示例



SimpleFOC教程目录:请点击

一、硬件介绍

1.1、原理图

SimpleFOC之ESP32(三)—— 闭环控制_第1张图片

1.2、ESP32drive方案

1.2.1、准备清单

序号 名称 数量
1 USB转串口 1
2 ESP32drive 1
3 带编码器电机 1
4 12V电源 1
5 杜邦线 若干


电机 购买链接:某宝购买
ESP32drive 购买链接:某宝购买

1.2.2、硬件连接


1.3、SimpleFOCShield方案

1.3.1、准备清单

序号 名称 数量
1 ESP32-DevKitC 1
2 simpleFOCShield V2.0.3 1
3 云台电机 1
4 USB线 1
5 12V电源 1
6 杜邦线 若干


电机 购买链接:某宝购买
SimpleFOCShield 购买链接:某宝购买

1.3.2、硬件连接

ESP32-DevKitC V2.0.3
25 5
26 9
27 6
33 8
3V3 3V3
GND GND

如果是AS5600编码器,如下

ESP32-DevKitC AS5600电机
22 SCL
21 SDA
3V3 VCC
GND GND

如果是AS5047编码器,如下

ESP32-DevKitC AS5047P电机
23 MOSI
19 MISO
18 SCLK
5 SS
GND GND
3V3 VCC

ESP32最小系统板和驱动板共地

二、代码演示 — I2C接口

2.1、I2C接口说明

2.1.1、ESP32有GPIO交换矩阵(IO_MUX),所以I2C接口可以配置为任意IO口;
SimpleFOC之ESP32(三)—— 闭环控制_第2张图片
2.1.2、在ESP提供的驱动中,I2C接口默认为GPIO21和22,如需修改引脚可参考图中;
SimpleFOC之ESP32(三)—— 闭环控制_第3张图片
2.1.3、ESP32有2个I2C接口,驱动中已经声明了两个I2C的结构体:Wire和Wire1
SimpleFOC之ESP32(三)—— 闭环控制_第4张图片

SimpleFOC之ESP32(三)—— 闭环控制_第5张图片

2.2、速度模式

2.2.1、打开示例
这个示例为角度模式,但是只需修改下控制模式就可以更改为速度模式,
SimpleFOC之ESP32(三)—— 闭环控制_第6张图片

2.2.2、修改程序
示例为只读文件,修改需先另存为,
SimpleFOC之ESP32(三)—— 闭环控制_第7张图片
SimpleFOC之ESP32(三)—— 闭环控制_第8张图片

2.2.3、验证上传
上传完毕后,按复位键重启。
SimpleFOC之ESP32(三)—— 闭环控制_第9张图片

2.2.4、串口发送指令
输入T20,T为指令,20表示20rad/s,
SimpleFOC之ESP32(三)—— 闭环控制_第10张图片

2.2.5、观察电机运行

2.3、位置模式

修改控制模式为角度模式,根据实际情况调整下PID,其它与速度模式一样,这个代码本来就是角度模式的示例;
SimpleFOC之ESP32(三)—— 闭环控制_第11张图片

三、代码演示 — SPI接口

3.1、SPI接口说明

翻遍代码,阅尽人间繁华,终于找到了对SPI接口引脚的定义,
SimpleFOC之ESP32(三)—— 闭环控制_第12张图片

3.2、修改示例

这个示例本来就是SPI接口的,把第1个修改点改回去就行,其它不用动,
SimpleFOC之ESP32(三)—— 闭环控制_第13张图片
其它操作参考上面的I2C接口的修改,如果是直接在上面I2C的基础上修改,注意根据电机类型的差异修改对应的参数,比如:极对数、voltage_sensor_align和PID等。


(完)


欢迎加入simpleFOC技术交流群:923734429 群已满根据提示添加新群 (入群申请写:CSDN)


请继续阅读相关文章:
SimpleFOC之ESP32(一)—— 搭建开发环境
SimpleFOC之ESP32(二)—— 开环控制
SimpleFOC之ESP32(三)—— 闭环控制
SimpleFOC之ESP32(四)—— 电流闭环控制Inline
SimpleFOC之ESP32(五)—— 电流闭环控制Lowside
SimpleFOC之ESP32(六)—— 双电机控制
SimpleFOC之ESP32(七)—— 霍尔电机
SimpleFOC之ESP32(八)—— ABZ编码器电机
SimpleFOC之ESP32(九)—— WIFI、UDP和TCP
SimpleFOC之ESP32(十)—— ESP-NOW和力矩反馈

你可能感兴趣的:(simpleFOC,SimpleFOC,ESP32,电机驱动器)