文档库 最新最全的文档下载
当前位置:文档库 › MATLAB,Simulink与Modelsim联合仿真步骤及实例[1]

MATLAB,Simulink与Modelsim联合仿真步骤及实例[1]

MATLAB,Simulink与Modelsim联合仿真步骤及实例[1]
MATLAB,Simulink与Modelsim联合仿真步骤及实例[1]

目录

1:什么是link for modelsim

2:link for modelsim的安装与设置

3:使用link for modelsim仿真的实例

什么是link for modelsim

Link for modelsim是一个联合仿真的接口,它将MathWorks工具整合到EDA工作环境中,使其应用于FPGA和ASIC的开发。这个接口在HDL仿真器ModelSim SE/PE于MathWorks的产品Matlab和SimuLink间提供了一个双向连接,以指导硬件的设计验证和联合仿真。这种整合可以分别充分发挥Matlab/SimuLink和ModelSim各自的优势。1.联合仿真环境

Link for ModelSim是一个客户/服务器的车是平台和联合仿真应用,ModelSim在这个仿真环境中所起的作用取决于ModelSim与Matlab还是SimuLink连接,本说明只讲ModelSim与Matlab的连接。

a.ModelSim与Matlab连接

当与Matlab相连接时,ModelSim作为客户端,如下图所示:

在这个模式中,Matlab服务器等到ModelSim客户端发出的服务请求,当接收到一个请求时,Matlab建立一个通信连接,而且调用一个指定的Matlab函数,这个函数封装了用于计算数据以验证或者使当前在ModelSim中仿真的HDL模型的可视化。

下图显示了在一个测试平台环境中Matlab函数如何与ModelSim进行通信

Matlab服务器可以用于多个HDL实体之间的联合仿真,但是你必须为多个HDL实体指定一个通信方式使他们可以相互通信,下图显示了两个ModelSim客户端如何连接到服务器的TCP/IP的4449端口:

回到目录

2.通信模式

在ModelSim和Matlab之间的通信模式有共享内存和网络两种,当你的ModelSim和MatLab运行与同一个系统的时候,可以指定为共享内存方式和网络方式,但共享内存方式更加合适,其也是默认的方式。

网络方式的应用范围更加广泛,它可以应用于单系统和网络环境,对于有增长潜力的系统它更加适合。

使用link for modelsim的过程

1.安装和设置

a.确定应用环境要求

b.对配置作出决定

c.如为网络环境,则识别出服务器

d.选择TCP/IP端口

e.检查产品要求

f.安装相关应用软件

g.安装Link for modelsim

h.设置modelsim

Link for modelsim的安装与设置

当所有要求的软件都已经安装好了以后,你就可以安装modelsim,使它可以与Matlab 或simulink一起工作,你可以立即完成或者稍后在完成这份工作。为配置ModelSim使它可以与Link for ModelSim一起工作,作为安装的以部分,可以使用Matlab函数setupmodelsim.setupmodelsim函数为Modelsim仿真器注册一个新的Matlab和Simulink相关的Tcl令,通过在Modelsim安装目录中创建文件...\tcl\ModelSimTclFunctionsForMATLAB.tcl。注意,setupmodelsim并不选择所配置的Modelsim为使用vsim命令时的默认仿真器。

你可以使用setupmodelsim命令用交互式或者命令行的方式,交互式的方式显示小心和提示。命令行的方式在教本方式下可以使用,以下为如何使用交互式方式:

1.在matlab命令提示符或键入:

Setupmodelsim

又或者你可以指定属性名称和属性值‘action’,‘install’

安装教本提示你确认你相为Link for modelsim安装的Modelsim的版本

Identify the ModelSim installation to be configured for MATLAB and Simulink

Do you want setupmodelsim to locate installed ModelSim executables [y]/n?n

2.指定一个已经安装的modelsim版本,如果你想明确指定已经安装的modelsim的路径的话,可以键入n,命令提示符提示你输入一个明确的路径

Please enter the path to your ModelSim executable

file(modelsim.exe or vsim.exe):

回到目录

如果你希望setupmodelsim定位和显示所有已经安装的modelsim的版本,键入y或者直接按enter键,函数将搜索已经安装的modelsim版本而且显示如下:

Select a ModelSim installation:

[1]d:\Modeltech_6.1b\win32ModelSim SE6.1b

[0]None

Selected Modelsim installation:

3.根据第2步得到得信息,键入完整得Modelsim或者vsim可执行文件得路径,或者从列表中选择一个已经搜索到得版本,键入1。函数将修改已经安装的文件,并显示如下:Previous MATLAB startup file found in this installation of ModelSim:

d:\Modeltech_6.1b\win32\..\tcl\ModelSimTclFunctionsForMATLAB.tcl

Do you want to replace this file[y]/n?y

是否替代已经安装得文件?y是,n否。

Modelsim successfully configured for MATLAB and Simulink

仿真实例

一:加法器的仿真

本实例假设已经安装了link for modelsim和相关的软件。

1.加法器的verilog代码入下:

module add8(sum,cout,a,b,cin);

output[7:0]sum;

output cout;

input[7:0]a,b;

input cin;

assign{cout,sum}=a+b+cin;

endmodule

2.在使用link for modelsim仿真时,你必须建立一个满足仿真要求的Matlab函数,在此例中,函数的代码如下:

function[iport,tnext]=add8(oport,tnow,portinfo)

persistent odata?

persistent inc?

tnext=[]?

iport=struct()?

if isempty(odata)

inc=0?

end

tnext=tnow+1e-8?%下次modelsim调用matlab函数的时间,距开始的时间,以秒为单位

a=int8(10+40*rand(1))?%tnow为这次mdoelsim调用matlab函数的时间

b=int8(10+40*rand(1))?

cin=randint(1)?

iport.a=dec2bin(a,8)?

回到目录

iport.b=dec2bin(b,8)?

iport.cin=dec2bin(cin,1)?

odata.a(inc+1)=a?odata.b(inc+1)=b?odata.cin(inc+1)=cin?

odata.dout(inc+1)=mvl2dec(oport.sum)?

odata.cout(inc+1)=mvl2dec(oport.cout)?

if(inc==50)

for i=1:50

x=[odata.a(i),odata.b(i),odata.cin(i)?odata.dout(i),odata.cout(i),0]?

