SIMULINK s-function的设计

SIMULINK s-function的设计
SIMULINK s-function的设计

SIMULINK s-function的设计

Simulink为用户提供了许多内置的基本库模块,通过这些模块进行连接而构成系统的模型。对于那些经常使用的模块进行组合并封装可以构建出重复使用的新模块,但它依然是基于Simulink原来提供的内置模块。

而Simulink s-function是一种强大的对模块库进行扩展的新工具。一、s-function的概念s-function是一个动态系统的计算机语言描述,在MATLAB里,用户可以选择用m文件编写,也可以用c或mex文件编写,在这里只给大家介绍如何用m文件编写s-function。

S-function提供了扩展Simulink模块库的有力工具,它采用一种特定的调用语法,使函数和Simulink解法器进行交互。

S-function最广泛的用途是定制用户自己的Simulink模块。它的形式十分通用,能够支持连续系统、离散系统和混合系统。

二、建立m文件s-function

1、使用模板文件:sfuntmp1. m

该模板文件位于MATLAB根目录下toolbox/simulink/blocks目录下。

模板文件里s-function的结构十分简单,它只为不同的flag的值指定要相应调用的m文件子函数。比如当flag=3时,即模块处于计算输出这个仿真阶段时,相应调用的子函数为sys=mdloutputs(t,x,u)。

模板文件使用switch语句来完成这种指定,当然这种结构并不唯一,用户也可以使用if语句来完成同样的功能。而且在实际运用时,可以根据实际需要来去掉某些值,因为并不是每个模块都需要经过所有的子函数调用。

模板文件只是Simulink为方便用户而提供的一种参考格式,并不是编写s-function的语法要求,用户完全可以改变子函数的名称,或者直接把代码写在主函数里,但使用模板文件的好处是,比较方便,而且条理清晰。

使用模板编写s-function,用户只需把s-函数名换成期望的函数名称,如果需要额外的输入参量,还需在输入参数列表的后面增加这些参数,因为前面的4个参数是simulink调用s-function时自动传入的。对于输出参数,最好不做修改。接下去的工作就是根据所编s-function要完成的任务,用相应的代码去替代模板里各个子函数的代码即可。

Simulink在每个仿真阶段都会对s-function进行调用,在调用时,Simulink会根据所处的仿真阶段为flag传入不同的值,而且还会为sys这个返回参数指定不同的角色,也就是说尽管是相同的sys变量,但在不同的仿真阶段其意义却不相同,这种变化由simulink自动完成。m文件s-function可用的子函数说明如下:

mdlInitializeSizes:定义s-function模块的基本特性,包括采样时间、连续或者离散状态的初始条件和sizes数组。

mdlDerivatives:计算连续状态变量的微分方程。

mdlUpdate:更新离散状态、采样时间和主时间步的要求。

mdlOutputs:计算s-function的输出。mdlGetTimeOfNextVarHit:计算下一个采样点的绝对时间,这个方法仅仅是在用户在mdlInitializeSizes 里说明了一个可变的离散采样时间。mdlTerminate:实现仿真任务必须的结束。

概括说来,建立s-function可以分成两个分离的任务:

初始化模块特性包括输入输出信号的宽度,离散连续状态的初始条件和采样时间。

将算法放到合适的s-function子函数中去。

2、定义s-function的初始信息

为了让Simulink识别出一个m文件s-function,用户必须在s-函数里提供有关s-函数的说明信息,包括采样时间、连续或者离散状态个数等初始条件。这一部分主要是在mdlInitializeSizes子函数里完成。

Sizes数组是s-function函数信息的载体,它内部的字段意义为:

NumContStates:连续状态的个数(状态向量连续部分的宽度)

NumDiscStates:离散状态的个数(状态向量离散部分的宽度)

NumOutputs:输出变量的个数(输出向量的宽度)

NumInputs:输入变量的个数(输入向量的宽度)

DirFeedthrough:有无直接馈入

NumSampleTimes:采样时间的个数

如果字段代表的向量宽度为动态可变,则可以将它们赋值为-1。

注意DirFeedthrough是一个布尔变量,它的取值只有0和1两种,0表示没有直接馈入,此时用户在编写mdlOutputs子函数时就要确保子函数的代码里不出现输入变量u;1表示有直接馈入。

NumSampleTimes表示采样时间的个数,也就是ts变量的行数,与用户对ts的定义有关。需要指出的是,由于s-function会忽略端口,所以当有多个输入变量或多个输出变量时,必须用mux模块或demux模块将多个单一输入合成一个复合输入向量或将一个复合输出向量分解为多个单一输出。

3、输入和输出参量说明

S-function默认的4个输入参数为t、x、u和flag,它们的次序不能变动,代表的意义分别为:

t:代表当前的仿真时间,这个输入参数通常用于决定下一个采样时刻,或者在多采样速率系统中,用来区分不同的采样时刻点,并据此进行不同的处理。

x:表示状态向量,这个参数是必须的,甚至在系统中不存在状态时也是如此。它具有很灵活的运用。

u:表示输入向量。

flag:是一个控制在每一个仿真阶段调用哪一个子函数的参数,由Simulink在调用时自动取值。

S-function默认的4个返回参数为sys、x0、str和ts,它们的次序不能变动,代表的意义分别为:

sys:是一个通用的返回参数,它所返回值的意义取决于flag的值。

