成绩:《工程光学》综合性练习一
题目:基于matlab的干涉系统仿真
学院精密仪器与光电子工程学院
专业测控技术与仪器
年级20**级
班级*班
姓名**
学号
20**年**月
综合练习大作业一
一、要求
3-4人组成小组,对下面给出的各题目利用Matlab等工具进行仿真。
二、仿真题目
1、对于杨氏双缝干涉,改变双缝的缝宽和缝间距,观察干涉图样变化
①原理图
图中参数
光线波长:lam=500纳米;
双缝距离:d=0.1毫米;(可调)
双缝距接收屏距离:D=1米;
接收屏范围:xs:-0.005~0.005
ys:-0.005~0.005
光源振幅:AI=A2=1;
(单位振幅,可调)
②matlab代码:
clear;
lam=500e-9; %设定波长lam(500纳米)
d=0.5e-3; %设定两缝之间距离d(0.5毫米)
D=1; %双缝到接收屏距离D(1米)
A1=1; %初始两光源均为单位振幅
A2=1;
xm=0.005;
ym=xm; %接受屏的范围ym,xm(0.01*0.01矩形)
n=1001;
xs=linspace(-xm,xm,n); %用线性采样法生成两个一位数组xs,ys
%(n为总点数)
ys=linspace(-ym,ym,n);
L1=sqrt((xs-d/2).^2+ys.^2+D^2);%光屏上点(xs,ys)距光源1距离r1
L2=sqrt((xs+d/2).^2+ys.^2+D^2);%光屏上点(xs,ys)距光源2距离r2
E1=A1./sqrt(L1).*exp(1i*L1*2*pi/lam);%光源1在接受屏上复振幅E1
E2=A2./sqrt(L2).*exp(1i*L2*2*pi/lam);%光源2在接受屏上复振幅E2
E=E1+E2; %复振幅叠加为合成振幅E
I=abs(E).^2; %和振幅光强
nc=255; %灰度
br=(I/4)*nc; %灰度强度
image(xs,ys,br); %生成干涉图样
colormap(gray(nc));
③初始干涉仿真图样
④改变参数后的仿真图样(缝宽即光振幅A1、A2,缝间距d)
A1=1.2、A2=1 A1=1.5、A2=1 (注:改变双缝宽度,等效为改变光源强度。如宽度增加一倍,光强增加两倍)
d=0.8毫米d=1.2毫米
⑤变化分析及曲线:
改变双缝宽度:此处仿真忽视衍射影响,改变双缝宽度简单等效为改变光源光强。由上述仿真图片可以看出,当增加其中一个缝宽即增加一个光源光强时,亮条纹宽度明显增加,但条纹间距不改变。通过仿真发现,当一光源为另一光源2.9倍左右强度时,接收屏上将出现一片亮,即暗条纹消失。
改变双缝间距:根据杨氏双缝干涉相关结论,改变双缝间距,将改变条纹之间间距e,趋势为随着双缝间距增加,条纹间距逐渐减小。具体数学关系为:
e=lam*D/d;曲线表示为:
2、对于杨氏双孔干涉,改变双孔的直径和孔间距,观察干涉图样变化
①原理图
图中参数:
光线波长:lam=500纳米;
双孔距离:d=0.5毫米(可调);
双缝距接收屏的距离:D=1(米);
接收屏的范围:xs:-0.005—0.005
ys:-0.005—0.005;
光源振幅:AI=A2=1;
(单位振幅,可调)
②matlab代码:
clear;
lam=500e-9; %设定波长为500纳米
d=0.5e-3; %双孔的距离为0.5毫米
D=1; %双孔到接收屏的距离为1米
A1=1;
A2=1; %光源振幅A1=A2=1;
xm=0.005;
ym=xm; %接收屏的范围是0.005;
n=1001;
xs=linspace(-xm,xm,n);
ys=linspace(-ym,ym,n); %用线性采样法生成两个一位数组xs,ys
%(n为总点数)
r1=sqrt((xs-d/2).^2+ys.^2+D^2);% 光屏上点(xs,ys)距光源1距离r1
r2=sqrt((xs+d/2).^2+ys.^2+D^2);% 光屏上点(xs,ys)距光源2距离r2
E1=A1./r1.*exp(1i*r1*2*pi/lam);% 光源1在接受屏上复振幅E1
E2=A2./r2.*exp(1i*r2*2*pi/lam);% 光源2在接受屏上复振幅E2
E=E1+E2; %?复振幅叠加为合成振幅E
I=abs(E).^2; %和振幅光强
nc=255; %灰度
br=(I/4)*nc; %灰度强度
image(xs,ys,br); %生成干涉图样
colormap(gray(nc));
③初始干涉仿真图样
④改变参数后的仿真图样(孔直径即光振幅A1、A2,缝间距d)
A1=1.8、A2=1 A1=2.3、A2=1 (注:改变孔直径,等效为改变光源强度。如直径增加一倍,光强增加四倍)
空间距离d=0.8毫米空间距离d=1.2毫米
⑤变化分析及曲线:
改变孔直径:基本规律同杨氏双孔干涉,唯一区别是当双孔直径增加一倍时,等效为光源光强增加四倍。
改变双缝间距:根据杨氏双孔干涉相关结论,改变双孔间距,将改变条纹之间间距e,趋势为随着双缝间距增加,条纹间距逐渐减小。具体数学关系为:e=lam*D/d;曲线表示为:
3、改变下列光波场分布,观察干涉图样变化
(1)如左图所示,两平面光波叠加,改变光波振幅比a 光波夹角theta ,观察在接收屏上的干涉图样变化;
①图中参数:
光线波长:lam=500纳米;
双缝距接收屏的距离:D=1(米);
接收屏的范围:xs :-0.000002—0.000002
ys :-0.000002—0.000002;
两光波夹角:theta=90度(可调)
光源振幅:AI=1;A2=a*A1;(a 为光波振幅比,初始为1,可调)
②matlab 代码:
clear;
lam=500e-9; %设定波长lam (500纳米)
theta=pi/2; %设定两平面波夹角theta (90度)
A1=1; %光源均为单位幅度
a=1; %a 为振幅比
A2=a*A1; %a=A2/A1
xm=0.000002;
ym=xm; %接受屏的范围xm ,ym(0.000004*0.000004矩形) n=1001;
xs=linspace(-xm,xm,n);
%用线性采样法生成两个一位数组 %xs ,ys (n 为总点数) ys=linspace(-ym,ym,n);
[xs, ys] = meshgrid(xs, ys);%生成网格采样点 n*n 矩阵
E1=A1.*exp(-1i*xs*cos(theta/2)*2*pi/lam);%平面波1在接受屏上复振幅E1 E2=A2.*exp(1i*xs*cos(theta/2)*2*pi/lam);%平面波2在接受屏上复振幅E2 E=E1+E2; %复振幅叠加
I=abs(E).^2; %光强
pcolor(xs, ys, I); %生成干涉图样
shading flat;
colormap gray
③初始干涉仿真图样:
④改变参数后的仿真图样(光波振幅比a、两光波夹角theta)
a=1.6 a=2.1
theta=60°theta=120°
⑤变化分析:
改变光波振幅比a:改变光波振幅比a即为改变光源光强。由上述仿真图片可以看出,当增大光波增幅比a时,亮条纹宽度明显增加,但条纹间距不改变。通过仿真发现,当a增加到2.9左右时,接收屏上将出现一片亮,即暗条纹消失。
改变两光波夹角theta:根据仿真图样可以得知,两光波夹角theta越大,出现的干涉条纹间距约大。
(2)如右图所示,两点光源前后放置,改变其间距,观察在接收屏上的干涉图Array样变化;
①图中参数:
光线波长:lam=500纳米;
两点光源间距:d=0.002米;(可调)
点光源S2到接收屏距离:Z=0.02米
接收屏的范围:xs:-xs—xs;
ys:-ys—ys;
②matlab代码
clear;
lam=500e-9; %设定波长lam(500纳米)
d=2e-3; %设定之间两点光源间距离d(0.002米)Z=2e-2; %点光源S2到接收屏距离Z
A1=1; %两光源均为单位幅度
A2=A1;
xm=2e-3;
ym=xm; %接受屏的范围xm,ym
n=1001;
xs=linspace(-xm,xm,n);%用线性采样法生成两个一位数组
ys=linspace(-ym,ym,n);%xs,ys(n为总点数)
[xs, ys] = meshgrid(xs, ys); %生成网格采样点n*n矩阵
r1=sqrt(xs.^2+ys.^2+(Z+d)^2);%光屏上点(xs,ys)距光源1距离r1 r2=sqrt(xs.^2+ys.^2+Z^2); %光屏上点(xs,ys)距光源2距离r2 E1=A1./r1.*exp(1i*r1*2*pi/lam);%点光源S1在接受屏上复振幅E1 E2=A2./r2.*exp(1i*r2*2*pi/lam);%点光源S2在接受屏上复振幅E2 E=E1+E2; %复振幅叠加
I=abs(E).^2; %光强
pcolor(xs, ys, I); %生成干涉图样
shading flat;
colormap gray
③初始干涉仿真图样:
④改变参数后的仿真图样(光源间距d )
d=0.003 d=0.001
⑤变化分析及曲线:
改变光源间距d :由仿真图样可以得知,改变光源间距,将改变同心圆环的分布。具体为,d 越大,同心圆环半径减小,表现为向圆心聚拢,条纹更加密集。
(3)如右图所示,两点光源并排放置,观察在接收屏上的干涉图样变化。
①图中参数:
图中参数:
光线波长:lam=500纳米;
两点光源间距:d=0.002米;(可调)
接收屏的范围:xs :-xs —xs ;
ys :-ys —ys ;
②matlab代码:
clear;
lam=500e-9; %设定波长lam(500纳米)
d=2e-3; %设定两点光源之间距离d(0.002米)
D=d/2; %双点光源到接收屏距离(接受屏垂直于两点光
%源连线)
A1=1; %两光源均为单位幅度
A2=A1;
xm=0.00008;
ym=xm; %接受屏的范围ym,xm
n=1001;
xs=linspace(-xm,xm,n); %用线性采样法生成两个一位数组ys=linspace(-ym,ym,n); %xs,ys(n为总点数)
[xs, ys] = meshgrid(xs, ys);%生成网格采样点n*n矩阵
r1=sqrt(xs.^2+ys.^2+D^2); %光屏上点(xs,ys)距光源1距离r1
r2=sqrt(xs.^2+ys.^2+D^2); %光屏上点(xs,ys)距光源2距离r2
E1=A1./r1.*exp(1i*r1*2*pi/lam);%点光源1在接受屏上复振幅E1
E2=A2./r2.*exp(-1i*r2*2*pi/lam);%点光源2在接受屏上复振幅E2
E=E1+E2; %复振幅叠加
I=abs(E).^2; %光强
pcolor(xs, ys, I); shading flat;
colormap gray
③初始干涉图样:
两光源聚散性相反两光源聚散性相同④改变参数后的仿真图样:
d=0.001 d=0.003
⑤变化分析及曲线:
改变聚散性:当两点光源聚散性相反时,将形成同心圆环;聚散相同时,将形成一亮斑;
改变光源间距d:由仿真图样可以得知,改变光源间距,将改变同心圆环的分布。具体为:d越小,同心圆环半径减小,表现为向圆心聚拢,条纹更加密集。(与上一模型正好相反)
4、如图4-6所示,改变平面光波场分布,观察干涉图样变化
1)垂直入射
① 原理图
图中参数:
光线波长:lam=500nm ;
点光源到接收屏距离:D=1m ;
接收屏范围:xs :-0.002—0.002
ys :-0.002—0.002 光源振幅:A1=A2=1;(可调)
②matlab 代码:
clear;
lam=500e-9; %设定波长lam (500纳米)
D=1000e-3; %点光源孔到接收屏距离
A1=1; %两光源均为单位幅度
A2=A1;
xm=0.002;
ym=xm; %接受屏的范围ym ,xm
n=1001;
xs=linspace(-xm,xm,n); %用线性采样法生成两个一位数组xs ,ys (n 为总点数) ys=linspace(-ym,ym,n);
[xs, ys] = meshgrid(xs, ys); %生成网格采样点 n*n 矩阵
r1=sqrt(xs.^2+ys.^2+D^2); %光屏上点(xs,ys )距光源1距离r1
E1=A1./r1.*exp(1i*r1*2*pi/lam);%点光源1在接受屏上复振幅E1
E2=A2; %平面波2在接受屏上复振幅E2
E=E1+E2; %复振幅叠加
I=abs(E).^2; %光强
pcolor(xs, ys, I); %生成干涉图样
shading flat;
colormap gray
②干涉仿真图样:
2)斜入射(与接收屏法线方向60°)
①模型参数:
光线波长:lam=500nm;
点光源到接收屏距离:D=1mm;
接收屏范围:xs:- 0.00051—0.00051
ys:- 0.00051—0.00051
光源振幅:A1=A2=1;(可调)
②matlab代码:
clear;
lam=500e-9; %设定波长lam(500纳米)D=10e-3; %点光源孔到接收屏距离
A1=1; %两光源均为单位幅度
A2=A1;
xm=0.00051;
ym=xm; %接受屏的范围ym,xm
n=1001;
xs=linspace(-xm,xm,n); %用线性采样法生成两个一位数组
%xs ,ys (n 为总点数)
ys=linspace(-ym,ym,n);
[xs, ys] = meshgrid(xs, ys); %生成网格采样点 n*n 矩阵
r1=sqrt(xs.^2+ys.^2+D^2); %光屏上点(xs,ys )距光源1距离r1
E1=A1./r1.*exp(1i*r1*2*pi/lam); %点光源1在接受屏上复振幅E1 E2=A2*exp(-1i*xs*cos(pi/3)*2*pi/lam); %平面波2在接受屏上复振幅E2 E=E1+E2; %复振幅叠加
I=abs(E).^2; %光强
pcolor(xs, ys, I); %生成干涉图样
shading flat;
colormap gray
干涉仿真图样:
改变平面光波入射方向:
5、用平行光(点光源+准直镜)照射如图7所示不同形状楔板,观察干涉图样
不同形状楔板
1)斜面楔板
当薄膜为空气时,其折射率n=1,而且上下
表面BB与AA之间的夹角又很小,使光线几乎
垂直入射,则C在BB表面上,光线11'和22'
的光程差为:
(1)
式中,是因为光线由光疏媒质入射到光密
媒质在AA界面上反射时,发生的半波损失引起
的光程差。
式(1)只与薄膜的厚度d和光波波长有关。
当光程差:
(k=1,2,3……)即:时产生暗条纹;
当光程差:
(k=1,2,3……)即:时产生亮条纹。
从以上亮纹或暗纹公式易导出,从一个条纹过渡到另一个条纹,平板的厚度变化为。对应光程差变化为,楔板的楔角。e为条纹间距,且又所以。
①matlab代码:
clear;
lam=500e-9; %设定波长lam(500纳米)
A1=1; %两光源均为单位幅度
A2=A1; %默认为相等
theta=pi/90; %楔板倾角theta
n=1; %楔板折射率n
xm=10e-5;
ym=xm; %接受屏的范围xm,ym
n=1001;
xs=linspace(0,xm,n); %用线性采样法生成两个一维数组
%xs,ys(n为总点数)ys=linspace(0,ym,n);
[xs, ys] = meshgrid(xs, ys);
deta=2*n*xs*tan(theta); %光程差
phi=2*pi*deta/lam; %相位差
E1=A1; %平面波1在接受屏上复振幅E1 E2=A2.*exp(-1i*phi); %平面波2在接受屏上复振幅E2 E=E1+E2; %复振幅叠加
I=abs(E).^2; %光强
pcolor(xs, ys, I); %生成干涉图样
shading flat;
colormap gray
③干涉图样
通信系统基于(15,11)汉明编码的matlab仿真 clear m=4; n=2^m-1; k=11; msg1=randint(1,6000*k,[0,1])%产生信息序列 code0=vec2mat(msg1,k); code1=encode(msg1,n,k,'hamming/binary');%进行汉明纠错编码 code2=reshape(code1,90,1000)'; code3=zeros(1000,90);%设置零矩阵,以便储存交织后的序列 for i=1:1000 temp=code2(i,:); temp1=reshape(temp,15,6);%按15*6交织 code3(i,:)=reshape(temp1',1,90); end [row,cloums]=size(code3); code4=code3'; [row1,cloums1]=size(code4); code5=reshape(code4,6,15000)'; %将交织后的序列转换为6行,15000列矩阵msg2=zeros(15000,6); for j=2:6, msg2(:,j)=xor(code5(:,j),code5(:,(j-1))); end msg2(:,1)=code5(:,1);%此时得到的msg2为gray映射后的信号序列 code8=msg2';%转置,便于比特符号转换 A=[32,16,8,4,2,1]; %为比特符合转换所设的序列 msg3=A*code8;%生成符号序列 msg4=qammod(msg3,64);%将符号序列进行64QAM调制 [row2,cloums2]=size(msg4); dB=0:1:20; for k=1:length(dB), snr=10.^(dB(k)./10); %信噪比 sgma=sqrt(63./(6*snr));%标准差 b1=real(msg4)+sgma*randn(row2,cloums2);%分路叠加噪声 b2=imag(msg4)+sgma*randn(row2,cloums2);%分路叠加噪声 rx=complex(b1,b2); %————————量化判决——————————% for m=1:row2, for n=1:cloums2, if ((b1(m,n)<-6)) b11(m,n)=-7;
系统仿真 § 4.1控制系统的数学模型 1、传递函数模型(tranfer function) 2、零极点增益模型(zero-pole-gain) 3、状态空间模型(state-space) 4、动态结构图(Simulink结构图) 一、传递函数模型(transfer fcn-----tf) 1、传递函数模型的形式 传函定义:在零初始条件下,系统输出量的拉氏变换C(S)与输入量的拉氏变换R(S)之比。 C(S) b1S m+b2S m-1+…+b m G(S)=----------- =- -------------------------------- R(S) a1S n + a2S n-1 +…+ a n num(S) = ------------ den(S) 2、在MATLAB命令中的输入形式 在MATLAB环境中,可直接用分子分母多项式系数构成的两个向量num、den表示系统: num = [b1, b2, ..., b m]; den = [a1, a2, ..., a n]; 注:1)将系统的分子分母多项式的系数按降幂的方式以向量的形式输入两个变量,中间缺项的用0补齐,不能遗漏。 2)num、den是任意两个变量名,用户可以用其他任意的变量名来输入系数向量。 3)当系统种含有几个传函时,输入MATLAB命令状态下可用n1,d1;n2,d2…….。 4)给变量num,den赋值时用的是方括号;方括号内每个系数分隔开用空格或逗号;num,den方括号间用的是分号。 3、函数命令tf( ) 在MATLAB中,用函数命令tf( )来建立控制系统的传函模型,或者将零极点增益模型、状态空间模型转换为传函模型。 tf( )函数命令的调用格式为: 圆括号中的逗号不能用空格来代替 sys = tf ( num, den ) [G= tf ( num, den )]
信号与系统的MATLAB 仿真 一、信号生成与运算的实现 1.1 实现)3(sin )()(π±== =t t t t S t f a )(sin )sin()sin(sin )()(t c t t t t t t t S t f a '=' '== ==πππ π ππ m11.m t=-3*pi:0.01*pi:3*pi; % 定义时间范围向量t f=sinc(t/pi); % 计算Sa(t)函数 plot(t,f); % 绘制Sa(t)的波形 运行结果: 1.2 实现)10() sin()(sin )(±== =t t t t c t f ππ m12.m t=-10:0.01:10; % 定义时间范围向量t f=sinc(t); % 计算sinc(t)函数 plot(t,f); % 绘制sinc(t)的波形 运行结果: 1.3 信号相加:t t t f ππ20cos 18cos )(+= 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.4 信号的调制:t t t f ππ50cos )4sin 22()(+= 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 信号相乘:)20cos()(sin )(t t c t f π?= 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)'); % 加注波形标题 运行结果:
学习中心/函授站_ 成都学习中心 姓名赵洪学号7020140122093 西安电子科技大学网络与继续教育学院 2015学年上学期 《MATLAB与系统仿真》期末考试试题 (综合大作业) 考试说明: 1、大作业于2015年4月3日公布,2015年5月9日前在线提交; 2、考试必须独立完成,如发现抄袭、雷同、拷贝均按零分计。 3、程序设计题(三(8,10))要求写出完整的程序代码,并在matlab软件环境调试并运行通过,连同运行结果一并附上。 一、填空题(1? ×25=25?) 1、Matlab的全称为矩阵实验室。 2、在Matlab编辑器中运行程序的快捷键是:F5 。 3、Matlab的工作界面主要由以下五个部分组成,它们分别是:菜单栏、 工具栏、当前工作目录窗口、工作空间管理窗口和命令窗口。 4、在Matlab中inf表示:无穷大;clc表示:清空命令窗口中的显示内容;more表示:在命令窗口中控制其后每页的显示内容行数;who表示:查阅Matlad内存变量名;whos表示:列出当前工作空间所有变量。 5、在Matlab命令窗口中运行命令Simulink 可以打开Simulink模块库浏览器窗口。 6、求矩阵行列式的函数:det ;求矩阵特征值和特征向量的函数eig 。 7、Matlab预定义变量ans表示:没有指定输出变量名;eps表示:系统精度 ;nargin表示:函数输入参数的个数。 8、Matlab提供了两种方法进行程序分析和优化,分别为:通过Profiler工具优化和通过tic和toc函数进行优化。 9、建立结构数组或转换结构数组的函数为:struct ; 实现Fourier变换在Matlab中的对应函数为:fourier() ;Laplace变换的函数:Laplace() 。
课程设计报告 题目PID控制器应用 课程名称控制系统仿真院部名称龙蟠学院 专业自动化 班级M10自动化 学生姓名 学号 课程设计地点 C208 课程设计学时一周 指导教师应明峰 金陵科技学院教务处制成绩
一、课程设计应达到的目的 应用所学的自动控制基本知识与工程设计方法,结合生产实际,确定系统的性能指标与实现方案,进行控制系统的初步设计。 应用计算机仿真技术,通过在MATLAB软件上建立控制系统的数学模型,对控制系统进行性能仿真研究,掌握系统参数对系统性能的影响。 二、课程设计题目及要求 1.单回路控制系统的设计及仿真。 2.串级控制系统的设计及仿真。 3.反馈前馈控制系统的设计及仿真。 4.采用Smith 补偿器克服纯滞后的控制系统的设计及仿真。 三、课程设计的内容与步骤 (1).单回路控制系统的设计及仿真。 (a)已知被控对象传函W(s) = 1 / (s2 +20s + 1)。 (b)画出单回路控制系统的方框图。 (c)用MatLab的Simulink画出该系统。
(d)选PID调节器的参数使系统的控制性能较好,并画出相应的单位阶约响应曲线。注明所用PID调节器公式。PID调节器公式Wc(s)=50(5s+1)/(3s+1) 给定值为单位阶跃响应幅值为3。 有积分作用单回路控制系统PID控制器取参数分别为:50 2 5 有积分作用单回路控制系统PID控制器取参数分别为:50 0 5
大比例作用单回路控制系统PID控制器取参数分别为:50 0 0 (e)修改调节器的参数,观察系统的稳定性或单位阶约响应曲线,理解控制器参数对系统的稳定性及控制性能的影响? 答:由上图分别可以看出无积分作用和大比例积分作用下的系数响应曲线,这两个PID调节的响应曲线均不如前面的理想。增大比例系数将加快系统的响应,但是过大的比例系数会使系统有比较大的超调,并产生振荡,使稳定性变坏;
补充内容:模拟调制系统的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 仿真大作业附题目+ 完整报告内容
设二阶控制系统如图1所示,其中开环传递函数 ) 1(10 )2()(2+=+=s s s s s G n n ξωω 图1 图2 图3 要求: 1、分别用如图2和图3所示的测速反馈控制和比例微分控制两种方式改善系统的性能,如果要求改善后系统的阻尼比ξ =0.707,则和 分别取多少? 解: 由)1(10 )2()(2 += +=s s s s s G n n ξωω得10 21,10,102===ξωωn t K d T
对于测速反馈控制,其开环传递函数为:) 2()s (2 2n t n n K s s G ωξωω++=; 闭环传递函数为:2 2 2)2 (2)(n n n t n s K s s ωωωξωφ+++= ; 所以当n t K ωξ2 1+=0.707时,347.02)707.0(t =÷?-=n K ωξ; 对于比例微分控制,其开环传递函数为:)2()1()(2 n n d s s s T s G ξωω++=; 闭环传递函数为:) )2 1(2)1()(2 22 n n n d n d s T s s T s ωωωξωφ++++=; 所以当n d T ωξ2 1 +=0.707时,347.02)707.0(=÷?-=n d T ωξ; 2、请用MATLAB 分别画出第1小题中的3个系统对单位阶跃输入的响应图; 解: ①图一的闭环传递函数为: 2 22 2)(n n n s s s ωξωωφ++=,10 21 ,10n ==ξω Matlab 代码如下: clc clear wn=sqrt(10); zeta=1/(2*sqrt(10)); t=0:0.1:12; Gs=tf(wn^2,[1,2*zeta*wn,wn^2]); step(Gs,t)
第七章系统仿真的MATLAB实现 由于计算机技术的高速发展,我们可以借助计算机完成系统的数字仿真。综前所述,数字仿真实质上是根据被研究的真实系统的模型,利用计算机进行实验研究的一种方法。仿真的主要过程是:建立模型、仿真运行和分析研究仿真结果。仿真运行就是借助一定的算法,获得系统的有关信息。 MATLAB是一种面向科学与工程计算的高级语言,它集科学计算、自动控制、信号处理、神经网络和图像处理等学科的处理功能于一体,具有极高的编程效率。MATLAB是一个高度集成的系统,MATLAB提供的Simulink是一个用来对动态系统进行建模、仿真和分析的软件包,它支持线性和非线性系统,能够在连续时间域、离散时间域或者两者的混合时间域里进行建模,它同样支持具有多种采样速率的系统。在过去几年里,Simulink已经成为数学和工业应用中对动态系统进行建模时使用得最为广泛的软件包。 MATLAB仿真有两种途径:(1)MATLAB可以在SIMULINK窗口上进行面向系统结构方框图的系统仿真;(2)用户可以在MATLAB的COMMAND窗口下,用运行m文件,调用指令和各种用于系统仿真的函数,进行系统仿真。这两种方式可解决任意复杂系统的动态仿真问题,前者编辑灵活,而后者直观性强,实现可视化编辑。 下面介绍在MATLAB上实现几类基本仿真。 7.1 计算机仿真的步骤 在学习计算机仿真以前,让我们先总结一下计算机仿真的步骤。 计算机仿真,概括地说是一个“建模—实验—分析”的过程,即仿真不单纯是对模型的实验,还包括从建模到实验再到分析的全过程。因此进行一次完整的计算机仿真应包括以下步骤:
(1)列举并列项目 每一项研究都应从说明问题开始,问题由决策者提供或由熟悉问题的分析者提供。 (2)设置目标及完整的项目计划 目标表示仿真要回答的问题、系统方案的说明。项目计划包括人数、研究费用以及每一阶段工作所需时间。 (3)建立模型和收集数据 模型和实际系统没有必要一一对应,模型只需描述实际系统的本质或者描述系统中所研究部分的本质。因此,最好从简单的模型开始,然后进一步建立更复杂的模型。 (4)编制程序和验证 利用数学公式、逻辑公式和算法等来表示实际系统的内部状态和输入/输出的关系。建模者必须决定是采用通用语言如MATLAB、FORTRAN、C还是专用仿真语言来编制程序。在本教材中,我们选择的是MATLAB和其动态仿真工具Simulink。 (5)确认 确认指确定模型是否精确地代表实际系统。它不是一次完成,而是比较模型和实际系统特性的差异,不断对模型进行校正的迭代过程。 (6)实验设计 确定仿真的方案、初始化周期的长度、仿真运行的长度以及每次运行的重复次数。 (7)生产性运行和分析 通常用于估计被仿真系统设计的性能量度。利用理论定性分析、经验定性分析或系统历史数据定量分析来检验模型的正确性,利用灵敏度分析等手段来检验模型的稳定性。 (8)文件清单和报表结果 (9)实现
实验一 MATLAB 及仿真实验(控制系统的时域分析) 一、实验目的 学习利用MATLAB 进行控制系统时域分析,包括典型响应、判断系统稳定性和分析系统的动态特性; 二、预习要点 1、 系统的典型响应有哪些 2、 如何判断系统稳定性 3、 系统的动态性能指标有哪些 三、实验方法 (一) 四种典型响应 1、 阶跃响应: 阶跃响应常用格式: 1、)(sys step ;其中sys 可以为连续系统,也可为离散系统。 2、),(Tn sys step ;表示时间范围0---Tn 。 3、),(T sys step ;表示时间范围向量T 指定。 4、),(T sys step Y =;可详细了解某段时间的输入、输出情况。 2、 脉冲响应: 脉冲函数在数学上的精确定义:0 ,0)(1)(0 ?==?∞ t x f dx x f 其拉氏变换为: ) ()()()(1 )(s G s f s G s Y s f === 所以脉冲响应即为传函的反拉氏变换。 脉冲响应函数常用格式: ① )(sys impulse ; ② ); ,(); ,(T sys impulse Tn sys impulse ③ ),(T sys impulse Y = (二) 分析系统稳定性 有以下三种方法: 1、 利用pzmap 绘制连续系统的零极点图; 2、 利用tf2zp 求出系统零极点; 3、 利用roots 求分母多项式的根来确定系统的极点 (三) 系统的动态特性分析 Matlab 提供了求取连续系统的单位阶跃响应函数step 、单位脉冲响应函数impulse 、零输入响应函数initial 以及任意输入下的仿真函数lsim.
仿真报告 课程名称:自动化技术导论 报告题目:MATLAB/simulink系统仿真分析 班级 姓名 学号 xxxxxx自动化学院 2016年4月 软件版本:MATLAB R2010b MATLAB强处理能力 MATLAB是一个包含大量计算算法的集合。其拥有600多个工程中要用到的数学运算函数,可以方便的实现用户所需的各种计算功能。函数中所使用的算法都是科研和工程计算中的最新研究成果,而且经过了各种优化和容错处理。在通常情况下,可以用它来代替底层编程语言,如C和C++ 。在计算要求相同的情况下,使用MATLAB的编程工作量会大大减少。MATLAB的这些函数集包括从最简单最基本的函数到诸如矩阵,特征向量、快速傅立叶变换的复杂函数。函数所能解决的问题其大致包括矩阵运算和线性方程组的求解、微分方程及偏微分方程的组的求解、符号运算、傅立叶变换和数据的统计分析、工程中的优化问题、稀疏矩阵运算、复数的各种运算、三角函数和其他初等数学运算、多维数组操作以及建模动态仿真等。 MATLAB图形处理 MATLAB自产生之日起就具有方便的数据可视化功能,以将向量和矩阵用图形表现出来,并且可以对图形进行标注和打印。高层次的作图包括二维和三维的可视化、图象处理、动画和表达式作图。可用于科学计算和工程绘图。新版本的MATLAB对整个图形处理功能作了很大的改进和完善,使它不仅在一般数据可视化软件都具有的功能(例如二维曲线和三维曲面的绘制和处理等)方面更加完善,而且对于一些其他软件所没有的功能(例如图形的光照处理、色度处理以及四维数据的表现等),MATLAB同样表现了出色的处理能力。同时对一些特殊的可视化要求,例如图形对话等,MATLAB也有相应的功能函数,保证了用户不同层次的要求。另外新版本的MATLAB还着重在图形用户界面(GUI)的制作上作了很大的改善,对这方面有特殊要求的用户也可以得到满足。 MATLAB对许多专门的领域都开发了功能强大的模块集和工具箱。一般来说,它们都是由特定领域的专家开发的,用户可以直接使用工具箱学习、应用和评估不同的方法而不需要自己编写代码。领域,诸如数据采集、数据库接口、概率统计、样条拟合、优化算法、偏微分方程求解、神经网络、小波分析、信号处理、图像处理、系统辨识、控制系统设计、LMI控制、鲁棒控制、模型预测、模糊逻辑、金融分析、地图工具、非线性控制设计、实时快速原型及半物理仿真、嵌入式系统开发、定点仿真、DSP与通讯、电力系统仿真等,都在工具箱(Toolbox)家族中有了自己的一席之地。MATLAB程序接口
simulink仿真 -1<ξ<0 >> step(tf(4^2,[1,2*(-0.5)*4,4^2])) ξ<-1 >> step(tf(4^2,[1,2*(-1.5)*4,4^2])) ξ=0 >> step(tf(4^2,[1,2*0*4,4^2])) 0<ξ<1 >> figure >> step(tf(4^2,[1,2*0.1*4,4^2])) >> step(tf(4^2,[1,2*0.2*4,4^2])) >> step(tf(4^2,[1,2*0.3*4,4^2])) >> step(tf(4^2,[1,2*0.4*4,4^2])) >> step(tf(4^2,[1,2*0.5*4,4^2])) >> step(tf(4^2,[1,2*0.6*4,4^2])) >> step(tf(4^2,[1,2*0.7*4,4^2])) >> step(tf(4^2,[1,2*0.8*4,4^2])) >> step(tf(4^2,[1,2*0.9*4,4^2])) ωn不变,ζ减小
ξ=1 >> figure >> step(tf(4^2,[1,2*1*4,4^2])) ξ>1 >> hold on >> step(tf(4^2,[1,2*2.0*4,4^2])) >> step(tf(4^2,[1,2*4.0*4,4^2])) >> step(tf(4^2,[1,2*8.0*4,4^2])) ωn不变,ζ减小 ξ=0.5,改变ωn时的情况: >> figure >> step(tf(1^2,[1,2*0.5*1,1^2])) (ωn=1)
>> hold on >> step(tf(2^2,[1,2*0.5*2,2^2])) (ωn=2)>> step(tf(4^2,[1,2*0.5*4,4^2])) (ωn=4)>> step(tf(8^2,[1,2*0.5*8,8^2])) (ωn=8) ζ不变,ωn增大 曲线拟合程序 >> figure >> x=[0,0.2,0.4,0.6,0.8,1.0,1.2]; >> y=[1.135,1.135,1.216,1.351,1.534,1.737,2.0,]; >> plot(x,y,'.') >> hold on >> x1=[0:0.1:1.2]; >> y1=1+0.6*x1+0.2*x1.^2; >> plot(x1,y1) >> y1=1+0.7*x1; >> plot(x1,y1)
西安交通大学 基于MATLAB/Simulink 的一阶、二阶系统的时域和频 域仿真 ——以单位阶跃信号为输入信号 日期:2013年4月 一阶系统时域和频域仿真 1、建立一阶系统典型数学模型 ()1 1 G s Ts =+ 2、建立simulink 仿真方框图
1T.s+1 Transfer Fcn Step Scope ① 时间常数T=1时,一阶系统时域响应为 12345678 910 00.5 1 一阶系统时域相应(T=1) Matlab 程序: %一阶系统仿真编程 num=[1]; den=[1 1]; bode(num,den); grid on ; gtext('低频段频率-20dB/dec'); 运行程序,有时间常数T=1时,一阶系统的频域响应为
10 -210 -1 10 10 1 10 2 -90-45 一阶系统频域响应 P h a s e (d e g ) Bode Di a gram Frequency (rad/s) -40-30-20-100 低频段斜率-20dB/dec System: sys Frequency (rad/s): 1.01Magni t ude (dB): -3.07 M a g n i t u d e (d B ) ② 时间常数T=3时,一阶系统单位阶跃时域响应 12345678910 00.5 1 一阶系统单位阶跃响应(T=3) Matlab 程序: %一阶系统仿真编程 num=[1]; den=[3 1]; bode(num,den);
grid on ; gtext('低频段频率-20dB/dec'); 运行程序,有时间常数T=3时,一阶系统的频域响应为 10 -210 -1 10 10 1 -90-45 P h a s e (d e g ) Bode Di a gram Frequency (rad/s) -30-20-100 低频段频率-20dB/dec System: sys Frequency (rad/s): 0.334Magni t ude (dB): -3.03 M a g n i t u d e (d B ) 3、分析以上一阶系统在不同时间常数下的单位阶跃响应,可以看出时间常数越小,系统响应越快;而且一阶系统的转角频率为1/T ,在转角频率以上时,幅频特性曲线以-20dB/dec 下降,而相频特性以0°和90°为渐近线。
创新实践报告 报告题目: 基于matlab的通信系统仿真学院名称: 信息工程学院 姓名: 班级学号: 指导老师: 二O一四年十月十五日
一、引言 现代社会发展要求通信系统功能越来越强,性能越来越高,构成越来越复杂;另一方面,要求通信系统技术研究与产品开发缩短周期,降低成本,提高水平。这样尖锐对立的两个方面的要求,只有通过使用强大的计算机辅助分析设计技术与工具才能实现。在这种迫切的需求之下,MA TLAB应运而生。它使得通信系统仿真的设计与分析过程变得相对直观与便捷,由此也使得通信系统仿真技术得到了更快的发展。通信系统仿真贯穿着通信系统工程设计的全过程,对通信系统的发展起着举足轻重的作用。通信系统仿真具有广泛的适应性与极好的灵活性,有助于我们更好地研究通信系统性能。通信系统仿真的基本步骤如下图所示: 二、仿真分析与测试 (1)随机信号的生成 利用Matlab中自带的函数randsrc来产生0、1等概分布的随机信号。源代码如下所示: global N N=300; global p
p=0、5; source=randsrc(1,N,[1,0;p,1-p]); (2)信道编译码 1、卷积码的原理 卷积码(convolutional code)就是由伊利亚斯(p 、Elias)发明的一种非分组码。在前向纠错系统中,卷积码在实际应用中的性能优于分组码,并且运算较简单。 卷积码在编码时将k 比特的信息段编成n 个比特的码组,监督码元不仅与当前的k 比特信息段有关,而且还同前面m=(N-1)个信息段有关。 通常将N 称为编码约束长度,将nN 称为编码约束长度。一般来说,卷积码中k 与n 的值就是比较小的整数。将卷积码记作(n,k,N)。卷积码的编码流程如下所示。 可以瞧出:输出的数据位V1,V2与寄存器D0,D1,D2,D3之间的关系。根据模2加运算特点可以得知奇数个1模2运算后结果仍就是1,偶数个1模2运算后结果就是0。 2、译码原理 卷积码译码方法主要有两类:代数译码与概率译码。代数译码主要根据码本身的代数特性进行译码,而信道的统计特性并没有考虑在内。目前,代数译码的主要代表就是大数逻辑解码。该译码方法对于约束长度较短的卷积码有较好的效果,并且设备较简单。概率译码,又称最大似然译码,就是基于信道的统计特性与卷积 码的特点进行计算。在现代通信系统中,维特比译码就是目前使用最广泛的概率 译码方法。 02 1V D D =⊕01232V D D D D =⊕⊕⊕
控制系统仿真 [教学目的] 掌握数字仿真基本原理 控制系统的数学模型建立 掌握控制系统分析 [教学内容] 一、控制系统的数学模型 sys=tf(num,den)%多项式模型,num为分子多项式的系数向量,den为分母多项式的系%数向量,函数tf()创建一个TF模型对象。 sys=zpk(z,p,k)%z为系统的零点向量,p为系统的极点向量,k为增益值,函数zpk()创建一个ZPK模型对象。 (一)控制系统的参数模型 1、TF模型 传递函数 num=[b m b m-1b m-2…b1b0] den=[a m a m-1a m-2…a1a0] sys=tf(num,den) 【例1】系统的传递函数为。 >>num=[01124448]; >>den=[11686176105]; >>sys=tf(num,den); >>sys Transfer function: s^3+12s^2+44s+48 ------------------------------------- s^4+16s^3+86s^2+176s+105 >>get(sys) >>set(sys) >>set(sys,'num',[212])
>>sys Transfer function: 2s^2+s+2 ------------------------------------- s^4+16s^3+86s^2+176s+105 【例2】系统的传递函数为。 >>num=conv([20],[11]); >>num num= 2020 >>den=conv([100],conv([12],[1610])); >>sys=tf(num,den) Transfer function: 20s+20 ------------------------------- s^5+8s^4+22s^3+20s^2 【例3】系统的开环传递函数为,写出单位负反馈时闭环传递函数的TF模型。>>numo=conv([5],[11]); >>deno=conv([100],[13]); >>syso=tf(numo,deno); >>sysc=feedback(syso,1) Transfer function: 5s+5 ---------------------- s^3+3s^2+5s+5 【例4】反馈系统的结构图为: R
% ======================================================================= ====================% % 该程序完成16个脉冲信号的【脉压、动目标显示/动目标检测(MTI/MTD)】 % ======================================================================= ====================% % 程序中根据每个学生学号的末尾三位(依次为XYZ)来决定仿真参数,034 % 目标距离为[3000 8025 9000+(Y*10+Z)*200 8025],4个目标 % 目标速度为[50 0 (Y*10+X+Z)*6 100] % ======================================================================= ====================% close all; %关闭所有图形 clear all; %清除所有变量 clc; % ======================================================================= ============% % 雷达参数 % % ======================================================================= ============% C=3.0e8; %光速(m/s) RF=3.140e9/2; %雷达射频 1.57GHz Lambda=C/RF;%雷达工作波长 PulseNumber=16; %回波脉冲数 BandWidth=2.0e6; %发射信号带宽带宽B=1/τ,τ是脉冲宽度 TimeWidth=42.0e-6; %发射信号时宽 PRT=240e-6; % 雷达发射脉冲重复周期(s),240us对应1/2*240*300=36000米最大无模糊距离 PRF=1/PRT; Fs=2.0e6; %采样频率 NoisePower=-12;%(dB);%噪声功率(目标为0dB) % ---------------------------------------------------------------% SampleNumber=fix(Fs*PRT);%计算一个脉冲周期的采样点数480; TotalNumber=SampleNumber*PulseNumber;%总的采样点数480*16=; BlindNumber=fix(Fs*TimeWidth);%计算一个脉冲周期的盲区-遮挡样点数; %====================================================================== =============% % 目标参数 % %====================================================================== =============% TargetNumber=4;%目标个数 SigPower(1:TargetNumber)=[1 1 1 0.25];%目标功率,无量纲 TargetDistance(1:TargetNumber)=[3000 8025 15800 8025];%目标距离,单位m 距离参数为[3000 8025 9000+(Y*10+Z)*200 8025] DelayNumber(1:TargetNumber)=fix(Fs*2*TargetDistance(1:TargetNumber)/C); % 把目标距离换算成采样点(距离门) fix函数向0靠拢取整 TargetVelocity(1:TargetNumber)=[50 0 204 100];%目标径向速度单位m/s 速度参数为[50 0 (Y*10+X+Z)*6 100]
利用simulink进行仿真的步骤 1.双击桌面图标打开Matlab软件; 2.在Command Window命令行>>后输入simulink并回车或点击窗口上 部图标直接进入simulink界面; 3.在simulink界面点击File-New-Model就可以在Model上建立系统 的仿真模型了; 4.在左面的器件模型库中找到所需模型,用鼠标将器件模型拖到建立 的Model上,然后用鼠标将它们用连线连起来,系统的仿真模型就建立起来了; 5.点击界面上部的图标‘’进行仿真,双击示波器就可以看到仿真结 果。 实验要用到的元件模型的图标及解释如下: 阶跃信号:在simulink-source中可以找到,双击可以设定阶跃时间。 sum:在simulink-math operations中可以找到,双击可以改变器属性以实现信号相加还是相减; 比例环节:在simulink-math operations中可以找到,双击可以改变器属 性以改变比例系数; 积分环节:在simulink-continues中可以找到; 传函的一般数学模型表达形式:在simulink-continues中可以找到,双击可以对传递函数进行更改(通过设定系数)。 示波器:在simulink-sinks中可以找到。
传递函数的Matlab 定义 传递函数以多项式和的形式(一般形式、标准形式)给出 10111011()m m m m n n n n b s b s b s b G s a s a s a s a ----+++=+++ 用如下语句可以定义传递函数G(s) >> num=[b 0,b 1,b 2…b m ] ;只写各项的系数 >> den=[a 0,a 1,a 2,…a n ] ;只写各项的系数 >> g=tf(num,den) 或 >>g=tf([b0,b1,b2…bm],[a0,a1,a2,…an]) 例:用Matlab 定义二阶系统 2 223()(0.6,3)2*0.6*33n G s s s ζω===++ 并用Matlab 语句绘制此二阶系统在单位阶跃信号输入下的输出曲线c(t)(即单位阶跃响应)。 (1)定义函数: >> num=3^2 >> den=[1,2*0.6*3, 3^2] >> g=tf(num,den) (2)求系统的单位阶跃响应c(t): >> step(g) 可得到系统的单位阶跃响应 上述语句实现的功能也可以以一条语句实现: Time (sec)A m p l i t u d e
《电力系统设计》报告 题目: 基于MATLAB的电力系统仿 学院:电子信息与电气工程学院 班级:13级电气1 班 姓名:田震 学号:20131090124 日期:2015年12月6日 基于MATLAB的电力系统仿真 摘要:目前,随着科学技术的发展和电能需求量的日益增长,电力系统规
模越来越庞大,超高压远距离输电、大容量发电机组、各种新型控制装置得到了广泛的应用,这对于合理利用能源,充分挖掘现有的输电潜力和保护环境都有重要意义。另一方面,随着国民经济的高速发展,以城市为中心的区域性用电增长越来越快,大电网负荷中心的用电容量越来越大,长距离重负荷输电的情况日益普遍,电力系统在人们的生活和工作中担任重要角色,电力系统的稳定运行直接影响着人们的日常生活。从技术和安全上考虑直接进行电力试验可能性很小,因此迫切要求运用电力仿真来解决这些问题。 电力系统仿真是将电力系统的模型化、数学化来模拟实际的电力系统的运行,可以帮助人们通过计算机手段分析实际电力系统的各种运行情况,从而有效的了解电力系统概况。本文根据电力系统的特点,利用MATLAB的动态仿真软件Simulink搭建了无穷大电源的系统仿真模型,得到了在该系统主供电线路电源端发生三相短路接地故障并由故障器自动跳闸隔离故障的仿真结果,并分析了这一暂态过程。通过仿真结果说明MATLAB电力系统工具箱是分析电力系统的有效工具。 关键词:电力系统;三相短路;故障分析;MATLAB仿真
目录 一.前言 (4) 二.无穷大功率电源供电系统仿真模型构建 (5) 1.总电路图的设计 (5) 2.各个元件的参数设定 (7) 2.1供电模块的参数设定 (7) 2.2变压器模块的参数设置 (7) 2.3输电线路模块的参数设置 (8) 2.4三相电压电流测量模块 (9) 2.5三相线路故障模块参数设置 (9) 2.6三相并联RLC负荷模块参数设置 (10) 3.仿真结果 (11)
关于一阶系统的PID 算法控制的仿真设计 一、设计内容 对一阶系统实现PID 算法控制并进行仿真,具体功能如下:基本要求:实现PID 算法和一阶系统差分方程仿真,PID 算法中的四个参数和一阶系统的参数都可以通过菜单进行设定,系统对阶越函数的响应以图形方式实时显示在窗口中。 二、涉及算法的基本原理 在模拟系统中,PID 算法的表达式为: ])()(1)([)(?++ =dt t de T dt t e T t e K t P D I P (1) 式中 P(t):调节器的输出信号 e(t):调节器的偏差信号,等于测量值与给定值之差 P K :调节器的比例系数 I T :调节器的积分时间 D T :调节器的微分时间 欲控制系统的微分方程为: )()()(1 t x t y t y dt d T =+ (2) x(t)为系统输入,y(t)为系统输出。对于闭环的单位负反馈,我们有PID 控制器的输入是测试信号r(t)与系统输出y(t)之差,因此有: T 1dy(t)dt +y (t )=K P [(r (t )?y (t ))+1T I ∫(r (τ)?y(τ))dτt 0+T D d(r (t )?y (t ))dt ] (3) 又因为r(t)为阶跃函数,故有: d 2y (t )dt 2+1+K P T 1+K P T D dy (t )dt +K P T I (T 1+K P T D ) y (t )=K P T 1+K P T D [δ(t )+T D dδ(t )dt ]+r(t)T I (T 1+K P T D ) (4) 令: 2ab =?1+K P T 1+K P T D ,b =√K P T I (T 1 +K P T D ) ,c =K P T 1 +K P T D ,d =K P T D T 1 +K P T D e =1 T I (T 1 +K P T D ) (5) 则有: d 2y (t )dt 2?2ab dy (t )dt +b 2y (t )= cδ(t )+d dδ(t )dt +er(t) (6)
Matlab 与系统仿真试题及答案 一、填空题(每空2分,共30分) 1、单位取样序列定义为________________。 2、单位阶跃序列定义为__________________。 3、取样定理中,采样频率和原始信号频率之间至少应该满足公式_______________。 4、实现IIR 滤波器可以采用三种不同的结构:_______________、__________________和_______________。 5、对于理想的滤波特性()jw H e ,相应的()d h n 一般为无限时宽,从而使非因果的。为此,使显示一般通过如下公式__________实现加窗处理,相应的傅里叶表达形式为_________________。 6、设计IIR 滤波器的基础是设计模拟低通滤波器的原型,这些原型滤波器有:_________、________和______________低通滤波器。 7、实现FIR 滤波器可以采用以下4中结构: ________________,_______________,______________和____________。 二、阅读下列Matlab 程序,并回答完成的功能(每题5分,共10分) 1、f=[00.60.61]; m=[1100]; b=fir2(30,f,m); [h ,w]=freqz(b,1,128); Plot(f,m,w/pi,abs) 本段程序的功能是:
2、[b ,a]=butter(9,300/500,’high’); Freqz(b,a,128,1000) 本段程序的功能是: 三、用Matlab 语言编程实现下列各小题(每小题15分,共60分) 1、产生序列0.3,16p s A dB πΩ==55n -≤≤,并绘出离散图,标注图形标题为“Sequence in Example 3.1a”。 实现程序如下: