基于摄像头的智能车系统研究

2023-05-29 09:24王开南刘杨王国军刘博张云飞
电子技术与软件工程 2023年7期
关键词:边线舵机摄像头

王开南 刘杨 王国军 刘博 张云飞

(陆军军事交通学院 天津市 300171)

近年来,随着摄像头等传感器,人工智能等高科技在智能车领域的广泛应用,汽车的智能化程度越来越高[1]。在物流领域,智能车可以应用于流程自动化、配送效率提升、货物追踪等方面,提高整个物流产业的效率和便利性。在军事领域,智能车可以应用于军用装备、无人战车、侦察和救援行动中,增强作战能力和军事行动的效率。在车联网背景下发展出的智能网联汽车还可以带动相关产业的发展,推动智慧城市的发展,在智能车的车人互联、车车互联以及车联万物的发展之势下,智能车将不再是单纯的工具,而是一个智能的可移动空间[2]。

“恩智浦杯”全国大学生智能车大赛是由恩智浦(中国)有限公司主办的一项赛事、是国内最具影响力的智能车比赛之一,引领了全国大学生在自动驾驶、视觉识别等方面的技术创新,旨在突破传统智能车只依据激光雷达、毫米波雷达等传感器进行控制的模式,采用更为普及、成本更低的摄像头来实现对智能车的控制。本文开展摄像头与智能车发展的研究并以其摄像头智能车比赛规则基础上设计一款只依据单目摄像头来控制行驶的智能车,旨在为智能车发展提供支持和做好技术储备,以期为智能车的应用和推广提供一定的理论基础和研究指导。

1 摄像头与智能车的发展

车载摄像头被誉为自动驾驶之眼,是ADAS 系统、智能车领域的核心传感设备。随着摄像头技术的革新与发展,其对智能车领域的发展也有着明显的促进与制约。车载摄像头在L3 级别下的智能车系统方案中居于主导地位,1956年别克首个引用摄像头的概念车型Centurion。随着摄像头关键零部件和芯片技术的发展,90年代中期,美国麻省理工学院提出用计算机软件替换驾驶员的思想。直到2007年首款应用摄像头的环景监视系统在日本诞生,其为驾驶员提供车身鸟瞰图和停车辅助线,智能的驾驶辅助从此开始。2015年后,随着无人驾驶、车联网的发展风潮,车载摄像头加持软件算法,已逐渐参与到智能处理当中,为智能提供感知、决策、控制的资源和信息。目前智能车的自动驾驶系统已经可以在驾驶中部分解放人的肢体和大脑[3],实现自动控制。

摄像头智能车将有着广阔的发展前景。摄像头会逐渐实现高清、广角、高速,并具备深度学习和其他人工智能技术。未来摄像头智能车不仅能驾驶,还将承担更多的功能,比如情感识别、疲劳识别等,帮助驾驶员的安全驾驶。在实际应用中,人工智能摄像头智能车将成为未来社会中的重要角色,为交通安全、节能减排、降低交通事故等方面做出积极的贡献。未来,摄像头智能车将会逐渐实现自主驾驶和智能交通的目标,为人类社会的可持续发展做出积极的贡献。

2 基于摄像头的智能车系统硬件设计

本文设计的是以TC264DA 单片机作为核心控制系统,主要功能模块包括电源模块、道路信息采集模块、电机驱动模块、转向模块、行驶状态反馈模块、调试模块。在图1 中给出了智能型汽车系统的硬件结构框图。在此基础上,通过摄像头获取道路图像,通过核心控制器进行处理,完成道路边线的提取,道路要素的识别,以及基于车辆当前运行状态的闭环控制驱动与转向装置。

图1:系统硬件设计框图

2.1 道路信息采集模块

道路信息采集模块是本文研究系统的核心,本模块的核心是摄像头。本文采用MT9V032 摄像头满足本文所设计系统的对实时道路信息采集的要求。其采用3.3V电源供电,集成了可编程寄存器和灵活的控制接口,用户可以通过设定传感器的工作模式和参数获取高质量的图像输出。该传感器还具有高动态范围和低噪声等优秀的性能指标,能够适应不同的成像场景和复杂环境。

2.2 电源模块

