自动控制理论---离散傅里叶变换(DFT)进行信号谱分析

1实验设备

PC计算机1台,MATLAB软件1套。

2、实验目的:

  1. 学习使用离散傅里叶变换(DFT)进行信号谱分析的方法。
  2. 选择合适的变换区间长度N,对给定信号进行谱分析,并绘制幅频特性和相频曲线。

3、实验原理说明:

  1. 离散傅里叶变换(DFT)是一种将离散信号从时域转换到频域的方法,可用于分析信号的频谱。
  2. 幅频特性表示信号在频率域上的幅度分布,相频曲线表示信号在频率域上的相位分布。

4、实验步骤:

  1. 对给定的信号X1 (n) = 2cos(0.2πn)  X2(n)= sin(0.45πn)sin(0.55πn)  X3 (n)=2-|n|R21(n+10)分别选择合适的变换区间长度N。
  2. 使用MATLAB编程实现DFT,计算并绘制每个信号的幅频特性和相频曲线。
  3. 在MATLAB界面下调试程序,确保程序运行正确,并查看绘制的谱分析图。

注意:在实验中,可以使用MATLAB的`fft`函数进行DFT计算,并使用`abs`和`angle`函数获取幅度和相位信息。绘制图形可以使用`plot`函数。通过观察图形,分析信号在频域上的特性。

题目:27).选择合适的变换区间长度N,用DFT对下列信号进行谱分析,画出幅频特性和相频曲线。

X1 (n) = 2cos(0.2πn)

X2(n)= sin(0.45πn)sin(0.55πn)

X3 (n)=2-|n|R21(n+10)

% 信号 X1(n) = 2cos(0.2πn)
n1 = 0:99;
X1 = 2 * cos(0.2 * pi * n1);
N1 = length(X1);% 计算DFT
X1_fft = fft(X1, N1);% 计算频率轴
f1 = (0:N1-1) / N1;% 绘制幅频特性图
figure;
subplot(2, 1, 1);
plot(f1, abs(X1_fft));
title('X1(n) 幅频特性');
xlabel('频率 (f)');
ylabel('|X1(f)|');% 绘制相频曲线
subplot(2, 1, 2);
plot(f1, angle(X1_fft));
title('X1(n) 相频曲线');
xlabel('频率 (f)');
ylabel('相位 (rad)');% 信号 X2(n) = sin(0.45πn)sin(0.55πn)
n2 = 0:199;
X2 = sin(0.45 * pi * n2) .* sin(0.55 * pi * n2);
N2 = length(X2);% 计算DFT
X2_fft = fft(X2, N2);% 计算频率轴
f2 = (0:N2-1) / N2;% 绘制幅频特性图
figure;
subplot(2, 1, 1);
plot(f2, abs(X2_fft));
title('X2(n) 幅频特性');
xlabel('频率 (f)');
ylabel('|X2(f)|');% 绘制相频曲线
subplot(2, 1, 2);
plot(f2, angle(X2_fft));
title('X2(n) 相频曲线');
xlabel('频率 (f)');
ylabel('相位 (rad)');% 信号 X3(n) = 2^(-|n|) R21(n+10)
n3 = -10:89;
X3 = 2.^(-abs(n3)) .* (n3 >= -10);
N3 = length(X3);% 计算DFT
X3_fft = fft(X3, N3);% 计算频率轴
f3 = (0:N3-1) / N3;% 绘制幅频特性图
figure;
subplot(2, 1, 1);
plot(f3, abs(X3_fft));
title('X3(n) 幅频特性');
xlabel('频率 (f)');
ylabel('|X3(f)|');% 绘制相频曲线
subplot(2, 1, 2);
plot(f3, angle(X3_fft));
title('X3(n) 相频曲线');
xlabel('频率 (f)');
ylabel('相位 (rad)');

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

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

相关文章

DHCP部署与安全

DHCP作用 DHCP(Dynamic Host Configure Protocol ),作用是自动分配IP地址 DHCP相关概念 地址池/作用域:(这里面放有IP、子网掩码、网关、DNS、租期) DHCP协议端口是UDP 67/68 DHCP优点 减少工作量、避…

微服务之远程调用

