controllers::MotorPosController
电机位置控制器 对初学者来说,可以把它理解成“把目标角度逐步变成驱动器能理解的控制命令”的中间层。
继承关系
- 基类
IController公开
构造与析构
2MotorPosController
controllers::MotorPosController::MotorPosController (motors::IMotor *motor, const Config &cfg)
motor 被控制的电机 cfg 控制器配置
controllers/motor_pos_controller.hpp:56~MotorPosController
controllers::MotorPosController::~MotorPosController () override
上游未提供说明。
controllers/motor_pos_controller.hpp:57成员函数
2setRef
void controllers::MotorPosController::setRef (float position, float max_velocity=kNoLimit)
设置位置参考 position 目标输出轴角度,单位 deg max_velocity 位置环输出的最大目标角速度限制; 传 kNoLimit(默认)表示不施加额外限制
controllers/motor_pos_controller.hpp:69update
void controllers::MotorPosController::update () override
周期更新控制器
controllers/motor_pos_controller.hpp:62成员变量
9internal_set_prescaler_
size_t controllers::MotorPosController::internal_set_prescaler_
内部指令发送分频计数器
controllers/motor_pos_controller.hpp:85internal_set_ratio_
uint32_t controllers::MotorPosController::internal_set_ratio_
内部指令发送分频比
controllers/motor_pos_controller.hpp:86kNoLimit
float controllers::MotorPosController::kNoLimit
上游未提供说明。
controllers/motor_pos_controller.hpp:71max_velocity_
float controllers::MotorPosController::max_velocity_
位置环输出速度限幅
controllers/motor_pos_controller.hpp:81pos_vel_freq_ratio_
uint32_t controllers::MotorPosController::pos_vel_freq_ratio_
位置环相对 update 的分频比
controllers/motor_pos_controller.hpp:83pos_vel_prescaler_
uint32_t controllers::MotorPosController::pos_vel_prescaler_
位置环分频计数器
controllers/motor_pos_controller.hpp:77position_pid_
PIDMotor controllers::MotorPosController::position_pid_
外层位置环
controllers/motor_pos_controller.hpp:74position_ref_
float controllers::MotorPosController::position_ref_
当前位置参考,单位 deg
controllers/motor_pos_controller.hpp:79velocity_pid_
PIDMotor controllers::MotorPosController::velocity_pid_
内层速度环
controllers/motor_pos_controller.hpp:75