重邮+数字信号处理实验三:z变换及离散LTI系统的z域分析

news2025/2/27 12:37:42

实验目的:

1 )学会运用 Matlab 求离散时间信号的有理函数 z 变换的部分分式展开;
2 )学会运用 Matlab 分析离散时间系统的系统函数的零极点;
3 )学会运用 Matlab 分析系统函数的零极点分布与其时域特性的关系;
4 )学会运用 Matlab 进行离散时间系统的频率特性分析。

实验任务:

1 .试用 MATLAB 的 residuez 函数,求出以下部分分式展开和。

2. 试用 Matlab 画出下列因果系统的系统函数零极点分布图,并判断系统的稳定性。
3.试用 Matlab 绘制如下系统的频率响应曲线。

 

4. 编写 Matlab 程序,系统的差分方程为 𝑦(𝑛) − 0.9𝑦(𝑛 − 8) = 𝑥(𝑛) − 𝑥(𝑛 − 8)
1 )画出该系统的零极点分布图,判断系统的稳定性;( 2 )画出系统在 0~2π 范围内的幅频特性曲线和相频特性曲线;(3 )分析该系统是什么类型的滤波器。

思考题

1. 编写 Matlab 程序,分别采用系统 𝐻 1 (𝑧) = 𝑧/𝑧+0.8 、𝐻 2 (𝑧) = 𝑧/𝑧−1 、𝐻 3 (𝑧) = 𝑧 /𝑧+1.2
对音频文件 motherland.wav 进行滤波(可采用实验二的 conv 函数)。( 1 )画出滤 波前后该音频文件 1~2s 时间段的连续时域波形图,要求横坐标的单位为秒;( 2 ) 说明滤波后信号幅度变化的原因。
2. 已知系统函数𝐻(𝑧) =

编写 Matlab 程序实现:( 1 )画出该系统的零极点分布图,判断系统的稳定性;(2 )画出系统在 0~2π 范围内的幅频特性曲线和相频特性曲线;(3 )查找资料说明该系统是什么类型的滤波器,在实际应用中有什么功能?

解答

一定要记得补零,不然会报错

最后一问的最后一小问答案:该系统是一个梳状滤波器,其特征是通过去除低频分量而能够增强特定频率的信号成分。

%第一题
B1=[2,16,44,56,32];
A1=[3,3,-15,18,-12];
[R,P,K]=residuez(B1,A1);

R
P
K

%第二题
B2=[0,2,-1.6,-0.9];
A2=[1,-2.5,1.96,-0.48];
B3=[0,0,0,1,-1]
A3=[1,-0.9,-0.65,0.873,0];

%画图
figure
subplot(1,2,1);
zplane(B2,A2),grid on
legend('零点','极点');
title("零极点分布图");

subplot(1,2,2);
zplane(B3,A3),grid on
legend('零点','极点');
title("零极点分布图");

%题三
B4=[1,0,0];
A4=[1,-0.75,0.125];
[H,w]=freqz(B4,A4,400,'whole');
Hm=abs(H);
Hp=angle(H);
figure
subplot(2,1,1);
plot(w/pi,Hm),grid on;
xlabel("\omega/pi(rad/s)");
ylabel("Magnitude");
title("第三题的离散系统的幅频特性曲线")

subplot(2,1,2);
plot(w/pi,Hp),grid on;
xlabel("\omega/pi(rad/s)");
ylabel("Phase");
title("第三题的离散系统的相频特性曲线")

%第四题
B5=[1,0,0,0,0,0,0,-1];
A5=[1,0,0,0,0,0,0,-0.9];
[H2,w2]=freqz(B5,A5,400,"whole");
Hm2=abs(H2);
Hp2=angle(H2);

figure
subplot(3,1,1);
zplane(B5,A5),grid on;
legend('零点','极点');
title('零极点分布图');

subplot(3,1,2);
plot(w2/pi,Hm2),grid on;
xlabel("\omega/pi(rad/s)");
ylabel("Magnitude");
title("第四题的离散系统的幅频特性曲线")

subplot(3,1,3);
plot(w2/pi,Hp2),grid on;
xlabel("\omega/pi(rad/s)");
ylabel("Phase");
title("第四题的离散系统的相频特性曲线")

思考题解答

如果要提取1到2s一定要利用好fs框定范围,而不是全部拿出来

针对问答:

针对第二问,解释滤波后信号幅度变化的原因:

信号经过滤波后,幅度变化的原因主要包括:

1. 滤波器特性:不同的滤波器具有不同的频率响应,对某些频率成分的增益和衰减不同。高通滤波器会增强高频成分,而衰减低频成分,反之亦然。

2. 相位延迟:滤波器可能会引入相位延迟,导致频率成分的相位发生变化,从而影响到叠加后的幅度。

3. 增益:如果滤波器设计时增益设置不当,可能会导致输出信号的幅度与输入信号幅度存在明显差异。

