文档库 最新最全的文档下载
当前位置:文档库 › MATLAB课件

MATLAB课件

MATLAB课件
MATLAB课件

第五章电力电子电路的MATLAB仿真

MA TLAB是一种科学计算软件。MA TLAB是Matrix Laboratory(矩阵实验室)的缩写,这是一种以矩阵为基础的交互式程序计算语言。早期的MA TLAB主要用于解决科学和工程的复杂数学计算问题。由于它使用方便、输入便捷、运算高效、适应科技人员的思维方式,并且有绘图功能,有用户自行扩展的空间,因此特别受到用户的欢迎,使它成为在科技界广为使用的软件,也是国内外高校教学和科学研究的常用软件。

MA TLAB由美国Mathworks公司于1984年开始推出,逐步升级,到2001年已经有了6.0版,现在MA TLAB 6.1、6.5、7.0及更高版都已相继面世。早期的MA TLAB在DOS环境下运行,1990年推出了Windows版本。1993年,Mathworks公司又推出了MA TLAB的微机版,充分支持在Microsoft Windows界面下的编程,它的功能越来越强大,在科技和工程界广为传播,是各种科学计算软件中使用频率最高的软件。本书以MA TLAB2007a版本为基础讲解软件的使用。

MA TLAB比较易学,它只有一种数据类型(即64位双精度二进制),一种标准的输入输出语句,它用解释方式工作,不需要编译,一般入门后经过自学就可以掌握。如果有不清楚的地方,可以通过它的帮助( help)和演示(demo)功能得到启示。学习MA TLAB的难点在于,它有大量函数,这些MA TLAB函数仅基本部分就有700多个,其中常用的有200-300个,掌握和记忆起来都比较困难。

1993年出现了SIMULINK,这是基于框图的仿真平台,SIMULINK挂接在MA TLAB 环境上,以MA TLAB的强大计算功能为基础,以直观的模块框图进行仿真和计算。SIMULINK提供了各种仿真工具,尤其是它不断扩展的、内容丰富的模块库,为系统的仿真提供了极大便利。在SIMULINK平台上,拖拉和连接典型模块就可以绘制仿真对象的模型框图,并对模型进行仿真。在SIMULINK平台上,仿真模型的可读性很强,这就避免了在MA TLAB窗口使用MA TLAB命令和函数仿真时需要熟悉记忆大量M函数的麻烦,对广大工程技术人员来说,这无疑是最好的福音。现在的MA TLAB同时捆绑了SIMULINK,版本也在不断地升级,从1993年的MA TLAB4.0/SIMULINK1.0版、2001年的MA TLAB 6.1/SIMULINK 4.1版到2002年的MA TLAB6.5/SIMULINK5.0版,版本还在不断升级,MA TLAB已经不再是单纯的"矩阵实验室"了,它已经成为一个高级计算和仿真平台。

SIMULINK原本是为控制系统的仿真而建立的工具箱,在使用中易编程、易拓展,并且可以解决MA TLAB不易解决的非线性、变系数等问题。它能支持连续系统和离散系统的仿真,支持连续离散混合系统的仿真,也支持线性和非线性系统的仿真,并且支持多种采样

频率(Multirate)系统的仿真,也就是不同的系统能以不同的采样频率组合,这样就可以仿真较大、较复杂的系统。因此,各科学领域根据自己的仿真需要,以MA TLAB为基础,开发了大量的专用仿真程序,并把这些程序以模块的形式都放入SIMULINK中,形成了模块库。SIMULINK的模块库实际上就是用MA TLAB基本语句编写的子程序集。现在SIMULINK 模块库有三级树状的子目录,在一级目录下就包含了SIMULINK最早开发的数学计算工具箱、控制系统工具箱的内容,之后开发的信号处理工具箱(DSP Blocks)、通信系统工具箱(Comm) 等也并行列入模块库的一级子目录,逐级打开模块库浏览器(SIMULINK Library Browser)的目录,就可以看到这些模块。

