智能小车技术报告_王艺文师.pdf

上传人:tbuqq 文档编号:5001320 上传时间:2020-01-25 格式:PDF 页数:61 大小:4.02MB
返回 下载 相关 举报
智能小车技术报告_王艺文师.pdf_第1页
第1页 / 共61页
智能小车技术报告_王艺文师.pdf_第2页
第2页 / 共61页
智能小车技术报告_王艺文师.pdf_第3页
第3页 / 共61页
智能小车技术报告_王艺文师.pdf_第4页
第4页 / 共61页
智能小车技术报告_王艺文师.pdf_第5页
第5页 / 共61页
点击查看更多>>
资源描述

《智能小车技术报告_王艺文师.pdf》由会员分享,可在线阅读,更多相关《智能小车技术报告_王艺文师.pdf(61页珍藏版)》请在三一文库上搜索。

1、第三届“飞思卡尔”杯 全国大学生智能汽车邀请赛 技 术 报 告 附录 A: 源程序代码 附录 B: 电路原理图及接口说明图 附录C : Codewarriar4.6 使用简介 队伍名称: Bumble Bee 参赛队员:王艺文胡柏毓 吴山甘红星 指导教师:杨旭东邝坚 目 录 目 录 第一章引言 4 1.1背景介绍 .4 1.2文献综述 .5 1.3文本结构 .5 第二章系统分析与设计7 2.1 总体需求分析.7 2.2 系统设计方案论证.7 2.3 本章小结8 第三章机械系统设计与实现9 3.1 车模安装与改造.9 3.1.1 车模安装 .9 3.1.2 驱动模块 .9 3.1.3 舵机模块

2、10 3.1.4 其他模块 10 3.2 电路板安装11 3.3 传感器安装12 3.3.1摄像头安装12 3.3.2速度传感器安装12 3.4 本章小结.13 第四章硬件系统设计与实现.14 4.1 整体电路板设计14 4.1.1 硬件需求分析 14 4.1.2 控制模块介绍 14 4.1.3 电路板制作 15 4.2 摄像头.16 4.2.1工作原理16 4.2.2 摄像头选择 17 4.2.3 电路设计 18 4.2.4 数据提取 19 4.3 速度传感器22 4.3.1 方案选择 22 4.3.2 软件编程 22 4.3.3 速度闭环控制 23 4.4 本章小结.24 第五章软件系统设

3、计与实现.25 5.1 需求分析.25 5.2 系统设计.26 5.2.1 时钟模块 26 5.2.2 PWM模块.26 5.2.3 ECT 模块.27 5.2.4 AD 模块28 目 录 5.2.5 串口模块 29 5.2.6 普通IO29 5.3 黑线提取算法30 5.3.1 二值化算法 30 5.3.2 直接边缘检测算法 31 5.3.3 跟踪边缘算法 31 5.4 车体控制算法32 5.4.1 PID 算法.32 5.4.2 模糊控制算法 32 5.4.3 记忆算法 34 5.5 本章小结.35 第六章系统调试 .37 6.1 开发调试工具37 6.1.1 软件开发平台 37 6.1.

4、2 手动设置装置 38 6.1.3 状态指示单元 38 6.2 具体调试分析38 6.2.1 摄像头角度与高度的分析39 6.2.2 PID 算法调试 .39 6.2.3 模糊控制算法 39 6.3 本章小结.41 第七章总结与展望.42 7.1 赛车整体总结42 7.1.1 赛车制作过程 42 7.1.2 制作过程中问题及解决方法42 7.1.3 不足43 7.2 展望.43 鸣 谢.45 参 考 文 献.46 附录A源程序代码47 附录B电路原理图及接口说明图.57 附录C Codewarriar4.6 使用简介60 第一章:引言 第一章引言 1.1 背景介绍 受教育部高等教育司委托,高等

5、学校自动化专业教学指导委员会负责主办全国大学生 智能车竞赛。该项比赛已列入教育部主办的全国五大竞赛之一。第三届“飞思卡尔”杯全 国大学生智能车邀请赛将于今年八月在东北大学举行。此项赛事,在韩国已经举办过四届, 其专业知识涉及控制、模式识别、传感技术、汽车电子、电气、计算机、机械等多个学科, 对学生的知识融合和动手能力的培养,对高等学校控制及汽车电子学科学术水平的提高, 具有良好的推动作用。 在本次比赛中, 参赛选手须使用大赛组委会统一提供的竞赛车模, 采用飞思卡尔16 位微控制器MC9S12DG128B 作为核心控制单元,自主构思控制方案及系统 设计,包括传感器信号采集处理、控制算法及执行、动

6、力电机驱动、转向舵机控制等,最 终实现一套能够自主识别路线,并且可以实时输出车体状态的智能车控制硬件系统。各参 赛队完成智能车工程制作及调试后,于指定日期与地点参加比赛。 参赛队伍之名次 (成绩) 由赛车现场成功完成赛道比赛时间为主,技术方案及制作工程质量评分为辅来决定。下面 是比赛的主要细则: 一、器材限定 1,竞赛车模规定 1) 禁止改动车底盘结构、轮距、轮径及轮胎; 2) 禁止改动驱动电机的型号及传动比; 3) 禁止改造滚珠轴承; 4) 禁止改动舵机; 5) 禁止改动驱动电机以及电池,车模主要前进动力来源于车模本身直流电机及电池; 6) 为了车模的行驶可以安装电路、传感器等,允许在底盘上

