信号处理仿真(MATLAB)实验系统仿真(MATLAB)实验2

合集下载

(完整版)数字信号处理实验二

(完整版)数字信号处理实验二
xlabel('时间序号n'); ylabel('振幅');
y = filter(num,den,x,ic);
yt = a*y1 + b*y2;
d = y - yt;
subplot(3,1,1)
stem(n,y);
ylabel('振幅');
title('加权输入: a \cdot x_{1}[n] + b \cdot x_{2}[n]的输出');
subplot(3,1,2)
%扫频信号通过2.1系统:
clf;
n = 0:100;
s1 = cos(2*pi*0.05*n);
s2 = cos(2*pi*0.47*n);
a = pi/2/100;
b = 0;
arg = a*n.*n + b*n;
x = cos(arg);
M = input('滤波器所需的长度=');
num = ones(1,M);
三、实验器材及软件
1.微型计算机1台
2. MATLAB 7.0软件
四、实验原理
1.三点平滑滤波器是一个线性时不变的有限冲激响应系统,将输出延时一个抽样周期,可得到三点平滑滤波器的因果表达式,生成的滤波器表示为
归纳上式可得
此式表示了一个因果M点平滑FIR滤波器。
2.对线性离散时间系统,若y1[n]和y2[n]分别是输入序列x1[n]和x2[n]的响应,则输入
plot(n, y);
axis([0, 100, -2, 2]);
xlabel('时间序号 n'); ylabel('振幅');

MATLAB实训报告_2

MATLAB实训报告_2

M AT L A B语言编程实训报告题目MATLAB在信号与系统中的应用年级2008 专业电子信息工程目录第一章绪论 (2)1.1 本设计课题目的及意义, 重点解决的问题 (2)1.1.1 MATLAB在信号与系统中应用的目的及意义 (2)1.1.2 重点解决的问题 (2)1.2 课题的社会和技术背景 (2)1.3 实现的具体功能 (3)第二章课题的基本概念和原理 (4)2.1 MATLAB的概念 (4)2.2 信号与系统的概念 (4)2.3 信号与系统分析的基本内容与方法 (5)2.4 离散系统的基本概念 (6)2.5连续系统模型及表示 (6)第三章系统设计和实现 (7)3.1采用的软件及开发平台 (7)3.1.1系统设计软件 (7)3.1.2开发平台和编程环境 (7)3.2系统的详细设计 (8)3.2.1建模 (8)3.2.2解决方法 (9)3.3系统设计的亮点 (9)第四章结束语 (10)参考文献 (10)第一章绪论1.1 本设计课题目的及意义, 重点解决的问题1.1.1 MATLAB在信号与系统中应用的目的及意义MATLAB在信号与系统中应用能够让学生熟悉MATLAB软件平台、工具箱、高效的数值计算及符号计算功能。

熟悉MATLAB软件的信号处理编程方法和结果的可视化。

了解数字信号处理的计算机仿真方法。

进一步加深对信号与系统的基本原理、方法及应用的理解。

MATLAB软件具有强大的数值分析和计算结果可视化的功能.运用MATLAB软件,通过一个应用实例,将信号与系统课程的理论与实践教学有机地结合,有效地解决了教学中的难点问题,说明了MATLAB软件在信号与系统课程的实践教学中具有重要的实际意义1.1.2 重点解决的问题matlab的基本使用方法, matlab的预定义函数, 如何用matlab绘图, 如何在matlab中编程, 基于matlab的矩阵运算、符号运算、数值分析等。

1.2 课题的社会和技术背景长期以来, “信号与系统”课程一直采用黑板式的单一的教学方式, 学生仅依靠做习题来巩固和理解教学内容, 对课程中大量的应用性较强的内容不能实际动手设计、调试、分析, 严重影响和制约了教学效果。

实验2 用MATLAB进行信号频谱分析 2

实验2   用MATLAB进行信号频谱分析 2

实验报告通信工程 1101学号:********* 姓名:李*实验2 用MATLAB 进行信号频谱分析一、实验目的㈠ 初步掌握MATLAB 产生常用离散时间信号的编程方法。

㈡ 学习编写简单的FFT 算法程序,对离散信号进行幅频谱分析。

㈢ 观察离散时间信号频谱的特点。

二、实验原理㈠ 常用的离散时间信号在 MATLAB 语言主要是研究离散信号的。