disp(i)?

disp(x)?

end

end

inc=inc+1?

函数说明:

a.function[iport,tnext]=add8(oport,tnow,portinfo),指定函数名和相关的参数。这个函

数定义了matlab与modelsim相互通信的通道,当定义函数时应考虑以下几点:

(1).默认情况下,link for modelsim假设matlab函数名与VHDL实体名相同,你也可以

明确指定与当前仿真相关的matlab函数名。

(2).函数必须包括2个输出参数,iport,tnext,3个输入参数oport,tnow,portinfo。注意参

数的名字可以不同。以下简要说明各个参数的意义:

Iport:指定VHDL实体的输入端口,并可以对其赋值。如上例中

iport.a=dec2bin(a,8)?指定Verilog实体中的a赋值为随机数a转化为的8位二进制数

iport.b=dec2bin(b,8)?指定verilog实体中的b赋值为随机数b转化为的8位二进制数

iport.cin=dec2bin(cin,1)?指定verilog实体中的进位cin为随机数cin转化为的1位二进制。

Tnext:指定下次回调matlab函数的时间(距仿真开始时),默认单位位秒,如

tnext=tnow+1e-8?指定下次回调matlab函数的时间为距这次调用matlab函数1e-8秒。

Oport:接收VHDL实体的输出端口的输出值,如:

odata.dout(inc+1)=mvl2dec(oport.sum);dout等于输出端口sum的输出值

odata.cout(inc+1)=mvl2dec(oport.cout)?cout等于输出端口cout的输出值

tnow:此次回调matlab函数的时间

portinfo:第一次调用matlab函数时返回端口的信息。

(3):注意,输出参数,iport,tnext必须被初始化为空值。

tnext=[]?

iport=struct()?

因为每次都重新开始调用函数,所以一定要用persistent或者global变量类型保存每次所获得的值。

(4):注意,为VHDL实体定义的数据端口的类型,由matlab输入的数据必须转化为HDL模型可以接收的数据,如:iport.a=dec2bin(a,8)?将a转化为8位二进制。

从HDL模型中得到的输出也必须转换位matlab中可以比较的数据,以便于输出,比较。如

回到目录

odata.dout(inc+1)=mvl2dec(oport.sum)?将sum端口的输出值转化为十进制。详细资料可以参考matlab帮助文档。

(5):显示输出结果,便于分析模型的正确性。

3.将以上两个文件一道一个有写权限的文件夹。此例中将他们移到D:\simulate\MyPlayerArea 4.启动matlab程序,改变当前工作目录为刚才所建立的目录

5.建立连接:在matlab命令窗口中输入hdldaemon命令,建立连接。

(a).hdldaemon(‘status’)显示当前连接的情况,如:

没有连接的情况

hdldaemon('status')

HDLDaemon is NOT running

b:建立连接,默认为共享内存方式

>>hdldaemon

HDLDaemon shared memory server is running with0connections

>>hdldaemon('status')

HDLDaemon shared memory server is running with0connections

c:建立连接,以网络模式进行通信,端口好为4999。

>>hdldaemon('socket','4999')

HDLDaemon socket server is running on port4999with0connections

>>hdldaemon('status')

HDLDaemon socket server is running on port4999with0connections

>>

6.启动modelsim.

在命令窗口中输入vsim

vsim('PropertyName','PropertyValue'...)

vsim的参数名和参数值:

当你使用这个命令启动modelsim仿真器以后,你可以使用modelsim命令行的方式,

加载将要使用matlab或者simulink仿真的VHDL实体;

使用wrapverilog命令封装verilog代码。和编译vhdl实体(详见wrapverilog和vcom)propertyName和propertyvalue允许你自定义tcl命令以启动modelsim,如使用哪个vsim可执行文件,存储开始时执行命令的DO文件的路径和名字,和对于simulink,具体的通信模式。所用属性名和属性值对:

'tclstart','tcl_commands'

指定一个或者多个tcl命令,在modelsim启动后执行。

'vsimdir','pathname'

指定所使用modelsim程序的版本和其路径。

'startupfile','pathname'

指定DO文件的路径和名称

例如:

