MATLAB永磁同步电机电角度,永磁同步电机控制方法以及五种常见问题的大咖讨论全过程整理...

本文讨论的内容有以下几个方面:掌握永磁同步电机的成熟控制方法和开发内容后如何转型。

永磁同步电机初始角设置的问题。

永磁同步电机控制的建模问题讨论,如模型仿真慢、联合仿真问题、PI控制问题等。

无位置传感器永磁同步电机控制方法和问题的讨论。

采用旋转高频注入法的PMSM无位置传感器simulink模型的问题讨论。

第一个问题“掌握永磁同步电机的成熟控制方法和开发内容后如何转型”讨论如下:

1.songwanjie

这几年做得永磁同步电机控制开发的事情:

(1)仿真:连续simulink+线性电机模型仿真,离散模型+线性电机+线性电机模型,q格式离散模型+线性电机模型,simplorer+ansoft+无位置开环和闭环q格式仿真,模拟实际电机的线性电机模型建立,matlabgui+simulink仿真。都是无位置开环切闭环模式,各种仿真变着花样玩,ekf,hfi,pll,atan,磁连观测,扩展反电视等各种无位置仿真。仿真和实际跑板子其实只要电流采样底层做得好,过调制出得来都可以和仿真对的上。

(2)电机参数识别,通过变频器激励与响应实现,其余的表示不靠谱,可以在电机启动前10s内辨识出来。没啥用。

(3) 控制性能优化,6次谐波自适应陷波滤波,sogi等手段。

(4) 压缩机驱动自动力矩补偿。

(5) svpwm简单快速实现与单电阻采样结合研究。

(6) 各种各样电机调试与性能测试,我调试的电机型号应该有上千款了,仅限于10w-20kw永磁同步电机,都快调试吐了,测试电机单体性能,带变频器运行极限测试。

现在不知道方向,也不知道怎么走?走mpc?无电解?

2.相由心生

我觉得楼主可以去做做汽车驱动电机驱动找找存在感。

3.陈四川

和楼主经历有些相似,说说我认为的出路吧:

(1)如果真的喜欢做技术,可以在工作中找些技术的挑战,给自己一些新鲜感。

(2)不要一直做电机控制的底层,没有太大出路,而且很容易被替代(因为老板看不到你的牛逼之处),应该往上做应用和行业,只有对行业应用理解更深了,才能指导电机控制。

(3)换行业,把自己积累的知识,在一个新的领域里面发挥作用,比如从家电换到变频或者车辆驱动。

第二个问题“永磁同步电机初始角设置的问题”讨论如下:

1.梦君箫城

我们知道对于永磁同步电机初始角设置:与转子旋转同步的激励使永磁体产生的磁通是最大的,则使永磁体磁化方向d轴旋转一个初始角度,使d轴指向A+与A-的中心线。

那么问题是初始角是一个定值吗?初始角与电机转矩有什么关系?

1.敦敦

是d轴与A相轴线重合,可以通过计算空载反电势时A相磁链最大来确定D轴。

2.梦君箫城

这也是好办法,但问题是,假设初始角应该是30度,那么我们现在把它设为37.5度或是其他接近30度左右,以降低模型在确定Thet角下的额定转矩,那么这个电机额定转矩工作状态下稳定吗???这样说吧!假设设计的永磁同步电机初始角应该设为30,但是初始角设为30度时电机的转矩过大,而电机的Thet角(功率角)一般在10—20度,那么在确定Theta角的情况下,能否改变一下初始角以降低转矩??

3.bldc菜鸟

电机控制的调试里除却方波驱动,基本都会有一个类似于超前角的变量,该变量非常重要,直接影响速度,效率和抖动性。改变该角可以降低输出转矩,但可能会带来其他问题。

4.梦君箫城

就是说假设初始角应该是30,也可以设置为其他接近与30度,如37.5度,在实际运行中会出现一些问题,但请问,可以稳定运行吗??能否输出额定转矩吗??

5.254339861

一个最简单的方法就是初始角设置0,仿真A相反电势,看A相反电势过零点的位置换算成角度就是初始角了。

6.梦君箫城

果然是好方法,不过我的疑问是:假设按照你的方法初始角确定了,那么还能不能改变一下初始角?或者说初始角对每一个永磁同步电机来说就是一个确定值不能修改???

7.254339861

只要你模型d轴与A相轴线重合就可以了,建模的人为对齐就不用设置初始角了。

8.梦君箫城

