摄像头智能车速度控制算法的设计与实现剖析.docx

上传人:b****5 文档编号:6194875 上传时间:2023-01-04 格式:DOCX 页数:24 大小:536.21KB
下载 相关 举报
摄像头智能车速度控制算法的设计与实现剖析.docx_第1页
第1页 / 共24页
摄像头智能车速度控制算法的设计与实现剖析.docx_第2页
第2页 / 共24页
摄像头智能车速度控制算法的设计与实现剖析.docx_第3页
第3页 / 共24页
摄像头智能车速度控制算法的设计与实现剖析.docx_第4页
第4页 / 共24页
摄像头智能车速度控制算法的设计与实现剖析.docx_第5页
第5页 / 共24页
点击查看更多>>
下载资源
资源描述

摄像头智能车速度控制算法的设计与实现剖析.docx

《摄像头智能车速度控制算法的设计与实现剖析.docx》由会员分享,可在线阅读,更多相关《摄像头智能车速度控制算法的设计与实现剖析.docx(24页珍藏版)》请在冰豆网上搜索。

摄像头智能车速度控制算法的设计与实现剖析.docx

摄像头智能车速度控制算法的设计与实现剖析

编号

2013180217

研究类型

应用研究

分类号

TP27

 

学士学位论文(设计)

Bachelor’sThesis

 

论文题目

摄像头智能车速度控制算法的设计与实现

作者姓名

学号

所在院系

机电与控制工程学院

学科专业名称

电气工程及其自动化

导师及职称

论文答辩时间

学士学位论文(设计)诚信承诺书

中文题目:

摄像头智能车速度控制算法的设计与实现

外文题目:

TheDesignandRealizationofCameraIntelligentCarspeedcontrolalgorithm

学生姓名

谢波

学生学号

2009118010217

院系专业

机电与控制工程学院

电气工程及其自动化

学生班级

0902班

学生承诺

我承诺在学士学位论文(设计)活动中遵守学校有关规定,恪守学术规范,本人学士学位论文(设计)内容除特别注明和引用外,均为本人观点,不存在剽窃、抄袭他人学术成果,伪造、篡改实验数据的情况。

如有违规行为,我愿承担一切责任,接受学校的处理。

学生(签名):

年月日

指导教师承诺

我承诺在指导学生学士学位论文(设计)活动中遵守学校有关规定,恪守学术道德规范,经过本人核查,该生学士学位论文(设计)内容除特别注明和引用外,均为该生本人观点,不存在剽窃、抄袭他人学术成果,伪造、篡改实验数据的现象。

指导教师(签名):

年月日

摄像头智能车速度控制算法的设计与实现

谢波(指导老师,胡长晖讲师)

(湖北师范学院机电与控制工程学院中国黄石435002)

摘要:

本文介绍了以MC9S12XS128单片机为主控制器的摄像头智能车的速度控制算法的设计与实现。

在系统硬件设计部分,主要阐述了舵机控制和电机驱动电路的设计原理,以及测速模块的设计。

在软件设计部分,重点阐述了转向舵机控制算法,电机分段的闭环P控制算法,电机PID控制算法的原理及其实现。

测试表明,本智能车行驶在复杂多变的赛道上,具有较好的稳定性和适应性。

关键词:

MC9S12X128;数字PID控制算法;分段的闭环P控制算法

中图分类号:

TP27

TheDesignandRealizationofCameraIntelligentCarspeed

controlalgorithm

XieBo(Tutor,HuChanghui)

(CollegeofMecharonicsandControlEngineering,HubeiNormalUniversity,Huangshi,China,435002)

Abstract:

Thispaperintroducesthecameraintelligentvehiclespeedcontrolalgorithmdesignandimplementation,inwhichMC9S12XS128playsasmaincontroller.Inthehardwaredesignpart,Imainlydescribesteercontrolandthedesignprincipleofmotordrivecircuit.Inthesoftwaredesignpart,Iemphasisonsteeringgearcontrolalgorithm,SegmentedPclosed-loopcontrolandmotorspeedregulationPIDalgorithmprincipleandrealization.Aseriestestsshowthatthecarhasgoodstab--lityandadaptabilityinacomplicatedtrack.