vsim('tclstart','vsimmatlab work.parse;matlabtb parse10ns

-socket4449')

7.启动modelsim后,建立一个新的新的工程,vlib work,建立一个新的工程名位work,显示如下。

回到目录

8.编译verilog代码vlog add8.v编译add8.v verilog文件,显示如上。

9.将add8verilog模块封装为vhdl实体。

使用wrapverilog–nocompile add8命令将上步得到的add8模块封装为vhdl实体,-nocompile 参数指明在封装的时候不进行编译,此命令得到add8_wrap.vhd文件

9.编译add8_wrap.vhd文件。

vcom–performdefaultbinding add8_wrap.vhd,运行此命令后显示如上。

10.加载需要仿真的VHDL实体

vsimmatlab add8_wrap

11.初始化测试平台,为当前的仿真。

matlabtb add8_wrap-mfunc add8,初始化测试平台,指定回调的matlab函数为add8.

12.初始化时钟信号和其它信号,在此例中不用,详见matlab帮助文档。

13.启动仿真

run10000

回到目录

此命令指示modelsim仿真10000个时间单元(10000ns,使用默认的时间周期)

14.分析结果。

在matlab中得到的显示为

由以上可以看到,此加法器的逻辑时正确的,输出的结果比输入延时一个时钟周期。

回到目录

现代信号处理Matlab仿真——例611

例6.11 利用卡尔曼滤波估计一个未知常数 题目: 设已知一个未知常数x 的噪声观测集合,已知噪声v(n)的均值为零, 方差为 ,v(n)与x 不相关,试用卡尔曼滤波估计该常数 题目分析: 回忆Kalman 递推估计公式 由于已知x 为一常数,即不随时间n 变化,因此可以得到: 状态方程: x(n)=x(n-1) 观测方程: y(n)=x(n)+v(n) 得到A(n)=1,C(n)=1, , 将A(n)=1,代入迭代公式 得到:P(n|n-1)=P(n-1|n-1) 用P(n-1)来表示P(n|n-1)和P(n-1|n-1),这是卡尔曼增益表达式变为 从而 2v σ1??(|1)(1)(1|1)(|1)(1)(1|1)(1)()()(|1)()[()(|1)()()]???(|)(|1)()[()()(|1)](|)[()()](|1)H w H H v x n n A n x n n P n n A n P n n A n Q n K n P n n C n C n P n n C n Q n x n n x n n K n y n C n x n n P n n I K n C n P n n --=----=----+=--+=-+--=--2()v v Q n σ=()0w Q n =(|1)(1)(1|1)(1)()H w P n n A n P n n A n Q n -=----+21 ()(|1)[(|1)]v K n P n n P n n σ-=--+22(1)()[1()](1)(1)v v P n P n K n P n P n σσ-=--=-+

开关电源《基于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为开关周期, 为导通时间,为关断时间。

Matlab仿真实例-卫星轨迹

卫星轨迹 一.问题提出 设卫星在空中运行的运动方程为: 其中是k 重力系数(k=401408km3/s)。卫星轨道采用极坐标表示,通过仿真,研究发射速度对卫星轨道的影响。实验将作出卫星在地球表面(r=6400KM ,θ=0)分别以v=8KM/s,v=10KM/s,v=12KM/s 发射时,卫星绕地球运行的轨迹。 二.问题分析 1.卫星运动方程一个二阶微分方程组,应用Matlab 的常微分方程求解命令ode45求解时,首先需要将二阶微分方程组转换成一阶微分方程组。若设,则有: 2.建立极坐标如上图所示,初值分别为:卫星径向初始位置,即地球半径:y(1,1)=6400;卫星初始角度位置:y(2,1)=0;卫星初始径向线速度:y(3,1)=0;卫星初始周向角速度:y(4,1)=v/6400。 3.将上述一阶微分方程及其初值带入常微分方程求解命令ode45求解,可得到一定时间间隔的卫星的径向坐标值y(1)向量;周向角度坐标值y(2)向量;径向线速度y(3)向量;周向角速度y(4)向量。 4.通过以上步骤所求得的是极坐标下的解,若需要在直角坐标系下绘制卫星的运动轨迹,还需要进行坐标变换,将径向坐标值y(1)向量;周向角度坐标值y(2)向量通过以下方程转换为直角坐标下的横纵坐标值X,Y 。 5.卫星发射速度速度的不同将导致卫星的运动轨迹不同,实验将绘制卫星分别以v=8KM/s ,v=10KM/s ,v=12KM/s 的初速度发射的运动轨迹。 三.Matlab 程序及注释 1.主程序 v=input('请输入卫星发射速度单位Km/s :\nv=');%卫星发射速度输入。 axis([-264007000-1000042400]);%定制图形输出坐标范围。 %为了直观表达卫星轨迹,以下语句将绘制三维地球。 [x1,y1,z1]=sphere(15);%绘制单位球。 x1=x1*6400;y1=y1*6400;???????-=+-=dt d dt dr r dt d dt d r r k dt r d θ θθ2)(2 22222θ==)2(,)1(y r y ?????????????**-=**+*-===)1(/)4()3(2)4()4()4()1()1()1()3()4()2() 3()1(y y y dt dy y y y y y k dt dy y dt dy y dt dy ???*=*=)] 2(sin[)1(Y )]2(cos[)1(X y y y y

MATLAB实现通信系统仿真实例

补充内容:模拟调制系统的MATLAB 仿真 1.抽样定理 为了用实验的手段对连续信号分析,需要先对信号进行抽样(时间上的离散化),把连续数据转变为离散数据分析。抽样(时间离散化)是模拟信号数字化的第一步。 Nyquist 抽样定律:要无失真地恢复出抽样前的信号,要求抽样频率要大于等于两倍基带信号带宽。 抽样定理建立了模拟信号和离散信号之间的关系,在Matlab 中对模拟信号的实验仿真都是通过先抽样,转变成离散信号,然后用该离散信号近似替代原来的模拟信号进行分析的。 【例1】用图形表示DSB 调制波形)4cos()2cos(t t y ππ= 及其包络线。 clf %%计算抽样时间间隔 fh=1;%%调制信号带宽(Hz) fs=100*fh;%%一般选取的抽样频率要远大于基带信号频率,即抽样时间间隔要尽可能短。 ts=1/fs; %%根据抽样时间间隔进行抽样,并计算出信号和包络 t=(0:ts:pi/2)';%抽样时间间隔要足够小,要满足抽样定理。 envelop=cos(2*pi*t);%%DSB 信号包络 y=cos(2*pi*t).*cos(4*pi*t);%已调信号 %画出已调信号包络线 plot(t,envelop,'r:','LineWidth',3); hold on plot(t,-envelop,'r:','LineWidth',3); %画出已调信号波形 plot(t,y,'b','LineWidth',3); axis([0,pi/2,-1,1])% hold off% xlabel('t'); %写出图例 【例2】用图形表示DSB 调制波形)6cos()2cos(t t y ππ= 及其包络线。 clf %%计算抽样时间间隔 fh=1;%%调制信号带宽(Hz) fs=100*fh;%抽样时间间隔要足够小,要满足抽样定理。 ts=1/fs; %%根据抽样时间间隔进行抽样

基于matlab的电路仿真

基于matlab的电路仿真 杨泽辉51130215 %基于matlab的电路仿真 %关键词: RC电路仿真, matlab, GUI设计 % 基于matlab的电路仿真 %功能:产生根据输入波形与电路的选择产生输出波形 close all;clear;clc; %清空 figure('position',[189 89 714 485]); %创建图形窗口,坐标(189,89),宽714,高485;Na=['输入波形[请选择]|输入波形:正弦波|',... '输入波形:方形波|输入波形:脉冲波'];%波形选择名称数组; Ns={'sin','square','pulse'}; %波形选择名称数组; R=2; % default parameters: resistance 电阻值 C=2; % default parameters: capacitance电容值 f=10; % default parameters: frequency 波形频率 TAU=R*C; tff=10; % length of time ts=1/f; % sampling length sys1=tf([1],[1,1]); % systems for integral circuit %传递函数; sys2=tf([1,0],[1,1]); % systems for differential circuit a1=axes('position',[0.1,0.6,0.3,0.3]); %创建坐标轴并获得句柄; po1=uicontrol(gcf,'style','popupmenu',... %在第一个界面的上方创建一个下拉菜单'unit','normalized','position',[0.15,0.9,0.2,0.08],... %位置 'string',Na,'fontsize',12,'callback',[]); %弹出菜单上的字符为数组Na,字体大小为12, set(po1,'callback',['KK=get(po1,''Value'');if KK>1;',... 'st=char(Ns(KK-1));[U,T]=gensig(st,R*C,tff,1/f);',... 'axes(a1);plot(T,U);ylim([min(U)-0.5,max(U)+0.5]);',... 'end;']); %pol触发事件:KK获取激发位置,st为当前触发位置的字符串,即所选择的波形类型; %[U,T],gensing,产生信号,类型为st的值,周期为R*C,持续时间为tff, %采样周期为1/f,U为所产生的信号,T为时间; %创建坐标轴al;以T为x轴,U为y轴画波形,y轴范围。。。 Ma=['电路类型[请选择]|电路类型:积分型|电路类型:微分型']; %窗口2电路类型的选择数组; a2=axes('position',[0.5,0.6,0.3,0.3]);box on; %创建坐标轴2; set(gca,'xtick',[]);set(gca,'ytick',[]); %去掉坐标轴的刻度 po2=uicontrol(gcf,'style','popupmenu',... %在第二个窗口的位置创建一个下拉菜单,同1 'unit','normalized','position',[0.55,0.9,0.2,0.08],... 'string',Ma,'fontsize',12,'callback',[]); set(po2,'callback',['KQ=get(po2,''Value'');axes(a2);',... %po2属性设置,KQ为选择的电路类型,'if KQ==1;cla;elseif KQ==2;',... %1则清除坐标轴,2画积分电路,3画微分电路 'plot(0.14+0.8i+0.02*exp(i*[0:.02:8]),''k'');hold on;',... 'plot(0.14+0.2i+0.02*exp(i*[0:.02:8]),''k'');',... 'plot(0.84+0.2i+0.02*exp(i*[0:.02:8]),''k'');',... 'plot(0.84+0.8i+0.02*exp(i*[0:.02:8]),''k'');',... 'plot([0.16,0.82],[0.2,0.2],''k'');',... 'plot([0.16,0.3],[0.8,0.8],''k'');',... 'plot([3,4,4,3,3]/10,[76,76,84,84,76]/100,''k'');',... 'plot([0.4,0.82],[0.8,0.8],''k'');',... 'plot([0.6,0.6],[0.8,0.53],''k'');',... 'plot([0.6,0.6],[0.2,0.48],''k'');',... 'plot([0.55,0.65],[0.53,0.53],''k'');',... 'plot([0.55,0.65],[0.48,0.48],''k'');',... 'text(0.33,0.7,''R'');',...

adams和simulink联合仿真的案例分析

相信大家在联合仿真ADAMS和SIMULINK时都会遇到很多的问题:ADAMS/contro中的例子ball_beam通过联合仿真,更容易理解adams和simulink的联合仿真精髓。小球在一脉冲力的作用下沿着横梁滚动,此时梁的两端受力不平衡,梁的一段倾斜,为了使得小球不掉下横梁,在横梁上施加一个绕Z轴的力矩,横梁达到一定的角度之后逆向转动,然后小球就在这个作用力矩的控制下来回滚动而不掉下横梁!其中控制力矩在整个过程中是个动态变化的,力矩Torque_In是通过位移Position 和横梁转角Beam_Angle确定,这个是在simulink中通过框图完成的。 首先我申明一下我用的是adams2003和matlab6.5 以下我说明一下我的操作步骤: 1、把control中的ball_beam文件copy到另外一个文件夹下,同时设置adams和matlab的默认路径即为ball_beam文件夹,这样可以省略很多不必要的麻烦! 2、用aview打开ball_beam.cmd文件,先试试仿真一下,可以看到小球会在脉冲的作用下滚动,仿真时间最好大于8s 3、载入control模块,点击tools|plugin manager在control框选定。 4、点击control|plant export在file prefix下输入你的文件名,这个可以随便的,我输入的是myball,在plant input点击右键点

击guess选定tmp_MDI_PINPUT,在tmp_MDI_PINPUT中就是输入力矩Torque_In,只有一个输入参数;同样在plant output 中点击右键guess选定tmp_MDI_POUTPUT,这是模型的输出变量横梁转角Beam_Angle和小球与横梁中心轴的距离position。control package选择matlab,type是non_linear,初始化分析选择no,然后按ok!此时m文件已经生成了! 5、打开matalb,设置你的工作路径在ball_beam文件夹上,键入myball,马上有 %%% INFO : ADAMS plant actuators names : 1 Torque_In %%% INFO : ADAMS plant sensors names : 1 Beam_Angle 2 Position 出现 6、再键入adams_sys,弹出一个控制框图,这时可以新建一个mdl文件,将adams_sub拖入你新建的mdl框图中,其实再这里有一个偷懒的办法,就是在matlab中打开ball_beam.mdl文件,然后把他的那个adams_sub用你的刚产生的这个代替,然后另存为my_ball.mdl!

基于MATLAB的电力系统仿真

《电力系统设计》报告 题目: 基于MATLAB的电力系统仿学院:电子信息与电气工程学院 班级: 13级电气 1 班 姓名:田震 学号: 20131090124 日期:2015年12月6日

基于MATLAB的电力系统仿真 摘要:目前,随着科学技术的发展和电能需求量的日益增长,电力系统规模越来越庞大,超高压远距离输电、大容量发电机组、各种新型控制装置得到了广泛的应用,这对于合理利用能源,充分挖掘现有的输电潜力和保护环境都有重要意义。另一方面,随着国民经济的高速发展,以城市为中心的区域性用电增长越来越快,大电网负荷中心的用电容量越来越大,长距离重负荷输电的情况日益普遍,电力系统在人们的生活和工作中担任重要角色,电力系统的稳定运行直接影响着人们的日常生活。从技术和安全上考虑直接进行电力试验可能性很小,因此迫切要求运用电力仿真来解决这些问题。 电力系统仿真是将电力系统的模型化、数学化来模拟实际的电力系统的运行,可以帮助人们通过计算机手段分析实际电力系统的各种运行情况,从而有效的了解电力系统概况。本文根据电力系统的特点,利用MATLAB的动态仿真软件Simulink搭建了无穷大电源的系统仿真模型,得到了在该系统主供电线路电源端发生三相短路接地故障并由故障器自动跳闸隔离故障的仿真结果,并分析了这一暂态过程。通过仿真结果说明MATLAB电力系统工具箱是分析电力系统的有效工具。 关键词:电力系统;三相短路;故障分析;MATLAB仿真

目录 一.前言 (4) 二.无穷大功率电源供电系统仿真模型构建 (5) 1.总电路图的设计 (5) 2.各个元件的参数设定 (6) 2.1供电模块的参数设定 (6) 2.2变压器模块的参数设置 (6) 2.3输电线路模块的参数设置 (7) 2.4三相电压电流测量模块 (8) 2.5三相线路故障模块参数设置 (8) 2.6三相并联RLC负荷模块参数设置 (9) 3.仿真结果 (9)

(完整版)matlab_4_SIMULINK仿真及DEE实例步骤

SIMULINK & DEE简介 ※如何进入SIMULINK? Step1:进入MATLAB Step2: 方法一:在workspace输入simulink的指令。 方法二:点选MATLAB Command Window上方之利用以上方法会获得下面的结果

※ 如何利用SIMULINK 解ODE Example1:2311+-='x x Step1:?'=dt x x 11 ? 在Library 中点选Continuous ,在Continuous 中选取integrator ,按住鼠标左键拖曳至untitled 中,分别在各接点拉上连接线并标明各个涵义。 Step2:2311+-='x x (1)从Math 中点选Gain 的图标,拖曳至untitled 中,并选取命令列中Format/Flip Block 使其转ο180

(2)从Math中,拖曳Sum至untitled中 (3)从Source中,用鼠标拖曳Constant至untitled,并把各点连结起来。 (4)从Sink中拖曳Scope至untitled中,并与 x连结 1

(5)把Constant改为2,把Gain改为-3。 Step3:设定参数 (1)选择Simulation/Parameters (2)调整适当的起始时间、结束时间和数值方法。

(3)点选Simulation/Start ,开始仿真。 (4)点选Scope ,显示仿真的结果。 Example2:???+-='+='-)cos(212 211t x x x e x x x t 1)0(0)0(21==x x Step1:???'='=??dt x x dt x x 2211 ? (1)点选Continuous 中之Integrator ,拖曳至untitled 。

MATLAB电路仿真实例

题14.14 图(a)所示电路,已知 V )2cos(15S t u =二端口网络阻抗参数矩阵 Ω?? ????=46j 6j 10Z 求ab 端戴维南等效电路并计算电压o u 。 u -+o u 图题14.14 (一)手动求解: 将网络N 用T 型电路等效,如图(b)所示 S U +-o U 等效阻抗 Ω=-+-?+ -=4.6j615j6j6)15(6j 6j 4i Z 开路电压 V 2j302 15j6j6105j6OC =?∠?+-+=U V 1482 18.3j46.42j3j4j4Z j4OC o ?∠=+?=?+=U U i

所以 )1482cos(18.3o ?+=t u V (二)Matlab 仿真: ⒈分析:本次仿真需输入各阻抗Zl 、Z1、Z2、Z3、Z4以及激励源Us 的参数值,仿真结果需输出开路电压Uoc 、等效阻抗Zi 以及电感两端电压U0的幅值和相位信息,并绘制Uoc ,U0的值随时间变化的波形曲线。其中各元件与原图的对应关系如下图所示: ⒉编辑M 文件的源程序如下: clear %清空自定义变量 z1=4-6j;z2=6j;z3=10-6j;z4=5;us=15*exp(j*0);zl=4j;%输入各元件参数 zi=z1+(z2*(z3+z4)/(z2+z3+z4));%等效阻抗zi 的计算表达式uoc=us*z2/(z2+z3+z4);%开路电压uoc 的计算表达式u0=zl/(zi+zl)*uoc;%电感两端电压uo 的计算表达式disp('The magnitude of zi is'); %在屏幕上显示“The magnitude of zi is ”disp(abs(zi)) %显示等效阻抗zi 的模disp('The phase of zi is'); %在屏幕上显示“The phase of zi is ”disp(angle(zi)*180/pi)%显示等效阻抗zi 的辐角 disp('The magnitude of uoc is'); %在屏幕上显示“The magnitude of uoc is ” disp(abs(uoc))%显示开路电压uoc 的模

matlab-SIMULINK仿真实例资料

二并联杆数控螺旋面钻头尖刃磨机的机构仿真 一、仿真原理一、实训题目:全自动洗衣机控制系统 实训目的及要求: 1、掌握欧姆龙PLC的指令,具有独立分析和设计程序的能力 2、掌握PLC梯形图的基本设计方法 3、培养分析和解决实际工程问题的能力 4、培养程序设计及调试的能力 5、熟悉传输带控制系统的原理及要求 实训设备:: 1、OMRON PLC及模拟实验装置1台 2、安装CX-P编程软件的PC机1台 3、PC机PLC通讯的RS232电缆线1根 实训内容: 1、分析工艺过程,明确控制要求 (1)按下启动按扭及水位选择开关,相应的显示灯亮,开始进水直到高(中、低)水位,关水。 (2)2秒后开始洗涤。 (3)洗涤时,正转30秒停2秒;然后反转30秒停2秒。 (4)循环5次,总共320秒,然后开始排水。排水后脱水30秒。 图1 全自动洗衣机控制 2、统计I/O点数并选择PLC型号 输入:系统启动按钮一个,系统停止按钮一个,高、中、低水位控制开关三个,高、中、低液位传感器三个,以及排水液位传感器一个。

输出:进出水显示灯一盏,高、中、低水位显示灯各一盏,电机正、反转显示灯各一盏,排水、脱水显示灯灯各一盏。 PLC的型号:输入一共有9个,考虑到留有15%~20%的余量即9×(1+15%)=10.35,取整数10,所以共需10个输入点。输出共有8个,8×(1+15%)=9.2,取整数9,所以共需9个输出点。可以选OMRON公司的CPM1A/CPM2A 型PLC就能满足此例的要求。 3、I/O分配 表1 全自动洗衣机控制I/O分配表 输入输出 地址名称地址名称 00000 启动系统按钮01000 排水显示灯 00001 高水位选择按钮01001 脱水显示灯 00002 中水位选择按钮01002 进、出水显示灯 00003 低水位选择按钮01003 高水位显示灯 00004 排水液位传感器01004 中水位显示灯 00005 停止系统按钮01005 低水位显示灯 00006 高水位液位传感器01006 电机正转显示灯 00007 中水位液位传感器01007 电机反转显示灯 00008 低水位液位传感器 4、PLC控制程序设计及分析 实现功能:当按下按钮00000,中间继电器20000得电并自锁,按下停止按钮00005,中间继电器20000掉电。中间继电器20000为系统总启动。 实现功能:当按下按钮00001,中间继电器20001得电并自锁;当中间继电器20002、20003、20004、20007任意一个为ON,或按下停止按钮00005,或01000、01001为ON时,中间继电器20001掉电。

matlab电路仿真

Matlab电路仿真软件包-simpowersystems 1.入门 1.1.SymPowerSystem是什么 1.1.1.介绍 在Matlab提供的simulink仿真环境下,与其他建模产品结合在一起,用于对电子、机械系统进行建模。要学会使用SymPowerSystem,应首先学会使用Simulink仿真。1.1.2.设计中的仿真的作用(略) 1.1.3.SymPowerSystem仿真库 你可迅速将SymPowerSystem投入使用。该库包含了许多典型的功率设备模型,例如,变压器、导线、机械、能源电子等。这些仿真模型来源于产品手册,基于工程实际。 SymPowerSystem包含一个主要的库:powerlib。powerlib库显示了所有包含的模块和模块名称。 1.1.4.SymPowerSystem中的非线性模块(略) 1.1.5.仿真时需要的环境: Maltab 和Simulink

1.2.如何使用该指南 1.2.1.对于新用户 将学会如下知识和技能: (1)使用该库创建和仿真电子电路模型 (2)将一个电子电路于simulink模块连接在一起 (3)分析电子电路的稳定状态和频率响应 (4)离散化模型,以便加快仿真速度 (5)使用矢量图仿真方法 (6)构建自定义的非线性仿真模型 1.2.2.对于经验丰富的模块用户(略) 1.2.3.所有用户(略) 1.3.创建和仿真简单的电路 1.3.1.介绍 SymPowerSystem允许你对包含线性或非线性的电子电路进行建模和仿真。在本章节中,您将学习到: (1)浏览SymPowerSystems的powerlib库 (2)如何利用SymPowerSystem创建一个简单的电路 (3)如何将电路与simulink模块互联。 下述电路是即将创建的电路:

MATLAB电路仿真实例

题14.14 图(a)所示电路,已知 二端口网络阻抗参数矩阵 求ab 端戴维南等效电路并计算电压。 (一) 手动求解: 将网络N 用T 型电路等效,如图(b)所示 等效阻抗 开路电压 V )2cos(15S t u =Ω??????=46j 6j 10Z o u u -+o u (a)图题14.14 S U +-o U Ω=-+-?+-=4.6j615j6j6)15(6j 6j 4i Z V 2j30215j6j6105j6OC =?∠?+-+=U V 148218.3j46.42j3j4j4Z j4OC o ?∠=+?=?+=U U i

所以 V (二) Matlab 仿真: ⒈分析:本次仿真需输入各阻抗Zl 、Z1、Z2、Z3、Z4以及激励源Us 的参数值,仿真结果需输出开路电压Uoc 、等效阻抗Zi 以及电感两端电压U0的幅值和相位信息,并绘制Uoc ,U0的值随时间变化的波形曲线。 其中各元件与原图的对应关系如下图所示: ⒉编辑M 文件的源程序如下: clear %清空自定义变量 z1=4-6j;z2=6j;z3=10-6j;z4=5;us=15*exp(j*0);zl=4j; %输入各元件参数 zi=z1+(z2*(z3+z4)/(z2+z3+z4)); %等效阻抗zi 的计算表达式 uoc=us*z2/(z2+z3+z4); %开路电压uoc 的计算表达式 u0=zl/(zi+zl)*uoc; %电感两端电压uo 的计算表达式 disp('The magnitude of zi is'); %在屏幕上显示“The magnitude of zi is ” disp(abs(zi)) %显示等效阻抗zi 的模 disp('The phase of zi is'); %在屏幕上显示“The phase of zi is ” disp(angle(zi)*180/pi) %显示等效阻抗zi 的辐角 disp('The magnitude of uoc is'); %在屏幕上显示“The magnitude of uoc is ” disp(abs(uoc)) %显示开路电压uoc 的模 disp('The phase of uoc is'); %在屏幕上显示“The magnitude of uoc is ” ) 1482cos(18.3o ?+=t u

MATLAB仿真实例

一、实验目的 (1) 二、实验题目 (1) 三、实验内容 (1) 3.1傅里叶变换与傅里叶反变换 (1) 3.2题目一:正弦信号波形及频谱 (2) 3.2.1仿真原理及思路 (2) 3.2.2程序流程图 (3) 3.2.3仿真程序及运行结果 (3) 3.2.4实验结果分析 (5) 3.3题目二:单极性归零(RZ)波形及其功率谱 (5) 3.3.1仿真原理及思路 (5) 3.3.2程序流程图 (6) 3.3.3仿真程序及运行结果 (6) 3.3.4实验结果分析 (8) 3.4题目三:升余弦滚降波形的眼图及其功率谱 (8) 3.4.1仿真原理及思路 (8) 3.4.2程序流程图 (8) 3.4.3仿真程序及运行结果 (8) 3.4.4实验结果分析: (10) 3.5题目四:完成PCM编码及解码的仿真 (11) 3.5.1仿真原理及思路 (11) 3.5.2程序流程图 (12) 3.5.3仿真程序及运行结果 (12) 3.5.4实验结果分析 (15) 3.6附加题一:最佳基带系统的Pe~Eb\No曲线,升余弦滚降系数a=0.5,取 样值的偏差是Ts/4 (16) 3.6.1仿真原理及思路 (16) 3.6.2程序流程图 (16) 3.6.3仿真程序及运行结果 (16) 3.6.4实验结果分析 (18) 3.7附加题二:试作出Pe~Eb/No曲线。升余弦滚降系数a=0.5,取样时间无 偏差,但信道是多径信道,C(f)=|1-0.5-j2 ft|,t=T s/2 (18) 3.7.1仿真原理及思路 (18) 3.7.2程序流程图 (19) 3.7.3仿真程序及运行结果 (19) 3.7.4实验结果分析 (21) 四、实验心得 (21)

matlab电路仿真

SHANDONG UNIVERSITY OF TECHNOLOGY 数学 软件结业 论文 题目: 电路仿真方法研究 学 院: 电气与电子工程学院 专 业: 电气工程及其自动化 学生姓名: 武奥 学 号: 14110302044 指导教师: 周世祥 2015年11 月

目录 摘要 (Ⅰ) 目录 (Ⅲ) 第一章引言 (1) 1.1课题的背景和意义 (1) 1.2深度学习的前世今生 (2) 第二章自编码器模型构建 (4) 2.1入门 (4) 1.1. 2.2 SymPowerSyste是什么5 2.引言 2.1.1.1 课题的背景和意义 随着计算机技术和互联网的发展,人类开始步入大数据时代,我们需要从海量的数据中找到自己感兴趣或者对自己有用的信息,这就要求计算机能在短时间内检索出满意的结果。伴随着搜索引擎的发展我们在文字检索方面已经取得了值得骄傲的成就,但是在更加直观,更加方便的图片检索方面仍然有待发展。试想一下,如果我们能通过图片检索到自己想要的信息我们的生活将会更加便利,我们只要对着自己感兴趣的东西扫一扫就能获得我们需要的信息。 要实现上述目标就要求计算机能像人的视觉系统一样能识别图片、对图片进行分类处理。然而,每幅图片的信息量就很大,要从海量的图片中进行识别处理数据量可想而知,而且并不是图片中的所有信息都是有用的。 -III-

这就需要我们对图片进行降维处理和特征提取。虽然已有的降维方法在理论支持上很成熟,但是基于线性的方法并不适合图像识别而且实际效果也不尽人意。深度学习算法是2006年提出的一种新的方法,虽然缺乏理论支持但在实际应用中取得良好效果。 深度学习算法在计算机视觉、图像识别方面已经开始普遍使用,相对于以前的方法准确率大大提高。除了在图像识别领域,深度学习在语音识别、自然语言处理等方面也有突破性进展:2012年11月,在中国天津举行的“21世纪的计算机大会”上微软公开演示了一个全自动同声传译系统,微软首席研究员的英文演讲被后台的计算机自动识别、翻译、合成并转换成和演讲者音色相近的中文发音,这背后的关键技术就是深度学习算法。深度学习研究的日益成熟和完美应用一定可以给我们的生活带来极大的便利和智能化。 -IV-

Matlab电气仿真

大连海事大学 题目:电气系统的计算机辅助设计 姓名: 学号: 学院:轮机工程学院 专业班级:电气工程及其自动化(4)班 指导老师:郑忠玖王宁 设计任务(一) 一、实验目的: 1、掌握Matlab/Simulink 电气仿真的基本步骤; 2、掌握Matlab/Simulink中SimPowerSystems 工具箱的基本建模方法; 3、利用Matlab/Simulink 在整流电路方面的仿真设计。 二、实验原理: 220V 50HZ交流电源经变压器降压,输出交流24V 50HZ就是交流电。经单相桥式整流电路加LC滤波电路后,由于电感与电容的作用,输出电压与电流无法突变,使输出电压波形在一定的电压附近形成正弦脉动。

三、实验内容: 1、单相桥式整流 (1)设计要求: a)单相桥式整流加LC滤波电路,电源为220V,50Hz; b)整流电路输入为24V; c)负载为10Ω阻性负载; d)滤波电感L=100mH,滤波电容C=200uF; (2)设计电路图: (3)仿真结果波形图:

