1、SIMULINK仿真工具简介SIMULINK是Mathworks公司开发的MATLAB仿真工具之一,其主要功能是实现动态系统建模仿真与分析. SIMULINK支持线性系统仿真和非线性系统仿真;可以进行连续系统仿真,也可以进行离散系统仿真,或者两者混合的系统仿真;同时也支持具有多种采样速率的采样系统仿真.利用SIMULINK对系统进行仿真与分析,可以对系统进行适当的实时修正或者按照仿真的最佳效果来调试及确定控制系统的参数,以提高系统的性能,减少设计系统过程中反复修改时间,从而实现高效率地开发实际系统的目标.SIMULINK最早出现在MATLAB4.0版的核心执行文件中.在MATLAB4.2版以后
2、, SIMULINK则以MATLAB的工具包形式出现,需要单独安装.在MATLAB5.0版中, SIMULINK为2.0版,在MATLAB5.3版中, SIMULINK升级为3.0版,而在MATLAB6.1版中, SIMULINK则升级为4.1版.本书只对SIMULINK4.1版进行介绍.SIMULINK4.1版是用来建模分析和仿真各种动态系统的交互环境,包括连续系统离散系统和混杂系统. SIMULINK提供了采用鼠标拖动的方法建立系统框图模型的图形交互界面.SIMULINK提供了大量的功能模块以方便拥护快速地建立系统模型. 建模时只需要使用鼠标拖动库中的功能模块并将它们连接起来.使用者可以通
3、过将模块组成字子系统来建立多级模型. SIMULINK对模块和连接的数目没有限制. SIMULINK还支持Stateflow,用来仿真事件驱动过程.SIMULINK框图提供了交互性很强的非线性仿真环境,可以通过下拉菜单执行仿真,或使用命令进行批处理.仿真结果可以在运行的同时通过示波器或图形窗口显示.SIMULINK的开放式结构允许用户扩展仿真环境的功能.如用MATLABFORTRAN和C代码生成自定义块库,并拥有自己的图标和界面,或者将用户原来由FORTRAN或C语言编写的代码连接起来.由于SIMULINK可以直接利用MATLAB的数学图形和编程功能,用户可以直接在SIMULINK下完成数据分
4、析优化参数等工作.工具箱提供的高级的设计和分析能力可以通过SIMULINK的屏蔽手段在仿真过程中执行. SIMULINK的模型库可以通过专用元件集进一步扩展MATLAB6.5.1有两张光盘,其中第二张帮助文件,把第一张碟放进光驱,系统会自动进入安装程序。在安装过程只要输入用户名称、公司及产品注册码等。安装完之后,在Windows桌面上会自动生成MATLAB的快捷方式图标。实验一 电力电子器件仿真过程:首先点击桌面的MATLAB图标,进入MATLAB环境,点击工具栏中的Simulink选项。进入我们所需的仿真环境,如图1.1所示。点击File/New/Model新建一个仿真平台。这时我们可以在上
5、一步Simulink环境中拉我们所需的元件到Model平台中,具体做法是点击左边的器件分类,这里我们一般只用到Simulink跟SimPowerSystems两个,分别在他们的下拉选项中找到我们所需的器件,用鼠标左键点击所需的元件不放,然后直接拉到Model平台中。 图1.1实验一的具体过程:第一步:我们首先按照之前的方法打开仿真环境新建一个仿真平台,现在我们先仿真新器件GTO的工作原理,按照下表,根据表中的路径找到我们所需的器件跟连接器。元件名称提取路径触发脉冲Simulink/Sources/Pulse Generator电源Sim Power Systems/Electrical Sou
6、rces/ DC Voltage Source示波器Simulink/Sinks/Scope接地端子Sim Power Systems/Elements/Ground信号分解器Simulink/Signal Routing/Demux电压表Sim Power Systems/Measurements/ Voltage Measurement电流表Sim Power Systems/Measurements/Current Measurement负载RLCSim Power Systems/Elements/ Series RLC BranchGTO器件Sim Power Systems/Pow
7、er Electronics/Gto提取出来的器件模型如图1.2所示: 图1.2第二步,元件的复制跟粘贴。有时候相同的模块在仿真中需要多次用到,这时按照我们常规的方法可以进行复制跟粘贴,可以用一个虚线框复制整个仿真模型。还有一个常用方便的方法是在选中模块的同时按下Ctrl键拖拉鼠标,选中的模块上会出现一个小“+”好,继续按住鼠标和Ctrl键不动,移动鼠标就可以将模块拖拉到模型的其他地方复制出一个相同的模块,同时该模块名后会自动加“1”,因为在同一仿真模型中,不允许出现两个名字相同的模块。第三步,我们把元件的位置调整好,准备进行连接线,具体做法是移动鼠标到一个器件的连接点上,会出现一个“十字”形
8、的光标,按住鼠标左键不放,一直到你所要连接另一个器件的连接点上,放开左键,这样线就连好了,如果想要连接分支线,可以要在需要分支的地方按住Ctrl键,然后按住鼠标左键就可以拉出一根分支线了。在连接示波器时会发现示波器只有一个接线端子,这时可以参照下面示波器的参数调整的方法进行增加端子。在调整元件位置的时候,有时你会遇到有些元件需要改变方向才更方便于连接线,这时可以选中要改变方向的模块,使用Format菜单下的Flip block 和Rotate block两条命令,前者改变水平方向,后者做90度旋转,也可以用Ctrl+R来做90度旋转。同时双击模块旁的文字可以改变模块名。然后单击菜单栏中的Edi
9、t/Signal Properties命令来刷新模型。模块的颜色也可以在激活模块后,点击右键,在background color中选择自己喜欢的颜色。连接好的电路图如图1.3所示。 图1.3第四步,模块的参数设置。设者模型参数是保证仿真准确和顺利的重要一步,有些参数是由仿真任务规定的,如本例仿真中的电源电压与电阻值等,有些参数是需要通过仿真来确定的。设置模型参数可以双击模块图标弹出参数设置对话框,然后按框中提示输入,若有不清楚的地方可以借助帮助来看相关功能。本例中,参数设置如下:1. 脉冲发生器的参数设置。双击脉冲发生器,会弹出一个对话框,改变需要的参数后如图1.4所示。其中参数行中从第一个开
10、始分别为 振幅、 周期 、脉宽、 控制角(延迟时间)控制角a的设置按照 t=aT/360 图1.42. 打开电源设置对话框,我们这里设置电源为220V,直接在参数行输入数字即可。3. 新器件GTO的参数设置,这里我们采用默认设计,当需要改变的时候也可以另外设置。4. 负载参数的设置,我们这里只是用到电阻负载,所以可以这样设置,电阻R100,H0, C=inf 设置完如图1.5所示: 图1.5 5. 示波器的参数设置:当我们开始连接的时候,示波器只有一个连接端子,这时我们需要增加示波器的接线端子,具体做法是双击示波器,弹出的对话框如图1.6示:图1.6单击工具栏中第二个小图标,即打印机图标的旁边
11、的图标。弹出第二个对话框2图1.7。 图1.7只要在Number of axes 项中把1改成所需要增加的端子数字就可以,这里我们用到两个端子,我们把它改成2就可以了。在Time range中设置一个数值,也即显示时间,所设置的时横坐标。就是我们的的仿真时间6. 仿真参数设置:在仿真开始前还必须首先设置仿真参数。在菜单中选择Simulation,在下拉菜单中选择Simulation parameters,在弹出的对话款中可设置的项目很多,主要有开始时间、终止时间、仿真类型(包括步长和解电路的树枝方法),积极相对误差、绝对误差等。步长、解法和误差的选择对仿真运行的速度影响很大,步长太长计算容易发
12、散,步长太小运算时间太长,本题使用ode23tb算法。仿真参数设计如图1.8所示:图1.8在参数设置完毕后既可以开始仿真。点击运行按钮“”开始仿真。在屏幕下方的状态栏上可以看到仿真的进程。若要中途停止仿真可以点击“”按钮。在仿真完毕之后既可以通过双击示波器来观察仿真的结果。本例的仿真图形(电阻)如图1.9跟图1.10所示: 图1.9 晶闸管的波形 图1.10负载的波形如果在一开始观察不到示波器的波形,可以点击工具栏上的望远镜,会自动的给定一个合适的坐标,观察到我们需要的波形。如果我们想改变纵坐标,可以单击邮件,选择弹出快捷菜单中的“Axes properties”命令,出现如图1.11所示示波
13、器的纵坐标参数设置对话框。图1.11 本题如果要设置电阻电感负载,只需要在RLC参数中给电感量一个数值就可以了。 到这里,我们就把新器件GTO的仿真完成了。按照同样的方法,再从Sim Power Systems/Power Electronics中调用其他需要仿真的新器件,就可以观察到我们所需要的波形了。上面做的全控型器件,现在我们做一个半控型器件,也就是我们平时所说的普通晶闸管。我们在电力电子器件里面提取出一个晶闸来,这里注意晶闸管有两种类型,Detailed Thyristor的是详细的晶闸管模型,而Thyristor是普通晶闸管,具体选择看你对晶闸管参数的要求多高,详细的晶闸管有很多参数
14、可以设置。仿真的电路图如图示 模块的参数的设置跟之前的一样,为了得到更好的波形效果,我们把仿真的开始时间设置为4,结束时间设置为10。同若运行仿真电路,我们可以得到仿真之后的各种波形。负载波形晶闸管波形实验二 单相半波可控整流电路仿真过程:1. 建立仿真模型(1) 首先我们新建一个仿真模型的文件。方法跟实验一样。文件名自己给定。(2)提取电路元件模块。组成单相半波可控整流电路的主要元器件有交流电源、晶闸管、RLC负载等。提取路径基本上跟我们做的第一个实验是相同的,只是我们这里用到了交流电源(Sim Power Systems/Electrical Sources/ AC Voltage Sou
15、rce)。 提取出来的元件的如图2.1所示图2.1图2.2(3)将电路元件模块按单相半波可控整流的原理图连接起来组成仿真电路。将元件调整的到合适的位置,有些器件需要多次用到的,可以点击该模块,然后按住鼠标右键直接拖到想要放置的地方就可以实现复制了。连接好的电路如图2.2所示。 2.设置模型参数。根据实验一的方法我们可以双击模块图标弹出的对话框来设置参数,本例中所设置的参数如下。(1) 交流电压源,电压为220V,频率为50Hz,初始相位为0度。在电压设置中要输入的是电压峰值,在该栏中键如“220*sqrt(2)”。如果在对话框最后的测量旋转选中电压“voltage”,这样电压的数据可以送入多路
16、测量器(Multimeter)。这里我们不用设置这个,因为我们直接用了示波器进行观察波形。(2) 晶闸管的参数我们采用了默认的参数,也可以另外设置。(3) 负载RLC,当负载是电阻负载时,R=1, H=0, C=inf(无穷大)(4) 负载RLC为电阻电感负载时,R1,H0.01,Cinf,关于负载的参数,这里是没有一定的规定的,可以根据需要修改。3.仿真参数的设置,本例中我们设置仿真的终止时间为0.1S,算法ode23tb.通过仿真,我们给出几个特殊角度的波形图。电阻负载30度电阻负载60度电阻负载90度 电阻电感30度 电阻电感60度 电阻电感90度到这里,我们基本上可以把单相半波可控整流
17、的各个波形仿真出来了,观察波形,跟我们在实验室用示波器看到的还是基本上一致的。实验三 单相桥式半控整流电路电阻负载:一、仿真步骤1启动MATLAB,进入SIMULINK后新建一个仿真模型的新文件。在这里可以任意添加电路元器件模块。然后对照电路系统模型,依次往文档中添加相应的模块。在此实验中,我们按下表添加模块:序号元器件名称提取元器件位置数量1交流电源Simpowersystems / Electrical Sourse / AC Voltage sourse12脉冲触发器Simulink / Sources / Pulse Generator23晶闸管模型Simpowersystems /P
18、ower Electronics /Detailed Thyristor24二极管模型Simpowersystems /Power Electronics /Diode25电流表模型Simpowersystems /Measurements /Current Measurement16电压表模型Simpowersystems /Measurements / Voltage Measurement27信号分解模型Simulink /Signal Routing /Demus18RLC串联电路Simpowersystems /Elements /Series RLC Branch19示波器模型Si
19、mulink /Sinks /Scope12添加好模块后,要对各元器件进行布局。一个良好的布局面板,更有利于阅读系统模型及方便调试。图3.13设置模块参数。依次双击各模块,在出现的对话框内设置相应的参数。1),交流电源参数设置:电压设置为220V,频率设为50Hz,其它默认。 图3.22),脉冲触发器设置:振幅(amplitude)设为5。周期(Period)设为0.02秒。脉冲宽度(pulse width)设为2。相位延迟角(phase delay),即触发角。它的设置在调试时需要修改,以实现在不同角度触发时,观测电路各变量的波形的变化。因为它是以秒为单位,故需把角度换算成秒。其计算可按以下
20、公式:t=T/360。例如触发角45度,周期T0.02,则t=0.0025,则此空中应填入0.0025。 图3.3第二个触发器的设置只需触发角比第一个大180度,即加上0.01,其它不变。3)示波器的设置:双击示波器,弹出示波器面板,在第一排控件栏中单击第二个控件,弹出参数设置窗口,如下所示: 图3.4把坐标系数目设为7,其它不必修改。Time range是横坐标设置。4模型仿真。在模型仿真时要先设置仿真参数,仿真参数的设置与实验一相同。设置好后,即可开始仿真。点击开始控件。仿真完成后就可以通过示波器来观察仿真的结果。以下是分别在0度,30度,45度,60度时的仿真结果。0度: 30度:45度
21、: 60度:电阻电感负载:带电阻电感性负载的仿真与带电阻性负载的仿真方法基本相同,但须将RLC的串联分支设置为电阻电感负载。本例中设置的电阻R1,L0.01H,电容为inf。电阻电感负载分别在0度,30度,45度,60度时的仿真结果:0度: 30度:45度: 60度:实验四 单相桥式全控整流电阻负载:一、仿真步骤1启动MATLAB,进入SIMULINK后新建一个仿真模型的新文件。并布置好各元器件。如下图所示:图4.12参数设置。各模块参数的设置基本与上一实验相同,但要注意触发脉冲的给定。互为对角的两个示波器的控制角设置必须相同,否则就会烧坏晶闸管。二、模型仿真设置好后,即可开始仿真。点击开始控
22、件。仿真完成后就可以通过示波器来观察仿真的结果。以下是分别在0度,30度,45度,60度时的仿真结果。0度: 30度:45度: 60度:电阻电感负载:带电阻电感性负载的仿真与带电阻性负载的仿真方法基本相同,但须将RLC的串联分支设置为电阻电感负载。本例中设置的电阻R1,L0.01H,电容为inf。电阻电感负载分别在0度,30度,45度,60度时的仿真结果:0度: 30度:45度:60度:实实验五 三相半波整流电路电阻负载:一、仿真步骤1启动MATLAB,进入SIMULINK后新建一个仿真模型的新文件。并布置好各元器件。如下图所示:图6.12参数设置。电源参数设置:电压设置为380V,频率设为5
23、0Hz。要注意初相角的设置,a相的电压源设为0,b相的电压源设为-120,c相的电压源设为-240。负载参数设置:电阻设为1,电感为0,电容无穷大inf。脉冲参数设置:触发信号的参数设置是本例的难点。本例中有三个触发脉冲,由电路原理可知触发角依次相差120度。因为电源电压频率为50Hz,故周期设置为0.02s,脉宽可设为2,振幅设为5。延迟角的设置要特别注意,在三相电路中,触发延时时间并不是直接从a换算过来,由于a角的零位定在自然换相角,所以在计算相位延时时间时要增加30度相位。因此当a0度时,延时时间应设为0.0033。其计算可按以下公式:t=(+30)T/360。触发角a0度时,延迟角依次
24、设置为:0.00167,0.00837,0.01507触发角a30度时,延迟角依次设置为:0.0033,0.01,0.0167触发角a45度时,延迟角依次设置为:0.00417,0.01087,0.01757触发角a60度时,延迟角依次设置为:0.005,0.0117,0.0184晶闸管参数设置: 图6.2二、模型仿真设置好后,即可开始仿真。选择算法为ode23tb,stop time设为0.1。点击开始控件。仿真完成后就可以通过示波器来观察仿真的结果。以下是分别在0度,30度,45度,60度时的仿真结果。0度: 30度:45度: 60度:电阻电感负载:带电阻电感性负载的仿真与带电阻性负载的仿
25、真方法基本相同,但须将RLC的串联分支设置为电阻电感负载。本例中设置的电阻R1,L0.01H,电容为inf。电阻电感负载分别在0度,30度,45度,60度时的仿真结果:0度: 30度:45度: 60度:实验六 三相桥式半控整流电路三相桥式半控整流电路广泛应用于中等容量的整流装置或要求不可逆的电力拖动中,完整的三相桥式半控整流电路由三个晶闸管和三个二极管、三相电源。触发器等组成。根据原理图,我们调用出三个电源,三个晶闸管,三个二极管,为了实现仿真,我们还需要调用出触发脉冲,电流表,电压表,信号分解器跟信号合成器(Mux)跟示波器。各个元器件的模块提取路径跟之前介绍的提取路径一样,提取出来的元件跟
26、布局如图7.1所示 图7.1 根据原理图,我们连接仿真电路。连接好的电路如图7.2所示图7.2参数设置:1. 电源参数设置:三相电源的电压峰值电压为380V,可表示为“220*sqrt(2)”,频率为50Hz,相位分别为0度,-120度,-240度。2. 负载参数设置:电阻R10 H0 Cinf 电阻电感R10 H0.01 Cinf脉冲参数设置:触发信号的参数设置是本例的难点。本例中有三个触发脉冲,由宽可设为2,振幅设为5。延迟角的设置要特别注意,在三相电路中,触发延时时间并不是直接从a换算过来,由于a角的零位定在自然换相角,所以在计算相位延时时间时要增加30度相位。因此当a0度时,延时时间应
27、设为0.0033。其计算可按以下公式:t=(+30)T/360。触发角a0度时,延迟角依次设置为:0.00167,0.00837,0.01507触发角a30度时,延迟角依次设置为:0.0033,0.01,0.0167触发角a45度时,延迟角依次设置为:0.00417,0.01087,0.01757触发角a60度时,延迟角依次设置为:0.005,0.0117,0.01843. 晶闸管采用默认的参数设置4. 仿真参数设置:打开设置窗口,选择ode23tb算法,将相对误差设置Le-3,开始时间为0,停止时间为0.05。设置好各个参数后,单击运行按钮,就可以进行仿真了。下面我们给出几个特殊角的波形。电
28、阻负载0度电阻负载30度电阻负载60度电阻电感负载60度 电阻电感负载0度 电阻电感负载30度本个仿真要注意对脉冲触发时间的设置要准确,而且对示波器的坐标要调整好。实验七 三相桥式全控整流电阻负载:一、仿真步骤1启动MATLAB,进入SIMULINK后新建一个仿真模型的新文件。并布置好各元器件。如下图所示:图8.12参数设置。电源参数设置:电压设置为380V,频率设为50Hz。要注意初相角的设置,a相的电压源设为0,b相的电压源设为-120,c相的电压源设为-240。负载参数设置:电阻设为1,电感为0,电容无穷大inf。通用变换器桥的设置:(1),模块的功能:通用变换器桥模块是由6个功率开关元
29、件组成的桥式通用三相变换器模块。功率电子元件的类别和变换器的结构可通过对话框进行选择。功率电子元件和变换器的类型有Diode桥、Thyristor桥、MOSFET-Diode桥、IGBTDiode桥、Ideal Switch桥,桥的结构有单相、两相和三相。(2),仿真模块的图标、输入和输出。通用变换器桥模块的图标如右图所示。模块的输入和输出取决于所选择的变换器桥的结构。当A、B、C被选择为输入端,则直流DC(+,-)端就是输出端。当A、B、C被选择为输出端,则直流DC(+,-)端就是输入端。除二极管桥外,其它桥的“g(pulse)”输入端可接受来自外部模块的触发信号。(3),通用变换器桥仿真模
30、块的参数:本例中个参数设置如下图。图8.2(4),同步6脉冲触发器的参数设置该模块有5个输入端,其图标如图所示。“alpha_deg”是移相控制角信号输入端,单位为度。该输入端可与“常数”模块相连,也可与控制系统中的控制器输出端相连,从而对触发脉冲进行移相控制。输入端AB、BC、CA是同步线电压的输入端,同步线电压就是连到三相交流电压的线电压。输入端Block为触发器模块的使能端,用与触发器模块的开通与封锁操作,当施加大于0的信号时,触发脉冲被封锁。该模块为一个六维脉冲向量,它包含6个触发脉冲,移相控制角的起始点为同步电压的零点,pulses为输出触发信号端。同步6脉冲触发器参数设置对话框如果
31、所示,可以设置同步电压的频率跟脉冲宽度,如果勾选了“Double pulsing”触发器就能给出间隔60度的双脉冲。图8.3(5),常数模块参数设置:常数模块图标如右图所示,该模块只有一个输出端,在本例中只要改变对话框中数值的大小,即可改变触发控制角的大小。其参数对话框如下所示。图8.4二、模型仿真设置好后,即可开始仿真。选择算法为ode23tb,stop time设为0.1。点击开始控件。仿真完成后就可以通过示波器来观察仿真的结果。以下是分别在0度,30度,45度,60度时的仿真结果。0度: 30度:45度: 60度:电阻电感负载:带电阻电感性负载的仿真与带电阻性负载的仿真方法基本相同,但须将RLC的串联分支设置为电阻电感负载。本例中设置的电阻R45,L1H,电容为inf。电阻电感负载分别在0度,30度,45度,60度时的仿真结果:0度: 30度:45度: 60度:29