常用的离散信号有: 1.单位取样序列⎩⎨⎧≠==0001)(n n n δ2.单位阶跃序列⎩⎨⎧<≥=001)(n n n u3.实指数序列R a n a n x n∈∀=;)(4.复指数序列n e n x n j ∀=+)(0)(ωσ5.正(余)弦序列)cos()(0θω+=n n x n ∀ 6.周期序列n N n x n x ∀+=)()(㈡ 离散信号的产生离散信号的图形显示使用stem 指令。

在 MATLAB 中的信号处理工具箱中,主要提供的信号是离散信号。

由于MATLAB 对下标的约定为从1开始递增,例如x=[5,4,3,2,1,0],表示x(1)=5,x(2)=4,X(3)=3…因此要表示一个下标不由1开始的数组x(n),一般应采用两个矢量,如 n=[-3,-2,-1,0,l ,2,3,4,5];x=[1,-l ,3,2,0,4,5,2,1];这表示了一个含9个采样点的矢量:X(n)={x(-3),x(-2),x(-1),x(0),x(1),x(2),x(3),x(4),x(5)}。

1.单位取样序列⎩⎨⎧≠==δ0001)(n n n 这一函数实现的方法有二:方法一:可利用MATLAB 的zeros 函数。

x=zeros(1,N); %建立一个一行N 列的全零数组x(1)=1; %对X (1)赋1 方法二:可借助于关系操作符实现n=1:N;x=[n==1]; %n 等于1时逻辑关系式结果为真,x=1;n 不等于1时为假,x=0如要产生 ⎪⎩⎪⎨⎧≤<<=≤≤=-δ20210100)(10)(n n n n n n n n n n n n则可采用MATLAB 实现:n=n1:n2;x=[(n-n0)==0];%n=n0时逻辑关系式结果为真,x=1;n ≠n0时为假,x=0 2.单位阶跃序列⎩⎨⎧<≥=001)(n n n u这一函数可利用MATLAB 的ones 函数实现: x=ones(1,N);还可借助于关系操作符“>=”来实现。

仿真软件使用实验报告

仿真软件使用实验报告

实验名称:仿真软件应用实验实验日期:2023年X月X日实验地点:XX大学计算机实验室实验目的:1. 熟悉仿真软件的基本操作和功能。

2. 通过仿真实验,加深对理论知识的应用理解。

3. 培养分析问题、解决问题的能力。

一、实验环境1. 操作系统:Windows 102. 仿真软件:MATLAB R2022a3. 硬件环境:*****************************,16GB RAM二、实验内容本次实验以MATLAB仿真软件为平台,对以下内容进行仿真实验:1. 信号与系统2. 控制系统3. 通信系统三、实验步骤1. 信号与系统(1)建立仿真模型根据信号与系统的理论知识,设计一个简单的信号处理系统。

该系统包括输入信号、滤波器、输出信号等部分。

(2)编写仿真程序使用MATLAB编写程序,实现信号处理系统的仿真。

具体步骤如下:① 定义输入信号③ 信号处理④ 绘制输出信号(3)运行仿真程序运行仿真程序,观察输出信号的变化,分析滤波器的性能。

2. 控制系统(1)建立仿真模型根据控制系统的理论知识,设计一个简单的控制对象。

该对象包括控制器、被控对象、反馈环节等部分。

(2)编写仿真程序使用MATLAB编写程序,实现控制系统的仿真。

具体步骤如下:① 定义被控对象② 设计控制器③ 控制过程④ 绘制控制曲线(3)运行仿真程序运行仿真程序,观察控制曲线的变化,分析控制器的性能。

3. 通信系统(1)建立仿真模型根据通信系统的理论知识,设计一个简单的通信系统。

该系统包括信源、信道、信宿等部分。

(2)编写仿真程序使用MATLAB编写程序,实现通信系统的仿真。

具体步骤如下:① 定义信源③ 信号传输④ 信号接收⑤ 信号解调(3)运行仿真程序运行仿真程序,观察信号传输、接收和解调的过程,分析通信系统的性能。

四、实验结果与分析1. 信号与系统仿真结果显示,滤波器能够有效地对输入信号进行处理,输出信号满足设计要求。

滤波器的性能指标如下:- 通带波动:0.5dB- 阻带衰减:40dB- 截止频率:1kHz2. 控制系统仿真结果显示,控制器能够稳定地控制被控对象,控制曲线满足设计要求。

基于MATLAB的信号与系统仿真实验

基于MATLAB的信号与系统仿真实验
真 实验 , 明 了将 MA L B应 用于教 学 实践 中的重要作 用和意 义 说 TA 关键 词 :MA L B; 号与 系统 ; 真 TA 信 仿
中图分类 号 : 6 2 G 4
文献标 识码 : 文章 编号 : O 1 0 1 0 90 — 0 2 0 A 粤 一 1 1 ( 0 )4 0 5 — 4 2
时 域 和频域 的各种 计算 、 解 和 变换 , 相加 、 分 如 相 乘、 移位 、 折 、 立 叶变 换 、 氏变换 、 换 和 反 傅 拉 z变 频 谱分 析等 多种计 算 功能 。 下 面 以抽样 信号 的实 现 、 周期 方 波信 号 傅立 叶 级数 分解 、两个余 弦周期 信 号 的相 加 与相 乘 、 R C带 通 滤 波 器 的 频 谱 特 性 等 仿 真 实 例 说 明 L
第 1 6卷 第 4期
20 0 9年 l O月
广 东 白 云


学 报
V0 . 6 No4 11 .
0c. 0 t20 9
J u n l f u n d n ay n Un v ri o r a a g o gB iu ie st oG y
基于 MA L B的信号与系统仿真实验 TA

( ) 友好 的用 户界 面及 接近数 学表 达式 的 3
自然 化语 言 , 易于学 习和掌握 , 编程效 率极 高 ;
( 4) 开放性 好 ,能与 多种 平 台工具 软件兼
容;
( 功能 丰富 的应用 工具 箱 , 5) 具有 广泛解 决 各学科专 业领域 内复杂 问题的能 力 。㈩
《 信号与 系统 》 电气 信 息类专 业 的重要 专 是
业 基础课 , 理论 性 较 强, 其 概念 抽 象而 难 以理 解 , 公 式推 导 复 杂 、 算 繁 琐 , 统分 析 时 的时 域 图 计 系

数字信号处理(第2版)教学课件第8章 MATLAB仿真实验

数字信号处理(第2版)教学课件第8章 MATLAB仿真实验
系统的时域特性是指系统的线性移不变性质、因果性 和稳定性。重点分析实验系统的稳定性,包括观察系统的 暂态响应和稳定响应。
系统的稳定性是指对任意有界的输入信号,系统都能 得到有界的系统响应,或者系统的单位脉冲响应满足绝对 可和的条件。系统的稳定性由其差分方程的系数决定。
实际中检查系统是否稳定,不可能检查系统对所有有界 的输入信号、输出是否都是有界输出,或者检查系统的单位 脉冲响应满足绝对可和的条件。可行的方法是在系统的输入 端加入单位阶跃序列,如果系统的输出趋近一个常数(包括 零),就可以断定系统是稳定的。系统的稳态输出是指当n→ ∞时系统的输出。如果系统稳定,信号加入系统后,系统输出 的开始一段称为暂态效应,随着n的加大,幅度趋于稳定,达 到稳态输出。
(2)频域采样理论的验证。 给定长度为26的三角波序列x(n) 编写程序,分别对频谱函数 X (e j ) FT[x(n)] 在区间 [0, 2π] 上等间隔采样32点和16点,得到 X32 (k) 和 X16 (k) ,再分别对 X32 (k)
和 ①X16分(k)别进画行出32X点(ej和 )、16X点32 (IkF)F和T,X1得6 (k到) 的x幅32 (度n)谱和。x16 (n) 。要求:
4. 参考程序
(1)内容1参考程序,实验结果。 (2)内容2参考程序,实验结果。 (3)内容3参考程序,实验结果。
5.实验结果
图8-1 调用filter解差分方程仿真结果
5.实验结果
图8-2 稳定性分析方面的仿真结果
5.实验结果
图8-3 稳定性分析仿真结果
实验二 时域采样与频域采样
1. 实验目的
y(n) 0.5y(n 1) 0.25y(n 2) x(n) 2x(n 1) x(n 3)

信号与系统MATLAB实验

信号与系统MATLAB实验

2016-2017学年第一学期信号与系统实验报告班级:姓名: 学号: 成绩:指导教师:实验一 常见信号的MATLAB 表示及运算一.实验目的1.熟悉常见信号的意义、特性及波形2.学会使用MATLAB 表示信号的方法并绘制信号波形 3. 掌握使用MATLAB 进行信号基本运算的指令 4. 熟悉用MATLAB 实现卷积积分的方法二.实验原理信号一般是随时间而变化的某些物理量。

按照自变量的取值是否连续,信号分为连续时间信号和离散时间信号,一般用()f t 和()f k 来表示。

若对信号进行时域分析,就需要绘制其波形,如果信号比较复杂,则手工绘制波形就变得很困难,且难以精确。

MATLAB 强大的图形处理功能及符号运算功能,为实现信号的可视化及其时域分析提供了强有力的工具。

根据MATLAB 的数值计算功能和符号运算功能,在MATLAB 中,信号有两种表示方法,一种是用向量来表示,另一种则是用符号运算的方法。

在采用适当的MATLAB 语句表示出信号后,就可以利用MATLAB 中的绘图命令绘制出直观的信号波形了。

下面分别介绍连续时间信号和离散时间信号的MATLAB 表示及其波形绘制方法。

1.连续时间信号所谓连续时间信号,是指其自变量的取值是连续的,并且除了若干不连续的点外,对于一切自变量的取值,信号都有确定的值与之对应。

从严格意义上讲,MATLAB 并不能处理连续信号。

在MATLAB 中,是用连续信号在等时间间隔点上的样值来近似表示的,当取样时间间隔足够小时,这些离散的样值就能较好地近似出连续信号。

在MATLAB 中连续信号可用向量或符号运算功能来表示。

⑴ 向量表示法对于连续时间信号()f t ,可以用两个行向量f 和t 来表示,其中向量t 是用形如12::t t p t 的命令定义的时间范围向量,其中,1t 为信号起始时间,2t 为终止时间,p 为时间间隔。

向量f 为连续信号()f t 在向量t 所定义的时间点上的样值。

北邮数字信号处理MATLAB实验报告

北邮数字信号处理MATLAB实验报告

数字信号处理软件实验——MatLab仿真实验报告学院:电子工程学院班级:2013211202姓名:学号:实验一:数字信号的 FFT 分析1、实验内容及要求(1) 离散信号的频谱分析:设信号 此信号的0.3pi 和 0.302pi 两根谱线相距很近,谱线 0.45pi 的幅度很小,请选择合适的序列长度 N 和窗函数,用 DFT 分析其频谱,要求得到清楚的三根谱线。

(2) DTMF 信号频谱分析用计算机声卡采用一段通信系统中电话双音多频(DTMF )拨号数字 0~9的数据,采用快速傅立叶变换(FFT )分析这10个号码DTMF 拨号时的频谱。

2、实验目的通过本次实验,应该掌握:(a) 用傅立叶变换进行信号分析时基本参数的选择。

(b) 经过离散时间傅立叶变换(DTFT )和有限长度离散傅立叶变换(DFT ) 后信号频谱上的区别,前者 DTFT 时间域是离散信号,频率域还是连续的,而 DFT 在两个域中都是离散的。

(c) 离散傅立叶变换的基本原理、特性,以及经典的快速算法(基2时间抽选法),体会快速算法的效率。

(d) 获得一个高密度频谱和高分辨率频谱的概念和方法,建立频率分辨率和时间分辨率的概念,为将来进一步进行时频分析(例如小波)的学习和研究打下基础。

(e) 建立 DFT 从整体上可看成是由窄带相邻滤波器组成的滤波器组的概念,此概念的一个典型应用是数字音频压缩中的分析滤波器,例如 DVD AC3 和MPEG Audio 。

3.设计思路及实验步骤1)离散信号的频谱分析:该信号中要求能够清楚的观察到三根谱线。