time v o l t a g e /c u r r e n t 单项桥式整流加LC 滤波电路VT3输出波形 00.0050.010.0150.020.025 0.030.0350.040.0450.05-35-30 -25 -20 -15-10-5 5 time v o l t a g e /c u r r e n t 单项桥式整流加LC 滤波电路VT4输出 (4) 仿真结果分析: 1. 在变压器输出正弦波的正半周期,二极管VT1与二极管VT4导通, 二极管VT2与二极管VT3被施以反压而截止; 在变压器输出正弦波 time v o l t a g e 单相桥式整流加LC 滤波电路输出波形

matlab仿真实例

matlab仿真实例 实验五 MATLAB及仿真实验一、控制系统的时域分析 (一) 稳定性 1、系统传递函数为 G(s),试判断其稳定性。 程序: >> num=[3,2,5,4,6]; >> den=[1,3,4,2,7,2]; >> sys=tf(num,den); >> figure(1); >> pzmap(sys); >> title('零极点图') 由图可知:在S右半平面有极点,因此可知系统是不稳定的。 2、用MATLAB求出G(s)=(s^2+2*s+2)/(s^4+7*s^3+5*s+2)的极点。程序及结果: >> sys=tf([1,2,2],[1,7,3,5,2]); >> p=pole(sys)

