发作品签到
专业版

【FOC】一个简单的有感FOC电调

工程标签

884
0
0
2

简介

一个简单的云台电机有感FOC驱动,实现了电机的力矩控制。软件只实现了基本的svpwm和定点数电流环,可以二次开发。主控为AT32F421,相电流检测ic为ina240a1。角度传感器为as5600。

简介:一个简单的云台电机有感FOC驱动,实现了电机的力矩控制。软件只实现了基本的svpwm和定点数电流环,可以二次开发。主控为AT32F421,相电流检测ic为ina240a1。角度传感器为as5600。

开源协议

CERN Open Hardware License

(未经作者授权,禁止转载)
创建时间:2024-09-17 12:57:28更新时间:2024-10-08 16:14:00

描述

2024年10月1日编辑:

国庆节快乐!

1.  两个Bulk电源(位号U4和U11)的小输出电容(位号C16,C25)应当不贴。因为此bulk是COT电源,小容量mlcc在回路中会震荡。(炸了两次)

2. 电机在工作时存在较大干扰。具体表现在12V的电源、单片机输出的PWM信号上都有尖刺。如果以后更换大功率的电机,则干扰会更大。初步的解决方案是在母线上增加更多的100nf滤波电容、12V电源取电位置前移到电源输入口、

3、今天第一次公布代码。代码遵循GPL3.0开源协议。代码里实现了有感foc的单向转动和六步换相功能。其中六步换相没有在云台电机上测试,只在一台航模电机上测试。

 

===================以下为正文===================

 

对FOC感兴趣。本着“觉知此事要躬行”的态度,自己设计了一套FOC软硬件。以下是主图:

硬件上:主控采用AT32F421,CM4内核,120MHz主频;相电流采样ic为ina240A1;角度传感器为AS5600;功率级采用eg3116预驱+042n10n,有足够大的功率余量。使用的电机为闲鱼购买的云台电机。

软件上:实现了6步换相(检验硬件设计)、全定点数的SVPWM生成、电流环PID和Clarke/Park变换(只有乘和加,移位代替除法),性能较高。

 

本工程的svpwm生成方法参考了文章https://zhuanlan.zhihu.com/p/414721065

https://zhuanlan.zhihu.com/p/303998608,感谢这两位作者的无私奉献。在本工程中,角度的正弦和余弦值采取查表法,角度分辨率为8位。在计算时,事先将三角函数值乘8192(2^13),直到最后计算定时器值时再右移13位。同理在进行Clarke变换和PID时也采取类似操作。这样可以最大限度地保持精度,且计算中只有乘和加运算,效率较高。下图为采取定点数方法产生的SVPWM定时器值。横坐标为角度,纵坐标为PWM占空比的定时器值。

SVPWM定时器值

输出的相电流波形如下图所示。相电流值是串口输出的,可以看到波形较为完美(当然可能因为串口速度过慢而损失了高频部分分量)。单片机端控制采样时序为PWM周期的中点(中央对齐PWM)。

相电流波形

最后,本工程的软件仍在开发中。目前只实现了基本的转动,仍需要一定时间的整理后才能开源。

设计图

未生成预览图,请在编辑器重新保存一次

BOM

暂无BOM

附件

序号文件名称下载次数
1
at32_foc.zip
94
克隆工程
添加到专辑
0
0
分享
侵权投诉

评论

全部评论(1
按时间排序|按热度排序
粉丝0|获赞0
相关工程
暂无相关工程

底部导航