智能车制作

 找回密码
 注册

扫一扫,访问微社区

查看: 1439|回复: 3
打印 上一主题 下一主题

增量式PID代码,交流一下

[复制链接]

5

主题

69

帖子

0

精华

跨届大侠

Rank: 10Rank: 10Rank: 10

积分
8808

优秀会员奖章活跃会员奖章论坛元老奖章

威望
6680
贡献
1774
兑换币
584
注册时间
2016-11-18
在线时间
177 小时
跳转到指定楼层
1#
发表于 2017-1-9 20:12:45 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
增量式PID代码,是不是有点简单了,大神们指导一下

    float defSpeed;            //设定值     
    float ActSpeed;        //实际值     
        float ek1;                //偏差值
    float ek2;            //上一个偏差值     
    float ek3;            //前前的偏差值
    float Kp,Ki,Kd;            //比例、积分、微分系数

void PID_init()      //pid初始化
{
    defSpeed=0.0;     
    ActSpeed=0.0;     
    ek1 =0.0;
    ek2=0.0;     
    ek3=0.0;     
    Kp=  ;     // 参考值  0.2
    Ki=  ;     //  0.015
    Kd=  ;     //  0.2
}  
float PID_realize(float speed)
{     
    defSpeed=speed;
    ek1=defSpeed-ActSpeed;      
    incSpeed=Kp*(ek1-ek2)+Ki*ek1+pid.Kd*(ek1-2*ek2+ek3);     
    ActSpeed+=incSpeed;     
    ek3=ek2;   
    ek2=ek1;     
}


回复

使用道具 举报

12

主题

66

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1505
威望
736
贡献
449
兑换币
472
注册时间
2016-1-25
在线时间
160 小时
毕业学校
**
2#
发表于 2017-1-10 00:12:54 | 只看该作者
刚看一点,帮顶
回复 支持 反对

使用道具 举报

28

主题

2228

帖子

1

精华

杰出人士

Rank: 12Rank: 12Rank: 12

积分
15822

论坛元老奖章在线王奖章活跃会员奖章优秀会员奖章资源大师奖章

QQ
威望
7433
贡献
4215
兑换币
5195
注册时间
2013-12-9
在线时间
2087 小时
3#
发表于 2017-1-10 19:49:05 | 只看该作者
似乎是对的
回复 支持 反对

使用道具 举报

5

主题

69

帖子

0

精华

跨届大侠

Rank: 10Rank: 10Rank: 10

积分
8808

优秀会员奖章活跃会员奖章论坛元老奖章

威望
6680
贡献
1774
兑换币
584
注册时间
2016-11-18
在线时间
177 小时
4#
 楼主| 发表于 2017-1-11 09:16:51 | 只看该作者

还有什么比较好的代码实现PID吗
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

关于我们|联系我们|小黑屋|智能车制作 ( 黑ICP备2022002344号

GMT+8, 2025-1-13 03:16 , Processed in 0.054652 second(s), 26 queries , Gzip On.

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表