7、打孔或安装辅助支架等; 7) 车模改装完毕后,尺寸不能超过:250mm 宽和400mm 长,高度无限制。 2,电路器件及控制驱动电路限制 1) 核心控制模块可以采用组委会提供的HCS12 模块,也可以采用MC9SDG128 自制控制 电路板, 除了DG128MCU 之外, 不得使用辅助处理器以及其它可编程器件; 2) 伺服电机数量不超过 3 个; 3) 传感器数量不超过16 个 (红外传感器的每对发射与接受单元计为 1 个传感器,CCD 传感器记为1 个传感器); 4) 直流电源使用大赛提供的电池; 5) 禁止使用DC-DC 升压电路为驱动电机以及舵机提供动力; 6) 全部电容容量和不得超过2

8、000 微法;电容最高充电电压不得超过25伏。 二、赛道基本参数 1) 赛道路面用纸制作, 跑道所占面积不大于5000mm* 7000mm,跑道宽度不小于600mm; 2) 跑道表面为白色,中心有连续黑线作为引导线,黑线宽 25mm ; 3) 跑道最小曲率半径不小于500mm; 4) 跑道可以交叉,交叉角为90; 5) 赛道为二维水平平面; 6) 赛道有一个长为1000mm 的出发区,如下图所示,计时起始点两边分别有一个长度 第一章:引言 100mm 黑色计时起始线,赛车前端通过起始线作为比赛计时开始或者与结束时刻。 三、比赛规则 1)比赛分为预赛与决赛。初赛赛道实际布局将在初赛当日揭示,在赛

9、场内将安排与实 际赛道具有相同材料的局部赛道供参赛队进行调试。决赛赛道实际布局将根据初赛情况由 技术评判组和现场裁判组共同商定,并在决赛开赛前 1 小时揭示,不再安排赛前试车。 2)初赛赛场中有两个相同的赛道,比赛分为两轮,两组同时在两个赛道上进行比赛, 一轮比赛完毕后,两组交换场地,再进行第二轮比赛。在每轮比赛中,每辆赛车在赛道上 连续跑两圈,以计时起始线为计时点,以用时短的一圈计单轮成绩,每辆赛车以在两个单 轮成绩中的较好成绩为赛车成绩。从两组比赛队中,选取成绩最好的 25 支队晋级决赛。 3)每支决赛队伍只有一次比赛机会,在跑道上跑两圈,以计时起始线为计时点,以最 快单圈时间计算最终成绩

10、。 比赛过程中,如果赛车碰到赛道两边的立柱并使之倾倒或移动, 裁判员将判为赛车冲出跑道。赛车前两次冲出跑道,选手可以申请恢复比赛:即将冲出跑 到赛车重新放置在裁判指定的赛车冲出跑道的位置,恢复比赛。整个恢复比赛过程中计时 不间断。选手也可以在赛车冲出跑道后放弃比赛。 1.2 文献综述 本次比赛涉及的知识面较广,对我们每一个参赛选手都是一个不小的挑战。虽说比赛 已经进行到了第三届,已有了前两届技术资料作为基础,但对于我们计算机专业的学生来 说,由于受电路和控制论方面专业知识的限制,仍有相当多的资料和知识需要我们补充, 现将主要资料列出 S12 单片机开发资料 从Freescale 公司官方网站,

11、下载得到s12 单片机开发技术手册。仔细阅读各个功能 模块文件,了解所有寄存器功能。配合 HCS12 微控制器原理,熟悉codewarrior 的使用 方法。关于s12 独有的模糊控制指令使用方法,我们并没有做过多的深入了解 视频处理 主要阅读了上海交通大学技术报告中关于摄像头信号处理部分以及HCS12 微控制器原 理中的相关内容 寻线控制算法 关于寻线控制算法的文章有很多,当前研究的重点在模糊控制与神经网络算法。而这 些算法的研究平台,都是基于汽车的自动控制理论,实现精确入弯,提前预判。而对于此 次比赛,重点在于速度的提高,不求精确入弯。因此关于这些文献的阅读,重点参考提前 预判和控制算法简

12、易实现方面的内容。因较为琐碎,故不在一一列出 开发环境 为了搭建赛车开发环境,需要开发一些测试平台。控制论仿真中常用到的 MATLAB和 LABView 是必须的,以及微软的VC 1.3 文本结构 本文采用先总后分的结构,对系统设计和调试的各部分进行了介绍,突出强调了系统 机械结构、硬件电路和软件程序的统一。在对各部分进行介绍时,详细阐述了我们在整个 第一章:引言 比赛阶段所作的探索以及对诸多细节的改进。 全文共由7 个章节组成, 第一章为引言, 二至六章为主体部分, 第七章为总结。 首先, 基于比赛规则和控制器性能, 在第二章里引出了我们的总体策略,确定了系统的硬件框架。 然后,第三章介绍了

