飞思卡尔智能车竞赛摄像头组比亚迪金牛座技术报告内容摘要:

对赛车速度的控制采用的是 bangbang 控制 ,因此在赛车的行驶的过程中始终存在较大的电流波动。 而主电机和单片机都是由单独电池供电 ,若在主电机电源和单片机电源系统之间不加任何隔离措施 ,有可能导 致在赛车行驶的过程中单片机复位 ,这是绝对不允许的。 所以在主电机电源和单片机电源系统之间加了一极π型滤波器。 电路图如图 所示。 图 单片机电源和电机电源分离 单片机供电电路 单片机电源模块我们选用 TPS76850QD和 LT1117芯片 ,输入电压用电池电压通过 TPS76850QD 先稳到 5V 再通过 LT1117 稳压到 ,最后给单片机供电。 其典型应用电路图如图 图 单片机电源电路 摄像头供电电路 CMOS 的工作电 压为 5V,所以单独采用一块 TPS76850QD 给 CMOS 供电。 图 CMOS 电源电路 传感器模块 摄像头的选择 目前市面上常见的摄像头主要有CCD 和 CMOS 两种 :CCD 摄像头具有对比度高、动态特性好的优点 ,但需要工作在12V 电压下 ,对于整个系统来说过于耗电 ,且图像稳定性不高。 CMOS 摄像头体积小 ,耗电量小 ,图像稳定性较高。 因此 ,经过实验论证之后我们决定采用 CMOS 摄像头。 对于 CMOS 摄像头分为数字和模拟两种。 其中数字摄像头 OV7620 可以直接输出 8 路数 字图像信号 ,使主板硬件电路的简化成为可能 ,且能够达到 60 帧 /S的帧速率 ,只需要对其内部寄存器进行适当设置 ,因此 ,最终我们选择了 CMOS 数字图像传感器的方案。 编码器测速模块 光电编码器是一种通过光电转换将输出轴上的机械几何位移量转换成脉冲或数字量的传感器 , 这也是目前应用最多的测速传感器之一。 其获取信息准确、精度高、应用简单。 采用增量式 1024 线光电编码器 ,其供电电压为 5V,输出为小幅值的正弦信号。 为了将此信号放大整形 ,设计了信号调理电路 ,其基本原理是使用一个运放做成比较器电路 ,调节参考电压 ,使输出变为 0/5V 的方波信号 ,送入单片机进行运算。 主控模块 MCU 最小系统包括滤波电路 ,晶振模块 ,主控芯片为 MK60DN512ZLV10。 K60,32 位微控制器系列针对一系列成本敏感型汽车车身电子应用进行了优化。 K60 产品满足了用户对设计灵活性和平台兼容性的需求 ,并在一系列汽车电子平台上实现了可升级性、硬件和软件可重用性、以及兼容性。 紧凑的封装使得这些器件适于空间受限应用 ,如小型执行器、传感器模块和转向柱集成模块。 电机驱动模块 驱动单元是控制系统的重要组成 部分 ,驱动电路经过改进 ,最终选取BTN7971B 作为驱动芯片 ,其电路结构简单 ,负载能力强 ,为赛车的加速和制动性能以及上限速度得到了很大程度的提高。 电路如图 所示。 图 H 桥控制电路 软件设计 系统硬件位于底层 ,是整个系统的基础 ,系统软件结构则根据硬件和控制需求来制定。 系统的基本软件流程为 :首先 ,对各功能模块和控制参数进行初始化。 然后 ,通过图像采集模块获取前方赛道的图像数据 ,同时通过速度传感器模块获取赛车的速度。 根据采集到的赛道信息 ,采用 PD 对舵机进行反馈控制。 另外根据检测到的速度 ,结合速度控制策略 ,对赛车速度不断进行适当调整 ,使赛车在符合比赛规则的前提下 ,沿赛道快速行驶。 黑线的提取和图像中心的计算 原始图像的特点及校正 在单片机采集图像信号后需要对其进行处理以提取主要的赛道信息 ,同时 ,由于起点线的存在 ,光线、杂点、赛道连接处以及赛道外杂物的干扰 ,图像效果会大打折扣。 因此 ,在软件上必须排除干扰因素 ,对赛道进行有效识别 ,并提供尽可能多的赛道信息供决策使用。 因为 CMOS 图像传感器所扫描到的图像是一幅发射式的图像 ,产生了严重的畸变 ,如果不 进行校正 ,那么扫描到的数据的正确性将无法保证 ,那么对于道路形状的判定将会不准确 ,造成赛车判断失误 ,走的不是最优路径 ,严重时甚至冲出轨道。 因此 ,在进行赛车方向控制时 ,进行坐标的校正显得至关重要。 下面对坐标校正的方法进行具体的介绍。 由于 CMOS 图像传感器所扫描到的图像总是向外扩张 ,扫描到的图像并非为一个标准的长方形 ,在不考虑纵向畸变的情况下可以近似认为是一个梯形 [7],严重影响到了数据采集的准确性 ,所以我们必须对扫描到的数据进行校正。 我们根据实验发现 ,越是靠近 CMOS 图像传感器的地方 ,扫 描到的范围就越窄 ,离 CMOS图像传感器距离较远的地方 ,扫描到的范围就越宽 ,因此 ,在相同的情况下 ,如果CMOS 图像传感器在最近处和最远处采集到黑线的数字信号距离中心位置均是 30的话 ,事实上最远处偏离中心位置的距离可能比最近处偏离中心位置的距离大很多。 按照赛车的安装方法 ,在扫描到的数字量相同的情况下 ,在第 40 行处偏离中心位置的距离超过了第 0行偏离中心位置的 4倍还要多 ,故必须进行校正 ,校正的方法就是在不同的行乘以一个不同的系数 ,系数大小的确定是先进行理论粗略的计算 ,然后再在事物上进行校正。 黑线的提取 和中心的计算 由于智能汽车大赛在第八届对规则进行了改变 ,其中最为明显的就是在小S 弯处设置了长为一米的虚线 ,这就为我们黑线的提取增加了难度。 另外由于十字交叉也存在黑线不连续的特点 ,我们在黑线提取的过程中引入一次线性预测、黑线校验和一次线性插值等方法 ,这样可以将黑线不连续的边界也连接起来。 黑线提取算法的基本思想如下 : Step1:首先确定图像二值化的灰度级阈值 THRESHOLD。 对于左边界 ,如果左边两列灰度值均小于阈值并且右边一列大于等于阈值 ,则判断为左边界。 同理 ,对于右边界 ,如果右边两列小于阈值并 且左边一列大于等于阈值 ,则判断为右边界。 Step2:从图像的第 0 行开始遍历 ,直到连续三行找到图像的左右边界 ,置标志变量 beginFlag 为 1。 否者如果遍历到图像 HEIGHT1 行 ,表明提取失败 ,退出。 Step3:当找到该行的左右边界时 ,同时记录下前三行已找到的边界 (可以不连续 ),如果前一行已找到的边界所在行与当前行不相邻 ,则利用一次线性插值补全未找到边界的行。 否者 ,搜索下一行的左右边缘。 Step4:利用前三行已找的边界信息 ,进行一次线性拟合出直线方程 ,并利用该直线方程预测改行边界的位置 col,根据经验左右设定一个余量 e,在[cole,col+e]范围内搜索该行的黑线边缘 ,当搜索到边缘后 ,进行边缘校验 ,滤掉明显不是边缘的噪点。 赛道中心线提取 : 由于智能车大赛在第八届赛道中心的黑线调成了赛道两边 ,而智能车想要在赛道上平稳的行驶 ,不冲出赛道 ,必须知道赛道的中心 ,为此 ,我们利用提取的左右两边的黑线坐标对赛道的中心进行了计算 ,基本思想如下 : 当该行左右黑线均已提取到时 ,则将左右黑线位置的平均值作为中心线的位置。 当只有单边黑线找到时 ,则根据找到的边界平移半个赛道宽度作为中心线的位置。 当左 (右 )边界的结束行小于右 (左 )边界的开始行时 ,如果按照步骤 (2)来计算赛道中心线的位置会出现中心线不连续的情况。 为了解决该问题 ,我们利用前半部分连续的中心线一次线性预测下半部分第一行的中心线位置 ,则下半部分的中心线位置以该部分第一行的位置来计算。 图 十字交叉 图 小 S 虚线 方向控制方案 图 方向控制流程图 起跑线的判断 : 全国大学生智能车竞赛规定 ,智能车必须能够识别起跑线 ,并在跑完一圈以后能够自动停止在 3米以内的赛道中 ,否则在本来的时间基础上加上 1秒 ,如果加上 1 秒那必须将速度加大很多才能挽回。 然而 ,当速度本来就较快时 ,由于智能车本身的结构原因 ,很难再进行提速 ,因为速度过快可能会导致翻车等一系列不利现象。 因此 ,对于起跑线的精准识别显得至关重要。 观察图 可知 ,起跑线的颜色从左到右依次为“黑”→“白”→“黑”→“白”→“黑”→“白”→“黑” ,对应于微控制器内的数字信号即是 0→ 1→ 0→ 1→ 0→ 1→ 0,因此我们可以利用这个特征来识别起跑线。 即当这部分图像中出现这样的颜色规律时就判定为是起跑线。 当跑完第二圈 ,第三次检测到起跑线时 ,表明已经完成了比赛 ,要在冲过起 跑线后刹车 ,在三米范围内停车。 分类进行方向控制算法 直道的方向控制算法 对于赛道中的直道 ,是方向控制中最好处理的一种情况 ,因为只要小车没有偏离赛道 ,就可以不进行偏转 ,而当智能车偏离赛道时也只需要一个较小的偏转 ,让智能车能缓慢回归赛道就可以了 ,具体的方法是计算扫描到黑线的偏离中心线的平均值和黑线的斜率 ,再将这两。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。