由于频率0.3pi 和0.302pi 间隔非常小,要清楚的显示,必须采取足够大小的N ,使得分辨率足够好,至少到0.001单位级,而频率0.45pi 的幅度很小,要清楚的观察到它的谱线,必须采取幅度够大的窗函数,使得它的频谱幅度变大一些。

同时还要注意频谱泄漏的问题,三个正弦函数的周期(2pi/w )分别为20,40,1000,所以为了避免产生频谱泄漏(k=w/w0为整数),采样点数N 必须为1000的整数倍。

Matlab实验报告_2

Matlab实验报告_2

实验一 Matlab基础知识一、实验目的:1.熟悉启动和退出Matlab的方法。

2.熟悉Matlab命令窗口的组成。

3.掌握建立矩阵的方法。

4.掌握Matlab各种表达式的书写规则以及常用函数的使用。

二、实验内容:1.求[100,999]之间能被21整除的数的个数。

(rem)2.建立一个字符串向量,删除其中的大写字母。

(find)3.输入矩阵,并找出其中大于或等于5的元素。

(find)4.不采用循环的形式求出和式6312ii=∑的数值解。

(sum)三、实验步骤:●求[100,199]之间能被21整除的数的个数。

(rem)1.开始→程序→Matlab2.输入命令:»m=100:999;»p=rem(m,21);»q=sum(p==0)ans=43●建立一个字符串向量,删除其中的大写字母。

