数字信号处理实验二(模拟信号采样与重构及频谱分析FFT)

  • 模拟信号采样与重构及频谱分析FFT(2学时)
    1. 要求:
      1. 对一模拟信号进行采样;
      2. 对该采样信号进行重构;
      3. 分析它们的频谱特征。
    2. 目的:
      1. 熟悉MATLAB命令和编辑、运行、调试环境;
      2. 掌握采样定理及对信号的频谱分析。

实验报告:

一、实验内容

i.对一模拟信号进行采样;

ii.对该采样信号进行重构;

iii.分析它们的频谱特征。

二、实验目的

i.熟悉MATLAB命令和编辑、运行、调试环境;

ii.掌握采样定理及对信号的频谱分析。

三、涉及实验的相关情况介绍(包含使用软件或实验设备等情况)

Windows系统 Matlab 2022b

四、实验记录

1.原理基础

i. 对模拟信号进行采样:采样是将模拟信号转换为数字信号的过程。采样定理(香农采样定理)指出,为了完全重构一个模拟信号,采样频率必须至少是信号中最高频率成分的两倍。

ii. 对采样信号进行重构:如果采样频率满足采样定理,可以通过内插(如零阶保持、线性内插或更高阶的内插方法)和滤波来重构模拟信号。

iii. 分析频谱特征:频谱分析是研究信号在频域上的特性,例如通过傅里叶变换或快速傅里叶变换(FFT)来获取信号的频率分量。

2 实验流程

i. 生成一个模拟信号,比如一个正弦波信号。

ii. 设定采样频率,并据此对模拟信号进行采样。

iii. 使用MATLAB的函数对采样信号进行重构。

iv. 分别对原始模拟信号和重构信号进行频谱分析。

3源程序代码

% generate_signal_and_poles_zeros 
%离散信号及离散系统的MATLAB编程实现
%结构:1.模拟信号的生成 2.零极点求解 3.零极点图绘制
%编辑人:贾雯爽
%目的:掌握模拟信号的采样、重构和频谱分析
%最后更新时间:2024/06/05 
%模拟信号采样、重构、频谱分析%%1.模拟信号的生成
% 参数设置  
N = 100;%长度
A = 0.1;%幅度
omega = pi/4;%角频率
phi = pi/3;%初始相位%输出复指数序列的代码
n = 0:N-1;%时间索引
x = A *exp(1i*(omega*n+phi));%生成复指数序列
disp('复指数序列的前几个值:');
disp(x(1:5));% 显示前5个值作为示例 %绘制复指数序列的实部和虚部
figure;
subplot(2,1,1);
plot(n,real(x));
ylabel('实部');
grid on;subplot(2,1,2);
plot(n,imag(x))
ylabel('虚部');
grid on;%%2.系统零极点求解b = [0.7, 0.3]; % 分子系数(从高到低)  
a = [1, -0.8, -0.5]; % 分母系数(从高到低)   % 求解零点  
zeros = roots(b);  
disp('零点:');  
disp(zeros);  % 求解极点  
poles = roots(a);  
disp('极点:');  
disp(poles);% 3.绘制零极点图
figure;  
zplane(b, a); % 绘制零极点图  
title('系统的零极点图');  
grid on;

4实验结果

5实验结果分析

从频谱图中,我们可以观察到信号的主要频率成分以及它们的幅度。如果采样频率足够高,采样信号的频谱将能够准确地反映原始信号的频谱。然而,如果采样频率低于香农采样定理所要求的最小值,则采样信号的频谱将出现混叠现象,高频成分将折叠到低频区域,导致频谱失真。这强调了正确选择采样频率的重要性。

五、实验总结

通过本次实验,我深入理解了模拟信号采样、重构以及频谱分析的基本概念和原理。首先,我们生成了一个简单的正弦波模拟信号,并设定了一个采样频率对其进行采样。接着,我们使用MATLAB的FFT函数对原始模拟信号和采样信号进行了频谱分析。

从实验结果来看,当采样频率满足香农采样定理(即至少是信号中最高频率成分的两倍)时,采样信号的频谱能够较好地反映原始信号的频谱特性,两者在主要频率成分和幅度上非常相似。这说明在采样过程中,我们没有丢失太多关于信号的信息,能够较为准确地重构原始信号。

