信号与系统》仿真 实验指示书要点 实验 产生信号波形的仿真实验
1 《信号与系统》仿真 实验指示书要点 实验一 产生信号波形的仿真实验
产生信号波形的方法 (1)利用 Matlab软件的 funtool符号计算方 式图式化函数计算器 ·(2)利用 Matlab软件的信号处理工具箱 Signal Processing Toolbox)中的专用函数 (3)利用 Matlab软件的仿真工具箱 Simulink 中的信号源模块
2 产生信号波形的方法 • (1)利用Matlab软件的funtool符号计算方 式——图式化函数计算器 • (2)利用Matlab软件的信号处理工具箱 (Signal Processing Toolbox)中的专用函数 • (3)利用Matlab软件的仿真工具箱Simulink 中的信号源模块
(一)Funt0o1产生信号波形 在 Matlab环境下输入指令 funtool,就产 生了三个视窗: figure no.,1:可轮流激活,显示 figure No3的计算结果 figure no2:可轮流激活,显示 figure N03的计算结果 figure no.3:函数运算器
3 (一) Funtool产生信号波形 • 在Matlab环境下输入指令funtool,就产 生了三个视窗: • figure No.1:可轮流激活,显示figure No.3的计算结果 • figure No.2:可轮流激活,显示figure No.3的计算结果 • figure No.3:函数运算器
具体演示操作: 输入指令funt0o可见三个视窗 函数的表达: figure no.3函数运算器的功能:f,g可 输入函数表达式。x是自变量,在缺损时 是在2pi,2p范围。自由参数是a。分别 输入完毕,按下面四排的任一运算操作 键,则可在 figure no.1或 figure no2中看 到产生的波形
4 具体演示操作: • 输入指令funtool可见三个视窗 • 函数的表达: figure No.3函数运算器的功能: f , g 可 输入函数表达式。x是自变量,在缺损时 是在[-2pi,2pi]范围。 自由参数是a。分别 输入完毕,按下面四排的任一运算操作 键,则可在figure No.1或figure No.2 中看 到产生的波形
figure No.3函数运算器的功能 Df求f(x)对于x的导数 If求(x)对于x的积分 Simp使f(x)的表达式尽可能简化 Num取f(x)的分子表达式 Den取f(x)的分母表达式 1/f求f(x)的倒数 fin求fx)的反函数
5 figure No.3函数运算器的功能 (1) • Df 求f(x)对于x的导数 • If 求f(x)对于x的积分 • Simp 使f(x)的表达式尽可能简化 • Num 取f(x) 的分子表达式 • Den 取f(x) 的分母表达式 • 1/f 求f(x)的倒数 • finv 求f(x)的反函数
figure No.3函数运算器的功能 函数f(x)和自由参数a的运算 fta f-a fa. fa. fa. x+a. x*a 函数fx)和g(x)函数间的运算 f+g, f-g, fg, fg, f@g, fg, g-f
6 figure No.3函数运算器的功能 (2) • 函数f(x)和自由参数a的运算 • f+a , f-a , f*a , f/a , f^a , x+a , x*a • 函数f(x)和g(x)函数间的运算 • f+g, f-g , f*g , f/g , f@g , f=g , g=f
具体演示操作: 例如:产生波形 3sin(x)exper)(o)/x 1-2*ab(x)/a sqrt(a*x) 可以参见课上演示
7 具体演示操作: • 例如:产生波形 • 可以参见课上演示 3sin(x) 5exp(x) sin(x)/ x 1 2*abs(x)/ a sqrt(a * x)
Signal processing toolbox函数产生信号波形 用以下程序产生正弦波 t=(00.001:50 0.5 y=sin (2*pi *50*t plot(t(1:50)y(1:50) -0.5 00.010.020.030.040.05 用以下程序产生加如随机噪声的正弦波 t=(0:0.001:50 y=sin(2*pi*50*t s-y+randn(size(t) plot((1:50)(1:50) 0.010.020.030.040.05
8 Signal Processing Toolbox函数产生信号波形 • 用以下程序产生正弦波 • t=(0:0.001:50); • y=sin(2*pi*50*t); • plot(t(1:50),y(1:50)) • 用以下程序产生加如随机噪声的正弦波 • t=(0:0.001:50); • y=sin(2*pi*50*t); • s=y+randn(size(t)); • plot(t(1:50),s(1:50)) 0 0.01 0.02 0.03 0.04 0.05 -1 -0.5 0 0.5 1 0 0.01 0.02 0.03 0.04 0.05 -4 -2 0 2 4
Signal processing toolbox函数产生周期信号波形 周期方波 0.5 t=(0:0.001:2.5) y=square(2*pi*30*t); -o5 plot((1:50)y(1:50) 0.02 0.04 0.06 周期锯齿波 °t=(0:0.001:2.5); y=sawtooth(2*pi*30*t) -0.5 plot(t, y), axis([0 0.2-1 1D 05010152
9 Signal Processing Toolbox函数产生周期信号波形 • 周期方波 • t=(0:0.001:2.5); • y=square(2*pi*30*t); • plot(t(1:50),y(1:50)) • 周期锯齿波 • t=(0:0.001:2.5); • y=sawtooth(2*pi*30*t); • plot(t,y),axis([0 0.2 -1 1]) 0 0.02 0.04 0.06 -1 -0.5 0 0.5 1 0 0.05 0.1 0.15 0.2 -1 -0.5 0 0.5 1
产生Snc函数 Dirichlet函数波形 产生Sinc函数 °x- Flinspace(-5,5); y=sinc(x) plot(x,y) -0.5 产生 Dirichlet函数 X=linspace(0, 4 pi, 300 y1=daric(, 7); °y2= dirac(x,8); 0.5 subplot(121),plot(x, y 1) subplot(122), plot(x, y2) -0.5 051015
10 产生Sinc函数Dirichlet函数波形 • 产生Sinc函数 • x=linspace(-5,5); • y=sinc(x); • plot(x,y) • 产生Dirichlet函数 • x=linspace(0,4*pi,300); • y1=diric(x,7); • y2=diric(x,8); • subplot(121),plot(x,y1) • subplot(122),plot(x,y2) -5 0 5 -0.5 0 0.5 1 0 5 10 15 -0.5 0 0.5 1 0 5 10 15 -1 -0.5 0 0.5 1