从复数讲到机器人控制
复数
1.基础定义
复数形式:
z=a+bjz = a + bjz=a+bj
- aaa:实部 Re(z)\mathrm{Re}(z)Re(z)
- bbb:虚部 Im(z)\mathrm{Im}(z)Im(z)
- j2=−1j^2=-1j2=−1(工程常用jjj,数学写作iii)
每一个复数对应复平面上一个点 (a,b)(a,b)(a,b)。
两种表达形式
1)代数形式 z=a+bjz=a+bjz=a+bj,适合加减
z1=a1+b1jz2=a2+b2jz1+z2=(a1+a2)+(b1+b2)jz1−z2=(a1−a2)+(b1−b2)j \begin{align} z_1 &=a_1+b_1j \\ z_2 &=a_2+b_2j \\ z_1+z_2 &= (a_1+a_2)+(b_1+b_2)j\\ z_1-z_2 &= (a_1-a_2)+(b_1-b_2)j \end{align} z1z2z1+z2z1−z2=a1+b1j=a2+b2j=(a1+a2)+(b1+b2)j=(a1−a2)+(b1−b2)j
2)极坐标(指数)形式,适合乘除、旋转
z=rejθ=r(cosθ+jsinθ)z=r e^{j\theta}=r(\cos\theta + j\sin\theta)z=rejθ=r(cosθ+jsinθ)
- 模:r=a2+b2r=\sqrt{a^2+b^2}r=a2+b2,向量长度
- 辐角:θ=arg(z)\theta=\arg(z)θ=arg(z),复平面与实轴夹角
欧拉公式:ejθ=cosθ+jsinθ\boldsymbol{e^{j\theta}=\cos\theta + j\sin\theta}ejθ=cosθ+jsinθ,复数最重要等式。
乘法几何含义:模相乘,角度相加,等价平面旋转+缩放
z1=r1ejθ1, z2=r2ejθ2z_1=r_1e^{j\theta_1},\; z_2=r_2e^{j\theta_2}z1=r1ejθ1,z2=r2ejθ2
z1z2=r1r2 ej(θ1+θ2)z_1 z_2 = r_1 r_2\, e^{j(\theta_1+\theta_2)}z1z2=r1r2ej(θ1+θ2)
共轭复数:zˉ=a−bj\bar z = a-bjzˉ=a−bj,模不变,角度取反。
z⋅zˉ=a2+b2=∣z∣2z\cdot \bar z = a^2+b^2 = |z|^2z⋅zˉ=a2+b2=∣z∣2
2.导数与解析(复变函数)
对复函数 f(z)=u(x,y)+jv(x,y)f(z)=u(x,y)+jv(x,y)f(z)=u(x,y)+jv(x,y)
柯西‑黎曼条件(可导必要条件):
∂u∂x=∂v∂y,∂u∂y=−∂v∂x\frac{\partial u}{\partial x}=\frac{\partial v}{\partial y},\quad \frac{\partial u}{\partial y}=-\frac{\partial v}{\partial x}∂x∂u=∂y∂v,∂y∂u=−∂x∂v
满足条件区域称为解析。
3.工程领域使用场景
信号/控制
- 傅里叶变换:信号分解成复指数 ejωte^{j\omega t}ejωt;复数同时携带幅值+相位。
- 拉普拉斯变换:复频率 s=σ+jωs=\sigma+j\omegas=σ+jω;控制系统零极点全部在复平面分析。
机器人几何
- 二维旋转可以用复数乘法代替矩阵;点(x,y)→z=x+jy(x,y)\to z=x+jy(x,y)→z=x+jy,旋转θ\thetaθ:z′=z⋅ejθz' = z\cdot e^{j\theta}z′=z⋅ejθ,比2×2旋转矩阵计算更轻。
三维旋转对应四元数,是复数向高维的推广。
深度学习
- 复值神经网络:权重为复数;特征同时编码振幅、相位;多用于语音、雷达信号。
4.和你前面知识关联
- 实数是复数虚部为0的特例;实数运算全部是复数运算子集。
- 复数可以看成二维向量 [ab]\begin{bmatrix}a\\b\end{bmatrix}[ab],但复数自带乘法结构,普通二维向量没有。
向量只是空间位置;复数是“可做旋转乘法”的代数对象。
- 傅里叶:把时域函数,投影到复数基函数 {ejωt}\{e^{j\omega t}\}{ejωt}(一组正交基函数,就是前面聊的正交基)。
简单Python示例
z = 3 + 4j
print(abs(z)) # 模 5
print(z.conjugate()) # 共轭 3-4j
import cmath
print(cmath.phase(z)) # 辐角
复数继续延伸
1 复数根、单位根
单位复数:∣z∣=1|z|=1∣z∣=1,写成 z=ejθz=e^{j\theta}z=ejθ,只有旋转,没有缩放。
n次单位根:方程 zn=1z^n=1zn=1 的全部解
zk=ej2πkn,k=0,1,…,n−1z_k = e^{j\frac{2\pi k}{n}},\quad k=0,1,\dots,n-1zk=ejn2πk,k=0,1,…,n−1
几何:复平面单位圆上等间隔分布的 nnn 个点。
DFT离散傅里叶变换的数学根基,就是用单位根做正交基展开信号。
2 复积分(柯西积分公式)
若 f(z)f(z)f(z) 在闭合围道内部解析:
∮Cf(z)dz=0 \oint_C f(z)dz = 0 ∮Cf(z)dz=0
柯西积分公式:
f(z0)=12πj∮Cf(z)z−z0dz f(z_0)=\frac{1}{2\pi j}\oint_C \frac{f(z)}{z-z_0}dz f(z0)=2πj1∮Cz−z0f(z)dz
意义:解析函数围道上的值完全决定内部任意一点函数值。复变积分不是普通线积分,奇点(不解析点)贡献全部积分结果。留数定理是它的工程实用版本。
留数定理
∮Cf(z)dz=2πj∑围道内所有奇点留数Res \oint_C f(z)dz = 2\pi j \sum \text{围道内所有奇点留数Res} ∮Cf(z)dz=2πj∑围道内所有奇点留数Res
控制、信号中算逆拉普拉斯变换大量依靠留数;不用暴力求解原函数。
3 复平面视角看控制系统(机器人控制高频)
复频率 s=σ+jωs=\sigma+j\omegas=σ+jω
- σ\sigmaσ:实部,代表衰减/发散;σ<0\sigma<0σ<0 系统收敛稳定;σ>0\sigma>0σ>0 发散
- ω\omegaω:虚部,代表振荡角频率
传递函数 G(s)=Y(s)U(s)G(s)=\dfrac{Y(s)}{U(s)}G(s)=U(s)Y(s),分子零点、分母极点落在复平面。
- 极点全部落在左半复平面,系统稳定;
- 虚轴上极点 → 等幅振荡;右半平面极点 → 振幅指数发散。
二阶系统:极点 s=−ζωn±jωn1−ζ2s=-\zeta\omega_n \pm j\omega_n\sqrt{1-\zeta^2}s=−ζωn±jωn1−ζ2
实部决定阻尼衰减速度,虚部决定震荡频率,一个复数同时描述两个物理量。
4 复数 vs 二维向量,关键差异(容易混淆)
复数 z=a+jbz=a+jbz=a+jb,对应向量 v=[ab]\boldsymbol v=\begin{bmatrix}a\\b\end{bmatrix}v=[ab]
- 加法完全等价:对应分量相加
- 乘法完全不一样
向量:点积、叉积;没有向量自身闭合的乘法。
复数:复数乘法 z1z2z_1 z_2z1z2,结果仍然是复数,代表旋转+缩放。
(a+jb)(c+jd)=(ac−bd)+j(ad+bc)(a+jb)(c+jd)=(ac-bd)+j(ad+bc)(a+jb)(c+jd)=(ac−bd)+j(ad+bc)
2D旋转矩阵
R(θ)=(cosθ−sinθsinθcosθ) R(\theta)= \begin{pmatrix} \cos\theta & -\sin\theta\\ \sin\theta & \cos\theta \end{pmatrix} R(θ)=(cosθsinθ−sinθcosθ)
把点向量乘矩阵等价于复数乘 ejθe^{j\theta}ejθ。复数是旋转矩阵的紧凑代数表达。
⚠️ 复数只适合二维旋转;三维旋转不能直接复数,升级为四元数。
四元数 q=w+ix+jy+kzq=w+ix+jy+kzq=w+ix+jy+kz,放弃交换律;机器人SLAM、机械臂姿态全部使用。
5 复数用于傅里叶,正交基回顾(衔接之前正交基函数)
复指数集合:
{ejωt}={cosωt+jsinωt}\{e^{j\omega t}\}= \{\cos\omega t + j\sin\omega t\}{ejωt}={cosωt+jsinωt}
满足正交性:
∫0Tejωmt⋅ejωnt‾dt{T,m=n0,m≠n \int_0^T e^{j\omega_m t}\cdot \overline{e^{j\omega_n t}} dt \begin{cases} T,& m=n\\ 0,& m\neq n \end{cases} ∫0Tejωmt⋅ejωntdt{T,0,m=nm=n
任意时域信号 x(t)x(t)x(t),展开为复指数基函数的加权求和:
x(t)=∑cωejωt x(t)=\sum c_\omega e^{j\omega t} x(t)=∑cωejωt
系数 cωc_\omegacω 就是傅里叶系数,复数系数自带幅值 ∣cω∣|c_\omega|∣cω∣ 和相位 arg(cω)\arg(c_\omega)arg(cω)。
实数信号,正负频率的系数互为共轭,最后叠加结果虚部抵消,得到实信号。
6 复值神经网络简单了解
普通神经网络全部实数;复网络权重、激活、特征全部复数。
Z=W⊙X+bZ = W\odot X + bZ=W⊙X+b
- 振幅:信号强弱;相位:时序偏移、空间位置信息
常用于:雷达、通信、声学;
深度学习大部分场景依然实数网络为主,复网络没有大规模普及。
7 易错小结
- j2=−1j^2=-1j2=−1,但是不能随便对负数做开根号拆分:−4−9≠36\sqrt{-4}\sqrt{-9}\neq\sqrt{36}−4−9=36,复数根号不是初等实数根号性质。
- 共轭 zˉ\bar zzˉ:翻转虚部,不是取辐角负值这么简单;z⋅zˉ=∣z∣2z\cdot\bar z = |z|^2z⋅zˉ=∣z∣2 恒为实数。
- 解析:柯西黎曼条件,不是单单实部虚部分别可微,是更强耦合条件。
- 工程记号:电气机器人用 jjj;纯数学论文用 iii。
相位 Phase
基础定义
简谐振荡:
x(t)=Acos(ωt+ϕ)x(t)=A\cos(\omega t+\phi)x(t)=Acos(ωt+ϕ)
- AAA:振幅(幅度,最大偏移)
- ω\omegaω:角频率
- ϕ\boldsymbol{\phi}ϕ:初相位(相位常数)
- 瞬时相位:θ(t)=ωt+ϕ\theta(t)=\omega t+\phiθ(t)=ωt+ϕ
用复数表示(欧拉公式):
x~(t)=Aej(ωt+ϕ)=Acos(ωt+ϕ)+jAsin(ωt+ϕ) \tilde x(t)=A e^{j(\omega t+\phi)} = A\cos(\omega t+\phi)+jA\sin(\omega t+\phi) x~(t)=Aej(ωt+ϕ)=Acos(ωt+ϕ)+jAsin(ωt+ϕ)
复数模 ∣x~∣=A|\tilde x|=A∣x~∣=A;辐角就是相位 ωt+ϕ\omega t+\phiωt+ϕ。
核心:振幅描述多大;相位描述“在周期里走到哪个位置”。
相位差
两个同频率信号
x1=A1cos(ωt+ϕ1),x2=A2cos(ωt+ϕ2) x_1=A_1\cos(\omega t+\phi_1),\quad x_2=A_2\cos(\omega t+\phi_2) x1=A1cos(ωt+ϕ1),x2=A2cos(ωt+ϕ2)
相位差:Δϕ=ϕ1−ϕ2\Delta\phi=\phi_1-\phi_2Δϕ=ϕ1−ϕ2
- Δϕ=0\Delta\phi=0Δϕ=0:同相,同步起伏;
- Δϕ=π\Delta\phi=\piΔϕ=π:反相,一个最大另一个最小;
- Δϕ=π/2\Delta\phi=\pi/2Δϕ=π/2:正交。
相位差是相对量;绝对初相位会受时间零点选取影响。
复数‑傅里叶视角(衔接前面正交基)
任意频率分量傅里叶系数是复数:
cω=∣cω∣ ejϕωc_\omega = |c_\omega|\,e^{j\phi_\omega}cω=∣cω∣ejϕω
- ∣cω∣|c_\omega|∣cω∣:该频率成分幅值谱
- ϕω=arg(cω)\phi_\omega=\arg(c_\omega)ϕω=arg(cω):该频率成分相位谱
信号 = 全部频率分量叠加:
x(t)=∑ω∣cω∣ej(ωt+ϕω) x(t)=\sum_\omega |c_\omega| e^{j(\omega t+\phi_\omega)} x(t)=ω∑∣cω∣ej(ωt+ϕω)
⚠️ 非常关键:只保留幅值、丢掉相位,信号会完全失真。幅值告诉你有哪些频率;相位告诉各个谐波之间怎么错开、叠加出波形形状。
图像傅里叶同理:幅值对应边缘强度;相位保存物体轮廓几何结构。
工程场景
1)控制与机器人
二阶系统阶跃响应:输出信号存在相位滞后。
传递函数 G(jω)G(j\omega)G(jω),代入 s=jωs=j\omegas=jω:
- ∣G(jω)∣|G(j\omega)|∣G(jω)∣:幅频响应(增益)
- ∠G(jω)\angle G(j\omega)∠G(jω):相频响应,输出相对输入滞后多少相位
Bode伯德图两条曲线:幅值‑频率、相位‑频率。
闭环系统稳定性判定(奈奎斯特判据),相位裕度完全依靠相位信息。
PD控制、前馈补偿,很大一部分工作就是补偿相位滞后,避免振荡。
2)信号处理
- 时延等价相位线性偏移:时移 x(t−τ)⟷FX(ω)e−jωτx(t-\tau) \stackrel{\mathcal{F}}{\longleftrightarrow} X(\omega)e^{-j\omega \tau}x(t−τ)⟷FX(ω)e−jωτ
每一个频率分量相位减去 ωτ\omega\tauωτ;频率越高相位改变越大。 - 滤波器:低通/高通不仅改幅值,同时引入相位畸变(群延迟)。
3)机器人几何
复数旋转 z′=zejθz' = z e^{j\theta}z′=zejθ,θ\thetaθ 就是相位增量;
乘以 ejθe^{j\theta}ejθ:不改变振幅(模不变),只改变相位,等价旋转。
4)深度学习/多模态
复值特征:特征向量的模代表响应强度,相位代表时序偏移、空间位置;
普通实数网络把相位信息隐式编码在多通道数值中,没有显式相位变量。
容易混淆概念区分
- 相位 vs 相位差
相位:绝对角度;相位差:两个信号的相对偏移,工程更关心相位差。 - 相位 vs 群延迟
相位:总偏移角度;群延迟 τg=−dϕdω\tau_g = -\dfrac{d\phi}{d\omega}τg=−dωdϕ,代表信号包络的时间延迟。
滤波器如果相位不是随频率线性变化,产生相位失真,波形变形。 - 相位是模 2π2\pi2π 的,+2π+2\pi+2π 物理效果不变。
直观例子
x1=cos(t), ϕ1=0x_1=\cos(t),\ \phi_1=0x1=cos(t), ϕ1=0
x2=cos(t+π/2)=−sin(t), ϕ2=π/2x_2=\cos(t+\pi/2)=-\sin(t),\ \phi_2=\pi/2x2=cos(t+π/2)=−sin(t), ϕ2=π/2
x2x_2x2 相比 x1x_1x1 相位超前 π/2\pi/2π/2;到达峰值时间更早。
核心一句话总结
振幅描述能量大小;相位描述时序/空间位置关系。复数的辐角就是相位;傅里叶变换把信号拆解成每个频率各自的振幅与相位。很多系统失效不是幅值不够,而是相位错位。
Z变换
Z变换是离散时间版本的拉普拉斯变换,专门处理差分方程(数字控制系统、离散信号),复数 zzz 是核心。
1.定义
离散序列 x[n], n=0,1,2⋯x[n],\ n=0,1,2\cdotsx[n], n=0,1,2⋯(单边Z变换,工程最常用)
X(z)=Z{x[n]}=∑n=0∞x[n] z−n X(z)=\mathcal{Z}\{x[n]\}=\sum_{n=0}^{\infty} x[n]\, z^{-n} X(z)=Z{x[n]}=n=0∑∞x[n]z−n
- nnn:离散时间步;
- zzz:复变量 z=r ejω\boldsymbol{z=r\,e^{j\omega}}z=rejω;复数。
对比:
- 拉普拉斯(连续):X(s)=∫0∞x(t)e−stdt,s=σ+jωX(s)=\int_0^\infty x(t) e^{-st}dt,\quad s=\sigma+j\omegaX(s)=∫0∞x(t)e−stdt,s=σ+jω
- Z变换(离散):X(z)=∑n=0∞x[n]z−nX(z)=\sum_{n=0}^\infty x[n] z^{-n}X(z)=∑n=0∞x[n]z−n
映射关系:z←esTz\leftarrow e^{sT}z←esT,TTT 采样周期。
z=esT\boldsymbol{z=e^{sT}}z=esT
把连续复平面 sss,映射到 zzz 复平面。
z平面关键几何
z=rejωz=r e^{j\omega}z=rejω
- r=∣z∣r=|z|r=∣z∣:模;
- ω=arg(z)\omega=\arg(z)ω=arg(z):数字角频率(相位)。
- 单位圆:∣z∣=1|z|=1∣z∣=1,对应 sss 平面虚轴;z=ejωz=e^{j\omega}z=ejω。单位圆上的Z变换等价离散傅里叶变换DFT。
- ∣z∣<1|z|<1∣z∣<1:单位圆内部;对应s左半平面,系统收敛稳定。
- ∣z∣>1|z|>1∣z∣>1:单位圆外部;对应s右半平面,发散。
离散系统稳定充要条件:全部极点落在z平面单位圆内部。
2.常用基本对(查表,数字控制必背)
- 单位脉冲 x[n]=δ[n]x[n]=\delta[n]x[n]=δ[n]
X(z)=1X(z)=1X(z)=1 - 单位阶跃 x[n]=u[n]x[n]=u[n]x[n]=u[n]
u[n] ⟺ zz−1,∣z∣>1u[n] \iff \frac{z}{z-1},\quad |z|>1u[n]⟺z−1z,∣z∣>1 - 指数序列 x[n]=anu[n]x[n]=a^n u[n]x[n]=anu[n]
anu[n] ⟺ zz−a,∣z∣>∣a∣a^n u[n] \iff \frac{z}{z-a},\quad |z|>|a|anu[n]⟺z−az,∣z∣>∣a∣
极点在 z=az=az=a;
- ∣a∣<1|a|<1∣a∣<1:序列衰减收敛;
- ∣a∣>1|a|>1∣a∣>1:序列发散。
- 离散余弦
cos(ω0n) u[n] ⟺ z(z−cosω0)z2−2zcosω0+1\cos(\omega_0 n)\,u[n] \iff \frac{z(z-\cos\omega_0)}{z^2-2z\cos\omega_0+1}cos(ω0n)u[n]⟺z2−2zcosω0+1z(z−cosω0)
共轭复极点在单位圆上。
3.核心性质(差分方程 ↔ Z变换)
时移性质(最重要)
Z{x[n−1]}=z−1X(z) \mathcal Z\{x[n-1]\} = z^{-1} X(z) Z{x[n−1]}=z−1X(z)
z−1z^{-1}z−1 物理含义:一步延迟单元。数字控制器框图里的 z−1z^{-1}z−1 就是寄存器,保存上一拍的值。
差分方程例子:
y[n]=a y[n−1]+b u[n]y[n] = a\,y[n-1] + b\,u[n]y[n]=ay[n−1]+bu[n]
两边做Z变换
Y(z)=a z−1Y(z)+b U(z)Y(z)=a\,z^{-1}Y(z)+b\,U(z)Y(z)=az−1Y(z)+bU(z)
整理得到离散传递函数
G(z)=Y(z)U(z)=b1−az−1=bzz−a G(z)=\frac{Y(z)}{U(z)}=\frac{b}{1-a z^{-1}}=\frac{b z}{z-a} G(z)=U(z)Y(z)=1−az−1b=z−abz
- 连续系统用微分方程 + Laplace;
- 数字控制器、机器人离散闭环:差分方程 + Z变换。
4. s平面 → z平面映射重点
z=esTz=e^{sT}z=esT
- s=jωs=j\omegas=jω(虚轴,连续振荡)→ z=ejωTz=e^{j\omega T}z=ejωT(单位圆)
- Re(s)<0\mathrm{Re}(s)<0Re(s)<0(连续稳定左半平面)⇒∣z∣=eRe(s)T<1\Rightarrow |z|=e^{\mathrm{Re}(s)T}<1⇒∣z∣=eRe(s)T<1,映射到单位圆内部。
- Re(s)>0\mathrm{Re}(s)>0Re(s)>0(连续发散右半平面)⇒∣z∣>1\Rightarrow |z|>1⇒∣z∣>1,映射单位圆外。
⚠️ 非线性映射:s平面水平条带,折叠到z平面整个圆;产生频率混叠,采样带来固有现象。
5.极点零点与稳定性(机器人数字控制)
传递函数
G(z)=∏(z−zi)∏(z−pj)G(z)=\frac{\prod(z-z_i)}{\prod(z-p_j)}G(z)=∏(z−pj)∏(z−zi)
- ziz_izi:零点;
- pjp_jpj:极点。
✅ 离散LTI系统BIBO稳定:所有极点模 ∣pj∣<1|p_j|<1∣pj∣<1,全部在单位圆里面。
- 极点在单位圆上:等幅振荡;
- 极点跑到单位圆外面:输出随步数n指数发散,机器人抖动失控。
对比连续Laplace:极点全部sss左半平面 Re(s)<0\mathrm{Re}(s)<0Re(s)<0。
6.逆Z变换
已知 X(z)X(z)X(z),求离散时域序列 x[n]x[n]x[n]。工程几乎不用原始积分公式;标准做法:
- 分式部分分式分解;
- 查表得到各个分量时域;
数学定义(围道积分,复变留数定理):
x[n]=12πj∮CX(z) zn−1dz x[n]=\frac{1}{2\pi j}\oint_C X(z)\, z^{n-1} dz x[n]=2πj1∮CX(z)zn−1dz
逆Z变换 = z平面围道积分,用留数定理计算,承接前面复变函数知识。
7.和你前面知识串联
- 复数:zzz 本身是复变量,模=衰减因子,辐角=数字频率相位;
- 相位:G(ejω)G(e^{j\omega})G(ejω)(单位圆上传递函数),∠G(ejω)\angle G(e^{j\omega})∠G(ejω) 就是离散系统相频响应;做数字Bode图;相位裕度用于离散控制器调参;
- 傅里叶:当收敛域包含单位圆,X(z)∣z=ejωX(z)|_{z=e^{j\omega}}X(z)∣z=ejω 就是DTFT离散时间傅里叶变换;采样得到DFT。
- 拉普拉斯:连续→离散通过 z=esTz=e^{sT}z=esT;仿真、机器人控制器离散化(双线性变换Tustin变换)就是s域映射z域。
极简工程记忆口诀
拉普拉斯管连续微分;Z变换管离散差分;
z−1z^{-1}z−1 是一拍延迟;离散稳定看极点是否全部在单位圆里面。
常见坑
- 不要直接把s域极点简单复制到z域;必须经过映射 z=esTz=e^{sT}z=esT;采样周期T对稳定性影响巨大,采样太慢系统容易失稳。
- 单位圆只是边界;极点刚好落在圆上是临界稳定,现实中要远离边界留裕量。
双线性变换s→z(控制器离散化,机器人PD控制器从连续转离散)。
接续:Z变换工程落地核心 + 离散控制器设计 + 与复数/相位闭环串联
一、双线性变换(Tustin变换):s域控制器转z域(机器人最常用)
1. 公式来源
本质用数值积分近似微分:
s←2T⋅1−z−11+z−1s \leftarrow \frac{2}{T}\cdot \frac{1-z^{-1}}{1+z^{-1}}s←T2⋅1+z−11−z−1
TTT:控制周期(如0.002s、0.01s)
2. 作用
把连续域PID/PD传递函数 Gc(s)G_c(s)Gc(s) 直接替换 sss,得到可在MCU/FPGA跑的离散差分方程 Gc(z)G_c(z)Gc(z),完美规避直接 z=esTz=e^{sT}z=esT 复杂超越函数。
举例:连续PD控制器
Gc(s)=Kp+KdsG_c(s)=K_p + K_d sGc(s)=Kp+Kds
代入Tustin:
Gc(z)=Kp+Kd⋅2T1−z−11+z−1 G_c(z) = K_p + K_d \cdot \frac{2}{T}\frac{1-z^{-1}}{1+z^{-1}} Gc(z)=Kp+Kd⋅T21+z−11−z−1
通分后整理为 b0+b1z−1+b2z−21+a1z−1+a2z−2\displaystyle \frac{b_0 + b_1 z^{-1} + b_2 z^{-2}}{1 + a_1 z^{-1} + a_2 z^{-2}}1+a1z−1+a2z−2b0+b1z−1+b2z−2
直接展开为时域递推式:
u[k]=−a1u[k−1]−a2u[k−2]+b0e[k]+b1e[k−1]+b2e[k−2] u[k] = -a_1 u[k-1]-a_2 u[k-2] + b_0 e[k]+b_1 e[k-1]+b_2 e[k-2] u[k]=−a1u[k−1]−a2u[k−2]+b0e[k]+b1e[k−1]+b2e[k−2]
eee 为位置误差,uuu 输出力矩/电机指令,就是嵌入式里一行代码实现的离散PD。
3. 频率畸变(预扭曲Pre-warp)
Tustin会把s平面虚轴非线性映射到z平面单位圆,高频频率被挤压,高速伺服必须加预扭曲:
s←ω0tan(ω0T/2)⋅1−z−11+z−1s\leftarrow \frac{\omega_0}{\tan(\omega_0 T/2)} \cdot \frac{1-z^{-1}}{1+z^{-1}}s←tan(ω0T/2)ω0⋅1+z−11−z−1
ω0\omega_0ω0 为截止频率,保证目标频率点幅值、相位严格对齐。
二、z平面零极点与相位、幅频响应(承接相位知识点)
令 z=ejωz=e^{j\omega}z=ejω(落在单位圆上,等价DTFT),离散频率响应:
G(ejω)=∑bke−jkω∑ake−jkωG(e^{j\omega}) = \frac{\sum b_k e^{-jk\omega}}{\sum a_k e^{-jk\omega}}G(ejω)=∑ake−jkω∑bke−jkω
- ∣G(ejω)∣|G(e^{j\omega})|∣G(ejω)∣:幅频特性,增益大小;
- ∠G(ejω)\boldsymbol{\angle G(e^{j\omega})}∠G(ejω):相频特性,输出相对输入的相位滞后/超前。
1. 相位滞后的物理危害
- 高频段相位掉到 −180∘-180^\circ−180∘ 以下,若此时幅值仍大于1,系统闭环振荡、抖振;
- 离散系统相位裕度计算:在增益穿越频率处,看相位距离 −180∘-180^\circ−180∘ 还有多少余量。
2. 零极点如何改变相位
- 零点:在频率处带来相位超前,PD微分项本质就是引入零点补偿相位滞后;
- 极点:带来相位滞后,被控对象惯性、电机低通特性都是极点导致滞后。
工程调参本质:靠增加零点(微分项)抵消对象极点造成的相位跌落,抬升相位裕度。
三、Z变换三大算子物理意义(彻底吃透 z,z−1z,z^{-1}z,z−1)
-
z−1z^{-1}z−1
一步延迟单元,寄存器存储上一拍数据:x[n−1]↔Zz−1X(z)x[n-1] \stackrel{\mathcal{Z}}{\leftrightarrow} z^{-1}X(z)x[n−1]↔Zz−1X(z)
框图里画方框写 z−1z^{-1}z−1 就是D触发器/内存缓存。 -
zzz
一步超前,非因果,仿真理论用,实际控制器不用。 -
znz^nzn
n步超前;z−nz^{-n}z−n n步延迟。
例:一阶惯性环节离散化
连续:G(s)=1Ts+1\displaystyle G(s)=\frac{1}{Ts+1}G(s)=Ts+11
Tustin变换得到:
G(z)=b01+a1z−1G(z)=\frac{b_0}{1+a_1 z^{-1}}G(z)=1+a1z−1b0
差分方程:y[k]=−a1y[k−1]+b0u[k]y[k] = -a_1 y[k-1] + b_0 u[k]y[k]=−a1y[k−1]+b0u[k]
直观体现:当前输出依赖上一拍输出,极点决定衰减快慢。
四、收敛域ROC(复变视角,承接围道积分)
X(z)=∑n=0∞x[n]z−nX(z)=\sum_{n=0}^\infty x[n]z^{-n}X(z)=n=0∑∞x[n]z−n
级数收敛的z复平面区域叫收敛域。
- 因果序列(控制器、物理信号都是因果 n≥0n\ge0n≥0):ROC为某个圆外部 ∣z∣>R|z|>R∣z∣>R;
- 逆Z变换用留数定理时,围道必须落在ROC内部,否则积分结果错误;
- 系统稳定性隐含要求:ROC必须包含单位圆,才能在单位圆上做频率分析。
五、逆Z变换实操(留数法极简流程)
对于有理分式 X(z)X(z)X(z),步骤:
- 整理成真分式 F(z)z\displaystyle \frac{F(z)}{z}zF(z);
- 分解为部分分式;
- 对每个极点用留数公式:
Res[X(z)zn−1,z=p]\mathrm{Res}[X(z)z^{n-1},z=p]Res[X(z)zn−1,z=p] - 叠加所有留数得到 x[n]x[n]x[n]。
工程结论:
- 一阶实极点 p=ap=ap=a:对应时域 A⋅anA\cdot a^nA⋅an;
- 一对共轭复极点 p=re±jθp=r e^{\pm j\theta}p=re±jθ:对应衰减振荡 Arncos(nθ+ϕ)A r^n \cos(n\theta+\phi)Arncos(nθ+ϕ),模r决定衰减速度,辐角θ决定振荡频率(相位)。
完美闭环:复数极点的模=收敛快慢,辐角=振荡相位频率。
六、一条知识链串到底(从复数→相位→Z变换→机器人控制)
- 复数 z=rejθz=r e^{j\theta}z=rejθ:模衰减,辐角相位/频率;
- 相位:系统滞后量,决定稳定性;
- 拉普拉斯:连续系统复频率 s=σ+jωs=\sigma+j\omegas=σ+jω;
- Z变换:离散版拉普拉斯,z=esTz=e^{sT}z=esT,离散极点单位圆判稳;
- Tustin变换:连续控制器转离散代码;
- 零极点→相位裕度→PD调参→真机伺服不抖振。
七、高频踩坑点(工程避坑)
- 采样周期T过大:Tustin频率畸变严重,相位裕度计算失真,控制器实际不稳定;
- 忽略预扭曲:高频伺服带宽达不到设计值;
- 极点紧贴单位圆:噪声放大、轻微扰动就持续振荡,要向内拉减小模值;
- 把连续PID公式直接套进离散代码,不做Z变换推导,出现积分漂移、微分噪声爆炸。
作业:
- PD控制器Tustin变换完整推导+可直接粘贴的C语言差分代码;
- 二阶离散系统共轭复极点时域响应公式;
- z平面伯德图(幅频/相频)手绘判断方法。
DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。
更多推荐




所有评论(0)