当前位置: 首页 > news >正文

数字信号处理实验三(IIR数字滤波器设计)

  •  IIR数字滤波器设计(2学时)
    1. 要求:
      1. 产生一复合信号序列,该序列包含幅度相同的28Hz、50Hz、100Hz、150Hz的单音(单频)信号;其中,50Hz及其谐波为工频干扰(注:采样率要满足要求)。
      2. 试设计一椭圆低通滤波器,将干扰信号滤除。
    2. 目的:
      1. 利用学习到的数字信号处理知识解决实际问题,学会将实际问题的数据转化为相应模型指标;
      2. 熟悉IIR数字滤波器的设计方法。

实验报告:

一、实验内容

i.产生一复合信号序列,该序列包含幅度相同的28Hz、50Hz、100Hz、150Hz的单音(单频)信号;其中,50Hz及其谐波为工频干扰(注:采样率要满足要求)。

ii.试设计一椭圆低通滤波器,将干扰信号滤除。

二、实验目的

i.利用学习到的数字信号处理知识解决实际问题,学会将实际问题的数据转化为相应模型指标;

ii.熟悉IIR数字滤波器的设计方法。

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

Windows系统 Matlab 2022b

四、实验记录

1.原理基础

本实验旨在通过数字信号处理的方法,设计一个椭圆低通滤波器来滤除复合信号中的特定频率干扰(此处为50Hz及其谐波)。复合信号由四个不同频率的单音信号组成:28Hz、50Hz、100Hz和150Hz,其中50Hz及其谐波(如100Hz、150Hz等)被视为工频干扰。

椭圆低通滤波器是一种数字滤波器,其设计目标是在通带和阻带内都具有最小的波纹(即平坦的幅度响应),并且具有陡峭的过渡带。这使得椭圆滤波器在给定滤波器阶数的情况下,能够提供最窄的过渡带。

采样率的选择需要满足采样定理,即采样率应大于信号中最高频率的两倍,以确保信号在采样过程中不会发生混叠。

2 实验流程

  1. 信号生成:使用编程工具(如MATLAB)生成包含28Hz、50Hz、100Hz和150Hz的复合信号,所有单音信号的幅度相同。
  2. 设计椭圆低通滤波器:使用MATLAB的滤波器设计工具(如ellipord和ellip函数)设计一个椭圆低通滤波器,滤除50Hz及其谐波。滤波器的设计参数(如通带截止频率、阻带截止频率、通带最大衰减和阻带最小衰减)需要根据实际需求进行设定。
  3. 滤波器应用:将设计的椭圆低通滤波器应用于复合信号,得到滤波后的信号。
  4. 结果分析:对比原始信号和滤波后信号的时域和频域特性,评估滤波器的性能。

3源程序代码

%IIR 低通滤波器:1.设置参数 +生成复合信号+绘制时域和频域 2.设计低通滤波器 3.应用滤波器并绘制时域频域
%编辑人:贾雯爽
%目的:掌握模拟低通滤波器设计流程及影响参数
%最后更新时间:2024/06/05 clear; 
clc; 
close all%1.1 参数设置  
Fs = 1000; % 采样率  
t = 0:1/Fs:1-1/Fs; % 时间向量  
f1 = 28; % 频率1  
f2 = 50; % 频率2(及其谐波将被滤除)  
f3 = 100; % 频率3(50Hz的谐波)  
f4 = 150; % 频率4(50Hz的谐波)  
A = 1; % 所有信号的幅度  % 1.2生成复合信号  
x = A * (sin(2*pi*f1*t) + sin(2*pi*f2*t) + sin(2*pi*f3*t) + sin(2*pi*f4*t));  % 1.3绘制原始复合信号  
figure;  
subplot(2,1,1);  
plot(t, x);  
title('原始复合信号');  
xlabel('时间 (s)');  
ylabel('幅度');  
subplot(2,1,2);  
y = fft(x);
plot(t, y);  
title('原始复合信号');  
xlabel('频率 (Hz)');  
ylabel('幅度');
%1.4绘制复合信号频域% 2设计椭圆低通滤波器  
% 2,1选择截止频率和滤波器阶数  
fc = 45; % 截止频率,小于50Hz  
N = 8; % 滤波器阶数  
Rp = 0.5; % 通带波纹(单位dB)  
Rs = 30; % 阻带衰减(单位dB)  % 2.2设计椭圆滤波器  
[b, a] = ellip(N, Rp, Rs, fc/(Fs/2));  % 2.3绘制滤波器频率响应  
[H, w] = freqz(b, a, 1024, Fs);  
figure;  
plot(w/pi*Fs, abs(H));  
title('椭圆低通滤波器频率响应');  
xlabel('频率 (Hz)');  
ylabel('|H(f)|');  
grid on;  % 3应用滤波器到复合信号  
y = filter(b, a, x);  % 3.1绘制滤波后的信号  
figure;  
subplot(2,1,1);  
plot(t, x);  
title('原始复合信号');  
xlabel('时间 (s)');  
ylabel('幅度');  subplot(2,1,2);  
plot(t, y);  
title('滤波后的信号');  
xlabel('时间 (s)');  
ylabel('幅度');