x0:是初始的状态值(没有状态时是一个空矩阵[]),这个返回参数只在flag值为0时才有效,其他时候都会被忽略。

str:这个参数没有什么意义,是MathWorks公司为将来的应用保留的,m文件s-function 必须把它设为空矩阵。

ts:是一个m×2的矩阵,它的两列分别表示采样时间间隔和偏移。

例1 csfunc.m(连续状态s-function)

例2 dsfunc.m(离散状态s-function)

例3 mixedm.m(混合系统s-function)

例4 vsfunc.m(可变步长仿真系统)

例5 filt.m,rect.m,rload.m(非模板文件形式)

通信仿真课程设计-matlab-simulink

成都理工大学工程技术学院 《通信仿真课程设计》报告 班级:信息工程1班 姓名:寇路军 学号: 201620101133 指导教师:周玲 成绩: 2019 年 3月 23 日

目录 通信仿真课程设计报告 (2) 一.绪论 (2) 二.课程设计的目的 (2) 三.模拟调制系统的设计 (3) 3.1 二进制相移键控调制基本原理 (3) 3.2 2PSK信号的调制 (3) 3.2.1模拟调制的方法 (3) 3.3 2PSK信号的解调 (4) 3.4 2PSK的“倒∏现象”或“反向工作” (5) 3.5功率谱密度 (5) 四.数字调制技术设计 (7) 4.1 2PSK的仿真 (7) 4.1.1仿真原理图 (7) 4.1.2 仿真数据 (7) 4.1.3 输出结果 (9) 总结 (10) 参考文献 (11)

通信仿真课程设计报告 一.绪论 随着社会的快速发展,通信系统在社会上表现出越来越重要的作用。目前,我们生活中使用的手机,电话,Internet,ATM机等通信设备都离不开通信系统。随着通信系统与我们生活越来越密切,使用越来越广泛,对社会对通信系统的性能也越高。另外,随着人们对通信设备更新换代速度越来越快。不得不缩短通信系统的开发周期以及提高系统性能。针对这两方面的要求,必需要通过强大的计算机辅助分析设计技术和工具才能实现。自从现代以来,计算机科技走上了快速发展道路,实现了可视化的仿真软件。 通信系统仿真,在目前的通信系统工程设计当中。已成为了不可替代的一部分。它表现出很强的灵活性和适应性。为我们更好地研究通信系统性能带来了很大的帮助。本论文主要针对模拟调制系统中的二进制相移键控调制技术进行设计和基于Simulink进行仿真。通过系统仿真验证理论中的结论。本论文设计的目的之一是进一步加强理论知识,熟悉Matlab软件。 Simulink是MATLAB最重要的组件之一,它提供一个动态系统建模、仿真和综合分析的集成环境。在该环境中,无需大量书写程序,而只需要通过简单直观的鼠标操作,就可构造出复杂的系统。Simulink具有适应面广、结构和流程清晰及仿真精细、贴近实际、效率高、灵活等优点,并基于以上优点Simulink 已被广泛应用于控制理论和数字信号处理的复杂仿真和设计。同时有大量的第三方软件和硬件可应用于或被要求应用于Simulink。 二.课程设计的目的 1.掌握模拟系统2PSK调制和解调原理及设计方法。 2.熟悉基于Simulink的通信系统仿真。

Matlab Simulink 仿真步骤

MATLAB基础与应用简明教程 张明等编著 北京航空航天大学出版社(2001.01) MATLAB软件环境是美国New Mexico大学的Cleve Moler博士首创的,全名为MATrix LABoratory(矩阵实验室)。它建立在20世纪七八十年代流行的LINPACK(线性代数计算)和ESPACK(特征值计算)软件包的基础上。LINPACK和ESPACK软件包是从Fortran语言开始编写的,后来改写为C语言,改造过程中较为复杂,使用不便。MA TLAB是随着Windows环境的发展而迅速发展起来的。它充分利用了Windows环境下的交互性、多任务功能语言,使得矩阵计算、数值运算变得极为简单。MA TLAB语言是一种更为抽象的高级计算机语言,既有与C语言等同的一面,又更为接近人的抽象思维,便于学习和编程。同时,它具有很好的开放性,用户可以根据自己的需求,利用MA TLAB提供的基本工具,灵活地编制和开发自己的程序,开创新的应用。 本书重点介绍了MA TLAB的矩阵运算、符号运算、图形功能、控制系统分析与设计、SimuLink仿真等方面的内容。 Chap1 MATLAB入门与基本运算 本章介绍MATLAB的基本概念,包括工作空间;目录、路径和文件的管理方式;帮助和例题演示功能等。重点介绍矩阵、数组和函数的运算规则、命令形式,并列举了可能得到的结果。由于MA TLAB的符号工具箱是一个重要分支,其强大的运算功能在科技领域有特殊的帮助作用。 1.1 MATLAB环境与文件管理 1.2 工作空间与变量管理 1.2.1 建立数据 x1=[0.2 1.11 3]; y1=[1 2 3;4 5 6]建立一维数组x1和二维矩阵y1。分号“;”表示不显示定义的数据。 MATLAB还提供了一些简洁方式,能有规律地产生数组: xx=1:10 %xx从1到10,间隔为1 xx=-2:0.5:1 %xx从-2到1,间隔为0.5 linespace命令等距离产生数组,logspace在对数空间中等距离产生数组。对于这一类命令,只要给出数组的两端数据和维数就可以了。 xx=linespace(d1,d2,n) %表示xx从d1到d2等距离取n个点 xx=logspace(d1,d2,n) %表明xx从10d1到10d2等距离取n个点 1.2.2 who和whos命令 who: 查看工作空间中有哪些变量名 whos: 了解这些变量的具体细节 1.2.3 exist命令 查询当前的工作空间内是否存在一个变量,可以调用exist()函数来完成。 调用格式:i=exist(…A?); 式中,A为要查询的变量名。返回的值i表示A存在的形式: i=1 表示当前工作空间内存在一个变量名为A的矩阵; i=2 表示存在一个名为A.m的文件; i=3 表示MATLAB的工作路径下存在一个名为A.mex的文件;

