溫宗周 高園平 段俊瑞 劉垚 孫騁
(西安工程大學(xué),西安 710048)
基于模糊控制的自動(dòng)泊車(chē)的研究
溫宗周 高園平 段俊瑞 劉垚 孫騁
(西安工程大學(xué),西安 710048)
針對(duì)模糊控制算法在自動(dòng)泊車(chē)技術(shù)中的應(yīng)用,提出了基于模糊控制和自動(dòng)泊車(chē)的運(yùn)動(dòng)學(xué)模型,建立精簡(jiǎn)模糊規(guī)則庫(kù),設(shè)計(jì)模糊控制器模型,并使用學(xué)習(xí)算法對(duì)模糊控制器的參數(shù)進(jìn)行優(yōu)化,實(shí)現(xiàn)了自動(dòng)泊車(chē)的最優(yōu)的控制。利用MATLAB軟件建立模糊控制器模型,進(jìn)行了仿真對(duì)比驗(yàn)證。結(jié)果表明,通過(guò)學(xué)習(xí)算法優(yōu)化的模糊控制器能夠較好地實(shí)現(xiàn)自動(dòng)泊車(chē),并且具有自學(xué)習(xí)能力,大幅縮短了泊車(chē)時(shí)間。
自動(dòng)泊車(chē)系統(tǒng)利用傳感器探測(cè)周邊環(huán)境,并按照相應(yīng)的策略自動(dòng)控制方向和車(chē)速,快速、準(zhǔn)確、安全地實(shí)現(xiàn)泊車(chē)?;谀:刂萍夹g(shù)的自動(dòng)泊車(chē)系統(tǒng)可以根據(jù)有經(jīng)驗(yàn)駕駛員的泊車(chē)方式和技巧,有效地將車(chē)輛自動(dòng)駛?cè)氩窜?chē)位中。
對(duì)于泊車(chē)控制系統(tǒng),國(guó)內(nèi)外學(xué)者提出了諸多算法,主要分為2類(lèi)[1]:基于路徑規(guī)劃的方法,如三角函數(shù)曲線法、回轉(zhuǎn)曲線的曲率連續(xù)法、Bezier曲線擬合等;基于駕駛經(jīng)驗(yàn)知識(shí)的方法,如模糊邏輯自動(dòng)泊車(chē)、自適應(yīng)模糊自動(dòng)泊車(chē)等。在設(shè)計(jì)模糊控制器時(shí),對(duì)于駕駛經(jīng)驗(yàn)的模糊規(guī)則很多,使模糊控制算法實(shí)現(xiàn)很困難。
本文針對(duì)模糊規(guī)則多,控制算法實(shí)現(xiàn)難的問(wèn)題,提出建立精簡(jiǎn)的模糊規(guī)則庫(kù),實(shí)現(xiàn)模糊控制的算法,采用學(xué)習(xí)算法優(yōu)化模糊控制器的參數(shù),使泊車(chē)的控制實(shí)現(xiàn)最優(yōu)。
超聲波傳感器因其具有方向性好、成本低、無(wú)需多種類(lèi)型的傳感器便能實(shí)現(xiàn)車(chē)位探測(cè)等優(yōu)點(diǎn)而被廣泛應(yīng)用于量產(chǎn)車(chē)型。自動(dòng)泊車(chē)系統(tǒng)的車(chē)位探測(cè)功能是由多個(gè)獨(dú)立的超聲波傳感器協(xié)同實(shí)現(xiàn)的,既能探測(cè)車(chē)位大小,也能避免泊車(chē)過(guò)程中發(fā)生碰撞。
泊車(chē)位可以分為3種:平行于行駛路線的車(chē)位,即平行車(chē)位;垂直于行駛路線的車(chē)位,即垂直車(chē)位;與行駛路線傾斜的車(chē)位,即傾斜車(chē)位[2]。實(shí)踐中,平行車(chē)位和垂直車(chē)位最為常見(jiàn),故本文就這2種車(chē)位展開(kāi)討論。
2.1 平行車(chē)位探測(cè)方法
平行車(chē)位的探測(cè)方法如圖1所示[3]。圖中,L和W分別為車(chē)輛的長(zhǎng)度和寬度;S1為車(chē)輛與泊車(chē)位的橫向距離;L′和W′分別為潛在車(chē)位的長(zhǎng)度和寬度。車(chē)輛前部?jī)蓚?cè)裝有超聲波傳感器,車(chē)輪上裝有位移傳感器。在搜索車(chē)位時(shí),車(chē)輛平行開(kāi)過(guò)車(chē)位,超聲波傳感器開(kāi)始對(duì)障礙車(chē)輛進(jìn)行測(cè)距,所測(cè)距離為St。
圖1 平行車(chē)位探測(cè)
當(dāng)St<W時(shí),車(chē)輛超聲波傳感器的位置還沒(méi)有越過(guò)停在旁邊的障礙車(chē)輛的前端,此時(shí)可得車(chē)輛與障礙車(chē)輛間的距離S1=St。
當(dāng)St≥W時(shí),可能已存在有效車(chē)位,此時(shí)W′=St-S1。在St>W(wǎng)期間,位移傳感器測(cè)出的位移值累加到L′中。
當(dāng)L′≥Lmin(平行泊車(chē)要求的最小車(chē)位長(zhǎng)度)時(shí),就確定了車(chē)位有效,系統(tǒng)提示駕駛員可以泊車(chē),駕駛員確認(rèn)后,開(kāi)始自動(dòng)泊車(chē)。L′<Lmin時(shí),則繼續(xù)捜索,如果L′未達(dá)到Lmin時(shí),再次測(cè)試到St<W的點(diǎn),說(shuō)明車(chē)位不符合要求,則將L′清零,車(chē)輛繼續(xù)前進(jìn)并搜索。
2.2 垂直車(chē)位探測(cè)方法
垂直車(chē)位的探測(cè)方法如圖2所示,它與平行車(chē)位探測(cè)方法原理相同,只是判斷條件有所區(qū)別[3]。當(dāng)車(chē)輛開(kāi)過(guò)潛在泊車(chē)位時(shí),裝于車(chē)身側(cè)面的超聲波傳感器開(kāi)始對(duì)障礙車(chē)輛測(cè)距,所測(cè)距離為St。
圖2 垂直車(chē)位探測(cè)
當(dāng)St<L時(shí),車(chē)輛還未開(kāi)到車(chē)位前端,此時(shí)得到車(chē)輛側(cè)面與障礙車(chē)輛的距離S1=St。
當(dāng)St≥L時(shí),可能已存在有效車(chē)位,此時(shí)L′=St-S1。在St>L期間,位移傳感器測(cè)出的位移值累加到W′中。
當(dāng)W′≥Wmin(垂直泊車(chē)要求的最小車(chē)位寬度)時(shí),就確定了有效車(chē)位,系統(tǒng)提示駕駛員可以泊車(chē),駕駛員確認(rèn)后,開(kāi)始自動(dòng)泊車(chē)。W′<Wmin時(shí),則繼續(xù)搜索,W′未達(dá)到Wmin時(shí),再次測(cè)試到St<L的點(diǎn),說(shuō)明車(chē)位符合要求,則將W′清零,車(chē)輛繼續(xù)前進(jìn)并搜索。
以車(chē)輛駛?cè)氩窜?chē)位后后軸中心為原點(diǎn),車(chē)輛中心軸為y軸,垂直于中心軸為x軸建立坐標(biāo)系,車(chē)輛的運(yùn)動(dòng)學(xué)模型如圖3所示,其中,(xf,yf)為前軸中心點(diǎn)位置坐標(biāo);(xr,yr)為后軸中心點(diǎn)位置坐標(biāo),也作為整個(gè)車(chē)輛的參考點(diǎn);(xrL,yrL)為左后輪位置坐標(biāo);(xrR,yrR)為右后輪位置坐標(biāo);v為車(chē)輛行駛速度;l為車(chē)輛軸距;w為后輪距;φ為車(chē)輛轉(zhuǎn)向角,即前輪與車(chē)輛縱向?qū)ΨQ(chēng)平面間的夾角;θ為航向角,即車(chē)身縱向?qū)ΨQ(chēng)平面與x軸間的夾角[4]。
圖3 車(chē)輛運(yùn)動(dòng)學(xué)模型示意
車(chē)輛泊車(chē)過(guò)程中,車(chē)速一般低于5 km/h,通常可以忽略車(chē)輪轉(zhuǎn)動(dòng)時(shí)的側(cè)滑情況,即后輪運(yùn)動(dòng)軌跡的垂直速度為0,由運(yùn)動(dòng)軌跡可得:
式中,y?為y的一階導(dǎo)數(shù);x?為x的一階導(dǎo)數(shù)。
由圖3所示的運(yùn)動(dòng)學(xué)模型可得車(chē)輛前、后軸中心點(diǎn)位置坐標(biāo)關(guān)系:
式(2)兩邊同時(shí)對(duì)時(shí)間求導(dǎo)可得:
由圖3可得車(chē)輛前輪軸線中心點(diǎn)的x、y方向速度為:
聯(lián)立式(1)~式(4)可得到基于后軸中心點(diǎn)的車(chē)輛運(yùn)動(dòng)學(xué)方程,其中心點(diǎn)在x、y方向上的速度分別為:
離散化后的車(chē)輛運(yùn)動(dòng)學(xué)方程為:
式中,τ為離散的時(shí)間周期;i為離散的次數(shù)。
后軸中心點(diǎn)的軌跡方程為:
根據(jù)車(chē)輛運(yùn)動(dòng)學(xué)模型,只要確定其中1個(gè)參考點(diǎn)的位置坐標(biāo)和運(yùn)動(dòng)軌跡,就可以通過(guò)它與其它點(diǎn)的位置關(guān)系求得其它點(diǎn)的運(yùn)動(dòng)軌跡。
左后輪的軌跡方程為:
右后輪的軌跡方程為:
由以上分析可知,非完整約束條件下建立車(chē)輛運(yùn)動(dòng)學(xué)模型,車(chē)身的運(yùn)動(dòng)軌跡與后輪的運(yùn)動(dòng)軌跡相同,車(chē)速只影響車(chē)輛的泊車(chē)時(shí)間,不影響汽車(chē)的行駛軌跡,而行駛軌跡只與車(chē)輛車(chē)長(zhǎng)L、車(chē)寬W和航向角θ有關(guān)。車(chē)輛泊車(chē)軌跡實(shí)際上是由多段圓弧組成的,直行可視為半徑無(wú)限大的圓周運(yùn)動(dòng)。
4.1 輸入、輸出參數(shù)取值范圍及隸屬函數(shù)
在圖3所示坐標(biāo)系下,建立車(chē)輛泊車(chē)示意圖(見(jiàn)圖4),在泊車(chē)過(guò)程中,車(chē)輛的位置由θ、x、y確定。由于駕駛員一般為一次性將車(chē)輛倒入停車(chē)位,所以y為狀態(tài)變量,模糊控制器輸入為(x,θ),輸出為φ,滿(mǎn)足車(chē)輛最終位置狀態(tài)為(xf,φf(shuō))=(0,90°)。
利用試錯(cuò)法產(chǎn)生輸入-輸出數(shù)據(jù)對(duì):在任意時(shí)刻(此時(shí)x和θ是給定的)當(dāng)車(chē)輛從某初始狀態(tài)開(kāi)始倒車(chē)時(shí),根據(jù)經(jīng)驗(yàn)確定控制量φ(即該狀態(tài)下轉(zhuǎn)向盤(pán)角度的控制經(jīng)驗(yàn))。經(jīng)多次試驗(yàn),可以得到最佳泊車(chē)軌跡對(duì)應(yīng)的輸入-輸出數(shù)據(jù)對(duì)[5]。
圖4 車(chē)輛泊車(chē)示意
4.2 模糊規(guī)則的確立
對(duì)輸入變量和輸出變量模糊化后,根據(jù)專(zhuān)家經(jīng)驗(yàn)建立模糊規(guī)則。x和θ各有7個(gè)語(yǔ)言變量值,理論上可建立49條模糊規(guī)則,但x和θ取某些值時(shí),不符合泊車(chē)實(shí)際情況,將其消除后形成的模糊規(guī)則庫(kù)如表1所示。
表1 模糊規(guī)則庫(kù)
4.3 模糊系統(tǒng)的設(shè)計(jì)與優(yōu)化
采用帶有乘積推理機(jī)、單值模糊器、中心平均解模糊器設(shè)計(jì)和高斯隸屬度函數(shù)的模糊控制系統(tǒng)[6],即
式中,M為模糊規(guī)則的數(shù)量;為第l條平均解模糊的輸出值;為第l條規(guī)則中第i個(gè)輸入值;為的標(biāo)準(zhǔn)差。
該模糊系統(tǒng)的結(jié)構(gòu)已經(jīng)確定,還需要確定其中的變量。
根據(jù)表1給定的輸入、輸出數(shù)據(jù)對(duì),設(shè)計(jì)形如式(10)的模糊系統(tǒng)f(x),使得擬合誤差e最小:
式中,x0、y0分別為給定的輸入與輸出;f(x0)為給定的輸入在設(shè)計(jì)的模糊系統(tǒng)產(chǎn)生的輸出。
當(dāng)e最小時(shí),可以確定參數(shù)與。若要求取最小值,則需求取它們的偏導(dǎo)數(shù):
式中,q為學(xué)習(xí)次數(shù);α為步長(zhǎng)。
應(yīng)用MATLAB軟件對(duì)基于學(xué)習(xí)算法優(yōu)化的模糊控制器與傳統(tǒng)查表法的仿真結(jié)果進(jìn)行比較[7~8]。圖5和圖6是車(chē)輛在x=20 m,θ=0°的位置,分別應(yīng)用2種方法的模糊控制系統(tǒng)仿真結(jié)果。
圖5 學(xué)習(xí)算法仿真結(jié)果
圖6 查表法仿真結(jié)果
通過(guò)無(wú)限次改變車(chē)輛的初始位置,獲取學(xué)習(xí)算法與查表法的泊車(chē)時(shí)間。分別取θ=0°、x=10 m,泊車(chē)時(shí)間t與x、θ的關(guān)系分別如圖7、圖8所示。
由圖7、圖8可知,無(wú)論應(yīng)用學(xué)習(xí)算法還是查表法,當(dāng)θ=0°時(shí),泊車(chē)位與車(chē)輛的距離小于10 m時(shí),距離越近,泊車(chē)時(shí)間越長(zhǎng),泊車(chē)位與車(chē)輛的距離大于12 m時(shí),距離越遠(yuǎn),泊車(chē)時(shí)間越長(zhǎng),即泊車(chē)距離在10~12 m時(shí),泊車(chē)時(shí)間較短。同樣,在x=10 m時(shí),θ越大則泊車(chē)時(shí)間越短。學(xué)習(xí)算法與傳統(tǒng)的查表法相比,泊車(chē)時(shí)間縮短。
圖7θ=0°時(shí)x與t的關(guān)系
圖8x=10 m時(shí)θ與t的關(guān)系
本文應(yīng)用學(xué)習(xí)算法優(yōu)化了自動(dòng)泊車(chē)系統(tǒng)模糊控制器參數(shù),并使系統(tǒng)具有自學(xué)習(xí)能力,大幅縮短了泊車(chē)時(shí)間,實(shí)現(xiàn)了自動(dòng)泊車(chē)的最優(yōu)控制。
1 任坤,許藝,丁福文,等.基于機(jī)器視覺(jué)和模糊控制的自動(dòng)泊車(chē).華中科技大學(xué)學(xué)報(bào):自然科學(xué)版,2015(增刊1): 88~92.
2 楊妮娜,梁華為,王少平.平行泊車(chē)的路徑規(guī)劃方法及其仿真研究.電子測(cè)量技術(shù),2011(1):42~45.
3 魏振亞.基于超聲波車(chē)位探測(cè)系統(tǒng)的自動(dòng)泊車(chē)方法研究.合肥:合肥工業(yè)大學(xué),2013.
4 逢小鳳.基于模糊控制的汽車(chē)自動(dòng)倒車(chē)系統(tǒng)研究.南京:南京農(nóng)業(yè)大學(xué),2012.
5 Rajamani R,Shladover S E.An experimental comparative study of autonomosand cooperative vehicle-follower control system.Journal of Transportation Research:Part C,2001,9(1):15~31.
6 王立新.模糊系統(tǒng)與模糊控制教程.北京:清華大學(xué)出版社,2003.
7 Ross I M,Fahroo F.Issues in the real-time computation of optimal control.Mathematical& Computer Modelling,2006,43(9/10):1172~1188.
8 曲龍.基于MATLAB的自動(dòng)泊車(chē)系統(tǒng)的仿真研究.沈陽(yáng):沈陽(yáng)理工大學(xué),2013.
(責(zé)任編輯 斛 畔)
修改稿收到日期為2016年12月11日。
Research on Auto-Parking Based on Fuzzy Control
Wen Zongzhou,Gao Yuanping,Duan Junrui,Liu Yao,Sun Cheng
(Xi’an Polytechnic University,Xi’an 710048)
For the application of fuzzy control algorithm in automatic parking technology,we presented kinematics model based on fuzzy control and the automatic parking,constructed a streamlined fuzzy rule base,and designed model of the fuzzy controller,and used the learning algorithm to optimize the parameters of the fuzzy controller,thus realized the optimal control of automatic parking.Fuzzy controll model was established by using MATLAB software,and simulation was carried out for comparison and verification.Results showed that the fuzzy controller with learning algorithm optimized can realize automatic parking,and have self learning ability,greatly shorten the parking time.
Fuzzy controller,Learning algorithm,Automatic parking
模糊控制器 學(xué)習(xí)算法 自動(dòng)泊車(chē)
U464.6
A
1000-3703(2017)03-0029-04