资讯动态

信号与系统第一章:信号分类判据与Python验证

发布时间:2026/10/16 0:42:32 来源:尧图企业网站定制
简介这份《信号与系统》第一章课件面向电子类专业学生及考研复习者用于梳理信号与系统的基本概念与分析方法。内容从信号的定义、分类与运算切入涵盖确定信号与随机信号、连续与离散信号、能量与功率信号等划分方式并讲解相加相乘、翻转平移展缩等基本运算进而延伸至阶跃信号与冲激信号、系统的输入输出描述与状态空间描述、线性非线性与时变时不变系统的性质以及连续与离散系统的分析思路最后简要涉及随机信号通过线性系统与MATLAB应用。资源包内含1个PPT文件压缩后约1.29MB以电子教案形式呈现页面标注清晰、公式与波形图配合讲解便于课堂同步学习与考前快速回顾。目前已有171人学习下载适合作为课程入门与知识框架搭建的参考材料。1. 信号与系统课件第一章为什么“信号分类”这一页决定了后面三百页能不能听懂很多同学翻开信号与系统课件第一章看到的是“信号的定义、信号的分类、基本运算、典型信号”这几页觉得不过是些名词翻过去就算了。我带过几届做课程辅导的活血泪经验是第一章没吃透第三章的卷积、第四章的傅里叶变换基本就是玄学。原因很直接——后面所有变换、系统响应、频域分析本质都在反复调用第一章埋下的几个概念连续与离散、周期与非周期、能量与功率、确定与随机。这些不是背诵题而是判断工具。比如拿到一个信号你第一反应要能判断它属于哪一类才知道该用求和还是积分、该用傅里叶级数还是傅里叶变换。这篇笔记面向两类人正在跟课件自学、想真正把第一章学成“可操作判断力”的学生以及需要把第一章讲清楚、能让学生动手验证的助教或老师。我会把课件第一章拆成可复现的推导、可运行的代码和可检查的判据而不是复述定义。2. 信号分类的判据从数学定义到可执行判断课件第一章通常先给定义再给分类但定义和分类之间其实隔着一层“判据”。这一章我把这层判据补上让每个分类都能落到一个可以手算或代码验证的条件上。2.1 连续与离散先看自变量别看波形连续时间信号记作 x(t)离散时间信号记作 x[n]。判断的关键在自变量t 取实数区间n 取整数。很多初学者看到一条折线图就说是离散信号这是典型误判——折线只是绘图方式只要横轴是连续区间它就是连续信号。反过来离散信号用茎叶图stem画也不是因为画法才离散而是因为 n 只取整数。课件里常给一个分段函数比如 t 在 [0,1] 上等于 t其余为零。这是连续信号。若把它只在 n0,1,2,... 上取值就得到离散序列。这个“采样”动作在第一章往往一笔带过但它正是后面离散时间系统分析的起点。判断步骤可以固定成三步第一步看自变量符号是 t 还是 n第二步看取值集合是区间还是整数点集第三步看是否存在“只在某些时刻有定义”的表述。三步走完连续离散不会混。2.2 周期与非周期最小正周期存在性怎么验周期信号的定义是存在 T0使 x(t)x(tT) 对所有 t 成立。课件通常只给定义但做题时真正要判断的是“最小正周期是多少”或“是不是根本不存在”。对连续正弦 x(t)Acos(ωtφ)最小正周期 T2π/ω前提是 ω≠0。对两个周期信号相加x(t)cos(2t)cos(3t)周期是各自周期的最小公倍数。这里有个容易翻车的点2π/2π2π/32π/3两者之比是有理数 3:2所以存在公共周期 T2π。如果频率比是无理数比如 cos(t)cos(√2 t)就不存在公共周期信号是非周期的。这个判据在课件第一章经常只留一句“频率比为有理数时周期”但没解释为什么导致后面做傅里叶级数时不知道哪些信号能展开。离散周期信号的判据不同x[n]cos(Ωn) 周期存在的条件是 Ω/(2π) 为有理数。比如 Ω2π/5周期 N5Ω11/(2π) 是无理数离散序列非周期。这个差异是连续和离散在第一章最值得对比的点之一。2.3 能量与功率积分收敛性决定用哪套工具能量信号定义 E∫|x(t)|²dt 有限功率信号定义 Plim(T→∞)(1/T)∫|x(t)|²dt 有限且非零。课件第一章给这两个定义时很多人只记公式没意识到它决定了后面用哪套分析工具能量信号通常做傅里叶变换功率信号通常做傅里叶级数或功率谱。判断步骤先算能量积分若收敛且有限是能量信号若不收敛再算功率极限若有限非零是功率信号若两者都不满足既不是能量也不是功率信号比如 x(t)t 在整条实轴上。典型例子单边指数 e^{-at}u(t)a0能量 E1/(2a)是能量信号。常数 1 在整条实轴上能量无穷功率为 1是功率信号。周期信号一般都是功率信号因为能量在每个周期内有限但无限重复后总能量发散。这里有个常见误解以为“能量信号一定能量有限所以幅度小”。不是能量有限只要求衰减足够快和幅度大小无关。e^{-100t}u(t) 幅度可以很大只要 a 足够大能量依然有限。2.4 确定与随机课件第一章为什么只提一句确定信号是给定时刻有确定值的信号随机信号则要用概率分布描述。课件第一章通常只提一句“本书主要讨论确定信号”然后进入基本运算。这不是偷懒而是因为随机信号分析需要概率论基础放在第一章会打断主线。但读者要知道边界后面遇到噪声、误码率、信噪比这些概念时用的就是随机信号那套工具。第一章的确定信号分析是基础不是全部。如果后续课程或项目涉及通信、检测随机信号部分要单独补。3. 基本运算与典型信号用 Python 把课件里的图跑出来课件第一章的图很多但静态图看不出“运算”到底改变了什么。这一章我用 Python 把平移、反褶、尺度变换和几个典型信号画出来并给出参数说明。代码不依赖特殊库numpy 和 matplotlib 即可。3.1 平移、反褶、尺度变换的代码实现与顺序陷阱import numpy as np import matplotlib.pyplot as plt # 定义连续时间轴分辨率 0.001范围 -5 到 5 t np.linspace(-5, 5, 10001) # 原始信号一个矩形脉冲t 在 [-1, 1] 内为 1其余为 0 def rect(t): return np.where((t -1) (t 1), 1.0, 0.0) x rect(t) # 平移x(t - 2)右移 2 x_shift rect(t - 2) # 反褶x(-t)关于纵轴翻转 x_flip rect(-t) # 尺度变换x(2t)压缩为原来一半宽度 x_scale rect(2 * t) # 组合x(-2t 3)先反褶再压缩再平移顺序不能乱 x_comb rect(-2 * t 3) fig, axes plt.subplots(5, 1, figsize(8, 10), sharexTrue) for ax, sig, title in zip(axes, [x, x_shift, x_flip, x_scale, x_comb], [x(t), x(t-2), x(-t), x(2t), x(-2t3)]): ax.plot(t, sig, linewidth1.5) ax.set_ylabel(title) ax.grid(True, alpha0.3) axes[-1].set_xlabel(t) plt.tight_layout() plt.show()逻辑说明rect 函数用 np.where 实现矩形脉冲条件 (t-1)(t1) 返回布尔数组满足时取 1否则取 0。平移 x(t-2) 直接把 t 替换成 t-2右移 2 个单位。反褶 x(-t) 把 t 替换成 -t。尺度 x(2t) 把 t 替换成 2t宽度从 2 变成 1。参数说明t 的范围 -5 到 5 要覆盖所有变换后的支撑集否则图会截断。分辨率 10001 点是为了让矩形边缘看起来陡峭点数太少边缘会倾斜。组合变换 x(-2t3) 的顺序是先反褶t→-t再压缩t→2t再平移t→t-3 对应右移 3但写成 -2t3 时实际效果是反褶后压缩再左移 1.5。这个顺序是课件第一章最容易出错的地方建议每次都用“先内后外”的口诀先处理 t 前面的系数再处理常数项。3.2 单位阶跃与单位冲激定义、关系与数值近似单位阶跃 u(t) 定义为 t0 时为 1t0 时为 0t0 处通常取 0.5 或 1不同教材不一致但不影响积分结果。单位冲激 δ(t) 不是普通函数而是广义函数定义为 ∫δ(t)dt1 且 t≠0 时 δ(t)0。两者的关系u(t) 的广义导数是 δ(t)δ(t) 的积分是 u(t)。课件第一章通常给这个关系但没解释为什么。直观理解u(t) 在 t0 处跳变跳变率无穷大所以导数是一个集中在 0 点的冲激。数值近似时δ(t) 常用窄矩形或高斯脉冲代替# 用宽度为 eps 的矩形近似冲激 eps 0.01 delta_approx np.where(np.abs(t) eps/2, 1.0/eps, 0.0) # 验证积分近似为 1 area np.trapz(delta_approx, t) print(f近似冲激的积分面积: {area:.4f})参数说明eps 越小近似越接近理想冲激但数值积分需要更密的采样点。eps0.01 配合 10001 点面积误差在 1e-4 量级足够课件演示。实际做系统仿真时冲激响应通常直接用解析式不用数值近似因为数值近似会引入额外带宽。3.3 复指数信号实部虚部与欧拉公式的对应复指数 x(t)e^{jωt} 是信号与系统里最重要的信号没有之一。欧拉公式 e^{jωt}cos(ωt)jsin(ωt) 把复指数拆成实部和虚部。课件第一章通常只给公式但后面傅里叶变换的推导全靠它。用代码画出来omega 2 * np.pi # 频率 1 Hz x_complex np.exp(1j * omega * t) fig, axes plt.subplots(3, 1, figsize(8, 6), sharexTrue) axes[0].plot(t, x_complex.real, label实部 cos(ωt)) axes[0].legend() axes[1].plot(t, x_complex.imag, label虚部 sin(ωt)) axes[1].legend() axes[2].plot(t, x_complex.real, t, x_complex.imag, label实部与虚部) axes[2].legend() axes[-1].set_xlabel(t) plt.tight_layout() plt.show()参数说明omega2π 对应频率 1 Hz周期 1 秒。实部是余弦虚部是正弦两者相位差 π/2。复指数在频域分析里的好处是微分和积分不改变函数形式只改变系数这让微分方程求解变成代数运算。这也是为什么课件第一章要单独讲复指数而不是只讲正弦。4. 避坑与排查第一章最容易翻车的五个点这一章列的是我在辅导和答疑里反复见到的错误每条按现象、原因、解决写。4.1 把离散序列当连续信号处理现象拿到 x[n]cos(0.1πn)直接对 n 求导或积分。原因离散序列的自变量是整数没有导数概念只有差分。解决离散信号用差分 x[n]-x[n-1] 代替微分用求和代替积分。课件第一章如果同时讲连续和离散一定要在符号上区分 t 和 n不要混用。4.2 周期判断只看波形重复现象看到一段波形重复两次就说是周期信号。原因周期要求对所有时间成立不只是局部重复。解决用定义验证找到 T 后检查 x(t)x(tT) 是否对所有 t 成立。对离散序列检查 x[n]x[nN] 对所有整数 n 成立。局部重复可能是准周期或分段重复不是周期。4.3 能量信号和功率信号混用公式现象对周期信号算能量积分得到无穷大后不知道怎么办。原因周期信号能量无穷应该算功率。解决先判断信号类型再选公式。周期信号、常数信号、阶跃信号通常算功率衰减指数、有限长脉冲通常算能量。如果能量和功率都发散说明信号既不是能量也不是功率信号比如 t 在整条实轴上。4.4 冲激函数的尺度变换漏系数现象算 δ(2t) 的积分直接得 1。原因冲激函数有尺度性质 δ(at)δ(t)/|a|。解决记住 δ(at) 的积分是 1/|a|所以 δ(2t) 的积分是 0.5。这个性质在后续傅里叶变换的尺度变换里会反复用到第一章就要记牢。4.5 复指数频率符号搞反现象e^{-jωt} 和 e^{jωt} 混用导致傅里叶变换正反变换搞混。原因正变换用 e^{-jωt}反变换用 e^{jωt}符号不同。解决固定记法正变换分析信号成分反变换合成信号。课件第一章如果提到复指数建议把正反变换的符号约定写下来后面就不会乱。5. 从第一章到后续章节一个可复用的验证习惯第一章学完后怎么知道真的掌握了我的习惯是拿到任何新信号先做四问。第一问连续还是离散第二问周期还是非周期第三问能量还是功率第四问确定还是随机四问走完再决定用什么工具。这个习惯看起来简单但能避免后面百分之八十的符号错误和工具误用。具体验证方法自己构造一个信号比如 x(t)e^{-2t}u(t)cos(3t)然后判断它属于哪一类。这个信号包含衰减部分和周期部分整体能量发散因为周期部分不衰减功率也发散因为衰减部分趋于零但周期部分功率有限叠加后功率极限不存在所以它既不是能量信号也不是功率信号。这个例子说明分类不是非此即彼有些信号就是“混合型”需要分段处理。再进一步用代码验证# 构造混合信号 x_mix np.exp(-2 * t) * (t 0) np.cos(3 * t) # 计算有限区间内的能量和功率 T_range 100 t_long np.linspace(0, T_range, 1000001) x_long np.exp(-2 * t_long) np.cos(3 * t_long) energy np.trapz(np.abs(x_long)**2, t_long) power energy / T_range print(f有限区间能量: {energy:.2f}) print(f平均功率: {power:.2f})参数说明T_range 取 100 是为了让周期部分的平均功率稳定衰减部分在 t5 后基本为零。运行结果会显示能量随 T_range 线性增长说明能量发散平均功率趋近于 0.5余弦信号功率说明整体不是功率信号因为衰减部分让功率极限不存在。这个验证过程比背定义有用得多。最后一个技巧把第一章的所有典型信号列一张表包括表达式、波形特征、分类、常用变换对。这张表后面每学一章就补一列到期末就是一张完整的信号与系统速查表。我当年就是靠这张表把零散概念串起来的希望帮到你。本文还有配套的精品资源点击获取

读完文章,也想定制专属网站?

尧图设计师 24 小时内与您沟通定制方案

免费获取报价 →
↑