p = -6.6553 0.0327 + 0.8555i 0.0327 - 0.8555i -0.4100 (二)阶跃响应 1、二阶系统G(s)=10/s^2+2*s+10 1)键入程序,观察并记录单位阶跃响应曲线: 程序: >> sys=tf(10,[1,2,10]); >> step(sys); >> title('G(s)=10/s^2+2*s+10单位阶跃响应曲线') 2)计算系统闭环跟、阻尼比、无阻尼振荡频率,并记录: 程序及结果: >> sys=tf(10,[1,2,10]); >> p=pole(sys)

p = -1.0000 + 3.0000i -1.0000 - 3.0000i >> [wn,z]=damp(sys) wn = 3.1623 3.1623 z = 0.3162 0.3162 3)记录实际测取的峰值大小,峰值时间和过渡过程时间,并填表: 实际值理论值 峰值Cmax 1.35s 峰值时间tp 1.05s 过渡时间 +5% 3.54s ts +2% 3.18s 程序: >> sys=tf(10,[1,2,10]); >> step(sys); >> title('G(s)=10/s^2+2*s+10单位阶跃响应曲线')

BOOST电路设计及matlab仿真

Boost升压电路及MATLAB仿真 一、设计要求 1.输入电压(VIN):12V 2.输出电压(VO):18V 3.输出电流(IN):5A 4.电压纹波:0.1V 5.开关频率设置为50KHz 需设计一个闭环控制电路,输入电压在10—14V或负载电流在2—5A范围变化时,稳态输 出能够保持在18V 。根据设计要求很显然是要设计一个升压电路即Boost电路。Boost电路又称为升压型电路,是一种开关直流升压电路,它可以是输出电压比输入电压高。其工作过 程包括电路启动时的瞬态工作过程和电路稳定后的稳态工作过程。 二、主电路设计 图1主电路 2.1 Boost电路的工作原理 Boost升压电路电感的作用:是将电能和磁场能相互转换的能量转换器件,当MOS开关管闭合后,电感将电能转换为磁场能储存起来,当MOS断开后电感将储存的磁场能转换为电场能,且这个能量在和输入电源电压叠加后通过二极管和电容的滤波后得到平滑的直流电压提供给负载,由于这个电压是输入电源电压和电感的磁场能转换为电能的叠加后形成的,所以输出电压高于输入电压,既升压过程的完成。 Boost升压电路的肖特基二极管主要起隔离作用,即在MOS开关管闭合时,肖特基二极管的正极电压比负极的电压低,此时二极管反向截止,使此电感的储能过程不影响输出端电容对负载的正常供电;因在MOS管断开时,两种叠加后的能量通过二极向负载供电,此时二极管正向导通,要求其正向压降越小越好,尽量使更多的能量供给到负载端。闭合开关会引起通过电感的电流增加。打开开关会促使电流通过二极管流向输出电容因储存来自电感的电流,多个开关周期以后输出电容的电压升高,结果输出电压高于输入电压。