4. 噪声和谐波成分:滤波过程中,如果输入信号中含有噪声或者高次谐波,滤波器会调整这些成分的幅度,从而影响输出信号的整体幅度。

5. 信号能量分布:不同频率成分在信号中的能量分布不同,滤波后整体信号能量的变化也会导致幅度变化。

通过这些因素的作用,滤波后信号的幅度就可能发生变化。

思考题二应该是一个带通滤波器。

%思考题一 
% 读取音频文件 
[audio, fs] = audioread('motherland.wav'); % 加载音频文件 
t = (0:length(audio)-1) / fs; % 时间向量,单位为秒 
startSample = fs * 1; % 对应1秒的样本索引 
endSample = fs * 2; % 对应2秒的样本索引 
audio_segment = audio(startSample:endSample); 
% 原始音频片段的波形 
subplot(4,1,1); 
plot(time_segment, audio_segment); 
title('原始音频片段'); 
xlabel('时间 (秒)'); 
ylabel('幅度'); 

% 对音频片段进行滤波 
% H1(z) = z / (z + 0.8) 
b1 = [1 0]; % 分子系数 
a1 = [1 0.8]; % 分母系数 
filtered_audio1 = filter(b1, a1, audio_segment); 

% 滤波后的音频波形 
subplot(4,1,2); 
plot(time_segment, filtered_audio1); 
title('滤波后音频1 '); 
xlabel('时间 (秒)'); 
ylabel('幅度'); 
% H2(z) = z / (z - 1) 
b2 = [1 0]; 
a2 = [1 -1]; 
filtered_audio2 = filter(b2, a2, audio_segment); 
subplot(4,1,3); 
plot(time_segment, filtered_audio2); 
title('滤波后音频2 )'); 
xlabel('时间 (秒)'); 
ylabel('幅度'); 

% H3(z) = z / (z + 1.2) 
b3 = [1 0]; 
a3 = [1 1.2]; 
filtered_audio3 = filter(b3, a3, audio_segment); 
% 绘制原始和滤波后音频的波形 
time_segment = (0:length(audio_segment)-1) / fs; % 1-2秒片段的时间向量 
subplot(4,1,4); 
plot(time_segment, filtered_audio3); 
title('滤波后音频3'); 
xlabel('时间 (秒)'); 
ylabel('幅度');

%思考题2
Bs=[1,-2,2];
As=[2,-2,1];
[Hs,ws]=freqz(Bs,As,400,'whole');
Hms=abs(Hs);
Hps=angle(Hs);

figure
subplot(3,1,1);
zplane(Bs,As),grid on;
legend('零点','极点');
title('零极点分布图');

subplot(3,1,2);
plot(ws/pi,Hms),grid on;
xlabel("\omega/pi(rad/s)");
ylabel("Magnitude");
title("思考题的离散系统的幅频特性曲线")

subplot(3,1,3);
plot(ws/pi,Hps),grid on;
xlabel("\omega/pi(rad/s)");
ylabel("Phase");
title("思考题的离散系统的相频特性曲线")
%应该是带通滤波器

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

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

相关文章

前端开发底层逻辑全解析

前端开发就像是构建一座数字大厦的外表装饰与交互系统,而理解其底层逻辑则是打好坚实基础的关键。今天,我们就来深入剖析前端开发的底层逻辑。 一、浏览器的工作机制:幕后的魔法手 当我们在浏览器中打开一个网页时,一系列复杂的操…

MySQL -- CURD(下)

1. Update 修改 1.1 语法 对符合条件的结果进⾏列值更新 UPDATE [LOW_PRIORITY] [IGNORE] table_referenceSET assignment [, assignment] ...[WHERE where_condition][ORDER BY ...][LIMIT row_count]1.2 示例 将吕布的数学成绩改为99分 update exam set math 99 where …

【计算机网络】 —— 数据链路层(壹)

文章目录 前言 一、概述 1. 基本概念 2. 数据链路层的三个主要问题 二、封装成帧 1. 概念 2. 帧头、帧尾的作用 3. 透明传输 4. 提高效率 三、差错检测 1. 概念 2. 奇偶校验 3. 循环冗余校验CRC 1. 步骤 2. 生成多项式 3. 例题 4. 总结 四、可靠传输 1. 基本…

亚马逊 aws-waf-token 算法生成,协议逆向,通杀!!!

声明 本文章中所有内容仅供学习交流,抓包内容、敏感网址、数据接口均已做脱敏处理,严禁用于商业用途和非法用途,否则由此产生的一切后果均与作者无关,若有侵权,请联系我立即删除! 难度不大,核…

SpringBoot 赋能家乡特色推荐系统:高效架构与前沿技术集成

1 绪 论 1.1课题背景与意义 在Internet高速发展的今天,计算机的应用几乎完全覆盖我们生活的各个领域,互联网在经济,生活等方面有着举足轻重的地位,成为人们资源共享,信息快速传递的重要渠道。在中国,网上管…

肥羊直播 1.0.2 |频道非常丰富的高清画质电视直播软件

