空间矢量脉宽调制的开环讲解Word下载.docx
- 文档编号:20912602
- 上传时间:2023-01-26
- 格式:DOCX
- 页数:12
- 大小:153.21KB
空间矢量脉宽调制的开环讲解Word下载.docx
《空间矢量脉宽调制的开环讲解Word下载.docx》由会员分享,可在线阅读,更多相关《空间矢量脉宽调制的开环讲解Word下载.docx(12页珍藏版)》请在冰豆网上搜索。
对于每个桥臂而言,它的上下开关元件不能同时打开,否则会因短路而烧毁元器件。
其
中A、BC代表3个桥臂的开关状态,当上桥臂开关元件为开而下桥臂开关元件为关时定义其状态为1,当下桥臂开关元件为开而上桥臂开关元件为关时定义其状态为0。
这样A、
BC有000、001、010、011、100、101、110、111共8种状态。
逆变器每种开关状态对应不同的电压矢量,根据相位角不同分别命名为Ub(000)、U(100)、U2(110)、U3
(010)、U4(011)、U5(001)、U6(101)、U7(111)如图2所示。
其中“(000)和U7(111)称为零矢量,位于坐标的原点,其他的称为非零矢量,它们
幅值相等,相邻的矢量之间相隔60°
。
如果按照一定顺序选择这六个非零矢量的电压空间
矢量进行输出,会形成正六边形的定子磁链,距离要求的圆形磁链还有很大差距,只有选择更多的非零矢量才会使磁链更接近圆形。
SVPW的关键在于用8个基本电压空间矢量的不同时间组合来逼近所给定的参考空间电
x60
压矢量。
在图3中对于给定的输出电压U,用它所在扇区的一对相邻基本电压Ux和Ux.6O来
等效。
此外当逆变器单独输出零矢量时,电动机的定子磁链矢量是不动的。
根据这个特点,
可以在载波周期内插入零矢量,调整角频率,从而达到变频目的。
图3电压空间的线性组合
根据正弦定理可以得到:
/3u
—「Tpwmsin(60=)
Ux
得到」T2=
.3Utpwmsin^
Ux60
T0=TPWM「2
3
为直流母线电压-V;
n可以由输出正弦电压角频率w和nTpwm的乘积确定。
因此,当已
知两相邻的基本电压空间矢量Ux和Ux60后,就可以根据上式确定T1、T2、T。
五、实验流程图
图1-1-1给出了实验程序功能框图:
图1-1-1实验一功能框图以下给出实验一中的控制参数及其调节范围
EnableFlag:
0、1启动控制位
SpeedRef:
—0.9~0.9速度给定值
六、实验设备
1、DSPCP组合板:
Techv-28335+MCKV-INF2+MCKV-INF3
2、DSP仿真器及usb线
3、MCKVDSP电机控制器
4、三相交流异步电机机组
5、PC机及电源电缆
七、实验步骤
在做该实验之前,请确保已经按照系统测试步骤和方法进行各步骤的运行,该实验具体调试操作步骤如下:
1.将头文件“build.h”中的编译指令BUILDLEVE设为“LEVEL”然后用“Project--Build”命令重新编译连接程序。
在“build.h”文件中第29行:
#defineBUILDLEVELLEVEL1
修改此处。
2.用“File--LoadProgram”菜单命令加载“ACI_2833X.out”文件到目标板,此时注意观察加载的文件“ACI_2833X.out”是否您刚才编译链接生成的文件,看一下文件的生成时间就知道了,如果所有源文件都没有修改,此时“ACI_2833X.out”的生成时间不会变化;
如果想证实源文件编译是否执行,可以在主程序中随便修改一点注释内容,那么编译的时候就肯定会生成新时间的输出文件。
3.点击“Debug--RealtimeMode选择实时模式,此时出现一个对话框,选择“是(Y)”,再点击“Debug--Run”或者点击左侧运行图标运行程序,此时程序在实时运行模式下运行。
4.在“Watchwindow”窗口中左键点击“Build1”标签并在空白处点击右键,选择连续刷新模式“ContinuousRefresh”,此时应能观察到
“BackTicker”变量在不断变化,说明主程序已经运行,
5.在控制器面板上进行电机选择,选择三相交流异步电机显示“正确”
后,在主菜单下按两次向下键并确认后进入状态页面,打开主电源(按
钮:
电源)。
因为主电路中有3300uf的大电容,所以需要较长的充电时间,为了避免过大的充电电流,主电路中有NTC负温度系数的热
敏电阻,所以一定要等控制器的液晶上显示“电源:
开启”,才能进
行下一步的操作,并且每次打开主电源距离上次关闭主电源需要有5
分钟以上的间隔时间。
6.在“Watchwindow”窗口中双击变量“EnableFlag”右侧的“Value
“值并修改为1后回车,此时应能观察到变量“IsrTicker”也在不断变化,说明主中断服务程序已经正常运行。
而此时电机应该转动,并稳定在740转/分左右的速度上,说明控制系统PWM输出部分和IPM逆变部分硬件以及机组和连线都是正确的,如果电机不转,请检查INF2电路板上的LED2指示灯是否熄灭,如果熄灭说明产生了功率保护中断,可以更换DSPCP板测试,也可更换机组测试,如果现象依旧则需要返修。
如果电机运转了,但是控制器上没有速度显示,请检查DSPCPU
电路板下面那块INF2电路板上的JP1拨码开关是否拨向左边。
7.分别右键点击图形显示窗口“Channell&
2”、“Channel3&
4”,选择连续刷新模式“ContinuousRefresh”,观察rgl.Out、Ta、Tb以及Tc的波形,如图1-1-3和图1-1-4所示。
rg1.Out是给定磁链斜坡函数的输出,它是以360度为PU基值的Q15格式数据表示的,将竖线光标移至第一个图形的零点处,注意观察图形窗口“Channel1&
2”左下角
的第一个坐标值的第一个值是时间,单位为ms我们可以看到给定的
磁链周期为40ms这样可以计算出给定磁链的频率为25Hz,这和我们设定的SpeedRef=0.5是对应的,设定为1时,对应频率为50Hz,周期应为20msTa、Tb、Tc表示的是三组PWM控制信号在每个调制周期中的占空比,也是Q15格式的数据。
将光标移至Channel2的第一个马鞍波的波峰中点,读出时间坐标为14.8ms,将光标移至Channel3的第一个马鞍波的波峰中点,读出时间坐标为28.2ms,那么得出结论:
Ta相位超前Tb=(28.2-14.8)/40*360=120度。
如图1-1-5和图1-1-6所示。
设定speedref为不同值,完成表1-1-1。
表1-1-1:
Speedref
0.1
0.3
0.5
-0.5
Ta峰值时间ms
Tb峰值时间ms
Ta超前Tb相位度
8.改变SpeedRef的值,观察波形的周期值是否和设定值对应。
同时VdTesting、VqTesting的值也跟着变化,此时可以观测图形显示窗口波形幅值的变化。
变量VdTesting、VqTesting相当于IPARK逆变换的输入值,在程序中做了一个函数,随着SpeedRef的值变化而变化,所以不能修改。
根据speedref的值完成表1-1-2。
表1-1-2:
给定磁链周期
给定磁链频率
电机转速
9.分别右键点击图形显示窗口“Channel1&
4”,取消连续刷新模式“ContinuousRefresh”,点击“Debug--Halt”,再点击
“Debug--RealtimeMode”,最后点击“Debug--ResetCPU”,“Debug—Restart”,退出实时运行模式,并停止程序运行。
10.如果继续实验,请转实验二。
否则请关闭控制器的功率部分主电源(按下电源键),然后关闭CCS软件退出程序,关闭控制电源。
图1-1-3rgl.out和Ta波形图1-1-4Tb和Tc波形
图1-1-5rg1.out和Ta波形图1-1-6Tb和Tc波形
实验报告:
1、分析实验结果,并根据表1-1-1的测试结果,解释电机速度设定参考值和电机实际运行速度之间的差异是怎么产生的。
2、阅读实验程序,理解IPARK和SVPWM软件模块的工作原理。
绘制出IPARK和SVPWM模块的详细软件流程图。
3、读懂LEVEL1实验程序,并给出LEVEL1程序流程图。
4、总结实验经验,回答本实验中提出的问题,并整理实验报告。
附录:
/*====================================================================
Filename:
IPARK.C(IQversion)
Originator:
DigitalControlSystemsGroup
TexasInstruments
Dsscription:
InverseParkTransformation
History:
04-15-2005Version3.20*/
#include"
IQmathLib.h"
//IncludeheaderforIQmathlibrary
//Don'
tforgettosetaproperGLOBAL_Qin"
file#include"
dmctype.h"
ipark.h"
voidipark_calc(IPARK*v)
{
_iqCosine,Sine;
//Usinglook-upIQsinetable
Sine=_IQsinPU(v->
Angle);
Cosine=_IQcosPU(v->
v->
Alpha=_IQmpy(v->
Ds,Cosine)-_IQmpy(v->
Qs,Sine);
Beta=_IQmpy(v->
Qs,Cosine)+_IQmpy(v->
Ds,Sine);
}
SVGEN_DQ.C(IQversion)
Originator:
DigitalControlSystemsGroup
Description:
Space-vectorPWMgenerationbasedond-qcomponents
04-15-2005Version3.20
*/
svgen_dq.h"
floatf_t1,f_t2;
voidsvgendq_calc(SVGENDQ*v)
_iqVa,Vb,Vc,t1,t2;
Uint32Sector=0;
//SectoristreatedasQ0-independentlywithglobalQ//Inverseclarketransformation
Va=v->
Ubeta;
Vb=_IQmpy(_IQ(-0.5),v->
Ubeta)+_IQmpy(_IQ(0.8660254),v->
Ualpha);
sqrt(3)/2
Vc=_IQmpy(_IQ(-0.5),v->
Ubeta)-_IQmpy(_IQ(0.8660254),v->
//60degreeSectordetermination
if(Va>
_IQ(0))
Sector=1;
if(Vb>
Sector=Sector+2;
if(Vc>
Sector=Sector+4;
//X,Y,Z(Va,Vb,Vc)calculations
Vb=_IQmpy(_IQ(0.5),v->
Vc=_IQmpy(_IQ(0.5),v->
if(Sector==0)//Sector0:
thisisspecialcasefor(Ualpha,Ubeta)=(0,0)
Ta=_IQ(0.5);
Tb=_IQ(0.5);
Tc=_IQ(0.5);
if(Sector==1)//Sector1:
t1=Zandt2=Y(abc--->
Tb,Ta,Tc)
//0.8660254=
//X=Va//Y=Vb//Z=Vc
t1=Vc;
t2=Vb;
Tb=_IQmpy(_IQ(0.5),(_IQ
(1)-t1-t2));
//tbon=(1-t1-t2)/2
//taon=tbon+t1
Ta=v->
Tb+t1;
//tcon=taon+t2
Tc=v->
Ta+t2;
elseif(Sector==2)//Sector2:
t1=Yandt2=-X(abc--->
Ta,Tc,Tb)
t1=Vb;
t2=-Va;
//taon=(1-t1-t2)/2
//tcon=taon+t1
//tbon=tcon+t2
Ta=_IQmpy(_IQ(0.5),(_IQ
(1)-t1-t2));
Ta+t1;
Tb=v->
Tc+t2;
elseif(Sector==3)//Sector3:
t1=-Zandt2=X(abc--->
Ta,Tb,Tc)
t1=-Vc;
t2=Va;
//taon=(1-t1-t2)/2
//tbon=taon+t1
Tb+t2;
//tcon=tbon+t2
elseif(Sector==4)//Sector4:
t1=-Xandt2=Z(abc--->
Tc,Tb,Ta)
t1=-Va;
t2=Vc;
Tc=_IQmpy(_IQ(0.5),(_IQ
(1)-t1-t2));
//tcon=(1-t1-t2)/2
Tc+t1;
//tbon=tcon+t1
//taon=tbon+t2
elseif(Sector==5)//Sector5:
t1=Xandt2=-Y(abc--->
Tb,Tc,Ta)
t1=Va;
t2=-Vb;
//tbon=(1-t1-t2)/2
//tcon=tbon+t1
//taon=tcon+t2
elseif(Sector==6)//Sector6:
t1=-Yandt2=-Z(abc--->
Tc,Ta,Tb)
t1=-Vb;
t2=-Vc;
//tcon=(1-t1-t2)/2
//taon=tcon+t1
//tbon=taon+t2
//ConverttheunsignedGLOBAL_Qformat(ranged(0,1))->
signedGLOBAL_Qformat(ranged
(-1,1))
//v->
Ta=_IQmpy(_IQ(2.0),(v->
Ta-_IQ(0.5)));
Tb=_IQmpy(_IQ(2.0),(v->
Tb-_IQ(0.5)));
Tc=_IQmpy(_IQ(2.0),(v->
Tc-_IQ(0.5)));
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 空间 矢量 脉宽调制 开环 讲解