旋转转子使d轴指向A+与A-的中心线,就找到了初始角!但是对模型的初始角修改一下之后,在同样Thet角下,转矩下降好多!现在问题是在在修改初始角之后输出转矩能够稳定吗?这个输出转矩应该是与负载大小有关!

9.kxllost

初始角就是为了给个参考点,这时候仿真出来的A相(假定)空载反电势初始相位有个值,然后加载电流或电压的时候才能确定加载的内功率角或功率角,一般给定的初始角是为了使得A相(假定)空载反电势初始相位为0,这时候的内功率角或功率角就一目了然了。

10.梦君箫城

谢谢你的回复!你的意思是设定的初始角只是个参考点,使空载A相(假设)反电势初始相位为0,那么假设模型初始角应该是30度,但是现在修改为了37.5度,那么模型在同一功率角下输出转矩能够稳定吗?还是说转矩的输出只与负载有关??

11.kxllost

如果按你的意思修改初始相位角的话,你在加载的时候的角度(电压的攻角或电流的内攻角)就不是实际的攻角或内攻角了,应该在减去你模型仿真得到的A相的初始相位角,这时候输出的转矩是稳定的,但是转矩的大小与A相反电势为0的时候输出的转矩大小不同;如果你用外电路仿真模型或者在motionsetup里设定了负载大小以后,输出的转矩或其它参数与这个初始相位角就没关系了,所以得看你的仿真工况是什么了。

12.梦君箫城

你说的对,修改后的初始角与原来A相反电势为0对应的初始角,他们对应的输出转矩一定会变化的,且修改后的初始角中设定的功率角不是真正的模型功率角;至于设定负载我还没尝试过,不过我觉得你说的应该是对的。

其实我刚开始主要是对修改初始角后模型输出转矩稳定性有疑问,按照你的说法现在转矩应该是稳定的!那么对于一个永磁同步电机模型,峰值转矩可以达到,但是要求的额定转矩却过大,当修改模型之后达到要求的额定转矩时,峰值转矩却达不到,敢问你觉得应该从方面修改模型??或是我修改模型的思路有问题??? 谢谢的你回复。

13.zerolunke

我不是很理解LZ想表达什么,对于PMSM来说,定义好了初始位置角使得A相和d轴

重合后,电机才能进行精确的矢量控制,如果初始位置角有误差,则clarke/park变换后的dq分量就不再是严格的励磁分量和力矩分量了,这会影响FOC的控制效果,把dq(假)向dq(真)投影就能看出来。

14.LSG8059

实际上要对电机的物理过程有个了解才好说明这个数学模型,看气隙主磁通的变化:

(1)随着负载的变化,磁力线将由空载的径向逐渐变斜(就像拉马车,空车时候车夫基本直立就可以拉动,可是重载时候,身子必须前倾才可),所以初始角要跟着变化才能在单位电流产生最大的转矩。

(2)有几个累计误差存在,施加电压产生电流(功率因数角),安匝数产生磁通(滞后角)。

(3)所以很多场合是采用标定的方法来决定初始角玖很有意义了,用实验的方法在不同的负载段,改变初始角测取有限的数据,再用曲线拟合就可以了。

第三个问题“永磁同步电机控制的建模问题讨论,如模型仿真慢、联合仿真问题、PI控制问题等”讨论如下:

1.dayeway

楼主,我想问一个最最基础的问题,在普通pi控制中加入模糊控制以后,matlab仿真极慢,但是同样的模糊算法换到另一个更简单的二阶系统中,仿真速度也很快,感觉应该不是模糊算法的问题吧,ode45 ode23还有固定步长的仿真试了都很慢。

2.songwanjie

我使用固定步长,编译成EXE,用m文件调用exe,可能比较快一些,但是要提前再mdl中输出紫己想要的变量。

3.stevenforest

刚接触无刷直流电机,在RM模块中发现与永磁同步电机参数计算规律不是很一致,能否请大神解答一下。

(1)在永磁同步电机中输入额定转速后是固定的,结果清单中额定转速与输入一致,但在无刷直流电机中,输入的额定转速貌似对结果并没什么作用,额定转速和转矩是随其他参数变化的,circuit里也并没有开关管的换向时间设置,无刷直流电机也是同步电机,为什么额定转速不能由输入控制?

(2)在无刷直流电机输出清单里并未找到空载反电动势参数(不过曲线里是有的),难道无刷直流电机设计思路和反电动势的重要性与永磁同步不同吗,RM反电动势的计算过程是怎样的?

4.254339861

两种控制方式不一样的所有输出量不一样。

永磁同步是电流源控制模式,电流源频率定了,当然转速也定了,所有你看的永磁同步设置多少转速计算出来也是多少转速。

