智能车制作

 找回密码
 注册

扫一扫,访问微社区

查看: 7160|回复: 23
打印 上一主题 下一主题

[资料] CCD记忆算法

  [复制链接]

2

主题

9

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
238
QQ
威望
138
贡献
62
兑换币
54
注册时间
2012-10-27
在线时间
19 小时
跳转到指定楼层
1#
发表于 2013-1-25 18:19:39 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

近期,看到一篇关于路径记忆的文章,至少给迷茫的我们指明了方向,感觉很不错,特拿出来分享一下!

由于光电传感器看到赛道的长度有限,不能很好地对赛道状况进行预测,因此,如果小车在跑第一圈的时候能够记下赛道全部路径信息,在第二圈的时候则能够根据第一圈的记忆信息辅助控制,在相同条件下将比不使用赛道记忆的智能车更具有优势。

v
成功实现赛道记忆算法,必须具备以下五个条件

§
赛车必须识别起跑线。

§
赛车需要在第一圈记下正确的赛道信息。

§
正确地滤波。

§
赛车必须拥有足够的存储空间。

§
赛车在第二圈如何应用第一圈记下的信息。



赛车如何在第一圈记下正确的赛道信息?

v
当起跑线被检测到后,开始对赛道进行记忆。我们采用的是分段式记忆算法,当黑线的位置在中间某个区域内则记为直道,在右面的区域则记为右弯道,在左面的区域则记为左弯道。我们利用编码器记录小车走过的路程,具体做法为:用PCAN1记录编码器的脉冲数,输入到计数器当中,进而采用计数器的溢出中断来对赛道进行定距离记忆,当计数器的脉冲数溢出时,这时计数器申请溢出中断,从而实现对赛道定距离记忆。当第二次检测到起始线时记忆结束。

v
正确的滤波

v
确的滤波对赛道记忆而言是至关重要的,它决定了在第二圈时赛车的运行路线和运行速度,对赛道滤波需要分两种情况,第一种就是在记忆过程中对赛道滤波,由于我们采用的是分段式记忆方法,当某一段记到的脉冲数小于某个数时,这时我们把它归为上一段。第二种就是在第二次检测到起始线后对赛道进行全局滤波,这时我们要从赛道中滤出小S道、大S道和连续弯道。

v
具体做法如下:首先我们必须先找出它们的特征,对于小S道,由于我们采用的是分段式记忆算法,如果当连续几段的脉冲数都很少时,我们可以把这几段看成一个整体,把它从赛道中滤出来,从而实现小S道直冲。当然这个脉冲数的阈值必须是通过大量的测试而得,否则将造成错误。大S道不能像小S道那样直接冲过去,否则小车将冲出跑道。我们必须将连续弯道提取出来,因为在第二圈回忆跑道时,连续弯道最容易出错。

v
赛车必须拥有足够的存储空间

v
由于赛车的RAM空间只有8 kb,所以EEPROM必然成为了存储赛道信息的最佳选择。

v
通过编写WriteEEPROMReadEEPRROM这两个函数,将EEPROM当作ROM来使用。这样就解决了存储空间不足的问题,而且EEPROM在程序复位和断电后数据不会丢失。

v
赛车在第二圈如何应用第一圈记下的信息

v
根据第一圈记录下来的信息,小车就可以提前预知直道还是弯道。对于直道,小车在道路的前段以常规的速度行驶,以便小车调整车身姿态,中段则以全速行驶,后段则提前减速到一个最佳的速度,为过弯道而做准备。在弯道中,小车会根据第一圈记下来的不同曲率,以设定速度匀速行驶。特别的是,在过小S弯时,可以人为地让小车减小调节舵机的大小,这样小车便能以近似直道冲过去。

0

主题

1672

帖子

0

精华

杰出人士

Rank: 12Rank: 12Rank: 12

积分
13030
QQ
威望
7128
贡献
3436
兑换币
424
注册时间
2013-1-5
在线时间
1233 小时
2#
发表于 2013-1-25 19:05:10 | 只看该作者
谢谢分享
回复 支持 反对

使用道具 举报

4

主题

397

帖子

0

精华

常驻嘉宾

Rank: 8Rank: 8

积分
3933
威望
1759
贡献
1014
兑换币
898
注册时间
2012-8-27
在线时间
580 小时
3#
发表于 2013-1-25 19:58:12 | 只看该作者
这算是对之前的想象进一步实体化了....
回复 支持 反对

使用道具 举报

59

主题

1029

帖子

0

精华

版主

有什么需帮助的?

Rank: 9Rank: 9Rank: 9

积分
15127

热心会员奖章论坛元老奖章优秀会员奖章在线王奖章

威望
11058
贡献
1409
兑换币
1728
注册时间
2011-12-18
在线时间
1330 小时
4#
发表于 2013-1-26 00:07:57 | 只看该作者
不是只跑1圈么?
回复 支持 反对

使用道具 举报

7

主题

354

帖子

0

精华

常驻嘉宾

Rank: 8Rank: 8

积分
3248

优秀会员奖章活跃会员奖章在线王奖章

威望
1520
贡献
910
兑换币
666
注册时间
2012-4-28
在线时间
409 小时
5#
发表于 2013-1-26 09:48:53 | 只看该作者
哥。。。。。你和翔宇同学的头像一样呃。。。。。
回复 支持 反对

使用道具 举报

1

主题

746

帖子

0

精华

常驻嘉宾

Rank: 8Rank: 8

积分
3319
QQ
威望
1414
贡献
501
兑换币
277
注册时间
2012-9-25
在线时间
702 小时
6#
发表于 2013-1-26 09:54:29 | 只看该作者
谢谢楼主
回复 支持 反对

使用道具 举报

114

主题

857

帖子

0

精华

跨届大侠

不想吃天鹅肉的癞蛤蟆不是好癞蛤蟆~!

Rank: 10Rank: 10Rank: 10

积分
8662

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

威望
3956
贡献
2014
兑换币
1429
注册时间
2012-3-4
在线时间
1346 小时
7#
发表于 2013-3-16 10:46:08 | 只看该作者
表示真正实现还是很难的
回复 支持 反对

使用道具 举报

1

主题

85

帖子

0

精华

高级会员

Rank: 4

积分
802
威望
448
贡献
190
兑换币
231
注册时间
2012-7-28
在线时间
82 小时
8#
发表于 2013-3-21 15:55:31 | 只看该作者
回复 支持 反对

使用道具 举报

49

主题

200

帖子

0

精华

常驻嘉宾

Rank: 8Rank: 8

积分
4104
威望
1844
贡献
974
兑换币
860
注册时间
2012-12-11
在线时间
643 小时
毕业学校
辽石油
9#
发表于 2013-3-21 16:59:40 | 只看该作者
机器学习?
回复 支持 反对

使用道具 举报

1

主题

4

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
270
威望
151
贡献
71
兑换币
79
注册时间
2012-11-1
在线时间
24 小时
毕业学校
五邑大学
10#
发表于 2013-3-21 19:14:22 | 只看该作者
可否分享一下记忆算法程序啊!2360288135@qq.com
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-6-27 16:14 , Processed in 0.064654 second(s), 37 queries , Gzip On.

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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