STM32的车载雷达预警抬头显示器设计

2018-04-11 09:14
单片机与嵌入式系统应用 2018年4期
关键词:驾驶人员显示器车身

(重庆交通大学 机电与车辆工程学院,重庆 400074)

引 言

每年新增汽车的数量不断增多,驾驶员对车辆安全的要求也越来越高。车辆与车辆,车辆与路障设施,车辆与行人等安全问题也越来越突出。目前现有的全方位雷达显示设计方案,不能直观显示到车身周围障碍物距离情况,也不能预警提示驾驶人员当前车速下的方位距离已经进入了危险值。传统抬头显示系统只能显示车辆速度,油耗等仪表上面的参数。为此提出一个基于STM32便携式全方位雷达抬头显示器的设计方案,增加了车身方位雷达预警距离,增加了匹配当前车速所对应的预警阈值。

驾驶人员通过平视前挡风玻璃就可以观察车身距离预警信息,在整个过程中不影响驾驶员正常驾驶[1]。该方案实用性强、安装便捷、功耗低、制造成本低,可为以后的智能驾驶和智能泊车系统提供相关的数据参考。通过对该系统介绍,重点讲述了整个系统搭建与程序设计。

1 整体设计方案

抬头显示器将整个车身雷达距离信息点投影在前挡风玻璃上,包括左右两侧车门、前后车头和车位、安全提示距离。通过嵌入式检测车身8个位置点的雷达传感器的距离信息,通过抬头显示器呈现出来。设定速度与安全距离公式阈值D。小于该阈值检测距离,抬头显示器对应位置LED才会进入激活状态。与此同时,预警频率会随着距离缩小而增加响应频率。

该设计方案区别传统全方位雷达,不仅于此,而且系统具备汽车CAN通信功能,可以在驾驶过程中根据ODB II接口读取车辆速度信息、制动、油门信息,配合车辆全方位雷达信息,产生一个系统危险系数[2]。同时配合LED颜色(白色渐变红色)线性与该系数,让驾驶人员更加醒目地知道车身周围距离情况。系统整体构架如图1所示。

图1 统整体构架

2 车载抬头显示技术

车载抬头显示器(车载平视显示器)主要是利用LED显示器投影前挡风玻璃,然后反射进入人眼成像[3]。通过合理的亮度调节就会在前挡风玻璃上形成一个适中半透明的区域,会产生一个路面图像和显示LED重叠区域,当需要显示车辆信息时可直接投影显示,而驾驶人员一直保持抬头驾驶状态,在驾驶人员观察信息过程中并不影响驾驶员正常驾驶。车载抬头显示示意图如图2所示。

避免因低头查看汽车仪表信息而产生安全隐患,而且巧妙结合STM32提示休眠式模式,只有在车辆相应角度进入警戒范围过后,才会显示车辆对应位置距离信息,大大降低了对正常驾驶的影响。

图2 车载抬头显示示意图

3 硬件电路

3.1 处理器接口

本系统硬件主 要 由STM32、ODB解码芯片、CAN物理收发器、RGB LED驱动控制单元TM1620(发光二极管阵列组成的显示器)、全方位雷达检测模块组成。整体硬件组成如图3所示,硬件包括了STM32控制单元,ODB接口通过CAN物理芯片接收到数据传递给ODB解码芯片TDA61,可以提取出车辆的车速、油量大小信息。由于STM32内部集成CAN控制器,这样可以省掉外挂,CAN控制器就可以实现对汽车ODB总线上数据进行监控,也大大降低了硬件成本。

图3 整体硬件组成

3.2 系统控制单元

系统控制单元选用的是意法半导体公司生产的基于Cortex-M3内核的STM32F103单片机。该单片机采用精简指令集,配合高速72 MHz工作主频,有很高的运行速度,同时功耗又大大降低。STM23系列的单片机有丰富的外设,适用于很多目标设计,是目前运用最为广泛的单片机之一。

3.3 ODB解码芯片TDA61解码芯片

在设计之初ODB有多重协议,协议之间又不能相互兼容。刚开始,ODB只是针对于监控汽车尾气排放的一种接口。发展到了ODB II后,市场就统一采用ODB II作为实时监控汽车组件,运行各个参数的接口。如有异常则将故障码保存下来[4]。该数据也能够精准定位,维修人员便于维护。

为了大大简化设计成本并易于推广,采用TDA61的OBD II解码方案,芯片体积小、功耗低、外设丰富,它能够通过汽车的OBD II接口直接读取车辆运行的速度和油门开度。单片机只需要几条简短的指令就可以读取多条数据。TDA61支持12种OBD II,支持市面上绝大多数汽车,有着很好的推广价值[5]。该硬件系统通过汽车OBD接口取电,在汽车没有启动的时候并不工作,不会因此而导致汽车亏电。