AMESim与Simulink联合仿真设置步骤与仿真实例

AMESim与Simulink联合仿真设置步骤与仿真实例 本文采用版本为matlab R2010a和Amesim Rev10 联合仿真环境设置: 为了实现二者的联合仿真,需要在Windows2000或更高级操作系统下安装Visual C++ 6.0, AMESim4.2以上版本与MA TLAB6.1上版本(含Simulink),联合仿真存在AMESim与Matlab 的版本匹配问题,具体参照AMESim软件中帮助文件里有介绍,打开AMESim帮助文件,以Simulink为关键词进行搜索,即可找到AMESim与Matlab联合仿真的介绍,这里使用AMESim10,Matlab 2010a,可以匹配。 1.将VC++中的"VCV AR3 2.bat"文件从Microsoft Visual C++目录(通常是. \Microsoft Visual Studio\VC98\Bin中)拷贝至AMESim的安装目录下。 2.环境变量确认: 1) 选择“控制面板-系统”或者在“我的电脑”图标上点右键,选择“属性”;在弹 出的“系统属性”窗口中选择“高级”页,选择“环境变量”; 2) 在弹出的“环境变量”下面的窗口中找到系统变量“AME”,它的值就是你所安装 AMESim的路径,选中改环境变量;比如AMESim10安装目录(即AMESim10安 装文件的存储目录)是:D:\AMESim\v1000(D:\AMESim就是错误的),那么“AME” 的值就是D:\AMESim\v1000, 点击“确认”按键,该变量就会加到系统中; 3) 按上述步骤设置系统变量“MA TLAB”,该值为MA TLAB文件所安装的路径,例如 Matlab 2011a按照文件的存储路径为:D:\Program Files\MATLAB\R2011a,那么 “MA TLAB”的值就是D:\Program Files\MATLAB\R2011a,(写D:\Program Files\MATLAB,D:\Program Files 等都是错误的), 点击“确认”按键,该变量就会加到系统中; 4) 同样的方式定义系统变量LM_LICENSE_FILE,值为 D:\AMESim\v1000\licensing\license.dat,值就是AMESim软件许可文件的存储路径。 即LM_LICENSE_FILE=C:\AMESim4.2.0\licensing\license.dat。 3. 确认是否在AMESim中选择VC作为编译器。对AMESim 10而言,具体操作在AMESim-〉 Tools->Opions-> AMESim Preferences->Compilation/Parameters中,进去后选择Microsoft Visual C++项,然后点击OK确认。 4. 在MA TLAB命令窗口中输入mex –setup (mex与-之间有空格),敲回车出现:

