资源描述
单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,Simulink电路仿真,Simulink 是MATLAB 的一个重要的工具箱,是结合了框图界面和交互仿真能力的系统级设计和仿真工具。它以MATLAB 核心数学,图形和语言为基础,可以让用户完成从算法开发,仿真或者模型验证的全过程,而不需要传递数据,重写代码或改变软件环境。,在start进入Simulink菜单,选择 Simulink Library Browser,打开Simulink库函数,选择 File New打开编辑窗口。,在MATLAB的 Command窗口直接键入Simulink即可打开Simulink工作窗口。,Simulink 作为面向框图的仿真软件,具有以下的功能和优点:,(1)用方框图的绘制代替了程序的编写。构成任何一个系统框图有三个步骤,即,选定典型环节,,,相互联结,和,给定环节参数,。,(2)仿真的建立和运行是智能化的。首先,画好了框图并存起来,Simulink自动建立一个仿真的过程;其次,在运行时用户可以不给步长,只给出要求的仿真精度,软件会自动选择能保证给定精度的最大步长,使得在给定的精度要求下系统仿真具有最快的速度。,(3) 输入输出信号来源形式的多样化。其输入信号可以是各种信号发生器;也可以来自一个设定的记录文件;还可以来自MATLAB的工作空间(workspace).输出信号也类似,这就扩大了仿真系统与各种外部软件和硬件的接口能力。,Simulink工具箱中含有大量的仿真模块集,,例如,Power System Blockset,(PSB),DSP Blockset,Communication Blockset,CDMA,Reference Blockset,Nonlinear Control Design Blockset,等专门领域应用的仿真模块。,研究MATLAB在电路仿真中的应用,主要用到的是Simulink节点下的Commonly used Blocks ,Sinks ,Sources 等模块以及在电路仿真中最长用的Power System Blockset(DSP)模块。,求i3,U4,U7;,1. Simulink常用模块介绍,要熟练地使用Simulink进行仿真,首先要求能够熟练使用Simlink 常用模块。在模块浏览器中的Simulink节点下包含了搭建一个Simulink模块所需要的基本模块。本节主要对其中的Sources模块库、Sinks 模块库、Math Operations库和,Continuous,模块库中的常用模块进行介绍。,Sources 模块,阶跃函数,起始时间是第1秒而非0秒。双击step模块,对仿真起始时间(step time)和阶跃值(Initial value, Final value)的大小进行设置。,信号发生器,可以产生给定频率和幅值的正弦波(sine wave)、方波(square wave)和锯齿波(sawtooth wave),双击图标可以设置。,定时器,显示仿真时间,在系统仿真时打开定时器,,可以看到实时的仿真时间。,正弦波,电路中常用到的正弦信号(Sine Wave)模块,双击图标,在弹出的窗口中调整相关参数。信号生成方式有两种:,Time based 和 Sample based,。,如果以Time based 方式运行该模块,则需要用户设定波形的幅度(Amplitude)、偏移(Bias)、频率(Frequency)、初相(Phase)几个参数;,如果选择Sample based方式,参数设置则为幅度(Amplitude)、偏移(Bias)、每周期采样数(Sampies per period)和偏移采样数(Number of offset samples).,两种工作方式中的各项参数都可以用关系式加以换算:,每周期采样数=2*pi/(频率*采样时间),频移采样数=初相*每周期采样数/(2*pi),设置采样时间Sampletime ,将此参数设置为零时表示以连续的方式工作,将此参数设置为大于零的值时则以所设采样时间工作。但要注意的是采用Sample based 模式的模块式不能以连续的方式工作的。,从工作空间输入。从MATLAB,Workspace输入已有的函数作为仿真的激励信号。首先要在MATLAB环境下建立一个时间向量和相应的函数值向量,然后将时间向量和函数值向量的名称T, U填入该图标的对话框中。,Math Operations模块,加、减运算 在List of signs文本框中可以选择多个数的加、减法运算。在Icon shape中选择圆形或方形符号。,Gain: 增益 作为后续模块的增益系数。,Continuous模块,Transfer Fcn 传递函数,设置 numerator选,项,分子多项式系数的降幂排列。 Denominator选项,分母多项式系数的降幂排列。,Sinks模块,Sinks模块库中的模块主要功能是接受信号,并且将接受的信号显示出来。,输出到工作空间,功能与From,Workspace正好相反,把仿真结果连同输入信号输出到工作空间去。,XY示波器:显示 MATLAB的图形窗口。,输入曲线是以时间为横轴的绘图区域。,它的作用是将信号值直接显示,在该模块的窗口中。,输出信号是个直流信号时,我们就可以把它直接送到这个模块中,从模块窗口中直接读出输入信号的大小。,示波器模块可以接受多个输入信号,每个端口的输入信号都将在一个坐标轴中显示。如果是向量或矩阵信号,则以不同的颜色表示每个元素信号;如果信号本身是离散的,则显示信号的阶梯图。,(1) 示波器的工具栏,(2)坐标轴的范围调整,在坐标框内单击鼠标右键,在弹出的快捷菜单中执行“Axes properties ”命令,可以对坐标轴进行调整,如图4.1-1所示。“Y-min”、“Y-max”分别是设置Y 轴的最小值和最大值,在“Title”中可以为坐标轴取个名字,默认是以输入信号线的标签作为坐标轴的名字。,(3)示波器的参数设置,单击 图标将弹出“示波器参数设置(SopeParameters)”对话框,“General”选项卡中各个选项的含义如下:,“Number of axes ”文本框:用于设置轴的个数,可以用于实现对多个输入信号的显示。,“Time range ”文本框:用于设置X 轴(即时间轴)的显示范围。,“Sampling ”下拉列表:当在该下拉列表选择“Decimation”选项时可设置显示频度,如其设为n,则每隔n-1 个数据点都给予显示。如果选“Sample time”可设置显示点采样时间,如果为0表示显示连续信号,-1表示显示方式取决于输入信号,任何大于零的数据表示显示离散信号的时间间隔。, “Floating scope”复选框:若选中该复选框,则表示示波器以游离方式工作。,(4)关于游离示波器,工作在游离状态的示波器能够对模型,中一条或多条信号线上的信号进行观察,而不用将示波器和信号线相连。观察具体的信号时可以在工具栏中单击 图标,在打开的信号选择器中进行选择。,2. SimPowerSystems模块介绍, DC Voltage Source,直流电压源,在 “Electrical Sources”模块内。, Series RLC Branch,串联RLC 支路,设置参数可以去掉任一元件,将其变为单独的电阻、电容或电感的支路。,将,Series RLC Branch 模块设置成单一电阻时,应将参数:“Resistance”设置为所仿真电阻的真实值,“Inductance”设置为0,“Capacitance”设置为inf;,将Series -RLC Branch模块设置单一电感模块时,应将参数:“Inductance”设置为所仿真电感的真实值,“Resistance”设置为0,“Capacitance”设置为inf;,将,Series RLC Branch设置单一电容模块时,应将参数“Capacitance”设置为所仿真电感的真实值,“Resistance”和“Inductance”均设置为0。, Parallel RLC Branch,并联RLC 支路,设置参数可以去掉任一元件,将其变为单独的电阻、电容或电感的支路。,将,Parallel RLC Branch 模块设置成单一电阻时,应将参数:“Resistance”设置为所仿真电阻的真实值,“Inductance”设置为inf ,“Capacitance”设置为0 ;,将,Parallel,-RLC Branch模块设置单一电感模块时,应将参数:“Inductance”设置为所仿真电感的真实值,“Resistance”设置为,inf,,“Capacitance”设置为0 ;,将,Parallel,RLC Branch设置单一电容模块时,应将参数“Capacitance”设置为所仿真电感的真实值,“Resistance”和“Inductance”均设置为inf。, Current Measurement、Voltage Measurement,在“Measurmrnts”模块内,可以用来测量所在支路的电流值和电压值。,Controlled Voltage Source,受控电压源、,Controlled Current Source,受控电流源,在“Electrical Sources”模块内,其参数一般采用默认值。, Break,(开关)两模块。在Elements模块库内。Break模块内有一个名为 External control of switching times 的选项,在默认的选中状态时,Switching times(开关转换时间)和Sample time of the internal timer Ts 两个选项将被隐藏,这里需要将External control of switching times设为非选中状态,展开隐藏选项。,3. 仿真控制设置,Solver页,simulationconfiguration-solver,起始时间Start time 终止时间stop time 仿真步长模式 变步长Variable-step ,固定步长Fixed-step。仿真算法solver,变步长Variable-step:最大步长、最小步长、起始步长。最大步长(缺省值,仿真时间/50)定义影响仿真结果,容易产生失真。最大步长大,取样点少。,仿真算法solver:2/3阶龙格-库塔法、4/5阶龙格-库塔法(求解微分方程数值解的函数)、和欧拉法。,变步长Variable-step的算法,固定步长Fixed-step的算法,仿真精度:变步长算法在误差超过误差容限时会自动对仿真步长作适当修正,误差容限的选择关系到微分方程求解的精度。相对精度relative tolerance(1e-3)、绝对精度absolute tolerance(1e-6)。,4. 模型图的优化,模块的翻转:在format命令中选flip block项,对选中的模块翻转,选rotate block项对选中的模块旋转90度。,信号线分叉:按住键,用鼠标左键点击需要分叉的连线接点,拖动鼠标,连接到目的端点。,模型图的标注:模块的标注,双击模块原有的标注,直接修改。连线的标注,双击需要标注的连线,在文本框内进行标注。模型图的标注,在需要标注的任意位置,双击鼠标左键,在出现的文本框内进行标注。标注的位置和内容可以调整、隐藏(format|hide name format|show name)和翻转(format|flip name)。,模型图加阴影:选中需要加阴影的模块,选Format | Show drop shadow菜单项,给模型图加颜色:选中需要加颜色的模块,选Format | foregroundcolor菜单项,添加模块的前景色。选Format | Backgroundcolor菜单项,添加模块的背景色。选Format | Screencolor菜单项,添加模块图的背景色。,改变模型图的字体:选中需要改字体的模块,选Format | Font菜单项,弹出对话框,可以改变字体了。,模块的合成:将多个模块合成一个模块组。选中要合成的模块,选择Edit | Creat Subsystem菜单项,SIMULINK会自动将这些模块构成一个模块组的标志,这一模块组可以作为一个公用模块使用了。双击模块组,会自动弹出一个子模型窗口,可以修改该模块的内容。,创建子模块:从Commomly Used Blocks 库选中Subsystem模块;双击该模块图标,在弹出的空白模型图编辑框上进行设计;对子模块进行封装。,模块的封装:选中要封装的子模块,选择Edit | Mark Subsystem菜单项,弹出模块封装对话框:,在Icon页、Initialization页、Document页填入参量,模块封装完成。,5. 基于MATLAB/Simulink的,电路参数影响的分析法,(1)电阻电路的计算,电路如图,建立Simulink 模型,R1=2,,R2=4,,R3=12,,R4=4,,R5=12,,R6=4,,R7=2,,Us=10V。,求i3,U4,U7;,在菜单栏Simulation下,点击Start或按Ctrl+T快捷键,可以运行电路模块。,仿真结果:,(2)一般正弦稳态电路,已知求b ,d 两点的电压。,建立Simulink 模型,搭建的仿真电路如下图,运行仿真模块,得到b,d 两点的电压如图,(3),(4),
展开阅读全文