肥羊直播App是一款专为电视用户设计的直播软件,提供丰富多彩的直播内容,包括央视、卫视、综合、地方、卡通动漫、娱乐、历史古装和电影等频道。该软件支持多种设备,如智能电视、高清机顶盒和安卓手机,为用户带来便捷且高清的观看体…

基础加/解密程序V2.0(Ascll码加减实现) txt保存密钥

Hello大家好,这次我对上篇博客(基础加/解密程序(Ascll码加减实现)-CSDN博客)中的代码略加修改,退出了2.0版本,这次我加入了txt输入/出流,使得可随时对密钥进行更改。不过在使用前&am…

代码随想录算法训练营day50|动态规划12

不同的子序列 给定一个字符串 s 和一个字符串 t ,计算在 s 的子序列中 t 出现的个数。、 编辑距离中的删除元素,其实就是直接变数字,其只删除原来的较长的数组里的元素 递推模拟,使用s的最后一个元素匹配,或者删除…

keil报错---connection refused due to device mismatch

解决办法如下: 记得改成1 把Enable取消

黑森林实验室发布FLUX.1 Tools控制套件,全面介绍

FLUX.1 Tools是什么 FLUX.1 Tools 是由 Black Forest Labs 发布的一套模型工具,旨在为文本到图像模型 FLUX.1 提供更多的控制和可操作性,使得对真实和生成图像的修改和重新创作成为可能。这套工具包括四个核心功能:FLUX.1 Fill、FLUX.1 Dept…

【包教包会】CocosCreator3.x——重写Sprite,圆角、3D翻转、纹理循环、可合批调色板、不影响子节点的位移旋转缩放透明度

一、效果演示 重写Sprite组件,做了以下优化: 1、新增自变换,在不影响子节点的前提下位移、旋转、缩放、改变透明度 新增可合批调色板,支持色相、明暗调节 新增圆角矩形、3D透视旋转、纹理循环 所有功能均支持合批、原生平台&…

AI 语音:IIElevenLabs 如何通过文本训练出新的声音

网址:Free Text to Speech & AI Voice Generator | ElevenLabs 1)点击添加新的声音 2)根据需要选择 3)比如我选择第一个(从文本提示设计一个全新的声音) 4)通过中文将想要的声音要求翻译成…

Vant UI +Golang(gin) 上传文件

前端基本用法:点击查看 实现代码: const afterRead (file) > {console.log(file);//set content-type to multipart/form-dataconst formData new FormData();formData.append("file", file.file);request.POST("/api/v1/users/up…

2021 年“泰迪杯”数据分析技能赛B 题肥料登记数据分析

2021 年“泰迪杯”数据分析技能赛B 题肥料登记数据分析 完整代码请私聊 博主 # 一、背景 肥料是农业生产中一种重要的生产资料,其生产销售必须遵循《肥料登记管理办法》,依法在农业行政管理部门进行登记。各省、自治区、直辖市人民政府农业行政主管部门主…

C#常见错误—空对象错误

System.NullReferenceException:未将对象引用设置到对象的实例 在C#编程中,System.NullReferenceException是一个常见的运行时异常,其错误信息“未将对象引用设置到对象的实例”意味着代码试图访问一个未被初始化或已被设置为null的对象的成…

MATLAB Simulink® - 智能分拣系统

系列文章目录 前言 本示例展示了如何在虚幻引擎 环境中对四种不同形状的标准 PVC 管件实施半结构化智能分拣。本示例使用 Universal Robots UR5e cobot 执行垃圾箱拣选任务,从而成功检测并分类物体。cobot 的末端执行器是一个吸力抓手,它使 cobot 能够拾…

【SpringMVC】应用分层

阿华代码,不是逆风,就是我疯 你们的点赞收藏是我前进最大的动力!! 希望本文内容能够帮助到你!! 目录 一:场景引入 二:前后端分离三层架构 1:表现层 2:业务…

【TCP 网络通信(发送端 + 接收端)实例 —— Python】

TCP 网络通信(发送端 接收端)实例 —— Python 1. 引言2. 创建 TCP 服务器(接收端)2.1 代码示例:TCP 服务器2.2 代码解释: 3. 创建 TCP 客户端(发送端)3.1 代码示例:TCP…

在阿里云/Linux环境搭建Gitblit服务

在阿里云/Linux环境搭建Gitblit服务 1. 整体描述2. 前期准备3. 安装步骤3.1 下载gitblit3.2 上传gitblit3.3 解压文件3.4 修改文件配置3.5 启动gitblit3.6 安全组配置 4. 总结 1. 整体描述 前段时间买了一个阿里云服务器,2核2G,3M固定带宽的配置&#x…

定时任务——xxl-job源码解析

摘要 本文深入解析了xxl-job的源码,xxl-job是一个分布式任务调度平台,其核心设计思想是将调度行为抽象成“调度中心”,而任务逻辑则由“执行器”处理,实现调度与任务的解耦。文章详细介绍了调度器和执行器的初始化流程、任务执行…