用微分方程描述的连续时间滤波器举例

news2024/11/15 7:42:21

用微分方程描述的连续时间滤波器举例

  在许多应用中,频率选择性滤波器是用线性常系数微分或差分方程描述的线性时不变系统来实现的。这有许多理由,例如很多具有滤波作用的物理系统都是由微分或差分方程表征的。这方面的一个很好的例子就是在后续将研究的汽车减震系统,在某种程度上这个系统的设计就是为了滤掉由道路表面不平坦引起的高频颠簸和起伏。利用由微分或差分方程描述的滤波器的第二个原因是,它们能很方便地用模拟硬件或数字硬件来实现。另外,由微分或差分方程描述的系统提供了一个极为广泛而灵活的设计空间,例如它可以得到一个很近似于理想的滤波器,或具有所要求的其他特性的滤波器。本讲将研究几个例子,用以说明如何利用微分和差分方程来实现连续时间和离散时间频率选择性滤波器。后续还会见到这类滤波器的其他一些例子,并且一定会对使此类滤波器如此有用的些性质得到更深入的理解。

简单 RC 低通滤波器

htbp

图1. 一阶RC滤波器

电路广泛用于实现连续时间滤波功能。其中最简单的一个例子就是示于图 1 的一阶 RC 电路,图中电压源 v s ( t ) v_s(t) vs(t)是系统的输入。这个电路既能用来实现低通滤波,又能用来实现高通滤波,这取决于以什么作为输出信号。假定取电容器上的电压 v c ( t ) v_c(t) vc(t)作为输出,这时输出电压和输入电压就由下列常系数微分方程所表示:

R C d v c ( t ) d t + v c ( t ) = v s ( t ) (1) R C \frac{\mathrm{d} v_c(t)}{\mathrm{d} t}+v_c(t)=v_s(t) \tag{1} RCdtdvc(t)+vc(t)=vs(t)(1)

假定系统为最初松弛的,由上式描述的系统就是线性时不变的。为了确定频率响应 H ( j ω ) H(j\omega) H(),根据定义,当输入电压 v s ( t ) = e j ω t v_s(t)=e^{j\omega t} vs(t)=et时,输出电压一定是 v c ( t ) = H ( j ω t ) e j ω t v_c(t)=H(j \omega t)e^{j\omega t} vc(t)=H(t)et,将这些代入(1)式,可得
R C d d t [ H ( j ω ) e j ω t ] + H ( j ω ) e j ω t = e j ω t R C \frac{\mathrm{d}}{\mathrm{d} t}\left[H(j \omega) \mathrm{e}^{j \omega t}\right]+H(j \omega) \mathrm{e}^{j \omega t}=\mathrm{e}^{j \omega t} RCdtd[H()et]+H()et=et
或者
R C j ω H ( j ω ) e j ω t + H ( j ω ) e j ω t = e j ω t R C j \omega H(j \omega) \mathrm{e}^{j \omega t}+H(j \omega) \mathrm{e}^{j \omega t}=\mathrm{e}^{j \omega t} RCH()et+H()et=et
由此可直接得出
H ( j ω ) e j ω t = 1 1 + R C j ω e j ω t H(j \omega) \mathrm{e}^{j \omega t}=\frac{1}{1+R C j \omega} \mathrm{e}^{j \omega t} H()et=1+RC1et

H ( j ω ) = 1 1 + R C j ω H(j \omega)=\frac{1}{1+R C j \omega} H()=1+RC1
幅频响应为
∣ H ( j ω ) ∣ = 1 1 + ( R C ω ) 2 |H(j \omega)|=\frac{1}{\sqrt{1+(R C \omega)^2}} H()=1+(RCω)2 1

相频响应为
∠ H ( j ω ) = − arctan ⁡ ( R C ω ) \angle H(j \omega)=-\arctan (RC \omega) H()=arctan(RCω)

该例的频率响应 H ( j ω ) H(j\omega) H()的模和相位如图 2 所示。应该注意到,在频率 ω = 0 \omega=0 ω=0附近, ∣ H ( j ω ) ∣ ≈ 1 |H(j\omega)|\approx1 H()1;而在较大的 ω \omega ω值时(正值或负值), ∣ H ( j ω ) ∣ |H(j\omega)| H()显著较小,事实上就是随 ∣ ω ∣ |\omega| ω增加而平缓地减小。因此,这一简单的 RC 滤波器,在以 v c ( t ) v_c(t) vc(t)为输出的情况下就是一个非理想的低通滤波器。
图2 (a)和(b)分别是RC电路以

图2. (a)和(b)分别是RC电路以电容电压作为输出的频率响应的模和相位图

简单 RC 高通滤波器

