MATLAB对正弦信号进行FFT、加窗、调频、调幅。

2023-11-09

1、构造一个仿真信号x1(t),包含4个频率分量,分别为f1=50, f2=100, f3=150, f4=200。采样时间为10s, 采样频率1000。绘制x(t)的时域图和频谱图。

2、针对题目1中的信号x1(t),改变采样时间为12s, 采样频率为5000,绘制时域图和频谱图,观察题目1和题目2的结果之间是否有不同。

采样频率提高以后,采样的点数变多,时域图所表达的信号信息更加完整,如果采样点数过少,可能会缺失重要信息比如最大值最小值。

题目1的频域信号较为集中,题目2的频域信号较为发散。由图可得采样频率越高,时域内信号分辨率就越高,采集到的信号就越接近原始信号,在频谱上的频带就越宽,更有利于后期频域分析。

3、构造一个仿真信号x2(t),包含4段信号:t=0~2s时频率为f1=50,t=2~4s时频率为f2=100,t=4~6s时频率为f3=150,t=6~8s时频率为f4=200。设置采样频率为1000,绘制时域图和频谱图。观察结果与题目1结果之间是否有不同。

由频谱图可知,当信号的频率随时间变化时,快速傅里叶变换(FFT)虽然可以采集出非平稳信号各个时间段的频率,但各个时间段信号的频谱图幅值大大衰减,泄漏较大,时域信号幅值大对应的频域信号幅值也大,且无法反映出信号频率随时间变化的规律。

4、截取从信号x2(t)中截取t=2~4s的信号记做y1(t),绘制y1(t)的时域图和频谱图;选用不同的窗函数从x2(t)截取t=2~4s的信号,记做y2,y3……,绘制时域图和频谱图。将所有的时域图绘制在一张图上,所有的频谱图绘制在一张图上。

矩形窗:优点是主瓣比较集中;缺点是旁瓣较高,并有负旁瓣,导致变换中带进来高频干扰和泄露,可能出现负谱现象;三角窗:与矩形窗相比主瓣宽度是矩形窗的两倍,但旁瓣小,且无负旁瓣,带来的泄露少;汉宁窗:与矩形窗相比旁瓣小得多,因而泄露也少得多,但是汉宁窗主瓣较宽。

由加窗函数频谱图可得矩形窗频谱能量最集中,其次是汉宁窗,最后是三角窗。

5、构造仿真信号z1和z2,其中z1的频率为100,z2的频率为10,构造调幅信号x3,绘制时域图和频谱图。

幅值调制(调幅AM)是调制信号与载波相乘,使载波的幅值随测试信号的变化而变化。

由时域图可以看出载波信号的幅值随着调制信号变化而变化。

6、将5中的z1的频率分别改变为50,150,200,绘制频谱图。将5和6中的频谱图绘制在一张图中,观察频谱有何变化规律

将载波信号z1的频率分别改成50Hz,150Hz,200Hz,由调幅波的频谱图可得调幅波的频率也随之移动到载波频率附近,间隔为调制信号所对应的频率。

7、将5中的z2的频率分别改变为20,30,40,绘制频谱图。将5和7中的频谱图绘制在一张图中,观察频谱有何变化规律

将调制信号z2的频率分别改成20Hz,30Hz,40Hz,由调幅波的频谱图可得调幅波的频率间隔随之改变成调制信号的频率。

8、了解什么是频率调制,仿照5构造调频信号,仿照6和7改变调频信号的原信号和载波的频率,绘制频谱图,观察变化规律。

频率调制(调频FM)是用调制信号控制载波的频率,使已调波的频率随调制信号幅值变化而变化。

构造调制信号m(t)=5*cos(2*pi*5*t)

构造载波a(t)= cos(2*pi*100*t)

将调制信号的频率改为10Hz,由已调信号频谱图发现已调信号的频谱变得稀疏。

将载波信号的频率改为200Hz,由已调信号频谱图发现已调信号的频谱在200Hz附近分散。

 

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