Keywords:

MC9S12X128;digitalPIDcontrol;SegmentedPclosed-loopcontrol

摄像头智能车速度控制算法的设计与实现

谢波(指导老师,胡长晖讲师)

(湖北师范学院机电与控制工程学院中国黄石435002)

1绪论

近年来,丰田与微软结盟欲打造下一代互联汽车平台,将多款产品整合应用于汽车;另外,谷歌开发的无人驾驶汽车已在各种路况下成功行驶,并宣称将进入大规模的测试阶段。

在国内,我国自主研制的红旗HQ3无人车也成功进行了一系列的自主驾驶测试……这表明:

汽车智能化已经大势所趋,越来越多的车企已经把它作为未来市场竞争的一个着眼点。

而消费者所期待的汽车智能化除了能给驾车带来方便和舒适外,更重要的是能为安全保驾护航。

智能汽车是一个集环境感知、规划决策、多等级辅助驾驶等功能于一体的综合系统,它集中运用了计算机、现代传感、信息融合、通讯、人工智能及自动控制等技术,是典型的高新技术综合体[1]。

目前对智能车辆的研究主要致力于提高汽车的安全性、舒适性,以及提供优良的人车交互界面。

近年来,智能车辆己经成为世界车辆工程领域研究的热点和汽车工业增长的新动力,很多发达国家都将其纳入到各自重点发展的智能交通系统当中。

可以预见,随着汽车电子工业的快速发展,智能车将占据越来越大的汽车市场领域。

作为全球最大的汽车电子半导体器件供应商,飞思卡尔半导体公司一直致力于汽车电子半导体器件的开发与推广。

飞思卡尔是嵌入式处理解决方案的全球领导者,提供业界领先的产品,不断提升汽车、消费电子、工业和网络市场。

飞思卡尔在不同的半导体器件市场拥有领先的地位。

其推出的8、16、32位微处理器依靠较高性能在全球拥有领先地位,特别是最近推出的32位KinetisK系列Cortex-M4微处理器,是基于ARM®Cortex™-M结构的低功耗,高性能、可兼容的微控制器,非常适用于中高档智能汽车电子控制系统。

智能车可作为安装有特定设备的交通载体,使用在科学探索、工业生产等领域。

目前智能车的研究重点主要集中在视频检测及目标检测、跟踪、避障等方面。

随着电子技术和智能控制技术的发展,智能车已经成为自动控制领域的一个研究热点。

路径识别技术是智能车控制系统中的一个重要组成部分,路径识别又是智能小车路径跟踪的信息基础。

本智能车通过数字摄像头获取目标道路信息,同时结合当前的行驶状态智能地做出决策,对其行驶方向与行车速度进行调整,从而实现准确快速跟踪的目的。

设计不仅要求小车在白色的场地上能自动地沿着一条任意给地的黑色引导线行驶,而且在一些小弯道小车可以沿着捷径直线过弯,这其中包含两方面的内容,一方面智能小车要准确无误地堆黑色路线进行识别,另一方面是在准确获取道路信息的基础上采用有效的控制策略,使智能小车能够快速有效地沿着最优路径前进,并确保其稳定性。

本文主要针对具有黑色引导线并带有弯道、直道、虚线等的特定道路,由OV6620采集赛道图像数据,用动态阀值算法对数据进行二值化简化,通过路径识别算法计算出所采集图像特征,并将不同赛道对应不同舵机转角和电机转速,实现了任意路径识别与智能跟踪。

2选题背景

2.1选题的必要性

智能车辆是一个集环境感知、规划决策和多等级辅助驾驶等功能于一体的综合系统。

它集中运用了计算机、现代传感、信息融合、通讯、人工智能及自动控制等技术,是典型的高新技术综合体。

随着电子技术和智能控制技术的发展,智能车已经成为自动控制领域的一个研究热点。

全国大学生智能车竞赛是教育部为了加强大学生实践、创新能力和团队精神的培养而举办的面向全国大学生的智能汽车比赛[2]。

“飞思卡尔”杯全国大学生智能车大赛从2006年开始举办,是一项知识、技术综合性特别强的竞赛,对培养高水平、研究型学生,具有重要的现实意义。