从SIMULINK 4.1开始,有了电力系统模块库(Power System Blockset),该模块库主要由加拿大HydroQuebec和TECSIM International 公司共同开发。在SIMULINK环境下用电力系统模块库的模块,可以方便地进行RLC电路、电力电子电路、电机控制系统和电力系统的仿真。本书中电力电子和电力拖动控制系统的仿真就是在MA TLAB/SIMULINK环境下,主要使用电力系统模块库和SIMULINK两个模块库进行。通过电力电子电路和电机控制系统的仿真,不仅展示了MA TLAB/SIMULINK的强大功能,并且可以学习控制系统仿真的方法和技巧,研究电路和系统的原理和性能。由于SIMULINK和MA TLAB的密切依存关系,在介绍SIMULINK之前,必须首先介绍MA TLAB。MA TLAB的一些基本命令和函数,尤其是MA TLAB的绘图功能,是在电力电子电路和电力拖动控制系统的仿真中要经常使用的。但是本书主要是介绍电力电子电路和电力拖动控制系统的仿真,因此对MA TLAB只介绍与本书有关的内容。MA TLAB功能强大,有关MA TLAB的书刊已经很多,对MA TLAB更深入的要求,可以阅读其他介绍MA TLAB的书籍。

§5-1 MATLAB的计算基础

MA TLAB的计算主要是数组和矩阵的计算,并且定义的数值元素是复数,是MA TLAB 的重要特点。函数是计算中必不可少的,MA TLAB函数的变量不需要事先定义,它以在命令语句中首次出现而自然定义,这在使用中很方便。使用MA TLAB/SIMULINK进行仿真,MA TLAB的计算大部分已经模块化了,但掌握一些必要的计算知识和定义还是很有必要的。

5.1.1常量和变量

MA TLAB数值计算的数据有常量和变量两种,变量和常量都可以用标识符来表示和辨别,这些标识符也就是变量名,变量在数值计算前必须先赋值。

一、常量

MA TLAB的常量有实数和复数两类,复数又有实部和虚部两部分,MA TLAB定义的

数值元素是复数,因此实数是复数虚部为零的特殊情况。常量可以是十进制数,也可以是其他进制的数值。

在MA TLAB 中,虚数的单位为"i "(i =,复数的生成语句为

z=a+bi 式中,a 、b 为实数,z 为复数名。

或 z =r *e x p (θ*i ) 式中,r 为复数的模; e 为复数的辐角(rad )。 MA TLAB 中的常数存储格式是16位长型格式,数值有效范围是3083081010-+ 。 二、变量

MA TLAB 变量的命名规则如下:

1)变量名以英文字母开始,即首字符必须是26个英文字母之一。

2) 变量名可以由英文字母、数字和下划线组成,MA TLAB 能区分字母的大小写。 3) 变量名长度不超过31个字符长度。

4) 如果在变量名前添加了关键词"global",该变量就成为全局变量,全局变量不仅在主程序中起作用,并且在调用的子程序和函数中起作用。定义全局变量必须在主程序的首行,这是惯例。MA TLAB 有一些规定的常量和变量,这些常量和变量见表5-1。

5.1.2 数组和矩阵的表示和赋值

数组是指按一定次序排列的数,矩阵是由m n

?个数,按m行和n列排列而成的"表"。数组可以是一维的,也可以是n维的,因此一维数组可以看成是一行多列的矩阵,是矩阵的特殊情况,一般也称为行矢量,而一列多行的矩阵称为列矢量。n维数组一般也就是矩阵了。单个的数或标量则可以看成是11

?的矩阵,所以数、数组都可以用矩阵表示,MA TLAB也以矩阵作为运算的基本单元。MA TLAB既支持数组的运算,也支持矩阵的运算,但是数组与矩阵的运算有很大的不同,数组的运算对数组中每个元素都执行相同的操作,而矩阵的运算则按线性代数的法则进行。

一、一维数组的表示和赋值

一维数组(行矢量)是用方括号括起的一组元素(或数),元素之间用空格或逗号分隔,组成数组的元素可以是具体的数值、变量名或算式。举例如下:

