一种光电传感器精确定位的方法

上传人:cl****1 文档编号:564692709 上传时间:2023-08-17 格式:DOCX 页数:13 大小:347.45KB
返回 下载 相关 举报
一种光电传感器精确定位的方法_第1页
第1页 / 共13页
一种光电传感器精确定位的方法_第2页
第2页 / 共13页
一种光电传感器精确定位的方法_第3页
第3页 / 共13页
一种光电传感器精确定位的方法_第4页
第4页 / 共13页
一种光电传感器精确定位的方法_第5页
第5页 / 共13页
点击查看更多>>
资源描述

《一种光电传感器精确定位的方法》由会员分享,可在线阅读,更多相关《一种光电传感器精确定位的方法(13页珍藏版)》请在金锄头文库上搜索。

1、研究论文一种使用光电管对赛道精确定位的方法刘建旭,高晗,谭吉来(哈尔滨工程大学 自动化学院,黑龙江 哈尔滨 150001) 文摘:在飞思卡尔杯全国大学生智能车比赛中,控制车模运行需要检 测赛道参数。本文提出了一种使用光电管进行赛道精确定位的方法。 该方法充分利用了 MC9S12DG128 单片机内部硬件资源,采集各光电探 头输出的模拟信号,并据此分析计算出精确的赛道位置,可以为控制 系统提供足够精确的信息,使系统稳定可靠。实验证明该方法简便、 有效。关键词:飞思卡尔;MC9S12DG128; CMOS摄像头;二值化Abstract : In the Freescale Cup Smart ca

2、r competition of National Undergraduate , the patch controlling requires testing for the operation of the circuit parameters. This paper proposes the use of CMOS circuit camera parameters for the detection method. The method makes full use of SCM MC9S12DG128s internal hardware resources to meet the

3、hardware binary circuit, and the collecting CMOS analog output signal detection can meet the parameters. The information can then calculate the circuit parameters. Experiments show that the method is simple and effective.Keywords: Freescale; MC9S12DG128; CMOS; Binary在第三届飞思卡尔杯全国大学生智能车比赛中,需要制作一个以 MC9S

4、12DG128单片机(下文简称S12)为核心控制单元的并可以自主 识别路径的模型赛车进行比赛。赛道底色为白色,标有黑色中心线。本文介绍了基于S12单片机,为保证系统在稳定的前提下追求行 驶时间最短,设计了具有较高精度的赛道定位系统。该模块先使用硬 件对光电信号进行模数转换,将赛道的灰度级采集到内存中,然后根 据灰度级的变化规律来对赛道位置进行精确定位,精度达到 0.5mm。 精度高的同时,采集速度也足够高,定位周期很短,频率可达 8kHz, 甚至更高,应用在该控制系统各控制环节中都十分富余,实时性非常 高。一、历史方案介绍: 利用光电管采集赛道信息,在白色的背景上分析出黑色的赛道,出现过许多方

5、案。最简单的方案是,每个时刻有且只有一个光电管正 对黑线,且通过比较器产生相应的高或低的数字信号,其软件编写也 较为简单。其缺点是精度差,硬件资源利用率低,在比赛允许的范围 内,最多能分析出 16 个赛道位置。另有一种该方案的改进版本,每 个时刻有一个或两个光电管正对黑线,从位置上看光电管正对黑线的 个数是一个与两个交替出现,将前一种方案的硬件资源利用率提高了 约1倍,但也不过是几十个分度的定位精度而已。比方说在该控制系统中要使用PID控制,倘若在位置环中只有几 十个定位分度,那么首先比例项不够精确,其次微分项的作用大打折 扣,积分项精度相对好很多,但是因为探测的前瞻距离很有限,要达 到很高的

6、车速,就不能依赖于积分项。因此提高光电定位系统的精度 便是制约光电组车速的瓶颈。二、本方案设计思想:本文将提出一种方案,定位分度可达到1mm以下。1、硬件简介:图 1 是单个光电管的电路图,整个探测设备由十几个这种单元构 成。模数采样将各个光电管的灰度级量化采集回来。常规的是接比较 器而该方案是接电压跟随器。2、数据预处理:图2图 2 是 8 个对光电管所采集的原始电压值模拟显示,将该数据直 接绘成折线和灰度级色块,如上图人可以感觉到黑线的大致位置,但 显然该数据不能直接用于精确定位分析。各个光电管的性能差异、机 械安装差异和其所附带的发光管和运放的性能差异造成了该数据不 能足够真实地反映光电

7、管视野中的灰度级。因此必要对该数据做处理 处理的目的效果如图3 所示,黄线为定位位置。图3相比之下,用处理后的数据绘制的折线与灰度级方块非常清楚明了,差别很大。数据处理原理是,将原始数据配合各个光电管预先采集到最大值和最小值来计算灰度级,程序表达式如下:int gray8,adc8,min8,max8;grayi=(adci-mini)*250/(maxi-mini);最终的灰度级取为整型量。图4图 4 为所有光电传感器视野全为白板时处理前后的数据对比。3、定位计算i.r16*筍光电探昨蒯护f哥业.J By暗淋葢工芹丸学障吉来LE Edt图5以图 5 中的数据为例,赛道黑线定位计算式为: dg

8、ray1=174-58=116dgray2=139-58=81Postion=6+(dgray12 -dgray22)/ (dgray12+dgray22)/2*K=6.1722(K为若传感器间距相等时的距离,若间距不等,公式有待讨论)解说:首先起泡找到亮度最低的点6,其亮度为 58,然后与其相 临两点的亮度做差得dgrayl和dgray2,然后代入postion计算式。 postion 的值分两项:一项是 6,直接取亮度最低点的位置编号;后一 项是对偏差量的计算,其值域是-0.5,0.5。如果有两点的亮度值相等,无论取哪个为最暗点,其定位结果相同,都是两点的正中间。用 BASIC 语言描述如

9、下:black = 0Atd(black) = 255For i = 1 To 8If Atd(i) = Atd(black) Then black = iNext idAtdl = Atd(black - 1) - Atd(black)dAtdr = Atd(black + 1) - Atd(black)Pst n = (dAtdl A 2 - dAtdr A 2) A 1 / (dAtdl A 2 + dAtdr A 2) A 1 / 2 + black三、实验结果3.1 实验方法将光电定位系统采集并计算出的赛道位置用串口传送到上位机,数据更新频率100Hz,将赛道位置按照时间先后绘制成图

10、象。将车固定好,取一块赛道板在光电探头视野中移动,观察在单向 运动时有没有位置回跳的点,实验方法较为简陋但能说明问题。图6 图 9 是上位机根据定位系统上传的数据所绘图象。图6图7图8图93.2 实验结论与常规策略相比,其定位精度有显著的提高,可达0.5mm,而且其采样与计算分析的时间也非常短,优势显而易见。在智能车比赛中,也验证了这种方案的可靠性和稳定性。四、结束语本文提出了一种使用光电管进行赛道精确的方法,对硬件电路和 软件流程进行了详细说明。最后由试验结果可知:采取这种方案解决 了光电传感器数量有限定位精度差的瓶颈,能够使智能车系统有足够 高的控制精度。参考文献1 卓晴,黄开胜,邵贝贝.学做智能车一一挑战“飞思卡尔”杯.北京:北京航 空航天大学出版社, 2007.3.2 谭浩强.C程序设计(第三版).北京:清华大学出版,2007.

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 学术论文 > 其它学术论文

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号