找回密码
 立即注册

QQ登录

只需一步,快速开始

打印 上一主题 下一主题
开启左侧

15万转无感FOC: 高压风机水泵吸尘器,冰箱空调压缩机

  [复制链接]
71#
 楼主| Angus 发表于 2024-5-30 12:32:37 | 只看该作者
本帖最后由 Angus 于 2024-5-30 13:53 编辑

高压电机控制的 CPU 部分。


回复 支持 反对

使用道具 举报

72#
 楼主| Angus 发表于 2024-5-30 13:32:47 | 只看该作者

高压无感 FOC 代码执行后,用 PinView 查看引脚配置


回复 支持 反对

使用道具 举报

73#
 楼主| Angus 发表于 2024-6-2 17:07:38 | 只看该作者
本帖最后由 Angus 于 2024-6-3 18:06 编辑

用新唐 M451 做的一个 24V 的空气泵,无感 FOC 控制。

反复启动的视频

24V泵反复启动的视频.zip (5.72 MB, 下载次数: 150)

示波器一大格是50ms,  可以看出,起动时间每次都不到 0.05秒。
回复 支持 反对

使用道具 举报

74#
 楼主| Angus 发表于 2024-7-1 11:00:37 | 只看该作者
本帖最后由 Angus 于 2024-7-15 13:35 编辑

积分饱和

假如输出电压最高时,电机达到最快的 5Krpm,电流稳定在3A。如果设定转速此时是 6Krpm, 转速误差仍有1K, 转速 PI 运算中的积分运算,仍会一次次增加电流设定值,一直加到控制器电流上限,假如是 20A 。  

这时如果转速设定值突然变成 4Krpm,转速 PI 结果——设定电流,从20A慢慢往下降,在降到 3A 前,输出电压不会降,所以转速不会降、保持5Krpm。只有电流降到 3A 再降时,输出电压才开始降,转速也才开始从 5k 往下降。 转速控制会有一个长时间的滞后才反应过来。这就是积分饱和、造成的不良后果。
一个性能优良的电机控制代码,一定有积分抗饱和运算



回复 支持 反对

使用道具 举报

75#
 楼主| Angus 发表于 2024-7-15 16:18:28 | 只看该作者
本帖最后由 Angus 于 2024-9-12 16:23 编辑

积分抗饱和的方法

网上查一下,有很多种抗积分饱和的方法,比如,积分分离法,输出限幅法,等等。

我们24年7月以后的代码,积分抗饱和方法是:每次做转速PI 前,检查若转速误差为负(表明指令要降速)并且输出饱和了,就让电流设定值=电流测量值,这样接下来的转速PI 计算结果,一定是降输出电压,也就是退出饱和,要降速了。

回复 支持 反对

使用道具 举报

76#
 楼主| Angus 发表于 2024-7-18 09:09:04 | 只看该作者
本帖最后由 Angus 于 2024-8-2 09:06 编辑





采用状态 3 起转,起转前不需要锁定


回复 支持 反对

使用道具 举报

77#
 楼主| Angus 发表于 2024-7-20 11:11:34 | 只看该作者
本帖最后由 Angus 于 2024-9-15 16:05 编辑

新唐M451 无感FOC 代码,做MTPA控制。

先介绍一下理论。文字中的符号, 要显示出来,必须单独上传图片,为了省事,我只好先写成 word 文件,再截成一个大图片上传了。

电流分量代入转矩公式,得


MTPA 控制就是给定电流Is,求角度等于多少时,转矩最大。求导=0得



解这个一元二次方程,得

不同Is对应的超前角可做一个折线。假如最大工作电流是32A,做8个点,4A一个点。算出N = 8*Is/32=Is/4 (取整),则Is对应的超前角在点[ N], [N+1 ]之间,按下式做一个线性计算就可得到角度



M451的无感FOC 代码,起转时Id=0,起转成功能后,第277行代码,切同步前把超前角 Angle_Fai 写成 0,如果以后不再改这个超前角,就是 Id=0 控制。



若要做 MTPA 控制,就在 SysTick 中断里、转速 PI 运算得出 Is 后,再查表求出超前角 Angle_Fai就可以了,求 Iq,Id的代码已写好。




M451做MTPA 控制.pdf

332.75 KB, 下载次数: 113

回复 支持 1 反对 0

使用道具 举报

78#
 楼主| Angus 发表于 2024-8-2 09:00:30 | 只看该作者
Angus 发表于 2023-10-3 21:30
M451无感FOC方案特性:
1,磁链估计,比电流估计精度好。
2,dq轴估计,比静态坐标轴估计误差小,因为Ld,Lq ...

观测器理论不错,起转效果也不错。PWM 中断只用了 20us 多点,MCU 还有很多算力可以利用,接下来是加上高频注入法呢,还是加上 PFC 功能呢 ?

高频注入法中的旋转电压法,可做到 0 速时测到磁铁位置,让电机像有感一样转动,听起来就不错。

冰箱,洗衣机,大风扇等 220V 的应用都需要 PFC 功能,并不在意起转时,反转一个小角度。一个芯片做成电机控制+PFC 是个很受欢迎的方案。
回复 支持 反对

使用道具 举报

79#
 楼主| Angus 发表于 2024-8-13 11:39:16 | 只看该作者
MTPA 控制就是用最小的电流,获得最大转矩 。为什么要获得最大转矩,基础理论是什么 ?

牛顿第二定律  

力矩 = 半径 叉乘 力,
把 "质量与半径平方的积" 定义为转动惯量 J 后,转矩与角速率的关系,和牛顿第二定律一样,称为转动的牛顿第二定律

上式可见,相同的转动惯量,转矩大,角速率的斜率大,即提速快。如果没有摩擦力,会一直加速。
实际的负载——被外力驱动的物体,转速与转矩的公式,是下式:B 是一个常量系数

这是个一阶微分方程,解这个微分方程,可得转速公式与转矩的关系式为:

此函数的形状是这样的。最终转速是 M/B


对于同一个负载,显然,若外加的转矩大,不仅最终的转速高,提速也快。

如果不需要达到电机的最高转速,转矩大的电机,负载达到设定转速的时间短。



回复 支持 反对

使用道具 举报

80#
 楼主| Angus 发表于 2024-8-13 15:00:09 | 只看该作者
本帖最后由 Angus 于 2024-8-13 15:17 编辑

MTPA 控制为何比Id=0控制,消耗的电流会小

假定转矩 T 是个常数,电流 iq,id 就是反比关系,Te 公式的意义,见前面回帖。



Iq 与 Id 的函数图像,可以看成是  y= - 1/x 向右平移。如下图

控制器的输出功率,与电流的模有关,即 Is

以 Is 为半径的圆上,控制器的输出功率是相等的。

在电机基速以下,即未达到最快转速时,下图蓝色 Te 是等转矩线,可以理解为负载等转速线(确切来说,应是输出转矩曲线才是负载等速线)。其原理见楼上回帖的讲解。

如果采用 MTPA 控制,达到这个转速,所需电流是蓝色箭头 Is2 。

如果采用 Id=0 控制,达到这个转速,需要的电流是红色箭头 Is1,已超出以 Is2 为半径的圆圈 。

此图很明显得看出,相同转速, MTPA 控制所需的电流 Is2比 Id=0控制所需的电流 Is1 小。



回复 支持 反对

使用道具 举报

高级模式
B Color Image Link Quote Code Smilies |上传

本版积分规则

新唐MCU