首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >导纳力控的离散化方法:显示/隐式欧拉

导纳力控的离散化方法:显示/隐式欧拉

作者头像
索旭东
发布于 2026-09-15 20:25:50
发布于 2026-09-15 20:25:50
1010
举报
文章被收录于专栏:具身小站具身小站

在机械臂末端导纳控制的实现中,需要将连续的导纳微分方程离散化,以便在每个控制周期根据力传感器读数更新位置指令。常用的离散化方法就是显式欧拉法和隐式欧拉法。

  • 显式欧拉:用当前时刻的导数更新状态,下一时刻状态直接算出,公式显式给出。
  • 隐式欧拉:用下一时刻的导数更新状态,下一时刻状态隐含在方程中,需要求解。

显式欧拉和隐式欧拉都是对同一个连续微分方程的离散化近似,它们的目标都是:在离散时间点 t0,t1,t2,…上近似真实状态 x(t) 的值。但真实状态 x(t)x(t) 是连续变化的,计算机只能在离散时刻采样,无法精确知道中间的变化过程,所以只能用某种近似规则来估计下一时刻的状态。


1. 导纳控制方程回顾

以一维导纳模型为例:

其中:

  • Δx:位置修正量;
  • Md,Bd,Kd:导纳质量、阻尼、刚度参数值;
  • eF:力误差。

为了数值求解,把它写成一阶状态方程。令状态变量为:

因此:

离散化就是在每个采样周期 h 内,把这两个连续导数关系变成递推公式。

2. 显式欧拉法

显式欧拉法用当前时刻 k 的导数来外推下一时刻 k+1的状态,递推公式:

特点

  • 等号右边全部是已知量(当前状态和当前力误差);
  • 下一时刻状态 Δx_k+1,Δv_k+1 被直接、明确地表示出来;
  • 无需解方程,计算量小,实现简单。

显式概念

因为公式中 Δx_k+1 和 Δv_k+1在等号左边单独出现,右边不含它们自身。下一时刻的状态显式地表达为当前状态和输入的函数,不需要求解。

3. 隐式欧拉法

隐式欧拉法用下一时刻 k+1 的导数来更新状态,递推公式:

特点

  • 等号右边含有待求的 Δv_k+1 和 Δx_k+1,它们同时出现在方程两边;
  • 不能直接算出,需要解线性方程组,或者用迭代法(如牛顿迭代)求解;
  • 计算量比显式欧拉大,但数值稳定性更好。

求解

将两个方程联立,消去 Δx_k+1,可整理出关于 Δv_k+1的线性方程:

然后解得 Δv_k+1,再代入位置更新方程即可。

隐式概念

因为下一时刻状态 Δx_k+1,Δv_k+1 隐含在方程中,不能直接写出解析表达式,需要求解方程才能得到。

4. 对比

方法

递推形式

名称来源

显式欧拉

x_k+1=x_k+hf(x_k)

下一时刻状态显式等于当前状态加增量

隐式欧拉

x_k+1=x_k+hf(x_k+1)

下一时刻状态隐含在函数 f 中,需解方程

从数学形式看:

  • 显式:用“当前时刻的斜率”来估计下一时刻的状态,x_k+1在等号左边,右边没有 x_k+1;
  • 隐式:用“下一时刻的斜率”来估计下一时刻的状态,x_k+1同时出现在等号左边和右边,需要通过方程求解。

它们都不是微分方程的精确解,而是不同的近似方法。当采样步长 h 趋近于 0 时,两者的结果都会收敛到真实解,但它们的误差特性和稳定性不同。

5. 数值示例

考虑微分方程:

精确解是

,迅速衰减到 0。

取步长 h=0.02h=0.02:

  • 显式欧拉:

序列变成 1,−1,1,−1,…振荡发散,完全错误。

  • 隐式欧拉:

序列变成 1,0.333,0.111,0.037,…稳定衰减,与真实解趋势一致。 这说明:在这个刚性系统中,显式欧拉完全不可用,隐式欧拉仍然可用。但对于步长 h=0.001h=0.001,两者都表现良好。

6. 在导纳控制中的意义

项目

显式欧拉

隐式欧拉

计算量

小,每步直接算

稍大,每步需解方程

稳定性

条件稳定,步长过大可能发散

对线性系统无条件稳定

数值阻尼

较小,可能产生振荡

较大,能抑制高频振荡

实现复杂度

低

中等

在末端导纳控制中:

  • 若控制周期足够小(如 1 ms),且虚拟质量 Md和虚拟刚度 Kd不大,显式欧拉法通常足够,且实现简单。
  • 若虚拟刚度较大或控制周期受限制,显式欧拉可能不稳定,此时可选用隐式欧拉法,它允许较大步长且数值阻尼能帮助系统稳定。
  • 实际工程中还常用半隐式欧拉法(速度用新加速度,位置用新速度),它结合了两者的优点,也是许多物理仿真和控制器中采用的方法。
本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2026-08-22,如有侵权请联系 cloudcommunity@tencent.com 删除
目录
  • 1. 导纳控制方程回顾
  • 2. 显式欧拉法
    • 显式欧拉法用当前时刻 k 的导数来外推下一时刻 k+1的状态,递推公式:
    • 特点
    • 显式概念
  • 3. 隐式欧拉法
    • 特点
    • 求解
    • 隐式概念
  • 4. 对比
  • 5. 数值示例
  • 考虑微分方程:
  • 6. 在导纳控制中的意义
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档