x=[123456]

x为数组名,1,2,3,4,5,6为组成数组的元素,元素之间以空格分隔。

y=[7,8,9,1+2i,3+4i]数组元素包含复数,元素间以逗号分隔。

a b c为变量名。

z=[1,2,3,a,b,c]包含变量的数组,,,

p=[pi,2*pi,1.3*sqrt(3),(1+2)/5*4]以算式表示的数组

二、n维数组和矩阵的表示和赋值

n维数组或矩阵的表示和赋值的规则是矩阵或数组的元素列入方括号[]中,每行的元素间用空格或逗号分隔,行与行之间用分号或回车键隔开。举例如下,即

A=[123;456;789]

?的矩阵。矩阵内的元素可以是数值、变量或者表A为矩阵名,方括号内表示一个33

达式。如

B=[1,2,3;a,b,(a+b)/2]

5.1.3 MATLAB 的算术运算

MA TLAB的算术运算符见表5-2。

5.1.4 MATLAB 的关系运算

所谓关系运算是指两个元素之间的比较,关系运算的结果只可能是0或1。0表示该关系式不成立,即为"假";1表示该关系式成立,即为"真"。MA TLAB的关系运算有六种,见表5-3 。

5.1.5 MATLAB 的逻辑运算

逻辑量只有0(假)和1(真)两个值,逻辑量的基本运算有与(&)、或(|)和非(~)三种。有时也包括异或运算(xor),异或运算可以通过三种基本运算组合而成。基本逻辑运算的真值见表5-4。

5.1.6 MATLAB的特殊运算符

MA TLAB有一些特殊运算符在命令和计算中使用,这些特殊运算符见表5-5 。要特别指出的是,这些特殊运算符在英文状态下输入有效,在中文状态下输入则无效。

5.1.7 MATLAB 常用的函数

MA TLAB的函数极为丰富,一些常用的数学函数见表5-6 。

表5-6 MATLAB的关系运算符

§5-2 MATLAB程序设计基础

MA TLAB是一种解释性高级程序设计语言,对程序中的语言边解释边执行。MA TLAB 与其他高级语言一样,是由顺序、选择和循环三种基本控制结构组成。

MA TLAB语句包括表达语句、控制语句、调试语句和空语句等。控制语句还包括条件、循环和一些转移语句。MA TLAB的语句键入后按回车键即可执行,因此一般也把语句称为命令。

MA TLAB程序的基本结构如下,即

% 说明

清除命令

定义变量

逐行执行的命令

… …

循环和转移

逐行执行的命令

… …

end

逐行执行的命令

… …

5.2.1 表达式、表达式语句和赋值语句

一、表达式

由运算符连接的常量、变量和函数就构成了MA TLAB的表达式,因此在MA TLAB中有算术表达式、函数表达式、关系表达式和逻辑表达式等。MA TLAB 中的数组可以进行这四种运算,而矩阵只能进行前两种运算。

二、表达式语句

单个的表达式就是表达式语句,一行可以只有一个表达式语句,也可以有多个表达式语句,这时语句间用分号(;)或逗号(,)分隔。语句以回车换行结束。以分号结束的语句执行后不显示运行结果,以逗号和回车键结束的语句执行后即显示运行结果。如果一条语句需要占用多行,这时需要使用连续符(…)。

三、赋值语句

将表达式的值赋予变量就是赋值语句。

A=3+7*8

x=10*sin(2*pi*f*t)

z=2*x+5*y

5.2.2 流程控制语句

MA TLAB语句一般是逐条执行的,如果需要中途改变执行的次序,就需要流程控制语句。MA TLAB的流程控制语句有if、while和for三种。在MA TLAB 5.0 版后又增加了switch-case 语句。

一、if 语句

if 语句有三种形式,分别为

if (表达式),语句组A,end

if (表达式),语句组A,else语句组B,end

if (表达式1),语句组A,else if (表达式2) 语句组B,else语句组C,end

三种形式都以"if"开始,以"end"结束。最后的"end"是必不可缺的,否则在if语句执行