3.4 汽车全方位雷达超声波测距

采用市场比较成熟的方案——超声波测距模块[6]。相比于红外线测距模块容易受到环境光照和红外线对影响,镜头要交较高,该模块对于汽车运行环境没有苛刻的要求,在下雨或者晴天时,室内室外都能及时检测到距离信号。相比于车用毫米波和激光雷达,容易受到电磁干扰、维护成本高等特点。超声波测距是最为成熟稳定的测量方式,容易安装,可以24小时不间断工作,而被大量应用于车身距离预警系统中。

选择RT收发一体传感器探头,工作频率为40 kHz[7]。超声波测距传感器分为8个测量通道,在汽车的每一个方位安装一个传感器,可实时不间断地对车辆周围距离进行扫描。通过多个超声波检测才能反映出障碍物方位,同时能实时显示障碍物动态距离并提供给驾驶人员。

3.4.1一体式超声波传感器测量电路

采用多个测量通道,STM32通过定时器产生8通道信号PWM周期为40 kHz,占空比为50%方波信号。如果通过STM32直接驱动功率是远远不够的,可通过Q1、Q2增强驱动能力,经过二级升压变压器将信号传递到传感器上。采用升压线圈是为了防止在接收回波信号时对输入信号产生影响,可起到隔离的作用。超声波发送电路如图4所示。

图4 超声波发送电路

采用了发送和接收一体的方案,存在较高的发射电压信号与较低微弱的回波信号混在一起的情况,有必要将发射电压信号进行滤波处理,保证信号的稳定性。通过传感器检测回来的信号比较微弱,达到mV级别,所以要滤波并同时去掉直流成分。通过STM32自带高速ADC,对输出信号out_sin采集即可完成。图5为超声波接收电路。

图5 超声波接收电路

3.4.2距离检测技术

超声波测距有多种技术,本文采用超声波返回时间检测方案,通过STM32驱动发送8个40 kHz脉冲,同时STM32开启定时。超声波经过空气物体反射,接收到反射回来的信号,定时结束,时间差为T。所测得距离如下:

S=CT/2

(1)

其中,S为超声探头距离障碍物的距离(单位为m),C为超声波在空气中的传播速度(单位为m/s),T为超声波一个来回所需要的时间(单位为s)。

超声波传输模型如图6所示。

图6 超声波传输模型

传递回来的信号通过一个预先设定的阈值作为比较,同时为了保证数据可靠性,采用卡尔曼滤波最终测得数据。STM32的运行速度可达72 MHz,可以提供高精度定时器和高速ADC采集速度,保证系统的测量精度。

测量时间模型如图7所示。

图7 测量时间模型

超声波在空气中的传播速度如下:

V=C0+0.607×T

(2)

式中:C0为0 ℃时的声波速度332 m/s;T为实际温度(℃)。温度传感器直接采用STM32内部集成温度传感器进行补偿,计算出来的数值是补偿过后的数值[8]。

3.5 抬头显示器TM1620

TM1620驱动LED阵列,反向投影在前挡风玻璃上,可以直接将车身周围的距离投影到前挡风玻璃上。当测距模块检测距离小于安全距离,显示车辆的具体方位安全距离。该LED显示可以自动根据环境光照强度,合理控制LED的占空比,在不影响驾驶人员操作的情况下达到显示效果。TM1620是发光二极管显示器,内部带有数据RAM、LED扫描电路,同时可以设置8级占空比可调电路,支持8×10 LED驱动位数,设计电路简单时应用成本低,是目前运用较为广泛的LED驱动器之一。

4 软件设计

图8    超声波测量程序流程图

在系统开始运行时,通过抬头显示器模拟小车形状,投影到前挡风玻璃上。针对车身雷达距离检测,首先要注意超声波传输收到的温度和空气影响参数,然后作系统补偿。初始化完STM32时钟、定时器TIMER、ADC后选择12位采样精度。然后就定时采样计算得到距离参数,其程序流程图如8图所示。

系统软件部分包含了汽车OBD接口数据读取部分、车身雷达距离监测部分和抬头显示部分。首先要完成对TDA61的初始化过程,通过STM32初始化串口对解码芯片TDA61进行读取数据。OBD与显示程序流程图如图9所示。

图9 OBD与显示程序流程图

