4. PI控制器参数整定与实现
任务目标
在PMSM FOC控制中,电流环与速度环均采用PI控制器。本案例实现离散化位置式PI控制器,并给出基于典型电机参数的整定流程与验证方法,使阶跃响应满足:电流环超调<5%,调节时间<1ms;速度环超调<10%,调节时间<50ms(带载启动)。
PI控制器离散化实现
采用位置式PI算法,输出限幅与积分分离(抗积分饱和)。电流环与速度环共用同一控制器结构,仅参数不同。核心代码如下:
typedef struct {
float Kp; // 比例系数
float Ki; // 积分系数
float Ts; // 采样周期(s)
float out_max; // 输出限幅
float integral; // 积分累加值
float out; // 控制器输出
} PI_Controller;
void PI_Init(PI_Controller *pi, float Kp, float Ki, float Ts, float out_max) {
pi->Kp = Kp;
pi->Ki = Ki;
pi->Ts = Ts;
pi->out_max = out_max;
pi->integral = 0.0f;
pi->out = 0.0f;
}
float PI_Process(PI_Controller *pi, float ref, float fdb) {
float err = ref - fdb;
float prop = pi->Kp * err;
// 积分分离:误差过大时暂停积分,防止饱和
if (fabsf(err) < pi->out_max * 0.1f) {
pi->integral += pi->Ki * pi->Ts * err;
// 积分限幅(抗饱和)
if (pi->integral > pi->out_max) pi->integral = pi->out_max;
if (pi->integral < -pi->out_max) pi->integral = -pi->out_max;
}
pi->out = prop + pi->integral;
// 输出限幅
if (pi->out > pi->out_max) pi->out = pi->out_max;
if (pi->out < -pi->out_max) pi->out = -pi->out_max;
return pi->out;
}
参数整定流程
以表贴式PMSM(\(L_d=L_q=L_s\))为例,采用工程整定法:
- 电流环:将电流环等效为一阶惯性环节,按典型I型系统整定。取电流环带宽 \(\omega_{cc}=2\pi\times1000\) rad/s,则 \(Kp=L_s\cdot\omega_{cc}\),\(Ki=R_s\cdot\omega_{cc}\)。其中 \(L_s\) 为定子电感,\(R_s\) 为定子电阻。
- 速度环:将电流环等效为惯性环节(时间常数约为电流环调节时间的1/4),速度环按典型II型系统整定。取速度环带宽 \(\omega_{sc}=2\pi\times50\) rad/s,则 \(Kp=J\cdot\omega_{sc}/(1.5\cdot P\cdot\psi_f)\),\(Ki=Kp\cdot\omega_{sc}/5\)。其中 \(J\) 为转动惯量,\(P\) 为极对数,\(\psi_f\) 为永磁体磁链。
仿真验证(MATLAB/Simulink)
搭建双闭环FOC仿真模型,电机参数:\(R_s=0.5\Omega\),\(L_s=0.4\)mH,\(\psi_f=0.05\)Wb,\(P=4\),\(J=0.0002\)kg·m²,直流母线电压24V,PWM开关频率20kHz(电流环采样周期 \(T_s=50\mu s\))。
% 电流环参数计算
Rs = 0.5; Ls = 0.4e-3; wcc = 2*pi*1000;
Kp_i = Ls * wcc; % 0.4e-3 * 6283 = 2.513
Ki_i = Rs * wcc; % 0.5 * 6283 = 3141.6
% 速度环参数计算
J = 0.0002; P = 4; psi_f = 0.05; wsc = 2*pi*50;
Kp_s = J * wsc / (1.5 * P * psi_f); % 0.0002*314.16/(1.5*4*0.05)=0.2094
Ki_s = Kp_s * wsc / 5; % 0.2094*314.16/5=13.16
仿真模型中,电流环PI输出限幅为±2V(相电压),速度环PI输出限幅为±5A(q轴电流指令)。给定速度阶跃1000rpm,空载启动。
验证方法与判定标准
- 电流环阶跃响应:在速度环开环状态下,给定q轴电流阶跃1A,观察实际q轴电流。满足:超调量<5%,调节时间(2%误差带)<1ms。
- 速度环阶跃响应:闭合双环,给定转速阶跃1000rpm,观察实际转速。满足:超调量<10%,调节时间(2%误差带)<50ms,稳态误差为0。
- 抗扰验证:在转速稳定后,施加额定负载转矩,转速跌落<50rpm,恢复时间<100ms。
常见问题
- 电流环振荡:若实际电流出现高频振荡,通常因Kp过大或采样延迟补偿不足。可适当降低Kp,或增加低通滤波(截止频率为带宽的5~10倍)。
- 速度环超调过大:若超调超过10%,可引入速度前馈或降低Kp_s,同时适当增大Ki_s以消除稳态误差。
- 积分饱和:启动时误差大,积分分离阈值(此处设为输出限幅的10%)可防止积分深度饱和,但若阈值过小会导致稳态误差,需根据实际调试调整。
以上参数为理论初值,实际调试时建议在仿真中先验证,再移植到实验平台。实验时需注意电流采样噪声,必要时在反馈通道增加一阶低通滤波(截止频率≥10倍带宽)。