开关电源《基于MatlabSimulink的BOOST电路仿真》

基于Matlab/Simulink 的BOOST电路仿真 姓名: 学号: 班级: 时间:2010年12月7日

1引言 BOOST 电路又称为升压型电路, 是一种直流- 直流变换电路, 其电路结构如图1 所示。此电路在开关电源领域内占有非常重要的地位, 长期以来广泛的应用于各种电源设备的设计中。对它工作过程的理解掌握关系到对整个开关电源领域各种电路工作过程的理解, 然而现有的书本上仅仅给出电路在理想情况下稳态工作过程的分析, 而没有提及电路从启动到稳定之间暂态的工作过程, 不利于读者理解电路的整个工作过程和升压原理。采用matlab仿真分析方法, 可直观、详细的描述BOOST 电路由启动到达稳态的工作过程, 并对其中各种现象进行细致深入的分析, 便于我们真正掌握BOO ST 电路的工作特性。 图1BOO ST 电路的结构 2电路的工作状态 BOO ST 电路的工作模式分为电感电流连续工作模式和电感电流断续工作模式。其中电流连续模式的电路工作状态如图2 (a) 和图2 (b) 所示, 电流断续模式的电路工作状态如图2 (a)、(b)、(c) 所示, 两种工作模式的前两个工作状态相同, 电流断续型模式比电流连续型模式多出一个电感电流为零的工作状态。 (a) 开关状态1 (S 闭合) (b) 开关状态2 (S 关断) (c) 开关状态3 (电感电流为零) 图2BOO ST 电路的工作状态

3matlab仿真分析 matlab 是一种功能强大的仿真软件, 它可以进行各种各样的模拟电路和数字电路仿真,并给出波形输出和数据输出, 无论对哪种器件和哪种电路进行仿真, 均可以得到精确的仿真结果。本文应用基于matlab软件对BOO ST 电路仿真, 仿真图如图3 所示,其中IGBT作为开关, 以脉冲发生器脉冲周期T=0.2ms,脉冲宽度为50%的通断来仿真图2 中开关S的通断过程。 图3BOO ST 电路的PSp ice 模型 3.1电路工作原理 在电路中IGBT导通时,电流由E经升压电感L和V形成回路,电感L储能;当IGBT关断时,电感产生的反电动势和直流电源电压方向相同互相叠加,从而在负载侧得到高于电源的电压,二极管的作用是阻断IGBT导通是,电容的放电回路。调节开关器件V的通断周期,可以调整负载侧输出电流和电压的大小。负载侧输出电压的平均值为: (3-1) 式(3-1)中T为开关周期, 为导通时间,为关断时间。

Simulink系统仿真课程设计

《信息系统仿真课程设计》 课程设计报告 题目:信息系统课程设计仿真 院(系):信息科学与技术工程学院 专业班级:通信工程1003 学生姓名: 学号: 指导教师:吴莉朱忠敏 2012 年 1 月 14 日至2012 年 1 月 25 日 华中科技大学武昌分校制

信息系统仿真课程设计任务书

目录 摘要 (5) 一、Simulink仿真设计 (6) 1.1 低通抽样定理 (6) 1.2 抽样量化编码 (9) 二、MATLAB仿真设计 (12) 2.1、自编程序实现动态卷积 (12) 2.1.1 编程分析 (12) 2.1.2自编matlab程序: (13) 2.1.3 仿真图形 (13) 2.1.4仿真结果分析 (15) 2.2用双线性变换法设计IIR数字滤波器 (15) 2.2.1双线性变换法的基本知识 (15) 2.2.2采用双线性变换法设计一个巴特沃斯数字低通滤波器 (16) 2.2.3自编matlab程序 (16) 2.2.4 仿真波形 (17) 2.2.5仿真结果分析 (17) 三、总结 (19) 四、参考文献 (19) 五、课程设计成绩 (20)

摘要 Matlab 是一种广泛应用于工程设计及数值分析领域的高级仿真平台。它功能强大、简单易学、编程效率高,目前已发展成为由MATLAB语言、MATLAB工作环境、MATLAB图形处理系统、MATLAB数学函数库和MATLAB应用程序接口五大部分组成的集数值计算、图形处理、程序开发为一体的功能强大的系统。本次课程设计主要包括MATLAB和SIMULINKL 两个部分。首先利用SIMULINKL 实现了连续信号的采样及重构,通过改变抽样频率来实现过采样、等采样、欠采样三种情况来验证低通抽样定理,绘出原始信号、采样信号、重构信号的时域波形图。然后利用SIMULINKL 实现抽样量化编码,首先用一连续信号通过一个抽样量化编码器按照A律13折线进量化行,观察其产生的量化误差,其次利用折线近似的PCM编码器对一连续信号进行编码。最后利用MATLAB进行仿真设计,通过编程,在编程环境中对程序进行调试,实现动态卷积以及双线性变换法设计IIR数字滤波器。 本次课程设计加深理解和巩固通信原理、数字信号处理课上所学的有关基本概念、基本理论和基本方法,并锻炼分析问题和解决问题的能力。

