摄像头式避障小车设计_第1页
摄像头式避障小车设计_第2页
摄像头式避障小车设计_第3页
摄像头式避障小车设计_第4页
摄像头式避障小车设计_第5页
已阅读5页,还剩19页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、成 绩 评 定 表学生姓名 班级学号专 业课程设计题目摄像头式避障小车评语组长签字:成绩日期 2015年 1月 9日 课程设计任务书学 院专 业学生姓名班级学号课程设计题目 摄像头式避障小车实践教学要求与任务:1、熟悉所确定的题目,从问题需求、程序结构、难点及关键技术等方面进行分析,形成系统的设计方案; 2、根据方案设计硬件电路; 3、软件编程并调试;4、完成课程设计报告,打印程序,给出运行结果。工作计划与进度安排:第20周(1月6日-1月12日):布置设计任务,查资料,完成总体设计框架,完善设计内容,系统调试,验收答辩。指导教师: 2015年 1月 5日专业负责人:2015年 1月 5日学院

2、教学副院长:2015年1月5日目录第一章 引言 . 5第二章 系统基本原理分析及总体设计 . 62.1 系统需求分析 . 6 2.2 基本原理 . 6 2.2.1 车模平衡控制 . 6 2.2.2 车模速度控制 . 72.2.3 车模方向控制 . 9 2.3 设计思路 .9 第三章 硬件模块的方案与实现 .9 3.1 电源电路设计 . 9 3.2 电机驱动模块 . 10 3.3 主控模块电路设计 . 133.4 传感器模块 . 13 3.4.1 图像采集 . 13 3.4.2 陀螺仪传感器 . 14 3.4.3 加速度计传感器 . 14 3.4.4 速度检测传感器 . 14 3.5 调试模块

3、. 14 第四章 模型车机械结构优化与模块安装 . 14 4.1 电池的安装 . 15 4.2 编码器的安装 . 15 4.3 摄像头的安装 . .15 4.4 加速度计和陀螺仪的安装 . 16 4.5 主控板的安装 . 16 4.6 小结 . 16 第五章 智能车控制软件设计 . 165.1 主程序流程图: . 175.2 图像采集与处理 . 175.21 图像的采集 . 17 5.22 图像的处理 . 18 5.23 赛道分类 . .18 5.3 控制算法与函数 . 18 5.3.1 直立控制程序设计 . 18 5.3.2 速度控制程序设计 . 18 5.3.3 方向控制程序设计 . 18

4、 第六章 调试方案 .19 6.1 IAR 集成开发环境 . 19 6.2 上位机 . 19 6.21 摄像头上位机 . 19 6.22 示波器上位机 . 19 6.2.3 参数修改上位机 . 19 第七章 总结 . 20 参考文献 . 20 第一章 引言智能车系统由微控制器模块、电源管理模块、路径检测模块、车速检测模块、 直流驱动电机控制模块和调试模块组成。本系统以 32 位微处理器 K60 为控制核 心,并采用 IAR Embedded Workbench 软件编程、J_LINK、NRF24L01、蓝牙等作 为调试工具。运用摄像头进行道路信息采集,并采用 PWM 技术来控制电机转速。 各个

5、部分经过微控制器模块的处理控制,能够以较快的速度在指定的轨迹上行 驶,在进弯道、十字路口、人字路口等特殊轨迹之前能够提前识别并通过改变 两个轮子上的 PWM 的占空比,达到平滑快速通过和减小路程的效果。第二章 系统基本原理分析及总体设计 2.1 系统需求分析模型车需要在能来回自由移动的车轮上保持车体直立不倒,这就要求车体的 重心和车轴的重心需要在同一垂直线上,但是由于模型车在行驶过程中,这一 平衡是时刻在变动的,要求电机的正反转是车模加速运动保持直立。要实现这 一要求,就必须知道模型车实时的姿态,而这个就可以通过加速度计、陀螺仪 等姿态传感器来获取小车的姿态参数。这样就可以通过实时的姿态参数,

