DSP

使用matlab产生函数并进行简单的运算(基础)

2019-07-13 11:25发布

实验目的和要求
1. 掌握各种常用的序列,理解数学表达式和波形表示
2. 掌握在计算机中生成及绘制数字信号波形的方法
3. 掌握序列的相加、相乘、移位、反褶等基本运算及计算机实现与作用
4. 掌握线性卷积软件实现的方法
5. 掌握计算机的使用方法和常用系统软件及应用软件的使用
6. 通过编程,上机调试程序,进一步增强使用MATLAB的能力 实验内容和原理
这里写图片描述 主要仪器设备
装有MATLAB的计算机一台
操作方法和实验步骤
1.根据课堂展示过的范例,更改采样频率为100Hz,采样信号重新设定,在MATLAB中输入指令如下即可得到采样图形。
直接在命令行中运行结果如下: >> fs=1000; >> t=0:1/fs:1; >> x=sin(100*pi*t)+2*sin(240*pi*t); >> stem(t(1:200),x(1:200),'filled'); >> axis([0 0.1 -3 3]) 查看并保存图像。 2.要得到方波序列,可以先利用square(T)函数产生方波,在对其进行采样得到对应的方波序列,在MATLAB里输入help square 即可查看函数的使用方法,了解到它的周期和sin一样是2*pi,要使周期为5,则参数应该定为0.4*pi,写出代码如下: >> fs=1; >> t=0:1/fs:10; >> x=square(0.4*pi*t); >> stem(t,x,'filled') 查看并保存图像。
3.由plot函数可以画出连续信号,根据题目要求可以写出如下代码: >> x=2*sin(2*pi/7*t-pi/8); >> plot(t,x); >> title('初始信号'); >> xlabel('t') 查看并保存图像。
(1)根据题中所给取值范围和采样间隔,可以知道t从0开始到10,采样频率为1Hz,则可以写出如下代码: >> t=0:1:10; >> x=2*sin(2*pi/7*t-pi/8); >> stem(t,x,'filled') 查看并保存图像。
2)同理可知,t从0到10,采样频率为10Hz,则代码如下: >> t=0:0.1:10; >> x=2*sin(2*pi/7*t-pi/8); >> stem(t,x,'filled') 查看并保存图像. 实验结果与分析
1.运行代码后可以得到图像如下
1.2
2.运行代码后得到图像如下:
1.3
可见其为周期性的方波序列。
3.根据表达式用plot函数得到图像如下:
1.4
以1Hz采样频率采样得到的序列如下:
这里写图片描述
目测大致也是可以看出轮廓为正弦函数,可见周期为7
这里写图片描述
十分清晰的轮廓,没有任何困难就可以辨认出是正弦图像,由图像可见周期为7
注:
1. 由于实验在MATLAB中进行,几乎不需要成本,所以可以尽可能多的多做尝试,充分了解MATLAB的指令语言以及功能。
2. 使用分号结尾可以暂时不显示代码运行结果,最后采用回车即可得到最终结果,使得代码之间较为紧凑,输入也可以变得更快。