feat(FOC): 添加带速度限制的角度闭环控制功能

新增angle_control_with_velocity_limit函数,实现带速度限制的角度控制,
包含角度PID和速度PID双环控制,防止电机转速过快导致的不稳定。

- 新增带速度限制的角度控制函数
- 配置新的PID控制器用于速度内环和角度外环
This commit is contained in:
cbb
2025-12-23 11:55:09 +08:00
parent 8732174855
commit abd64da360
5 changed files with 44 additions and 14 deletions
+4 -5
View File
@@ -25,8 +25,8 @@ extern FOC_Controlroller FOC; // FOC控制
extern FlashEEPROM flashEEP; // EEPROM类
TaskScheduler scheduler = {0};
volatile u32 system_runtime_us = 0;
volatile u32 cnt_test = 0;
volatile u32 system_runtime_us = 0; // 电机驱动计算轮次
volatile u32 cnt_test = 0; // 负载检测
int main(void) {
systick_config(); // 系统时钟初始化
SystemCoreClockUpdate(); // 更新系统时钟变量
@@ -89,9 +89,8 @@ void do_task(u32 currentTasks) {
break;
}
case 1: {
FOC.angle_control(FOC.target_angle); // 角度闭环控制
// FOC.angle_control_with_velocity_limit(FOC.target_angle,
// FOC.limit_velocity); // 角度闭环控制,带速度限制
// FOC.angle_control(FOC.target_angle); // 角度闭环控制
FOC.angle_control_with_velocity_limit(FOC.target_angle); // 角度闭环控制,带速度限制
break;
}
case 2: {