用C语言编写的PI调节器函数,采用位置式算法,求大神指教

用C语言编写的PI调节器函数,采用位置式算法,求大神指教,第1张

typedef struct{  

    float limit    //输出限幅  

    float target   //设置量  

    float feedback //实测量  

    float Kp       //比禅纯例系数

    float Ki       //积分系数

    float Kd       //微分系数

    float eSum     //误差积分

    float e0       //当前误差  

    float e1       //上一次误差  

}PIDType  

  

#define max(a, b)           (a>b? a:b)  

#define min(a, b)           (a<b? a:b)  

#define 烂袭备range(x, a, b)      (min(max(x, a), b))  

  

float pid_pos_update(PIDType *p)  

{  

    float pe, ie, de  

    float out=0  

    //计算当前误差  

  饥毁  p->e0 = p->target - p->feedback  

    //误差积分  

    p->eSum += p->e0  

    //误差微分  

    de = p->e0 - p->e1  

    pe = p->e0  

    ie = p->eSum  

    p->e1 = p->e0  

    //数据增量  

    out = pe*(p->Kp) + ie*(p->Ki) + de*(p->Kd)  

    //输出限幅  

    out = range(out, -p->limit, p->limit)  

    return out  

}

pi调节器矫正典型一型系统步骤如下:

1、将Pi调节器连接到典型一型系统的输入和誉氏输出端口。

2、设定Pi调节器的参数,包括比例系数Kp、积分系数Ki和微分系数Kd。

3、采用闭环控制,使用反馈检测系统输出的变化,调整Pi调节器的参薯御数,直至达到满意的响应。

4、最后,调整Pi调节器的参数,使典型一庆手散型系统的响应达到期望的状态。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/12514781.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-26
下一篇 2023-05-26

发表评论

登录后才能评论

评论列表(0条)

保存