6、经过 处理来控制电机的正反转,从而保证小车的直立。这就是模型车的平衡控制。模型车需要在规定的赛道上行驶,那么就必须要有识别这个赛道的眼睛 摄像头,要想这个“眼睛”看清楚赛道那就需要选一个好的摄像头。然后就是 对眼睛看到的图形进行处理,获得所需的图像,以及对赛道种类的识别,这些 都是模型车能否快速运行的基本条件。这就是模型车的转向控制。 前面三个任务是模型车控制任务的最核心、最基本的控制任务。 最后,在 模型车的调试阶段是模型车提速的重要阶段,只要前面的基础打好, 剩下的就只是调试提速了,但是在调试的阶段,调试的手段至关重要,所以在 调试之前,就应该做好准备,准备好相应的调试工具和调试手段。比如

7、各个模 块的上位机以及通讯模块。2.2 基本原理 前面讲到模型车的三个基本控制任务。这三个任务分解后的任务各自独立进 行控制。由于最终都是对同一个控制对象(车模的电机)进行控制,所以它们 之间存在着耦合。为了方便分析,在分析其中之一时假设其它控制对象都已经 达到稳定。比如在速度控制时,需要车模已经能够保持直立控制;在方向控制 的时候,需要车模能够保持平衡和速度恒定;同样,在车模平衡控制时,也需 要速度和方向控制也已经达到平稳。这三个任务中保持车模平衡是关键。由于 车模同时受到三种控制的影响,从车模平衡控制的角度来看,其它两个控制就 成为它的干扰。因此对车模速度、方向的控制应该尽量保持平滑,以减

8、少对于 平衡控制的干扰。以速度调节为例,需要通过改变车模平衡控制中车模倾角设 定值,从而改变车模实际倾斜角度。为了避免影响车模平衡控制,这个车模倾 角的改变需要非常缓慢的进行。这一点将会在后面速度控制中进行详细讨论。2.2.1 车模平衡控制 世界上还没有任何一个天才杂技演员可以蒙着眼睛使得木棒在自己指尖上 直立,因为没有了眼睛观察进行负反馈,当木棒在人的指尖上直立时,眼睛观 察到木棒的倾斜角度和倾斜趋势(角速度),相应的通过人脑做出反应,使手 掌移动以抵消木棒的倾斜角度和趋势,从而保持木棒的直立。这就形成了反馈 机制。其反馈机制如图 2.1 车模平衡控制也是通过负反馈来实现的,与上面保持木棒直

9、立比较则相对简 单。因为车模有两个轮子着地,车体只会在轮子滚动的方向上发生倾斜。控制 轮子转动,抵消在一个维度上倾斜的趋势便可以保持车体平衡了。如图 2.2 所 示。 2.2.2 车模速度控制 对于直立车模速度的控制相对于普通车模的速度控制则比较复杂。由于在速 度控制过程中需要始终保持车模的平衡,因此车模速度控制不能够直接通过改 变电机转速来实现。要实现对车模速度的控制,必须测量车模的实时速度,改 变车模的倾角,以及如何根据速度误差控制车模倾角。 安装在电机输出轴上的编码器来测量得到车模的车轮速度。通过给定车模直 立控制的设定值,在角度控制调节下,车模将会自动维持在一个角度。在车模 直立控制下

10、,为了能够有一个往前的倾斜角度,车轮需要往后运动,这样会引 起车轮速度下降(因为车轮往负方向运动了)。由于负反馈,使得车模往前倾 角需要更大。如此循环,车模很快就会倾倒。原本利用负反馈进行速度控制反 而成了“正”反馈。如图 2.3 所示。车模的速度控制本质上是通过调节车模的倾角实现的,由于车模是一个非最 小相位系统,因此该反馈控制如果比例和速度过大,很容易形成正反馈,使得 车模失控,造成系统的不稳定性。因此速度的调节过程需要非常缓慢和平滑。2.2.3 车模方向控制 实现车模方向控制是保证车模沿着竞赛道路比赛的关键。 直立车模所在的 摄像头组的道路两侧铺设有黑色边缘线。可通过摄像头采集回来的灰度

11、值进行 判断,通过给定的阈值对采集回来的图像进行二值化,找出赛道的边缘,再通 过边缘线画出赛道中心线。在车模直立控制和速度控制的基础上给电机左右轮 差速实现转向的效果,使小车在赛道内行驶。具体控制框图如下 2.5 所示:通过左右电机速度差驱动车模转向消除车模偏差,这个过程是一个积分过 程。因此车模差动控制一般只需要进行简单的比例控制就可以完成车模方向控 制。2.3 设计思路 根据摄像头平衡组的规则、要求及为了方便调试,我们设计的模型车共包括 五个模块:主控模块、传感器模块、电机驱动模块、电源管理模块、调试模块。第三章 硬件模块的方案与实现 硬件电路是整个系统中想当重要的一部分,是系统运行的基础

