超声波测距的模糊控制泊车系统模型设计
扫描二维码
随时随地手机看文章
摘要:设计了一种基于超声波测距的自动泊车系统模型。首先对小车运动模型进行分析,结合实际设计垂直、平行、斜行三种泊车模糊控制器,并且在Matlab的Simulink中分别进行仿真验证。采用超声波测距技术、视频采集技术等来获取周围环境数据,按照实际车辆和车库的大小,通过等比例缩放设计小车模型和车库模型,并把验证通过的模糊控制器转换为C代码,嵌入到飞思卡尔K60主控制板中进行自动泊车可行性测试。经测试,当模型车的航向角在-32°~+32°范围内时,实现了模型车在0.92倍标准大小模型车库内的自主泊车。
引言
近年来随着经济的发展,拥有汽车的家庭越来越多,对于经验不足的驾驶员来讲,在拥挤的停车场、车库以及路边实现安全泊车的问题越来越突出。自动泊车系统的出现提高了泊车过程的准确度。相对于国外研发的自主泊车系统,目前国内关于自动泊车系统的研究仍处于初级阶段,仅有少数的高档轿车上才配有自动泊车辅助系统。设计泊车系统模型对泊车控制算法进行验证,可以为真实车辆研发自动泊车系统提供一定理论依据,促使自动泊车系统代替驾驶员观察并判断,实现自动泊车到位,从而减少泊车事故的发生。
1 原理与算法
1.1 超声波测距原理
超声波是频率高于20 000 Hz的声波,它指向性强,在介质中传播的距离较远,因而超声波经常用于距离的测量。利用超声波检测往往比较迅速、方便、计算简单、易于做到实时控制。通过超声波发射装置向某一方向发射超声波,超声波发射的同时开启计时器计时,超声波在空气中传播,途中碰到障碍物就立即返回来,超声波接收器收到反射波后立即停止计时。通过超声波在空气中传播的速度v和计时器所记录的时间t,利用公式
s=v×t/2
就可以计算出发射点距障碍物的距离s。
本系统对测量精度要求较高,由于超声波传播的速度受温度变化的影响较大,所以采用温度补偿的方法对温度进行校正。由下面计算公式得到:
其中:τ为摄氏温度。
系统使用8个超声波装置分别放置在模型车四周组成环境测量装置,可以对环境中车位精确定位以及由周围环境获取车身姿态角,保证了系统的可靠性。
1.2 运动模型建模
为了更加直观、简便地求解自动泊车这一特殊的行车过程,对模型小车建立车辆运动学模型,即把小车简化成一个矩形的刚体,建立基于阿克曼转向几何的小车运动学模型。对于本文研究的小车模型,可将其简化为两轮车模型,以车辆前后轴中点为参考来描述车辆的运动,建立的阿克曼转向模型如图1所示。
图中(xf,yf)、(xr,yr)分别表示车辆前、后轴中点坐标;φ表示前轮转角;θ表示车身航向角;l表示车辆轴距;vr表示后轴中心点速度,化简的车辆运动学方程组为:
由以上运动学方程组分析得:在低速运动下,模型车的后轴中心点运动轨迹为一个定圆,且该圆半径仅与车辆前轮转角φ有关。
设计中根据实际车辆大小,按比例设计小车模型及泊车环境,并且在Matlab/Simulink中建立阿克曼转向模型,为下面的模糊控制器器设计提供了良好的理论依据。
1.3 自动泊车模糊控制器设计
模糊控制是以模糊语言变量、模糊集合理论及模糊推理为基础的一类计算机控制方法,适合用于数学模型复杂的系统。模糊控制继承了人类对概念模式和思维图像的自然语言习惯,相比其他传统的控制方法,模糊控制在自动泊车系统中的应用更加广泛。自动泊车模糊控制器设计包括垂直泊车模糊控制器设计、平行泊车模糊控制器设计和斜行泊车模糊控制器设计,由于三种控制器设计方式类似,本文以垂直泊车为例讨论模糊控制器设计。本设计的模糊自动泊车系统控制框图如图2所示。
其中模糊化、模糊推理、模糊判断和模糊规则4部分构成模糊控制器。CPU主要通过以下3个步骤实现模糊控制:
①首先通过超声波阵列获取车辆后轴中心点坐标(Xr,yr)和车身航向角θ,将超声波传感器采样到的数据进行模糊化。
②根据模糊控制规则,结合驾驶员的实际泊车经验推理计算出模糊控制量。
③对模糊控制量进行判决,得出确切的输出量给转向舵机,控制模型车前轮转向。
通过对上述模糊控制器进行仿真分析,在实际运行中适当进行调整,反复调试最终实现精确泊车控制。
2 硬件设计与仿真
本设计硬件电路主要包括飞思卡尔K60最小系统模块设计、超声波电路设计、转向电机驱动电路设计、直流电机驱动电路设计、语音模块电路设计。硬件系统电路框图如图3所示。
车辆驶过停车位置时,超声传感器的信号由控制器接收,从而识别并存储车位的尺度信息,建立泊车区域的地图。启动泊车系统,核心控制器控制舵机驱动电路驱动转向舵机,由双轴陀螺仪采集舵机转角反馈到核心控制器,形成PID闭环控制,获得精确的前轮转角控制量φ。直流电机驱动电路驱动直流电机,由编码器获取当前的速度反馈给核心控制器,行车第2个PID闭环控制,使车速平稳,系统更加稳定。泊车过程中,由摄像头获取倒车影像存储到核心控制器K60的内部DMA控制器中,最后显示在显示器上。当发现合适停车位和泊车结束时,控制语音模块进行语音提醒,使系统更加智能化。
2.1 直流电机驱动电路
直流电机驱动电路主要用来控制直流电机的转动方向和转动速度。可以通过改变直流电机两端的电压来控 自动泊车系统启动泊车操作,由超声波感知周围环境信息,通过模糊控制实现泊车入库,图7为自动泊车子系统流程图。制电机的转向;而控制直流电机的转速则有不同的方案,常规的方法则是采用PWM控制。驱动电路直接选用英飞凌大功率驱动芯片BTS7960组成的全H桥驱动模块。BTS7960内含电流检测电路、控制驱动电路,以及1个P型和1个N型MOSFET管,可以灵活应用于2相或3相、直流有刷或无刷电机的控制驱动电路中,不仅可以简化电路设计,而且使得控制更加简单。电机驱动原理图如图4所示。
2.2 电源电路
电源电路的稳定性对系统的稳定性起决定性的作用,电源电路为不同的模块电路提供不同等级的电压。本模型车设计需要3.3V、5V、12 V三个等级电压。电源由12 V锂离子电池提供。电源电路原理图如图5所示。
系统采用LM1117芯片对12 V电压降压到3.3 V,为飞思卡尔单片机供电;串联稳压芯片LM2940稳压,输出5 V电压,为CMOS摄像头、超声波模块和液晶屏显示器供电。舵机驱动采用稳压可调芯片LM2596-ADJ稳压至5 V,接入舵机驱动模块,以驱动舵机转向舵机。
3 系统软件设计
自动泊车系统模型,启动自动泊车系统后,选择垂直、平行和斜行3种泊车方式,超声波测距得到车辆后轮轴中心坐标(xr,yr)和前轮转角φ以及车身航向角θ,输入模糊控制器中控制车辆倒车运行状态,实现自动泊车。系统软件流程图如图6所示。
自动泊车系统启动泊车操作,由超声波感知周围环境信息,通过模糊控制实现泊车入库,图7为自动泊车子系统流程图。
4 测试与分析
本设计建立基于超声波测距的模糊控制泊车系统模型,通过超声波测量车辆模型后轮轴中心点坐标作为泊车的起始位置,在Matlab Simulink建立车辆运动学模型和模糊控制器,并对自动泊车过程进行仿真,验证了模糊控制器设计的合理性和本设计的准确性。其中Matlab Simulink仿真结果如图8所示。
在软件仿真的基础上进行硬件电路设计,同时以2个同等大小模型车作为参考车,两纸盒中间按实际车库比例预留空车位,由搭建好的模型进行实际模型车测试,测试结果如表1所列。
由测试结果可以看出,模型车航向角控制在0~32°范围内,小车模型均可实现快速自动泊车,泊车入库精度高,系统稳定性好。当航向角大于32°时,由于车身倾斜造成超声波传感器对实际距离的检测失去一定的准确性,从而使模型车对车位以及自身所处位置造成误判断,最终导致泊车失败。在进行平行和斜行式泊车测试时,出现相同的情况。对超声波模块以不同角度斜面进行距离测试,由测试结果可知,当航向角大于32°时,由于超声波测距造成的误差使得自动泊车系统造成车位误判断。
结语
设计的自动泊车系统,不仅能够完成模型小车自动寻找最小空车位,采用模糊控制法实现3种停车位的泊车,而且采用语音模块实现语音提醒,以及在车载显示屏上显示倒车后面的路况信息,使实验室泊车系统模型设计更加人性化、智能化。