常用模拟低通滤波器的设计——椭圆滤波器

news2025/1/18 8:14:50

常用模拟低通滤波器的设计——椭圆滤波器

椭圆滤波器又称考尔滤波器,是在通带和阻带范围内都具有等波纹的一种滤波器椭圆滤波器相比其他类型的滤波器,在阶数相同的条件下有最小的通带和阻带波动这一点区别于在通带和阻带都平坦的巴特沃斯滤波器,以及通带平坦、阻带等波纹或是阻带平坦、通带等波纹的切比雪夫滤波器。

椭圆滤波器的特点如下:

  1. 椭圆低通滤波器是一种零、极点型滤波器,它在有限频率范围内存在传输零点和极点。
  2. 椭圆滤波器的通带和阻带都具有等波纹特性,因此通带、阻带逼近特性良好。
  3. 对于同样的性能要求,它比之前两种滤波器所需用的阶数都低,而且它的过渡带比较窄。

    椭圆滤波器振幅平方函数为:A\left (\Omega ^{2} \right ) = \left | H_{a}(j\Omega ) \right |^{2} = \frac{1}{1+\varepsilon ^{2}R_{N}^{2}\left ( \Omega ,L \right )}

    其中,R_{N}\left ( \Omega , L \right ) 为雅可比椭圆函数,L 为一个表示波纹性质的参量。

在 Matlab 中,函数ellipap、ellipord、ellip 用于设计椭圆滤波器。

1、ellipap 函数

在 Matlab 中,函数 ellipap 用于设计椭圆模拟低通滤波器,其调用格式为:

  •   [z, p, k] = ellipap(n, Rp, Rs)      % 返回椭圆模拟低通滤波器的零点z、极点p 和增益 k   

说明:滤波器的阶数为 n ,通带中的纹波为 Rp dB,通带中的峰值为阻带 Rs dB。零点和极点以长度为 n 的列向量 z 和 p 返回,增益以标量 k 返回。如果 n 为奇数,则 z 的长度为 n-1。

       椭圆滤波器可以提供比巴特沃斯和切比雪夫滤波器更陡的幅降特性,但它们在通带和阻带上都是等波纹。在四种滤波器中,椭圆滤波器通常以最低的滤波器阶数满足给定的一组滤波器性能

       函数 ellipap 将椭圆滤波器的通带边缘角频率 w0 设置为 1 ,以获得归一化结果。通带边缘角频率是通带结束时的频率,滤波器的幅值响应为 10^{-\frac{Rp}{20}}

2、ellipord 函数

在 Matlab 中,利用 ellipord 函数可以求出所需要的滤波器的阶数和截止频率,滤波器在通带中的损耗不超过 Rp dB,在阻带中的衰减至少为 Rs dB。其调用格式为:

  •   [n, Wn] = ellipord(Wp, Ws, Rp, Rs)      % 返回数字椭圆滤波器的最小阶数 n ,截止频率 Wn      
  1. Wp为通带边缘频率,从 0~1 标准化,其中 1 对应 pi rad/sample.
  2. Ws为阻带边缘频率,从 0~1 标准化,其中 1 对应 pi rad/sample.
  3. Rp为通带波纹(dB)值.
  4. Rs为阻带最小衰减(dB)值.
  •  [n, Wn] = ellipord(Wp, Ws, Rp, Rs, 's')    % 设计模拟椭圆滤波器的最小阶数 n 和截止频率  Wn      

说明:设计模拟椭圆滤波器的最小阶数 n 和截止频率  Wn 。以 rad/s 为单位指定频率 Wp 和 Ws,通带或阻带可以是无限的。

3、ellip函数

Matlab 提供 ellip 函数用于求解椭圆滤波器的系数,函数调用格式为:

  •   [b, a] = ellip(n, Rp, Rs, Wp)      % 返回具有归一化通带边缘频率 Wp 的 n 阶低通数字滤波器的传递函数系数  

说明:该滤波器具有 Rp dB 为峰间通带波纹和 Rs dB 的阻带衰减,b 为 H(z)的分子多项式系数,a 为 H(z)的分母多项式系数。

  •  [b, a] = ellip(n, Rp, Rs, Wp, ftype)      % 根据 ftype 的值和 Ws 的元素数,设计低通、高通、带通或带阻椭圆滤波器,其中带通和带阻设计为 2n 级。
  •  [z, p, k] = ellip(____)    % 设计椭圆滤波器,并返回其零点、极点和增益  
  •  [A, B, C, D] = ellip(____)    % 设计数字椭圆滤波器,并返回指定其空间状态表示形式的矩阵 
  •  [ ____ ] = ellip(____, 's')    % 设计通带边缘角频率为Ws、阻带衰减为Rs 的模拟椭圆滤波器 

