智能车制作

标题: 光电检测起跑线 [打印本页]

作者: 夏日的冰    时间: 2013-6-19 19:56
标题: 光电检测起跑线
        最近很多人问光电车如何检测起跑线,是红外管还是ccd,ccd需不需要另外加多一个。
        其实我很想说,如果不清楚不行是实践说的话常识一下就行了,行话的,理论是辅助自己更好去实践的,并非事实就是这样,太多的因素我们无法理论推理!

        在这里分享一下我检测起跑线的一些经验:
        1、我的CCD是检测跳变沿来识别黑线的,一开始观察到当车经过起跑线的时候,是可以检测到6个跳变沿的,在其他任何的地方都不会检测到这么多的跳变沿,这是我开始检测的简单方法。这里检测跳变沿的阈值很关键,有一个范围,动态的,其实如果你能保证每一次检测都不会检测不到或者误判黑线这6个跳变沿是没问题的。阈值方面属于检测黑线的范围就不多说了。
        2、上面检测六个跳变沿一直用的很准确的,但是当速度上到1.8以上的时候偶尔就检测不到,常识降低阈值,还行,勉强提取黑线和起跑线都没有问题。(在这里发现如果速度继续加快的话方法就会检测不到了)
        3、速度要继续提高,没有办法了,想到用红外对管,不过由于是直立车,车身的角度不能很好的保持,红外对管不调制过的话距离太短,更重要的是,过障碍和坡度的时候肯定会卡到或者误判。想着想着发现极为纠结的红外,不靠谱。
        4、接着就考虑从CCD下手,加多一个CCD?加多一个的话让他斜着放速度就算是3.0还是可以检测的,不过不仅在车身重心增高,代码的时序要求更严格了,检修和维护的困难都会增加。pass.
        5、最后我的决定是,减小曝光时间,增加CCD检测的周期,之前是9ms的周期,现在继续缩短,6ms。经过测试认证,巡线白天依然毫无压力,晚上实验室灯全开,全程偶尔会有十来个6ms周期丢线之外其他地方都还ok。起跑线检测目前还没有出现误判漏判的i情况。

        以上是我在弄起跑线的一个过程,希望能帮助到有需要的的车友。
        PS:送上我做车的重要心得体会:大胆的打破常局去实践才是王道,即使理论明明说是错误的,你也可以去尝试。信心、创新、实践。

作者: 一枕清风    时间: 2013-6-19 20:57
谢谢交流。。
作者: jack_channel    时间: 2013-6-19 21:34
实践出真知
作者: wolflsh    时间: 2013-6-19 21:36
这贴不错~
作者: zqj2008    时间: 2013-6-19 21:37

作者: 夜的第三乐章    时间: 2013-6-19 21:41
楼主的跳变沿的思想很攒,顶一个
作者: wen123    时间: 2013-6-19 21:58
不错!!顶个!!
作者: wen123    时间: 2013-6-19 21:59
ps:和我的差不多
作者: AOE    时间: 2013-6-19 22:00
顶起来.我们用的红外..
作者: 为丞而琳    时间: 2013-6-19 22:04
楼住,好贴啊,顶!!!不过楼主能在分享一下过障碍的策略吗?
作者: 夏日的冰    时间: 2013-6-19 22:41
wen123 发表于 2013-6-19 21:59
ps:和我的差不多

检测方法差不多嘛?我的无运放CCD,当速度快的时候,白色背景的跑道踩到一条黑线比较难判断是左黑线还是右黑线,不知有什么好建议?

作者: 夏日的冰    时间: 2013-6-19 22:44
AOE 发表于 2013-6-19 22:00
顶起来.我们用的红外..

红外,有经过调制吗?怎么解决距红外与跑到距离和过障碍的矛盾呢?我的话红外会被障碍废掉!没调制的!

作者: 夏日的冰    时间: 2013-6-19 22:47
为丞而琳 发表于 2013-6-19 22:04
楼住,好贴啊,顶!!!不过楼主能在分享一下过障碍的策略吗?