13、对车模机械性能的一些探索和改进,同时对电路板与传感器的安装进 行了描述。第四章介绍了控制电路板的制作,以及传感器方案的选择、电路设计和基础调 试。接下来的第五章里详细描述了系统设计中用到的各个 S12 功能模块、黑线提取算法和 车体控制算法。第六章列举了各种开发调试工具,以及算法调试的结果。最后,第七章对 系统综合性能进行了评价,并指出了今后的改进方向。 第二章:系统分析与设计 第二章 系统分析与设计 2.1 总体需求分析 智能车比赛的关键在于提高小车的速度和稳定性。由稳定性和速度这两个要点我们分 析可得如下需要注意之处。 第一,由于赛道具体信息还不知道,所以必须选择合适的路面信息检测传感器。

14、通过 查阅相关资料,了解到目前常用的寻线技术有:光电寻线、磁诱导寻线和摄像头寻线。光 电寻线一般由多对红外收发管组成,通过检测接收到的反射光强,判断黑白线。在这种方 案中,一对收发管只能检测一个点的信息,精度有限。但其优点是电路简单,处理方便。 路面磁诱导与智能车辆的车载机器视觉诱导相比,最大优点是完全不受光照变化的影响。 但这种方式必须以车道中心线上布设的离散磁道钉作为车道参考标记,这违背了比赛规则。 摄像头寻线通过图像采集, 动态拾取路径信息, 并对各种情况进行分析。 它具有信息量大, 能耗低的优点,但对数据的处理相对复杂。经过初步调查,我们打算从光电管和摄像头两 种方案入手。 第二,要提

15、高速度并保证在入弯时不撞到标竿,就必须增加传感器的“视野”,以便 及时减速。另外根据以往经验,传感器的探测距离越远,获知赛道的信息越多,小车行驶 得将越稳定。因而在最初的实验中,无论是光电管方案还是摄像头方案,我们都试图提高 探测距离。虽然摄像头能比光电探测得更远,但由于摄像头视野较广,造成在急弯上黑线 容易丢失。为了解决这一问题,我们采用了光电管和摄像头融合的策略,即在直道上行驶 时用摄像头作为传感器,并通过摄像头检测是否进入了弯道,而一旦检测到弯道,就改用 光电管进行探测。 第三,从车模的改装规定上可以看出,小车原有的机械结构只能微调,不能大改。这 提示我们将现有舵机和电机的性能发挥到最佳

16、才是工作的重点。为此,对转向系统进行了 标定,使其左右转性能基本一致。同时,为了使电机速度尽量发挥到最高,而又不至于超 出某一路段上的安全速度,制作了简易的速度传感器进行闭环控制。 第四,既然速度是比赛的关键,那么就应当尽量减轻小车的负载。因此我们制作了一 块体积更小且更符合车体布局的控制板。在这块电路板上,我们将必要的驱动芯片放在了 一起,减少了飞线,增强了电路的稳定性。 第五,由于不能增加新的控制器, 所以必须充分发挥S12 的潜能。 在摄像头AD 采集时, 通过超频保证了精度,避免了接入高速片外 AD ,就体现了这一精神。除此以外,软件设计 方面使用的ECT 模块、模糊控制指令等也充分利

17、用了这款单片机的特性。 第六,由于比赛是在同一赛道上跑两次后取最好成绩,因此可以考虑在跑第一圈时将 弯道的类型、长度以及直道的长度记录下来,当识别到第二次经过起始线时,利用已经掌 握的数据对第二圈各段上的速度进行优化控制,使得小车在第二圈上的平均速度能超过第 一圈。这就是记忆算法的主要思想。 2.2 系统设计方案论证 整个系统的设计方案包括车模机械结构设计、传感器电路设计和软件控制算法设计三 第二章:系统分析与设计 个基本方面。为了检测赛道信息,我们用了摄像头作为传感器,其中摄像头用于直道控制 和直道、弯道判断, 光电管用于弯道控制。 另外,还用了速度传感器来获取小车当前速度, 其作用主要有:

18、一、在算法调试过程中,实时监控小车速度变化,为弯道速度控制 提供参 考;二、实现速度的闭环控制,增加小车稳定性;三、通过速度积分作里程计,为记忆算 法打下基础。系统的主要控制对象是舵机和驱动电机,因此整个系统的硬件框图为: 图 2.1 系统硬件结构图 因为系统是一个有机的整体, 所以任何一部分的改进都能提高小车的性能。虽然轮胎、 驱动电机、舵机和电池等车模主要结构不能作改动,但是一些机械结构上的细节仍然会对 小车性能产生影响,为此我们对这些细节进行了一定的调整。系统所用的传感器包括光电 收发管和摄像头,它们可以完成赛道信息的采集和小车行驶参数的获取,其设计和实现将 在第四章中介绍。算法部分主要