常见的远程调用方式 RPC:Remote Produce Call远程过程调用,类似的还有 。自定义数据格式,基于原生TCP通信,速度快,效率高。早期的webservice,现在热门的dubbo (12不再维护、17年维护权交给apac…

Python学习打卡:day06

day6 笔记来源于:黑马程序员python教程,8天python从入门到精通,学python看这套就够了 目录 day648、函数综合案例49、数据容器入门50、列表的定义语法51、列表的下标索引1、列表的下标(索引)2、列表的下标&#xff08…

【python-AI篇】人工智能技能树思维导图

大致总结一下得出如下思维导图,如不完善日后迭代更新 1. python基础三方库 1.1 科学计算库 ---- numpy库 1.2 科学计算库 ---- Scipy库 1.3 数据分析处理库 ---- pandas库 1.4 可视化库 ---- matplotlib库 1.5 可视化库 ---- seaborn库 1.6 机器学习和数据挖掘库 …

Java—装饰器模式

介绍 装饰器模式 装饰器模式(Decorator Pattern)是一种结构型设计模式,它允许你动态地将行为添加到现有的对象中,而无需修改其代码。装饰器模式提供了比继承更灵活的功能扩展方式。 主要角色 Component:定义一个对…

思科配置路由器,四台主机互相ping通

一、如图配置 PC4和PC5用来配置路由器,各ip、接口如图所示。 二、配置各主机ip、子网掩码SNM、默认网关DGW (一)、PC0 (二)、PC1 (三)、PC2 (四)、PC3 三、 配置路由器Router0 (期间报错是打错了字母) Router>en Router#configure terminal Enter configurat…

解读ROS功能包模块的步骤

系列文章目录 提示:这里可以添加系列文章的所有文章的目录,目录需要自己手动添加 TODO:写完再整理 文章目录 系列文章目录前言解读ROS功能包模块的步骤前言 认知有限,望大家多多包涵,有什么问题也希望能够与大家多交流,共同成长! 推荐开发经验及方法博客专栏: [https:/…

H5漂流瓶交友源码|社交漂流瓶H5源码 附安装教程

H5漂流瓶交友源码|社交漂流瓶H5源码 附安装教程 搭建教程 环境:Nginx 1.20.1-MySQL 5.6.50-PHP-7.3 上传源码至网站根目录,创建并导入数据库 数据库信息修改:/config/database.php 网站运行目录/public 配置文件加入(从24行…

Zookeeper高频面试题整理(入门到精通)

文章目录 1、什么是Zookeeper?2、ZooKeeper的基本数据结构是什么?3、Zookeeper的节点类型有哪些?4、Zookeeper的特点5、ZooKeeper如何保证数据一致性?6、什么是ZAB协议?7、Zookeeper的ACL机制是什么?8、Zoo…

MySQL性能分析

一、查看执行频率 sql执行频率,执行下述指令可以看到select,update,delete等操作的次数 show global status like Com_______; 具体我们在终端登录mysql看下,使用下述命令登录mysql,并输入命令 mysql -u 用户名 -p 上述查询,删…

设计模式-享元模式Flyweight(结构型)

享元模式(Flyweight) 享元模式是一种结构型模式,它主要用于减少创建对象的数量,减少内存占用。通过重用现有对象的方式,如果未找到匹配对象则新建对象。线程池、数据库连接池、常量池等池化的思想就是享元模式的一种应用。 图解 角色 享元工…

warning LNK4017: DESCRIPTION 语句不支持目标平台;已忽略

文章目录 warning LNK4017: DESCRIPTION 语句不支持目标平台;已忽略概述笔记备注END warning LNK4017: DESCRIPTION 语句不支持目标平台;已忽略 概述 基于ATL的COM DLL导出函数,无法用__declspec(dllexport)直接在函数上标记为导出函数。 只…

vue3医疗项目

配置src别名 打开viteconfig.js文件进行配置 import { defineConfig } from "vite"; import vue from "vitejs/plugin-vue"; // 引入node提供内置模块path:可以获取绝对路径 import path from "path";// https://vitejs.dev/config…

【C语言习题】30.使用指针打印数组内容

文章目录 作业标题作业内容2.解题思路3.具体代码 作业标题 使用指针打印数组内容 作业内容 写一个函数打印arr数组的内容,不使用数组下标,使用指针。 arr是一个整形一维数组。 2.解题思路 先定义一个数组,使用指针打印数组内容那就是说我们…

观察者模式-委托(大话设计模式)C/C++版本

观察者模式-委托 先看该常规的没有委托概念的代码&#xff0c;如下&#xff1a; 非委托 #include <iostream> #include <string> #include <list> using namespace std;class Subject; // 前向声明// 抽象观察者 class Observer { protected:string name;…

二手物品交易系统的设计

管理员账户功能包括&#xff1a;系统首页&#xff0c;个人中心&#xff0c;管理员管理&#xff0c;商家管理&#xff0c;用户管理&#xff0c;商品管理&#xff0c;用户咨询管理 商家账户功能包括&#xff1a;系统首页&#xff0c;个人中心&#xff0c;商品管理&#xff0c;用…

荣耀笔记本IP地址查看方法详解:轻松掌握网络配置技巧

在数字化时代的浪潮中&#xff0c;笔记本电脑已经成为我们生活和工作中不可或缺的重要工具。对于荣耀笔记本用户而言&#xff0c;掌握基本的网络配置技巧显得尤为重要。其中&#xff0c;查看IP地址是连接网络、配置设备、排除故障等场景下的关键步骤。本文将详细介绍荣耀笔记本…

数据采集项目2-业务数据同步

全量同步 每天都将业务数据库中的全部数据同步一份到数据仓库 全量同步采用DataX datax datax使用 执行 python /opt/module/datax/bin/datax.py /opt/module/datax/job/job.json 更多job.json配置文件在&#xff1a; 生成的DataX配置文件 java -jar datax-config-genera…

数智教育创新如何向未来?腾讯云与你探索革新之路

引言 随着科技革命的快速发展&#xff0c;掀起教育领域的变革&#xff0c;新理念、新技术、新模式、新应用正不断涌现&#xff0c;正塑造着教育的未来形态。未来科技还将如何赋能教育创新&#xff1f; 5月31日&#xff0c;由腾讯云TVP 与西安电子科技大学联合举办的「数智教育的…

深入理解 Java 中的 synchronized 代码块

目录 前言 一、synchronized的工作原理 二、使用synchronized代码块的场景 三、编写synchronized代码块的最佳实践 四、何时使用 synchronized 代码块&#xff1f; 同步&#xff1a; 不同步&#xff1a; 五、Demo讲解 1.使用synchronized代码块减小锁的粒度&#xff0c…