障碍,不是很稳,正在研究,稳了之后肯定会分享的!

作者: 河边有棵树    时间: 2013-6-19 22:48
楼主的CCD曝光时间是固定的?就不怕光线不足或则过强影响CCD的检测电压
作者: 二百五    时间: 2013-6-19 23:08
楼主V5
作者: 为丞而琳    时间: 2013-6-19 23:17
夏日的冰 发表于 2013-6-19 22:47
障碍,不是很稳,正在研究,稳了之后肯定会分享的!

一直想不到方法啊,就算速度提上去了,障碍过不了还是浮云啊
作者: 夏日的冰    时间: 2013-6-19 23:18
河边有棵树 发表于 2013-6-19 22:48
楼主的CCD曝光时间是固定的?就不怕光线不足或则过强影响CCD的检测电压

不怕光弱,倒是有点担心中午开窗帘,我的对策一般是降低曝光时间,相当于减弱了AD值(光强),ps:动态阈值一定要调好!
作者: 夏日的冰    时间: 2013-6-19 23:20
为丞而琳 发表于 2013-6-19 23:17
一直想不到方法啊,就算速度提上去了,障碍过不了还是浮云啊

确实,初赛就有障碍,能检测到障碍不?
作者: AOE    时间: 2013-6-19 23:30
夏日的冰 发表于 2013-6-19 22:44
红外,有经过调制吗?怎么解决距红外与跑到距离和过障碍的矛盾呢?我的话红外会被障碍废掉!没调制的!

我现在在用的还不是很可靠有误判,有分设定时间启动起跑检测,然后因为路障会有减速处理,处理路障的时候也关闭起跑检测

作者: 夏日的冰    时间: 2013-6-19 23:39
AOE 发表于 2013-6-19 23:30
我现在在用的还不是很可靠有误判,有分设定时间启动起跑检测,然后因为路障会有减速处理,处理路障的时候也关 ...

你的机械是怎么安装的,行走的时候车身是垂直的还是斜着的,垂直的还好,斜着的话那红外对管不会卡到障碍?

作者: AOE    时间: 2013-6-20 00:00
装在轮子旁边,车子比轮子稍高一点车子斜着跑的时候红外才比较靠近地面,路障如果不是颠的特别厉害的话还好不会碰到
作者: 为丞而琳    时间: 2013-6-20 00:01
夏日的冰 发表于 2013-6-19 23:20
确实,初赛就有障碍,能检测到障碍不?

经常误判啊,算法不行
作者: ♂ˇ邂逅√♀    时间: 2013-6-20 00:06
冰爷V5!!!!!!
作者: zyj    时间: 2013-6-20 09:09
我觉得吧 第一个点 检测跳变沿可以不用阈值。阈值用在提取黑白线上就行了。然后只要比较下黑色后面是白色或者白色后面是黑色就区分跳变沿了
作者: 文圣利    时间: 2013-6-20 09:11
减小曝光时间,增加CCD检测的周期, 赞同 !!看来光电直立车可以稳定的跑2 m/s 了 !!!!
作者: lyb    时间: 2013-6-20 10:12

作者: 夏日的冰    时间: 2013-6-20 10:38
为丞而琳 发表于 2013-6-20 00:01
经常误判啊,算法不行

研究下有障碍与无障碍CCD各参数的变化。

作者: 夏日的冰    时间: 2013-6-20 10:41
AOE 发表于 2013-6-20 00:00
装在轮子旁边,车子比轮子稍高一点车子斜着跑的时候红外才比较靠近地面,路障如果不是颠的特别厉害的话还好不 ...

{:soso_e179:},唉,之前苦于一直找不到安装红外的方法!

作者: 夏日的冰    时间: 2013-6-20 10:44
zyj 发表于 2013-6-20 09:09
我觉得吧 第一个点 检测跳变沿可以不用阈值。阈值用在提取黑白线上就行了。然后只要比较下黑色后面是白色或 ...

大神,(然后只要比较下黑色后面是白色或者白色后面是黑色就区分跳变沿了)这句不是很明,能否解释一下呢?

