news 2026/4/3 8:07:48

直接打开MATLAB,先来点刺激的——搞个巴特沃斯低通滤波器。别被名字吓到,其实就是个能让低频信号通过,高频滚犊子的电路模型。看这段

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
直接打开MATLAB,先来点刺激的——搞个巴特沃斯低通滤波器。别被名字吓到,其实就是个能让低频信号通过,高频滚犊子的电路模型。看这段

基于matlab的模拟滤波器和数字滤波器设计, 基于matlab的模拟滤波器和数字滤波器设计,其中数字滤波器包扩IIR和FIR的低通、高通、带通、带阻四大类型,模拟滤波器包括巴特沃斯( Butterworth)和切比雪夫( Chebyshev)算法下的低通、高通、带通、带阻四种类型。

% 巴特沃斯低通设计 order = 4; % 四阶就够用 cutoff = 1000; % 截止频率1kHz [z,p,k] = butter(order, 2*pi*cutoff, 's'); % 注意's'表示模拟滤波器 [sos,g] = zp2sos(z,p,k); % 转成二阶节 freqs(sos, logspace(2,5,2000)); % 画幅频特性

butter函数里那个2π看着别扭?模拟滤波器设计默认用角频率(rad/s),所以要手动把Hz转成rad/s。freqs画图时横坐标自动用rad/s显示,想看Hz的话得自己改坐标轴标签。

切比雪夫来点波纹才带劲。下面这段搞个带通,通带波纹1dB:

% 切比雪夫I型带通 wp = [900 1100]*2*pi; % 通带900-1100Hz ws = [800 1200]*2*pi; % 阻带800-1200Hz Rp = 1; Rs = 40; % 通带1dB波纹,阻带衰减40dB [n, wn] = cheb1ord(wp, ws, Rp, Rs, 's'); [b,a] = cheby1(n, Rp, wn, 's'); bode(tf(b,a)); % 波特图更直观

切比雪夫的阶数计算比巴特沃斯复杂,直接交给cheb1ord算。注意比较下切比雪夫和巴特沃斯的过渡带陡峭程度,带波纹的就是更陡——这波属于用波纹换性能。

切到数字滤波器战场,IIR用双线性变换法最常见。整个高通玩玩:

% IIR数字高通 Fs = 8000; % 采样率8kHz fc = 2000; % 截止2kHz digital_cutoff = fc/(Fs/2); % 归一化到0-1 [b,a] = butter(5, digital_cutoff, 'high'); % 五阶 freqz(b,a,1024,Fs); % 数字频率响应

注意归一化频率的处理,数字截止频率要除以奈奎斯特频率(Fs/2)。freqz的参数里给采样率能让横轴显示实际频率值。

FIR设计必须上窗函数法。整一个带阻,用汉明窗:

% FIR带阻设计 Fs = 10e3; frange = [1800 2200]; % 阻带范围 n = 50; % 50阶 b = fir1(n, [frange(1)/(Fs/2), frange(2)/(Fs/2)], 'stop', hamming(n+1)); % 零极点图观察稳定性 zplane(b,1); % FIR只有零点

FIR的阶数明显比IIR高,但线性相位优势摆在那。fir1的参数顺序有点反直觉——先给归一化截止频率数组,再指定类型。用zplane画图会看到所有零点都在单位圆内或圆上,这就是FIR绝对稳定的证据。

调试滤波器时老司机都爱用fvtool,比自带的freqz更强大:

fvtool(b,a,'Fs',Fs) % 同时显示幅频、相频、群延迟

遇到设计指标不达标时,先检查通带波纹和阻带衰减是否满足要求。实在搞不定就用fdatool图形界面调参,自动生成代码抄作业不香么?不过考试时别指望能用这招。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/3/26 12:13:44

未来已来,“科技+数字” 让展览更互动、更智能!

在科技浪潮汹涌澎湃、数字技术日新月异的当下,传统展览模式正经历着一场前所未有的深刻变革。“科技 数字”的融合,如同为展览行业注入了一股强大的创新动力,让展览告别了以往单向的信息传递模式,变得更加互动、更加智能&#xf…

作者头像 李华
网站建设 2026/4/1 1:54:51

AI数字人赋能:文博展厅数字化转型的“智变”路径

在元宇宙与AIGC技术浪潮的推动下,文博展厅正经历从“静态陈列”到“智慧交互”的颠覆性变革。AI数字人作为核心载体,通过拟人化交互、多模态感知与数据驱动决策,重构了人、空间与信息的关系,为文化传播开辟了沉浸式、个性化、可持…

作者头像 李华
网站建设 2026/3/31 11:17:40

Kafka 技术架构与核心原理深度解析

本文将深入探讨 Apache Kafka 的核心概念、架构设计以及其在消息处理方面的优势。 1. Kafka 简介 Kafka 是一个高性能的分布式流媒体平台。它作为集群运行在多台服务器上,提供极高的可用性和容错性。 在 Kafka 中,数据是以**流(Stream&#x…

作者头像 李华
网站建设 2026/4/3 7:42:13

【资深架构师亲授】:Rust-PHP扩展多版本适配的7大黄金法则

第一章:Rust-PHP扩展多版本适配的核心挑战在构建基于 Rust 编写的 PHP 扩展时,实现对多个 PHP 版本的兼容性支持是一项关键且复杂的技术任务。由于不同 PHP 版本(如 7.4、8.0、8.1 及更高版本)在 Zend 引擎 API 层面存在结构性差异…

作者头像 李华