无刷电机是电压源控制模式,而且计算出来都是开环的。性能由空载转速,电阻,电感决定你的电机转速和功率,所有不是你设置多少转速计算出来多少转,这种情况是你的空载转速,电阻,电感设计不合理,导致到不了你要的额定转速。对于无刷电机反电势就是空载转速,所有没有这个输出量。

5.stevenforest

原来是这样如果额定转速是由空载转速和其他参数决定的那么在RM里它这个空载转速是根据什么计算的?而且我改变绕组匝数,转速随之改变了,反电动势却好像在保持不变,不知它是什么设计思路,觉得与永磁同步电机不一致谢谢大神们的解答。

6.mawentao

没用RM实际设计过无刷直流的,但考虑到直流无刷一般都是表贴式的,估计rm算出的性能精度也不差(齿槽转矩之类的精度就不知道了)。

RM中也有关于开关时间的设置,就是在CIRCUIT里有个叫什么angle的参数,那个可以控制触发角和弱磁控制之类的。生成的2d外电路中开关出发脉冲是个位置函数,基本就是经典理论的电路实现了。

之所以说跟实际不符合是因为实际无刷电机跟常规有刷或感应输入电压自己就会转不同,直流无刷需要控制电路控制,输入电压指的是输入控制器的电压,跟电机的实际输入电压是不同的,通过PWM控制开关器件导通和关断,来控制电机实际输入的电流,进而控制转矩。比如我想在1000RPM得到2NM的转矩和1000rpm得到10NM的转矩输入电机的电流和电压是不同的,控制器是通过控制开关导通与关断(高频的)来控制电压进而控制电流进而控制转矩,不知道我这么说有没有误导你。

7.517246585

电动汽车上,弱磁控制一般不用PI调节,听说直接用标定的方法去做,求教大神该怎么标定啊?

8.开关磁阻

弱磁曲线簇查表法,表格很重要,一般都是几万个点。

9.相伴一生

这个表格应该是根据母线电压和转速做出来的。如果在控制上,每个载波都需要去查表,这个对处理器的FLASh容量和处理速度要求要比较高吧?

10.机灵木瓜

几万个点不至于,一般价格没那么细,都是插值的。

11.小北斗

实际基本都是标定,更好用。

12.晨会

我们在推算PARK,CLARKE变换,以及SVPWM的时候,都是认为电机ABC三相绕组在空间相隔120°,如果这时候极对数不是1,那ABC三相绕组在空间还是相隔120°吗,如果不是120°的话,那之前个各种变换还有效吗?

13.stevenforest

有效,120°是电流在时间上经过的角度。

14.晨会

回复31 stevenforest“有效,120°是电流在时间上经过的角度”。可不可以这么理解,变换后相位相差90°的a,b 与变换前相位相差120°的abc。两种供电方式产生的磁场是相同的还有,这样的话,park变换中的角度应该是电角度而不是机械角度?

15.晨会

120°可以理解为相位差吗,这样的话park变换中的角度是否应该为电角度而不是机械角度。

因为我之前看一些文献,讲park变换的theta角是转子测量的角度,但是我在matlab做仿真的时候,直接用机械角theta输入到park变换模块,总是出错,只有乘上极对数的时候才能得到理想的结果。

16.欧阳庆

在任何时候将3相绕组在空间的排列都是以电角度来说的,电角度=极对数x机械角度。

17.喜鹊王子

id=0的控制。

(1)仿真出来的电机转速和角度怎么一直为负?稳定了一段时间后,系统开始不稳定,不知是何原因?

(2)如何仿真三相短路,加入fault模块后,将其A,B,C分别于电机A,B,C相连后,仿真结果与不加时完全一样?

18.khl303041

只了解第一个问题:估计是你模型当中的电角度少加了一个pi/2。

19.maza

应该是要在电机给出的电角度基础上减去一个PI/2,好像是因为matlab定义的坐标轴和我们使用的DQ坐标轴不一样引起的。

第四个问题“无位置传感器永磁同步电机控制方法和问题的讨论”的讨论如下:

1.绿皮青蛙

我120度控制一个电机,要求转速1800到6500调速,但是我强制拖动到了4000转了,都一点反电动势都没有,我就晓得2个方法,一种是在管子开的时候测端电压,另外一种是管子关的时候测反电动势,这两种方法其实本质上都是反电动势法,但是现在一点反电动势都没有。怎么确定位置呢?怎么做呢。有没有什么可行的可以做成产品的方法啊。并且难度不是很大的。