“飞思卡尔”杯全国大学生智能汽车竞赛中,参赛的队伍分光电组、摄像头组和电磁组三个组别。

本文正是基于其中的摄像头组竞赛而诞生的。

路径识别技术是智能车辆控制系统中的一个重要组成部分,本课题研究的主要内容包括黑线提取和赛道路径识别,黑线提取尝试了小范围提取黑线算法、单向黑线提取算法、中心向两边黑线提取算法,最终选择了小范围提取黑线算法。

赛道路径识别通过比较简单斜率、最小二乘法拟合直线、根据三点求出外接圆半径倒数曲率等三种算法,得出智能车辆最优的路径识别算法。

该竞赛与教育部已举办的各类竞赛属同一级别,都是为了提高大学生的科研能力和创新能力而举办的,具有重大的现实意义。

与其他大赛不同的是,这个大赛的综合性很强,是以迅猛发展的汽车电子为背景,涵盖了控制、模式识别、传感、电子、电气、计算机和机械等多个学科交叉的科技创意性比赛,这对进一步深化高等工程教育改革,培养本科生获取知识、应用知识的能力及创新意识,培养硕士生从事科学、技术研究能力,培养学生知识、技术创新能力具有重要意义[3]。

智能化技术与汽车相结合产生的智能汽车将在未来工业生产和日常生活中扮演重要的角色,而路径识别则正是体现智能水平的一个重要标志,基于数字摄像头的路径识别算法的研究具有非常广阔的应用价值。

2.2国内外发展研究现状及分析

智能车辆在原车辆系统基础上主要由计算机处理系统、摄像机和一些传感器组成。

摄像机用来获得道路图像信息,车速传感器用来获得车速,障碍物传感器用来获得前方、侧方、后方障碍物信息等,然后由计算机处理系统来完成对所获图像、信息的预处理、增强与分析识别工作,并对车辆的行驶状况做出控制。

清华大学汽车研究所是国内最早成立的主要从事智能汽车及智能交通研究单位之一,在汽车导航,主动避撞,车载微机等方面进行了广泛而深入的研究。

上海市“智能汽车车内自主导航系统的一种样车,2000年7月19日通过市科委鉴定,它标志着上海智能交通系统进入实质性实施阶段。

国防科大成功试验了第四代无人驾驶汽车,它的最高时速达到75.6公里,创国内最高纪录。

西北工业大学空管所,吉林交通大学,重庆大学等都在展开相关研究。

这一新兴学科吸引着越来越多的研究机构,学者加入到智能车相关技术开发中。

国内也有很多大学生智能车竞赛,将智能车的研究更加普及,带动了国内高校自动化,电子等相关专业的教学改革和发展。

智能车有着十分广泛的应用前景,许多国家都在积极进行智能车辆的研究,最典型的运用就是在智能运输系统ITS上的应用。

智能车辆在物流、军事等众多领域都有很广的应用前景。

3基础理论

3.1PID控制算法介绍

PID算法控制是过程控制中应用最广泛的一种控制规律。

实际运行经验及理论分析充分证明这种控制规律用于多数被控对象能够获得较满意的控制成果[4]。

比例(P)控制:

比例控制是一种最简单的控制方式。

其控制器的输出与输入误差信号成比例关系。

Kp偏大时,振荡次数加多,调节时间加长,系统趋于不稳定,Kp太小时,又会使系统动作缓慢。

当仅有比例控制时系统输出存在稳态误差。

积分(I)控制:

在积分控制中,控制器的输出与输入误差信号的积分成正比关系。

对一个自动控制系统,如果在进入稳态后存在稳态误差,则称这个控制系统是有稳态误差的或简称有差系统。

为了消除稳态误差,在控制器中必须引入“积分项”。

积分项对误差取决于时间的积分,随着时间的增加,积分项会增大。

这样,即便误差很小,积分项也会随着时间的增加而加大,它推动控制器的输出增大使稳态误差进一步减小,直到等于零。

积分作用使系统的稳定性下降,Ti小(积分作用强)会使系统不稳定,但能消除稳态误差,提高系统的控制精度。

微分(D)控制:

