2. 采样周期对系统稳定性的影响

好,咱们接着聊采样周期。上一章我讲了采样定理,那是信号不失真的底线。但说实话,在工程里,我们更关心的是——系统会不会发散?

你想想看,一个连续系统明明是稳定的,为什么加上采样器、保持器,变成离散系统后,它就可能不稳定了?

说白了,采样周期选得不对,系统极点会“乱跑”。

2.1 采样周期与系统极点关系

连续系统的稳定性,看的是s域极点是否在左半平面。离散系统呢?看z域极点是否在单位圆内。

关键来了:采样周期T会直接影响s域到z域的映射关系

我记得刚入行那会儿,有个同事调一个电机伺服系统。连续模型算得好好的,相位裕度60度,增益裕度12dB,稳得很。结果一上数字控制器,电机高频抖动,差点把联轴器拧断了。

查了半天,问题出在哪?采样周期选太大了。

这里有个核心公式,大家记住:

z = e^(sT)

其中T是采样周期。s域的左半平面,映射到z域是什么?

  • s = σ + jω,σ < 0 时,|z| = e^(σT) < 1
  • 所以连续稳定的极点,映射到z域在单位圆内

但问题在于——这个映射不是线性的

当T变大时,|z| = e^(σT) 会指数级增长。原本离虚轴很近的极点(σ很小但为负),映射到z域后可能非常接近单位圆边界。一旦T大到某个程度,极点就“跑”出单位圆了。

工程经验: 我个人习惯,采样频率至少取系统闭环带宽的10~20倍。对于快速系统(比如电流环),我甚至取到30倍以上。这不是理论要求,是血的教训换来的。

2.2 离散化方法对比

好,现在问题来了。我们设计控制器通常是在连续域(s域)完成的,但最终要在数字芯片上跑。怎么把连续控制器变成离散的?

这就涉及到离散化方法。我重点讲三种:前向欧拉、后向欧拉、双线性变换。

2.2.1 前向欧拉法

前向欧拉,也叫前向差分法。它的映射关系是:

s = (z - 1) / T

说白了,就是用差分近似微分。

优点: 简单,计算量小。

缺点: 稳定性差。连续稳定的系统,用前向欧拉离散后可能不稳定。

我曾经在一个温度控制项目里用过前向欧拉。连续PID调得好好的,离散化后温度震荡,差点把加热管烧了。后来一分析,极点跑到单位圆外了。

注意: 前向欧拉法会把s左半平面映射到z平面以(1,0)为圆心、半径为1的圆内。这个圆比单位圆小得多。所以很多连续稳定的极点,离散后就不稳定了。我建议你尽量别用这个方法,除非采样频率极高。

2.2.2 后向欧拉法

后向欧拉,也叫后向差分法。映射关系:

s = (z - 1) / (zT)

这个就好多了。它把s左半平面映射到z平面以(0.5, 0)为圆心、半径为0.5的圆内。这个圆完全在单位圆内部。

优点: 稳定。连续稳定的系统,离散后一定稳定。

缺点: 频率响应畸变。高频部分会被压缩。

嗯,这里要注意。后向欧拉虽然稳定,但会改变控制器的频率特性。比如你设计的陷波器,用后向欧拉离散后,陷波频率可能偏移了。

2.2.3 双线性变换法(Tustin变换)

双线性变换,也叫Tustin变换。映射关系:

s = (2/T) * (z - 1) / (z + 1)

这个是我最常用的方法。为什么?因为它把s左半平面精确映射到z单位圆内部。

优点:

  • 稳定性好,连续稳定则离散稳定
  • 频率畸变可以通过预畸变补偿
  • 精度高,尤其在中低频段

缺点:

  • 计算量稍大
  • 高频段频率响应有畸变

我的建议: 对于大多数工程应用,双线性变换是首选。如果采样频率足够高(比如是系统带宽的20倍以上),三种方法的差异会缩小。但为了保险,我习惯用双线性变换加预畸变。

2.3 三种方法对比表

方法 映射公式 稳定性 频率畸变 计算量 推荐场景
前向欧拉 s = (z-1)/T 严重 不推荐
后向欧拉 s = (z-1)/(zT) 中等 低频系统
双线性变换 s = (2/T)(z-1)/(z+1) 可补偿 通用

2.4 知识体系图

下面这张图,是我梳理的采样周期与稳定性之间的核心逻辑。你看一眼就明白了。

采样周期对系统稳定性的影响 — 知识体系 采样周期 T 极点映射关系 z = e^(sT) T 越大,|z| 越接近 1 T 过大 → 极点跑出单位圆 离散化方法 前向欧拉:s=(z-1)/T 后向欧拉:s=(z-1)/(zT) 双线性:s=(2/T)(z-1)/(z+1) 推荐:双线性变换 + 预畸变 工程建议 采样频率 ≥ 10~20倍带宽 快速系统取30倍以上 仿真验证极点位置

2.5 避坑指南

最后,我分享几个实战中踩过的坑:

  • 不要只看连续域设计。 我曾经设计了一个连续域相位裕度70度的控制器,觉得稳如泰山。结果离散化后,相位裕度掉到30度。为什么?采样保持器引入了额外延迟。
  • 采样周期不是越小越好。 太小了,计算量暴增,而且数值精度问题会凸显。我见过有人把采样频率设到100kHz,结果控制器根本算不完。
  • 离散化后一定要仿真验证。 用MATLAB的c2d函数转换后,跑一下阶跃响应和极点图。这一步省不了。

核心总结: 采样周期影响稳定性,本质是改变了系统极点的位置。三种离散化方法中,双线性变换最可靠。但无论用哪种方法,最终都要用仿真验证。这是我在无数项目中总结出来的铁律。


公众号:蓝海资料掘金营,微信deep3321