MATLAB对正弦信号进行FFT、加窗、调频、调幅。 的相关文章

  • Matlab的导入函数的范围是什么?

    我正在尝试将一些用 Matlab 编写的代码转换为独立的 编译的 Matlab 应用程序 然而 在出现一些奇怪的错误之后 我意识到代码大量使用了从路径中添加和删除的操作 以避免多次使用多个具有相同名称 但结果 计算不同 的函数这一事实 环顾
  • 在matlab中不使用for循环检查数组中的成员资格

    我想简化这段代码 使其无需 for 循环即可工作 for i 1 N for j 1 N if ismember j A PID i i TFP i j PID i i end end end 其中A是一个包含一些标签的矩阵 我之前存储的T
  • 将 Matlab 数组移植到 C/C++

    我正在将 matlab 程序移植到 C C 我有几个问题 但最重要的问题之一是 Matlab 将任何维度的数组都视为相同 假设我们有一个这样的函数 function result f A B C result A 2 B C A B and
  • 通过 cuFFT 进行逆 FFT 缩放

    每当我使用 cuFFT 绘制程序获得的值并将结果与 Matlab 的结果进行比较时 我都会得到相同形状的图形 并且最大值和最小值位于相同的点 然而 cuFFT 得到的值比 Matlab 得到的值大得多 Matlab代码是 fs 1000 s
  • MATLAB 变量传递和惰性赋值

    我知道在 Matlab 中 当将新变量分配给现有变量时 会进行 惰性 评估 例如 array1 ones 1 1e8 array2 array1 的价值array1不会被复制到array2除非元素array2被修改 由此我推测Matlab中
  • 优先连接,Matlab 中的复杂网络

    大家好 我现在正在 MATLAB 中研究优先附件模型 在理解以下内容时遇到一些困难 假设我一开始有 4 个节点 连接如下 time 0 1 lt gt 2 3 lt gt 4 在下一个时间步骤中 我添加一个节点和 4 个连接 然后添加另一个
  • 如何从 matlab 调用 Qtproject?

    我在 matlab 中有一个函数可以写入一个 file txt 我在 qt 项目中使用它 So 当我使用 unix 获取要运行的 qt 编译可执行文件时 我有一个 Matlab 文件 但出现错误 代码 unix home matt Desk
  • MATLAB parfor 和 C++ 类 mex 包装器(需要复制构造函数?)

    我正在尝试使用概述的方法将 C 类包装在 matlab mex 包装器中here http www mathworks com matlabcentral newsreader view thread 278243 基本上 我有一个初始化
  • 在矩阵中找到叉的最快方法

    定义 A i j 1 是十字的中点 如果元素A i 1 j 1A i 1 j 1A i j 1 1A i j 1 1 这些元素和中点一起形成矩阵 A 中的十字 其中 A 至少是一个 3 3 矩阵 并且i j 0 假设上图是 8 8 矩阵 A
  • MATLAB:图像角坐标和引用元胞数组

    我在比较不同元胞数组中的元素时遇到一些问题 这个问题的背景是我正在使用bwboundariesMATLAB 中的函数可追踪图像的轮廓 该图像是结构横截面 我试图找出整个部分是否具有连续性 即 只有一个轮廓由bwboundaries命令 完成
  • 计算给出数组中最小标准差的子集

    让我们有一个大小的向量N 例如 x rand N 1 我想计算长度子集的最小标准差K在向量中 When N and K很小 很容易找到最好的子集 因为我可以使用nchoosek N K 枚举所有可能的子集 但是当值N and K比我们说的要
  • 二维随机微分方程 (SDE)

    我第一次研究随机微分方程 我正在寻求模拟和求解二维随机微分方程 模型如下 dp F t p dt G t p dW t where p 是一个 2 1 向量 p theta t phi t F是列向量 F sin theta Psi cos
  • 计算向量的导数

    我有以下函数 维维亚尼曲线 Phi t cos t 2 cos t sin t sin t 只需检查它是否有效 s linspace 0 T 1000 plot3 cos s 2 cos s sin s sin s 如何推导函数Phi 可能
  • MATLAB 问题中的 Parfor

    为什么我不能使用parfor在这段代码中 parfor i 1 r for j 1 N r xr j N r i 1 x i r j 1 end end 这是错误 错误 parfor 中的变量 xr 无法分类 请参阅 MATLAB 中的并行
  • 在 numpy/scipy 中查找 matlab 函数

    是否有一个等价的函数find A gt 9 1 来自 numpy scipy 的 matlab 我知道有nonzeronumpy 中的函数 但我需要的是第一个索引 以便我可以在另一个提取的列中使用第一个索引 Ex A 1 2 3 9 6 4
  • 使用正常数据直方图与直接公式进行熵估计(matlab)

    假设我们已经绘制了n 10000标准正态分布的样本 现在我想使用直方图计算其熵来计算概率 1 计算概率 例如使用matlab p x hist samples binnumbers area x 2 x 1 sum p p p area b
  • matlab中简单正弦波的傅里叶变换

    我尝试显示简单正弦波的频谱 因为我们知道具有固定频率的单个正弦波必须在其频谱中出现峰值我编写了这段代码 但我无法得到这个峰值我的代码中有什么问题 clc nsteps 200 number of signal elements in tim
  • 在matlab中融合2个以上的图像

    在 MATLAB 中 如何融合两个以上的图像 例如 我想要做什么imfuse但对于超过 2 个图像 使用两张图像 这是我的代码 A imread file1 jpg B imread file2 jpg C imfuse A B blend
  • Matlab的uicontrol在Octave中的实现?

    我正在尝试在 Octave 中运行我们实验室中使用的图形程序的 m Matlab 代码 Octave 告诉我代码中使用的函数 uicontrol 没有定义 经过一番搜索 我发现 JHandles 包有一个 uicontrol GUI 功能的
  • Matlab 错误:()-索引必须出现在索引表达式的最后

    我有这段代码 想要在制表符分隔的 txt 文件中写入一个数组 fid fopen oo txt wt for x 1 length s fprintf fid s t n s x 1 end fclose fid 但我收到此错误 Error