在微分控制中,控制器的输出与输入误差信号的微分(即误差的变化率)成正比关系。

在控制器中仅引入“比例”项往往是不够的,比例项的作用仅是放大误差的幅值,而目前需要增加的是“微分项”,它能预测误差变化的趋势,这样,具有比例+微分的控制器,就能够提前使抑制误差的控制作用等于零,甚至为负值,从而避免了被控量的严重超调。

只有Td合适,才能使超调量较小,减短调节时间。

一般来说,微分过程减小了超调和降低了震荡。

在另一方面,大部分的实际控制系统里使用了非常小的微分增益,因为微分响应对过程变量信号的噪声非常敏感。

如果反馈回来的过程变量代表的噪声,微分参数就会引起系统的不稳定。

通常依据控制器输出与执行机构的对应关系,将基本数字PID算法分为位置式PID和增量式PID两种。

(1)位置式PID控制算法

基本PID控制器的理想算式为

(3.1)

式中:

u(t)——控制器(也称调节器)的输出;

e(t)——控制器的输入(常常是设定值与被控量之差,即e(t)=r(t)-c(t));

Kp——控制器的比例放大系数;

Ti——控制器的积分时间;

Td——控制器的微分时间。

设u(k)为第k次采样时刻控制器的输出值,可得离散的PID算式

(3.2)

其中

为积分系数,

为微分系数。

由于计算机的输出u(k)直接控制执行机构(如阀门),u(k)的值与执行机构的位置(如阀门开度)一一对应,所以通常称式公式(3.2)为位置式PID控制算法。

位置式PID控制算法的缺点:

当前采样时刻的输出与过去的各个状态有关,计算时要对e(k)进行累加,运算量大;而且控制器的输出u(k)对应的是执行机构的实际位置,如果计算机出现故障,u(k)的大幅度变化会引起执行机构位置的大幅度变化。

(2)增量式PID控制算法

增量式PID是指数字控制器的输出只是控制量的增量Δu(k)。

采用增量式算法时,计算机输出的控制量Δu(k)对应的是本次执行机构位置的增量,而不是对应执行机构的实际位置,因此要求执行机构必须具有对控制量增量的累积功能,才能完成对被控对象的控制操作。

执行机构的累积功能可以采用硬件的方法实现;也可以采用软件来实现,如利用算式程序化来完成。

由公式(3.2)可得增量式PID控制算式

(3.3)

一般计算机控制系统的采样周期T在选定后就不再改变,所以,一旦确定了Kp、Ti、Td,只要使用前后3次测量的偏差值即可由公式(3.3)求出控制增量。

增量式算法优点:

算式中不需要累加,控制增量Δu(k)的确定仅与最近3次的采样值有关,容易通过加权处理获得比较好的控制效果;计算机每次只输出控制增量,即对应执行机构位置的变化量,故机器发生故障时影响范围小、不会严重影响生产过程。

PID参数的整定就是合理的选择PID的各个参数。

其参数的整定是综合系统的稳定性、响应速度、超调量和稳态精度等各个方面考虑。

综合自己调试的经验和工业调试的经验,基本上PID参数整定满足以下几个规则:

(1)当e较大时,为使系统具有较好的跟踪性能,应取较大的Kp与较小的Kd,同时为避免系统响应出现较大的超调,应对积分作用加以限制,通常取Ki=0。

(2)当e处于中等大小时,为使系统响应具有较小的超调,Kp应取得小些。

在这种情况下,Kd的取值对系统响应的影响较大,Ki的取值要适当。

(3)当e较小时,为使系统具有较好的稳定性能,Kp与Ki均应取得大些,同时为避免系统在设定值附近出现振荡,Kd值的选择根据|e(k)|值较大时,Kd取较小值,通常Kd为中等大小。

3.2黑线路径特点

道路面用专用白色基板制作,跑道所占面积在5m×7m左右,道路宽度不小于50cm,跑道表面为白色,中心有黑线作为引导线,黑线宽25mm±5[6]。

引导黑线为连续黑线;跑到最小曲率半径不小于50,可以交叉为90°;在跑到中有一个长度为10cm黑色起始线。

如图3.1所示;

图3.1起跑线,赛道宽度