将 RC 电路的输出选为电阻两端的电压是另一种选择输出的方式。这时,关联输入和输出的微分方程是
R C d v r ( t ) d t + v r ( t ) = R C d v s ( t ) d t R C \frac{\mathrm{d} v_r(t)}{\mathrm{d} t}+v_r(t)=R C \frac{\mathrm{d} v_s(t)}{\mathrm{d} t} RCdtdvr(t)+vr(t)=RCdtdvs(t)

幅频响应为
∣ G ( j ω ) ∣ = 1 1 + 1 ( ω R C ) 2 |G(j \omega)|=\frac{1}{\sqrt{1+\frac{1}{(\omega R C)^2}}} G()=1+(ωRC)21 1

相频响应为
∠ G ( j ω ) = − arctan ⁡ ( 1 ω R C ) \angle G(j \omega)=-\arctan \left(\frac{1}{\omega R C}\right) G()=arctan(ωRC1)

图 3所示为这个系统频率响应的模和相位。由图可见,该系统衰减掉较低的频率,而让较高的频率通过;也就是对于 ∣ ω ∣ ≫ 1 / R C |\omega|\gg 1/RC ω1/RC的频率有最小的衰减。这就是说,该系统是一个非理想的高通滤波器。

在这里插入图片描述

图3. (a)和(b)分别是RC电路以电阻电压作为输出的频率响应的模和相位图

参考文献:
【1】Alan V Oppenheim, Alan S. Willsky. Signals and Systems, 2nd edition.

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

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

相关文章

消息中间件相关知识简介

一、消息中间件相关知识 1、概述 消息队列已经逐渐成为企业IT系统内部通信的核心手段。它具有低耦合、可靠投递、广播、流量控制、最终一致性等一系列功能,成为异步RPC的主要手段之一。当今市面上有很多主流的消息中间件,如老牌的ActiveMQ、RabbitMQ&am…

Python 基础(十五):模块

❤️ 博客主页:水滴技术 🌸 订阅专栏:Python 入门核心技术 🚀 支持水滴:点赞👍 收藏⭐ 留言💬 文章目录 一、什么是模块二、自定义模块三、引用其它模块3.1、使用 import 引用模块3.2、使用 f…

揭秘Java 8的新特性:Stream API的使用和实践

🎉🎉🎉点进来你就是我的人了博主主页:🙈🙈🙈戳一戳,欢迎大佬指点! 欢迎志同道合的朋友一起加油喔🤺🤺🤺 目录 1. 集合处理数据的弊端 2. Stream流式思想概述…

VN8911/VN8912(A)/VN8914/VN8910(A)上安装驱动