19、涉及到 PID 控制算法和预判算法等,这部分将在第五章中 详述。 2.3 本章小结 本章分析了比赛策略,并介绍了系统的硬件结构。在最终方案里, 我们采用摄像头作为采集赛道信 息的传感器,利用了其前瞻性好的优点 。在今后的章节中,将对整个系统机械、硬件电路和软件各部分 功能的实现进行详细介绍。 第三章:机械系统设计与实现 第三章 机械系统设计与实现 3.1 车模安装与改造 3.1.1 车模安装 车模组装是我们的第一步工作。这部分工作看似简单,却也是需要耐心和经验的。一 般来说,组装过程分为以下几步: 第一,阅读说明书。车模套材中附有一份图文并茂的说明书,在组装车模之前,仔细 地阅读说明书不但可以

20、了解零件的编号、安装的步骤,还能从中获得一些重要的提示和说 明。 第二,组装前的准备。读完了说明书,下一步就要按说明书的要求去做准备工作了。 首先,组装时所必需的各种工具、粘接剂、润滑油等等,都要准备齐全。其次,还要准备 一个尽量大一点的工作台,供摆放零件、工具等。工作台上最好再铺上一条毛巾或一小块 地毯,在组装过程中,可以把一些细小的螺丝、轴承等零件放在上面,这样可以避免零件 滑落、丢失。 第三,修整零件、组装车模。一部模型车通常有上百个零件,其中有许多是注塑成型 的塑料制品。为了制造方便,常常是许多个零件排布在一个模具上同时制出。这样的零件 要用小刀或剪钳一件一件切下来,并且把残留的一些毛

21、边、毛刺用刀小心地修整。另外, 生产车模套件的厂家通常按模型的结构将零件分袋包装,每个包装袋都有编号。在组装模 型的时候,不要一下子把包装袋都打开,可按说明书的顺序,打开一个包装袋,组装好一 个部件后,再打开另一个包装袋进行组装。 车模组装完成后,对小车如下部分进行检查和调整。 驱动电机齿轮传动机构,确保齿轮咬合紧密,顺畅。 前轮转向机构,传动杆与舵机连接可靠,舵机工作时无晃动。 轮胎,胎内海绵垫平铺无褶皱,轮胎轮毂与表面橡胶可靠固定。 前后轮主轴合适固定,减少车轮滚动阻力。 3.1.2 驱动模块 电机驱动模块使用Motolola 公司的 MC33886 芯片,该芯片说明书中的典型接法使电 机

22、可以正转, 也可以反转。 最开始的方案中考虑小车行驶过程用不到倒车功能,因此将两 路输出合并成一路以加大驱动能力。电路图见图 3.14。当/D2 为低电平时不管输入为何种 电平,电机将空转。当/D2为高电平时如果输入为高电平则电机将运行,如果为低电平则 电机将制动。通过两路 PWM 信号的不同占空比就可以控制电机以不同速度行驶,或者制动。 试验发现自由滑行状态和阻尼滑行状态的区别不是很大,因此在改进方案中取消了自 由滑行状态, 使用倒车作为减速手段, 并取得了不错的效果。 具体实现时将使能端直接使 能,两路 PWM 分别控制 in1 和 in2 信号。 第三章:机械系统设计与实现 C4 33n

23、f C14 47uf AGND 1 /FS 2 IN1 3 V+ 4 V+ 5 OUT1 6 OUT1 7 PGND 9 PGND 10 PGND 11 PGND 12 /D2 13 OUT2 14 OUT2 15 V+ 16 CC P 17 D1 18 IN2 19 S10A M C 33886 7.2V 1 2 J14 MOTO PWM5 PWM4 图 3.1 电机驱动电路图 另外,在机械上我们适当调整了传动齿轮的间距,提高电机传动效率。重点调节了赛 车后轮差速机构,使其正常工作。在小车进行转向时,后轮差速机构有效地弥补了左右两 个后轮的行程差,使两个后轮都在无滑动状态下过弯。 3.1.3

24、 舵机模块 因为原来车模的转向位置并不在正中,会造成左右转向时间不相等,因此我们特别 改造了舵机的固定方式,将其立起来固定,使左右转向的响应时间相等。 图3.3 舵机的固定 3.1.4 其他模块 此次比赛所用的车模是一辆高仿真车模,里面留有很多机械可调部分。虽然比赛规则 中,所有对车速有重大影响的机械性能指标都不允许改变,但是,仍有很多机械结构存在 调整的余地。细微的改善,会大大改善赛车行驶表现。因此在规则允许范围内,对以下车 模结构进行了调整。 主悬架弹簧松紧调整 所提供的仿真车模中,将四轮悬挂机构简化为一根连接车体前部与后部的悬架弹簧。 通过调整弹簧的松紧,改善赛车在颠簸路面上的表现。此次

