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

[信号与系统]关于双线性变换

前言

本文还是前置知识

双线性变换法

双线性变换法(Bilinear Transform)是一种用于将模拟滤波器转换为数字滤波器的方法。它通过将模拟域中的s平面上的传递函数映射到数字域中的z平面上的传递函数来实现这一转换。双线性变换法保证了频率响应在转换过程中不会产生混叠,并且在设计IIR滤波器时非常常用。

双线性变换的基本原理

双线性变换通过以下关系将s平面的传递函数转换为z平面的传递函数:

s = 2 T ⋅ 1 − z − 1 1 + z − 1 s = \frac{2}{T} \cdot \frac{1 - z^{-1}}{1 + z^{-1}} s=T21+z11z1

其中:

  • s s s 是模拟域的复数频率变量。
  • z z z 是数字域的复数频率变量。
  • T T T 是采样周期。

这个公式将s平面的每一点双线性映射到z平面的一个点上,并且这种映射是保角的,即保持了角度关系。

双线性变换是一种用于将连续时间系统的频域表示(通常用拉普拉斯变换表示)转换为离散时间系统频域表示(通常用Z变换表示)的方法。这种转换特别有用,因为它允许我们将连续时间滤波器的设计(模拟滤波器)转化为离散时间滤波器的设计(数字滤波器),以便在数字信号处理(DSP)系统中实现。

作用:

双线性变换是将连续时间系统(模拟信号)的频域表示转换为离散时间系统(数字信号)频域表示的一种方法。通过这种变换,我们可以设计数字滤波器,使其频率响应与对应的模拟滤波器尽可能匹配。

转换过程

  1. 模拟传递函数
    首先,从模拟滤波器的设计得到其传递函数 H ( s ) H(s) H(s)

  2. 应用双线性变换
    使用双线性变换公式,将 s s s 替换为 2 T ⋅ 1 − z − 1 1 + z − 1 \frac{2}{T} \cdot \frac{1 - z^{-1}}{1 + z^{-1}} T21+z11z1,得到数字域的传递函数 H ( z ) H(z) H(z)

  3. 化简传递函数
    将得到的 H ( z ) H(z) H(z) 化简为标准形式,通常表示为两个多项式的比值。

例子

假设我们有一个一阶低通模拟滤波器,其传递函数为:

H ( s ) = ω c s + ω c H(s) = \frac{\omega_c}{s + \omega_c} H(s)=s+ωcωc

其中, ω c \omega_c ωc 是截止角频率。

步骤1:应用双线性变换

使用双线性变换公式,将 s s s 替换为 2 T ⋅ 1 − z − 1 1 + z − 1 \frac{2}{T} \cdot \frac{1 - z^{-1}}{1 + z^{-1}} T21+z11z1

H ( z ) = ω c 2 T ⋅ 1 − z − 1 1 + z − 1 + ω c H(z) = \frac{\omega_c}{\frac{2}{T} \cdot \frac{1 - z^{-1}}{1 + z^{-1}} + \omega_c} H(z)=T21+z11z1+ωcωc

步骤2:化简传递函数

进行化简:

H ( z ) = ω c ( 1 + z − 1 ) 2 T ( 1 − z − 1 ) + ω c ( 1 + z − 1 ) H(z) = \frac{\omega_c (1 + z^{-1})}{\frac{2}{T} (1 - z^{-1}) + \omega_c (1 + z^{-1})} H(z)=T2(1z1)+ωc(1+z1)ωc(1+z1)

H ( z ) = ω c ( 1 + z − 1 ) 2 T − 2 T z − 1 + ω c + ω c z − 1 H(z) = \frac{\omega_c (1 + z^{-1})}{\frac{2}{T} - \frac{2}{T} z^{-1} + \omega_c + \omega_c z^{-1}} H(z)=T2T2z1+ωc+ωcz1ωc(1+z1)

