当前位置:   article > 正文

stm32 FOC从零学习开发(一)FOC概念

stm32 foc

系列文章目录

`
一、stm32 FOC从零学习开发(一)FOC概念
二、stm32 FOC从学习开发(二)Clark变换与MATLAB仿真
三、stm32 FOC从学习开发(三)park变换与MATLAB仿真
四、stm32 FOC从学习开发(四)svpwm算法(1)
五、stm32 FOC从学习开发(五)svpwm算法(2)
六、stm32 FOC从学习开发(六)基于均值零序分量注入的载波SVPWM算法
七、stm32 FOC从学习开发(七)svpwm算法MATLAB仿真
八、stm32 FOC从学习开发(八)PID基础MATLAB仿真
九、stm32 FOC从学习开发(九)FOC MATLAB仿真



前言

FOC简介

FOC是Field Oriented Control的缩写,FOC(field-oriented control)为磁场导向控制,又称为矢量控制(vector control),是一种利用变频器(VFD)控制三相电机的技术,利用调整变频器的输出频率、输出电压的大小及角度,来控制电机的输出。由于处理时会将三相输出电流及电压以矢量来表示,因此称为矢量控制。
FOC是目前无刷直流电机(BLDC)和永磁同步电机(PMSM)高效控制的最优方法之一。FOC旨在通过精确地控制磁场大小与方向,使得电机的运动转矩平稳、噪声小、效率高,并且具有高速的动态响应。

一、FOC基础知识

关于foc的基础知识网上教程也比较多,包含电机原理,BLDC和PMSM原理,左手定则,右手定则,安培定则等等,拥有基本的高中知识就可以看懂,我也就不在这重复造轮子了,推荐稚晖君在知乎的回答:https://zhuanlan.zhihu.com/p/147659820

二、FOC控制框架

1.整体框图

在这里插入图片描述
从图中来一点一点分析,首先是当给定一个转速进来的时候,先经过转速环PI调节器,再经过电流环PI调节器,给出要运行的d、q值,至于d、q值就是经过park变换后的旋转坐标系矢量,可能刚开始看FOC的同学先接触到的就是Clark变换和park变换,但根据流程来看首先用到的其实是反park变换,得出来alpha和beta,也就是晶旋转坐标系的矢量转换为直角坐标系的矢量,再经过SVPWM算法计算出三相的PWM波形,才能够被逆变器所识别,这里逆变器其实就是相当于一个电流放大器,将生成的PWM波形放大成能够驱动电机的电流,就可以带动电机运转了。
但到这里还没完,这是第一个波形,电机只是接受到电流了,要怎么运转还是要看电流环与速度环的PID 控制,实际这里只用到PI控制就够了。电机将生成的hall信号或者编码器信号反馈给电流环,经过PID控制调节输出的d、q,同时电机将生成的速度反馈给速度环,也经过PID控制输出响应的速度给电流环,就又回到了第一个流程。如此循环往复,点机就转起来了。

2.控制过程

1、采集到两相电流

2、经过clarke变换后得到两轴正交电流量,

3、经过旋转变换后得到正交的电流量 Id、Iq,其中Iq与转矩有关,Id与磁通有关。在实际控制中,常将Id置为0。得到的这两个量不是时变的,因此可以单独的对这两个量进行控制,类似直流量控制一样。而不需要知道具体要给电机三相具体的电压为多少。

4、将第3步中得到的Iq与Id量分别送进PI调节器,得到对应的输出Vq和Vd;

5、通过传感器得到电机转过的角度。

6、进行逆park变换,得到二轴电流量。

7、对第6步中的Va,Vb进行逆clarke变换,得到实际需要的三相电压输入给逆变电桥,驱动电机转动。

结语

现在我也是在边学习边进行写作,有什么错误或遗漏的地方敬请各位大佬指出,我也可能有理解不到的地方,后续系列会进行陆续更新。

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/我家小花儿/article/detail/247988
推荐阅读
相关标签
  

闽ICP备14008679号