matlabsimulink初级教程

S i m u l i n k仿真环境基础学习Simulink是面向框图的仿真软件。 7.1演示一个Simulink的简单程序 【例7.1】创建一个正弦信号的仿真模型。 步骤如下: (1)在MATLAB的命令窗口运行simulink命令,或单击工具栏中的图标,就可以打开Simulink模块库浏览器(SimulinkLibraryBrowser)窗口,如图7.1所示。

图7.1Simulink界面 (2)单击工具栏上的图标或选择菜单“File”——“New”——“Model”,新建一个名为“untitled”的空白模型窗口。 (3)在上图的右侧子模块窗口中,单击“Source”子模块库前的“+”(或双击Source),或者直接在左侧模块和工具箱栏单击Simulink下的Source子模块库,便可看到各种输入源模块。 (4)用鼠标单击所需要的输入信号源模块“SineWave”(正弦信号),将其拖放到的空白模型窗口“untitled”,则“SineWave”模块就被添加到untitled窗口;也可以用鼠标选中“SineWave”模块,单击鼠标右键,在快捷菜单中选择“addto'untitled'”命令,就可以将“SineWave”模块添加到untitled窗口,如图7.2所示。

(5) Scope ”模块(示波器)拖放到“untitled ”窗口中。 (6)在“untitled ”窗口中,用鼠标指向“SineWave ”右侧的输出端,当光标变为十字符时,按住鼠标拖向“Scope ”模块的输入端,松开鼠标按键,就完成了两个模块间的信号线连接,一个简单模型已经建成。如图7.3所示。 (7)开始仿真,单击“untitled ”模型窗口中“开始仿真”图标 ,或者选择菜单“Simulink ”——“Start ”,则仿真开始。双击“Scope ” 模块出现示波器显示屏,可以看到黄色的正弦波形。如图7.4所示。 图7.2Simulink 界面

基于Simulink仿真双闭环系统综合课程设计

- -- 课程设计 双闭环直流调速系统设计及仿真验证 学院年级:工程学院08级 组长:陈春明学号2 08自动化1班成员一:陈木生学号3 08自动化1班 指导老师: 日期:2012-2-28 华南农业大学工程学院

摘要 转速、电流双闭环调速系统是应用最广的直流调速系统,由于其静态性能良好,动态响应快,抗干扰能力强,因而在工程设计中被广泛地采用。现在直流调速理论发展得比较成熟,但要真正设计好一个双闭环调速系统并应用于工程设计却有一定的难度。 Matlab是一高性能的技术计算语言,具有强大的科学数据可视化能力,其中Simulink具有模块组态简单、性能分析直观的优点,方便了系统的动态模型分析。应用Simulink来研究双闭环调速系统,可以清楚地观察每个时刻的响应曲线,所以可以通过调整系统的参数来得出较为满意的波形,即良好的性能指标,这给分析双闭环调速系统的动态模型带来很大的方便。 本研究采用工程设计方法,并利用Matlab协助分析双闭环调速系统,依据自动控制系统快、准、稳的设计要求,重点分析系统的起动过程。 关键词:双闭环直流调速Simulink 自动控制

目录 1、直流电机双闭环调速系统的结构分析....................... 1.1 双闭环调速系统的组成............................... 1.2 双闭环调速系统的结构.................................... 2 、建立直流电机双闭环调速系统的模型............................ 2.1 小型直流调速系统的指标及参数......................... 2.2 电流环设计............................................... 2.3 转速环设计................................................ 3、直流电动机双闭环调速系统的MATLAB仿真.................... 3.1 系统框图的搭建............................................. 3.2 PI控制器参数的设置...................................... 3.3 仿真结果.................................................... 4、结论与总结....................................................... 5、参考资料.......................................................

Matlab Simulink中异步电机模型说明文档

Description The Asynchronous Machine block operates in either generator or motor mode. The mode of operation is dictated by the sign of the mechanical torque: Mechanical System s ls

