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

信号与系统 - 从方波到频谱:周期信号傅里叶级数的几何与物理诠释

1. 从方波说起一个工程直觉的切入点很多朋友一听到“傅里叶级数”、“频谱”这些词第一反应可能就是头疼满眼的积分号和复数感觉离实际工程应用很远。我刚开始学信号与系统的时候也是这种感觉直到我遇到了方波这个老朋友。方波太常见了从数字电路的时钟信号到老式电视机的扫描线再到简单的开关电源它无处不在。但你想过没有一个棱角分明、非黑即白的方波怎么可能和光滑、连续的正弦波扯上关系呢这就像有人说一块坚硬的砖头其实是由无数个柔软的气球组合而成的听起来简直不可思议。但傅里叶老爷子告诉我们能而且必须能。这就是我们今天要聊的核心如何用一系列不同频率的正弦波或复指数波完美地“拼”出一个方波并理解这背后强大的几何与物理意义。我们先别急着看公式。想象一下你是一个调音师面前有一个合成器它只能发出纯净的正弦波。你的任务是合成一个方波的声音。你会怎么做你可能会先试一个低频的、和方波周期相同的正弦波这叫基波。听起来有点像但圆润光滑完全没有方波那种“咔哒”一下的转折感。于是你开始加入一些“佐料”频率是基波3倍、5倍、7倍…的正弦波这些叫奇次谐波并且精心调整每个波的音量幅度。你会发现加入的谐波越多合成出来的波形就越像方波尤其是那个直上直下的边沿会变得越来越陡峭。这个“用简单波合成复杂波”的过程就是傅里叶级数展开最朴素的工程思想。所以傅里叶级数展开不是什么魔法它就是一种信号分析的“配方”或“食谱”。对于任何一个周期信号比如我们的方波这份食谱会明确告诉你需要多少直流分量可以理解为信号的“基准线”需要哪些频率的正弦/余弦分量以及每种分量具体要加多少幅度和怎么加相位。这份食谱就是频谱。接下来我们就亲手用这个“食谱”从零开始“烹饪”出一个方波并看看这份食谱频谱到底长什么样为什么它如此有效。2. 傅里叶级数的“烹饪指南”数学公式与物理意义好了有了直觉上的认识我们得看看厨房的“操作手册”了。傅里叶级数有两种常见的“菜谱”写法三角形式和指数形式。它们本质是等价的就像中餐菜谱里的“克”和西餐的“盎司”可以换算一样但用在不同的“烹饪场景”下各有方便之处。2.1 三角形式最直观的“叠加”视角三角形式的傅里叶级数展开就是我们刚才直觉里用的那种它把一个周期信号f(t)写成下面这个样子f(t) a₀/2 Σ [aₙ * cos(nω₀t) bₙ * sin(nω₀t)]求和从 n1 到无穷别被这个求和符号吓到我们拆开看a₀/2这就是直流分量。它代表了信号在整个周期内的平均值。对于我们的方波假设幅度在0和1之间跳变它的平均值就是0.5所以a₀会是1因为公式里除以了2。aₙ * cos(nω₀t)这是余弦分量。ω₀ 2π/T是基波角频率T是信号周期。n1对应基波余弦n2对应二次谐波余弦以此类推。aₙ就是这个余弦分量的幅度。bₙ * sin(nω₀t)这是正弦分量。同理bₙ是正弦分量的幅度。那么最关键的问题来了这些aₙ和bₙ怎么求这就是傅里叶系数的计算公式它们不是猜出来的而是通过一个非常精妙的数学性质——“正交性”——推导出来的。你可以这样理解“正交”就像三维空间里x轴、y轴、z轴两两垂直互相独立一个向量在x轴上的投影不会受到它在y轴上分量任何影响。在函数的世界里cos(nω₀t)和cos(mω₀t)当n≠m时以及sin(nω₀t)和sin(mω₀t)还有cos和sin之间在同一个周期内积分结果都是0。这就是三角正交函数集。利用这个“正交投影”的思想我们可以像求一个向量在x轴上的坐标一样求出信号f(t)在某个特定频率的余弦波或正弦波上的“投影量”。具体公式如下直流系数a₀ (2/T) ∫ f(t) dt积分在一个周期T内余弦系数aₙ (2/T) ∫ f(t) * cos(nω₀t) dt正弦系数bₙ (2/T) ∫ f(t) * sin(nω₀t) dt物理意义aₙ的大小直接反映了信号f(t)与cos(nω₀t)这个“模板”的相似程度。积分就是一种“比对”操作。如果信号在某段时间内和余弦波变化趋势一致乘积的积分就大说明这个频率的余弦分量强反之则弱甚至为零。2.2 指数形式更简洁有力的“旋转”视角三角形式很直观但计算起来有时麻烦特别是涉及到相位的时候。而指数形式借助欧拉公式e^(jθ) cosθ j sinθ把正弦和余弦统一成了一个更强大的工具——复指数函数e^(jωt)。它的展开式非常简洁f(t) Σ cₖ * e^(jkω₀t)求和从 k-∞ 到 ∞这里的cₖ就是指数形式的傅里叶系数它是一个复数。这个复数包含了我们之前说的幅度和相位两层信息。它的计算公式也极其对称优美cₖ (1/T) ∫ f(t) * e^(-jkω₀t) dt为什么说它提供了“旋转”视角因为e^(jωt)在数学上可以表示一个在复平面上以角速度ω旋转的单位向量。那么cₖ * e^(jkω₀t)就表示一个长度为|cₖ|幅度、初始角度为∠cₖ相位、以kω₀速度旋转的向量。傅里叶级数展开的几何意义就是用无数个不同转速频率的旋转向量去合成那个在时间轴上变化的周期信号。在t0时刻所有这些旋转向量的起点即cₖ的矢量和就对应了信号在t0时刻的值。随着时间流逝这些向量各自旋转它们的矢量和尖端划过的轨迹就是信号f(t)的波形。这个图像比单纯的加减法要生动得多它将时域的波形变化与频域中一系列旋转向量的合成联系了起来。3. 实战手撕方波的频谱理论说得再多不如亲手算一遍。我们就拿一个周期为T、占空比50%即高电平持续T/2、幅度在0和1之间跳变的经典方波开刀。为了计算方便我们把它设定为一个偶函数即关于纵轴对称。这意味着它的波形在时间零点左右对称。第一步判断分量构成由于它是偶函数 (f(t) f(-t))而正弦函数是奇函数 (sin(-x) -sin(x))。一个偶函数与奇函数相乘在一个对称区间内积分结果必然为0。所以根据公式bₙ (2/T) ∫ f(t) * sin(nω₀t) dt所有的bₙ正弦分量系数都等于0。这就是信号奇偶性对频谱的影响偶函数没有正弦分量奇函数没有余弦分量。我们的方波只剩下直流和余弦分量。第二步计算直流分量a₀a₀ (2/T) ∫ f(t) dt。在一个周期T内方波有一半时间T/2为1一半时间为0。所以积分结果是(1 * T/2 0 * T/2) T/2。再乘以2/T得到a₀ 1。注意在三角形式展开式f(t) a₀/2 ...中直流分量是a₀/2 0.5。这完全符合我们的直觉方波的平均值就是0.5。第三步计算余弦系数aₙaₙ (2/T) ∫ f(t) * cos(nω₀t) dt。因为方波是偶函数我们可以在对称区间[-T/4, T/4]高电平区间上计算并将结果乘以2。经过积分运算具体过程涉及基本的积分公式这里略去细节我们可以得到一个非常简洁的结果aₙ (2/(nπ)) * sin(nπ/2)第四步分析结果得到频谱这个aₙ的表达式信息量极大我们代入几个n值看看当n1基波a₁ (2/π) * sin(π/2) 2/π ≈ 0.6366当n2二次谐波a₂ (2/(2π)) * sin(π) (1/π) * 0 0当n3三次谐波a₃ (2/(3π)) * sin(3π/2) -2/(3π) ≈ -0.2122当n4a₄ 0当n5a₅ 2/(5π) ≈ 0.1273规律立刻出现了所有偶数次谐波n2,4,6...的系数aₙ均为0。这是因为sin(nπ/2)在n为偶数时为0。这意味着我们的方波只包含奇次谐波1次3次5次…。奇次谐波的幅度按照1/n的规律衰减。基波幅度最大三次谐波幅度是基波的1/3五次是1/5以此类推。系数的正负号代表了相位。a₃是负的这意味着三次谐波余弦分量实际上是|a₃| * cos(3ω₀t π)即它有一个180度π弧度的相移。现在我们可以写出这个方波的三角形式傅里叶级数近似了取前几项f(t) ≈ 0.5 0.6366*cos(ω₀t) - 0.2122*cos(3ω₀t) 0.1273*cos(5ω₀t) - 0.0909*cos(7ω₀t) ...第五步可视化合成过程我们可以用编程比如Python的NumPy和Matplotlib来可视化这个合成过程。你会看到当只加入直流和基波时波形是一个平滑的余弦波。加入三次谐波后波形的顶部开始变平底部开始变平并且出现了“肩膀”。随着加入的奇次谐波越来越多比如到第19次谐波合成波形越来越接近一个理想的方波平顶更平上升沿和下降沿更陡只是在跳变点附近会出现一些振荡这称为吉布斯现象。这个动态的合成过程是理解傅里叶级数最有力的工具它把抽象的公式变成了直观的动画。4. 从系数到频谱物理意义的终极诠释计算出了系数我们手里就拿满了这份“食谱”。但怎么呈现它呢这就是频谱图。频谱图是信号频域分析的“身份证”它一目了然地告诉我们信号的能量分布在哪些频率上。对于三角形式我们通常画两种图幅度谱横坐标是频率nω₀或nf₀纵坐标是每个频率分量的幅度Aₙ。对于我们的方波Aₙ |aₙ|因为bₙ0。你会看到在f₀, 3f₀, 5f₀...这些离散的频率点上有一系列谱线其高度按1/n递减。偶数频率点则为空。这张图告诉我们方波的能量集中在基波和奇次谐波上且频率越高能量越小。相位谱横坐标同样是频率纵坐标是每个频率分量的初相位φₙ。对于我们的方波由于只有余弦项相位要么是0度aₙ0要么是180度aₙ0。相位谱说明了各个分量在时间起点上的对齐关系。对于指数形式cₖ因为它是个复数其模|cₖ|就是对应频率分量的幅度的一半|cₖ| Aₙ/2其辐角∠cₖ就是相位。而且由于cₖ的索引k包含负数k ±n所以指数形式的频谱图在正负频率上对称出现这完全是数学处理的便利性导致的物理上我们只关心正频率部分。频谱系数cₖ或aₙ, bₙ的物理含义到底是什么我认为可以总结为三点能量分布指示器|cₖ|²的大小正比于该频率分量所携带的功率。方波的谐波幅度以1/n衰减意味着功率以1/n²衰减高频分量能量很小。系统响应的“通行证”当一个方波信号通过一个物理系统比如一个滤波器或放大器时系统对不同频率的响应不同。频谱告诉我们信号里有什么频率从而可以预测信号通过系统后会变成什么样。例如如果一个低通滤波器把三次以上谐波都滤掉了那输出就再也不是方波而是一个接近正弦波的平滑波形。信号特征的“指纹”不同的周期信号有截然不同的频谱。方波是奇次谐波衰减三角波是奇次谐波以1/n²衰减锯齿波则包含所有整数次谐波。看频谱就能区分信号。从方波这个具体案例出发我们完成了一次完整的傅里叶级数之旅从工程直觉的猜想到数学公式的推导再到亲手计算系数最后解读频谱的物理意义。这个过程的核心思想就是分解与合成时域与频域的桥梁。理解了这个你再去看信号的滤波、采样、调制这些通信和信号处理领域的核心概念就有了坚实的基石。我当年就是通过反复“折磨”这个方波才真正把傅里叶级数从一堆符号变成了脑子里清晰的图像。下次当你听到数字电路里方波时钟的嗡嗡声时或许可以想想那里面其实正演奏着一曲由基波和无数奇次谐波组成的复杂交响乐呢。

