摘要:为实现高速公路车辆超宽超高治理工作的自动化、智能化,设计了一种基于激光脉冲测距技术的智能车辆宽高检测系统。系统采用LMS二维激光测距传感器,在新型高性能微处理器的控制下,对车辆轮廓进行高速动态扫描,将所接收到的实时数据进行分析处理,实现对行进车辆的宽高检测和超限声光报警。实验结果表明,系统测量精度为±0.15m,测量准确率达到95%,系统性能满足高速公路管理部门对于车辆宽高超限检测的要求。
随着我国经济的快速发展,高速公路建设和公路运输规模都得到了前所未有的发展,由此带来的车辆超限超载现象也日益严重。超限运输一方面会缩短公路和桥梁的使用寿命,另一方面会造成车体形状的改变及车辆性能的下降,形成交通安全的严重隐患。目前,车辆超宽超高治理作为治超工作的重要组成部分,大多还处于人工阶段,主要由工作人员用卷尺或者竹竿实测宽高,既增加了工作人员的工作量,又降低了工作效率。为实现超竟超高治理工作的自动化和智能化,采用激光测距技术,选用基于ARM Cortex-M3内核的处理器LM3S8962,设计开发了一套智能车辆宽高检测系统。本系统可对行进车辆进行高精度动态扫描,实现宽高检测。
1 激光测距传感器的选择
激光以其高亮度、高方向性、高单色性等优点,被广泛应用于各种测量领域中。激光测距相比红外测距,超声波测距等方式,具有速度快,实时性强,获取数据精度高等特点。激光测距技术已在汽车防撞,建筑或空地安全监护,轨道交通等领域得到了广泛地应用。为了满足高速公路车辆宽高检测系统测量速度快,测量精度高的要求,还考虑到系统能在能见度较差的环境甚至夜间工作,系统选用德国SICK公司生产的LMS型双脉冲激光测距传感器。
LMS激光传感器是一种户外型非接触式的高精度、高解析度外部传感器,其工作原理是基于对激光束飞行时间的测量,其按照定义好的时间间隔发出激光脉冲,通过定时器计算发射脉冲和接收脉冲之间的时间间隔来得到与被测物体之间的距离。脉冲激光束经过测距传感器内部的一个旋转反光镜的反射对周围环境形成扇面扫描。激光扫描测距的工作原理如图1所示。
目标物体的轮廓线由所接收刭的一系列脉冲序列来确定。LMS激光传感器的扫描频率是25Hz/50Hz,角度频率是0.25°/0.5°,扫描角度范围是0°~270°,最大扫描距离是20m,标准测量精度为±30mm,安全防护等级为IP67,对人眼安全。恶劣的环境因素对测量范围没有影响,可用于室外温度-30~+50℃的环境中。
2 系统构成及工作原理
智能车辆宽高检测系统通过对车辆进行连续动态扫描,采集车辆的外形轮廓信息,并将采样数据实时传递给控制单元,控制单元通过处理、分析、计算采样数据,得出车辆实际的宽度和高度,并将测量值显示在液晶屏上,供现场工作人员查看,同时根据国家规定的限宽值和限高值判断被测车辆能否通行。本系统能够手动设定限宽值和限高值,可以对行进车辆进行实时检测,具有声光报警和语音提示功能。系统在实际应用时,要求行进车辆车速控制在20km/h以下。实时快速测量也可避免交通拥堵现象。
智能车辆宽高检测系统选用LM3S8962作为主控制器。LM3S8962是一款基于ARMCortex-M3内核的低功耗、高速度处理器。LMS激光传感器通过500kb/s的高速串行接口将测量数据传送给主控制器,不会造成数据的丢失。控制器将接收到的扫描数据进行处理,由于其内部数据存储器空间大,不需外扩数据存储器。系统结构框图如图2所示。
3 硬件电路设计
智能车辆宽高检测系统电气控制部分以基于ARMCortex-M3内核的LM3S8962处理器作为控制核心,按功能可划分为以下模块:电源模块,主控制器模块、时钟模块、数据通讯模块、键盘输入模块、液晶显示模块、继电器控制模块等,以下对3个部分作较详细介绍。
3.1 主控制器模块设计
采用ARMCortex-M3内核的微控制器LM3S8962作为系统控制核心。Cortex-M3内核采用ARMv7-M架构,它紧凑地结合Thumb-2指令集,采用哈佛处理器架构,与ARM7TDMI相比,比Thumb指令每兆赫的效率提高了70%,比ARM指令提高35%。由于Thumb-2指令是Thumb指令的扩展,16位和32位指令共存于同一模式下,复杂性大幅下降,代码密度和性能均得到提高。LM3S8962时钟频率高达50Hz,多达36个中断源具有8个优先等级,提供系统时钟,256kB的FALSH,64kB的SRAM,休眠模块,通用异步收发器,通用定时器,PC接口以及其他丰富的外设接口,可方便的对各种现场设备进行有效控制。图3为LM3S8962的外设接口及其外围电路(时钟、复位、UART接口等)。
3.2 数据通讯模块设计
将激光传感器扫描得到的极值坐标信号通过通用异步收发器(UART)传送给微控制器,选用了MAX232进行RS232电平转换,如图4所示。
LM3S8962具有两个串行接口UART0和UART1。本系统选用UART1用于RS232通信使用。UART是一种应用广泛的短距离串行传输接口,通信双方只要采用相同的帧格式和波特率,仅用两根信号线(Rx和Tx)就可以完成通信过程,有独立的发送FIFO和接收FIFO。有可编程的波特率发生器,允许速率高达460.8kb/s。系统中通过UART传送的数据高速存储于SRAM存储器内供微控制器进行实时快速计算。
3.3 输入输出模块设计
系统设置了4个按键,用于设置车辆的限宽限高值,设置及修改系统时间等,实现了随时修改信息的功能。为了便于工作人员查看过往车辆的宽度和高度,采用了LCD显示。选用青云创新公司生产的LCD液晶显示模块LCM192642,它是汉字图形点阵液晶显示模块,可显示汉字和图形。模块工作电源为5V;改变变位器W1的值可以调节LCD屏的显示对比度;整个LCD屏被均分为三部分16~18是选屏信号线,可以选择其中任一部分显示。系统中设置了2个12V继电器,当行驶车辆经检铡超过了标准的宽度和高度时系统会通过继电器分别接通警灯和室外扩音器的电源而产生声光报警,一方面提示现场工作人员进行处理,另一方面告知司机该车超限需停车接受处理。如下图5所示为输入输出模块原理图。
4 系统软件设计
本系统采用LAR5.11作为开发环境,使用C语言编程,采用模块化程序设计。软件设计分为主控模块、初始化模块、中断处理模块、数据发送和接收模块、数据处理模块、键盘和显示模块等几部分。主程序工作流程图如图6所示。系统上电后,首先完成系统初始化,然后给传感器发命令,启动传感器扫描,接收串口发来的数据,从串口缓冲区提取所需数据,根据数据信息进行转换,判断,比较,存储。进行数据分析处理后调用相应的执行子程序完成相应的功能,如调用LCD子程序显示车辆宽高信息等,程序进入不断循环工作状态。
数据采集使用串口通讯模式,发送数据采用查询方式完成,接收数据采用中断方式完成,接收中断流程如图7所示。传感器和主控制器之间通过事先约定的通讯协议进行数据收发,主控制器只需设置好相应的串口号、波特率及相应端口设量,发送测量命令,等待接收。单次读数据命令为:RNLMDscandatata;连续读数据命令为:EN LMDscandata1;连续停数据命令为:EN LMDscandata0。
5 模拟实验
系统整体设计完成后,在进入超限点进行现场调试之前,在实验室进行了模拟实验。将激光传感器固定在3m高的支架上,让一放置立方体被测物的小推车以10km/h的速度从激光传感器下经过,如图8所示。将激光传感器设置在扫描角度为0°~180°,角度分辨率为0.5°的模式下,当小推车完全经过时,液晶屏上即可显示立方体被测物的最大宽度和高度,同时可通过MATLAB仿真物体的轮廓,如图9所示。同等条件下,让小推车在传感器下先后通过数次后统计结果,将测量值和实际值比较可得误差在0.15m以内的达到95%,符合测量精度要求。
6 结束语
针对高速公路车辆超限超载这一问题,设计了基于激光测距技术的宽高检测系统,可实现对行进车辆进行实时动态测量。本系统在实验期间,工作可靠稳定,功耗低,计算速度快,测量精度高,抗干扰能力强,实验误差符合高速公路管理部门对于行进车辆宽高超限检测的要求。通过反复实验验证,该设计有效可行,为下一阶段进入现场进行实地调试作了充分准备。