diff --git a/User_Code/module/algorithm/controller/ffc/ffc.c b/User_Code/module/algorithm/controller/ffc/ffc.c index 268afb8..d949f4b 100644 --- a/User_Code/module/algorithm/controller/ffc/ffc.c +++ b/User_Code/module/algorithm/controller/ffc/ffc.c @@ -44,7 +44,7 @@ float FFC_FeedForwardCalc(FFC_Handle_t *handle, float target) { handle->result = abs_clip(handle->result, handle->configs.MaxOutput); // 更新历史状态 - // 注意:原 C++ 代码中先更新 LAST 再更新 LLAST,这会导致移位寄存器逻辑变为 LLAST = (新的)LAST。 + // 注意:原代码中先更新 LAST 再更新 LLAST,这会导致移位寄存器逻辑变为 LLAST = (新的)LAST。 // 为了保持转换的一致性,这里保留原代码的顺序。 handle->set[FFC_LAST] = handle->set[FFC_NOW]; handle->set[FFC_LLAST] = handle->set[FFC_LAST]; @@ -70,7 +70,6 @@ void FFC_CheckPointer(FFC_Handle_t *handle, float *get) { void FFC_Init(FFC_Handle_t *handle, FFC_Init_Config_s config, float *get) { if (handle == NULL) return; - // 对应 C++: FFCSetConfig(config, get) FFC_SetConfig(handle, config); if (get != NULL) { FFC_CheckPointer(handle, get); diff --git a/User_Code/module/algorithm/controller/pid/pid.c b/User_Code/module/algorithm/controller/pid/pid.c index 6931edd..dcd9a65 100644 --- a/User_Code/module/algorithm/controller/pid/pid.c +++ b/User_Code/module/algorithm/controller/pid/pid.c @@ -2,13 +2,15 @@ * @file controller.c * @author wanghongxi * @author modified by TuxMonkey - * @brief PID控制器定义 + * @brief PID控制器及前馈控制器 * @version beta * @date 2026-02-12 * * @copyright Copyright (c) 2025 DLMU.CONE EC all rights reserved */ + #include "pid.h" +#include "ffc.h" #include "memory.h" /* ----------------------------下面是pid优化环节的实现---------------------------- */ @@ -80,7 +82,8 @@ static void f_Output_Filter(PIDInstance *pid) pid->Last_Output * pid->Output_LPF_RC / (pid->Output_LPF_RC + pid->dt); } -// 前馈控制计算 +// 前馈控制计算(后续考虑写成电流/速度前馈) + static void f_FeedForward_Control(PIDInstance *pid) { // 更新设定值历史