相关文章:

信号与系统 - 从方波到频谱:周期信号傅里叶级数的几何与物理诠释

1. 从方波说起:一个工程直觉的切入点 很多朋友一听到“傅里叶级数”、“频谱”这些词,第一反应可能就是头疼,满眼的积分号和复数,感觉离实际工程应用很远。我刚开始学信号与系统的时候也是这种感觉,直到我遇到了方波这…...

Windows系统下Typora的安装与激活全流程解析

1. 从零开始:为什么选择Typora以及如何获取它 如果你经常需要写点东西,无论是技术文档、学习笔记,还是日常的随笔,那你大概率听说过Markdown。这种用简单符号就能搞定排名的轻量级标记语言,简直是文字工作者的福音。而…...

小学生玩转Arduino---------智能避障小助手

1. 从“倒车指挥员”到“智能避障小助手” 上次我们一起做了一个“倒车指挥员”,用超声波测距器和蜂鸣器模拟了倒车雷达,是不是觉得特别酷?很多小朋友做完之后跑来问我:“老师,这个只能装在‘车’后面吗?能…...

Redis单机多实例部署:从端口隔离到资源优化实战

1. 为什么要在单台机器上跑多个Redis?聊聊我的真实经历 你可能觉得,一台服务器上装一个Redis,让它监听默认的6379端口,这不是天经地义的事情吗?我以前也是这么想的,直到我遇到了下面这些“甜蜜的烦恼”。 最…...

