位置式PID与增量式PID

写到简介明了,不错

原文地址 https://www.cnblogs.com/guanglun/p/7809761.html

 

//位置式PID

float Kp;
float Ki;
float Kd;

float eSum,e0,e1;

float pid_control(float now,float target)
{
    float pe,ie,de;
    float out;
    
    e0 = target - now;
    eSum += e0;
    
    pe = e0;
    ie = eSum;
    de = e0 - e1;
        
    out = pe*Kp + ie*Ki + de*Kd;
    
    out = limit(out,-LIMIT,LIMIT);

    e1 = e0;
    
    return out;
}

//增量式PID

float Kp;
float Ki;
float Kd;

float eSum,e0,e1,e2;

float pid_control(float now,float target)
{
    float pe,ie,de;
    float out;

    e0 = target - now;
    
    pe = e0 - e1;
    ie = e0;
    de = e0 - 2*e1 + e2;
    
    out = pe*Kp + ie*Ki + de*Kd;
    out = limit(out,-LIMIT,LIMIT);
    
    e2 = e1;
    e1 = e0;
    
    return out;
    
}
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值