找回密码
 马上注册

QQ登录

只需一步,快速开始

查看: 16012|回复: 18

[交流] ====采荷一小==== 低调奢华有内涵 之 自定义pid 循线模块 共享

  [复制链接]
发表于 2013-11-8 09:09:56 | 显示全部楼层 |阅读模式
       本程序的主要部分来自论坛糖大共享的pid循线程序http://bbs.cmnxt.com/forum.php?mod=viewthread&tid=6086
       相信大家都对pid循线的精准与效率神往,但身为非科班出身,这么高深的东西实在是难以理解,好在坛子里有糖大、晓舟、barzz等一批热心的高手,为大家找来了好多学习材料,能让大家深入浅出的进行学习。像这些前辈们致敬!我看了坛子上的讲pid的内容后,勉勉强强能理解大致的意思。自己写还是累,就把糖大的直接拿来了。然后用着觉得有些不顺,自己改了一些条件,用起来能方便点。
QQ截图20131108085503.jpg

A  Dir为方向。 前进或后退
B  Tpower 为目标功率,不解释
C  LorR 为走黑线的左侧或右侧
D  GolineNum 为循线光感端口号
E  StopTime 为使用时间作为跳出条件。 循几秒后跳出
F  StopDrg 为使用马达转动见到为跳出条件。
G  StopLightNum 与 StopLightValue 为使用另一个光感为跳出条件。  Num为光感端口号,Value为阈值。默认为小于此值跳出。当Num为0时Value无效。

其中 E F G均为跳出条件,同时只有一个生效,优先级G>F>E

最后,pid来说,最最主要的还是kp ki kd 三值的调校,这件事还是只有自己做的,调成适合自己机器人的p,i,d 才行
最后的最后, Ev3里面这个pid好像还是能用,就是要自己再照着抄一遍
最后的最后的最后,感谢糖大、晓舟、barzz等一批前辈为后来的学习者做出的贡献,中文乐高有你们更精彩!

CY-PIDV2.rar (242.39 KB, 下载次数: 1647)
如果您觉得我的帖子对您有用,请不吝给我一个“赞”!
发表于 2013-11-8 13:55:00 | 显示全部楼层
学习,高手啊,好人,必须支持
如果您觉得我的帖子对您有用,请不吝给我一个“赞”!
回复

使用道具 举报

发表于 2013-11-8 14:26:53 | 显示全部楼层
好东西,顶一个
如果您觉得我的帖子对您有用,请不吝给我一个“赞”!
回复

使用道具 举报

发表于 2013-11-8 17:39:06 | 显示全部楼层
感谢!!!!!
如果您觉得我的帖子对您有用,请不吝给我一个“赞”!
回复

使用道具 举报

发表于 2013-11-8 22:19:10 | 显示全部楼层
先下了在慢慢研究
如果您觉得我的帖子对您有用,请不吝给我一个“赞”!
回复

使用道具 举报

发表于 2013-11-9 11:15:05 | 显示全部楼层
楼主做的不错,模块设计考虑的比较周全。我们也做了一个模块,控制条件相似,额外的p,i,d可单独调校,这样比较方便,也便于学生学习和理解PID原理。

另外,PID还可自动调速:) 当然,这个功能用的少,不过还是挺有意思的,追求技术的极致。
如果您觉得我的帖子对您有用,请不吝给我一个“赞”!
回复

使用道具 举报

发表于 2013-11-10 10:16:17 | 显示全部楼层
这个不错,不过我觉得还是chloroPID比较好用,跳出的话模块之外编就可以了。
如果您觉得我的帖子对您有用,请不吝给我一个“赞”!
回复

使用道具 举报

发表于 2014-5-9 15:03:49 | 显示全部楼层
robber_shen 发表于 2013-11-9 11:15
楼主做的不错,模块设计考虑的比较周全。我们也做了一个模块,控制条件相似,额外的p,i,d可单独调校,这 ...

PID能做的事情确实不少。只是在EV3-G中使用的话,如果想同时针对两项控制各自使用一个独立的PID控制有点麻烦,用代码编程是最方便的。
如果您觉得我的帖子对您有用,请不吝给我一个“赞”!
回复

使用道具 举报

发表于 2015-3-7 17:13:16 | 显示全部楼层
学习,支持
如果您觉得我的帖子对您有用,请不吝给我一个“赞”!
回复

使用道具 举报

发表于 2015-3-9 21:56:50 | 显示全部楼层
请问,如何把老师做好的模块,导入到我新建的程序里呢?
如果您觉得我的帖子对您有用,请不吝给我一个“赞”!
回复

使用道具 举报

发表于 2015-3-25 09:51:36 | 显示全部楼层
如果您觉得我的帖子对您有用,请不吝给我一个“赞”!
回复

使用道具 举报

发表于 2015-3-25 14:07:21 | 显示全部楼层
robber_shen 发表于 2013-11-9 11:15
楼主做的不错,模块设计考虑的比较周全。我们也做了一个模块,控制条件相似,额外的p,i,d可单独调校,这 ...

pid还可以自动调?真是学习了!我的i一加进去怎么就不行了啊!无解!
如果您觉得我的帖子对您有用,请不吝给我一个“赞”!
回复

使用道具 举报

发表于 2015-3-28 22:42:55 | 显示全部楼层
本帖最后由 robber_shen 于 2015-3-29 22:43 编辑
accessory08 发表于 2015-3-25 14:07
pid还可以自动调?真是学习了!我的i一加进去怎么就不行了啊!无解!

完全没有问题。就怕没想法。当然pid三个参数自动校正算法比较麻烦,用文本语言的方便些。我采用的是自动降速。当然这种算法用在纯粹的巡线上更合适。
遇到弯线自动降速,直线时自动加速到100。

i参数控制单方向弯线效果较好,d控制锐角效果比较明显。

但论坛里提供的pid中的I算法有缺陷,震荡起来非常可怕。所以必须要改进
如果您觉得我的帖子对您有用,请不吝给我一个“赞”!
回复

使用道具 举报

发表于 2015-3-30 13:18:11 | 显示全部楼层
robber_shen 发表于 2015-3-28 22:42
完全没有问题。就怕没想法。当然pid三个参数自动校正算法比较麻烦,用文本语言的方便些。我采用的是自动 ...

是的,我一测速度,不断的向上加。所以干脆就使让I为零了!看来还要重新认识一下pid!
如果您觉得我的帖子对您有用,请不吝给我一个“赞”!
回复

使用道具 举报

发表于 2015-4-3 13:28:17 | 显示全部楼层
accessory08 发表于 2015-3-30 13:18
是的,我一测速度,不断的向上加。所以干脆就使让I为零了!看来还要重新认识一下pid!

请问要如何去了解pid的基本用法?新人小白求指导!
如果您觉得我的帖子对您有用,请不吝给我一个“赞”!
回复

使用道具 举报

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

本版积分规则

QQ|手机版|中文乐高 ( 桂ICP备13001575号-7 )

GMT+8, 2024-6-24 02:40 , Processed in 0.096529 second(s), 22 queries .

Powered by Discuz! X3.5

Copyright © 2001-2020, Tencent Cloud.

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