关于智能车模起跑线识别方法的设计与实现
引言
本设计基于“飞思卡尔”杯(Freescale)全国大学生智能车模竞赛[1],提出车模的记忆路况算法中的起跑线识别设计。车模的行进速度和稳定性的硬件因素主要取决于巡线传感器和舵机偏转速度,软件因素主要取决于巡线算法。目前采用红外光电传感器作为巡线传感器,舵机的偏转参数为60°/0.18s,如果在巡线算法上采用路况记忆和分析算法,车模在进入第二圈运行时就可“预知”前方路况,这对提高车速是很有利的。这就需要车模系统能够识别起跑线,因为起跑线是车模进行记忆和路况分析的标志点,本文就针对识别起跑线问题进行探讨。
车模与赛道的相关参数
车模比赛中有许多规定及技术参数,这里列举一些相关参数,以便后面的叙述与计算。相关参数如图1所示。
图1 车模及赛道的相关参数
车模运行的形式主要是车模在规定宽度的赛道内行进,赛道的中央有一条宽度为25mm的黑色引导线。车模比赛对车模尺寸的限制为:车长宽分别不超过400mm和250mm,考虑到车行的各方面因素(例如:光电传感器阵列布局、车行转弯时车身不可偏离跑道等),将车身尺寸定为350mm×171mm,如图1所示。图1所示中还标明了车模中的光电传感器布局和跑道、起跑标志线以及十字交叉线。在图1中,14对红外收发管组成两列光电传感器阵列,分别安装在车模的车前和车尾。实物图如图2所示。
(a) 外观图
(b) 光电传感器阵列
图2 车模设计的初期结构
设计思想及算法实现
常用的车模巡线方案有光电传感器阵列和CCD探测法等[2],这里介绍光电传感器阵列的设计方案。光电传感器是靠红外发射管和红外接收管组成的传感器,如图3所示。
红外发射管发射的红外线具有一定的方向性,当红外线照射到白色表面上时会有较大的反射,如果距离Dl取值合适,红外接收管可接收到反射回的红外线,再利用红外接收管的电气特性,在电路中处理红外线的接收信息;如果反射表面为黑色,红外光会被表面将其大部分吸收,红外接收管就难以收到红外线。这样,就可以利用红外收发管组成的光电传感器检测赛道黑线,实现智能车的巡线方案。
(a) 白色反射面下的红外反射
(b) 黑色反射面下的红外吸收
图3 用于路况识别的红外光电传感器
电传感器阵列布局参数的确定
如图5所示,光电传感器阵列参数主要有管距D(管内侧距离),管直径d,影响光电传感器阵列参数的主要因素有:
起跑标志线和十字交叉线;
比赛规则对车模尺寸的限制;
跑道黑色引导线的宽度;
舵机转弯精度[3]。
根据以上影响因素,建立模型如图4和图5所示。
起跑标志线和十字交叉线的识别方案要和光电传感器阵列参数联系起来考虑,所以首先根据起跑标志线的基本识别方法来确定光电传感器阵列参数。单片机在处理起跑标志线和十字交叉线的区别时,较方便的方法就是当光电传感器阵列经过十字交叉线时7个传感器全检测到黑线,而经过起跑标志线时会有个别传感器检测到白色赛道表面。根据这个道理,建立模型如图4和图5所示,分两种情况讨论:
图4 光电传感器阵列与起跑线的相对关系(1)
图5 光电传感器阵列与起跑线的相对关系(2)
1) 光电传感器阵列有2个传感器检测到白色跑道而其它传感器检测到黑线时,如图4所示;
2) 光电传感器阵列有1个传感器检测到白色跑道而其它传感器检测到黑线时,如图5所示。
根据以上两种情形,在光电传感器阵列采用等距分布的情况下,可有如(1)式所示的数学描述。
(1)
(2)
(3)
根据(3)式,做如图6所示的数轴标注方法来表示不等式的取值范围。
图6 数轴标注D的取值范围
图6中计算所得的D值范围为(25, 30-1.5d)。但是也要考虑特殊情况。由于车身在经过起跑标志线时并不是每次都能保持和跑道引导线平行,所以要考虑当车身偏斜进入起跑线时的情况会不会使(1)式有所变化。如图7所示。
欢迎光临 智能车制作 (http://111.231.132.190/) | Powered by Discuz! X3.2 |