本次跑道由不同难度的弯道组成,主要分为半径为65cm角度为120°大S道,半径为80cm角度为270°大弯道、角度为150°弯道,半径为245cm角度为90°的弧道,半径为100cm角度为180°的弧道。

如图3.2所示。

图3.2跑道示意图

3.3关于MC9S12XS128的介绍

MC9S12XS128微控制单元作为MC9S12系列的16位单片机,由标准片上外围设备组成,包括16位中央处理器、128KB的Flash存储器、8KB的RAM、2KB的EEPROM、两个异步串行通信接口、两个串行外围接口、一组8通道的输入捕捉或输出捕捉的增强型捕捉定时器、两组8通道10路模数转换器、一组8通道脉宽调制模块、一个字节数据链路控制器、29路独立的数字I/O接口、20路带中断和唤醒功能的数字I/O接口、5个增强型CAN总线接口。

同时,单片机内的锁相环电路可使能耗和性能适应具体操作的需要。

MC9S12XS128片内资源表如图3.3所示。

图3.3MC9S12XS128片内资源

在整个系统设计中,用到了6个单片机基本功能模块:

时钟模块、PWM输出模块、ECT模块、中断模块、串口通信模块以及普通IO模块。

根据系统实际需求,对各个模块进行了初始化配置,通过对相应数据寄存器或状态寄存器的读写,实现相应的功能。

3.4Codewarrior开发软件

软件开发工具采用Metrowerks公司开发的软件集成开发环境CodewarriorforHCS12,其包括集成环境IDE、处理器专家库、全芯片仿真、可视化参数显示工具、项目工程管理器、C交叉编译器、汇编器、链接器以及调试器,可以完成从源代码编辑、编译到调试的全部工作[7]。

开发语言采用HCS12C语言,语法与标准C语言基本相同,支持多种数据类型,中断服务程序用中断函数形式来实现,并提供了内嵌汇编的功能。

另外,CodeWarrior编译器提供了几种从C源代码产生实际汇编代码的优化方法,这些代码被编程到微控制器中。

Codewarrior的功能非常强大,可用于绝大部分单片机、嵌入式系统的开发。

用户可在新建工程时将芯片的类库添加到集成环境开发环境中,工程文件一旦生成就是一个最小系统,用户无需再进行繁琐的初始化操作,就能直接在工程中添加所需的程序代码。

图3.4是Codewarrior的开发界面:

图3.4Codewarrior开发界面

利用BDM和CodewarriorIDE的调试界面,可以进行一系列的调试工作,如黑白线的数字量,路径采集状态,各个寄存器值,程序调试的变量值,能够很好的观察整幅的图像信息,图像中黑线的位置,黑线断开的位置,小车舵机和电机的当前值等,给调试提供了极大的方便。

3.5串口调试软件与无线传输测试软件

串口调试助手,支持常用的300-115200bps波特率,能设置校验、数据位和停止位,能以ASCII码或十六进制接收或发送任何数据或字符(包括中文),可以任意设定自动发送周期,并能将接收数据保存成文本文件,能发送任意大小的文本文件。

目前较为常用的串口有9针串口(DB9)和25针串口(DB25),通信距离较近时(<12m),可以用电缆线直接连接标准RS232端口(RS422,RS485较远),若距离较远,需附加调制解调(MODEM)。

最为简单且常用的是三线制接法,即地、接收数据和发送数据三脚相连。

为了更好形象地反应采集图像的数据,在串口发送中每发送完一行就添加一个回车符,这样得到的数据是每行的数据而不是连成一块的,图3.5是串口得到的数据图,图中非常好地反应了道路的信息:

图3.5串口调试助手平台

由于小车是动态运行的,为了实现动态测试,采用了以NRF24L01为核心的无线通信模块,来实现单片机和PC之间的无线通信,将智能车形式的动态信息传输到PC中进行处理,从而可以分析调整智能车的形式状态,是智能车能以最优的速度在复杂多变的赛道上稳定快速的形式。

MC9S12XS128将智能车运行数据通过SPI接口传输给NRF24L01无线发送模块,NRF24L01无线接收模块接收到数据后,将数据通过SPI接口传输给以8为单片机为主控制器数据接收端,8位单片机将数据通过串口将数据传输给PC机,在PC机中,使用串口助手将数据以十六进制保存在文本文档中。