12、,所以在每一 个模块中电阻和电容的相关系数,都需要仔细斟酌。硬件电路的设计和制作是 一个漫长的过程,更是一个充满乐趣的过程,也是一个不断完善的过程。如果 电路刚开始设计考虑的不周全,可能就需要重新设计与绘制电路板,这样的话 会浪费很多的时间,所以一定要保证电路的稳定性,在此基础上提高电路板的 集成度,这需要耗费很多的时间和精力去完成它。 3.1 电源电路设计 电源模块是智能车动力核心,电源模块是否稳定,这将决定小车是否能够平 稳的运行,查阅电源模块的相关资料,我们选择了比较适合的电源。 在这几次 调试的过程中,我们的电源管理没有出现任何的问题。比赛指定智能车电源只 能使用指定型号的 7.2V

13、2000mAh Ni-Cd 电池供电。 我们现在需要 3 种电源,一种是为单片机、摄像头、液晶、LED、SD 卡等 器件供电的 3.3V 电源;一种是为 蓝牙、加速度计、陀螺仪、蜂鸣器供电的 5.0V 电源;另一种是为电机供电的 7.2V 电源。前两种电源可供我们选择, 一种为 开关稳压电源, 另一种为线性稳压电源。开关稳压电源功耗小,效率高;线性 稳压电源,电路简单,输出纹波小。 整体考虑,我们选择线性集成三端稳压电 源。电机电源我们就直接取自电池两端。 5.0V 供电我们采用 LM2940,因为 LM2940 是压差小,输出文波小的线性稳压 电源,当电源的电压比低时也能为系统提供稳定的电源

14、。 另外由于若是直接从电池端电压直接稳压到 3.3V 电源的效率会变得很低, 所以我们先将电池电压降为 5V 然后在通过稳压芯片降为 3.3V。3.3V 电源供电, 我们采用 2 片 TPS7333,因为 TPS7333 的压差小,当电源的电压比较低时,也 可以为单片机提供稳定的电源,而且 TPS7333 的输出纹波非常小,输出容量也 满足核心板的供电要求。另外一片 TPS7333 芯片给其他的 3.3V 的电源供电,这 个芯片完全可以满足我们的要求;给电机供电,我们只是对电池经过滤波之后 直接接到电机上的。 我们的电源模块电路图如图所示 3.2 电机驱动模块 本次摄像头平衡组需要驱动 2 个

15、电机,驱动的设计尤为重要。常用的电机驱 动有两种方式:一、采用集成电机驱动芯片;二、采用 N 沟道 MOSFET 和专用 栅极驱动芯片设计。市面上常见的集成 H 桥式电机驱动芯片中,BTN7971 型芯 片性能较为出色,该芯片具有完善的过流、欠压、过温保护等功能,使用 PWM 调 制输入频率最高 25KHz,内部 MOSFET 导通电阻为 16 毫欧,具有最大 71A 的 连续工作电流。使用集成芯片的电路设计简单,可靠性高。 由于分立的 N 沟道 MOSFET 具有极低的导通电阻,大大减小了电枢回路总 电阻。另外,专门设计的栅极驱动电路可以提高 MOSFET 的开关速度,使 PWM 控 制方式

16、的调制频率可以得到提高,从而减少电枢电流脉动。并且专用栅极驱动 芯片通常具有防同臂导通、硬件死区、欠电压保护等功能,可以提高电路工作 的可靠性。 1.专用栅极驱动芯片的选择: IR 公司号称功率半导体领袖,所以我们主要在 IR 公司的产品中进行 选择。其中 IR2184 型半桥驱动芯片可以驱动高端和低端两个 N 沟道 MOSFET,能提供较大的栅极驱动电流,并具有硬件死区、硬件防同臂导通等功 能。使用两片 IR2184 型半桥驱动芯片可以组成完整的直流电机 H 桥式驱动电 路。由于其功能完善,价格低廉容易采购,所以我们选择它进行设计,如图 3.2 所示:2. MOSFET 的选择:选择 MOS