然而,如果采样频率低于香农采样定理所要求的最小值,采样信号的频谱将会出现混叠现象,高频成分将折叠到低频区域,导致频谱失真。这在实际应用中是不可取的,因为它会严重影响我们对信号特性的理解和后续的信号处理过程。

通过本次实验,我们更加熟悉了MATLAB的命令和编辑、运行、调试环境,掌握了采样定理的基本内容和频谱分析的方法。这对于我们今后在信号处理领域的学习和研究具有重要的指导意义。同时,我们也深刻认识到正确选择采样频率的重要性,这不仅是保证信号采样质量的关键,也是实现信号准确重构和分析的基础。


原创文章内容,学术不精恐有错漏之处,恳请各位批评指正。如有Matlab代码源文件或其他沟通需要,可通过邮箱(2642610289@qq.com)联系我,特情注意,学业繁忙难以及时回复,敬请理解。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/866730.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

将 build.gradle 配置从 Groovy 迁移到 Kotlin

目录 时间轴 常用术语 脚本文件命名 转换语法 为方法调用添加圆括号 为分配调用添加 转换字符串 重命名文件扩展名 将 def 替换为 val 或 var 为布尔值属性添加 is 前缀 转换列表和映射 配置 build 类型 从 buildscript 迁移到插件块 查找插件 ID 执行重构 转…

git 提交后发现有问题重改的正确方法

撤回上一次提交: git reset --soft HEAD^ 修改文件(如果需要)。 暂存修改后的文件: git add . 重新提交: git commit -m "新的提交信息" 强制推送到远程仓库:注意--force git push --force

简过网:考教师编制报培训班有用吗?

​ 很多想要备考教师编的朋友都会有一个疑问,那就是备考教师编报培训班有用吗? 其实,主要还是要看你是笔试和面试。 小编觉得如果是笔试的话,其实都是教育理论的东西,线下班其实没有太大的必要,第一是面授…

DFS之搜索顺序——AcWing 1116. 马走日

DFS之搜索顺序 定义 DFS之搜索顺序是指在执行深度优先搜索时,遍历图或树中节点的策略。具体而言,DFS会沿着一条路径深入到底,当无法继续深入时回溯,然后选择另一条未探索的路径继续深入。搜索顺序直接影响到搜索效率和剪枝的可能…

发现CPU占用过高,该如何排查解决?

1.使用top命令 查看cpu占用最多的进程 2.使用 top -H -p pid 发现有两个线程占用比较大 3.将线程id转换为16进制 使用命令 printf 0x%x\n pid 4.使用 jstack pid | grep 线程id(16进制) -A 20 (显示20行) 根据代码显示进行错误排查

软设之UML状态图

UML状态图 状态图描述一个动态机,它由状态,转移,事件和活动组成。状态图给出了对象的动态视图。它对于接口,类或协作的行为建模尤为重要,而且它强调事件导致的对象行为,这非常有助于对反应式系统建模 状态…

电脑为什么会提示丢失msvcp140.dll?怎么修复msvcp140.dll文件会靠谱点

电脑为什么会提示丢失msvcp140.dll?其实只要你的msvcp140.dll文件一损坏,然而你的电脑程序需要运用到这个msvcp140.dll文件的时候,就回提示你丢失了msvcp140.dll文件!因为没有这个文件,你的很多程序都用不了的。今天我…

无人机对地面运动目标定位---获取目标的移动方向和速度

目录 一、引子 我们利用单目无人机通过等时间间隔拍照的形式对地面某移动目标进行定位,当前,我们已经获得了每张相片上该目标的三维坐标,并且知道该无人机在飞行过程中拍照的时间间隔,那么我们就可以通过一定的计算,得…

溶酶体靶向嵌合体制备方法和技术

网盘 https://pan.baidu.com/s/1dhCCryatp71j7yXTDdrrTw?pwdynr4 具有聚集诱导发光性质的比率型溶酶体pH探针及应用.pdf 内体-溶酶体转运靶向嵌合体降解剂及其制备方法与应用.pdf 可降解PDGFR-β的蛋白降解靶向嵌合体及其制备方法和应用.pdf 溶酶体膜包覆纳米颗粒的制备方法.…

JDK-SPI-服务提供者接口

