
电机数学模型完整版.doc
14页电机数学模型电机数学模型以二相导通星形三相六状态为例,分析 BLDC 的数学模型及电磁转矩等特性为了便于分析,假定:a)三相绕组完全对称,气隙磁场为方波,定子电流、转子磁场分布皆对称;b)忽略齿槽、换相过程和电枢反应等的影响;c)电枢绕组在定子内表面均匀连续分布;d)磁路不饱和,不计涡流和磁滞损耗则三相绕组的电压平衡方程可表示为:(1)[𝑢𝑎 𝑢𝑏 𝑢𝑐]=[𝑟00 0𝑟0 00𝑟][𝑖𝑎 𝑖𝑏 𝑖𝑐]+[𝐿𝑀𝑀 𝑀𝐿𝑀 𝑀𝑀𝐿]𝑝[𝑖𝑎 𝑖𝑏 𝑖𝑐]+[𝑒𝑎 𝑒𝑏 𝑒𝑐]式中:为定子相绕组电压(V);为定子相绕组电流(A);𝑢𝑎,𝑢𝑏,𝑢𝑐𝑖𝑎,𝑖𝑏,𝑖𝑐为定子相绕组电动势(V);L 为每相绕组的自感(H);M 为每相绕组间𝑒𝑎,𝑒𝑏,𝑒𝑐的互感(H);p 为微分算子 p=d/dt三相绕组为星形连接,且没有中线,则有(2)𝑖𝑎+ 𝑖𝑏+ 𝑖𝑐= 0(3)𝑀𝑖𝑎+ 𝑀𝑖𝑏+ 𝑀𝑖𝑐= 0得到最终电压方程:(4)[𝑢𝑎 𝑢𝑏 𝑢𝑐]=[𝑟00 0𝑟0 00𝑟][𝑖𝑎 𝑖𝑏 𝑖𝑐]+[𝐿 ‒ 𝑀00 0𝐿 ‒ 𝑀0 00𝐿 ‒ 𝑀]𝑝[𝑖𝑎 𝑖𝑏 𝑖𝑐]+[𝑒𝑎 𝑒𝑏 𝑒𝑐]L-ML-ML-Mrrriaibiceaeceb图.无刷直流电机的等效电路无刷直流电机的电磁转矩方程与普通直流电动机相似,其电磁转矩大小与磁通和电流幅值成正比(5)𝑇𝑒=[𝑒𝑎𝑖𝑎+ 𝑒𝑏𝑖𝑏+ 𝑒𝑐𝑖𝑐]1𝜔所以控制逆变器输出方波电流的幅值即可以控制 BLDC 电机的转矩。
为产生恒定的电磁转矩,要求定子电流为方波,反电动势为梯形波,且在每半个周期内,方波电流的持续时间为 120°电角度,梯形波反电动势的平顶部分也为120°电角度,两者应严格同步由于在任何时刻,定子只有两相导通,则:电磁功率可表示为:(6)𝑃𝑒≈ 𝑒𝑎𝑖𝑎+ 𝑒𝑏𝑖𝑏+ 𝑒𝑐𝑖𝑐= 2𝐸𝑠𝐼𝑠电磁转矩又可表示为:(7)𝑇𝑒= 𝑃𝑒𝜔 = 2𝐸𝑠𝐼𝑠𝜔无刷直流电机的运动方程为:(8)𝑇𝑒‒ 𝑇𝐿‒ 𝐵𝜔 = 𝐽𝑑𝜔𝑑𝑡= 𝐽𝑃𝜔其中为电磁转矩;为负载转矩;B 为阻尼系数; 为电机机械转速;J𝑇𝑒𝑇𝐿𝜔为电机的转动惯量传递函数:无刷直流电机的运行特性和传统直流电机基本相同,其动态结构图可以采用直流电机通用的动态结构图,如图所示:Ct365/(GD^2s)Ce1/RU(s)+ +- -+ +- - TL(s)TC(s)I(s)N(s)图2.无刷直流电机动态结构图由无刷直流电机动态结构图可求得其传递函数为: 𝑛(𝑠) =𝐾11 + 𝑇𝑚𝑠𝑈(𝑠) -𝐾21 + 𝑇𝑚𝑠𝑇𝐿式中: K1为电动势传递系数,,Ce 为电动势系数; 𝐾1=1 𝐶𝑒K2为转矩传递函数,,R 为电动机内阻,Ct 为转矩系数; 𝐾1=𝑅 𝐶𝑒𝐶𝑡Tm 为电机时间常数,,G 为转子重量,D 为转子直径。
𝑇𝑚=𝑅𝐺𝐷2 365𝐶𝑒𝐶𝑡基于 MATLAB 的 BLDC 系统模型的建立在 Matlab 中进行 BLDC 建模仿真方法的研究已受到广泛关注,已有提出采用节点电流法对电机控制系统进行分析,通过列写 m 文件,建立 BLDC 仿真模型,这种方法实质上是一种整体分析法,因而这一模型基础上修改控制算法或添加、删除闭环就显得很不方便;为了克服这一不足,提出在 Matlab/Simulink 中构造独立的功能模块,通过模块组合进行 BLDC 建模,这一方法可观性好,在原有建模的基础上添加、删除闭环或改变控制策略都十分便捷,但该方法采用快速傅立叶变换(FFT)方法求取反电动势,使得仿真速度受限制本文提出了一种新型的 BLDC 建模方法,将控制单元模块化,在 Matlab/Simulink 建立独立的功能模块:BLDC 本体模块、电流滞环控制模块、速度控制模块、参考电流模块、转矩计算模块和电压逆变模块,对这些功能模块进行有机整合,即可搭建出无刷直流电机系统的仿真模型在建模过程中,梯形波反电动势的求取方法一直是较难解决的问题[27,28],本文采用分段线性法成功地化解了这一难点,克服了建模方法存在的不足。
Matlab6.5 针对电气传动控制领域所设计的工具箱 SimPowerSystemToolbox2.3 已提供了 PMSM 的电机模型,但没有给出 BLDC 的电机模型因此,本文在分析无刷直流电机数学模型的基础上,借助于 Matlab 强大的仿真建模能力,在Matlab/Simulink 中建立了 BLDC 控制系统的仿真模型BLDC 建模仿真系统采用双闭环控制方案:下即为 BLDC 建模的整体控制框图,其中主要包括:BLDC 本体模块、电流滞环控制模块、速度控制模块、参考电流模块、转矩计算模块和电压逆变模块BLDC 本体结构本体结构(1)BLDCM 本体模块 在整个控制系统的仿真模型中,BLDCM 本体模块是最重要的部分,该模块根据BLDC 电压方程式(4)求取 BLDC 三相相电流,结构框图如图所示图.BLDCM 本体模块结构框图及其封装形式在整个控制系统的仿真模型中,BLDC 本体模块是最重要的部分,该模块根据BLDC 电压方程式(2-4)求取 BLDC 三相相电流,而要获得三相相电流信号ia,ib,ic,必需首先求得三相反电动势信号 ea,eb,ec 控制框图如图 2-11 所示。
而 BLDC 建模过程中,梯形波反电动势的求取方法一直是较难解决的问题,反电动势波形不理想会造成转矩脉动增大、相电流波形不理想等问题,严重时会导致换相失败,电机失控因此,获得理想的反电动势波形是 BLDC 仿真建模的关键问题之一本文采用了分段线性法,如图 2-12 所示,将一个运行周期0°~360°分为 6 个阶段,每 60°为一个换相阶段,每一相的每一个运行阶段都可用一段直线进行表示,根据某一时刻的转子位置和转速信号,确定该时刻各相所处的运行状态,通过直线方程即可求得反电动势波形分段线性法简单易行,且精度较高,能够较好的满足建模仿真的设计要求因而,本文采用分段线性法建立梯形波反电动势波形理想情况下,二相导通星形三相六状态的 BLDC 定子三相反电动势的波形如图2-12 所示图中,根据转子位置将运行周期分为 6 个阶段:0~π/3,π/3~2π/3,2π/3~π,π~4π/3,4π/3~5π/3,5π/3~2π以第一阶段0~π/3 为例,A 相反电动势处于正向最大值 Em,B 相反电动势处于负向最大值-Em,C 相反电动势处于换相阶段,由正的最大值 Em 沿斜线规律变化到负的最大值-Em。
根据转子位置和转速信号,就可以求出各相反电动势变化轨迹的直线方程,其它 5 个阶段,也是如此据此规律,可以推得转子位置和反电动势之间的线性关系,如表 2-1 所示,从而采用分段线性法,解决了在 BLDC 本体模块中梯形波反电动势的求取问题0π/32π/3π4π/3 5π/32πEm ea图图. .三三相相反反电电动动势势波波形形EmEm-Em-Em-Emebecpospospos转子位置和反电动势之间的线性关系表转子位置eaebec0~π/3K*w- K*wK*w*((per-pos)/(π/6)+1)π/3~2π/3K*wK*w*((pos-π/6-per)/(π/6)-1)- K*w2π/3~πK*w*((per+2*π/3-pos)/(π/6)+1)K*w- K*wπ~4π/3- K*wK*wK*w*((pos-π-per)/(π/6)-1)4π/3~5π/3- K*wK*w*((per+4*π/3-pos)/(π/6)+1)K*w5π/3~2πK*w*((pos-5*π/3-per)/(π/6)-1)- K*wK*w表中:K 为反电动势系数(V/(r/min),pos 为角度信号,w 为转速信号,转数per=fix(pos/(2*pi))*2*pi,fix 函数是实现取整功能。
根据上式,用 M 文件编写反电势系数的 S 函数如下:反电动势 S 函数(emf.m) %========================================================= %BLDCM模型中反电动势函数%=========================================================function [sys,x0,str,ts] =emf(t,x,u,flag) switch flag case 0, %初始化设置[sys,x0,str,ts]=mdlInitializeSizes; case 3, %输出量计算 sys = mdlOutputs(t,x,u); case {1,2,4,9} %未定义标志 sys = []; otherwise %错误处理error(['unhandled flag = ',num2str(flag)]); end %========================================================= %mdlInitializeSizes 进行初始化,设置系统变量的大小%=========================================================function [sys,x0,str,ts]=mdlInitializeSizes() sizes = simsizes; %取系统默认设置sizes.NumContStates = 0; sizes.NumDiscStates = 0; sizes.NumOutputs = 3; sizes.NumInputs = 2; sizes.DirFeedthrough = 1; sizes.NumSampleTimes = 1; sys = simsizes(sizes); x0 = []; str = []; ts = [-1 0]; %========================================================= %mdlOutputs 计算系统输出%=========================================================function sys=mdlOutputs(t,x,u) global k; global Pos; global w; k=0.060; % V/(r/min)反电动势系数 w=u(1); % 转速(rad/s) Pos=u(2); % 角度(rad) if Pos>=0 end5.2.6 电压逆变器模块 逆变器对 BLDC 来说,首先是功率变换装置,也就是电子换向器,每一个桥臂上的一个功率器件相当于直流电动机的一个机械换向器,还同时兼有PWM 电流调节器功能。












