用GUI实时更改simulink仿真参数
资源文件列表:

PID/
PID/1111/
PID/1111/comdraw.fig 5.4KB
PID/1111/comdraw.m 19KB
PID/1111/comTransmit.fig 19.88KB
PID/1111/comTransmit.m 13.38KB
PID/1111/MATLAB.doc 1.11MB
PID/1111/qqqqqqqqserial_communication.asv 6.88KB
PID/1111/qqqqqqqqserial_communication.fig 10.99KB
PID/1111/qqqqqqqqserial_communication.m 6.91KB
PID/1111/qqqqqqqqserial_communication_activex1 3.5KB
PID/1111/sendsms.m 1.08KB
PID/1111/serial_communication_activex1 3.5KB
PID/1111/test_gui.fig 14.52KB
PID/1111/test_gui.m 7.71KB
PID/1111/unitable.m 270B
PID/1111/串口宝典.doc 37.5KB
PID/changguiPID_noDistrup.fig 6.75KB
PID/changguiPID_noDistrup.m 13.03KB
PID/changguiPID_withDistrup.fig 6.69KB
PID/changguiPID_withDistrup.m 13.08KB
PID/fuzzyPID.fis 2.5KB
PID/Fuzzy_PID_1.mdl 54.76KB
PID/Fuzzy_PID_1_r.mdl 67.61KB
PID/hhu.jpg 1.95KB
PID/mohuPID_noDistrup.fig 8.33KB
PID/mohuPID_noDistrup.m 16.63KB
PID/mohuPID_withDistrup.fig 8.38KB
PID/mohuPID_withDistrup.m 16.68KB
PID/PIDController_1.mdl 31.58KB
PID/PIDController_1_r.mdl 44.58KB
PID/SerialPortCommunication.fig 9.32KB
PID/SerialPortCommunication.m 14.21KB
PID/sjwlPID_noDistrup.fig 6.07KB
PID/sjwlPID_noDistrup.m 9.71KB
PID/sjwlPID_withDistrup.fig 6.01KB
PID/sjwlPID_withDistrup.m 9.84KB
PID/Three_PID_Compare_noDistrup.fig 9.84KB
PID/Three_PID_Compare_noDistrup.m 17.61KB
PID/Three_PID_Compare_withDistrup.fig 9.62KB
PID/Three_PID_Compare_withDistrup.m 17.44KB
PID/zhujiemian.fig 6.7KB
PID/zhujiemian.m 8.45KB
资源介绍:
本压缩文件里包含了众多的程序,并且可通过GUI实时修改simulink中各个环节的参数。
信号与系统的 MATLAB 仿真
一、信号生成与运算的实现
1.1 实现
m11.m
t=-3*pi:0.01*pi:3*pi; % 定义时间范围向量 t
f=sinc(t/pi); % 计算 Sa(t)函数
plot(t,f); % 绘制 Sa(t)的波形
运行结果:
1.2 实现
m12.m
t=-10:0.01:10; % 定义时间范围向量 t
f=sinc(t); % 计算 sinc(t)函数
plot(t,f); % 绘制 sinc(t)的波形
运行结果:
1.3 信号相加:
m13.m
syms t; % 定义符号变量 t
f=cos(18*pi*t)+cos(20*pi*t); % 计算符号函数 f(t)=cos(18*pi*t)+cos(20*pi*t)
ezplot(f,[0 pi]); % 绘制 f(t)的波形
运行结果:
1

1.4 信号的调制:
m14.m
syms t; % 定义符号变量 t
f=(2+2*sin(4*pi*t))*cos(50*pi*t) % 计算符号函数 f(t)=(2+2*sin(4*pi*t))*cos(50*pi*t)
ezplot(f,[0 pi]); % 绘制 f(t)的波形
运行结果:
1.5 信号相乘:
m15.m
t=-5:0.01:5; % 定义时间范围向量
f=sinc(t).*cos(20*pi*t); % 计算函数 f(t)=sinc(t)*cos(20*pi*t)
plot(t,f); % 绘制 f(t)的波形
title('sinc(t)*cos(20*pi*t)'); % 加注波形标题
运行结果:
二、系统时域的仿真分析
2