归档 GitHub: JDK-SPI-服务提供者接口 SPI 源码说明 java.util.ServiceLoader /*** 服务加载器&#xff1a;给定接口&#xff0c;查找实现类。实现可迭代接口 */ public final class ServiceLoader<S> implements Iterable<S> {/*** 返回 ServiceLoader 实例 *…

Apng文件判断

背景&#xff1a;在图片压缩中&#xff0c;根据文件头判断png和jpg文件进行了压缩&#xff0c;但是对apng文件&#xff0c;文件头的前14个字节都一样&#xff08;89504E470D0A1A0A0000000D4948&#xff09;&#xff0c;导致对apng图片进行压缩&#xff0c;图片白了 解决方法&am…

springboot升级到2.7.17后,quartz集群模式配置修改

项目升级&#xff0c;sprringboot版本由2.1.3.RELEASE升级到2.7.17&#xff0c;quartz集群模式下报了一些错&#xff0c;下面是修改方案。 报错1&#xff1a;Unable to detect database type 我使用的是达梦数据库&#xff0c;在没有升级前&#xff0c;是可以正常运行的&#…

剪画小程序:自媒体工具推荐:视频文案提取!

各位小伙伴&#xff0c;你们好啊&#xff01; 上周五观看《歌手 2024》第八期时&#xff0c;我再次被何炅老师幽默风趣的主持风格所折服。他的每一句话都仿佛带着魔力&#xff0c;让现场气氛热烈非凡&#xff0c;实在令人羡慕不已&#xff01; 何炅老师的口才之所以如此出色&a…

如何在 Ubuntu上搭建 LAMP

远程登录 Ubuntu系统环境 ssh (User)(IP) # 比如&#xff1a;ssh lennlouis192.168.207.128 为安全起见&#xff0c;建议你使用 root 登录 VPS 后创建一个具有 sudo 权限的帐号。 安装和配置 Apache 2 Apache Http Server 是一个开源的&#xff0c;非常流行&#xff0c;使用…

【Unity小知识】UnityEngine.UI程序集丢失的问题

问题表现 先来说一下问题的表现&#xff0c;今天在开发的时候工程突然出现了报错&#xff0c;编辑器提示UnityEngine.UI缺少程序集引用。 问题分析与解决&#xff08;一&#xff09; 既然是程序集缺失&#xff0c;我们首先查看一下工程项目是否引用了程序集。在项目引用中查找一…

SpringBoot | 两种厂商开发经常用的Bean注入

目录 简介 第一种 构造函数注入 构造函数注入的优点 第二种 字段注入 字段注入的优点 两者对比 总结 简介 在Spring框架中&#xff0c;Autowired 注解用于自动装配Bean 它有两种常见的使用方式&#xff1a;字段注入和构造函数注入。 (以最简单的服务层来说明) 第一种 …

this指向问题以及如何改变指向

当在Vue.js中讨论"this"的指向问题时&#xff0c;有几个重要的方面需要考虑&#xff0c;特别是在组件化开发和异步操作中&#xff1a; 1. 普通函数 vs 箭头函数 在JavaScript中&#xff0c;普通函数和箭头函数对于"this"的处理方式有显著区别&#xff1a;…

从“钓”到“管”:EasyCVR一体化视频解决方案助力水域安全管理

一、背景 随着城市化进程的加快&#xff0c;越来越多的市民热衷于钓鱼活动。钓鱼活动在带来乐趣的同时&#xff0c;也伴随着一定的安全隐患。尤其是在一些危险水域&#xff0c;也经常出现垂钓者的身影&#xff0c;非法垂钓&#xff0c;这给城市管理带来了不小的阻力。传统的人…

Java传引用问题

本文将介绍 Java 中的引用传递&#xff0c;包括其定义、实现方式、通过引用修改原来指向的内容和通过引用修改当前引用的指向的区别 目录 1、引用传递的概念 2、引用传递的实现方式 3、传引用会发生的两种情况&#xff1a; 通过引用修改当前引用的指向 通过引用修改原来指…

华为OD机试2024年最新题库 JAVA C卷+D卷

目录 专栏导读华为OD机试算法题太多了&#xff0c;知识点繁杂&#xff0c;如何刷题更有效率呢&#xff1f; 一、逻辑分析二、数据结构1、线性表① 数组② 双指针 2、map与list3、队列4、链表5、栈6、滑动窗口7、二叉树8、并查集9、矩阵 三、算法1、基础算法① 贪心思维② 二分查…