25、比赛,赛道完全水平,因此, 主悬架弹簧可以调整得更加刚性一点,使赛车前后部连接更加稳定,传动更加敏感。 第三章:机械系统设计与实现 底盘高度调整 按照常规,车辆底盘高度越低,车辆重心越低,后轮抓地力越好,前轮转向越敏感。 因此在很多赛车比赛中,提高速度有效方法就是降低底盘高度。我们在前轮转向机构处, 增加一块垫片,略微降低了赛车前部的底盘高度,使底盘呈现一种前低后高的倾斜状态。 车身重心调整 除了对车辆重心纵向的调整之外,车辆重心的前后方向调整,对赛车行驶性能,也有 很大的影响。 根据车辆运动学理论, 车身重心前移, 会增加转向, 但降低转向的灵敏度 (因 为大部分重量压在前轮,转向负载增大)

26、,同时降低后轮的抓地力;重心后移,会减少转 向,但增大转向灵敏度,后轮抓地力也会增加。因此,调整合适的车身重心,让车模更加 适应比赛赛道是很关键的。但是由于赛道未知,只能通过舵机转向性能,以及后轮驱动能 力,来调整重心,使其适应各种赛道。根据实际调试经验,鉴于当前舵机响应延时比较严 重,经常在普通弯角出现转向不足的问题,因此,需要将赛车重心适当前移,增加转向性 能。转向灵敏度的降低,只体现在蛇行道上,可以通过算法弥补。通过调整电路板及电池 安装位置,可以在不增加车重的情况下,控制车辆重心。以上对车模结构进行的调整,可 以增加后轮抓地力,改善前轮转向性能,为小车在赛道上的表现提供了最佳的机械支撑

27、。 3.2 电路板安装 考虑到稳定性和尽可能的降低小车的重心,我们依照车身尺寸设计制作了相对应的 电路板,最后的固定结果如图 图 3. 3 电路板固定图 第三章:机械系统设计与实现 3.3 传感器安装 3.3.1 摄像头安装 摄像头必须架在一定高度上,这样才能对远处路面进行探测。但是,它又不能太高。 过高会导致看到的视野过大,一来造成黑线变得太细,二来使得干扰更为严重;另外,摄 像头过高还会产生摇晃,导致信号不稳。经过多次试验,我们发现最佳的视野范围为:近 处距车最前端:6.5cm 、左右各16.5cm ;远处距车最前端:65cm 、左右各33cm 。根据这一要 求,我们确定了摄像头的安装位置

28、 1、距地面高度:45cm 2、距车最前端:12cm ,距车前轮轴:7cm 3、摆放方式:横放(区别于旋转90 度的摆放方式) 具体到摄像头的固定方法,最初我们采用的是废弃的铝合金建材,但由于其质地较 软,固定效果不好。我们最终采用的方案是用一根废旧天线作为其支架,这样不仅稳定, 同时高度可调,最终固定效果如下: 图3.4 摄像头固定效果图 3.3.2 速度传感器安装 速度传感器是由安装在车模电机主轴上的一个直径为25mm 的带圆孔齿轮、一对红外 线发射、接收管及电压比较器电路组成的。红外线发射、 接收管采用集成式光电开关。 在 运动过程中, 齿轮随电机主轴一起转动, 其齿部断续地遮挡红外线光

29、束,使得接收管接收 到断续的光脉冲信号。 经过如图 2.2 所示的电路,将接收管接收到的光脉冲信号转换为电 脉冲信号。该电路采用5V供电,调节电位器阻值,使得红外线被齿轮遮挡时电路输出低 电平,红外线不被遮挡时电路输出高电平。 第三章:机械系统设计与实现 图 3.4 速度传感器的固定 3.4 本章小结 本章主要介绍了车模的安装与改造、电路板和传感器的安装方式。其中,对舵机性能 的探索以及机械部分的细节改动,被证明对提高小车性能来说是十分必要的。另外,各种 因地制宜的安装方式使得各个部件更加牢固而又不失美观,这为下一步软件调试打下了基 础。 第四章:硬件系统设计与实现 第四章 硬件系统设计与实现

30、 4.1 整体电路板设计 4.1.1 硬件需求分析 对智能车系统来说, 因为主要是追求更快的速度, 所以对电路系统的要求就是稳定性 好、体积小、重量轻!因此在设计过程中,除了所必须的控制模块、电源模块、视频信号 处理模块、电机驱动模块以及必要的显示模块之外,我们并没有在设计额外的功能模块。 这样做的目的,也是希望整体硬件系统更轻便,同时更简洁。 4.1.2 控制模块介绍 智能车的控制模块采用大赛组委会指定的MC9s12DG128B单片机,其最小系统的食物 图、引脚说明和电路图如下 图 4.1 s12最小系统实物 图 4.2 s12最小系统电路图图 4.3 s12最小系统接口 第四章:硬件系统设

31、计与实现 4.1.3 电路板制作 除此之外,我们还单独制作了一块控制电路板,电路板上包括了 S12 单片机工作所必 需的稳压模块、时钟模块和复位模块,同时还包括了视频信号提取电路、电机驱动电路及 其他一些电路的接口等。 图4.4 控制电路板原理图 图 4.5 控制电路板PCB 图 以下是单片机引脚分配的一些情况 AD模块 PAD7 摄像头视频信号 PT0 行同步信号 ECT模块 PT1 场同步信号 第四章:硬件系统设计与实现 PT2 奇偶场信号 PT3 速度传感器信号 PP1 ,PP0(PP1输出) 舵机 PWM 信号 PWM 模块 PP6 直流电机 PWM RXD0 串口接收 串口通信模块