4 实验结果

5 实验结果分析

通过对滤波后信号的频谱图进行分析,可以评估椭圆低通滤波器的性能。如果滤波后信号的频谱中50Hz及其谐波的幅度显著减小,且28Hz信号的幅度变化不大,则说明滤波器设计成功,达到了预期的效果。

五、实验总结

通过本次实验,我成功地将所学的数字信号处理知识应用于实际问题中,即设计一个椭圆低通滤波器来滤除复合信号中的特定频率干扰。在实验过程中,我首先根据实验要求生成了一个包含28Hz、50Hz、100Hz和150Hz单音信号的复合信号。接着,我利用MATLAB的滤

在设计滤波器时,我根据滤波器的性能指标(如通带截止频率、阻带截止频率、通带最大衰减和阻带最小衰减)进行了参数设置。通过ellipord函数确定了滤波器的阶数和归一化的截止频率,然后使用ellip函数计算了滤波器的系数。

将设计好的椭圆低通滤波器应用于复合信号后,我得到了滤波后的信号。通过对比原始信号和滤波后信号的时域和频域特性,我观察到50Hz及其谐波在滤波后信号的频谱中被显著抑制,而28Hz信号则得以保留。这证明了椭圆低通滤波器在滤除特定频率干扰方面的有效性。

在实验过程中,我也遇到了一些挑战。例如,在选择滤波器参数时需要权衡通带和阻带的性能,以及滤波器的阶数对过渡带陡峭程度的影响。通过不断尝试和调整参数,我最终找到了一个满足实验要求的滤波器设计方案。

通过本次实验,我不仅加深了对数字信号处理知识的理解,还学会了将实际问题的数据转化为相应模型指标的方法。同时,我也熟悉了IIR数字滤波器的设计流程和方法,为今后的学习和研究打下了坚实的基础。


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

相关文章:

数字信号处理实验三(IIR数字滤波器设计)