H ( z ) = ω c ( 1 + z − 1 ) ( 2 T + ω c ) + ( ω c − 2 T ) z − 1 H(z) = \frac{\omega_c (1 + z^{-1})}{\left( \frac{2}{T} + \omega_c \right) + \left( \omega_c - \frac{2}{T} \right) z^{-1}} H(z)=(T2+ωc)+(ωcT2)z1ωc(1+z1)

最后将分子和分母乘以 T / 2 T/2 T/2 进行化简:

H ( z ) = ω c T 2 ( 1 + z − 1 ) 1 + ( ω c T − 2 ω c T + 2 ) z − 1 H(z) = \frac{\frac{\omega_c T}{2} (1 + z^{-1})}{1 + \left( \frac{\omega_c T - 2}{\omega_c T + 2} \right) z^{-1}} H(z)=1+(ωcT+2ωcT2)z12ωcT(1+z1)

这就是数字滤波器的传递函数。

相关文章:

  • Vulhub——Log4j、solr
  • Java用文件流mask文本文件某些特定字段
  • 使用新语法连接Qt 5中重载的信号和槽
  • 输出数据到excel中
  • 如何优雅地使用 console.log 打印数组或对象
  • 51单片机STC89C52RC——4.1 独立按键(数码管显示按键值)
  • 机器人里程计(Odometry)
  • Meta-Llama-3-8B 部署
  • 英语(1)-读音规则-连读-失去爆破
  • AJAX 数据库
  • 发那科机器人IO 分配
  • C# WPF入门学习主线篇(二十三)—— 控件模板(ControlTemplate)和数据模板(DataTemplate)
  • [pycrypto][python]pycrypto所有whl文件下载地址汇总
  • 基于自编码器的心电图信号异常检测(Python)
  • 近期学习文章
  • __proto__ 和 prototype的关系
  • 07.Android之多媒体问题
  • Android 控件背景颜色处理
  • CSS进阶篇--用CSS开启硬件加速来提高网站性能
  •  D - 粉碎叛乱F - 其他起义
  • hadoop入门学习教程--DKHadoop完整安装步骤
  • HTTP 简介
  • JavaScript 奇技淫巧
  • k个最大的数及变种小结
  • Laravel深入学习6 - 应用体系结构:解耦事件处理器
  • linux学习笔记
  • PAT A1017 优先队列
  • Python学习之路16-使用API
  • Tornado学习笔记(1)
  • Travix是如何部署应用程序到Kubernetes上的
  • 不发不行!Netty集成文字图片聊天室外加TCP/IP软硬件通信
  • 从0到1:PostCSS 插件开发最佳实践
  • 基于组件的设计工作流与界面抽象
  • 简单实现一个textarea自适应高度
  • 聊聊directory traversal attack
  • 如何使用 OAuth 2.0 将 LinkedIn 集成入 iOS 应用
  • 少走弯路,给Java 1~5 年程序员的建议
  • 探索 JS 中的模块化
  • 网络应用优化——时延与带宽
  • 用 vue 组件自定义 v-model, 实现一个 Tab 组件。
  • linux 淘宝开源监控工具tsar
  • 仓管云——企业云erp功能有哪些?
  • #《AI中文版》V3 第 1 章 概述
  • #WEB前端(HTML属性)
  • (C语言)求出1,2,5三个数不同个数组合为100的组合个数
  • (windows2012共享文件夹和防火墙设置
  • (附源码)spring boot火车票售卖系统 毕业设计 211004
  • (附源码)springboot社区居家养老互助服务管理平台 毕业设计 062027
  • (求助)用傲游上csdn博客时标签栏和网址栏一直显示袁萌 的头像
  • (十八)三元表达式和列表解析
  • (一)Linux+Windows下安装ffmpeg
  • (原創) 如何讓IE7按第二次Ctrl + Tab時,回到原來的索引標籤? (Web) (IE) (OS) (Windows)...
  • (转)3D模板阴影原理
  • (转)甲方乙方——赵民谈找工作
  • .cfg\.dat\.mak(持续补充)