32、TXD0 串口发送 PB0-PB7 LED灯 PH0-PH7 8 位波盘开关输入 PJ6 ,PJ7 MC33886 使能 IO AN2-AN6 预留 IO 接口 表 4.1 单片机引脚分配表 电路板上所有接口说明如下表 J0 电池与电路板的接口 S1 8 位波盘开关 J3 最小系统左排 IO 接口 J4 最小系统右排 IO 接口 J5 舵机接口(地、Vcc、信号) J6 速度传感器接口(Vcc、Gnd 、信号) J7 摄像头接口( Vcc、Gnd 、信号) J8 驱动电机接口 J9 GND 方便测试 J10 预留 IO 引脚接口 J11 预留 5V电源接口 表 4.2 接口分配表 4.2 摄像

33、头 4.2.1 工作原理 摄像头分黑白和彩色两种,为达到寻线目的,只需提取画面的灰度信息,而不必提取 其色彩信息,所以本设计中采用的是黑白摄像头。较使用同等分辨率的彩色摄像头而言, 这样可减少单片机采样的负担。 摄像头主要由镜头、 图像传感芯片和外围电路构成。 图像传感芯片是其最重要的部分, 但该芯片要配以合适的外围电路才能工作。将芯片和外围电路制作在一块电路板上,称为 “单板”。若给单板配上镜头、外壳、引线和接头,就构成了通常所见的摄像头,如聊天 用的摄像头;若只给单板配上镜头,这就是“单板摄像头”。单板摄像头日常生活中不多 见,生产单板的公司通常将它们卖给其它公司,其它公司再按自己的要求包

34、装这些单板。 单板通常有三个端子:电源端、地端和视频信号端(有的还多出一个端子,那是音频 信号端)。电源接的电压要视具体的单板而定,目前一般有两种规格, 6-9V 或9-12V。视 频信号的电压一般位于0.5V-2V 之间。 第四章:硬件系统设计与实现 摄像头的工作原理是:按一定的分辨率,以隔行扫描的方式采集图像上的点,当扫描 到某点时,就通过图像传感芯片将该点处图像的灰度转换成与灰度一一对应的电压值,然 后将此电压值通过视频信号端输出。具体而言(参见图4.6) ,摄像头连续地扫描图像上的 一行,则输出就是一段连续的电压信号,该电压信号的高低起伏反映了该行图像的灰度变 化。当扫描完一行,视频信

35、号端就输出一个低于最低视频信号电压的电平(如 0.3V),并 保持一段时间。这样相当于,紧接着每行图像信号之后会有一个电压“凹槽”,此“凹槽” 叫做行同步脉冲,它是扫描换行的标志。然后,跳过一行后(因为摄像头是隔行扫描的), 开始扫描新的一行, 如此下去,直到扫描完该场的视频信号, 接着又会出现一段场消隐区。 该区中有若干个复合消隐脉冲,其中有个远宽于(即持续时间长于)其它的消隐脉冲,称 为场同步脉冲,它是扫描换场的标志。场同步脉冲标志着新的一场的到来,不过,场消隐 区恰好跨在上一场的结尾和下一场的开始部分,得等场消隐区过去,下一场的视频信号才 真正到来。摄像头每秒扫描25 幅图像,每幅又分奇

36、、偶两场,先奇场后偶场,故每秒扫描 50 场图像。奇场时只扫描图像中的奇数行,偶场时则只扫描偶数行。 图 4.6 摄像头视频信号 摄像头有两个重要的指标: 有效像素和分辨率。 分辨率实际上就是每场行同步脉冲数, 这是因为行同步脉冲数越多,则对每场图像扫描的行数也越多。事实上,分辨率反映的是 摄像头的纵向分辨能力。有效像素常写成两数相乘的形式,如“ 320x240 ”,其中前一个数 值表示单行视频信号的精细程度,即行分辨能力;后一个数值为分辨率,因而有效像素= 行分辨能力 分辨率。 值得注意的是,通常产品说明上标注的分辨率不是等于实际分辨率(即每场行同步脉 冲数),而是等于每场行同步脉冲数加上消

37、隐脉冲数之和。因此,产品说明上标注的“分 辨率”略大于实际分辨率。 我们要知道实际的分辨率, 就得实际测量一下。 但在本应用中, 我们对此项要求并不很精确,所以直接按其标定的分辨率进行编程即可。 4.2.2 摄像头选择 因为S12 单片机的AD 转换时间在不超频的情况下最短为7us。如果选用一个分辨率为 320 线的摄像头,则单行视频信号持续的时间约为 20ms/320=62.5us ,AD 对单行视频信号 采样的点数将不超过62.5/7+1=9 个。若使用分辨率为640 线的摄像头, 则单行视频信号 持续的时间约20ms/640=31us , AD 对单行视频信号采样的点数将不超过31/7+

