Link

运动控制

SimpleFOClibrary 有两个主要参数来定义要使用的运动控制架构(每个参数都可以实时修改):

力矩控制模式

SimpleFOClibrary中有三种扭矩控制类型:

  • 电压 - TorqueControlType::voltage
  • 直流电流 - TorqueControlType::dc_current
  • FOC电流 - TorqueControlType::foc_current
⚠️ 这个参数不用于开环控制下

它们可以通过改变运动属性来设置 torque_controller.

// 设置力矩模式
// TorqueControlType::voltage    (默认)
// TorqueControlType::dc_current
// TorqueControlType::foc_current
motor.torque_controller = TorqueControlType::foc_current;

有关不同扭矩模式的更深入的解释,请访问 torque mode docs

运动控制模式

SimpleFOClibrary 有两种运动控制模式:

闭环运动控制

SimpleFOClibrary的闭环有三种控制类型:

  • 力矩- MotionControlType::torque
  • 速度 - MotionControlType::velocity
  • 角 - MotionControlType::angle

通过改变电机的controller控制器参数来设定。

// 设置运动控制环
// MotionControlType::torque
// MotionControlType::velocity
// MotionControlType::angle
motor.controller = MotionControlType::angle;

如果了解更多关于不同闭环控制的深入解释,请访问: closed-loop control docs

开环控制

此外,你可以运行电机在开环,没有位置传感器反馈,以及:

  • 速度开环控制- MotionControlType::velocity_openloop
  • 位置开环控制 - MotionControlType::angle_openloop
索引搜索使用也使用开环位置控制,但有一些额外的参数,见 index search

你也可以通过设置电机的controller参数来实现。

// MotionControlType::velocity_openloop    - 开环速度控制
// MotionControlType::angle_openloop       - 开环位置控制
motor.controller = MotionControlType::angle_openloop;

关于不同的闭环控制的深入解释,请访问open-loop control docs

有关运动控制策略的源代码实现的更多信息,请查看 library source code documentation