STM32-UART0设置通信波特率为9 600 bps,TDA61上电默认9 600 bps无符号和验证位,然后在初始化之前一定要注意TDA61-CAN的物理端必须要加入终端匹配电阻,目前主流PCA82C251的匹配电阻为120 Ω。

对于不同车辆所支持的协议存在差异性TDA61支持目前主流的12种协议方式,其适用多种车型,设计者不必对协议本身花费过多时间,而主要关心设计所获取的数据。获取指令命令如表1所列。

表1 OBD指令

5 实验数据与预警阈值

综合考虑超声波本身的固有误差和测量精度,选择STM32定时器时间分辨率为100 μs,该传感器理论最小值为17 cm(在室温条件下为100 μs×340 m/s×0.5)。因为没有采用固定坐标时间,所以可以测量很长的距离间隔。但实际测量最大距离受环境和传感器本身工艺限制,在超声波距离10 m以外,ADC采集回来的信号非常微弱。

由于本次设计重点不在信号处理本身,而是实现方案。虽然采用了多个方位的传感器,但在实验室测试只针对其中一个方向传感器做数据监测处理。这样更有利于分析超声波传感器在单一变量下的数据测量情况,如表2为单一方位测量的数据。

表2 超声波雷达测量数据

由数据所得,实际距离S<0.1 m,其误差为20 cm>17 cm。随着距离增长,累计误差也在增加,当超过10 m测量距离时,传输回的放大器处理信号微弱,其产生误差已经达到17.8%以上。本系统是安全距离预警系统,在远距离的数据精度上满足要求。

当汽车开始启动后,分别考虑行驶和泊车这两种条件。在泊车过程中,车速非常慢所以只需要全方位预警雷达极限检测距离S。随着与障碍物距离拉近,预警提示就越频繁[9]。

在行驶过程中,小车经典模型D=K×S×V,K为设置比较率,取值范围为0~0.9之间。D(m)最终为预警参数,V/(m/s)为车辆当前速度,同时设置预警强度参数m(30%,50%,90%),最终建立比较模型阈值D×m。处理汽车防撞安全距离的相关数据和技术都比较成熟,本文只是提供一种设计方案与思路[10]。最终正常行驶抬头显示器显示车辆运行速度,达到预警强度比较阈值时就会产生报警提示。

结 语

本文主要讨论一个基于低成本、便携车身雷达抬头显示器的基本组成部分和设计思路。配合汽车CAN总线的OBD II预留接口,监测车身周围距离信息,提供给驾驶人员实时预警值。可以清楚地将车身每一个方位的安全距离直观投影到车载抬头显示器上,精准定位到车身角度安全距离参数,为驾驶人员提供驾驶或泊车过程预警。

[1] 王兴,秦齐.车载平视显示技术[D].长春:长春理工大学,2014.

[2] 钟一鸣.车辆信息采集系统设计[D].杭州:杭州电子科技大学,2014.

[3] 林昱宏.反射式光学系统之设计与应用: 双焦系统与汽车抬头显示器系统[D].台北: 台湾大学电机资讯学院光电工程学研究所,2011.

[4] 孟磊.基于OBD II的车载远程故障诊断系统设计[D].武汉:武汉理工大学,2012.

[5] 徐辉,李英祥,余乐韬.车载诊断系统OBD II的汽车接口数据处理技术[D].成都:成都信息工程大学,2017.

[6] 黄灿胜,盘世准,黄露. 基于 AT89S52 单片机超声波测距器的设计与制作[J]. 南宁师范高等专科学校学报,2009,26(1):141-143.

[7] 李军,申俊泽.超声测距模块HC-SR04的超声波测距仪设计[J].单片机与嵌入式系统应用,2011(10).

[8] 聂琼,严云炜,秦明明,等.基于温度补偿的超声波精准测距智能车的设计[D].苏州:苏州农业职业技术学院,2017.

[9] 郭清.基于STC89C52的超声波测距防撞系统设计[J].仪表技术与传感器,2011(6).

[10] 韩星.基于毫米波雷达的汽车主动防撞预警目标识别[D].长春:吉林大学,2013.

陈星旭(硕士),主要研究方向为车辆电子、单片机嵌入式系统。

猜你喜欢
驾驶人员显示器车身
姑苏城内话车身
极端天气中的车辆安全驾驶技巧分析
如何提高机关事业单位驾驶人员的服务意识
把显示器“穿”在身上
汽车驾驶技能的形成与驾驶技能的培养探讨
一种新型点阵显示器的设计
安全驾驶 远离“路怒”情绪
感应式带电显示器抗干扰处理
事故车维修中的车身防腐(三)
卡板在车身修复过程中的作用