feat(FOC): 重构FOC控制器实现并修复SVPWM算法支持
- 修复类名拼写错误:FOC_Controlroller -> FOC_Controller - 移除不必要的角度归一化函数,直接使用fmod优化性能 - 添加完整的SVPWM算法实现,提高电机控制效率 - 重构PID参数配置,使用动态参数调整机制 - 增加电流反馈功能,实时监测电机运行状态 - 优化电压安全限制,提高系统稳定性 - 更新控制模式映射,支持更多控制策略 - 改进CAN通信协议,增加电流反馈传输
This commit is contained in:
@@ -13,7 +13,7 @@
|
||||
FlashEEPROM flashEEP = FlashEEPROM();
|
||||
extern angle_sensor KTH7823;
|
||||
extern CAN_transmiter CAN0_transmiter;
|
||||
extern FOC_Controlroller FOC; // FOC控制
|
||||
extern FOC_Controller FOC; // FOC控制
|
||||
|
||||
fmc_state_enum write_ADDRESS(u32 address, u32 data) {
|
||||
fmc_unlock();
|
||||
@@ -125,7 +125,7 @@ u8 FlashEEPROM::read_saved_system_config(void) {
|
||||
|
||||
FOC.control_mode = (u8)data[0];
|
||||
FOC.limit_voltage = data[1];
|
||||
FOC.limit_velocity = data[2];
|
||||
FOC.target_current = data[2];
|
||||
KTH7823.angle_set(data[3]);
|
||||
FOC.target_angle = data[4];
|
||||
FOC.target_velocity = data[5];
|
||||
@@ -389,7 +389,7 @@ FlashEepromStatus FlashEEPROM::save_system_config(bool saved) {
|
||||
u32 CRC_NUM = 0x0000;
|
||||
float data[CONFIG_SAVED_NUM] = {
|
||||
(float)FOC.control_mode, FOC.limit_voltage,
|
||||
FOC.limit_velocity, FOC.rt_angle,
|
||||
FOC.target_current, FOC.rt_angle,
|
||||
FOC.target_angle, FOC.target_velocity};
|
||||
|
||||
// 如果系统配置标记已保存,则无需再次保存
|
||||
|
||||
Reference in New Issue
Block a user