完后,就会找不到后续程序的入口。语句中的表达式的值,即真(1)和假(0) 指示语句转移的条件。

二、while 循环语句

while 语句的格式为

while (表达式),语句组,end

while循环语句的流程如图1-7所示。语句的执行规则是,当表达式的值为真(1)时,则执行循环体的语句组,并再次计算表达式的值,如果表达式的值还是为真,则继续循环,直到表达式的值为假(0)后,才结束循环,继续向下执行。

三、for 循环语句

for 语句的格式为

for k=初始值:增量:终止值,语句组,end

for 语句将循环体中的语句组循环执行N次,每执行一次,K值就增加一个增量,所以循环的次数N为N=1+(终值-初值)/增量。

当K值等于终止值后,循环结束,程序转向end 以后的语句。for语句可以嵌套使用。在循环(语句while 和for) 执行中,如果满足一定条件需要结束循环,可以使用break命令终止循环。

四、switch-case语句

switch-case 语句是一种多分支语句,语句的格式为

switch 表达式(标量或字符串)

case值1

语句组A

case值2

语句组B

… …

otherwise

语句组N

End

在switch-case 语句中,当表达式的值(或字符串)与某个case 值(或字符串)相同时,就执行该case 值以下的语句组。如果表达式的值(或字符串)与任何一个case值都不相同,则执行otherwise 后的语句组N。

§5-3 MATLAB常用的其他命令

MATLAB 的命令很多,前面介绍的数学运算和流程控制都是MATLAB的命令,下面再介绍一些常用的一般命令,见表5-7。

§5-4 MATLAB的绘图功能

MATLAB计算的结果是数据,这些数据放在工作间(Workspace)中,如果数据量很大,则阅读这些数据是很困难的,习惯是用曲线和图形表示。MATLAB可以根据给出的数据,用绘图命令画出其图形,通过图形对计算结果进行描述,并且可以对图形进行处理,如加上标题、坐标、网格线和颜色等。本书后面的仿真披形,除小部分示波器画面是用屏幕复制方法截取的以外,主要都是通过MATLAB的绘图功能进行绘制的。绘图功能的处理能力,尚有一定限制。因此,图形中的文字符号,与通常规范尚有一些差距。

MATLAB有很强的绘图功能,可以绘制二维图形、三维图形、直方图和饼图等,这里仅介绍一些常用的基本绘图命令和方法,见表5-8。

5.4.1 直角坐标中的二维曲线

在X-Y直角坐标系上画平面曲线是最常用的绘图方法,MATLAB绘制平面曲线的基本

命令是plot命令。在平面上画一条曲线时plot命令的用法如下:

一、plot(A)

在X-Y平面上画一维数组A的图形。命令中A是一维数组的变量名。键入命令,在X-Y平面上画出的曲线,其X轴表示数组A中元素的下标,Y轴表示数组A 中对应元素的值。

【例5-1】用随机函数画出20个随机数的曲线。

?A=rand(1,20)

A =

Columns 1 through 7

0.9501 0.2311 0.6068 0.4860 0.8913 0.7621 0.4565

Columns 8 through 14

0.0185 0.8214 0.4447 0.6154 0.7919 0.9218 0.7382

Columns 15 through 20

0.1763 0.4057 0.9355 0.9169 0.4103 0.8936

?p l o t(A)

画得的曲线如图5-1所示,rand函数产生的随机数最大值为1,最小值为0,20个随机数的值之间用折线连接。

图5-1 随机数曲线

二、plot(A,B)

画二维数组A和B组成的曲线。二维数组A和B组成的曲线是以数组A的元素为X 轴,Y轴上是对应的数组B的元素。A和B之间要用逗号","分隔。

【例5-2】画一条按正弦衰减的曲线。

?t=0:0.2:6*Pi;

?b=exp(-0.1*t)*sin(t);

?plot(t,b)

命令执行后得到如图5-2所示的曲线,图中X轴是时间t,Y轴是衰减函数值b。

图5-2 正弦衰减曲线

5.4.2 多条曲线的绘制

