摄像头智能车调试软件的设计与开发

摄像头智能车调试软件的设计与开发[20200211151548]
摘要
飞思卡尔智能车竞速比赛是以迅猛发展的汽车电子为背景的。该比赛涵盖了自动控制、计算机软件技术、嵌入式编程、系统调试等多个交叉学科的知识。摄像头智能小车以摄像头为传感器提取赛道引导线,并在规范的赛道内自主循线。 本课题提出了一种新的摄像头智能车调试解决方法,即调试时先让小车在赛道上运动一圈,将采集到的图像和车辆状态记录在SD卡中,单片机端UI配合拨码开关和按键调整参数,提高整定效率,计算机端以BMP文件格式封装保存SD卡中的数据。计算机端软件以可视化的方式分析数据,并把修改好的程序内容移植到单片机内加以更改,以期达到调试智能车的目的。用户按照规定步骤添加变量和函数,就能以此软件为平台研究图像处理。实际证明,这套软件方便了图像处理的研究,提高了调试小车的效率。
 *查看完整论文请 +Q: 3 5 1 9 1 6 0 7 2 
关键字:SDHC卡BMP直接读取磁盘GDI技术
目 录
1.绪论 1
1.1 课题背景及意义 1
1.2 研究目的与内容 1
1.3 论文章节安排 2
2.调试软件总体设计 3
2.1 调试软件功能 3
2.2 单片机端调试软件设计方案 4
2.3 计算机端调试软件设计方案 4
3.单片机端调试系统设计 6
3.1 单片机端调试系统硬件设计 6
3.1.1 图像采集电路设计 6
3.1.2 SDHC卡电路设计 8
3.1.3 OLED接口电路 8
3.2 单片机端调试系统软件设计 9
3.2.1 图像采集程序设计 9
3.2.2 基于SDHC存储卡的软件设计 10
3.2.3 单片机端调试软件人机界面设计 13
4.计算机端调试软件设计 15
4.1 计算机端软件总体设计 15
4.1.1 计算机人机界面 15
4.1.2 计算机端调试软件运行流程 16
4.2 直接读写磁盘扇区模块设计 17
4.2.1 直接读取扇区底层设计 17
4.2.2 直接读取扇区顶层设计 18
4.3BMP文件封装模块的改造设计 19
4.3.1 BMP文件结构分析 19
4.3.2 BMP文件的部分改造 21
4.4 图形图像显示程序设计 22
4.4.1 Windows图形设备接口底层分析 22
4.4.2 图形设备接口函数使用 24
4.6 车辆状态数据显示程序设计 27
4.6.1 波形图显示设计 27
4.6.2 编辑框控件显示 29
5.系统测试 31
5.1 单片机端参数显示 31
5.2 SDHC卡写测试 31
5.3 计算机端软件图像处理测试 32
5.4 计算机端车辆参数提取测试 34
6.总结与展望 36
6.1 总结 36
6.2 展望 36
参考文献 38
附录 39
附录1 单片机端调试软件核心代码 39
附录2 计算机端调试软件核心代码 43
致谢 46
1.绪论
1.1 课题背景及意义
智能车是新生产物,将在减少交通事故、发展自动化技术、提高舒适性等方面发挥重要作用。智能车可以按照预定的模式在特定的环境中运行,无需人为管理,就能达到预期目的。进入20世纪90年代,随着汽车市场竞争的日益加剧和智能运输系统的兴起,智能车系统的研究在国际上逐渐成为热门。国外的谷歌公司在此方面处于领先地位。谷歌无人驾驶汽车 能够通过摄像机、雷达传感器和激光测距仪来“看到”其他车辆,并使用详细的地图来进行导航。国内许多大学也开展了无人驾驶的相关研究工作,其中清华大学成立了国内最早的研究智能汽车和智能交通的汽车研究所,在汽车导航、主动避撞、车载微机等方面进行了广泛而深入的研究。
智能车研究的热门与其广泛的应用前景密不可分。普通汽车在结合传感器技术和自动驾驶技术之后可以实现汽车的自适应导航,并把车开得又快又稳;一些研究表明,汽车夜间行驶时,如果安装红外摄像头,能实现夜间汽车辅助安全驾驶。此外,智能车系统能够工作在有毒、高热、低温等人类无法进入的环境。对于一般的消费者来说,在汽车上加装智能设备也有重要意义。比如在雨天和大雾天气,加装了激光或者雷达的汽车能够实时判断与相邻车辆的距离,距离过短时提前制动,提升了安全性;也可以在开车疲劳时,让汽车代驾,既舒适也安全。
本课题以智能小车在规范赛道上的自主导航循线为研究背景,根据竞赛组的要求,为一个前轮驱动后轮转向的摄像头智能车系统设计调试软件。智能车系统以摄像头为传感器检测赛道信息,以MK60DN512ZVLQ10单片机为控制核心,能够自主沿规范赛道高速运行。该系统是简化版的智能汽车,与真实的智能汽车相比,在信息提取、信息处理、系统设计上有很多相似之处,能够为智能汽车的研究提供一个理想化的试验平台。
1.2 研究目的与内容
本课题是基于飞思卡尔摄像头智能车调试软件的设计与开发。其目的主要有以下两个:1、为智能车提供参数整定的调试软件;2、为图像处理和控制算法的研究提供软件开发平台。
在过去的智能车调试中,当需要整定参数时,常常是整定一个参数下载一遍程序,这样的参数整定效率很低。单片机端调试软件UI部分的目的是用来提高智能车整定效率。在参数整定之外,本课题针对图像处理和控制算法提出一种新的智能车调试方法,先让小车围绕赛道运行一圈,把关键的图像数据和状态数据记录在SDHC卡中。记录好后用计算机端调试软件封装SDHC卡中的图像数据和状态数据,保存到计算机硬盘内,再把数据显示出来,达到对数据图形化观察的方式。图像处理在计算机端调试软件辅助研究,研究好之后,稍加改动往单片机中移植,达到了图像处理调试的目的。
本课题的内容主要有以下几个方面:
1、图像采集;
2、图像信息与状态信息写入SDHC卡;
3、单片机端调试系统人机界面;
4、计算机端软件封装并显示图像与状态信息;
5、调试软件实际测试。
1.3 论文章节安排
第一章:绪论,介绍摄像头智能车调试软件的课题背景及意义,研究目的与内容;
第二章:调试软件总体设计,对调试软件的功能做了概述,分别从单片机端和计算机端两大块内容给出了设计方案;
第三章:单片机端调试软件设计,对单片机端调试软件从其硬件基础和软件设计两个方面详细阐述。硬件上包括了图像采集处理电路和SDHC卡电路。软件方面配合硬件简述其图像采集程序设计以及4位SD模式下的SDHC卡读写程序设计。并在最后详细介绍了人机交互界面,正是依靠这个界面,用户能够达到离线调试智能车的目的;
第四章:计算机端调试软件设计,在介绍这个软件时首先对照图片说明人机交互界面中每一块的作用。然后深入程序内部,从Windows内存机制的角度来详述直接读写扇区模块的设计过程。详细分析BMP文件结构,充分理解结构后给出巧妙改进的方法,封装完成“数据图像”(图像和小车状态数据)。然后再以GDI技术开始说明整个软件的界面是如何设计的。最后从程序的角度说明小车状态参数是如何提取的,以及以何种方式显示的;
第四章:实验测试,分为两大块测试,单片机端调试软件测试和计算机端测试。单片机端着重测试参数的显示;计算机端测试如何利用这个软件来研究图像处理,如何用它来显示分析图像和车辆状态数据。
第五章:总结与展望,对课题研究中出现的问题加以分析,并提出作品的不足以及如何改进的方向。
2.调试软件总体设计
2.1 调试软件框架设计
调试软件分为单片机端调试软件和计算机端调试软件,框架如图2-1。
图2-1 调试软件总体框架图
单片机端调试软件的目的是能够实时显示小车的状态信息,在脱离计算机的情况下,配合拨码开关和独立按键调整小车的控制参数和车辆状态。单片机端软件应达到如下设计目的:1、图像采集,通过视频分离电路提取模拟信号的逻辑关系,通过硬件二值化电路将图像转成0、1信号使单片机GPIO模块可以读取;2、车载视频,实时显示小车采集到的当前图像,形成连续的视频影像,可以直观反映小车当前图像是否稳定,是否有噪点、平移和“雪花”;3、小车部分参数显示,直观显示部分关键性参数,辅助用户观察车辆是否异常;4、小车控制参数调整,进入参数调整界面,调整适当的控制参数,在不断地参数调试中使小车处于最佳状态;5、图像和状态数据写入SDHC卡,将采集到的图像和车辆当前的运行状态数据记录在SDHC卡中,为计算机端的操作提供数据。

版权保护: 本文由 hbsrm.com编辑,转载请保留链接: www.hbsrm.com/jxgc/zdh/4398.html

好棒文