38、1=5 个。这 就是说,分辨率越高, 单行视频信号持续的时间就越短,AD 对单行视频信号所能采样的点 数就越少。 如前所述,摄像头的分辨率越高, 尽管可提高纵向分辨能力, 却会减少单片机AD 采样 单行信号的点数, 削弱了横向分辨能力。 现在市场上摄像头的分辨率通常都在300 线以上, 由此推得单行视频信号的持续时间至多为 20ms/300=66us 左右,AD 采样每行视频信号的点 数至多为66/7+1=10 个(不超频情况下),这对我们的智能车定位系统来说是不够的。 所以,在选择摄像头时,我们应当尽量选择分辨率低的摄像头,这样做会降低摄像头的纵 第四章:硬件系统设计与实现 向分辨能力(降低

39、后对我们来说仍然远远够用),却可以增加单片机采样单行视频信号的 点数,提高横向分辨能力。 在本次设计过程中,我们在市场上所能找到的分辨率最低的摄像头是采用 1/3 Omni Vision CMOS 为传感芯片的摄像头,其分辨率为320 线。另外,为了 使得视野大小合适,选用了3.6mm 的镜头。往下章节中的视频采集工作就是基 于此种摄像头的。 4.2.3 电路设计 要能有效地对视频信号进行采样,首先要处理好的问题是如何提取出摄像头信号中的 行同步脉冲、消隐脉冲和场同步脉冲。 这里有两种可行的方法。 第一, 直接通过单片机AD 进 行提取。因为行同步脉冲、消隐脉冲或场同步脉冲信号的电平低于这些脉

40、冲以外摄像头信 号的电平,所以据此可设定一个信号电平阈值来判断 AD 采样到的信号是否为上述三类脉 冲。第二,就是给单片机配以合适的外围芯片,此芯片要能够提取出摄像头信号的行同步 脉冲、消隐脉冲和场同步脉冲以供单片机作控制之用。 考虑到单片机的速度有限, 而一些脉冲的间隔时间又较短, 同时为了减轻其处理负担, 我们采用了第二种方法进行信号提取。LM1881 视频同步信号分离芯片(简称LM1881 ) 可从 摄像头信号中提取信号的时序信息,如行同步脉冲、场同步脉冲和奇、偶场信息等,并将 它们转换成TTL 电平直接输给单片机的I/O口作控制信号之用。LM1881 的端口接线方式如 图4.7 所示。

41、 图4.7 LM1881 其中,引脚2 为视频信号输入端,引脚1 为行同步信号输出端(如图4.8中的b)。引 脚3 为场同步信号输出端,当摄像头信号的场同步脉冲到来时,该端将变为低电平,一般 维持230us ,然后重新变回高电平(如图4.8 中的c)。引脚7 为奇-偶场同步信号输出端, 当摄像头信号处于奇场时,该端为高电平,当处于偶场时,为低电平。事实上,我们不仅 可以用场同步信号作为换场的标志,也可以用奇 -偶场间的交替作为换场的标志。 第四章:硬件系统设计与实现 图4.7 LM1881 信号时序图 由LM1881 及其外围电路构成的摄像头采样电路如图 4.9 所示。摄像头视频信号端接 LM

42、1881 的视频信号输入端,同时也接入S12 的一路AD 转换端口(选用AD0 )。LM1881 的 行同步信号端(引脚1)通过跳线选择, 分别接入ECT 模块中的PT0 和外部中断引脚(IRQ ), 通过跳线选择,既可以采用脉冲捕捉方式获取行同步信号,也可以采用硬件中断获取。同 时将LM1881 的场同步信号和奇-偶场同步信号也输入到ECT 模块中(选用PT1 ,PT2 ),这 样,既可以采用查询方式获取奇偶场信号跳变,又可以采用脉冲捕捉方式获取电平变化。 通过这样的接线,为软件开发提供了多种选择的机会,使程序更加灵活。 图4.9 摄像头采样电路图 4.2.4 数据提取 摄像头采用的是隔行扫

43、描的方式,为方便设计,我们忽略奇场和偶场在扫描位置上的 细微差别,认为奇、偶场的扫描位置相同。 由实测结果可知,所用摄像头每场信号的第23 行 至第310 行为视频信号, 即每场有288 行视频信号, 这已远远超出了系统所需的精度要求。 实际我们没必要对这288 行中的每一行视频信号都进行采样,如此会增大 S12 存储和数据 第四章:硬件系统设计与实现 处理的负担,甚至会超出S12 的处理能力。再者,这样做是没必要的,事实上,小车的定 位系统在纵向上只要有1020 个像素的分辨能力就足够了。因此,我们只需对这288 行视 频信号中的某些行进行采样就行了。假设每场采样 40 行图像数据,我们可以

44、均匀地对288 行视频信号进行采样,例如采样其中的第 7 行、第14 行、第21 行、第273 行、第 280 行,即采样该场信号的第29 行、第36 行、第43 行、第295 行、第302 行(每 场开始的前22 行视频为场消隐信号)。 结合前面的电路图,采用I/O 查询方式识别奇偶场信号跳变;采用中断处理方式处理 行同步引发的外部中断。当奇偶场信号发生跳变时,对行同步信号重新计数。在行同步中 断处理程序中, 每个行同步信号, 行计数加1。当行计数到达所需采样行时, 即初始化AD 模 块,开始对此行信号进行AD 采样, 直到下一个行同步信号到来。 如此循环, 直到采样完最 后一行信号。获取场