VideoAgentTrek Screen Filter 模型版本管理与回滚策略

VideoAgentTrek Screen Filter 模型版本管理与回滚策略 最近在星图GPU平台上部署VideoAgentTrek Screen Filter模型,遇到了一个挺实际的问题:新版本上线后,效果反而不如老版本稳定,想退回去还挺麻烦。这让我意识到,模…...

Thonny IDE:专为Python初学者设计的轻量级开发环境

1. 为什么说Thonny是Python初学者的“梦中情器”? 如果你刚刚接触编程,面对满屏的代码和复杂的开发工具,是不是感觉有点无从下手?别担心,这种感觉每个程序员都经历过。我刚开始学Python那会儿,光是配置环境…...

基于立创·天猛星MSPM0G3507开发板的电机PID控制实战:编码器测速、定距与曲线显示

基于立创天猛星MSPM0G3507开发板的电机PID控制实战:编码器测速、定距与曲线显示 最近有不少参加电赛或者刚开始学电机控制的朋友问我,PID算法听起来挺复杂,到底怎么在单片机上跑起来,又怎么调参呢?正好,我手…...

突破百度网盘限速壁垒:baidu-wangpan-parse直链解析技术全攻略

突破百度网盘限速壁垒:baidu-wangpan-parse直链解析技术全攻略 【免费下载链接】baidu-wangpan-parse 获取百度网盘分享文件的下载地址 项目地址: https://gitcode.com/gh_mirrors/ba/baidu-wangpan-parse 在数字化协作时代,百度网盘作为国内用户…...

