双闭环永磁同步电机调速系统(SVPWM) 主电路采用两电平逆变器,永磁同步电机参数已设定,采用空间矢量PWM控制,扇区选择、中间变量、矢量作用时间、切换点等模块均搭建完成。 控制系统采用双闭环控制系统,包括电流内环与转速外环两个控制环,均采用PI调节器,调节器参数已设定,其中电流内环采用内模控制,转速外环采用经典PI算法,从而得到仿真中PI调节器参数。 转速波形、电流波形、转矩波形均从仿真过程中得出。

当电机转速突然从1000rpm掉到800rpm时,控制系统的PI调节器突然开始疯狂输出——这场景是不是像极了新手司机在陡坡上猛踩油门?咱们今天要聊的双闭环永磁同步电机调速系统,本质上就是给电机找了个经验丰富的老司机。

先看主电路这辆"车"的配置。两电平逆变器就像手动挡变速箱,六个IGBT开关管对应着六个挡位。这里有个有趣的代码彩蛋:

function sector = Sector_Detect(Ualpha, Ubeta)
    angle = atan2(Ubeta, Ualpha) * 180/pi;
    if angle < 0
        angle = angle + 360;
    end
    sector = floor(angle/60) + 1;
end

这个扇区判断函数堪称矢量控制的GPS导航。用atan2函数求角度时要注意处理负值,就像老司机永远不会把方向盘打死。当角度计算出现负数时,+360度的操作相当于把方向盘回正,确保不会走错扇区。

电流环的PI参数设置是个技术活,这里的内模控制就像给油门踏板加了阻尼器。来看段实际调参时的骚操作:

void Current_PI_Update(PI_TypeDef *pi) {
    float error = pi->ref - pi->fdb;
    pi->integral += error * CONTROL_PERIOD;
    pi->output = pi->Kp * error + pi->Ki * pi->integral;
    
    // 抗饱和处理,像老司机知道何时松油门
    if(pi->output > MAX_VOLTAGE) {
        pi->output = MAX_VOLTAGE;
        pi->integral -= error * CONTROL_PERIOD; // 回退积分
    }
}

这个积分回退操作堪称控制算法的神来之笔。当输出达到电压极限时,不是简单地停止积分,而是反向修正,就像老司机发现油门踩过头时会先松脚再轻点。

双闭环永磁同步电机调速系统(SVPWM) 主电路采用两电平逆变器,永磁同步电机参数已设定,采用空间矢量PWM控制,扇区选择、中间变量、矢量作用时间、切换点等模块均搭建完成。 控制系统采用双闭环控制系统,包括电流内环与转速外环两个控制环,均采用PI调节器,调节器参数已设定,其中电流内环采用内模控制,转速外环采用经典PI算法,从而得到仿真中PI调节器参数。 转速波形、电流波形、转矩波形均从仿真过程中得出。

转速环的波形变化最有意思。启动瞬间的转矩波形会像过山车一样冲高回落,这时候观察PI调节器的输出:

def speed_pi_control(self):
    error = self.speed_ref - self.actual_speed
    self.integral += error * self.Ts
    output = self.Kp * error + self.Ki * self.integral
    
    if output > self.current_limit:
        output = self.current_limit
    elif output < -self.current_limit:
        output = -self.current_limit
    return output

这里的电流限幅就像给新手司机装的电子限速器。当转速调节器想给出超大电流指令时,限幅模块会按住它躁动的手,防止把IGBT烧成烟花。

仿真时最魔性的时刻是观察切换点计算模块的工作状态。当矢量作用时间超过PWM周期时,这个处理逻辑简直是人类智慧结晶:

always@(T1, T2) begin
    if((T1 + T2) > Ts) begin
        T1_adj = T1 * Ts/(T1 + T2);
        T2_adj = T2 * Ts/(T1 + T2);
        T0_adj = 0;
    end
    else begin
        T0_adj = Ts - T1 - T2;
    end
end

这种按比例缩放的算法,就像老司机在狭窄弯道中精准控制方向盘转角。当总时间超限时,所有矢量作用时间等比例缩减,既保持矢量方向不变,又确保PWM周期不越界。

最后看转矩波形里的高频纹波,那其实是SVPWM在秀操作。每个PWM周期中矢量的快速切换,就像手动挡跟趾动作时油门和刹车的精准配合。这些看似恼人的毛刺,实则是控制系统正常工作的心电图。

Logo

腾讯云面向开发者汇聚海量精品云计算使用和开发经验,营造开放的云计算技术生态圈。

更多推荐