智能车制作

 找回密码
 注册

扫一扫,访问微社区

查看: 6336|回复: 22
打印 上一主题 下一主题

PID控制调节,P调整后的结果,不知应该哪个好

  [复制链接]

36

主题

420

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
2528
威望
1341
贡献
513
兑换币
18
注册时间
2011-7-10
在线时间
337 小时
跳转到指定楼层
1#
发表于 2012-5-13 22:42:58 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 QianDE1991 于 2012-5-13 22:46 编辑

我先整定KP,所以KI和KD为0,波形中红色为反馈量,绿色为设定速度,黄色为PWM。不知道哪个波形比较适合选定的KP值。同时,如果KP和速度为定值,不知道为什么会出现一个阶跃的感觉的波形(最后一幅图),想知道原因,望大神解答下啊~~~~而且为什么每次整定输出的波形刚开始的波形要比后面的低点???
PS:我用的是增量式的PID

KP=1


KP=2


KP=2.5


KP=3


KP=3.5


KP=4

速度给定为定值



本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x

36

主题

420

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
2528
威望
1341
贡献
513
兑换币
18
注册时间
2011-7-10
在线时间
337 小时
2#
 楼主| 发表于 2012-5-13 22:44:51 | 只看该作者
自己顶下~~~
回复 支持 反对

使用道具 举报

5

主题

117

帖子

0

精华

高级会员

Rank: 4

积分
911
QQ
威望
553
贡献
198
兑换币
6
注册时间
2011-11-5
在线时间
80 小时
3#
发表于 2012-5-13 22:46:26 | 只看该作者
回复 支持 反对

使用道具 举报

36

主题

420

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
2528
威望
1341
贡献
513
兑换币
18
注册时间
2011-7-10
在线时间
337 小时
4#
 楼主| 发表于 2012-5-13 22:48:17 | 只看该作者
求帮助啊~~
回复 支持 反对

使用道具 举报

17

主题

80

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1680
威望
974
贡献
374
兑换币
121
注册时间
2012-3-22
在线时间
166 小时
毕业学校
沈阳化工大学
5#
发表于 2012-5-14 08:24:29 | 只看该作者
QianDE1991 发表于 2012-5-13 22:44
自己顶下~~~

楼主,我也有你这个软件,但我在程序中不会用,能否传授一下用法(函数写在程序中那个位置,怎样写),请教了
回复 支持 反对

使用道具 举报

184

主题

1972

帖子

0

精华

功勋会员

E=mc^2.0

Rank: 10Rank: 10Rank: 10

积分
15110

论坛骨干奖章活跃会员奖章优秀会员奖章资源大师奖章论坛元老奖章

威望
5404
贡献
8060
兑换币
1555
注册时间
2010-12-8
在线时间
823 小时
6#
发表于 2012-5-14 09:03:24 | 只看该作者
这是我写的软件吧
你这个貌似是空载状态
仅仅用KP无法消除稳态误差
还有,你的编码器貌似没噪声的样子
回复 支持 反对

使用道具 举报

1

主题

9

帖子

0

精华

注册会员

Rank: 2

积分
116
威望
92
贡献
24
兑换币
2
注册时间
2012-5-14
在线时间
0 小时
7#
发表于 2012-5-14 09:44:47 | 只看该作者
顶起
回复 支持 反对

使用道具 举报

36

主题

420

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
2528
威望
1341
贡献
513
兑换币
18
注册时间
2011-7-10
在线时间
337 小时
8#
 楼主| 发表于 2012-5-14 09:50:35 | 只看该作者
znfc2 发表于 2012-5-14 09:03
这是我写的软件吧
你这个貌似是空载状态
仅仅用KP无法消除稳态误差

基友的强大啊~~~
现在先测试空载~~
我觉得波动还是挺大的啊~~怎么能看出有没有噪声啊??
回复 支持 反对

使用道具 举报

36

主题

420

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
2528
威望
1341
贡献
513
兑换币
18
注册时间
2011-7-10
在线时间
337 小时
9#
 楼主| 发表于 2012-5-14 09:50:46 | 只看该作者
boshipobi 发表于 2012-5-14 09:44
顶起

谢谢
回复 支持 反对

使用道具 举报

36

主题

420

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
2528
威望
1341
贡献
513
兑换币
18
注册时间
2011-7-10
在线时间
337 小时
10#
 楼主| 发表于 2012-5-14 09:54:28 | 只看该作者
黄河浪 发表于 2012-5-14 08:24
楼主,我也有你这个软件,但我在程序中不会用,能否传授一下用法(函数写在程序中那个位置,怎样写),请 ...

基友的软件~~基友在这,我都不好意思回答了。

呵呵,基友之前有个新的版本,里面有函数给的。

这个是我用的:
void PID_Send(void)
{
   // static int i=0;
    SciTx(myPID.back/90+' ');//波形一
    SciTx(myPID.back%90+' ');

    SciTx(SetSpeed/90+' ');//波形二
    SciTx(SetSpeed%90+' ');

    SciTx(rOut/90+' ');//波形三
    SciTx(rOut%90+' ');




    //时间太短会有问题//尽量用电脑自带的串口^_^



    //delayms(2);我这个是放在外面的delayms(8)延时8MS,


}


函数我是放在Main里面的
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-12-26 23:55 , Processed in 0.052798 second(s), 28 queries , Gzip On.

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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