利用Matlab可以将接到的数据绘制曲线。

MATLAB绘制文本文件数据为曲线指令如下:

a=textread('c:

\a.txt','%s')';%以字符形式打开文件

alpha=hex2dec(a)';%16进制转化为10进制数,存入alpha矩阵

plot(alpha);%绘制alpha矩阵数据的曲线图

3.6MATLAB测试平台

MATLAB是矩阵实验室的简称,是美国MathWorks公司出品的商业数学软件,用于算法开发、数据可视化、数据分析以及数值计算的高级技术计算语言和交互式环境,主要包括MATLAB和Simulink两大部分。

MATLAB是由美国MathWorks公司发布的主要面对科学计算、可视化以及交互式程序设计的高科技计算环境。

它将数值分析、矩阵计算、科学数据可视化以及非线性动态系统的建模和仿真等诸多强大功能集成在一个易于使用的视窗环境中,为科学研究、工程设计以及必须进行有效数值计算的众多科学领域提供了一种全面的解决方案,并在很大程度上摆脱了传统非交互式程序设计语言(如C、Fortran)的编辑模式,代表了当今国际科学计算软件的先进水平。

MATLAB和Mathematica、Maple、MathCAD并称为四大数学软件。

它在数学类科技应用软件中在数值计算方面首屈一指。

MATLAB可以进行矩阵运算、绘制函数和数据、实现算法、创建用户界面、连接其他编程语言的程序等,主要应用于工程计算、控制设计、信号处理与通讯、图像处理、信号检测、金融建模设计与分析等领域。

MATLAB的基本数据单位是矩阵,它的指令表达式与数学、工程中常用的形式十分相似,故用MATLAB来解算问题要比用C,FORTRAN等语言完成相同的事情简捷得多,并且MATLAB也吸收了像Maple等软件的优点,使MATLAB成为一个强大的数学软件。

MATLAB开发环境如图3.6所示。

图3.6MATLAB开发界面

3.7舵机调试软件

在控制系统中,舵机控制效果是智能车性能的重要影响因素。

所以舵机调试工具相当重要,因而好的舵机调试软件会给后续的调试工作带来很大的便利。

舵机调试软件如图3.7所示。

图3.7舵机调试软件

4硬件电路设计

4.1系统整体结构

智能车分为五大模块:

摄像头图像采集模块,电源模块,舵机转向模块,电机驱动模块,单片机最小系统。

如图4.1所示。

图4.1系统硬件模块

4.2舵机电路设计

大赛指定使用型号为S3010的舵机[9]。

该舵机有三根接线端,分别为:

电源线、地线及控制线。

舵机所需的工作电压为6V,该型号舵机的转角是由控制信号端的高电平脉冲宽度决定的,舵机的转角与控制信号的脉宽对应关系如下图4.2所示。

在接口电路中,舵机的转角控制端口(白线)与单片机的PM1通道相连。

单片机通过这一端口,将位置脉冲发送给舵机,实现对舵机转角的控制。

舵机与单片机的接口如图4.3所示。

为了便于单片机控制,在对MC9SXS128单片机的PWM初始化时,设定PWM的周期为20ms。

初始状态时,设定PWM的高电平时间为1.5ms,使舵机的偏转角度为0°。

舵机内部有一个产生周期20ms、宽度1.5ms的基准信号的基准电路,有一个比较器将外加信号与基准信号相比较,判断出方向和大小,从而产生电机的转动信号。

由此可见,舵机是一种位置伺服的驱动器,转动范围不能超过±90°。

图4.2舵机转角与脉宽函数图像图4.3舵机接口电路

图4.4列出一个典型的20ms周期性脉冲的正脉冲宽度与微型伺服马达的输出臂位置的关系。

图4.4舵机转角控制图

4.3电机驱动电路设计

智能小车前进的动力是通过直流电机来驱动的,直流电动机是最早出现的电动机,也是最早能实现调速的电动机。

由于智能车摄像头组采用的单个电机控制后轮来驱动的,采用H桥电路可以

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 党团工作 > 入党转正申请

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1