作者: 夏日的冰    时间: 2013-6-20 10:46
文圣利 发表于 2013-6-20 09:11
减小曝光时间,增加CCD检测的周期, 赞同 !!看来光电直立车可以稳定的跑2 m/s 了 !!!!

推测今年直立可能有破2.5.

作者: 似水、流年。    时间: 2013-6-20 10:59
{:soso_e179:}
作者: wen123    时间: 2013-6-20 11:28
夏日的冰 发表于 2013-6-19 22:41
检测方法差不多嘛?我的无运放CCD,当速度快的时候,白色背景的跑道踩到一条黑线比较难判断是左黑线还是右 ...

找跳变点,,,,有个跳变的过程,,你把那个过程画出来分析下就行,,不然会误判!
作者: hnhdzzc    时间: 2013-6-20 11:59
还不错类
作者: 歼飞A    时间: 2013-6-20 15:50
楼主思想 能力超前
作者: 为丞而琳    时间: 2013-6-20 18:07
夏日的冰 发表于 2013-6-20 10:38
研究下有障碍与无障碍CCD各参数的变化。

我CCD的黑白压差只有10几个AD单位啊,怎么办?
作者: 夏日的冰    时间: 2013-6-20 18:19
为丞而琳 发表于 2013-6-20 18:07
我CCD的黑白压差只有10几个AD单位啊,怎么办?

我的晚上的话只有几个电压值得,正常呀!

作者: 为丞而琳    时间: 2013-6-20 21:55
夏日的冰 发表于 2013-6-20 18:19
我的晚上的话只有几个电压值得,正常呀!

压差这么小的话,很不好处理啊

作者: 寒冬的朝阳    时间: 2013-6-21 01:09
楼主给力呀。:lol:lol
作者: 夏日的冰    时间: 2013-6-21 09:37
为丞而琳 发表于 2013-6-20 21:55
压差这么小的话,很不好处理啊

真有点,虽然能提到线,在稳定性方面还不够!继续改善一下了!

作者: fish007    时间: 2013-6-21 09:56
都一米八以上了啊?我的车拐弯的时候一点都不平滑,要出去的时候突然就折回来了,看的我心肝儿颤颤啊!!有没有什么好的过弯算法啊?而且我十字也偶尔过不去……交流交流下吧
作者: 夏日的冰    时间: 2013-6-21 11:03
fish007 发表于 2013-6-21 09:56
都一米八以上了啊?我的车拐弯的时候一点都不平滑,要出去的时候突然就折回来了,看的我心肝儿颤颤啊!!有 ...

我的转弯算法很普通的,单纯的pd,主要机械要做好一点!十字架过不去的话调调微分!

作者: 平心~~    时间: 2013-6-21 12:43

作者: kido    时间: 2013-6-21 13:28
AOE 发表于 2013-6-20 00:00
装在轮子旁边,车子比轮子稍高一点车子斜着跑的时候红外才比较靠近地面,路障如果不是颠的特别厉害的话还好不 ...

能说说安装在轮子旁边是具体怎么个安法吗?可不可以现象成是在电机前方的位置?

作者: ziben116    时间: 2013-6-21 17:29
我想问一下,如何使用动态阀值?谢谢分享。
作者: fish007    时间: 2013-6-21 20:01
夏日的冰 发表于 2013-6-21 11:03
我的转弯算法很普通的,单纯的pd,主要机械要做好一点!十字架过不去的话调调微分!

加了D参数,连弯都转不过去了…………为啥啊?

作者: 夏日的冰    时间: 2013-6-23 12:30
fish007 发表于 2013-6-21 20:01
加了D参数,连弯都转不过去了…………为啥啊?

公式有对吧?一般D参数加上去,超前,防止过冲。P要相应的增大。

作者: luckner    时间: 2013-6-23 23:57
夏日的冰 发表于 2013-6-23 12:30
公式有对吧?一般D参数加上去,超前,防止过冲。P要相应的增大。

CCD安装起来貌似与赛道垂直有些难度啊 不知道你是如何做到的呢