智能车电源模块是智能车中不可或缺的组成部分之一,它主要是为智能车提供电源稳定、功耗低、电路保护等功能的模块。供电系统图如图2 所示。使用7.4V锂离子电池为整个系统供电,考虑到智能车所需的不同电压和电流,使用TPS7350 和TPS7333 低压差线性稳压器芯片将电源电压降为5V 和3.3V 为各模块提供电压。为了保证在车辆行驶过程中保证转向的稳定性和及时性,舵机使用TL1963 芯片单独供电。这样也可以有效地保护车辆中的电子元件免受损坏。

图2:供电系统图

2.3 电机驱动模块

BTN7970 是一种电机驱动器IC,可以用于驱动直流电机和步进电机,广泛应用于机器人、智能车、自动化设备等领域[4]。此芯片为半桥驱动芯片,本文采用两片芯片构建能够精准控制电机的全桥驱动电路的方案作为电机驱动模块。这样的设计可以将电源采样引脚用来为内部逻辑和高侧驱动器提供电压,减少了外部电容器,进一步提高了系统总体效率。同时全桥驱动电路使得负载可直接通过NMOSFET 驱动器连接到电源输出端,电流管理更加灵活,更好地提高了系统的性能表现。电路图如图3 所示。

图3:驱动电路图

3 基于摄像头的智能车系统软件设计

控制算法是智能车系统性能好与不好的关键,控制系统必须稳定可靠。本文中主要控制对象为舵机和电机。智能车系统的软件设计使用了摄像头所拍摄到的赛道图像,其主要设计思路使通过核心控制芯片对所拍摄到的图像进行了滤波[5]、二值化而后提取道路边线信息,根据道路边线的变化情况从而判别车体当前所处的道路元素类型,做出对应的决策,通过对 PWM的输出进行控制,从而实现舵机的转向以及对直流电动机的转速控制。该系统的主要部分由初始化,图像处理,道路要素识别,车辆控制等组成。系统软件控制流程图如图4 所示。

图4:软件流程图

3.1 图像处理

通过使用DMA 传输技术,可将MT9V032 摄像头采集到的高清图像流快速高效地传送到单片机,从而有效减轻处理器的压力,提高系统运行速度和响应能力。针对道路特征识别应用场景,摄像头直接采集高分辨率图像的方式存在两个问题:一是MT9V032 摄像头采集到的图像数据量巨大,处理起来需要消耗很长时间;二是在车速较快时,采集到的高分辨率图像会变得模糊或失真,难以识别路面特征。因此,可以采取隔行取样的方式,只选取部分像素点来采集图像,虽然取样率较低,但已经足够满足道路特征识别的需求。这种方式可以有效减小数据量和处理时间,同时可以保证较高的动态稳定性和识别效果。

使用中值滤波算法,将各象素点附近的数值按照一定的顺序排列,取而代之的中值,以达到消除噪声,对图像进行平滑处理的目的。利用大津法对经过滤波的图像进行二值处理[6],通过对图像的直方图分布进行分析,找到最佳的二值化阈值用于将图像转换为黑白二值图像。最后一项重要的处理步骤是对每行像素点进行扫描,以确定道路的左右边线。通过检测每行道路中黑白像素点变化情况[7],可以精确地识别道路的边界,并进一步提取出路面的中央线和转弯处的拐点等道路元素,为后续路径规划和行驶控制奠定基础。通过这种方法,智能车可以在复杂的道路环境中提高识别精度和鲁棒性,实现更加精准、安全的自主行驶。

3.2 道路元素识别

经过预处理和道路边界提取,我们可以获得一系列关于道路的特征数据,从而可以开始进行元素识别。道路元素包括弯道、十字交叉口、Y 形交叉口、环形障碍物和上下斜坡等。根据图像处理提取的道路边线使用最小二乘法拟合出虚拟的中心线,分析其曲率值变化从而获得偏差值作为控制舵机方向的基本依据。

通过不断扫描道路两边边线来确定交叉口的存在。当道路边线出现中断时,我们可以通过计算边线中断的数量和位置来判断是否为交叉口,并进一步确定交叉口的类型。例如,在十字路口的情况下,我们可以观察道路边线的中断点的数量和位置,分别为近端两个边线中断点和远端两个中断点,以及交叉口的形状和大小,从而将其识别为十字路口,以此按照目的地位置控制车辆在路口中转向或是直行。在Y 形交叉口或环形障碍物的情况下,可以依据道路边线的中断数量、交叉口位置和形状来进行识别,辅以比较道路边线的曲率变化来判定交叉口的存在,可以减少错误判断的可能性。系统处理过程中十字路口的图像如图5 所示。

图5:处理中的道路图片