问题: 如何在 VN8911、VN8912(A) 或 VN8914 设备上安装驱动程序? 背景: VN8911、VN8912(A) 或 VN8914 设备 [下面概括为 VN8900 系列,不包括 VN8910(A)] 与 CANoe 一起使用时作为分布式实时系统运行 [参见下面的 CANoe 11.0 和 V…

vue插槽概念解释

官方文档 https://cn.vuejs.org/guide/introduction.html 什么是插槽 在 Vue.js 中,插槽(Slots)是一项非常有效的功能,它允许我们在组件中预留一个占位符,供父组件插入自定义的内容。 具体来说,当一个组件…

Linux和Shell:开源力量与命令行之美

目录 一、概述二、Linux的简单介绍三、Shell的简单介绍四、Linux和Shell的应用领域五、Shell编程结语: 一、概述 Linux和Shell是开源世界中不可或缺的两个重要组成部分。Linux作为一种自由和开放的操作系统,以其稳定性、安全性和可定制性而备受推崇。而S…

【ProNoC】Chap.1 ProNoC生成2x2的mesh型的4核片上网络系统;实现NoC的RTL设计

【ProNoC】Chap.1 ProNoC生成2x2的mesh型的4核片上网络系统;实现NoC的RTL设计 0. NoC多核片上网络生成器ProNoCProNoC的功能实现 1. 生成一个叫做Mor1kx SoC的单个Tile(包含NI网络接口)1.1 打开ProNoC用于生成Tile的GUI界面1.2 为Tile添加时钟…

Python基础篇(四):基本数据类型的学习和示例

Python基础篇(三):基本语句的示例和说明 基本数据类型的学习和操作 1. 数值类型1.1 整数(int)1.2 浮点数(float)1.3 复数(complex) 2. 字符串类型2.1 字符串的定义2.2 转义字符2.3 多行字符串2…

Vue-几种插槽(slot)的使用

插槽(slot) 插槽在vue中是一种很常见的写法,让父组件可以向子组件指定位置插入html结构,也是一种组件间通信的方式 一共有三种分类:默认插槽、具名插槽、作用域插槽,下面一一根据案例改造说明 1 基本案例 首先编写一个基本的案…

12.1 物业管理项目中的新知识点

1.RESTful 2.雪花ID 3.mybatis的动态sql 很多时候需要实现多条件查询&#xff0c;手动判断拼接sql有些麻烦 mybatis提供了一个动态sql实现多条件查询的方法 3.1 if元素 使用if元素可以根据条件来包含或排除某个SQL片段 <select id"search" resultType"Hous…

OpenCV——实验结果输出《图像金字塔》和《图像轮廓》

1.高斯金字塔 img cv2.imread(./AM.png) print(img.shape) upcv2.pyrUp(img) cv_show(up,up)#只是将图片的大小改变了,并且是2倍2倍的增长。 print (up.shape) downcv2.pyrDown(img) cv_show(down,down) print(down.shape) up_downcv2.pyrDown(up) cv_show(up_down,np.hstack…

SSMP整合案例(4) Spring Boot整合MyBatis-Plus实现分页查询

文章 SSMP整合案例(3) 创建数据层并在测试类中运行数据库增删查改操作我们编写了MyBatis-Plus以Druid为数据源的方式 做了数据库的增删查改操作 那么 下面我们继续写 分页查询 我们 先写这样一段代码 bookDao.selectPage()selectPage就是BaseMapper提供给我们的分页查询函数 但…

【Spring Cloud + RabbitMQ 实现分布式消息总线】—— 每天一点小知识

&#x1f4a7; S p r i n g C l o u d R a b b i t M Q 实现分布式消息总线 \color{#FF1493}{Spring Cloud RabbitMQ 实现分布式消息总线} SpringCloudRabbitMQ实现分布式消息总线&#x1f4a7; &#x1f337; 仰望天空&#xff0c;妳我亦是行人.✨ &#x1f984; …

redis集群原理

redis是单线程&#xff0c;但是一般的作为缓存使用的话&#xff0c;redis足够了&#xff0c;因为它的读写速度太快了。 官方的一个简单测试&#xff1a; 测试完成了50个并发执行100000个请求。 设置和获取的值是一个256字节字符串。 结果:读的速度是110000次/s,写的速度是81000…

基于JAVA的高校心理咨询系统/ 基于web的高校心理咨询系统/心理咨询系统

​ 摘 要 近年来,基于网络的高校心理咨询系统已成为社会的发展趋势&#xff0c;我国对高校心理咨询非常重视&#xff0c; 高校心理咨询工作面临着严峻考验&#xff0c;而网络的普及为高校心理咨询的信息化提供了必要的条件。本文主要研究了如何设计和开发基于B/S 高校心理咨询…

[进阶]反射-认识反射、获取类

反射 反射就是&#xff1a;加载类&#xff0c;并允许以编程的方式解剖类中的各种成分&#xff08;成员变量、方法、构造器等&#xff09;。 反射学什么&#xff1f; 学习获取类的信息、操作它们 反射第一步&#xff1a;加载类&#xff0c;获取类的字节码&#xff1a;Class对…

十大基础算法

一、选择排序 过程简单描述&#xff1a; 首先&#xff0c;找到数组中最小的那个元素&#xff0c;其次&#xff0c;将它和数组的第一个元素交换位置(如果第一个元素就是最小元素那么它就和自己交换)。其次&#xff0c;在剩下的元素中找到最小的元素&#xff0c;将它与数组的第二…

翻筋斗觅食策略改进海鸥优化算法

目录 一、非线性参数A策略 二、翻筋斗觅食策略 基本 SOA 有一些局限性&#xff0c;例如容易陷入局部最优值、后期收敛缓慢、勘探与开发能力不平衡等&#xff0c;在求解复杂优化问题时尤甚。为了改善基本SOA的不足&#xff0c;提出一种基于翻筋斗觅食策略的改进 SOA(SFSOA)。…

【Neo4j教程之CQL函数基本使用】

&#x1f680; Neo4j &#x1f680; &#x1f332; 算法刷题专栏 | 面试必备算法 | 面试高频算法 &#x1f340; &#x1f332; 越难的东西,越要努力坚持&#xff0c;因为它具有很高的价值&#xff0c;算法就是这样✨ &#x1f332; 作者简介&#xff1a;硕风和炜&#xff0c;C…

基于stm32单片机的ESP-01S模块(wifi模块)的使用

一、开发环境 开发板&#xff1a;野火stm32f407开发板 wifi模块&#xff1a;ESP-01S&#xff08;核心处理器 ESP8266 &#xff09;&#xff0c;固件版本&#xff08;MQTT固件&#xff09; 操作系统&#xff1a;rt-thread操作系统 二、ESP-01S模块介绍 ESP-01S 是由安信可科技开…