文档库 最新最全的文档下载
当前位置:文档库 › 飞思卡尔摄像头智能小车设计及舵机算法优化_史彬

飞思卡尔摄像头智能小车设计及舵机算法优化_史彬

工程应用

DOI :10.3969/j.issn.1001-3824.2012.05.020

飞思卡尔摄像头智能小车设计及舵机算法优化

收稿日期:2012-05-16

彬,牛岳鹏,郭

(华北电力大学自动化系,保定071000)

摘要:基于黑白CCD 摄像头和飞思卡尔XS128单片机进行实现自主寻迹的智能小车的设计。分别介绍了该智

能小车的硬件系统设计、

机械结构设计和程序控制总体流程,并对实现车模转向的PID 控制算法进行改进和优化。经过实际测试,本系统基本实现了小车在最优路径下的高速平稳行驶。关键词:智能车;飞思卡尔;舵机控制;CCD 摄像头;舵机算法中图分类号:TP273.3

文献标识码:A

文章编号:1005-3824(2012)05-0087-03

0引言

智能汽车使用的是一种集环境感知、规划决

策、

自动行驶等功能于一体的综合系统,涉及到自动控制、模式识别、传感器技术、汽车电子、电气、计算机和机械等多个学科,是典型的高新技术综合体,具有重要的军用及民用价值。本文的设计以飞思卡尔智能车竞赛为背景,以XS128单片机作为核

心控制单元,以CCD (charge-coupled device ,电荷耦合元件)数字黑白摄像头作为路径识别传感器,以

直流电机作为小车的驱动装置,以舵机控制小车前轮转向。比赛赛道是一个具有特定几何尺寸约束、摩擦系数及光学特性的KT 板,其中心贴有黑色条带作为引导线,宽度为2.5cm 。在行驶过程中,系统通过摄像头获取前方赛道的图像数据,同时通过测速传感器实时获取智能车的速度,采用路径搜索算法进行寻线判断和速度分析,然后作控制决策,控制转向舵机和直流驱动电机工作。

1

智能车整体设计方案

1.1

硬件系统的设计

1.1.1主要模块

智能车系统主要包括以下模块:S12单片机模块、

驱动电机、舵机、转速反馈和CCD 视频采集模块。整体结构框图如图1所示。

图1智能车系统功能模块结构框图

1.1.2视频同步分离电路

智能模型车自动控制系统中使用黑白全电视信号格式CCD 摄像头采集赛道信息[1]。摄像头视频信号中除了包含图像信号之外,还包括了行同步

信号、

行消隐信号、场同步信号、场消隐信号以及槽脉冲信号、前均衡脉冲、后均衡脉冲等[2-5]。因此,若要对视频信号进行采集,就必须通过视频同步分离电路准确地把握各种信号间的逻辑关系。我们使用LM1881芯片对黑白全电视信号进行视频同步分离,得到行同步、场同步信号,具体原理不再赘述。视频同步分离电路原理如图2所示。1.1.3外部A /D 转换器电路

由于摄像头输出的黑白全电视信号为模拟信号,所以必须经过A /D 转换之后才能由单片机进行处理,虽然S12单片机具有A /D 转换器的功能,但是速度较慢。为此,我们使用TLC5510芯片制作了外部A /D 转换器。TLC5510是美国德州仪器(TI )公司生产的8位高速A /D 转换器,它可提供最大

78—

工程应用

DIGITAL COMMUNICATION /2012.10

20Ms /s 的采样率。使用外部A /D 转换器电路后,我们每行图像最多可以采集200个点,大大提高了赛道的信息量,但考虑到实际的系统需要,我们最终每行只取了80个点,这将在程序设计部分详述。

图2视频同步分离电路原理

1.2机械结构的设计

机械结构的调整,主要针对主销后倾角、前轮倾角、

前轮前束及差速结构这几方面。前轮定位的作用是保障汽车直线行驶的稳定性,转向轻便和减少轮胎的磨损。前轮是转向轮,它的安装位置由主销内倾、主销后倾、前轮外倾和前轮前倾等

项目决定,反映了转向轮、

主销和前轴等三者在车架上的位置关系。从车辆的前方看,于两轮轴高度相同处测量左、右轮胎中心线之间的距离,车辆前端距离与后端距离差值称为前束角。前端距离大于后端距离为负前束,反之为正前束,相等为零前束。其功能为降低轮

胎磨损与滚动磨擦。

对于智能汽车模型,通过改变前轮传动轴的长度可以改变前轮前束。1.3

程序控制总体流程

索尼黑白CCD 摄像头每秒扫描50场,即每一

场完整图像的间隔为20ms ,

而其中奇场与偶场间隔进行扫描,由于本系统是一个动态扫描的过程,对实际奇场与偶场的位移差并不十分敏感,故在算法设计中不再区分奇偶场。摄像头信号一方面通过LM1881芯片提取出行和场分离信号传送给单片机,另一方面又通过TLC5510外部AD 转换芯片,把道路信息传送到单片机,但是单片机的采集速度有限,为了尽可能在每一行采集到更多的点,我们提高了单片机的总线频率,经过试验,飞思卡尔XS128单片机在超频到80Hz 时能保证系统的基本稳定,而且在速度上也能满足系统的要求,最终我们在每场图像中可以采集到40?80个有效点。

单片机在得到摄像头发来的完整的一场数据后,一方面通过行和场中断继续等待下一场信号的采集;另一方面进行上一场数据的处理。在采集回来的数据中,黑点经8位A /D 转换后一般都大于200,而白点一般都小于100,故我们可以设定一个中间阈值k ,大于这个阈值k 的我们认为是黑点,但是实际环境中由于光线、赛道材质等的影响,这个值并不是固定的,所以我们采取了动态阈值的办