说明:滤波器的传递函数系数 b 和 a,零点z、极点p 、增益 k 、ftype的含义与 cheby1 函数中的相同 。

ftype 包括:'low'、'high'、'bandpass' 及 'stop',含义如下:

  • 'low':指定通带边缘频率为 Wp 的低通滤波器,为默认值。
  • 'high':指定通带边缘频率为 Wp 的高通滤波器。
  • 'bandpass' :指定 2n 阶的带通滤波器,如果 Wp 为两个元素向量,则默认为 'bandpass' 。
  • 'stop':如果 Wp 为两个元素向量,指定 2n 阶的带阻滤波器。

【例7-29】ellipord函数设计椭圆滤波器示例。

% 【例7-29】ellipord函数设计椭圆滤波器示例。
clc, clear, close all

Wp = 3*pi*4*12^3;
Ws = 2*pi*12*12^3;
rp = 2;
rs = 25; % 设计滤波器参数
wp = 1; ws = Ws/Wp; % 对参数归一化
[N, wc] = ellipord(wp, ws, rp, rs, 's'); % 计算滤波器阶数和阻带起始频率
[z, p, k] = ellipap(N, rp, rs); % 计算零点、极点、增益
[b, a] = zp2tf(z, p, k); % 计算系统函数系数多项式
w = 0:0.03*pi:2*pi;
[h,w] = freqs(b,a,w); % 模拟滤波器的频率响应
plot(w, 20*log10(abs(h)),'k');
xlabel('\lambda'); ylabel('A(\lambda)/dB');
title('模拟椭圆低通滤波器幅频响应曲线');  grid on;

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

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

相关文章

电压220V与380V区别

电压220V与380V区别 1、应用场景2、区分2.1 从室内插座区分:2.2 从房间配电盒空气开关上区分 1、应用场景 绝大部分的小区居民用电,包括农村村民家用电,用的都是220V的电压,甭管家里装了多少台空调,用了多少电器&#…

汽车仪表Cluster/DashBoard芯片型号

前言 随着汽车四化的推进,可以说汽车仪表也变成越来越智能化的一个ECU部件了。市面上的车型很多,油车发展了很多年,都有仪表,电车也发展起来了,车型也非常丰富,也都有仪表。仪表现在是作为多屏中一个屏存在的,现在车上最多的就是屏了,最大的要算中控屏了,有的还有空调…

十一、OpenGL的坐标系统

第一部分概念 OpenGL 坐标系统:OpenGL 坐标系中每个顶点的 x,y,z 坐标都应该在 -1.0 到 1.0 之间,超出这个坐标范围的顶点都将不可见。将一个物体(图像)渲染到屏幕上,通常经过将物体坐标转换为…

30天从入门到精通TensorFlow1.x 第七天,TensorFlow1.x 模型save()和restore()

文章目录 一、接前一天二、TensorFlow中模型的保存和加载方式三、模型的保存和加载Save()类1. 创建方法以及文件组成2. Saver类的重要参数参数:重要函数参数: 3. Saver类的主要使用函数 四、keras的模型保存和加载1. Keras比较简单:一般有三种…

PLSQL - Months_Between的理解和使用

Months_Between是一个内置的日期操纵函数,用于计算两个日期相隔的月份数。Oracle文档的介绍如下: MONTHS_BETWEEN returns number of months between dates date1 and date2. The month and the last day of the month are defined by the parameter NL…

jenkins主从节点安装及pipeline构建

一、背景 通过Jenkins主节点配置的pipeline下发给从节点执行,从而兼容容器化执行 二、安装主节点 docker-compose.yml jenkins:user: rootrestart: alwaysimage: jenkinsci/blueoceancontainer_name: jenkins# network_mode: hostports:- "8081:8080"-…

BOS EDI Excel 方案简介

BOS EDI & Excel 方案简介 本文将继续分享BOS示例工作流:使用Excel端口和Email端口生成一系列文件,完成与BOS的EDI通信。 下载工作流 下载示例文件 BOS EDI到Excel示例流具有预配置的端口,用于从BOS的EDI集成规范转换以下交易集&…

2022年国赛高教杯数学建模D题气象报文信息卫星通信传输解题全过程文档及程序

2022年国赛高教杯数学建模 D题 气象报文信息卫星通信传输 原题再现 在某些紧急救援任务中,需要进行物资空投。在地面通信系统瘫痪的情形下,为了更好地获得准确完整的地面气象观测信息,通常对任务区域的重要目标点采用派遣气象分队的方式来获…

如果让你来设计CPU之内存篇

