基于激光测距的车辆宽高检测系统设计
4 系统软件设计
本系统采用LAR5.11作为开发环境,使用C语言编程,采用模块化程序设计。软件设计分为主控模块、初始化模块、中断处理模块、数据发送和接收模块、数据处理模块、键盘和显示模块等几部分。主程序工作流程图如图6所示。系统上电后,首先完成系统初始化,然后给传感器发命令,启动传感器扫描,接收串口发来的数据,从串口缓冲区提取所需数据,根据数据信息进行转换,判断,比较,存储。进行数据分析处理后调用相应的执行子程序完成相应的功能,如调用LCD子程序显示车辆宽高信息等,程序进入不断循环工作状态。
数据采集使用串口通讯模式,发送数据采用查询方式完成,接收数据采用中断方式完成,接收中断流程如图7所示。传感器和主控制器之间通过事先约定的通讯协议进行数据收发,主控制器只需设置好相应的串口号、波特率及相应端口设量,发送测量命令,等待接收。单次读数据命令为:RNLMDscandatata;连续读数据命令为:EN LMDscandata1;连续停数据命令为:EN LMDscandata0。
5 模拟实验
系统整体设计完成后,在进入超限点进行现场调试之前,在实验室进行了模拟实验。将激光传感器固定在3 m高的支架上,让一放置立方体被测物的小推车以10km/h的速度从激光传感器下经过,如图8所示。将激光传感器设置在扫描角度为0°~180°,角度分辨率为0.5°的模式下,当小推车完全经过时,液晶屏上即可显示立方体被测物的最大宽度和高度,同时可通过MATLAB仿真物体的轮廓,如图9所示。同等条件下,让小推车在传感器下先后通过数次后统计结果,将测量值和实际值比较可得误差在0.15m以内的达到95%,符合测量精度要求。
6 结束语
针对高速公路车辆超限超载这一问题,设计了基于激光测距技术的宽高检测系统,可实现对行进车辆进行实时动态测量。本系统在实验期间,工作可靠稳定,功耗低,计算速度快,测量精度高,抗干扰能力强,实验误差符合高速公路管理部门对于行进车辆宽高超限检测的要求。通过反复实验验证,该设计有效可行,为下一阶段进入现场进行实地调试作了充分准备。