Preset model Provides a set of predetermined electrical and mechanical parameters for various asynchronous machine ratings of power (HP), phase-to-phase voltage (V), frequency (Hz), and rated speed (rpm). Select one of the preset models to load the corresponding electrical and mechanical parameters in the entries of the dialog box. Note that the preset models do not include predetermined saturation parameters. Select No if you do not want to use a preset model, or if you want to modify some of the parameters of a preset model, as described below. When you select a preset model, the electrical and mechanical parameters in the Parameters tab of the dialog box become unmodifiable (grayed out). To start from a given preset model and then modify machine parameters, you have to do the following: Select the desired preset model to initialize the parameters. 1. 2. Change the Preset model parameter value to No. This will not change the machine parameters. By doing so, you just break the connection with the particular preset model. 3. Modify the machine parameters as you wish, then click Apply. Mechanical input Allows you to select either the torque applied to the shaft or the rotor speed as the Simulink signal applied to the block's input. Select Torque Tm to specify a torque input, in N.m or in pu, and change labeling of the block's input to Tm. The machine speed is determined by the machine Inertia J (or inertia constant H for the pu machine) and by the difference between the applied mechanical torque Tm and the internal electromagnetic torque Te. The sign convention for the mechanical torque is the following: when the speed is positive, a positive torque signal indicates motor mode and a negative signal indicates generator mode. Select Speed w to specify a speed input, in rad/s or in pu, and change labeling of the block's input to w. The machine speed is imposed and the mechanical part of the model (Inertia J) is ignored. Using the speed as the mechanical input allows modeling a mechanical coupling between two machines and interfacing with SimMechanics? and SimDriveline? models. The next figure indicates how to model a stiff shaft interconnection in a motor-generator set when friction torque is ignored in machine 2. The speed output of machine 1 (motor) is connected to the speed input of machine 2 (generator), while machine 2 electromagnetic torque output Te is applied to the mechanical torque input Tm of machine 1. The Kw factor takes into account speed units of both machines (pu or rad/s) and gear box ratio w2/w1. The KT factor takes into account torque units of both machines (pu or N.m) and machine ratings. Also, as the inertia J2 is ignored in machine 2, J2 referred to machine 1 speed must be added to machine 1 inertia J1.

通信仿真课程设计-matlab-simulink

理工大学工程技术学院 《通信仿真课程设计》报告 班级:信息工程1班 姓名:寇路军 学号: 3 指导教师:周玲 成绩: 2019 年 3月 23 日

目录 通信仿真课程设计报告 (2) 一.绪论 (2) 二.课程设计的目的 (2) 三.模拟调制系统的设计 (3) 3.1 二进制相移键控调制基本原理 (3) 3.2 2PSK信号的调制 (3) 3.2.1模拟调制的方法 (3) 3.3 2PSK信号的解调 (4) 3.4 2PSK的“倒∏现象”或“反向工作” (5) 3.5功率谱密度 (5) 四.数字调制技术设计 (7) 4.1 2PSK的仿真 (7) 4.1.1仿真原理图 (7) 4.1.2 仿真数据 (7) 4.1.3 输出结果 (9) 总结 (10) 参考文献 (11)

通信仿真课程设计报告 一.绪论 随着社会的快速发展,通信系统在社会上表现出越来越重要的作用。目前,我们生活中使用的手机,,Internet,ATM机等通信设备都离不开通信系统。随着通信系统与我们生活越来越密切,使用越来越广泛,对社会对通信系统的性能也越高。另外,随着人们对通信设备更新换代速度越来越快。不得不缩短通信系统的开发周期以及提高系统性能。针对这两方面的要求,必需要通过强大的计算机辅助分析设计技术和工具才能实现。自从现代以来,计算机科技走上了快速发展道路,实现了可视化的仿真软件。 通信系统仿真,在目前的通信系统工程设计当中。已成为了不可替代的一部分。它表现出很强的灵活性和适应性。为我们更好地研究通信系统性能带来了很大的帮助。本论文主要针对模拟调制系统中的二进制相移键控调制技术进行设计和基于Simulink进行仿真。通过系统仿真验证理论中的结论。本论文设计的目的之一是进一步加强理论知识,熟悉Matlab软件。 Simulink是MATLAB最重要的组件之一,它提供一个动态系统建模、仿真和综合分析的集成环境。在该环境中,无需大量书写程序,而只需要通过简单直观的鼠标操作,就可构造出复杂的系统。Simulink具有适应面广、结构和流程清晰及仿真精细、贴近实际、效率高、灵活等优点,并基于以上优点Simulink 已被广泛应用于控制理论和数字信号处理的复杂仿真和设计。同时有大量的第三方软件和硬件可应用于或被要求应用于Simulink。 二.课程设计的目的 1.掌握模拟系统2PSK调制和解调原理及设计方法。 2.熟悉基于Simulink的通信系统仿真。

simulink-matlab仿真教程

simulink matlab 仿真环境教程 Simulink 是面向框图的仿真软件。 演示一个Simulink 的简单程序 【例1.1】创建一个正弦信号的仿真模型。 步骤如下: (1) 在MATLAB 的命令窗口运行simulink 命令,或单击工具栏中的图标,就可以打开Simulink 模块库浏览器 (Simulink Library Browser) 窗口,如图1.1所示。 (2) 单击工具栏上的图标或选择菜单“File ”——“New ”——“Model ”,新建一个名为“untitled ”的空白 模型窗口。 (3) 在上图的右侧子模块窗口中,单击“Source ”子模块库前的“+”(或双击Source),或者直接在左侧模块和工具箱栏单击Simulink 下的Source 子模块库,便可看到各种输入源模块。 (4) 用鼠标单击所需要的输入信号源模块“Sine Wave ”(正弦信号),将其拖放到的空白模型窗口“untitled ”,则“Sine Wave ”模块就被添加到untitled 窗口;也可以用鼠标选中“Sine Wave ”模块,单击鼠标右键,在快捷菜单中选择“add to 'untitled'”命令,就可以将“Sine Wave ”模块添加到untitled 窗口,如图1.2 所示。 图7.1 Simulink 界面