随机推荐

  • 理解JPEG文件头的格式

    1 JPEG 1 why jpeg jpeg作为图片传输格式使用最为普遍 压缩比最高 每天我们都会产出和传输大量的jpeg格式数据 手机拍出来的格式默认是jpeg 朋友圈各种分享 磁盘上积累了大量的jpeg 因此本人一直对jpeg头部数据非
  • CLIP:创建图像分类器

    介绍 假设需要对人们是否戴眼镜进行分类 但是没有数据或资源训练自定义模型 在本教程中 你将学习如何使用预训练的CLIP模型创建自定义分类器 无需任何训练 这种方法称为零快照图像分类 它使得能够对在原始CLIP模型训练期间未明确观察到的的类进
  • 并发基础知识(二)[进程间通信·信号]

    1 信号 信号是进程间通信的一种方式 这种方式没有数据传输 只是在内核中传递一个信号 整数 信号的表示是一个整数 不同的信号值 代表不同的含义 当然用户可以自定义信号 那么自定义的信号的含义和值由程序员来定和解释 Term Terminat
  • DVWA-15.Open HTTP Redirect

    OWASP将其定义为 当 Web 应用程序接受不受信任的输入时 可能会导致 Web 应用程序将请求重定向到不受信任输入中包含的 URL 则可能会出现未经验证的重定向和转发 通过修改恶意站点的不受信任的 URL 输入 攻击者可以成功发起网络钓
  • OpenGL ES基本流程总结

    作为一个学习总结 绘制了OpenGL ES中完成一次渲染所需要的一些基本步骤 离屏渲染 此处是以离屏渲染为例 离屏渲染是不直接上屏的 而是渲染到缓冲区中 那么这块缓冲区就需要我们手动创建 也就是上图所示的Framebuffer 其中需要三个
  • 车载以太网入门

    车载以太网入门 以太网的首要优势之一在于支持多种网络介质 因此可以在汽车领域进行使用 同时由于物理介质与协议无关 因此可以在汽车领域可以做相应的调整与拓展 形成一整套车载以太网协议 该协议将会在未来不断发展并长期使用 车载以太网总体架构 正
  • spring事务传播机制使用及原理

    事务 事务是逻辑上的一组操作 要么都执行 要么都不执行 事务的四大特性 原子性 构成事务的所有操作 要么都执行完成 要么全部不执行 不可能出现部分成功部分失 败的情况 一致性 在事务执行前后 数据库的一致性约束没有被破坏 隔离性 数据库中的
  • Games104 引擎工具链笔记

    一 GUI体系 1 Immediate Mode 比如UnityUGUI 优点 直接快速 缺点 逻辑比重大 2 Retained Mode 把要绘制的指令存到一个buffer中 统一绘制 优点 把游戏逻辑和UI渲染分开 扩展性强 例子 Un
  • StackOverflow 这么大,它的架构是怎么样的?

    伯乐在线补充 Nick Craver 是 StackOverflow 的软件工程师 网站可靠性工程师 这是 解密 Stack Overflow 架构 系列的第一篇 本系列会有非常多的内容 欢迎阅读并保持关注 为了便于理解本文涉及到的东西到底
  • QT5:VS创建的QT项目头文件标红和控件对象无法调用

    最近使用VS QT编写代码 除了界面和调试比较舒服以外 感觉的很不习惯 小问题不断 问题1 解决方法 1 系统环境变量中添加bin路径 2 属性配置中添加包含目录和库目录 问题2 上面这个问题 会导致ui调用不了添加的控件对象 搞到怀疑人生
  • SourceTree使用教程(七)--合并某次提交

    概述 在Git的实际使用场景中 未必都是很规矩的拉一个分支 开发一个功能 等功能测试完成后 合并到主分支 有很多的场景都是很多人在同一个开发分支上开发 然后按照上线的实际需要 依次去上传自己的功能模块 这个功能模块的提交记录很可能是交叉提交
  • vasp-自旋轨道耦合(SOC)计算步骤

    在VASP中执行自旋轨道耦合 SOC 计算 具体的计算步骤如下 结构优化获取CONTCAR文件 自洽计算 collinear normal VASP calculations 获取CHGCAR文件 能带结构计算 在此步骤中 将KPOINTS
  • 第二十六节:class和焦点的操作管理

    1 关于class的操作 IE9以下的getElementsByClassName 方法兼容问题 p Hello World p p class a 增加样式 World p ul ul function getClass classA i
  • 想要成为网络hacker黑客?先来学习这十方面的知识

    黑客 一词来源于 hacker 在英语中它实际是个中性词 本身并没有褒贬之分 指的是精通编程 计算机 网络的人 另外专门有一个词 cracker 指那些利用计算机技术侵入他人系统从事非法活动的人 但在国内这两个词都被翻译为 黑客 导致在大部
  • Unity制作Live2D(一)模型导入

    目录 序言 前期准备 导入模型 序言 在许多游戏当中 Live2D展现出来了优秀的游戏体验 通过Live2D效果 让平面的游戏人物看起来更加生动 玩家也会感受到更多乐趣 前期准备 前往Live2DCubism官网下载Unity需要的SDKC
  • cenos6.4 mongodb shell模式 常用指令

    如果还没有安装mongodb DB服务端 用户可以参考该篇文章尝试安装mongodb http blog csdn net zhouzhiwengang article details 51441638 我们的实验环境为 操作系统 cent
  • Flutter中Provider的一般用法(一)

    在flutter中Provider是比较常用的Widget Provider通常用来管理value的生命周期 通过Create和Dispose 它们是成对出现的 可以在Create进行value的初始化操作 在dispose进行value的
  • Pytorch之经典神经网络Generative Model(二) —— VAE (MNIST)

    变分编码器 Variational AutoEncoder 是自动编码器的升级版本 其结构跟自动编码器是类似的 也由编码器和解码器构成 回忆一下 自动编码器有个问题 就是并不能任意生成图片 因为我们没有办法自己去构造隐藏向量 需要通过一张图
  • [Linux]模拟实现shell:命令行解释器

    分步思路解析 1 捕捉用户键盘输入 使用例如scanf gets等函数获取用户输入信息即可 2 解析输入的信息 得到命令名称和运行参数 解析获取到的上输入信息 将空格 回车 制表符等等全部忽略 只关心输入的字符串等 假如输入 ls a l
  • MATLAB对正弦信号进行FFT、加窗、调频、调幅。

    1 构造一个仿真信号x1 t 包含4个频率分量 分别为f1 50 f2 100 f3 150 f4 200 采样时间为10s 采样频率1000 绘制x t 的时域图和频谱图 2 针对题目1中的信号x1 t 改变采样时间为12s 采样频率为5