2.1 实现卷积 ,其中:
m21.m
p=0.01; % 取样时间间隔
nf=0:p:1; % f(t)对应的时间向量
f=2*((nf>=0)-(nf>=1)); % 序列 f(n)的值
nh=0:p:2; % h(t)对应的时间向量
h=(nh>=0)-(nh>=2); % 序列 h(n)的值
[y,k]=sconv(f,h,nf,nh,p); % 计算 y(t)=f(t)*h(t)
subplot(3,1,1),stairs(nf,f); % 绘制 f(t)的波形
title('f(t)');axis([0 3 0 2.1]);
subplot(3,1,2),stairs(nh,h); % 绘制 h(t)的波形
title('h(t)');axis([0 3 0 1.1]);
subplot(3,1,3),plot(k,y); % 绘制 y(t)=f(t)*h(t)的波形
title('y(t)=f(t)*h(t)');axis([0 3 0 2.1]);
子程序 sconv.m
% 此函数用于计算连续信号的卷积 y(t)=f(t)*h(t)
function [y,k]=sconv(f,h,nf,nh,p)
% y:卷积积分 y(t)对应的非零样值向量
% k:y(t)对应的时间向量
% f:f(t)对应的非零样值向量
% nf:f(t)对应的时间向量
% h:h(t)对应的非零样值向量
% nh:h(t)对应的时间向量
% p:取样时间间隔
y=conv(f,h); % 计算序列 f(n)与 h(n)的卷积和 y(n)
y=y*p; % y(n)变成 y(t)
left=nf(1)+nh(1) % 计算序列 y(n)非零样值的起点位置
right=length(nf)+length(nh)-2 % 计算序列 y(n)非零样值的终点位置
k=p*(left:right); % 确定卷积和 y(n)非零样值的时间向量
运行结果:
3

2.2 实现卷积 ,其中:
m22.m
p=0.01; % 取样时间间隔
nf=0:p:2; % f(t)对应的时间向量
f=2*((nf>=0)-(nf>=2)); % 序列 f(n)的值
nh=0:p:4; % h(t)对应的时间向量
h=exp(-nh); % 序列 h(n)的值
[y,k]=sconv(f,h,nf,nh,p); % 计算 y(t)=f(t)*h(t)
subplot(3,1,1),stairs(nf,f); % 绘制 f(t)的波形
title('f(t)');axis([0 6 0 2.1]);
subplot(3,1,2),plot(nh,h); % 绘制 h(t)的波形
title('h(t)');axis([0 6 0 1.1]);
subplot(3,1,3),plot(k,y); % 绘制 y(t)=f(t)*h(t)的波形
title('y(t)=f(t)*h(t)');axis([0 6 0 2.1]);运行结果:
2.3 设方程 ,试求零状态响应
m23.m:
yzs=dsolve('D2y+5*Dy+6*y=2*exp(-t)','y(0)=0,Dy(0)=0')
ezplot(yzs,[0 8]);
运行结果:
yzs =exp(-t)+exp(-3*t)-2*exp(-2*t)
即:
4

2.4 已知二阶系统方程
对下列情况分别求 ,并画出其波形。
a.
b.
c.
d.
m24.m:
R=input('电阻 R='); % 以交互方式输入电阻 R 的值
L=input('电感 L='); % 以交互方式输入电阻 L 的值
C=input('电容 C='); % 以交互方式输入电阻 C 的值
b=[1/(L*C)];
a=[1 R/L 1/(L*C)];
impulse(b,a);
运行结果:
a. 电阻 R=4 电感 L=1 电容 C=1/3
b. 电阻 R=2 电感 L=1 电容 C=1
5