Python flask 大学生运动会管理系统的分析与设计

目录项目技术支持可定制开发之功能创新亮点源码获取详细视频演示 :文章底部获取博主联系方式!同行可合作项目技术支持 前端开发框架:vue.js 数据库 mysql 版本不限 数据库工具:Navicat/SQLyog/ MySQL Workbench等都可以 后端语言框架支持&am…...

Stable Yogi Leather-Dress-Collection实战案例:ACG周边设计师的皮衣风格探索

Stable Yogi Leather-Dress-Collection实战案例:ACG周边设计师的皮衣风格探索 1. 引言:当二次元角色穿上定制皮衣 作为一名ACG周边设计师,你是否曾为笔下角色千篇一律的服装风格而苦恼?或者,在构思新的角色设定时&am…...

突破式重构:GHelper轻量级硬件控制工具的性能优化革命

突破式重构:GHelper轻量级硬件控制工具的性能优化革命 【免费下载链接】g-helper Lightweight Armoury Crate alternative for Asus laptops. Control tool for ROG Zephyrus G14, G15, G16, M16, Flow X13, Flow X16, TUF, Strix, Scar and other models 项目地址…...

自定义字面量实战

1、非修改序列算法这些算法不会改变它们所操作的容器中的元素。1.1 find 和 find_iffind(begin, end, value):查找第一个等于 value 的元素,返回迭代器(未找到返回 end)。find_if(begin, end, predicate):查找第一个满…...