(5) 用同样的方法打开接收模块库“Sinks”,选择其中的“Scope ”模块(示波器)拖放到“untitled”窗口中。 (6) 在“untitled”窗口中,用鼠标指向“Sine Wave”右侧的输出端,当光标变为十字符时,按住鼠标拖向“Scope”模块的输入端,松开鼠标按键,就完成了两个模块间的信号线连接,一个简单模型已经建成。如图1.3所示。 (7) 开始仿真,单击“untitled”模型窗口中“开始仿真”图标,或者选择菜单“Simulink”——“Start”,则仿真开始。双击“Scope”模块出现示波器显示屏,可以看到黄色的正弦波形。如图1.4所示。 (8) 保存模型,单击工具栏的图标,将该模型保存为“Ex0701.mdl”文件。 1.2 Simulink的文件操作和模型窗口 1.2.1 Simulink的文件操作 1. 新建文件 新建仿真模型文件有几种操作: ?在MATLAB的命令窗口选择菜单“File”“New”“Model”。 图7.2 Simulink界面 图7.3 Simulink模型窗口 图7.4 示波器窗口

基于MATLAB的M文件仿真

M文件: k=1; Int_F=inline('t','t'); for x=[1,3,5] f_x(k)=x^3+x+log(x)*sin(x)+quad8(Int_F,0,x); k=k+1; end f_x >> Calcfx Warning: QUAD8 is obsolete. We use QUADL instead. > In quad8 at 35 In Calcfx at 4 f_x = 2.5000 34.6550 140.9567 M文件: function[mean,stdev]=stat(x) n=length(x); mean=sum(x)/n; stdev=sqrt(sum(x-mean).^2/n); >> x=[1,3,2]; >> [k,l]=stat(x) k = 2 l = 微积分方程组的MA TLAB函数: 文件funcforex123.m function xdot=funcforex123(t,x,flag,r,l,c) xdot=zeros(2,1); xdot(1)=-r/l*x(1)-1/l*x(2)+1/l*f(t); xdot(2)=1/c*x(1); function in=f(t) in=(t>0)*1; 文件Ex123.m l=1; c=0.1; for r=[1.5 3 5]

[t,x]=ode45('funcforex123',[-1,10],[0;0],[],r,l,c); figure(1);plot(t,x(:,1));hold on;xlabel('time sec'); text(0.9,0.17,'\lefttarrow i_L(t)');grid; figure(2);plot(t,x(:,2));hold on;xlabel('time sec'); text(0.5,0.3,'\leftarrow u_C(t)');grid; End >> ex123 Warning: Unable to interpret TeX string "\lefttarrow i_L(t)". > In ex123 at 5 Warning: Unable to interpret TeX string "\lefttarrow i_L(t)". > In ex123 at 7 Warning: Unable to interpret TeX string "\lefttarrow i_L(t)". > In ex123 at 7

matlab-simulink 初级教程

Simulink仿真环境基础学习 Simulink是面向框图的仿真软件。 7.1演示一个Simulink的简单程序 【例7.1】创建一个正弦信号的仿真模型。 步骤如下: (1) 在MATLAB的命令窗口运行simulink命令,或单击工具栏中的图标,就可以打开Simulink模块库浏览器(Simulink Library Browser) 窗口,如图7.1所示。

(2) 单击工具栏上的图标或选择菜单“File ”——“New ”——“Model ”,新建一个名为“untitled ”的空白模型窗口。 (3) 在上图的右侧子模块窗口中,单击“Source ”子模块库前的“+”(或双击Source),或者直接在左侧模块和工具箱栏单击Simulink 下的Source 子模块库,便可看到各种输入源模块。 (4) 用鼠标单击所需要的输入信号源模块“Sine Wave ”(正弦信号),将其拖放到的空白模型窗口“untitled ”,则“Sine Wave ”模块就被添加到untitled 窗口;也可以用鼠标选中“Sine Wave ”模块,单击鼠标右键,在快捷菜单中选择“add to 'untitled'”命令,就可以将“Sine Wave ”模块添加到untitled 窗口,如图7.2所示。 图7.1 Simulink 界面

(5) 用同样的方法打开接收模块库“Sinks”,选择其中的“Scope”模块(示波器)拖放到“untitled”窗口中。 (6) 在“untitled”窗口中,用鼠标指向“Sine Wave”右侧的输出端,当光标变为十字符时,按住鼠标拖向“Scope”模块的输入端,松开鼠标按键,就完成了两个模块间的信号线连接,一个简单模型已经建成。如图7.3所示。 (7) 开始仿真,单击“untitled ”模型窗口中“开始仿真”图标,或者选择菜单“Simulink”——“Start”,则仿真开始。双击“Scope”模块出现示波器显示屏, 可以看到黄色的正弦波形。如图7.4所示。 图7.2 Simulink界面

matlab的Simulink简介