作者: jianpeng    时间: 2013-6-24 09:28
楼主  我这用到蓝轴自适应曝光程序,曝光周期最长调到了10ms,白天还可以,晚上赛道都分辨不出啊!楼主那么短的曝光时间,怎么破的?还有你那跳变是怎么回事?我理解的跳变是数据的大幅度变动,应该去128个点的平均值吧。
我试的跳变沿检测思路是遇黑线平均值会向下跳变,当出黑线时会向上跳变,中间加上计数防止误判。但是效果不好啊,不知是不是动态曝光时间的问题,经常误判!

作者: jianpeng    时间: 2013-6-24 09:37
为丞而琳 发表于 2013-6-20 21:55
压差这么小的话,很不好处理啊

我的晚上比你曝光时间还长,CCD检测就出错了左边全低,右边全高,而且高的长度在闪动时大范围变动,龙丘的无运放模块,感觉有点坑啊
作者: 夏日的冰    时间: 2013-6-24 10:01
luckner 发表于 2013-6-23 23:57
CCD安装起来貌似与赛道垂直有些难度啊 不知道你是如何做到的呢

安装支架,一般不会偏差很多的,十字弯出的时候不会太偏,只要没出赛道等检测到线都可以立刻纠正的,调pd可以调正的出赛道!

作者: 夏日的冰    时间: 2013-6-24 10:04
jianpeng 发表于 2013-6-24 09:28
楼主  我这用到蓝轴自适应曝光程序,曝光周期最长调到了10ms,白天还可以,晚上赛道都分辨不出啊!楼主那么 ...

曝光时间周期短,我的也是无运放的,压值都很小,但是黑线与白线总有明显区分点的,,,,,
跳变沿并非均值,,是单个数据的跳变!

作者: 一枕清风    时间: 2013-6-24 14:00
代码写的不对,求
作者: jianpeng    时间: 2013-6-24 18:12
夏日的冰 发表于 2013-6-24 10:04
曝光时间周期短,我的也是无运放的,压值都很小,但是黑线与白线总有明显区分点的,,,,,
跳变沿并非 ...

哥们有没有出现CCd出现乱码的情况?我们的在暗处或晚上CCD 的数据就完全乱了啊!!!怎么破?

作者: 夏日的冰    时间: 2013-6-24 20:05
一枕清风 发表于 2013-6-24 14:00
代码写的不对,求

?什么代码不对,CCD底层的话卖家又测试代码!

作者: 夏日的冰    时间: 2013-6-24 20:06
jianpeng 发表于 2013-6-24 18:12
哥们有没有出现CCd出现乱码的情况?我们的在暗处或晚上CCD 的数据就完全乱了啊!!!怎么破?

代码真正的曝光时间多少?底层时序有没检查下?我的真正曝光时间少于2ms也会,
作者: 465860611    时间: 2013-6-24 20:35
好贴   
作者: jianpeng    时间: 2013-6-25 08:32
夏日的冰 发表于 2013-6-24 20:06
代码真正的曝光时间多少?底层时序有没检查下?我的真正曝光时间少于2ms也会,

嗯!很可能是受时序影响!XS128伤不起啊,自始至终一个中断,刷一下12864就快一毫秒了
作者: Me。。    时间: 2013-6-25 11:19
{:soso_e179:}
作者: fish007    时间: 2013-6-26 21:20
楼主啊,你把曝光时间改了,就是直接改那个参数吗?程序没改吗?我这也是,CCD采集的图像在弱光下总是出现问题

作者: fish007    时间: 2013-6-26 21:28
夏日的冰 发表于 2013-6-19 23:18
不怕光弱,倒是有点担心中午开窗帘,我的对策一般是降低曝光时间,相当于减弱了AD值(光强),ps:动态阈 ...

楼主啊,动态阈值怎么弄啊?能说说方法吗?

作者: zyj    时间: 2013-6-27 13:17
楼主最终检测了多少个跳变沿作为起跑线标志
作者: 夏日的冰    时间: 2013-6-27 15:33
zyj 发表于 2013-6-27 13:17
楼主最终检测了多少个跳变沿作为起跑线标志