IIR数字滤波器设计(2学时) 要求: 产生一复合信号序列,该序列包含幅度相同的28Hz、50Hz、100Hz、150Hz的单音(单频)信号;其中,50Hz及其谐波为工频干扰(注:采样…...

Why is Kafka fast?(Kafka性能基石)

Kafka概述 Why is kafka fast? 思考一下,当我们在讨论Kafka快的时候我们是在谈论什么呢?What does it even mean that Kafka is fast? 我们是在谈论kafka的低延迟(low latency)还是在讨论吞吐量(through…...

Linux下的SSH详解及Ubuntu教程

前言 SSH(Secure Shell)是一种用于计算机之间安全通信的协议,广泛应用于远程登录、系统管理和文件传输等场景。本文将详细介绍SSH在Linux系统(特别是Ubuntu)下的使用,包括安装、配置、密钥管理和常见应用&…...

MobPush HarmonyOS NEXT 版本集成指南

开发工具:DevEco Studio 集成方式:在线集成 HarmonyOS API支持:> 11 集成前准备 注册账号 使用MobSDK之前,需要先在MobTech官网注册开发者账号,并获取MobTech提供的AppKey和AppSecret,详情可以点击查…...

什么是封装?为什么要封装?

什么是封装? 封装是计算机科学中的一个重要概念,尤其在面向对象编程(OOP)中占据核心地位。封装主要指的是将数据(属性)和对这些数据的操作(方法)组合在一个单元中(我们称…...

远程桌面无法复制粘贴文件到本地怎么办?

远程桌面不能复制粘贴问题 Windows远程桌面为我们提供了随时随地访问文件和数据的便捷途径,大大提升了工作和生活的效率。然而,在使用过程中,我们也可能遇到一些问题。例如,在通过远程桌面传输文件时,常常会出现无法复…...

LeetCode 207. 课程表

思路:这是一道拓扑排序问题,拓扑排序听起来可能有点复杂,但实际上它是个相当直观的概念。想象一下,你有很多事情要做,但有些事情必须在另一些事情完成之后才能开始,就像你得先穿上袜子再穿鞋子 拓扑排序就…...

数据结构历年考研真题对应知识点(树的基本概念)

目录 5.1树的基本概念 5.1.2基本术语 【森林中树的数量、边数和结点数的关系(2016)】 5.1.3树的性质 【树中结点数和度数的关系的应用(2010、2016)】 【指定结点数的三叉树的最小高度分析(2022)】 5.1…...

Pytorch和Tensorflow安装【Win和Linux】

Ubuntu/win安装Pytorch和Tensorflow 说明: 这两种框架的搭建,均基于Anaconda进行搭建。先在系统中安装Anaconda软件。 一、Pytorch的搭建 windows安装 (1)搭建参考官网给的命令,pytorch官网 (2)下载地址:https://download.pytorch.org/whl/torch_stable.html 从上述…...

筑算网基石 创数智未来|锐捷网络闪耀2024 MWC上海

2024年6月26日至28日,全球科技界瞩目的GSMA世界移动大会(MWC 上海)在上海新国际博览中心(SNIEC)盛大召开。作为行业领先的网络解决方案提供商,锐捷网络以“筑算网基石 创数智未来”为主题,带来了…...

T4打卡 学习笔记

所用环境 ● 语言环境:Python3.11 ● 编译器:jupyter notebook ● 深度学习框架:TensorFlow2.16.1 ● 显卡(GPU):NVIDIA GeForce RTX 2070 设置GPU from tensorflow import keras from tensorflow.keras…...

抖音矩阵云混剪系统源码 短视频矩阵营销系统V2(全开源版)

>>>系统简述: 抖音阵营销系统多平台多账号一站式管理,一键发布作品。智能标题,关键词优化,排名查询,混剪生成原创视频,账号分组,意向客户自动采集,智能回复,多…...

zabbix报警机制

zabbix思路流程...

【Matlab】-- 飞蛾扑火优化算法

文章目录 文章目录 01 飞蛾扑火算法介绍02 飞蛾扑火算法伪代码03 基于Matlab的部分飞蛾扑火MFO算法04 参考文献 01 飞蛾扑火算法介绍 飞蛾扑火算法(Moth-Flame Optimization,MFO)是一种基于自然界飞蛾行为的群体智能优化算法。该算法由 Sey…...

全面体验ONLYOFFICE 8.1版本桌面编辑器

ONLYOFFICE官网 在当今的数字化办公环境中,选择合适的文档处理工具对于提升工作效率和团队协作至关重要。ONLYOFFICE 8.1版本桌面编辑器,作为一款集成了多项先进功能的办公软件,为用户提供了全新的办公体验。今天,我们将深入探索…...

建议csdn赶紧将未经作者同意擅自锁住收费的文章全部解锁,别逼我用极端手段让你们就范

前两天我偶然发现csdn竟然将我以前发表的很多文章锁住向读者收费才让看。 csdn这种无耻行径往小了说是侵犯了作者的版权著作权,往大了说这是在打击我国IT领域未来的发展,因为每一个做过编程工作的人都知道,任何一个程序员的学习成长过程都少不…...

Pycharm一些问题解决办法

研究生期间遇到关于Pycharm一些问题报错以及解决办法的汇总 ModuleNotFoundError: No module named sklearn’ 安装机器学习库,需要注意报错的sklearn是scikit-learn缩写。 pip install scikit-learnPyCharm 导包提示 unresolved reference 描述:模块…...

ONLYOFFICE 桌面编辑器 8.1 发布:全新 PDF 编辑器、幻灯片版式、增强 RTL 支持及更多本地化选项

目录 什么是ONLYOFFICE? ONLYOFFICE 主要特点包括: 官网信息: 1. 功能齐全的 PDF 编辑器 1.1 编辑 PDF 文本 1.2 插入和修改对象 1.3 创建和填写表单 2. 幻灯片版式功能 2.1 快速应用幻灯片版式 2.2 动画窗格的改进 3. 文档编辑、…...

Linux高并发服务器开发(六)线程

文章目录 1. 前言2 线程相关操作3 线程的创建4 进程数据段共享和回收5 线程分离6 线程退出和取消7 线程属性(了解)8 资源竞争9 互斥锁9.1 同步与互斥9.2 互斥锁 10 死锁11 读写锁12 条件变量13 生产者消费者模型14 信号量15 哲学家就餐 1. 前言 进程是C…...

Google发布Gemma 2轻量级开放模型 以极小的成本提供强大的性能

除了 Gemini 系列人工智能模型外,Google还提供 Gemma 系列轻量级开放模型。今天,他们发布了 Gemma 2,这是基于全新架构设计的下一代产品,具有突破性的性能和效率。 Gemma 2 有两种规格:90 亿 (9B) 和 270 亿 (27B) 个参…...

原创:九章云极零硬件改造·异构算力智能调度纯软优化全方案

九章云极零硬件改造异构算力智能调度纯软优化全方案 作者:华夏之光永存 标签:#AI算力、#异构集群调度、#智算云优化、#大模型算力效率、零硬件改造、#国产化算力适配 摘要 针对智算平台算力利用率低、异构芯片适配差、任务调度拥堵、资源分配失衡核心痛点…...

清华团队ISSCC新作解读:用eDRAM-LUT做存内计算,如何把存储单元变成加法器?

清华团队ISSCC新作:eDRAM-LUT如何重构存内计算芯片设计范式 当人工智能模型的参数量突破千亿级别时,传统计算架构的"存储墙"问题愈发凸显。数据在存储器和处理器之间的频繁搬运,消耗了系统60%以上的能耗——这恰恰是存内计算技术试…...

gte-base-zh与Git版本控制的结合:模型迭代管理实践

gte-base-zh与Git版本控制的结合:模型迭代管理实践 如果你在团队里搞过模型精调,肯定遇到过这样的麻烦事:张三上周调的那个参数是什么来着?李四改的那个配置文件怎么找不到了?上周测试效果最好的那个模型权重&#xf…...

2026年重庆桶装水工厂,这些经营要点与避坑指南你知道吗?

2026 年,在重庆经营桶装水工厂,面临不少挑战和机遇。重庆水木华桶装水厂家有多年相关经验,能帮你少走弯路。下面就为你分享经营要点和避坑指南。常见经营痛点很多桶装水工厂老板都有过这样的经历。水质把控不好,容易出现异味、浑浊…...

AI Agent开发实战:基于PyTorch与LangChain构建自主任务执行智能体

AI Agent开发实战:基于PyTorch与LangChain构建自主任务执行智能体 1. 为什么需要自主任务执行智能体 想象一下,你每天要处理几十封邮件、查找各种资料、整理会议纪要,还要写周报。这些重复性工作占据了大量时间,而真正需要创造力…...

STM32的ADC+DMA还能这么玩?深入剖析定时器触发与波形显示的性能边界与优化

STM32的ADCDMA性能极限探索:从定时器触发到波形显示的深度优化 在嵌入式数据采集领域,ADC与DMA的协同工作一直是性能优化的关键战场。当我们需要在资源受限的MCU上实现高精度波形采集时,如何榨取STM32的每一分性能潜力?本文将带您…...

MCU开发 —— GD32篇:SEGGER Embedded Studio 外链编译器实战指南

1. 为什么选择SEGGER Embedded Studio开发GD32 SEGGER Embedded Studio(简称SES)作为一款轻量级跨平台IDE,这几年在嵌入式开发圈子里口碑相当不错。我自己从Keil转过来用SES开发GD32系列MCU已经两年多了,最直观的感受就是编译速度…...

Cadence 617实战:手把手教你搞定电流镜负载差分放大器的仿真与优化

Cadence 617实战:手把手教你搞定电流镜负载差分放大器的仿真与优化 在模拟集成电路设计中,电流镜负载差分放大器是一个经典而重要的电路结构。它不仅出现在各类运算放大器的输入级,也是理解模拟电路设计原理的绝佳案例。本文将带你从工具实操…...

AI 模型量化精度与推理速度平衡

AI模型量化精度与推理速度平衡:智能时代的效率与质量博弈 在人工智能技术快速发展的今天,AI模型的部署效率成为关键挑战。模型量化技术通过降低计算精度来提升推理速度,但如何在精度损失与速度提升之间找到平衡,成为开发者关注的…...

不只是画连线:版图工程师必知的LOD效应与电流镜匹配实战指南(以SMIC 40nm工艺为例)

不只是画连线:版图工程师必知的LOD效应与电流镜匹配实战指南(以SMIC 40nm工艺为例) 在集成电路设计中,版图工程师常常被误解为仅仅是"画连线"的技术人员。然而,任何一位经历过流片洗礼的工程师都会明白&…...