Simulink是MATLAB最重要的组件之一,它提供一个动态系统建模、仿真和综合分析的集成环境。在该环境中,无需大量书写程序,而只需要通过简单直观的鼠标操作,就可构造出复杂的系统。Simulink具有适应面广、结构和流程清晰及仿真精细、贴近实际、效率高、灵活等优点,并基于以上优点Simulink已被广泛应用于控制理论和数字信号处理的复杂仿真和设计。同时有大量的第三方软件和硬件可应用于或被要求应用于Simulink。 Simulink是MATLAB中的一种可视化仿真工具,是一种基于MATLAB的框图设计环境,是实现动态系统建模、仿真和分析的一个软件包,被广泛应用于线性系统、非线性系统、数字控制及数字信号处理的建模和仿真中。Simulink可以用连续采样时间、离散采样时间或两种混合的采样时间进行建模,它也支持多速率系统,也就是系统中的不同部分具有不同的采样速率。为了创建动态系统模型,Simulink提供了一个建立模型方块图的图形用户接口(GUI) ,这个创建过程只需单击和拖动鼠标操作就能完成,它提供了一种更快捷、直接明了的方式,而且用户可以立即看到系统的仿真结果。 Simulink;是用于动态系统和嵌入式系统的多领域仿真和基于模型的设计工具。对各种时变系统,包括通讯、控制、信号处理、视频处理和图像处理系统,Simulink提供了交互式图形化环境和可定制模块库来对其进行设计、仿真、执行和测试。. 构架在Simulink基础之上的其他产品扩展了Simulink多领域建模功能,也提供了用于设计、执行、验证和确认任务的相应工具。Simulink与MATLAB® 紧密集成,可以直接访问MATLAB大量的工具来进行算法研发、仿真的分析和可视化、批处理脚本的创建、建模环境的定制以及信号参数和测试数据的定义。 丰富的可扩充的预定义模块库 交互式的图形编辑器来组合和管理直观的模块图 以设计功能的层次性来分割模型,实现对复杂设计的管理 通过Model Explorer 导航、创建、配置、搜索模型中的任意信号、参数、属性,生成模型代码 提供API用于与其他仿真程序的连接或与手写代码集成 使用Embedded MATLAB?模块在Simulink和嵌入式系统执行中调用MATLAB算法 使用定步长或变步长运行仿真,根据仿真模式(Normal,Accelerator,Rapid Accelerator)来决定以解释性的方式运行或以编译C代码的形式来运行模型 图形化的调试器和剖析器来检查仿真结果,诊断设计的性能和异常行为 可访问MATLAB从而对结果进行分析与可视化,定制建模环境,定义信号参数和测试数据 模型分析和诊断工具来保证模型的一致性,确定模型中的错误 平面连杆机构 英文名称: planar linkage mechanism

Simulink 下实现PID 控制器控制效果地验证(过程计算机控制课程设计)

1.设计任务 设被控对象的传递函数是 建立Simulink模型: 采用Ziegler- Nichols经验公式对PID参数进行整定,从而确定比例放大系数Kp,积分时间常数Ti,微分时间常数Td。最后,通过在t=4000s时,外加一个幅值为15的扰动信号来验证该控制系统的控制效果。 2.MATLAB/SIMULINK软件简介(800字左右) Simulink是MATLAB最重要的组件之一,它提供一个动态系统建模、仿真和综合分析的集成环境。在该环境中,无需大量书写程序,而只需要通过简单直观的鼠标操作,就可构造出复杂的系统。Simulink具有适应面广、结构和流程清晰及仿真精细、贴近实际、效率高、灵活等优点,并基于以上优点Simulink已被广泛应用于控制理论和数字信号处理的复杂仿真和设计。同时有大量的第三方软件和硬件可应用于或被要求应用于Simulink。Simulink是MATLAB中的一种可视化仿真工具,是一种基于MATLAB的框图设计环境,

是实现动态系统建模、仿真和分析的一个软件包,被广泛应用于线性系统、非线性系统、数字控制及数字信号处理的建模和仿真中。Simulink可以用连续采样时间、离散采样时间或两种混合的采样时间进行建模,它也支持多速率系统,也就是系统中的不同部分具有不同的采样速率。为了创建动态系统模型,Simulink提供了一个建立模型方块图的图形用户接口(GUI) ,这个创建过程只需单击和拖动鼠标操作就能完成,它提供了一种更快捷、直接明了的方式,而且用户可以立即看到系统的仿真结果。Simulink是用于动态系统和嵌入式系统的多领域仿真和基于模型的设计工具。对各种时变系统,包括通讯、控制、信号处理、视频处理和图像处理系统,Simulink提供了交互式图形化环境和可定制模块库来对其进行设计、仿真、执行和测试。. 构架在Simulink基础之上的其他产品扩展了Simulink多领域建模功能,也提供了用于设计、执行、验证和确认任务的相应工具。Simulink与MATLAB 紧密集成,可以直接访问MATLAB大量的工具来进行算法研发、仿真的分析和可视化、批处理脚本的创建、建模环境的定制以及信号参数和测试数据的定义。 其特点:丰富的可扩充的预定义模块库 交互式的图形编辑器来组合和管理直观的模块图 以设计功能的层次性来分割模型,实现对复杂设计的管理 通过Model Explorer 导航、创建、配置、搜索模型中的任意信号、参数、属性,生成模型代码 提供API用于与其他仿真程序的连接或与手写代码集成 使用Embedded MATLAB?模块在Simulink和嵌入式系统执行中调用MATLAB算法 使用定步长或变步长运行仿真,根据仿真模式(Normal,Accelerator,Rapid Accelerator)来决定以解释性的方式运行或以编译C代码的形式来运行模型

基于Simulink的简单电力系统仿真

