智能车设计与发展研究
2020-04-13楚士杰徐子豪
楚士杰,徐子豪
(安徽财经大学 管理科学与工程学院,安徽 蚌埠 233000)
0 引 言
在科技飞速发展的新时代下,以美国为首的发达国家开始进行无人驾驶的研究,并在可行性方面都取得了突破性的进展。2018 年12 月28 日,百度研发的Apollo 自动驾驶汽车已经可以在公路行驶,2019 年上海国际车展上,国内外主流汽车企业都竭尽全力地传播着各自在智能汽车领域的实力,展示着各自当下和未来的智能汽车计划。无人驾驶是让汽车自己拥有环境感知、路线规划并自主实现车辆控制的技术。该技术的发展不仅能方便人们出行,还能助力智慧城市建设,缓解交通压力,从一定程度上降低交通事故的发生率。
本文所研究的智能车以K66 单片机为核心控制元件,使用串级PID 算法实现速度的动态控制。同时,以良好的机械结构为基础,采用电磁、红外等多个传感器,实现智能车的自动识别和自动控制。
1 人工智能应用
人工智能技术属于计算机科学与技术的一个分支,是人发明智能机器并赋予其意识,通过智能机器实现只有人类才能完成的任务,给人类带来便利,其核心就是算法。人工智能技术由认知、预测、决策和集成解决方案四个部分组成,认知是收集信息,通过预测行为推理可能造成的影响,最后决策并做出反应。当下智能手机中的智能语音系统便属于人工智能的范畴,通过对人类声音进行识别,然后做出某种响应或完成人类需要的服务。
随着汽车在生活中越来越广泛的应用,人们对汽车的安全性和智能化的要求越来越高,传统的汽车难以以满足市场需求。“机器人革命”是新一轮工业革命的切入点和增长点。无人驾驶将会是汽车行业的一次革命,传感器和软硬件的结合将代替汽车上的许多部件,以实现真正的人车交互和车联网,还可能具备语音识别、人车会话、统计学习等功能[1]。
本论文研究的智能车以传感器为“眼”,识别赛道信息;K66 核心板为“脑”,实现信号的处理和决策;以机械结构为“躯干”,是智能策划的从整体构架。经过一段时间的实验研究,所设计的智能车能够在各种形状的赛道上行驶。
2 设计理念
2.1 整体思路
如图1 所示,本论文研究的智能车系统正常工作需要以K66 单片机为核心处理元件,六大功能模块作为支撑。各部分独立工作且相互配合才能完成智能车行进时的稳定控制,各模块功能如下。
K66 单片机是主控模块,作为整个智能汽车的“大脑”,汇集所有信号,结合控制算法,控制智能车。
传感器模块,电磁传感器用于检测赛道中央铺设电磁线的电感值,4 个电感配合使用能够判断智能车在赛道上的具体位置,而红外传感器用于识别前方是否存在遮挡物,以便及时判断进行绕。
电机驱动模块,驱动直流电机和伺服电机实现智能车轮胎的转速控制,完成车的加减速,当左右轮胎出现差速时可以实现转向。
稳压模块,用于调节电源发出的电压值,通过LM2940 芯片和LM2937 芯片即可以转化为所需要的5 V 和3.3 V 电压,方便各个模块工作。
停车检车模块,研究过程中在停车位置下铺设几块永磁体,用干簧管检测停车位置。当永久磁铁靠近干簧管的线圈通电形成的磁场使簧片磁化时,簧片的触点部分就会被磁力吸引,常开接点就会吸合,此时系统可以检测到干簧管状态变化随即执行停车程序。
测速模块,使用编码器,通过编码器脉冲数和实际前进距离便得到能够描述车速的数据。
九轴模块,该模块能够在3 个维度上检测智能车的加速度,从而得出车模直立时的倾角和水平前进时向两侧方向的偏角。
图1 智能车的构造
2.2 机械结构设计
本设计使用智能汽车竞赛官方指定模型车(F 三轮车模),采用双后轮驱动方案[2]。在设计机械结构前要对智能车各功能模块有清晰的认识,并在实际的调试过程中不断的改进和提高,主要包括车模整体长度、重心位置、电池和传感器的安放位置,具体优化方案如下。
(1)实验结果表明,在一定长度范围内,车模的前瞻越长,电磁传感器的安放位置便可以更靠前,允许车模能够拥有更高的速度,但这样的设计偏离实际。综合考虑决定将车长设定的30 cm,电感置于最前端。电感高度控制在10~15 cm 为最佳,太高导致测量结果不准确,太低使电感值波动太大。
(2)车模重量应该尽量小,重心集中在后轮胎的中间位置。电池是智能车中重量最大的部件,放置于车模尾端。车模上所有部件必须固定,任何微小的抖动都会影响车模的稳定性。
3 硬件结构设计
3.1 电路设计思路
智能车所有模块聚集在一块电路板上,设计思路是在保证正确采集信号的前提下使电路更加精简[3]。设计时将主板电源和电机驱动电源分开,并在两个开关处安装两个LED 灯,通电时指示灯点亮,采集数据时只需要打开主板电源,这样便克服了测量某些参数时轮胎不停转动的问题,真正在赛道上行驶时需要将开关全部打开。核心板需要3.3 V 电压供电,电机驱动需要5 V 电压供电。使用AD(Altium Designer)软件制作电路板时要保证各节点连接线足够宽度,布线不宜太过密集,否则有烧坏电路板的风险。电路板上还需要配置按键和OLED 显示屏,按键实现动态调参,避免每次都上机操作;OLED 显示屏是实现人车交互的平台,通过编写程序可在OLED上显示任何智能车数据。
3.2 传感器安装
图2 模拟了智能车所需要的4 个电磁传感器布局(黑色是碳素杆,黄色是电磁传感器)。电感A 和D是所在直线与赛道中央的电磁先垂直,电感B 和C 与电磁线呈一定夹角,两侧电感对称分布[4]。电磁传感器固定在智能车最前端的碳素杆上,最大为宽度20 cm,水平高度10 cm。测试之前,需要手动调节左右两侧电感值相等。多次试验后得知,将A 和D 电感值调节为1 400,BC 电感值调解为1 100 效果最佳。4 个电感配合使用基本上能够适应所有赛道情况,判断依据如下。
(1)无圆环赛道:使用A 和D 两个电感差值正负判断智能车偏离赛道的方向。若A 值大于D 值,可知电感A 更靠近中央,此时智能车便向左偏转。
(2)存在圆环赛道:圆环形赛道处磁感应强度分布复杂,需要4 个电感协助判断。当B 电感值先达到峰值,C 电感值也突然增大时表明到达圆环,从电感B所在一侧进入圆环;若C 电感先达到峰值,则从电感C 所在一侧进入圆环。
图2 智能车所需要的4 个电磁传感器布局
4 软件算法研究
软件设计时使用IAR 提供的C 语言编译器,该软件支持众多半导体公司微处理器。该研究采用了PWM调速、信息融合技术等,结构化代码设计,调试过程中只需要修改某些参数和部分模块算法。
每个轮胎连接两个电压输入接口,两接口电压差值越大,轮胎转速就越大。单片机使用PWM 算法调控,通过控制电压在一个周期中的占空比,可以实现轮胎正反转和加减速。
循迹代码如下:
PID 算法是基于反馈的动态调节算法,它是在测量出实际与计划发生偏差时,按定额或者标准来调节输出值,在过程控制系统中有着非常广泛的应用。这些代码中,D 是经滤波处理后两侧电感值的差比和,该值经过PID 算法处理后得出能够直接合并到PWM 上的值,PID_D 和PID_P 都是根据实际情况而调节的参数,与智能车的加速度关联[5]。LeftPWM 和RightPWM 直接与左右轮胎对应的数值。利用这些代码,反复实验调试后便能够找到最佳参数,可以实现智能车的自动行驶。
5 结 论
本研究基于MK66 单片机设计了智能车,为汽车实现真正的智能化提供了研究方法和思路。人工智能技术是汽车智能的核心,将在极大程度带动汽车产业革新。