从协议到PCB:PCIe高速硬件设计实战指南

1. 从协议到PCB:为什么PCIe硬件设计是个“瓷器活” 大家好,我是老张,在高速硬件设计这个行当里摸爬滚打了十几年,从早期的PCIe 2.0一路做到现在的PCIe 5.0,踩过的坑比走过的路还多。今天想和大家聊聊一个听起来高大上、…...

从仿真到真机:人形机器人强化学习策略部署实战

1. 从仿真到真机:为什么这一步如此艰难? 在Gazebo里看着自己训练的人形机器人健步如飞,那种成就感别提多爽了。但当你兴冲冲地把模型文件拷出来,准备让实验室那台“铁疙瘩”也动起来时,现实往往会给你当头一棒——机器…...

解析信号构建与瞬时特征提取:希尔伯特变换在Python、C++、MATLAB中的实战

1. 希尔伯特变换:信号处理中的“相位魔法师” 如果你玩过收音机或者调过吉他弦,大概对“频率”和“相位”这两个词不陌生。简单说,频率就是信号抖动的快慢,相位就是抖动起始的“时间点”。在分析一个复杂信号,比如一段…...

Windows系统下Stable Diffusion Web UI的本地部署与远程访问全攻略

1. 为什么要在Windows上自己搭一个AI画室? 如果你最近刷到过那些“一句话生成神图”的视频,心里肯定痒痒的。Midjourney、DALL-E这些在线工具好用是好用,但要么要排队,要么有生成次数限制,最要命的是,你辛辛…...

Windows下npm EPERM权限错误的终极解决方案:从根源避免权限冲突

1. 为什么你的npm总在Windows上报EPERM错误? 如果你在Windows上搞前端开发,我敢打赌,你肯定见过这个让人血压飙升的错误提示:npm ERR! code EPERM,后面跟着一串 operation not permitted。这玩意儿就像个幽灵&#xff…...

智能眼镜视觉系统AIGlasses OS Pro实战:四大模式一键开启体验

智能眼镜视觉系统AIGlasses OS Pro实战:四大模式一键开启体验 最近我花了一周时间,深度体验了AIGlasses OS Pro这套智能视觉系统。说实话,刚开始我有点怀疑——一个纯本地运行的视觉系统,塞进眼镜这种小设备里,真能做…...

Python射线检测实战:trimesh与python-mesh-raycast性能对比与应用选择