4个以上!

作者: 夏日的冰    时间: 2013-6-27 15:33
fish007 发表于 2013-6-26 21:28
楼主啊,动态阈值怎么弄啊?能说说方法吗?

可以参考摄像头的思路!

作者: zzxxx91    时间: 2013-6-30 15:04
楼主强大,规则好像有改吧,障碍好像是黑的,可测。还有楼主的转向公式用的哪个?现在主要是靠p,速度上到一米八以上遇弯刚开始不响应,然后就猛转一下,有时能把自己拧好几圈。。求大神指导
作者: S_o_m_n_u_s    时间: 2013-6-30 19:18
文圣利 发表于 2013-6-20 09:11
减小曝光时间,增加CCD检测的周期, 赞同 !!看来光电直立车可以稳定的跑2 m/s 了 !!!!

哥们你的上2m/s了?

作者: cocacola    时间: 2013-7-4 16:45
顶!
作者: qq1399    时间: 2013-7-5 17:50
:lol:lol
作者: 前行者cross    时间: 2013-7-5 18:18
跑的不快的飘过,大家对坡道有没有好的检测方法?
作者: 急速小子    时间: 2013-7-8 13:49
学习!楼主好见解!
作者: 戒灬    时间: 2013-7-9 13:28
怎么搞得很复杂的样子,,相比之下我的起跑线检测似乎略简单了
作者: 泪眼的痕迹    时间: 2013-7-9 20:29
如何动态阈值呢

作者: 泪眼的痕迹    时间: 2013-7-9 20:30
夏日的冰 发表于 2013-6-19 23:18
不怕光弱,倒是有点担心中午开窗帘,我的对策一般是降低曝光时间,相当于减弱了AD值(光强),ps:动态阈 ...

如何动态阈值呢
作者: 泪眼的痕迹    时间: 2013-7-9 20:37
夏日的冰 发表于 2013-6-19 23:18
不怕光弱,倒是有点担心中午开窗帘,我的对策一般是降低曝光时间,相当于减弱了AD值(光强),ps:动态阈 ...

如何动态阈值呢
作者: meng1qi2fan3@wh    时间: 2013-7-13 17:31
不错不错,我们没用红外的!
作者: 小米粽子    时间: 2013-7-15 18:39
wen123 发表于 2013-6-19 21:59
ps:和我的差不多

给点程序提示!

作者: w717342899    时间: 2013-7-30 13:05
MARK
作者: killer1    时间: 2013-11-27 21:52
求阈值是什么方法呢?大津吗?还是什么别的,告诉我一下,我去研究下
作者: 苍天吐血    时间: 2014-3-24 17:48
赞啊,必须的
作者: liao12313    时间: 2014-4-7 12:51
Awesome Guys ,     
作者: 黄书恒    时间: 2014-4-26 00:11
受教
作者: yxw_bob    时间: 2014-7-25 23:22
试着挖坟............
作者: 且听风吟456    时间: 2015-4-18 20:54
脚印
作者: 莫曦    时间: 2015-5-16 23:57
请问下直接用光电对管检测好吗?
作者: 我不想过啦吧    时间: 2016-7-10 10:55
不是说用磁铁,但是不知道程序怎么写
作者: 我不想过啦吧    时间: 2016-7-10 21:24
大神你好,具体到程序应该怎么写,可以分享一下吗,谢指教
作者: 我不想过啦吧    时间: 2016-7-10 21:37
用第一个方案,跳变沿检测,然后停车,具体到程序应该怎么写
作者: 我不想过啦吧    时间: 2016-7-10 21:37
我不想过啦吧 发表于 2016-7-10 21:37
用第一个方案,跳变沿检测,然后停车,具体到程序应该怎么写

谢谢大神知道

作者: 哞哞哞哒    时间: 2018-1-20 09:32
感谢楼主分享





欢迎光临 智能车制作 (http://111.231.132.190/) Powered by Discuz! X3.2