法,即在程序中设定,摄像头所采集到的前2场有效图像中的最黑点的值b 与最白点的值w 取均值再乘以系数a ,则

k =a ?b +w

2

(1)

式(1)中:a 可根据实际情况进行微调。

对于摄像头采集的数据来说,环境的干扰和噪点是不可避免的,因此对数据的滤波也是必不可少的。摄像头在离车模较近区域采集的数据相对于较远区域采集的数据要可靠得多,而且这个区域更不容易丢失黑线,所以我们取前3行数据,在这3行中搜寻底线作为我们之后判断黑线走向的依据。首先,在一个较小的范围内搜索是否有3行连续都为黑点,若有,则找到底线,若没有,扩大搜索范围继续寻找,如果始终找不到底线,则底线丢失;在找到底线之后,我们根据底线所在的列搜寻下一行的黑线位置,再根据这一行黑线位置搜寻下一行,以此类推,直到搜不到黑线为止;然后,根据所得的黑线位置给出具体舵机参数和电机参数,采用PD 算法分别控制舵机和电机转动。总体流程图如图3所示。

图3程序控制总体流程图

2舵机算法的优化

要实现车模的转向,最简单的思路就是应用现

有的PID 控制算法,这是最简单也是最实用的,而

88—

工程应用

PID变量的选取就显得尤为关键。在本系统中,由于我们每一行采了80个点,那么中心位置就在40点,这样我们就可以得到每一个有效行与中心位置的偏差,并求得平均值even_diff,这个值即为舵机控制的P项。而在D项的设计中为了得到较为可信的结果,我们选择了前半场与后半场的平均偏差D_ diffeven,这样即实现了基本的PID控制器。

但在实际试验中我们发现,由于车模的有效前瞻l是动态变化的,无论选择什么样的PD参数,在有效前瞻和车速变化较为明显时,总是无法得到一个满意的参数,所以我们对PID调节器进行了相应的改进,对不同有效前瞻分别进行PD控制并且加入了车速参数,具体程序实现如下:

for(i=head;i<head+l;i++)

even_diff=even_diff+path[i]-40;

for(i=head;i<head+l/2+1;i++)

D_differen_temp1=D_differen_temp1+path[i]-40;

for(i=head+l/2+1;i<head+l;i++)

D_differen_temp2=D_differen_temp2+path[i]-40;

D_differen=D_differen_temp1-D_differen_temp2;

分段控制采用如下形式:

if(l>30)

kp=a+(40-l)+speed/80;P项系数设置假如速度参数

f=kp*even_diff/25+5*D_differen/l;

}。

程序中,a为可调参数,可对P项进行相应调节,l为有效行数,head为起始行,path数组为存放黑线所在位置[6-7]。

采用改进之后的PID算法,参数选择更加灵活,而且更能反映赛道特点,在选定合适的参数后,小S 弯道可以直线通过,而在90?和连续弯道可以紧贴内道,保证了最优路径,在长直道入弯时也能做到提前转弯,基本实现了小车在最优路径下的高速、平稳行驶[8-10]。3总结

本文介绍了基于黑白CCD摄像头与飞思卡尔XS128单片机实现自主寻迹的智能小车的设计。经过实际测试,本系统在白底黑线的跑道上能适应各种路况,能快速流畅地实现自主寻迹,具有控制响应时间短,稳态误差小的特点,而且也具有一定的抗干扰能力,在引导线出现不连续、弯道上出现虚线时也能顺利通过,具有较高的实用价值。

参考文献:

[1]艾宁,瞿少成,刘冬,等.基于CCD摄像头的智能车路径识别及跟踪研究[J].电子测量技术,2009,32(8):

77-80.

[2]段振兴.基于MC9S128的摄像头导航智能车的设计与实现[J].甘肃科技纵横,2011,40(3),11-13.

[3]雷钧,李峰波.电动汽车电子差速系统的控制[J].苏州大学学报:工科版,2010(4):50-52.

[4]黄志强.基于CCD摄像头智能车分段PID控制算法设计[J].电子设计工程,2011,19(2),55-57.

[5]云康,高超.基于CMOS摄像头的智能寻迹车的设计与实现[J].华北水利水电学院学报,2008,29(5):55-57.[6]周温庆,冯文菲,陈继努.基于G2S平台的GPS智能车载终端的设计[J].重庆邮电大学学报:自然科学版,

2008(21):73-75.

[7]沈项,李舜酩,魏民祥,等.智能探测车避障转向控制[J].重庆工学院学报:自然科学版,2009,23(5):1-6.[8]魏楠,周斌.基于S12微控制器的智能车软件设计[J].微计算机应用,2010,31(11):28-33.

[9]刘进,齐晓慧,李永科.基于摄像头的智能小车设计与实现[J].传感器世界,2008,14(2):34-37.

[10]李玉锟,尤一鸣.基于飞思卡尔DG128单片机的智能车路线识别系统[J].科技广场,2009(3):163-165.

作者简介:

史彬(1990-),男,浙江慈溪人,主要研究方向为嵌入式,E-mail:415528382@qq.com。

Freescale camera smart car design and servo algorithm strategy

SHI Bin,NIU Yuepeng,GUO Yong

(Department of Automation,North China Electric Power University,Baoding HeBei071000,P.R.China)

Abstract:A smart car which can achieve route recognition function is designed on the basis of CCD monochrome camera and Freescale XS128microcontroller.We introduce respectively the design of the hardware system,mechanic structure and

the steering control strategy of the smart car.The improvement and prioritization were done to the PID algorithm of the mod-

el car turning.Simulation shows that the system can ensure the stable high speed driving under favorable route.

Key words:smart car;Freescale;steering control;CCD camera;steering gear algorithm

(责任编辑:段明琰)

98

相关文档
相关文档 最新文档