一. 简介
哈喽,感谢各位选择AuroraFOC开发板,在这里将对其进行一个详细的介绍,方便大家使用。并且对提供的工程文件和上位机的操作也进行了详细的说明。
有什么疑问或者好的建议 可以微信联系: WU1356742146
最后再次感谢大家的支持。
AuroraFOC 开发板功能展示啦(含开源仓库介绍)
二. 开发板详细参数
-
电源供电: 7.4-14V
-
主控: STM32F405RGT6,64pin,主频168M,1M FLASH,192KB RAM
-
电机驱动: 使用FD6288作为驱动芯片,使用SED3080M 30V80A 83W作为驱动NCMOS,PCB最大电流建议控制在10A内,避免温升过大,可以同时驱动两路无刷电机,提供两种电机接口:MR30(大功率,航模电机)和SH1.0(小功率,云台电机)
-
电流采样: 使用INA240A2作为采样芯片,两相采样,放大倍数为50,采样电阻使用的是0.007R,最大采样电流为4.7A
-
电机编码器: 两路支持SPI/IIC接口的磁编码器,默认支持AS5047P编码器,
-
外部存储: 128 Mbit flash
-
其余模块: 1.47寸 LCD屏幕,MPU6050,CAN通讯,NRF24L01 2.4G,USB , 两个LED灯,旋转编码器按键
二. 字体下载
大家拿到AuroraFOC开发板的时候,里面是下载好了工程固件的,但是一些相关的资源可能没有下载,例如开机动画、字体文件和待机图片,其中开机动画和待机图片有无是不影响正常使用的,所以上电后的第一件事就需要下载字体文件。
1. 获取(制作)字体
我会给大家提供默认的三种大小的字体文件(微信私发),另外如果大家想制作自己的字体文件,可以在b站上看相关的视频。
2. STM32固件修改
第一次下载字体文件的时候,需要先将工程文件中LCD_thread线程里面的开机启动函数给注释掉,避免加载字体出现错误导致程序卡死。
3.上位机下载
使用我提供的上位机可以非常方便的将字体文件下载到开发板上去。
- 选择串口并且连接
- 将操作模式选择为文件模式
- 将设置里面的数据包大小为64,包间隔为30ms
- 选择字体大小和对应的字体路径,注意路径不要有中文
- 点击更新
- 等待下载完成
至此字体文件就顺利下载到开发板上去了,取消刚刚注释掉的开机启动函数,重新下载固件即可。
三.图片下载
图片下载和字体下载类似,而且比字体文件更新要方便的多。
- 准备好图片,图片类型为jpg,大小为320*172,并且全部放到一个文件夹下(开机动画和休眠图片分开存放),开机动画最多支持66张图片,休眠图片最多支持9张图片,开机动画可以使用我提供的python脚本将mp4转为一张张符合大小的图片。
- 选择对应的文件夹
- 将设置里面的数据包大小为64,包间隔为30ms
- 点击对应的更新
- 等待发送完成
四. LCD 主界面介绍
开机动画完成后,LCD会进入主页面的一个显示,一共有四个选项可以选择:
-
模式选择: 校准电机 和 选择电机运行模式
-
波形显示: 将电机运行过程中的数据,使用波形的方式呈现出来
-
详细信息: 将电机运行过程中的数据,以文本的方式呈现出来
-
显示待机: 显示待机图片
通过旋转按钮左右旋转可以切换不同的选项,单击可以进入对应的选项页面,如果是双击的话,那么将会重启。
1. 模式选择
在模式选择界面中,可以通过旋转按钮只有旋转切换电机的运行模式: 暂停(默认),开环,电流环,速度环和位置环,正下方会有一个红色标识,指示当前操作的电机(默认为左电机,通过单击可以切换操作的电机。另外在第一次上电的时候,需要先对电机进行一个校准,用于电角度和机械角度对其,如果没有对齐的话,电机可能会无法正常旋转,大家可以在此界面长按旋转按钮,便会自动进行电机校准。
双击 即可返回主界面,电机运行模式保持。电机三环控制的PID参数需要通过上位机进行设置
2. 波形显示
在波形显示的界面中,如果对应的电机处于非暂停状态,那么界面就会显示对应的波形,通过左右旋转旋转按钮,可以切换波形显示的类型,总共支持的波形显示类型有如下几种: 三相的占空比,三相电流,IqId轴电流,IalphaIbeta轴电流,电机的机械角度。
双击 即可返回主界面,波形显示的最大值和最小值需要通过上位机进行设置
3. 详细信息
在详细信息界面中,可以实时显示电机的Uq,电流,速度和位置的值,以及在对应环下的一个期望值。
双击 即可返回主界面。
4. 显示待机界面
在显示待机界面中,显示的一张张待机图片,左右旋转按钮可以切换图片
双击 即可返回主界面。显示的图片需要通过上位机更新。
五. 上位机介绍
待定
六. CAN功能使用
待定
七. NRF24L01 无限模块使用
待定
八. USB HID使用
待定
九. BootLoader使用
待定
以上部分会随着开发的过程而更新