TataJen的个人空间 https://bbs.21ic.com/?1162358 [收藏] [复制] [RSS]

日志

PID 位置环 速度环 电流环

已有 881 次阅读2016-9-18 11:47 |系统分类:兴趣爱好| 控制器, 电机

位置环控制器的输出是速度,作为速度环的输入,而速度环控制器的输出是电流,作为电流环的输入,电流环的输出是电机控制占空比

    Angle_Delta = Angle_Now - Angle_Pre;
    scale_adjust(&Angle_Delta);
    location=location-Angle_Delta;   
   
    PIDsum1.p = PID1.p * location;
    PIDsum1.i += PID1.i * location * dt;
    PIDsum1.d = PID1.d * (location - location_pre) / dt;
   
    Target = (int)(PIDsum1.p + PIDsum1.i + PIDsum1.d);     
    Angle_Error =Target - Angle_Delta;

    PIDsum2.p = PID2.p * Angle_Error;
    PIDsum2.i += PID2.i * Angle_Error * dt;
    PIDsum2.d = PID2.d * (Angle_Error - Angle_Error_Pre) / dt;
   
    I_Value = (int)(PIDsum2.p + PIDsum2.i + PIDsum2.d);
    I_Error=I_Value-I_now;

    PIDsum3.p = PID3.p * I_Error;
    PIDsum3.i += PID3.i * I_Error * dt;
    PIDsum3.d = PID3.d * (I_Error - I_Error_Pre) / dt;

    ControlLaw = (int)(PIDsum3.p + PIDsum3.i + PIDsum3.d);




路过

鸡蛋

鲜花

握手

雷人

评论 (0 个评论)