45、跳变的方法有三种: 1,脉冲捕捉场同步信号(捕获下降沿) 2,捕捉 奇偶场同步信号(上升/ 下降沿)3,查询方式识别奇偶场信号跳变。三种方式均可以稳定 捕获信号,但是在程序优化上,采用捕获场同步信号的方法比较可靠,占用时间片最短。 可以利用程序处理剩余的时间完成更多的算法操作。 为了观察摄像头视频采样的效果,我们将 S12 采样到的每行图像数据通过串口发送到 PC 机上,然后通过记事本察看数据便可得出黑线位置 当AD 时钟为2MHz 下, 且将AD 转换序列长度设置为最短(即14 个AD 时钟周期) 时的 S12 单次AD 转换的时间=AD 时钟周期 14=(1/2MHz ) 14=7us 。

46、所谓“不超频”就是指 AD 时钟的频率不超过2MHz 。S12 的用户手册指出AD 时钟频率不要超过2MHz ,否则将有损 AD 模块的正常使用寿命。S12 的AD 时钟是通过总线时钟分频得到的,两者具体的关系为 AD 时钟频率=总线频率/2/ (AD 预分频系数+1)。默认情况下,总线时钟为8MHz 。而AD 预 分频系数最低的有效设置值为1。所以在默认情况下,所能设置出的最高 AD 时钟频率为 8MHz/ (2 x(1+1)=2MHz ,此即为用户手册规定的最高AD 时钟正常使用频率。 因为每个视频信号行中都有一个行消隐区(见图4.8) ,该区持续的时间约为行同步脉 冲持续的时间, 即4.

47、7us,所以单个视频信号行中有效视频持续的时间约为 62-4.7=57.3us。 在不超频情况下,AD 转换时间为7us,因此采样单行视频信号的有效点数一般为 57.3/7=8 个,也就是说此时的横向分辨能力为8 像素。 横向上8 个像素的分辨率不能满足黑线提取的需要,当所拍摄指引线距摄像头超过 35cm 时,指引线在拍摄画面上的宽度将会小于单行中相邻两采样点间的间隔。若指引线恰 好位于相邻两采样点之间, 就可能会漏检到该条指引线 (如图4.10 所示) 。为了保证指引 线在任何位置都不会被漏检,指引线距摄像头不能超过 35cm ,也就是说摄像头的有效探测 距离只有35cm ,这对整个系统而言

48、是不够的。 图4.10 漏检黑色指引线示意图 第四章:硬件系统设计与实现 为了提高横向的分辨能力,即提高S12 采样摄像头每行视频信号的点数,可以有两种 办法:通过对总线时钟进行超频;将摄像头旋转 90 度。下面分别进行介绍。 超频是通过将锁相环打开(即置PLLSEL 为1),并设置锁相环的倍频寄存器(SYNR ) 和分频寄存器(REFDV)为7 和3,由于 bus clock=16MHz*(SYNR+1)/(REFDV+1) 公式 3 则总线时钟将变为32MHz 。 若其他设置不变,则AD 时钟频率变为8MHz 。 下图是AD 时钟为8MHz 下的摄像头视频采样的效果图。图中蓝色横线上部为场

49、消隐信号,用红色横线标出的数据 即为黑线的位置。 图4.11 AD 时钟为 8MHz 下视频采样效果 此时的横向分辨能力增至50 个像素(依然保持纵向分辨能力为40 像素),有效探测 距离也相应地增至80cm 左右,这个探测距离对于定位系统已经够用了。 另外,由于定位系统在摄像头横向上的分辨能力只有 17 像素,而纵向上的分辨能力却 有40 像素,高于横向的分辨能力。因此,我们不妨将摄像头旋转 90 度,即让摄像头纵向 平行于实物横向,然后再来拍摄前方的路况。这样,摄像头所成像的纵向实际上是实物的 横向,而所成像的横向实际上是实物的纵向。系统就由原先的 17 像素实物横向分辨能力、 40 像素实物纵向分辨能力变为40像素实物横向分辨能力、17 像素实物纵向分辨能力。如 此,既增加了系统在横向上的分辨能力,又保持了足够的纵向分辨能力。 第四章:硬件系统设计与实现 4.3 速度传感器 4.3.1 方案选择 由于受车模机械结构的限制,必须采用体积小、重量轻的速度传感器,就目前所知有 三种方案可供选择,其特点如下: 1、霍尔传感器配合稀土磁钢 在主后轮驱动齿轮处,通过打孔,将几块很小的稀土磁钢镶在里面,然后将霍尔元件 安装在附近,通过检测磁场变化,可以得到电脉冲信号,获取后轮转

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

当前位置:首页 > 其他


经营许可证编号:宁ICP备18001539号-1