最近刚刚使用
ti的
InstaSPIN-FOC算法。在调试中遇到些问题,希望大家一起探讨?
1.我的硬件平台是基于:
控制板:LAUNCHXL-F28027F LaunchPad
功率板:
BOOSTXL-DRV8305EVM
软件:CCS5.5
实验电机参数:电压:
24V 最大空载转速:
185rpm 连续电流:
3A 峰值电流:
6A。
该电机属于直流力矩电机(低速)
这里我以该硬件平台支持的
project Lab02b为例,开始评估
InstaSPIN-foc算法。问题如下:
1.大家帮我参考下我的
User.h配置是否合理?
2.是否还需要配置其他参数能够提高参数辨识的精度?
3.#define USER_MOTOR_FLUX_EST_FREQ_Hz (30.0)//
我使用的电机为低速电机,假如按照
185rpm计算,文档中推荐额定最高转速
*10%。这样的话USER_MOTOR_FLUX_EST_FREQ_Hz的值很低,我实际中发现改变这个值对电感参数辨识影响较大。这是为什么?还有哪些参数配置对电机参数辨识精度影响较大?
4.我再完成参数辨识进行检查是发现,
Flux*full_scale_freq 远大于母线电压
24V,
GUI红色报警,这是怎么一回事?哪里配置不合理?如下图所示
#define USER_IQ_FULL_SCALE_FREQ_Hz (500.0) //GUI_QSG推荐设置
500Hz
#define USER_IQ_FULL_SCALE_VOLTAGE_V (24.0) //一般等于母线电压
#define USER_PWM_FREQ_kHz (30.0) //30K PWM
#define USER_NUM_PWM_TICKS_PER_ISR_TICK (3) //10k ISR
#define USER_NUM_ISR_TICKS_PER_CTRL_TICK (1) // 10k CTRL
#define USER_NUM_CTRL_TICKS_PER_CURRENT_TICK (1) // 10k CURRENT
#define USER_NUM_CTRL_TICKS_PER_EST_TICK (1) // 10K EST
#define USER_NUM_CTRL_TICKS_PER_SPEED_TICK (10) // 1K SPEED
#define USER_NUM_CTRL_TICKS_PER_TRAJ_TICK (10) // 1K TRAJ
#define USER_MOTOR My_Motor
#define USER_MOTOR_TYPE MOTOR_Type_Pm
#define USER_MOTOR_NUM_POLE_PAIRS (8) //8对极
#define USER_MOTOR_Rr (NULL)
#define USER_MOTOR_Rs (NULL)
#define USER_MOTOR_Ls_d (NULL)
#define USER_MOTOR_Ls_q (NULL)
#define USER_MOTOR_RATED_FLUX (NULL)
#define USER_MOTOR_MAGNETIZING_CURRENT (NULL)
#define USER_MOTOR_RES_EST_CURRENT (0.3)//10%*连续电流
#define USER_MOTOR_IND_EST_CURRENT (-0.3)
#define USER_MOTOR_MAX_CURRENT (6) //峰值电流
#define USER_MOTOR_FLUX_EST_FREQ_Hz (30.0)//
0