17、FET 时主要考虑的因素有:耐压、导通内阻和封装。智能汽 车电源是额定电压为 7.2V 的电池组,由于电机工作时可能处于再生发电 状态,所以驱动部分的元件耐压值最好取两倍电源电压值以上,即耐压在 16V 以上。而导通内阻则越小越好。封装越大功率越大,即同样导通电阻 下通过电流更大,但封装越大栅极电荷越大,会影响导通速度。常用的 MOSFET 封装有 TO-220、TO-252、SO-8 等,TO-252 封装功率较大、而栅 极电荷较小。于是我们最终选择了 IR 公司 TO-252 封装的 LR7843 型 N 沟道 MOSFET,VDSS = 55 伏、RDS(on) = 8.0 毫欧、ID=

18、 110 安。 3. 控制逻辑电路设计: IR2104 的控制信号有两个管脚:IN 和 SD。IR2104 输入输出信号关系 图如图 3.3 所示: 图 3.3 IR2104 输入输出关系图 而当两片 IR2104 驱动如图 3.4 所示可逆桥式电路时,其真值表为表 3.1:我们用两片 IR2104 及四个 MOSFET 组成全桥的电机驱动电路,并且采用单极 性的控制模式,PWM 的占空比在 0%之时电机速度为零,0100%控制转速,H_D 信 号控制转向。3.3 主控模块电路设计 核心控制板负责赛道信息的采集;车模直立数据的采集;运行速度的采集; 驱动电机 PWM 波的输出;控制车模直立、速

19、度、转向的控制。我们本次使用的 主控芯片是 Freescale 公司生产的 32 位单片机 MK60DN512Z10。该单片机基于 ARM CORTEX M4 的 RISC 内核,外接 50MHz 晶振,通过 PLL 超频至 200MHz。MK60 内部含有两个 ADC 模块,最高采样精度为 16 位。内置 8 路 16 位 PWM 输出。两 路数字正交信号解码模块,可以方便读取双向编码器信息。此模块为整个系统 中最核心的模块,所以它的稳定性直接关系到到整个系统的稳定运行,因此, 此模块与其他模块之间需要做好必要的隔离工作,使得其工作时不会受到其他 模块的影响,尤其是电源模块。3.4 传感器模

20、块 3.4.1 图像采集 (1 )CCD 电荷耦合器件 CCD 是一种半导体器件,能够把光学影像转化为数字信号。 CCD 上植入的 微小光敏物质称作像素(Pixel)。一块 CCD 上包含的像素数越多,其提供的 画面分辨率也就越高。 CCD 的作用就像胶片一样,但它是把图像像素转换成数 字信号。CCD 上有许多排列整齐的电容,能感应光线,并将影像转变成数字信 号。经由外部电路的控制,每个小电容能将其所带的电荷转给它相邻的电容。 构成 CCD 的基本单元是 MOS (金属- 氧化物- 半导体) 结构。CCD 的基本功能 是电荷的存储和电荷的转移。工作时,需要在金属栅极加一定的偏压,形成势阱 以容

21、纳电荷,电荷的多少基本与光强成线性关系。电荷读出时,在一定相位关系 的移位脉冲作用下,从一个位置移动到下一个位置,直到移出 CCD ,经过电荷- 电压变换,转换为模拟信号。 (2 )CMOS 光电传感器 CMOS 是一种高集成度大规模集成电路,仍使用光敏元件为感光器件,光敏 元件在排列方式上与 CCD 电荷耦合器件相同,只是在光电转换后信息传送方式 不。CMOS 芯片内部提供了一系列控制寄存器,通过总线编程来对自动增益、自动曝光、白色平衡、校正等功能进行控制,编程简单、控制灵活。直接输出的 电视机制式图像信号可以很方便地和后续处理电路接口,供处理器 AD 模块对 其进行采集和处理器处理。3.4

22、.2 陀螺仪传感器 陀螺仪可以用来测量物体的旋转角速度。在模型车上安装陀螺仪测量车模型 车的倾角速度,再将角速度进行积分便可以的到模型车的真实角度。由于陀螺仪输出的是车模的角速度,不会受到车体运动的影响,因此该信号 中噪声很小模型车的角度又是通过对角速度积分而得,这可进一步平滑信号, 从而使得角度信号更加稳定。因此车模控制所需要的角度和角速度可以使用陀 螺仪所得到的信号。但是陀螺仪在使用的过程中会有较大的温漂,使得所得到 的角度值不准确,所以还需要将陀螺仪与加速度计的信号进行采集处理。从而 去掉陀螺仪的过冲、温漂。3.4.3 加速度计传感器 由于陀螺仪有严重的温度漂移,对陀螺仪的积分并不能得到

