1:硬件介绍
CPU型号:esp32-wroom-32E,双核CPU,支持蓝牙和WIFI.
所支持的编码器:AS5600-IIC,AS5047-ABZ,SPI,MT6701-ABZ等
支持直流无刷电机:航模电机,云台电机,霍尔电机
所用驱动库:simplefoc.
编译器:arduino,platformio
电源支持范围:12-24V,
选择电源请根据无刷电机的电压要求选择合适的电源电压。
电源指示灯:LD1,CPU指示灯:LD2
SPI接口端子型号,sh1.0-6P.
图1
烧录所用的串口模块:USB转TTL串口,如图2:
图2
可在网上自行选择或者点击如下链接查找:
下载程序所用编译器为arduino,编译器1.8.9安装教程可参考如下链接:
SimpleFOC之ESP32(一)—— 搭建开发环境_esp32开发环境_loop222的博客-CSDN博客
或者也可以安装其它版本的arduino.。
esp32开发板 Arduino IDE 2.0环境搭建--2022年记录_esp32 ide_dandantcb的博客-CSDN博客
本教程以arduino2.0.4编译器做烧录演示。
1:打开arduino编译器
2:左上角,点击 文件-打开,或者按ctrl+o,本例程以
5_esp32_current_control_lowside_2804_v2.2.2程序为例进行演示烧录调试流程。
调试强烈建议用闭环模式,开环模式由于会发热,不能长时间开环。
图3
图4
3:编译前请选择开发板型号:esp32 dev module,串口端口。
图5
4:预编译只对文件进行编译,不进行烧录,由于arduino编译很慢,建议打开后先预编译一次,后续只要不关闭,编译加下载就会比较快
图6
5:程序下载连线,请按图7所示进行连接串口线,分别为:
串口模块:GND<---->GND, esp32驱动板
TXD<---->RXD,
RXD<---->TXD;
注意:RXD,TXD要交叉连接
串口模块另一端连接到USB端口即可。
ESP32驱动板与串口接口连线如图8:
图 7
图8
8:程序编译烧录。
当开始烧录是,对esp32驱动板打开12V电源。
然后确认下工具项下的模块和串口是否设置好,见图片右下角红框,
此时点击编译加烧录图标,开始进行编译,如图9
当出现如图10所示connecting…..时,同时按下RST和BOOT键,然后先松开RST键,再松开BOOT键即可开始烧录,
注意:当出现connecting….时,要及时按下按钮,出现connecting..的时间大约10秒左右,错过了就要重新烧录
图9
图10
当出现图10红框中的字体时,烧录成功。
图10
9: 断电后,连接2804电机和AS5600编码器,如图 11,实物连线如图12
图11
图12
10:首先打开arduino串口和串口监视器,设置波特率为115200,
当连好电源和串口,以及电机三相线和编码器线后,进行电机调试。
如图13,图14
图13
图14
当打开12V电源后,驱动板开始进行自检动作,此时会发现电机会来回小幅旋转,
然后停止。串口会显示自检成功信息,如图15,如果编码器线没连好,
或者电机线没连好显示如图16,请检查连接线是否接好。
如果启动时电机会动,则是编码器线没接好。
图15
图16
11,当自检正常后,可以向串口发送指令
本程序设置的是速度模式,如图17,当发送指令时,会按指令的速度旋转。其他模式可以参考提供的其他程序代码
图17
发送T5指令如图18,然后按回车,电机即开始旋转。
T代表指令,5代表5rad/s,发送T0电机停止运转。
本教程是以2804电机和AS5600编码器为基础来写的,其他的电机也有对应的程序代码,可以仿照本教程来操作。如在操作中有疑问,可以联系博主