如果要在一张图上绘制多条曲线,使用plot语句的格式如下:

一、plot(x1,y1,x2,y2,L,xn,yn)

该语句中x1,y1,x2,y2,L,xn,yn为n组数据,每对数据可以画出一条曲线,一对数据必须有相同的长度,各对数据的长度可以不同。

【例5-3】在一张图上画一条幅值为10的正弦曲线和一条幅值为8的余弦曲线。命令如下,即

?t=0:0.1:4*pi;

?y1=10*sin(t);

?y2=8*cos(t);

?plot(t,y1,t,y2)

plot命令回车执行后,得到两条正余弦曲线如图5-3所示。

图5-3 两条曲线的绘制

二、plot(t,[y1,y2,L,yn])

如果多条曲线有共同的X轴变量,则多个Y轴变量可以用方括号括起来。该语句中的"t"是矢量,[1,2,,]

是矩阵,若"t"是列(或行)矢量,则"y"的列(或行)长度应与"t"

y y y yn

的长度相同,"y"的行(或列)数就是曲线的根数。

三、plot(x1,y1),hold,plot(x2,y2)

该语句组是将曲线逐条画到一张图上。在画了第一条曲线后,用命令hold保持第一条曲线,然后在同一张图上再画上第二条曲线。

四、plotyy

使用这条命令,可以用两种Y轴比例画图,但是X轴的比例仍是一个。现仍以例5-3进行说明。但在例题中将正弦曲线幅值放大50倍,显然这两条曲线画在一张图上是不合适的。这时,可以使用plotyy命令,用两个比例来画图。

?t=0:0.1:4*pi;

?y1=10*sin(t);

?y2=8*cos(t);

?y4=50*y1

?plotyy(t,y4,t,y2)

图5-4 以不同的Y轴比例尺画曲线

画得的波形如图5-4所示,图中正弦曲线的Y轴比例尺在左边,余弦曲线的比例尺在右边。

5.4.3 电力电子电路波形图的绘制

利用MATLAB 的命令和函数可以绘制电力电子电路的电压、电流等的波形,下面举例说明,并通过此例题进一步介绍MATLAB的绘图过程。对于电力电子电路的分析,使用SIMULINK仿真可以得到更好的效果,这将在后面进行介绍。

【例5-4】单相半波不控整流电路(见图5-5)已知交流电源电压220V ,负载电阻为20。

画出交流电源电压、整流输出电压和电流的波形。MATLAB命令窗口键入命令如下:

图5-5半波不控整流电路图

?V=220;%交流电压有效值第一行

?R=2;%电阻值第二行

?dth=pi/360;; %导通角增量第三行

?th=0:dth:2*pi;%一周期中导通角第四行

?vs=V*sqrt(2)*sin(th);%交流电压第五行

?ud=vs.*(vs>=0);%整流输出电压第六行

?id=ud/R;%整流输出电流第七行

?plot(th,vs),hold%画交流电压波形第八行

?plot(th,ud,th,id)%画整流电压电流波形第九行命令中,1-7行为赋值命令,第8行命令画交流电压电压的波形,回车执行命令,则画出交流电压电压的波形。在该行中使用了"hold"命令,目的是在画下面波形时,交流电压的波形还会保留,不会被清除掉。执行第9行命令后,电源电压、输出电压和输出电流三条曲线就出现在同一幅图上(见图5-6)。

图5-6 半波不控整流电路波形图

在图形窗口这三条曲线是以不同颜色来区分的,但是如果将这图形复制到黑白文档上时,有的颜色线条就显示不出来。改变线型和颜色,可以将光标指向曲线,点击右键,进行线条颜色的设置。使用工具栏上的功能键可以添加文字或标注符号对波形进行标注和美化;还可以使用图形窗口Edit 菜单下的"Axes Properties …"选项,设置X-Y 坐标轴和名称。使其具有更好的可读性。这里不多占篇幅接受,请读者自行练习。

§5-5 SIMULINK 环境和模型库