23、当前车身的准 确的角度。也就无法控制车身的平衡,因此为了得到当前的车身角度,必须使 用加速度计。我们使用的是 MMA7361,MMA7361 具有工作电压地(2.23.6V),灵敏度高(800mv/g)的特点。MMA7361 是三轴加速度计。其三个输出信号与对应 的轴的加速度成比例。陀螺仪的输出不需要接放大电路,唯一的外围器件就是 低通滤波电路,由于输出后没有负载,仅作为 ADC 的信号,这里采用官方的 (1K,0.1uF)的无源低通滤波。3.4.4 速度检测传感器 为了使得模型车能以闭环控制系统运行,就需要测的模型车的运行速度,以 使模型车在急弯以及长直到时速度不至于过快而冲出赛道。如果开环

24、控制电机 转速,由于直立车的特点,会造成赛车无法运行,通过速度检测,对模型车速 度进行闭环反馈控制,就可以消除上述的影响。 常见的速度检测传感器有,测速发电机,光电测速传感器,霍尔传感器和光 栅编码器等。相比较而言,测速发电机的体积和质量比较大,用测速发电机会 对模型车的机械结构产生比较大的影响。经过我们的多次比较最后我们打算使 用霍尔传感器。3.5 调试模块 液晶屏具有显示内容直观,可显示图像和汉字的优点。在车身添加液晶屏模 块可以使调试更加方便,因此本次车身上我们添加了液晶屏模块。在调试过程 之中,我们需要实时的了解与掌握一些车的运行状态,比如说传感器的状态, 模型车的角度,调试时用液晶将

25、这些参数显示出来,让我们实时的监测车的状 态,从而做出判断,这样很大程度的方便了对车的调试。 有时候需要对参数作修改处理,如果每修改一个数据就下载一次程序的话, 就会浪费时间,这时应用键盘,它就起到一个人机交互的作用。而且在比赛前 的调试过程中,如果发现模型车不适应赛道,还可以临时对部分的参数进行修 改,使得模型车的适应性更强。 在对小车的参数进行调整的时候,由于蓝牙的传输速度比较慢,无法再模型 车运行的时候修改参数,所以我们就用 NRF24L01 无线模块进行修改,这样可以 大大提高修改参数的效率,从而加快调车的进度。 我们给模型车配备了一个蓝牙,虽然蓝牙用来修改参数速度很慢,但是在图 像处

26、理的时候还是需要用蓝牙来发图的,把小车看到的图,发到电脑上的上位 机,然后再来对着图片进行图片处理,这样一来也可提高对图片处理的速度及 精度。 蜂鸣器,这个可以用在模型车对赛道的识别上,这样就可以十分直观的看出 来模型车是否识别赛道以及识别时间。这样就可以更加方便的调试。 电压表头,用于显示电池的电压,防止电池过放从而更好的保护电池,延长 电池的使用寿命。第四章 模型车机械结构优化与模块安装 智能车的整体参数,包括车体重心、高度、传感器排布方式等,都对整个智 能车系统的稳定运行起着至关重要的作用。因此,对智能车机械系统的调节, 有助于模型车更快更稳定的运行。 模型车的布局以精简、可靠、稳定为前

27、提,通过对小车的布局,尽量保证小 车左右平衡,以及寻找一个合适的重心,保证模型车既能稳定快速前进,又能 在转弯时流畅。 智能汽车各个统的控制都是在机械结构的基础上实现的,因此在设计 整个软件架构和算法之前一定要对整个模型车的机械结构有一个全面清晰 的认识,然后建立相应的数学模型,从而再针对具体的设计方案来调整赛 车的机械结构,并在实际的调试过程中不断的改进优化和提高结构的稳定 性。本章将主要介绍智能汽模型车型车的机械结构和调整方案。 根据竞赛规则,各个竞赛组别所使用的车模均为组委会指定车模,摄 像头组所使用的车模为 D 型车模和 E 型车模,基于各方面考虑,我们选择 E 型车模。4.1 电池的