此外上下坡道的速度控制直接影响了车辆的安全性。根据路面坡度不同导致图像中道路变形的情况,结合反馈系统中的陀螺仪数据,可以进一步确定上下坡的位置和角度,提高算法的精度和可靠性。

3.3 车辆控制

该系统使用了安装在驱动轮上的行驶状态反馈模块编码器,该编码器返回脉冲值,采用此值参与增量式PID 算法闭环控制车辆速度,从而实现对车的速度控制。该系统通过获取编码器反馈的当前位置和前一次位置,计算这两者之差作为当前误差值,并根据当前误差值、前一次误差值以及累计误差值计算出PID 控制量,从而根据误差的大小来控制电机的转速,使车辆能够达到目标速度[8]。在具体实现中,PID 计算结果使用PWM 信号波来控制驱动模块,对电机的转速进行调节,从而实现对车速的控制。通过增量式PID 算法,可以对速度进行精确控制,提高车辆的运行稳定性和性能。该方法不仅具有较高的控制精度,而且由于采用了编码器行驶状态反馈模块,能够实时监测本车的运行状态,从而可以对车速进行实时调整,适应不同的路况和运行环境,提高了系统的实用性和适应性。

使用增量式PID 算法控制舵机。以偏差值为基本计算依据,本系统采用的摄像头像素为188×120,经过隔行提取使用像素点像素为94×60,选取图像的第46 列作为图像的中心线,方向偏差即为图像中心线与拟合的赛道中线的坐标差值。使用舵机反馈的当前位置值和转向所要达到的目标位置值之间的误差,并计算误差的变化率。最后以舵机中值为基础加减控制量,即为本次传向的舵机PWM 值。可以提高舵机控制的精度和稳定性,确保舵机能够按照设定的角度完成运动任务。同时,使用舵机的反馈信息可以实现对舵机运动中的误差进行实时调整,使得整个舵机控制系统可以适应不同的运动环境和任务需求。

4 基于摄像头的智能车系统测试

测试的主要内容有:信息采集测试、图像处理测试、车辆控制测试和总体性能测试[9]。信息采集测试是测试摄像头及其他传感器能否正确连接到主控板并被读取,上位机主要测试DMA 传输中断是否成功且稳定,采集到的图像质量大小是否完整。图像处理测试测试系统能否正确地对图像进行处理和分析,识别出道路元素,拟合出中线,本文使用显示屏将滤波二值化后拟合了虚拟中线的道路图像显示在屏幕上,由此能够直观的观察到图像是否成功处理。车辆控制测试需要将小车放置在不同的位置上,检测和记录其偏差值和PWM 控制输出值等参数,并对这些参数进行图表分析。通过对测试数据进行分析和比对,可以发现系统控制中存在的缺陷和问题,并对系统参数进行优化和调整[10]。舵机PWM 控制输出值如下图6 所示。为了保证测试结果的准确性,测试过程中需要确保测试环境的一致性。例如,需要确保测试时车及测试环境处于同一水平面上,并排除其他干扰因素的影响。系统性能测试是在各模块协调工作的前提下进行,对系统控制下的车辆运行速度,元素识别准确性等进行统计,可以有效地验证系统控制算法的正确性和稳定性,进一步提高系统在自动驾驶领域的可靠性和实用性。

图6:舵机在半径0.5 米90°弯道转向时的PWM 输出值

5 结束语

本文对摄像头和智能汽车的发展进行了阐述,并对摄像头智能汽车系统进行了设计。包括系统硬件设计和软件设计和实现方法。通过不断测试、反复调试,分析系统运行中数据,选择合适参数,最终实现摄像头智能车系统控制车辆模型快速稳定行驶并顺利通过不同道路元素。摄像头智能车是未来智能交通的重要组成部分。随着技术的不断进步和市场需求的不断增加,摄像头智能车的应用前景将会越来越广阔,智能车技术的发展和应用将会给人们的出行和生活带来更多的便利和安全性。

猜你喜欢
边线舵机摄像头
浙江首试公路非现场执法新型摄像头
海岸水边线提取方法在GF-2卫星影像中的适应性研究
摄像头连接器可提供360°视角图像
含齿隙弹载舵机的全局反步模糊自适应控制
基于太赫兹技术的新一代摄像头及其在安防领域的应用探讨
基于dsPIC单片机的飞艇舵机控制实现
基于高速同步485总线通信的多通道舵机控制器设计
认识足球(六)
基于云模型的舵机同步控制
象摸残局