(find)1.输入命令:»k=input('’,’s’);Eie48458DHUEI4778»f=find(k>=’A’&k<=’Z’);f=9 10 11 12 13»k(f)=[ ]K=eie484584778●输入矩阵,并找出其中大于或等于5的元素。

(find)1.输入命令:»h=[4 8 10;3 6 9; 5 7 3];»[i,j]=find(h>=5)i=3 j=11 22 23 21 32 3●不采用循环的形式求出和式的数值解。

(sum)1.输入命令:»w=1:63;»q=sum(2.^w)q=1.8447e+019实验二 Matlab 基本程序一、 实验目的:1. 熟悉Matlab 的环境与工作空间。

2. 熟悉M 文件与M 函数的编写与应用。

3. 熟悉Matlab 的控制语句。

4. 掌握if,switch,for 等语句的使用。

二、 实验内容:1. 根据y=1+1/3+1/5+……+1/(2n-1),编程求:y<5时最大n 值以及对应的y 值。

matlab实验报告

matlab实验报告

Matlab实验报告
院系:物理与电子学院
专业:电子信息科学与技术
姓名:
学号:
2013年12月18日
实验题目:Matlab中系统建模以及Simulink仿真模型。

实验环境:计算机Matlab软件。

实验目的:通过分析问题完成系统建模,然后通过matlab软件的Simulink完成对模型的处理,并绘制图像,得到
结果。

Simulink简介:Simulink是MATLAB最重要的组件之一,它提供一个动态系统建模、仿真和综合分析的集成环境。

在该环境中,无需大量书写程序,而只需要通过简单直观的鼠标操作,就可构造出复杂的系统。

Simulink具有适应面广、结构和流程清晰及仿真精细、贴近实际、效率高、灵活等优点,并基于以上优点Simulink已被广泛应用于控制理论和数字信号处理的复杂仿真和设计。

同时有大量的第三方软件和硬件可应用于或被要求应用于Simulink。

实验内容:1:利用simulink仿真来实现摄氏温度到华氏温度的转换,公式为f=9/5 *t+32。

2:设系统微分方程为:y`=x+y y(0)=0,试建立系统模型并仿真;
参数设置:设置开始时间Start Time=0;初始值
Initial Condition=0.
实验总结:通过这次Simulink 实验与设计,我们组对Simulink 以及Matlab 都有了更深的了解。

虽然实验内容比较基础,但从中我们能看出Simulink 和Matlab 在数学,物理和工程建模上的巨大作用。

并且,这次实验提高了我们组对Matlab 的学习兴趣和动手能力,这对我们今后的学习和工作都有着巨大的帮助。

MATLAB仿真技术与应用实验指导书

MATLAB仿真技术与应用实验指导书

MATLAB仿真技术与应用实验指导书MATLAB是基于矩阵的一种计算工具,它已经成为世界各国高校和研究人员中最为流行的软件之一。

它提供了丰富可靠的矩阵运算、数据处理、图形绘制、图像处理等便利工具,并且由于MATLAB的广泛应用,很多理论的创始人在MATLAB上开发了相关的工具箱,现在MATLAB附带的各方面工具箱有:控制系统、通讯、符号运算、小波计算、偏微分方程、数据统计、图像、金融、LMI 控制、QFT控制、数字信号处理、模糊控制、模型预估控制、频域辨识、高阶谱分析、统计学、非线性控制系统、图像处理、神经元网络、m 分析、信号处理、插值、优化、鲁棒控制、控制系统设计、系统辨识等等,并且MATLAB提供了图形化的时域仿真程序----Simulink,在高校中还开发有振动理论、化学统计学、语音处理等等方面的工具箱。

本实验课的基本目标是学会使用MATLAB基本功能,为在科研中应用打下基础。

主要应掌握在MATLAB中进行矩阵运算、多项式处理、控制语句、数字信号处理、基本绘图;掌握MATLAB的基本编程技巧,可以比较熟练的编写MATLAB程序;掌握SimuLink仿真的基本方法和元件构成,可以使用SimuLink 建立一般的时域仿真程序;掌握MATLAB的优化工具箱、插值工具箱、符号运算几个通用工具箱的使用和基本函数。

参考文献:1.薛定宇,陈阳泉.基于MATLAB/Simulink的系统仿真技术与应用.北京:清华大学出版社,20022.苏晓生.掌握MATLAB6.0及其工程应用.北京:科学出版社,20023.崔怡.MATLAB5.3实例详解.北京:航空工业出版社,20004.孙亮. MATLAB语言与控制系统仿真. 北京:北京工业大学出版社,2001 5.黄文梅,杨勇,熊桂林,成晓明. 系统仿真分析与设计——MATLAB语言工程应用. 长沙:国防科技大学出版社,20016.王沫然. Simulink4建模及动态仿真. 北京:电子工业出版社,20027.董景新,赵长德. 控制工程基础. 北京:清华大学出版社,19928.陈亚勇等编著. MATLAB信号处理详解. 北京:人民邮电出版社,20011 MATLAB语言基础实验1.1 MATLAB语言平台及基本运算一.实验目的1.学习了解MATLAB语言环境;练习MATLAB命令的基本操作;练习m 文件的基本操作;2.学习MATLAB的基本矩阵运算;学习MATLAB的点运算;学习复杂运算;3.学习MATLAB的基本符号运算;学习MATLAB的矩阵符号运算。

《信号与系统》MATLAB仿真实验讲义

《信号与系统》MATLAB仿真实验讲义

《信号与系统》MATLAB仿真实验讲义(第二版)肖尚辉编写宜宾学院电信系电子信息教研室《信号与系统》课程2004年3月 宜宾使用对象:电子专业02级3/4班(本科)实验一 产生信号波形的仿真实验一、实验目的:熟悉MATLAB软件的使用,并学会信号的表示和以及用MATLAB来产生信号并实现信号的可视化。

二、实验时数:3学时+3学时(即两次实验内容)三、实验内容:信号按照自变量的取值是否连续可分为连续时间信号和离散时间信号。

对信号进行时域分析,首先需要将信号随时间变化的规律用二维曲线表示出来。

对于简单信号可以通过手工绘制其波形,但对于复杂的信号,手工绘制信号波形显得十分困难,且难以绘制精确的曲线。

在MATLAB中通常用三种方法来产生并表示信号,即(1)用MATLAB软件的funtool符合计算方法(图示化函数计算器)来产生并表示信号;(2)用MATLAB软件的信号处理工具箱(Signal Processing Toolbox)来产生并表示信号;(3)用MATLAB软件的仿真工具箱Simulink中的信号源模块。

(一) 用MATLAB软件的funtool符合计算方法(图示化函数计算器)来产生并表示信号在MATLAB环境下输入指令funtool,则回产生三个视窗。

即figure No.1:可轮流激活,显示figure No.3的计算结果。

figure No.2:可轮流激活,显示figure No.3的计算结果。

figure No.3:函数运算器,其功能有:f,g可输入函数表达式;x是自变量,在缺省时在[-2pi,2pi]的范围内;自由参数是a;在分别输入完毕后,按下面四排的任一运算操作键,则可在figure No.1或figure No.2产生相应的波形。

学生实验内容:产生以下信号波形3sin(x)、5exp(-x)、sin(x)/x、1-2abs(x)/a、sqrt(a*x)(二) 用MATLAB软件的信号处理工具箱(Signal Processing Toolbox)来产生并表示信号一种是用向量来表示信号,另一种则是用符合运算的方法来表示信号。

系统仿真信号实验报告

系统仿真信号实验报告

系统仿真信号实验报告系统仿真信号实验报告1. 引言系统仿真是一种通过计算机模拟系统行为的方法,可以对系统进行预测和优化。

在工程领域中,系统仿真有着广泛的应用,可以用于电子电路设计、通信网络规划、交通流模拟等方面。

本实验旨在通过系统仿真,研究信号的传输和处理过程,探索信号的特性和优化方法。

2. 实验目的本实验的主要目的是通过系统仿真,研究信号的传输和处理过程。

具体包括以下几个方面:- 了解信号的基本概念和特性;- 研究不同信号的传输特性;- 探索信号处理方法和优化策略。

3. 实验方法本实验采用MATLAB软件进行系统仿真。

在仿真过程中,我们将使用不同的信号类型,如正弦信号、方波信号和脉冲信号,并对其进行传输和处理。

4. 实验过程4.1 生成信号首先,我们使用MATLAB生成不同类型的信号。

通过调整信号的频率、幅度和相位等参数,我们可以得到不同特性的信号。

4.2 信号传输在信号传输过程中,我们将模拟信号在传输介质中的衰减和失真情况。

通过改变传输介质的特性和信号的传输距离,我们可以观察到信号的变化。

4.3 信号处理在信号处理过程中,我们将对传输后的信号进行滤波、降噪和增强等操作。

通过选择不同的信号处理算法和参数,我们可以改善信号质量并提取出所需的信息。

5. 实验结果与分析在实验过程中,我们得到了不同类型信号的传输和处理结果。

通过分析实验数据,我们可以得出以下结论:- 正弦信号在传输过程中受到较小的衰减和失真,适合用于远距离传输;- 方波信号在传输过程中会出现较大的失真,需要采取补偿措施;- 脉冲信号在传输过程中容易受到噪声干扰,需要进行滤波处理。

6. 结论与展望通过本实验,我们深入了解了信号的传输和处理过程,并探索了信号的特性和优化方法。

系统仿真为我们提供了一种有效的研究手段,可以在实际操作之前进行模拟和预测。

未来,我们可以进一步研究不同类型信号的传输特性和处理方法,以应对不同场景下的需求。

7. 参考文献[1] Smith, S. W. (1997). The Scientist and Engineer's Guide to Digital Signal Processing. California Technical Publishing.[2] Proakis, J., & Manolakis, D. (2006). Digital Signal Processing: Principles, Algorithms, and Applications. Pearson Education.8. 致谢感谢实验指导老师的悉心指导和支持,感谢实验室的同学们的合作,使本次实验取得了圆满的结果。

数字信号处理实验02

数字信号处理实验02

实验二2019年11月16日一、实验目的(1)通过实验进一步理解卷积定理,了解卷积的过程。

(2)掌握应用线性卷积求解离散时间系统响应的基本方法。

(3)加深对离散LSI系统时域特性的认识。

(4)掌握MATLAB求解离散时间系统相应的基本方法。

(5)了解MATLAB中求解系统响应的子函数及其应用方法。

(6)加深对离散系统变换域分析——z变换的理解。

(7)掌握进行z变换和z反变换的基本方法,了解部分分式法在z反变换中的应用。

(8)掌握使用MATLAB语言进行z变换和z反变换的常用子函数。

(9)了解离散系统的基本描述模型。

(10)掌握各种模型相互间的关系及转换方法。

(11)熟悉MATLAB中进行离散系统模型间转换的常用子函数。

二、实验用到的MATLAB函数(1)conv 进行两个序列间的卷积运算。

(2)sum 求各元素之和。

(3)hold 控制当前图形是否刷新的双向切换开关。

(4)pause 暂停执行文件。

(5)dlsim 求解离散系统的响应。

(6)ztrans 返回无限长序列函数x[n]的z变换。

(7)iztrans 求函数X(z)的z反变换x[n]。

(8)syms 定义多个符号变量。

(9)residuez 有理多项式的部分分式展开。

(10)tf2zp 将系统传递函数(tf)模型转换为系统函数的零-极点增益(zpk)模型。

(11)zp2tf 将系统函数的零-极点增益(zpk)模型转换为系统传递函数(tf)模型。

(12)tf2sos 将系统传递函数(tf)模型转换为系统函数的二次分式(sos)模型。

(13)sos2tf 将系统函数的二次分式(sos)模型转换为系统传递函数(tf)模型。

(14)sos2zp 将系统函数的二次分式(sos)模型转换为系统函数的零-极点增益(zpk)模型。

(15)zp2sos 将系统函数的零-极点增益(zpk)模型转换为系统函数的二次分式(sos)模型。

(16)ss2tf 将系统状态空间(ss)模型转换为系统传递函数(tf)模型。

信号与系统MATLAB实验全

信号与系统MATLAB实验全

实验篇 信号与系统实验指导实验一、MATLAB 编程基础及典型实例一、实验目的(1) 熟悉MATLAB 软件平台的使用; (2) 熟悉MATLAB 编程方法及常用语句; (3) 掌握MATLAB 的可视化绘图技术;(4) 结合《信号与系统》的特点,编程实现常用信号及其运算。

二、实验原理连续信号是指自变量的取值范围是连续的,且对于一切自变量的取值,除了有若干个不连续点以外,信号都有确定的值与之对应。

严格来说,MATLAB 并不能处理连续信号,而是用等时间间隔点的样值来近似表示连续信号。

当取样时间间隔足够小时,这些离散的样值就能较好地近似连续信号。

矩阵是MATLAB 进行数据处理的基本单元,矩阵运算是MATLAB 最重要的运算。

通常意义上的数量(也称为标量)在MATLAB 系统中是作为1×1的矩阵来处理的,而向量实际上是仅有一行或者一列的矩阵。

通常用向量表示信号的时间取值范围,如n = -5:5,但信号x(n)、向量n 本身的下标都是从1开始的,因此必须用一个与向量x 等长的定位时间变量n ,以及向量x ,才能完整地表示序列x(n)。

这一点详情可参考预备篇示例7的程序说明。

三、实验内容与步骤(1) 新建一个文件夹,以自己的汉语名字命名,以后就用该文件夹专门存放自己所编制的M 文件和产生的图形;将该文件夹设置成当前工作目录。

(2) 绘制信号t)32sin(e x(t)t 2-=的曲线,t 的范围在0 ~ 30s ,取样时间间隔为0.1s.(3) 在n = [-10:10] 范围产生离散序列:⎩⎨⎧≤≤-=其余n0,3n 32n,x(n) ,并绘图。

四、实验报告要求整理并给出“实验内容与步骤”(2)、(3)的程序代码与产生的图形;并回答下面的问题。

(1) 在调用某一函数文件时,该文件中除了输入、输出变量外的其它变量在调用函数结束后是否还存在?这些变量是全局还是局部变量?(2) 设n = -10:0.2:20,你可以通过哪些方法查看向量n 的维数?经过关系运算y = (n >= 3)以后,y 的维数是多少?y 又等于什么?(3) 通过MATLAB 的帮助系统,学习fliplr 函数的功能和使用方法。

MATLAB应用课题二GUI拨号实验

MATLAB应用课题二GUI拨号实验

《MATLAB基础与应用》课题二:基于MATLAB的双音多频(DTMF)信号的产生、接收以及可视化拨号系统的实现内容一:研究DTMF信号的产生以及基于Goertzel算法的接收原理,并使用MATLAB 编程实现DTMF拨号系统的信号发生及接收。

双音多频系统,简称为DTMF(Double Tone Multi Frequency),是用按键进行电话拨号的一种制式,由美国AT﹠T贝尔实验室开发。

作为实现电话号码快速可靠传输的一种技术,它具有很强的抗干扰能力和较高的传输速度,可广泛应用于电话通信系统中。

但绝大部分是用作电话的音频拨号。

另外,它也可以在数据通信系统中广泛地用来实现各种数据流和语音等信息的远程传输。

每个DTMF信号是由2个单频率信号叠加而成的,其中一个频率处于低频段(小于1KHz),另一个频率处于高频段(1KHz~2KHz)。

高低频段各有四个频率,四个低频表示四行,四个高频表示四列,高、低频组合可以提供16个字符。

第四列的最高频率暂时不用,因此可以提供12个字符,包括0到9中一个特定的十进制数字,或者字符*和#。

而其它四个字符保留以备扩展使用。

字符分配如表1所示。

表1 双音多频通信系统编码表(第四列备用)DTMF是一个典型的小型数字信号处理系统。

它既有模拟信号的生成和传输部分,需要使用D/A转换;又有在接收端对它进行A/D转换并进行数字信号处理即检测的部分。

而且为了提高系统的检测速度并降低成本,还开发了一种特殊的DFT算法,称为Goertzel算法。

这种算法既可以用硬件(专用芯片)也可以用软件实现。

所以DTMF系统的设计问题是理论与工程相结合的一个典型范例。

1、DTMF信号的产生:每个字符对应的DTMF信号由两个正弦波的数字样本叠加而成。

正弦波的采样率为8kHz,硬件必需每125ms输出一个样本。

将这个叠加信号送到D/A转换器变换成模拟信号,再通过电话线传送到交换机。

2、DTMF信号的接收:在接收端,将接收到的模拟音频信号进行A/D转换,恢复为数字信号,然后检测其频谱以确定所发送的字符。

《信号与系统》matlab仿真实验

《信号与系统》matlab仿真实验

《信号与系统》matlab仿真实验综合实验一《信号与系统》的MATLAB仿真实验一.实验目的1.熟悉MA TLAB软件平台、工具箱、高效的数值计算及符号计算功能。

2.熟悉MATLAB软件的信号处理编程方法和结果的可视化3.了解数字信号处理的计算机仿真方法4.进一步加深对信号与系统的基本原理、方法及应用的理解。

二.实验软件MATLAB 6.5 界面三.实验内容1.基本信号的表示及可视化2.连续信号的时域运算与时域变换3.线性系统的时域分析及Matlab实现4.连续时间信号的频域分析及Matlab实现四.实验原理方法及相关MATLAB函数1.基本信号的表示及可视化1.1 连续时间信号(1)表示出连续信号f(t)=Sa(t)=sin(t)/tMatlab命令如下:t=-10:1.5:10;%向量t时间范围t=t1:p:t2,p为时间间隔f=sin(t)./t;plot(t,f); %显示该信号的时域波形title(‘f(t)=Sa(t)’);xlabel(‘t’)axis([-10,10,-0.4,1.1])注:改变p可使信号波形更平滑,同学们可以试一试。

(2)单位阶跃信号定义阶跃函数function f=Heaviside(t)f=(t>0)调用阶跃函数t=-1:0.01:3;f=Heaviside(t)plot(t,f);axis([-1,3,-0.2,1.2]);(2)单位冲击信号 (t)定义冲击函数functionchongji(t1,t2,t0)dt=0.01;t=t1:dt:t2;n=length(t);x=zeros(1,n);x(1,(-t0-t1)/dt+1)=1/dt;stairs(t,x);axis([t1,t2,0,1.2/dt])title('单位冲击信号δ(t)')调用的是chongji(-1,5,0);可以试着给别的t1,t2,t0.1.2离散时间信号(1)单位阶跃序列ε(k)定义阶跃序列function jyxulie(k1,k2,k0)k=k1:-k0-1;kk=-k0:k2;n=length(k);nn=length(kk);u=zeros(1,n); %k0前信号赋值为零uu=ones(1,nn);%k0后信号赋值为一stem(kk,uu,’filled’)hold onstem(k,u,’filled’)holdofftitle(‘单位阶跃序列’)axis([k1 k20 1.5])调用阶跃序列函数jyxulie(-2,6,0)(3)单位序列δ(k)定义单位序列函数functiondwxulie(k1,k2,k0)k=k1:k2;n=length(k);f=zeros(1,n);f(1,-k0-k1+1)=1;stem(k,f,’filled’)axis([k1,k2,0,1.5])title(‘单位序列δ(k)’)调用单位序列函数dwxulie(-3,5,0)2.连续信号的时域运算与时域变换运算、变换的符号运算方法:相加、相乘、移位、反折、尺度变换、倒相已知信号)]2()2([)21()(--+⨯+=ttttfεε,用matlab求f(t+2),f(t-2),f(-t),f(2t),-f(t),并绘出时域波形。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

信号处理仿真(MATLAB)实验指导书青岛大学自动化工程学院2006年4月MATLAB实验一一、实验目的:1. Be familiar with MATLAB Environment2. Be familiar with array and matrix3. Be familiar with MATLAB operations and simple plot function二、实验内容:1. Be familiar with Matlab 6.5Startup Matlab 6.5, browse the major tools of the Matlab desktop The Command WindowsThe Command History WindowsLaunch PadThe Edit/Debug WindowFigure WindowsWorkspace Browser and Array EditerHelp BrowserCurrent Directory Browser2. Give the answer of the following questions for the array 1)What is the size of array1?2)What is the value of array1(4,1)?3)What is the size and value of array1(:,1:2)?4)What is the size and value of array1([1 3], end)?3. Give the answer of the following commad1) a=1:2:5; 2) b=[a’ a’ a’]; 3) c=b(1:2:3,1:2:3);4) d=a+b(2,:) 5) w=[zeros(1,3) ones(3,1)’ 3:5’]4. Give the answer of the sub-arrays1) array1(3,:); 2) array1(:,3); 3) array1(1:2:3,[3 3 4]) 4) array1([1 1],:)5. Give the answer of the following operations1) a+b 2) a*d 3) a.*d 4) a*c5) a.*c 6)a\b 7) a.\b 8)a.^b6.Solve the following system of simultaneous equations for x 7.Edit & Run the m-file% test step response functionwn=6; kosi=[0.1:0.1:1.0 2];figure(1); hold onfor kos=kosinum=wn^2; den=[1,2*kos*wn,wn.^2]; step(num,den)endhold off;8.Edit & Run the m-file% test plot functionx=0:pi/20:3*pi; y1=sin(x); y2=2*cos(2*x); plot(x,y1,'rv:',x,y2,'bo--');title('Plot the Line of y=sin(2x) and its derivative'); xlabel('X axis'); ylabel('Y axis');legend('f(x)','d/dx f(x)'); grid on;9. Edit & Run the m-file% test subplot and loglog functionx=0:0.1:10; y=x.^2-10.*x+26;subplot(2,2,1); plot(x,y); grid on;subplot(2,2,2); semilogx(x,y); grid on;subplot(2,2,3); semilogy(x,y); grid on;subplot(2,2,4); loglog(x,y); grid on;10.Edit & Run the m-file% test max and plot functionvolts=120; rs=50; rl=1:0.1:100;amps=volts./(rs+rl); pl=(amps.^2).*rl; [maxvol,index]=max(pl);plot(rl,pl,rl(index),pl(index),'rh'); grid on;MATLAB实验二一、实验目的:1. Learn to design branch and loop statements program2. Be familiar with relational and logical operators3. Practice 2D plotting二、实验内容:PART I: (选择练习,不需提交实验报告)1. Hold command exercisen x=-pi:pi/20:pi;n y1=sin(x); y2=cos(x); plot(x,y1, 'b-'); hold on;n plot(x,y2, 'k--'); hold off;n legend ('sinx', 'cosx')2. Figure command exercisefigure(1);subplot(2,1,1);x=-pi:pi/20:pi; y=sin(x); plot(x,y); grid on;title('Subplot 1 Title');subplot(2,1,2);x=-pi:pi/20:pi; y=cos(x); plot(x,y); grid on;title('Subplot 2 Title');3. Polar Plots exerciseg=0.5;theta=0:pi/20:2*pi;gain=2*g*(1+cos(theta));polar(theta,gain,'r-');title('\fontsize{20} \bfGain versus angle \theta');4. Compare the 3 approaches follows (Loops and Vectorization)%A. Perform calculation by For Loop with pre-initialize arraytic;n square=zeros(1,10000) %pre-initialize arrayn for ii=1:10000n square(ii)=ii^2;n square_root(ii)=ii^(1/2);n cube_root(ii)=ii^(1/3);n endn toc; t1=toc%B. Perform calculation by For Loop without pre-initialize arrayn tic;n for ii=1:10000n square(ii)=ii^2;n square_root(ii)=ii^(1/2);n cube_root(ii)=ii^(1/3);n endn toc; t2=toc%C. Perform calculation with vectorsn tic;ii=1:10000n square(ii)=ii.^2;square_root(ii)=ii.^(1/2);cube_root(ii)=ii.^(1/3);n endn toc; n t3=tocPART II: (需提交实验报告)1. Assume that a,b,c, and d are defined, and evaluate the following expression.a=20; b=-2; c=0; d=1;(1) a>b; (2) b>d; (3) a>b&c>d; (4) a==b; (5) a&b>c; 6) ~~b;a=2; b=[1 –2;-0 10]; c=[0 1;2 0]; d=[-2 1 2;0 1 0];(7) ~(a>b) (8) a>c&b>c (9) c<=da=2; b=3; c=10; d=0;(10) a*b^2>a*c (11) d|b>a (12) (d|b)>aa=20; b=-2; c=0; d=’Test’;(13) isinf(a/b) (14) isinf(a/c) (15) a>b&ischar(d) (16) isempty(c)2. Write a Matlab program to solve the function, where x is a number <1. Usean if structure to verify that the value passed to the program is legal. If the value of x is legal, caculate y(x). If not ,write a suitable error message and quit.3. Write out m. file and plot the figures with gridsAssume that the complex function f(t) is defined by the equationf(t)=(0.5-0.25i)t-1.0Plot the amplitude and phase of function for4. Write the Matlab statements required to calculate y(t) from the equationfor value of t between –9 and 9 in steps of 0.5. Use loops and branches to perform this calculation.5. Write an m.file to evalue the equation for all values of x between 0.1 and 3,in steps of 0.1. Do this twice, once with a for loop and once with vectors.Plot the resulting function using a 4.0 thick dashed blue line.MATLAB实验三一、实验目的:1. Learn to write MATLAB functions2. Be familiar with complex data and character data3. Practice 2D plotting二、实验内容:1. Write three Matlab functions to calculate the hyperbolic sine, cosine, andtangent functions:then plot the shapes of hyperbolic sine, cosine, and tangent functions on one figure, .2. Write a program use the function and plot the line,and search for the minimum and maximum in 200 steps over the range of , mark the minimum and maximum on the line figure.3. Write a function to calculate the distance between two points and , that the points should begiven by ‘input’ function.4. Write a function complex_to that accept a complex number var, andreturns two output arguments containing the magnitude mag and angle theta of the complex number. The output angle should be in degrees.Write another function polar_to_complex that accepts two input arguments containing the magnitude mag and angle theta of the complex number in degrees, and returns the complex number var.5. Write a program that accepts a series of strings from a user with the inputfunction, sorts the strings into ascending order, and prints them out.MATLAB实验四一、实验目的:1. Practice 2D plotting and 3D plotting2. Learn to use fplot function3. Be familiar with cell arrays and structure arrays二、实验内容:1. Give the 3D plot figure of use plot3 function, , and grid on, linewidth is3.0.2. Plot the function , , step 0.1. Create the following plot types: (a) stem plot;(b) stair plot; (c) bar plot; (d) compass plot.3. Plot the function over the range using function fplot, and grid on.4. Create a cell arrays:5. Create a structure arrays and to calculate the mean billing of threepatients:MATLAB实验五一、实验目的:Be familiar with Input/Output functions二、实验内容:1. Write a m-file. The m-file creates an array containing random values,sorts the array into ascending order, opens a user-specified file for writing only, then writes the array to disk in 32-bit floating-point format , and close the file. It then opens the file and read the data back into array.2. Edit a file as data4_4.txt that contains square matrix, then import thearray use uiimport function, and calculate the inverse of the square matrix .3. Write a program to read a set of integers from an input data file, andlocate the largest and smallest values within the data file. Print out the largest and smallest values, together with the lines on which they were found in one figure.。

相关文档
最新文档