跳转至

执行器参数说明

电机驱动内部控制环路

motor_circuit

Current Limit 与 Current Limit Margin

可以把 current limitcurrent limit margin 理解成:

"目标电流限制" + "保护冗余边界"

它们共同定义了电流控制器允许工作的安全区间。


📌 基本概念

current_lim(电流限制)

👉 控制器"正常允许输出的最大电流"

current_lim_margin(电流余量)

👉 给控制器预留的"缓冲空间",用于应对瞬时波动 / 控制误差

实际硬限制(绝对上限)

current_lim + current_lim_margin

👉 超过该上限会触发保护(如 error / current limit violation)


框图(逻辑结构)

current_lim

🧩 详细说明

1️⃣ current_lim 的作用(软限制)

在控制环(FOC)中:

Iq_cmd = clamp(Iq_target, -current_lim, +current_lim)

👉 即 Iq_setpoint 会被限制在 ±current_lim 范围内


2️⃣ current_lim_margin 的作用

用于检测"实际测量电流"是否异常:

可能误差来源: - ADC 误差 - PWM 延迟 - 反电动势 - 动态冲击

👉 因此允许短时间超过 current_lim


3️⃣ 触发保护条件

|Iq_measured| > current_lim + current_lim_margin

👉 会触发:

ERROR_CURRENT_LIMIT_VIOLATION

📊 示例

假设:

  • current_lim = 40 A\
  • current_lim_margin = 8 A
区间 含义
0 ~ 40A 正常工作
40 ~ 48A 允许瞬态(margin 区)
>48A ❌ 触发保护

⚠️ 工程意义

current_lim 决定

👉 电机最大输出扭矩

Torque ∝ Iq

current_lim_margin 决定

👉 系统稳定性 / 鲁棒性

  • 太小:容易误触发保护
  • 太大:可能导致过流损坏 MOS 或电机

🧠 总结

  • current_lim → "期望的最大电流"
  • current_lim_margin → "允许的短暂超调范围"

🚀 工程建议

适用于:

  • 高动态运动(跳跃 / locomotion)
  • 强非线性控制(RL 控制)

建议配置:

  • margin 设置为 20% ~ 30%
  • 同时配合:
    • 母线电流限制(bus current)
    • 温度保护
    • torque limiter