MATLAB编程仿真是在文本窗口中进行的,编制一行行的命令和MATLAB函数,不直观也难以与实际的物理系统或电路建立形象的联系。而MATLAB 的SIMULINK是很有特色的仿真环境,在此环境中,用户可以用点击拖动鼠标的方式从SIMULINK模型库中抓取所谓的元件或模型块绘制和组织系统或电路,并完成对系统和电路的仿真。

在SIMULINK环境中,系统的函数和电路元器件的模型都用模块来表达,模块之间用连线连接,连线表示了信号流动的方向。对用户来说,在SIMULINK环境中只要学习图形界面的使用方法和熟悉模型库的内容,就可以很方便地使用鼠标和键盘进行系统和电路的仿真,而不必去记那些复杂的函数。

5.5.1 系统仿真(SIMULINK)环境

系统仿真( SIMULINK)环境也称工具箱(Toolbox),是MATLAB最早开发的,它包括SIMULINK仿真平台和系统仿真模型库两部分,主要用于仿真以数学函数和传递函数表达的系统,是20世纪70年代开发的连续系统仿真程序包(CCS) 的继续,现在的系统仿真(SIMULINK)包括了连续系统、非线性系统和离散系统的仿真。由于SIMULINK的仿真平台使用方便、功能强大,后来拓展的其他模型库也都共同使用这个仿真环境,成为MATLAB 仿真的公共平台。SIMULINK 是Simulation和Link两个英文单词的缩写,意思是仿真链接,MATLAB模型库都在此环境中使用,从模型库中提取模型放到SIMULINK的仿真平台上进行仿真。所以有关SIMULINK的操作是仿真应用的基础。

SIMULINK作为面向系统框图的仿真平台,它具有如下特点:

(1)以调用模块代替程序的编写,以模块连成的框图表示系统,点击模块即可以输入模块参数。以框图表示的系统应包括输入(激励源)、输出(观测仪器)和组成系统本身的模块。

(2) 画完系统框图,设置好仿真参数,即可启动仿真。这时,会自动完成仿真系统的初始化过程,将系统框图转换为仿真的数学方程,建立仿真的数据结构,并计算系统在给定激励下的响应。

(3)系统运行的状态和结果可以通过波形和曲线观察,这和实验室中用示波器观察的效

果几乎一致。

(4) 系统仿真的数据可以用以.mat为后缀的文件保存,并且可以用其他数据处理软件进行处理。

(5) 如果系统框图绘制不完整或仿真过程中出现计算不收敛的情况,会给出一定的出错提示信息,但是这提示不一定准确,这是软件还不够完备的地方。

(6) 以框图形式对控制系统进行仿真是SIMULINK的最早功能,后来在SIMULINK的基础上又开发了数字信号处理、通信系统、电力系统、模糊控制等数十种模型库,但是SIMULINK的窗口界面是其他工具箱共用的平台,在此平台上可以进行控制系统、电力系统、通信系统等各种系统的仿真。

5.5.2 SIMULINK 的工作环境

从MATLAB 窗口进入SIMULINK环境有两种方法: 在MATLAB的工具栏上点击按钮

,或者在MATLAB的文本窗口中键入“simulink”后回车,打开的模型库浏览窗口,然后在模型库浏览窗口菜单上点击按钮。完成上述操作之后,屏幕上出现SIMULINK的工作窗口。标题栏为“untitled”,表示一个尚未命名的新文件。如5-7图所示:图中下左为SIMULINK 模型库浏览窗口;下右为SIMUUNK工作窗口,即系统仿真平台。在SIMULINK中建立仿真系统时,就是从左边的SIMULINK模型库中用鼠标抓取模块,放到右边SIMUUNK工作窗口即系统仿真平台上,进行连接及参数设置,并对系统进行运行仿真,查看波形。

图5-7 进入simulink仿真平台

SIMULINK窗口菜单系统File 文件菜单包括:Edit 编辑菜单、View 查看菜单、Simulation仿真功能菜单、Format 模块格式菜单和Tools工具菜单,与目前常用的一些应用软件大同小异,不再逐一进行介绍,应用中比较特殊的命令会在应用内容中进行说明。5.5.3 模型库浏览器