matlab仿真实例

实验五MATLAB及仿真实验 一、控制系统的时域分析 (一)稳定性 1、系统传递函数为G(s),试判断其稳定性。 程序: >> num=[3,2,5,4,6]; >> den=[1,3,4,2,7,2]; >> sys=tf(num,den); >> figure(1); >> pzmap(sys); >> title('零极点图') 由图可知:在S右半平面有极点,因此可知系统是不稳定的。 2、用MATLAB求出G(s)=(s^2+2*s+2)/(s^4+7*s^3+5*s+2)的极点。程序及结果: >> sys=tf([1,2,2],[1,7,3,5,2]); >> p=pole(sys) p = -6.6553 0.0327 + 0.8555i

0.0327 - 0.8555i -0.4100 (二)阶跃响应 1、二阶系统G(s)=10/s^2+2*s+10 1)键入程序,观察并记录单位阶跃响应曲线: 程序: >> sys=tf(10,[1,2,10]); >> step(sys); >> title('G(s)=10/s^2+2*s+10单位阶跃响应曲线') 2)计算系统闭环跟、阻尼比、无阻尼振荡频率,并记录:程序及结果: >> sys=tf(10,[1,2,10]); >> p=pole(sys) p = -1.0000 + 3.0000i -1.0000 - 3.0000i >> [wn,z]=damp(sys) wn = 3.1623 3.1623 z = 0.3162

0.3162 3)记录实际测取的峰值大小,峰值时间和过渡过程时间,并填表: >> sys=tf(10,[1,2,10]); >> step(sys); >> title('G(s)=10/s^2+2*s+10单位阶跃响应曲线') 4)修改参数,分别实现ξ=1和ξ=2的响应曲线,并记录: ξ=1: 程序:>> zeta=1; >> wn=sqrtm(10) wn = 3.1623 >> sys=tf(10,[1,2*wn*zeta,10]); >> step(sys) >> title('ξ=1响应曲线' ) (图见下页)

相关文档