2. 位置环的数学模型:传递函数、PID形式与离散化方法

好,咱们进入正题。

位置环控制,说白了就是让电机老老实实转到你指定的角度或位置。你给它一个目标位置,它就得精准停在那里,不能超调,不能震荡,更不能抖个不停。

我刚开始做伺服驱动时,总觉得位置环不就是个比例控制嘛,调大P值不就完了?结果有一次在高速贴片机上,电机到位后愣是来回晃了三四次才稳定,把旁边的物料都震飞了。嗯,从那以后我才真正重视起位置环的数学模型来。

2.1 位置环的传递函数

先看一个典型的运动控制系统结构:

位置环 → 速度环 → 电流环 → 电机

位置环在最外层,它的输出是速度环的给定值。

为了简化分析,我们通常把内环(速度环+电流环)等效成一个一阶惯性环节:

G_inner(s) = K / (T·s + 1)

其中:

  • K:内环增益(通常接近1)
  • T:内环等效时间常数(一般在几毫秒到几十毫秒)

那么位置环的开环传递函数就是:

G_open(s) = C(s) · G_inner(s) · (1/s)

注意最后那个 1/s,它来自位置积分关系——速度积分得到位置。这是位置环和速度环最本质的区别。

我个人习惯把位置环的闭环传递函数写成:

Φ(s) = C(s)·G_inner(s) / [s + C(s)·G_inner(s)]

如果位置控制器C(s)只是一个比例系数Kp,那么:

Φ(s) = Kp·K / [T·s² + s + Kp·K]

这是一个典型的二阶系统。你想想看,二阶系统的阻尼比ζ和自然频率ωn直接决定了位置响应的快慢和超调量。

参数 表达式 物理意义
ωn √(Kp·K / T) 响应速度
ζ 1 / (2·√(Kp·K·T)) 阻尼程度

这里有个坑:Kp越大,响应越快,但阻尼比越小,超调越大。我曾经在数控机床上把Kp调得太大,结果每次定位都过冲,刀具直接撞上了工件……嗯,那次的维修费够我买好几套开发板了。

2.2 PID控制器的位置环形式

实际工程中,位置环最常用的是P控制PI控制。为什么很少用完整的PID?

原因很简单:

  • 微分项D:位置信号本身就有噪声,微分会放大噪声,搞不好系统会抖得像筛子。我见过有人硬上微分,结果电机高频啸叫,整个机架都在共振。
  • 积分项I:用于消除稳态误差。但位置环的稳态误差通常由速度环的静差引起,如果速度环已经用了PI,位置环再加I可能会引起积分饱和。

所以,常见的做法是:

// 位置环PID(实际常用P或PI)
u(t) = Kp·e(t) + Ki·∫e(t)dt + Kd·de(t)/dt

// 其中 e(t) = θ_target - θ_actual
// u(t) 是速度环的给定值

我的经验法则:

  • 普通定位:只用P,Kp从0.5开始试
  • 高精度定位:P + 前馈,前馈系数0.8~1.0
  • 有负载变化:P + 小积分,Ki = Kp / 100 起步

这里有个变种叫位置式PID增量式PID。位置环我推荐用增量式,因为:

  • 输出是速度增量,不会突变
  • 积分饱和容易处理
  • 手动/自动切换时无冲击
// 增量式PID(位置环形式)
Δu(k) = Kp·[e(k) - e(k-1)] + Ki·e(k) + Kd·[e(k) - 2e(k-1) + e(k-2)]

// 实际输出
u(k) = u(k-1) + Δu(k)

2.3 位置环的离散化方法

连续域设计好了,总得在MCU或DSP上跑吧?这就涉及离散化。

常用的离散化方法有三种:

方法 映射关系 特点
前向欧拉 s = (z-1)/T 简单,但可能不稳定
后向欧拉 s = (z-1)/(z·T) 稳定,高频有畸变
双线性变换(Tustin) s = (2/T)·(z-1)/(z+1) 精度高,最常用

我个人强烈推荐双线性变换。为什么?

  • 它把s平面的左半平面映射到z平面的单位圆内
  • 频率畸变可以通过预畸变补偿
  • 我在三个产品线上都用它,没出过问题

举个例子,把位置环的PI控制器离散化:

连续域:C(s) = Kp + Ki/s

用双线性变换:

C(z) = Kp + Ki · (T/2) · (z+1)/(z-1)

整理后得到差分方程:
u(k) = u(k-1) + (Kp + Ki·T/2)·e(k) + (-Kp + Ki·T/2)·e(k-1)

注意采样时间的选择:

  • 位置环的采样周期通常是速度环的5~10倍
  • 比如速度环1kHz,位置环可以100~200Hz
  • 采样太快:微分项噪声大,积分项累积慢
  • 采样太慢:响应滞后,系统容易震荡

我曾经在一个项目中把位置环采样设成和速度环一样快,结果CPU负载飙到90%,还出现了奇怪的抖动。后来把位置环降速到200Hz,一切正常了。

2.4 知识体系总览

下面这张图总结了位置环数学模型的核心脉络:

位置环数学模型知识体系 传递函数 PID控制器形式 离散化方法 开环:C(s)·G_inner(s)·(1/s) 闭环:二阶系统 ζ, ωn 内环等效:K/(T·s+1) P控制:最常用 PI控制:加积分消静差 增量式PID:推荐使用 前馈补偿:提升响应 前向欧拉:简单不稳定 后向欧拉:稳定有畸变 双线性变换:精度最高 采样周期选择:5~10倍速度环 核心:连续域设计 → 双线性变换离散 → 增量式实现

嗯,这张图把咱们今天讲的内容串起来了。从传递函数到PID形式,再到离散化方法,每一步都有它的物理意义和工程考量。

最后说一句:数学模型是基础,但真正好用的位置环,是在模型基础上不断调试出来的。别怕试错,我调过的位置环没有一百也有八十个了,每个系统都有它的小脾气。

本章要点回顾:

  • 位置环传递函数本质是二阶系统,阻尼比是关键
  • 位置环PID推荐P或PI,慎用微分
  • 离散化首选双线性变换,采样周期要合理
  • 增量式PID实现更安全、更灵活

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