基于单片机的智能小车泊车系统设计
2021-05-09史旭飞张兵张艳军王维福李春林
史旭飞 张兵 张艳军 王维福 李春林
摘 要:随着信息技术的进步,汽车逐渐朝着安全、智能方向发展,智能泊车系统的出现不仅能帮助人们更加快速、安全地完成泊车操作,而且适用于狭小空间的泊车操作,降低驾驶员泊车负担,减轻泊车交通事故发生率。文章基于单片机设计自动泊车系统,以单片机为核心来实现信息收集及处理,并控制电机模块做出相应的驾驶行为,实现小车的自动驾驶和入库,解决人们的泊车难题。
关键词:单片机;智能;泊车
中图分类号:TP368 文献标识码:A文章编号:2096-4706(2021)20-0164-03
Design of Intelligent Car Parking System Based on Single-chip Microcomputer
SHI Xufei, ZHANG Bing, ZHANG Yanjun, WANG Weifu, LI Chunlin
(Xuanhua Vocational College of Science & Technology, Zhangjiakou 075100, China)
Abstract: With the progress of information technology, cars are gradually developing towards safety and intelligence. The emergence of intelligent parking system can not only help people complete parking operation more quickly and safely, but also apply to parking operation in narrow space, reduce the parking burden of drivers and reduce the incidence of parking accidents. This paper designs the automatic parking system based on the single-chip microcomputer, takes the single-chip microcomputer as the core to realize the information collection and processing, controls the motor module to make the corresponding driving behavior, realizes the automatic driving and warehousing of the car, and solves peoples parking difficult problems.
Keywords: single-chip microcomputer; intelligence; parking
0 引 言
随着我国汽车保有量逐年增多,城市中泊车环境日益复杂,给驾驶人带来了较多的烦恼,加重了人们的泊车负担,针对这一问题,文章设计一款基于单片机的小车泊车系统,能够通过单片机控制来实现小车的自动驾驶和停车入库,帮助驾驶员更加快速、安全地完成泊车操作,系统包括信息收集模块、信息处理模块和控制模块,能够通过路径数据收集、空余车位定位、规划行驶路线、倒车入库等功能实现小车自动泊车。
1 智能小车泊车系统分析
本系统硬件结構由车位管理装置、智能小车装置组成,两个结构的核心控制装置皆为单片机。
1.1 车位管理装置
当小车发出泊车需求时,车位管理装置会通过无线通信发送空余车位信息,并根据停车场分布规划最佳路线,借助电磁引导装置指引小车入库,由出入库传感器来显示车位当前状态,调整车位指示灯。
1.2 智能小车装置
智能小车装置主要由电机驱动模块、超声波模块、红外寻迹模块、避障模块、转向模块、显示器模块等组成,以单片机作为控制核心,借助红外寻迹模块来探查路线,超声波模块来探测距离,用电机驱动模块和转向模块来进行速度变化和转向,最后实现自动泊车,显示器模块记录泊车轨迹和运行画面。具体如图1所示。
2 基于单片机的智能小车泊车系统硬件设计
2.1 单片机主控模块
本系统采用SYC89C52单片机,该机片具有功耗低、性能强、兼容性高等特点,相比于其他单片机更易进行编程设计,灵活性高、处理效率快,且最小系统简单可靠,只需要接上时间电路和复位电路即可,不仅具有较高的经济性价比,还能最大程度适用于智能小车泊车环境。选取SYC89C52单片机为控制核心具有显著的应用价值和经济属性。
2.2 电机驱动模块
小车的自动行驶需要电机的驱动,单片机借助路径信息发出驱动指令,控制电机的转速和舵机转向来实现小车的智能运动,确保小车始终按照计划引线行驶,本系统采用步进电机驱动,电机的快慢取决于电脉冲信号的频率,更便于单片机的控制程度,在电路设计上,为避免因电机转动产生的反向电动势影响传感器的信息输出,影响小车的指令执行,将传感器和芯片设计为共用电源,电机专用一组电源,采用两组电源供电,在信息传输中采用4N52光耦电路来隔离。
2.3 红外遁迹模块
红外遁迹模块采用的是红外探测法,利用红外线对不同颜色的物体表面反射出不同特征信息,在小车自动泊车中采用左右两侧循迹黑线的方法,小车在开始自动泊车后,会开始发射红外线进行循迹,在自动形式中会不断接收红外线的回传信息,当左右两侧都遇到黑色,不发射红外线,电平输出为高电平;当遇到白色地面,红外线发射回来,输出为低电平,单片机根据小车在行驶过程中电平的变化来判断小车的路线,并借助避障模块来实现自动循迹。当左边红外线遇到黑线,右侧红外线反馈为低电平白色,则左侧指示灯熄灭,小车左转;同理右边红外线反馈为低电平白色,右侧检测黑线,右侧指示灯熄灭,小车右转;当两边检测都为路面黑线时,小车前行,当两边检测为白色时小车停车。
2.4 超声波模块
超声波模块的核心功能是测距和避障,超声波具有频率高、稳定性强、能力集中的特点,在测距使用中不会受到其他光线干扰,适用于小车自动泊车系统。超声波传感器主要由三部分组成:控制部分、总线部分、超声波发射接收部分。主控芯片通过I/O口发送信号,通过总线发送到两个发生电路中,控制着两个超声波的发射,然后再由两个信号接收电路对接收超声波信号进行放大,最后通过总线传送到主控芯片的输入端口,然后根据发射接收时间差T,计算出传感器与障碍物之间的距离,最后根据距离对小车的行驶安全性进行判断,并做出相应驾驶动作,在避障功能应用中,可以计算超声波发射遇到障碍物的反射时间,结合当前小车时速,最后得出小车与障碍物的距离,便于单片机及时控制小车的转向和调速。为提高超声波测距的精度,本文采用的超声波测距返回的信息是时间,再根据时间公式计算距离,探测指令顺序为:IIC地址、寄存器、数据指令、检测指令是否为高频、接受16位IIC数据。
2.5 避障模块
避障模块设置可采用超声波、红外反射、激光。超声波模块具有频率高、光线强、稳定性高、不易受到其他关系影响的优势,但受限于角度干扰;红外发射传感器周期短、控制效果好,但检测距离小、电路设计复杂、精准度较低;激光相比于两组优劣势更加均衡,声波效果较为灵敏和准确,也不易受到外界光线干扰,能实现特定角度避障。
3 系统软件设计
智能小车触发自动泊车需求后,软件进行初始化,首先车位管理装置通过无线通信发出空余车位信息,其次启动驱动模块控制智能小车的行驶速度,借助红外线遁迹模块来进行导线行驶,然后通过超声波模块及避障模块进行路线驾驶,转弯动作借助转向装置实现,最后按路径完成泊车,车位管理装置接收小车停入信号,整体流程如图2所示。在避障模块上,如图3所示,小车智能行驶借助红外遁迹模块发现障碍物,并借助超声波模块进行距离检测,通过雷达激光发射光线来判断障碍物情况,最后通过转向装置实现转向。
4 测试与模拟
本文选择模拟车库进行系统测试。
4.1 测试小车选型和车库布置
4.1.1 小车选型及配置装设
小车分别装设四个车轮,借助单片机为核心,结合电机驱动模块、超声波模块、避障模块等实现智能小车的路线规划、行驶避障、检测、自动泊车等功能。
首先在小车头部安装3根光敏三极管,借助车位管理装置发射的光源信息来进行路径规划,并在四周配备红外检测模块,前面装设超声波模块,便于及时反馈路线信息和障碍物信息,借助单片机控制步进电机对小车进行速度调整及转向,实现寻光、避障、停车目的。
其次,在传感器的位置设计上,在现实中针对不同的车型,传感器的位置选择需要结合小车的造型特征和美观设计选择,在实验小车上,传感器的设置是为了提高信息传输效率和精准性。
在具体泊车过程中,如图4所示,实验小车车头和尾部的超声波传感器主要是为了探测泊车位前后车辆距离,避免在转向、入库的过程中发生碰撞。侧面超声波传感器主要用于对泊车位距离的探测和泊车过程中与前面车的距离的探测。
图4 具体泊车过程
其中,避障程序關键代码为:
>def control car(actionnum):
“””out put the char and call carcontrol(we used before)”””
If action num==0:
print(“Left”)
carcontrol.carturnleft()
time.sleep(0.25)
elif actionnum==1:
print(“Right”)
carcontrol.carturnright()
time.sleep(0.25)
elif actionnum==2:
carcontrol.carmoveforward()
print(‘Forward)
elif actionnum==3:
carcontrol.carmovebackward()
print(Backward)
else:
carcontrol.carstop()
print(‘Stop)
编码器。编码器可以精准的测试出小车的行驶速度,便于单片机借助步进驱动机进行速度的控制,同时编码器也能够有效地计算出实验小车中每个阶段的位移,实验小车也能够通过编辑器计数累计获得完成泊车的位移量。
陀螺仪。主要为了在泊车过程中探测小车的角度信息,实现实验小车精准有效转向,提高泊车效率。
4.1.2 车库布置
智能车库布置分为一个下坡区和四个光源目标车库,每个车位配置LED和光源传感器。光源传感器能够发射车位信息,为智能实验小车提供路径导向。如图5所示。
4.2 测试过程
为保障小车泊车的安全性,本文在自动泊车测试中采用的是模拟实验,如图5所示,开始泊车,智能小车获取车库2光源指示灯信号,开启红外遁迹规划行驶路线,在下坡阶段由编码器输送数据,单片机通过调整步进电动机频率来控制车速,行至目标车位位置,开始自动泊车入库。图6为小车入库示意图,首先,实验小车右侧传感器探查到发射信息,单片机向转向装置发出转向指令,控制小车进行右转向行驶。其次待避障装置传感器发出碰撞信息示警,然后单片机根据超声波模块探测距离信息,发布新的转向指令,借助陀螺仪来提高转向的位移精准度,最后实现最终入库。
4.3 测试结果
借助车位管理装置的出入库感应器和指示灯记录每次试验小车不通过车位的入库成功率,经过反复试验,最后得出小车均能正确找到目标车位,完成自动泊车行为。
4.4 试验反思
在实验小车自动泊车中无法考虑到小车各个功能装置的耦合性,并且在实际泊车中,泊车环境和实验泊车环境会产生一定的运动误差,其中包括陀螺仪对于转向位移的精准把控、传感器的误差、摄像头的精度等。因此,在实际智能小车自动泊车中需要充分考虑到机械振动、器件耦合性等因素。
5 结 论
本智能小车泊车系统以单片机为核心,利用电机驱动模块、红外遁迹模块、超声波模块、避障模块构建智能小车控制装置系统,并配合车位控制装置系统来实现小车的循迹行驶、自动避障、自动泊车,经过模拟实验,发现智能小车能够更实现软件设计运行轨迹,实现自动入库操作。
参考文献:
[1] 周玲,高怀,刘梦莹,等.基于单片机的自动泊车系统设计 [J].山西大同大学学报(自然科学版),2021,37(1):19-22+118.
[2] 李阳军,蔡宇佳,孟艳菊.基于单片机的智能泊车系统 [J].电子世界,2020(3):118-119.
[3] 韩鸿凌,贾凯歌,高军,等.基于单片机的智能小车泊车系统设计 [J].信息通信,2015(10):70-71.
[4] 张浩淼,郑飞.基于STM32单片机的自动泊车系统设计 [J].科学咨询(科技·管理),2018(5):47.
[5] 姜金山.基于多传感器数据融合的智能泊车控制系统设计与实现 [D].哈尔滨:哈尔滨工业大学,2016.
作者简介:史旭飞(1995.01—),男,汉族,河北蠡县人,硕士研究生,教师,研究方向:机电一体化。