1. 为什么你需要关心Python射线检测? 如果你正在捣鼓3D项目,比如机器人导航、游戏开发、三维重建,或者像我之前做的一个无人机避障模拟系统,那你大概率会遇到一个经典问题:怎么判断一条射线(想象成一道激光…...

直流电流采样电路实战指南:从检流电阻到霍尔传感器的四种方案解析

1. 为什么电流采样是硬件设计的“基本功”? 大家好,我是老张,一个在硬件和嵌入式领域摸爬滚打了十多年的工程师。今天想和大家聊聊一个看似基础,但实际项目中“坑”特别多的技术点——直流电流采样。不管你是在做电池管理系统&…...

csdn营销模板

学习资源 如果你是也准备转行学习网络安全(黑客)或者正在学习,这里开源一份360智榜样学习中心独家出品《网络攻防知识库》,希望能够帮助到你 知识库由360智榜样学习中心独家打造出品,旨在帮助网络安全从业者或兴趣爱好者零基础快…...

基于瑞萨RA2 MCU的智能陪伴时钟嵌入式设计

1. 项目概述“智能陪伴时钟”是一款面向家庭场景的嵌入式智能终端设备,其核心设计目标并非单纯提供时间显示功能,而是通过硬件感知、网络协同与人机交互的有机融合,构建一种具象化的情感连接通道。项目以陶瓷灯丝时钟为物理载体,采…...

从零到一:ROS Noetic下UR5机械臂抓取仿真的完整避坑指南

1. 环境准备:从零搭建你的ROS Noetic仿真舞台 嘿,朋友们,如果你刚接触ROS和机械臂仿真,看到UR5、MoveIt!、Gazebo这些名词可能有点发怵。别担心,几年前我第一次搞这个的时候,也是从一脸懵开始的。今天我就带…...

告别复杂配置:5分钟搞定ESXi上Ubuntu 22.04的SSH远程访问(含Cpolar固定TCP地址设置)

告别复杂配置:5分钟搞定ESXi上Ubuntu 22.04的SSH远程访问(含固定公网地址设置) 每次想快速搭建一个临时的开发环境或者测试服务器,你是不是都得花上大半天时间折腾网络配置、端口转发,甚至还得去研究路由器后台&#x…...

2024前端字体优化指南:从阿里巴巴普惠体到可变字体实战

2024前端字体优化实战:从品牌定制到性能极致的全链路方案 去年我们团队接手了一个面向全球市场的金融科技产品重构,设计稿里指定了一款精致的品牌字体。上线后,市场团队却收到了大量来自Windows用户的反馈,抱怨界面文字“发虚”、…...

Flask项目打包成EXE的终极指南:PyInstaller常见报错与解决方案大全

Flask项目打包成EXE的终极指南:PyInstaller常见报错与解决方案大全 你是否曾花费数周时间精心打磨了一个Flask应用,它在本地的开发服务器上运行得丝滑流畅,但当你试图将它分享给同事、客户或学生时,却陷入了一场“环境配置”的噩梦…...

从零起步探索SEO,让网站访客源源不断流入

在探索SEO的过程中,理解每个模块的内涵和相互关系至关重要。内容优化是连接关键词研究与外部链接建设的枢纽。通过优质的内容,不仅可以吸引目标用户,还能提升他们在网站上的体验和互动。在撰写内容时,需关注用户需求,确…...

CVAT本地部署全攻略:从Docker镜像构建到团队协作配置(2024避坑指南)

CVAT本地部署全攻略:从Docker镜像构建到团队协作配置(2024避坑指南) 如果你正在为计算机视觉项目寻找一个功能强大、可定制且支持团队协作的标注平台,那么CVAT(Computer Vision Annotation Tool)很可能已经…...

java基于SSM框架的房屋租赁系统的设计与实现论文

目录引言系统需求分析系统设计系统实现系统测试总结与展望参考文献附录(可选)项目技术支持源码LW获取详细视频演示 :文章底部获取博主联系方式!同行可合作引言 研究背景与意义国内外研究现状论文研究内容与目标 系统需求分析 功…...

java基于ssm框架的企业员工管理系统 毕业论文

目录引言系统需求分析系统设计系统实现系统测试总结与展望参考文献附录项目技术支持源码LW获取详细视频演示 :文章底部获取博主联系方式!同行可合作引言 研究背景与意义:阐述企业员工管理系统在现代企业管理中的重要性,以及基于S…...