One Motor 0.5.1
RoboMaster全平台一站式电机驱动库
|
一个通用的、可配置的PID控制器。 更多...
#include <PID.hpp>
Public 成员函数 | |
PIDController (const PID_Params< ValueType > ¶ms) | |
PID控制器的构造函数。 | |
ValueType | compute (ValueType ref, ValueType measure) |
计算PID输出。 | |
void | reset () |
重置PID控制器的内部状态。 | |
一个通用的、可配置的PID控制器。
Algorithm | PID算法类型,可以是 Positional (位置式) 或 Incremental (增量式)。 |
ValueType | PID计算所使用的数据类型。 |
Features | 一个可变参数模板,用于指定PID控制器的附加特性,例如 WithDeadband , WithIntegralLimit 等。 |
该PID控制器通过模板参数高度可定制。
Algorithm
决定了是使用位置式还是增量式PID。ValueType
决定了内部计算的精度。Features
允许你通过添加特性标签来启用或禁用特定功能,例如:WithDeadband
: 引入死区,当误差很小时忽略不计。WithIntegralLimit
: 防止积分饱和。WithDerivativeOnMeasurement
: 避免因目标值突变引起的微分冲击。WithDerivativeFilter
: 平滑微分项。WithOutputFilter
: 平滑最终输出。WithOutputLimit
: 限制输出范围。
|
inlineexplicit |
PID控制器的构造函数。
params | 包含所有PID参数的结构体。 |
|
inline |
计算PID输出。
ref | 目标值 (设定值)。 |
measure | 实际测量值 (反馈值)。 |
|
inline |
重置PID控制器的内部状态。
将积分项、历史误差、历史输出等所有内部状态变量清零。