实验六 基于Simulink 的简单电力系统仿真 实验目的 1) 熟悉Simulink 的工作环境; 2) 掌握Simulink 电力系统工具箱的使用; 3) 掌握在Simulink 的工作环境中建立简单电力系统的仿真模型 实验内容 输电线路电路参数建模时采用电力系统分析中常用的π型等值电路,搭建如图1所示的一个简单交流单相电力系统,在仿真进行中,负载通过断路器切除并再次投入。π型等值电路具体元件参数如下:Ω=2.5R ,H L 138.0=, F C C μ967.021==。 图1 简单电力系统仿真示意图 1) 在Simulink 中建立简单交流单相电力系统模型,并进行仿真,观测负载电流和输电线路末端电压; 2) 结合理论知识分析上述观测信号变化的原因; 3) 比较不同功率因数,如cos φ=1、cos φ=0.8(感性)、cos φ=0.8(容性)负载条件下的仿真结果 实验原理与方法 1、系统的仿真电路图 实验步骤 根据所得建立模型,给定参数,得到仿真结果 cos φ=1 cos φ=0.8(感性) cos φ=0.8(容性)

实验结果与分析 cosφ=1 cosφ=0.8(感性) cosφ=0.8(容性) 仿真结果分析 (1)在纯阻性负载电路中,电压相位与电流相位相同;与感性负载相比,断路器重新闭合后电流没有额外的直流分量。 (2)在感性负载中,电压相位超前电流相位;断路器重新闭合时,交变的电流瞬间增加了一个直流分量,随后逐渐减小。 (3)在容性负载中,电压相位滞后于电流相位;断路器重新闭合时,电流瞬间突变至极大;与感性负载和纯阻性负载相比,断路器断开时的末端电压由于有电容放电作用,电压波形畸变很小。 (4)当断路器断开时,线路断路,电流突变为0,但电压行波仍在进行,因此在末端能够测量到连续的电压波形,但断路器断开对电压波形造成了影响,产生了畸变。这是由于能量是通过电磁场传递的,线路断开时电压继续向前传递。 总括:L和C对输出波形振荡的频率和幅度影响程度不同,当变化相同幅度时,电容对振荡频率和幅度的影响要比电感的大。 感想:Matlab中Simulik通过拖拉建模方式对电路进行仿真,具有快捷、方便、灵活的特点。Simulink的仿真电路简洁、参数调整方便。仿真结果直观。 通过本次实验,我认识到了建模与仿真的一般性方法,收获甚多,也更进一步了解了Matlab,Matlab不仅仅在平时的编程方面功能强大,在仿真方面也熠熠生辉。

基于simulink的综合通信实验报告

湖南科技大学 信息与电气工程学院《课程设计报告》 题目:综合通信系统课程设计 专业:*** 班级:*** 姓名:*** 学号:***

任务书 题目综合通信系统课程设计 时间安排第七学期的第19-20两周 目的: 1、掌握通信系统的基本构成; 2、掌握通信系统工作原理; 3、了解通信系统设计的基本过程;掌握基本理论和解决实际问题的方法,锻炼学生综合分析问题解决问题的能力。 4、为学生的毕业设计和以后的工作打下良好的基础。 要求: 课程设计前,学生必须知道课程设计的目的以及教师所规定的任务及其具体要求,有针对性地进行预习和设计。课程设计时,学生必须遵守实验室纪律,严格考勤登记,服从指导老师和实验室工作人员的安排。课程设计结束后,学生必须向所指导教师提交课程设计报告,且课程设计报告要求字迹清楚,版面整洁,报告内容包括调试过程和结果以及心得体会。 总体方案实现:本课程设计主要是利用simulink、通信系统工具箱以及信号处理工具箱来完成通信系统的设计与仿真。Simulink是MATLAB提供的实现动态系统建模和仿真的一个软件包,许多工具箱里的模块都被封装成了Simulink模块。MATLAB中的通信系统工具箱是一个运算函数和仿真模块的集合体,可以用来进行通信领域的研究、开发、系统设计和仿真。使用MATLAB软件,设计通信系统,配置各个通信组成部分的参数,通过仿真可以得到仿真波形,很明显的可以观察到参数不同仿真结果不尽相同。 指导教师评语:

一、设计目的和任务 综合通信系统课程设计是电子信息工程专业和通信工程专业教学的一个实践性与综合性环节,是电子信息工程专业及通信工程专业各门课程的综合以及通信、信息、信号处理等基本理论与实践相结合的部分。主要是为了让学生利用所学的专业理论知识以及实践环节所积累的经验,结合实际的通信系统的各个环节,设计出一个完整综合通信系统,并进一步加深学生对通信系统的深入理解,培养学生设计通信系统的能力,为毕业设计和以后的工作打下良好的基础。 1、设计目的: 1、掌握通信系统的基本构成; 2、掌握通信系统工作原理; 3、了解通信系统设计的基本过程;掌握基本理论和解决实际问题的方法,锻炼学生综合分析问题解决问题的能力。 5、为学生的毕业设计和以后的工作打下良好的基础。 2、设计任务: 1、设计通信系统的各个环节; 2、将上述设计好的各个环节设计成一个综合通信系统。 二、设计工具介绍 本课程设计主要是利用simulink、通信系统工具箱以及信号处理工具箱来完成通信系统的设计与仿真。 1、Simulink Simulink是MATLAB提供的实现动态系统建模和仿真的一个软件包。它让用户把精力从编程转向模型的构造,经常与其它工具箱一起使用,实际上,许多工具箱里的模块都被封装成了Simulink模块。 2、通信系统工具箱及其功能 2.1 通信系统工具箱概述 MATLAB中的通信系统工具箱是一个运算函数和仿真模块的集合体,可以用来进行通信领域的研究、开发、系统设计和仿真。通信系统工具箱中包含的模块

相关文档
最新文档