模型库是SIMULINK的重要内容,模型库中保存了控制系统中常用的典型环节的模型,在系统仿真时,只要调用这些典型环节就可以很方便地组成系统的仿真模型。SIMULINK 工具箱的模型都可以通过模型库浏览器(SIMULINK Library Browser) 来查找。模型库浏览器(Simulink)窗口(见图5-8)。窗口左部的树状目录是各分类模型库的名称。在分类模型库下还有二级子模型库,点击模型库名前带“+ ”的小方块则可展开二级子模型库的目录,点击模型库名前带“-”的小方块则可关闭二级目录。窗口右部为左部选中模块库中所包含的子目录模块(图a)或模块图(b)。

(a) 子模块(b) Continuous模块

图5-8 Simulink Library Browser界面

随着SIMULINK 版本的更新,模型库内容在不断地增加,SIMULINK模型库在软件安装时可以选择。

MATLAB的工具箱具有极其丰富的内涵,在上图左侧可以看到,整个simulink工具箱是由Simulink(标准模块库)、Aerospace blockset(航空航天系统模块库)、Communications blockset(通信系统模型库)、simpower systems( 电力系统模块库)等等数十个个模块组构成。Simulink在各种专业领域的使用,通常是Simulink标准工具箱与各专业工具箱结合使用进行的。这里结合电力电子的专业特点,主要介绍系统仿真标准工具箱(SIMULINK)和电力系统(Power System Block)两个模块库内所包含的模块。很多模块从名称上就可以看出它的含义和功能,对于常用且参数设置复杂的模块,在后续仿真实例中会以实例的形式进行说明。

一、Simulink(标准工具箱)

Simulink(标准工具箱)中包含了Conntinuous, Discontinuities、Discrete、Look-up Tables、

Math Operations、Model Verification、Model-Wide Utilities、Ports&Subsystems、Signal Attributes、Signal Routing、Sinks、Sources和Use-Defined functions等模块组。这里选取其中常用模块组和模块进行简述。

在电力电子专业中常用的模块组有Continuous、Math operations、Signal Routing、Sinks、sources、Discontinuities等。

1. Continuous模块组

该模块组包括的主要模块及其图标如图所示,共有八个标准基本模块。

图5-9 Continuous模块组及其图标

2. Math operations模块组

该模块组主要模块及图标如图所示,它共有33个标准基本模块。这里简单列出其中常用的12项。

图5-10 Math operations模块组及其图标

3. Discontinuities模块组

Discontinuities模块组及其图标如附图所示,它包括12个标准基本模块。

图5-11 Discontinuities模块组及其图标

4.Signal Routing模块组

Signal Routing模块组及其图标如图所示,该模块组包含18个标准基本模块。

图5-12 Signal Routing模块组及其图标

5. Sinks模块组

Sinks模块组及其图标如图所示。它有9个标准基本模块。

图5-13 Sinks模块组及其图标

6.Sources模块组

Sources模块组及其图标如图所示。该模块组有22个标准基本模块。

图5-14 Sources模块组及其图标

熟悉这些模块组所包含的模块及在工具箱中的位置.将有助于建模时迅速查找到这些模块。

二、SimPower System (电力系统)工具箱

在该工其箱中有很多模块组,主要有电源(Electrical sources)、元件(Elements)、电力电子(Power Electronics)、电机系统(Machines)、测量(Measurements)附加(Extras)等模块组。点击每一个图标都可打开一个模块组。下面简要介绍常用模块组的内容。

1. Electrical sources (电源)模块组

电源模块组包括:直流电压源、交流电压源、交流电流源、三相电源、三相可编程电压源、受控电压源和受控电流源等基本模块。电源模块组中各基本模块及其图标如图5-15所示。

matlab入门教程文献

