基于摄像头的自主循迹智能小车系统的设计内容摘要:
搭建了 H 桥驱动电路。 通过逻辑设计,可以让电机处于多种模式下工作,经过在赛道上对赛车进行试验,电机的加减速效果很好,完全可以满足赛车对不同赛道加减速的要求。 本设计采用 PWM直流脉宽调速,该方法有效地避免了串电阻调速其调速范围小,平滑性低的缺点,尽管也存在开关过渡过程损耗大,在供电回路中产生谐波等缺点,但可以通过合理选择开关频率等办法弥补不足。 驱动芯片采用飞思卡尔半导体公司的半桥式驱动器 MC33886。 我们考虑以下三种方案: (一 )使用单片的电机驱动芯片:实现简单,但驱动电流仅 5A左右。 (二 )两片电机驱动芯片并联:驱动电流达 10A左右。 (三 )由一片电机驱动芯片驱动 CMOS全桥电路,最大驱动电流达 75A左右。 比较:使用一片驱动芯片 MC33886驱动全桥电路,其驱动电流大,而且实现起来也不复杂,故而采用方案三,并使用双路 PWM信号进行驱动。 小结 在硬件设计方面,我们尽量做到可靠、高效,这样才能为整个系统提供一个良好的平台。 第 三 章 控制算法的研究 智能车控 制思想 智能车的控制思想的核心就是:将传感器返回的赛道偏差,转换为正确的调整量实现在车辆的执行机构上。 将核心延展成两个个部分。 传感器偏差的读取与控制擦略。 在这里,我们可以把传感器偏差的理解为基础,而控制策略可以理解成是上层建筑。 下面我们将逐一叙述这两个部分。 传感器偏差的读取 摄像头为传感器来读取偏差主要具有以下几个特点: ,干扰较多。 20ms 的障碍,所以数据并不是在时间上连续。 这些都是我们在调试程序过程中主要遇到的问题。 下面是我们的解决方案。 在黑 线提取方面,我们采用的是双边缘法。 既在图像不二值化的基础之上,进行双边缘检测。 我们采集黑线的数据范围是每行 60 个点,一共采集 28 行。 正常的黑线的特点是,具有双边缘切符合特定的宽度。 这样在一行的处理上可以滤去一些砸点。 接着是通过上下两行的连续性来判断数据的正确性。 例如,本行采集的黑线位置为 40,与上一行做差。 如果差值大于 10 证明该点给砸点。 这样通过二阶连续性的判断,基本上可以保证,采集出来的黑线是正确的。 这样采集的过程却忽略了起跑线,但在这个过程的基础上识别起跑线并不难。 只需要将黑线宽度,放宽即可。 既原来 要求的范围是 1—— 3。 而起跑线的宽度,通过在线调试可以确定是 10—— 20。 只要两个范围内进行起跑线和正常赛道的识别即可。 还需要注意一点的就是,起跑线的识别通常采用的方法是双侧宽黑区加上中间的正常黑区。 这样就要求车辆在直道上要非常的直,否则无法保证在一行黑线上会出现起跑线的图形。 所以经过反复的实验,我们发现其实只要识别单侧的起跑线即可达到要求。 既限制条件为:一块起跑线黑区,加一块正常黑区。 再加上两块黑区之间的差值符合要求,即可判断为起跑线。 通过实验表明,此方法可行。 在弯道出完后马上遇见起跑线也可以完成识别。 完成了起跑线和正常黑线的提取,可以说基本完成了赛道数据的提取。 接下来要做的就是在提取的数据中,计算出车辆与赛道的偏差。 表示车辆的偏差有很多种,我们采取的基本策略是:偏差 +赛道趋势 =最后偏差。 我们下面将着重叙述赛跑趋势的判断与偏差的选取。 ( 1) 赛道趋势的判断 我们可以大致把三道分为以下几种情况:。 s 弯与小 s 弯。 大弯通常指半径 80 以上的弯道,这种弯道要求车辆可以保持很高的速度,并且可以以较小的舵机调整量通过。 鉴于这样通过特性,所以通常不 用刻意去识别。 大可以当做直道来跑。 急弯是比赛的要点和难点。 并且急弯的类型比较多,有 u 型急弯, s型急弯,圆形急弯等。 对于这种弯道的判断方法,我们主要采用的是差值判断。 既 行 与 行 之 间 依 次 逐 差。 例 如 一 组 直 道 数 据 为biao[27]={30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30}。 逐差的结果就为 0,既可以判断为直道。 如果逐差的结果大于一个定值的话,既可以判断为急弯道。 大 s 弯和小 s 弯的判断相对复杂。 在速度不达到一定情况之下,这个是没有必要判断的。 但一旦车速上去以后,就会导致在 S 弯中超调,导致车辆的出轨。 所以还是很有必要识别的。 识别小 S 弯的方法和上面识别急弯的方法形同,也是用差值法进行判断,通常差值会很小(在线调试是找出这个阈值的很好方法)。 而大 S 弯的识别就和摄像头的视野有很大的关系了,倘若摄像头无法看全整个 S 弯的话,识别起来会很复杂。 如果能看全的话,识别方法如同小 S弯。 由于我们摄像头的视野范围所限和片内 A/D 的转换能力所限,我们的视野是不能看全一个 S 弯。 所以我们 识别的方法是,差值判断加上有效行判断。 通常在 S 弯中差值会很大,这样就导致了赛车识别成弯道。 但是 S 弯与普通弯道最大的不同既有效行数比普通弯道要多。 我们实验的结果是普通弯道有效行数通常在 14 行以下,而 S 弯通常是全场图像有效。 通过这一个条件完成了 S 弯的识别。 但是这样的方法也是有缺点的。 因为车辆在 S 弯的位置并不固定,所以有时候也会丢失很多黑线。 所以该方法还是有待改进的。 十字弯的识别与车辆入十字弯的位置很有关系,如果一个 50 半径的弯马上进入十字弯的话。 如果对十字弯无法良好识别的话,会导致车辆无法正常行驶。 但考虑到实际比赛的时候,该种情况出现的情况不是很大。 所以本车并没有采取特定的十字弯识别策略,此处有待改进。 ( 2)偏差的选取 在完成了赛道趋势的识别以后,偏差的选取就可以依据赛道的趋势来选取。 基本原则是直道用远处的偏差作为偏差,弯道的用进出行作为偏差。 S 弯用全场的平均值的偏差作为参考。 控制策略 控制策略又可分为速度策略和转向策 略。 通过上文的叙述,基本上可以搭建出合适的转向策略。 下面主要介绍速度控制策略。 速度策略和转向策略息息相关。 倘若速度控制不合适的话,会导致入弯的时候调整量不够,或者是低速入弯的时候调整量较大导致超调。 所以我们采取的是准匀速策略。 既全部采用统一占空比。 遇见弯道的时候,检测当前速度是否超过预定值,如果超过预定值采用零占空比减速。 (因为我们的电机驱动,有电磁刹车的功能,所以在零 0 占空比是刹车效果较明显)。 该套策略基本上可以保证车辆的顺利运行。 但缺点是出弯时加速点比较靠后,导致弯道 速度较慢。 如果能较好的控制加速点,则可以更好的提高弯道速度。 第四章 程序开发和调试 好的开发和调试工具以及测试环境能够加快产品的开发速度,提高调试精度,减少工作量。 本章将对开发和调试工具以及测试环境作相关说明。 本车在开发和调试中所使用的开发环境为 Metrowerks公司的集成开发环境 Metrowerks Corewarrior 和与之配套使用的调试软 hiwave,调试器为清华大学工程物理系开发的 BDM,辅助调试工具有电视机、刻度尺,串口调试软件等。 通过以上各软件工具的配合使用,再加上良好的 测试环境,使得小车的开发和调试能够顺利而快速地完成。 软件开发环境 CodeWarrior 是由 Metrowerks 公司提供的专门面向 Freescale 所有 MCU 与DSP 嵌入式应用开发的软件工具。 其中包括集成开发环境 IDE、处理器专家、全芯片仿真、可视化参数显示工具、项目工程管理、 C 交叉。基于摄像头的自主循迹智能小车系统的设计
相关推荐
浪子回头, 基于物联网的智能窗帘控制系统的设计 第 17 页 共 118 页 可以让弱不禁风的幼苗逐渐承受 风吹雨打,可以让一个人坚持一辈子做好一件事情。 那我们要怎样担起自己的责任呢。 其实很简单,就是要有一颗尽职尽责的心,认认真真的完成分配的任务,不折不扣的实现工作目标。 春蚕到死丝方尽。 蜡炬成灰泪始干。 这就是对奉献的最好注解,几年来涌现在我们设备维修部的优秀人物数不胜数
令 是否建立网络 维护网络 N 是否收到串口数据 Y 将数据发送至绑定对方 N 是否收到节点数据 Y 发送至存串口 图 41 协调器工作流程图 本系统只是运用了 zigbee 协议栈,而未升入研究 ZStack 协议栈,在运用过程中只修改应用层函数,所以在此只列出 APP 函数,其他层的程序在此不在叙述。 协调器 APP 函数:
说,便脱掉上衣干起来。 聪明的人稍作选择也大干起来。 两个小时过去了,两人均挖了两米深,但均未见到水。 聪明的人断定选择错 了,觉得在原处继续挖下去是愚蠢的,便另选了块地方重挖。 愚顿的人仍在原地吃力地挖着,又两个小时过去了,愚顿人只挖了一米,而聪明的人又挖了两米深。 愚顿人仍在原地吃力地挖着,而聪明的人又开始怀疑自己的选择,就又选了一块地方重挖。 又两个小时过去了,愚顿的人挖了半米
次,预测企业未来的绩效水平,并找出目标期望水平和未来预测水平之间的差距 ;最后,探讨弥补差距的战略方案,综合调整各项战略,并修改对企业未来绩效水平的预测。 (二 )确定关键绩效领域:明确了战略目标,下一步就需要对最有效驱动战略目标的关键绩效领域进行确定。 关键绩效领域是指对企业总体竞争地位和企业战略目标的实现有重大影响的变量、领域。 它是制定关键绩效指标的重要依据。
行处理的方法。 其中包括:梯度运算、拉普拉 斯算子运算、平滑算子运算和卷积运算。 ( 2)点处理法 点处理 法是指对图像像素逐一处理的方法。 其中包括:灰度处理,面积、周长 、重心运算等等。 数字图像处理的变换域处理方法首先是通过傅立叶变换、离散余弦变换、沃尔什变换或是比较新的小波变换等变换算法,将图像从空间域变换到相应的变换域,得到变换域系数阵列,然后在变换域中对图像进行处理
ors should nor be more than width of the black direction control. When the car is running, the black guide line is always kept right between the two primary sensors L1 and L2. When the car goes off