哈喽,我是子牙,一个很卷的硬核男人。深入研究Windows内核、Linux内核、Hotspot源码…聚焦做那些大家想学没地方学的课程:手写操作系统、手写虚拟机、手写模拟器、手写编程语言… 目前已经做了两个成熟的课程:手写JVM、手写OS&…

PPP认证协议详解

PPP认证协议详解 1. 引言 PPP(Point-to-Point Protocol)认证协议在计算机网络中扮演着重要的角色。它是一种用于建立和认证网络连接的协议,广泛应用于各种网络环境,包括互联网接入、虚拟专用网络(VPN)和远…

【头歌】试的学习

1.基本路径测试 2.画出程序控制流图 3.计算流图的环形复杂度 4.确定线性独立路径的基本集合 5.设计测试用例 基本路径测试 除了逻辑覆盖,还有一种常用的白盒测试的测试方法:基本路径测试。基本路径测试是 Tom McCabe提出的一种白盒测试技术。使用这种技…

c++学习——继承

继承 **继承****继承的案例****继承的三种方式方式&#xff1a;****继承中的对象类型****继承中的构造和析构顺序****继承中同名成员的处理****同名静态成员处理****多继承语法****菱形继承** 继承 普通的输出 #define _CRT_SECURE_NO_WARNINGS #include <iostream> us…

8. 让java性能提升的JIT深度解剖

JVM性能调优 1. C1、C2与Graal编译器1.1 C1编译器1.2 C2编译器1.3 分层编译 2. 热点代码3. 热点探测4. 方法调用计数器5. 回边计数器6. 编译优化技术6.1 方法内联 7. 锁消除8. 栈上分配9. 逃逸分析技术10. 标量替换 本文是按照自己的理解进行笔记总结&#xff0c;如有不正确的地…

【LeetCode热题100】打卡第14天:下一个排列最长有效括号

文章目录 【LeetCode热题100】打卡第14天&#xff1a;下一个排列&最长有效括号下一个排列⛅前言&#x1f512;题目&#x1f511;题解 最长有效括号&#x1f512;题目&#x1f511;题解 【LeetCode热题100】打卡第14天&#xff1a;下一个排列&最长有效括号 下一个排列 …

如何入门挖掘SRC?

挖洞其实算是web渗透中第一个明确的关卡 越过这个坎&#xff0c;从此天高任鸟飞&#xff0c;海阔凭鱼跃。越不过&#xff0c;就永远越不过。 先说平台&#xff1a; 漏洞响应平台&#xff1a;实战渗透测试&#xff0c;同时能获得一些外快。 补天漏洞响应平台&#xff1a;http…

Netty核心技术五--Netty高性能架构设计

1. 线程模型基本介绍 不同的线程模式&#xff0c;对程序的性能有很大影响&#xff0c;为了搞清Netty 线程模式&#xff0c;我们来系统的讲解下 各个线程模式&#xff0c; 最后看看Netty 线程模型有什么优越性.目前存在的线程模型有: 传统阻塞 I/O 服务模型Reactor 模式 根据 R…

郭光灿团队实现低温集成量子纠缠光源

中国科大郭光灿院士团队在集成化量子光源制备研究中取得重要进展。该团队任希锋研究组基于低温集成自发四波混频过程&#xff0c;展示了低温条件下集成量子纠缠光源的制备&#xff0c;相关成果于6月2日发表在光学知名学术期刊Optica上。 “利用低温综合四波混合技术产生纠缠现象…

Mapbox表达式详细解读

初学mapbox 的小伙伴们一定会被表达式给弄的晕头转向的。明明条件判断或者回调函数能解决的问题。mapbox里非得让你用表达式。这确实比较ex。 不过我们既然遇到了,也不要怕,这篇文章我就带着大家一点一点的搞明白这个所谓的表达式。 首先从宏观上讲,要知道为什么使用表达式…

【面试高频】cookie、session、token?看完再也不担心被问了

在以往的面试记录里&#xff0c;我又看到了一个多次被问到的知识点&#xff0c;那就是 cookie、session、token 的区别有哪些&#xff1f;如果现在来问你&#xff0c;不知道你能否说清楚呢&#xff1f; 今天不仅仅是整理出这三者的区别&#xff0c;更重要的是能够真正去理解这三…

Python | print写入日志

Python | print写入日志 有时我们需要将屏幕上打印的消息保存到一个文件中&#xff0c;如果每条信息都通过调用写入函数来实现&#xff0c;就太麻烦了 这里自己定义1个日志类&#xff0c;然后将 sys.stdout 设置为该类即可&#xff0c;非常方便 sys.stdout Logger(fileName …