MATLAB入门教程 1.MATLAB的基本知识 1-1、基本运算与函数 在MATLAB下进行基本数学运算,只需将运算式直接打入提示号(>>)之後,并按入Enter键即可。例如: >> (5*2+1.3-0.8)*10/25 ans =4.2000 MATLAB会将运算结果直接存入一变数ans,代表MATLAB运算後的答案(Answer)并显示其数值於萤幕上。 小提示:">>"是MATLAB的提示符号(Prompt),但在PC中文视窗系统下,由於编码方式不同,此提示符号常会消失不见,但这并不会影响到MATLAB的运算结果。 我们也可将上述运算式的结果设定给另一个变数x: x = (5*2+1.3-0.8)*10^2/25 x = 42 此时MATLAB会直接显示x的值。由上例可知,MATLAB认识所有一般常用到的加(+)、减(-)、乘(*)、除(/)的数学运算符号,以及幂次运算(^)。小提示:MATLAB将所有变数均存成double的形式,所以不需经过变数宣告(Variable declaration)。MATLAB同时也会自动进行记忆体的使用和回收,而不必像C语言,必须由使用者一一指定.这些功能使的MATLAB易学易用,使用者可专心致力於撰写程式,而不必被软体枝节问题所干扰。 若不想让MATLAB每次都显示运算结果,只需在运算式最後加上分号(;)即可,如下例: y = sin(10)*exp(-0.3*4^2); 若要显示变数y的值,直接键入y即可: >>y y =-0.0045 在上例中,sin是正弦函数,exp是指数函数,这些都是MA TLAB常用到的数学函数。 下表即为MATLAB常用的基本数学函数及三角函数: 小整理:MATLAB常用的基本数学函数 abs(x):纯量的绝对值或向量的长度 angle(z):复数z的相角(Phase angle) sqrt(x):开平方 real(z):复数z的实部 imag(z):复数z的虚部 conj(z):复数z的共轭复数 round(x):四舍五入至最近整数 fix(x):无论正负,舍去小数至最近整数 floor(x):地板函数,即舍去正小数至最近整数

(完整word版)matlab_gui初学者教程

什么是GUI呢? GUI是Graphical User Interface 图形用户界面的意思。象很多高级编程语言一样。Matlab也有图形用户界面开发环境。随着计算机技术的飞速发展。人与计算机的通信方式也发生的很大的变化。从原来的命令行通讯方式(例如很早的DOS系统)变化到了现在的图形界面下的交互方式。而现在绝大多数的应用程序都是在图形化用户界面下运行的。 记得读书的时候。大学开学不久。学校很多同学就开始报考全国计算机等级考试了。当然我也是其中的一分子。其中C语言是大多数人选择的科目。当时在学C语言的时候。经常也会遇到人机交互的例子。譬如一个计算两个数相加的程序。运行程序后便切换到了Dos模式。然后在此模式下输入两个数。再回车。才能返回运算结果。当时就觉得很不方便。也不友好。后来才得知C语言是面向过程的语言。是非面向对象的语言(VC++,VB,Matlab等是面向对象的)。那么下面我们就来看看Matlab是如何简单、快速而友好地解决这类问题的吧。 Matlab GUI编程教程(适用于初学者) 1.首先我们新建一个GUI文件:File/New/GUI 如下图所示; 选择Blank GUI(Default) 2.进入GUI开发环境以后添加两个编辑文本框。6个静态文本框。和一个按钮。布置如下图所示;

布置好各控件以后。我们就可以来为这些控件编写程序来实现两数相加的功能了。3.我们先为数据1文本框添加代码; 点击上图所示红色方框。选择edit1_Callback。光标便立刻移到下面这段代码的位置。function edit1_Callback(hObject, eventdata, handles) % hObject handle to edit1 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) % Hints: get(hObject,'String') returns contents of edit1 as text % str2double(get(hObject,'String')) returns contents of edit1 as a double 然后在上面这段代码的下面插入如下代码: %以字符串的形式来存储数据文本框1的内容. 如果字符串不是数字。 则现实空白内容 input = str2num(get(hObject,'String')); %检查输入是否为空. 如果为空,则默认显示为0 if(isempty(input)) set(hObject,'String','0')

相关文档