refactor(FOC): 移除代码冲突标记并优化FOC控制器实现
- 移除了所有git冲突标记(<<<<<<< HEAD, =======, >>>>>>>) - 清理了校准步骤相关注释代码 - 修复了Iq,Id计算中的角度处理逻辑 - 优化了PID控制器参数设置和初始化流程 - 重构了SVPWM相电压设置方法,移除了重复的相电压设置函数 - 修复了关闭功能和电源电压安全限制的计算 feat(CAN): 增强CAN通信协议支持多种控制模式 - 实现了目标电流、速度、角度的多参数控制 - 添加了PID参数动态配置功能 - 支持7种不同控制模式的切换 - 实现了控制模式切换时PID状态重置机制 refactor(pid): 扩展PID控制器功能接口 - 添加了set_P方法替代原有的set_P_percent - 新增set_limit方法用于输出限幅控制 - 实现了reset方法用于PID状态重置 - 优化了PID参数设置接口 fix(timer): 优化定时器任务调度机制 - 重构了任务调度的时间片管理逻辑 - 实现了基于查找表的任务分配方式 - 优化了100us、1ms、10ms、100ms等不同周期的任务调度 - 提高了系统实时性表现 perf(config): 优化系统配置和数学常量定义 - 添加了必要的GD32头文件包含 - 重新组织了PID参数命名规范 - 定义了常用数学常量如三角函数相关数值 - 优化了定时器频率和周期计算公式
This commit is contained in:
@@ -6,7 +6,6 @@
|
||||
#include <algorithm>
|
||||
#include <cmath>
|
||||
|
||||
|
||||
extern CAN_transmiter CAN0_transmiter;
|
||||
PIDController::PIDController(float P, float I, float D, float ramp, float limit)
|
||||
: P(P), I(I), D(D), output_ramp(ramp) // PID控制器加速度限幅
|
||||
@@ -68,4 +67,25 @@ void PIDController::set_PID(float P, float I, float D) {
|
||||
* @param P: P参数
|
||||
* @return void
|
||||
*/
|
||||
void PIDController::set_P_percent(float pp) { this->P = pp; }
|
||||
void PIDController::set_P(float pp) {
|
||||
this->P = pp;
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief 设置输出限幅
|
||||
*
|
||||
* @param limit: 输出限幅
|
||||
* @return void
|
||||
*/
|
||||
void PIDController::set_limit(float limit) { this->limit = limit; }
|
||||
|
||||
/**
|
||||
* @brief 重置PID控制器状态
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
void PIDController::reset() {
|
||||
error_prev = 0.0f;
|
||||
output_prev = 0.0f;
|
||||
integral_prev = 0.0f;
|
||||
}
|
||||
Reference in New Issue
Block a user