28、安装 电池是占模型车车重的主要部件,他的安装对重心的影响极大,车模重心 太高在高速过弯导致了侧翻,降低重心能增加过弯的稳定性。所有模型车的部 件安装都要尽量保证小车的重心足够低,而电池是这么多零件中最重的,所以 电池的安装位置对模型车有很大的影响。我们考虑到影响模型车平衡的两个转 动惯量,以车轴为轴心的转动惯量和转向的转动惯量,所以我们把电池横着放 在轮胎中间。4.2 编码器的安装 选用可以 5V 工作电压的 512 线 MINI 光电编码器进行速度的测量,保证测 量的精度。速度传感器用螺钉通过支架固定在后轮支架上,这样固定好之后, 就有了较高的稳定性。然后调节编码器齿轮,使其与差速齿轮紧密咬

29、合,增大 测速的精确性,但是咬合过紧也增大了摩擦,减小了对电机做功的利用率,影 响模型车的快速行驶,因此减小摩擦同时增强齿轮间的咬合是我们主要考虑的 因素。用齿轮润滑油涂抹齿轮有不错效果。4.3 摄像头的安装 摄像头为采集赛道边界模块,赛道宽 45cm,其中两边都有 2.5cm 的黑线, 为了更好地采集到赛道两边的黑线,就必须使得摄像头的位置达到一定高度, 而且有一定的倾角,这个决定了模型车的视野的大小。若视野过窄会导致模型 车调整方向时的死区问题。另外还需要考虑到摄像头对模型车的重心的影响。4.4 加速度计和陀螺仪的安装 智能车在行进过程中,车体仅绕两轮的轴心线做转动。芯片外观是长方形 的,

30、安装时,应注意将长的一边与后轮轴心线平行。因为陀螺仪测得的是角速 度,所以水平放置就可以了,与陀螺仪一样,加速度传感器的性能与安放位置 也有很大的关系。加速度传感器是根据其 XYZ 轴上的模拟输出电压来确定车身 的倾角。由于我们测量的倾角只有一个,所以可以使用其中两个个轴的输出经 过正交分解来计算。4.5 主控板的安装 由于前面的电池的安装尽量放低且靠近轮胎,使得模型车的平衡角度过于 靠前,以至于模型车无法顺利通过坡道,所我们把主控板,通过一个支架向前 伸以加强模型车前部的重量。4.6 小结 模型车的性能与机械结构有着非常密切的联系。良好的机械结构是模型车提 高速度的关键基础。在同等的控制环境

31、下,机械机构的好坏对其速度的影响十 分显著。我们非常重视对智能汽车的机械结构的改进,经过大量的理论研究和 实践,我们模型车的大部分质量都集中在两轮前后,达到降低重心的目的,从 而提高了模型车整体的稳定性和可靠性。第五章 智能车控制软件设计 5.1 主程序流程图:5.2 图像采集与处理 5.21 图像的采集 由于我们采用了 k60 芯片和带有硬件二值化的 ov7725 的摄像头,我们可以 采用 dma 采集赛道图像,dma 采集效果比一般的读取 io 口效率高,并且 OV7725 没有噪点,效果好。图像采集过程中 dma 独占内存,无法进行图像处理,我们 选用的摄像头采集速度可以达到 150 帧

32、,于是我们抛弃了一张图片,变成每秒 钟 100 张,这样我们就有了充足的时间进行赛道信息处理和车体姿态控制。由 于 ov7725 可以通过 sccb 配置寄存器,改变采集图像的大小,简化了采集过程, 开始我们选用了 80*60 的图像大小 经过一段时间发现效果并不理想,白背景下远处的边线无法看清,我们把图 像扩大到了 160*120,并去掉图像最左右和最靠近车的部分,由于图像畸变,近 处的图像所占的比例很大,但是用处却不大,我们通过下图的赛道标定,等距 采集图像,使得每一行像素之间所反映的赛道实际距离相近,再通过数组存下 要留下的赛道行号,然后去掉相应的无用行,最后实际使用的图像大小为 128

33、*70。 5.22 图像的处理 在采集出图像信号后需要对其进行处理以提取赛道信息,同时, 由于杂点、 交 叉线、起跑线、光线、赛道连接处、赛道上的杂物,以及赛道以外图像的干扰, 得到的图像有很多干扰,软件上需要排除干扰因素,对有效赛道进行识别, 并提 供尽可能多的信息供决策使用。图像信号处理中提取的赛道信息主要包括: (1) 每一行的赛道中心位置 (2) 每一行的赛道宽度 (3) 赛道的曲率 (4) 赛道的变化幅度由于摄像头倾斜放置导致的梯形畸变,这使得同一段 赛道位于摄像头视域的不同区域时(近端、远端,边缘、中间)的表征会有所差别。 为了还原出真实的赛道信息,我们根据摄像头的放置位置、角度等