2.gyc198215

呵呵。其实现在来说应该是两种基础上发展而来。1.基于反电动势方法,但是因为低速与计算都与电机参数有关,所以不能在低速与0速应用。2.电机凸极效应,不涉及电机参数,加上电机基本都具有凸极效应,所以在很多电机上,在低速与高速都能应用。但是在高速时,因为要外加激励信号,且这个信号基本比电机运行频率要高,所以高速时没有办法。另外这种方法有电机的电磁声也限制应用。我见过一个产生做的非常好,低速与0速都运行,但是有电磁声。

3.绿皮青蛙

回复39 gyc198215 “呵呵。其实现在来说应该是两种基础上发展而来。1.基于反电动势方法,但是因为低速与计算都与电机参数有关,所以不能在低速与0速应用。2.电机凸极效应,不涉及电机参数,加上电机基本都具有凸极效应,所以在很多电机上,在低速与高速都能应用。但是在高速时,因为要外加激励信号,且这个信号基本比电机运行频率要高,所以高速时没有办法。另外这种方法有电机的电磁声也限制应用。

我见过一个产生做的非常好,低速与0速都运行,但是有电磁声”。嘿嘿,我当时做120度双环控制的时候就是看你的帖子了解的。我想问一个东西。高频电压注入法是不是就是利用突极效应?反电动势法是不是只有端电压法和直接采AD这两个方法?

4.buxk007

永磁同步电机无位置传感器控制,如果客户接反了UVW相序,有方法辨识吗

5.Acoary_123123

我个人感觉这个貌似识别不了,电机正反方向运行时磁路会有一定的差异,但差异很小,区分不开。

第五个问题“采用旋转高频注入法的PMSM无位置传感器simulink模型的问题讨论”的讨论如下:

1.nemiwei

该模型基于matlab2011a,在别人的基础上改的,电机性能很勉强。注入频率为500Hz,给定转速1000rpm,采样频率为100KHz。由于信号处理相关专业薄弱,以致滤波器设计总不能满足要求,以致于外差后的误差不能有效提取,锁相环不起作用,根本不能观测初始角度,其它更免谈。

一楼中的附件有很多细节上的错误。现在提取信号还行,采用数字锁相环很勉强,采用隆贝格观测调不出结果,郁闷当中......

图中0.1s处加载5N阻力矩。

把附件RHFJ_of_PMSM.rar改得差不多了,采用数字锁相环的结果见附件,存在滞后的相位。不知为什么采用隆贝格观测器无法实现,观测不到干扰力矩。我方法错了?很希望同行指正!

初始位置也能检测。实际应用还得用隆贝格观测,无相位滞后啊!采用积分滑模试试?

2.nemiwei

高频注入的方法很多。其中,旋转电压注入见一楼附件模型,不过模型中有很多不当之处。现在基本上可以在零速下检测初始角度,见附件。只是隆贝格观测伤透了我的matlab,,,。能改好,基本上就会了,共勉、互勉!!!。不过工程中,我得先使用成熟的滑模观测技术,利用高速运行下的反电动势,马上就上。

3.xiaoxiao201005

回复44 nemiwei“高频注入的方法很多。其中,旋转电压注入见一楼附件模型,不过模型中有很多不当之处。现在基本上可以在零速下检测初始角度,见附件。只是隆贝格观测伤透了我的matlab,,,。能改好,基本上就会了,共勉、互勉!!!。不过工程中,我得先使用成熟的滑模观测技术,利用高速运行下的反电动势,马上就上”。在实际产品中,有高频电压和基波电压两种,它们的幅值和频率都不一样例如:载波15khz,调制波(u=sin314t),高频波(u=0.1sin6280t),调制波(u=sin314t)这种知道怎么实现,如果是叠加的(u=sin314t+0.1sin6280t)两个幅值和频率都不一样,用处理器怎么实现呢?

4.nemiwei

旋转高频注入的仿真基本上是实现了,闭环效果不好,不好意思拿出来.采用隆贝格观测结果与14楼差不多,角度检测在15楼的基础上补偿固定的角度,该角度是由分离混频信号时滤波器造成的.当然速度曲线也存在滞后,同时需要补偿,速度存在波动,使因为还存在其它频率成分。

后续工程实践中要在信号滤波和角度估计下功夫。

5.nemiwei

截至此,我的旋转高频注入的位置检测第一阶段完毕,直接上图.请同行指正,交流!!!高频注入的性能可对比即知。

你可能感兴趣的:(MATLAB永磁同步电机电角度)