34、参数,对图 像进行了梯形失真校正,使得图像的处理更接近真实空间。 摄像头组的核心部分为左右边线的提取,从而推算出中心线的位置,引导车 子的行进方向。边线提取,中心线推算思路: 1.近处图像较远处图像可靠,所以边线由近到远提取 2.近十行先从中间向两边进行边沿搜索,找到边沿,确保近处图像有效 3.之后的行采用边沿跟踪,根据上一行的黑线位置动态地确定本行黑线的搜 索范围,搜索黑线,节省时间 4.若连续几行的左右线都找不到,判断为十字弯,进行左右线的延伸,直至 再找到有效的边线;若连丢几行的次数较多时,则认为是虚线小 s,进行垂直方 向的延伸后不必特别处理 5.若左右边线均找到,该行中心线直接为左右

35、边线等权重加权;若某一边线 丢失,则根据前面有效行的赛道宽度和另一边线的位置对中心线进行推算 6.推算完中心线后可对中心线进行一定的修正,更符合实际5.3 控制算法与函数5.3.1 直立控制程序设计 平衡控制算法最重要的是滤波算法和控制算法。这里滤波的主要作用是使用 加速度计滤除陀螺仪的漂移,也可以说是将加速度计和陀螺仪的数据融合,将 车模角度和角速度乘以各自相应的系数就可以得到直立控制输出量。5.3.2 速度控制程序设计 为了使得速度具有一定的物理意义,对于编码器所取得的脉冲数需要转化成 实际的速度,根据定义单位的物理意义,可以确定速度单位转化的比例值。5.3.3 方向控制程序设计 车模方向

36、控制利用图像计算出来的偏差量进行,并且与中值进行对比,得到 的差值来驱动电压。对于方向来说,我们依然进行了大量限幅,不仅仅实在图像处理上,以及图 像的偏差计算中,还是整个电机的输出控制中。第六章 调试方案 前面几章一直是在为系统制定方案以及方案的细化。但整个系统的完善主要 还是在系统的现场调试。在细分的每个模块中,大部分都涉及有众多参数, 对这些参数的确定就需要软硬件联合调试。而这过程就需要一整套开发调试 环境和工具。包括程序源代码的编辑以编译环境,参数调节与设定工具。 6.1 IAR 集成开发环境 IAR Embedded Workbench 是一套完整的集成开发工具集合:包括从代码编 辑器

37、、工程建立到 C/C+编译器、连接器和调试器的各类开发工具。它和各种仿 真器、调试器紧密结合,使用户在开发和调试过程中,仅仅使用一种开发环境 界面,就可以完成多种微控制器的开发工作。6.2 上位机 我们用到的上位机有三个:摄像头上位机 ,visual scope ,参数修改神器。 其中示波器上位机波特率都为 115200。 6.21 摄像头上位机 由于我们使用的是摄像头,需要实时的查看小车实际看到的赛道信息,方便 于我们对图片的分析。我们使用 Visual Studio 开发的摄像头上位机,可以接 收蓝牙发来的图片信息,同步执行算法分析图片。在调试的后期,发现仅仅使 用这个上位机并不能完全分析

38、到小车在实际运行的过程中看到的图像,我们小 组又将 SD 使用在小车上,实时的记录小车在运行过程中的各项参数,进而方便 我们的调试。 6.22 示波器上位机 该上位机共有 4 个通道,分别将数据用 4 种不同颜色的曲线表示出来。在调 试的过程中,由于我们在调节车身的平衡的各项系数时,需要实时的了解加速 度计和陀螺仪采集回来的数据,和滤波算法是否可以有效的滤除噪声干扰。使 用串口示波器极大地方便了我们地调试。 6.2.3 参数修改上位机 由于小车的各项参数较多,每次为了改参数而去下载程序,会使得在调车的 过程十分不便。因此,我们利用 NRF 将数据发送给小车,可以使得小车在行走 的过程中动态地修改参数,而不影响小车的正常运行。第七章 总结 智能车,“能自己跑的车”,非常神奇的事物。正如银河英

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论