摘要:設計了一種基于超聲波測距的自動泊車系統模型。首先對小車運動模型進行分析,結合實際設計垂直、平行、斜行三種泊車模糊控制器,并且在Matlab的Simulink中分別進行仿真驗證。采用超聲波測距技術、視頻采集技術等來獲取周圍環(huán)境數據,按照實際車輛和車庫的大小,通過等比例縮放設計小車模型和車庫模型,并把驗證通過的模糊控制器轉換為C代碼,嵌入到飛思卡爾K60主控制板中進行自動泊車可行性測試。經測試,當模型車的航向角在-32°~+32°范圍內時,實現了模型車在0.92倍標準大小模型車庫內的自主泊車。
引言
近年來隨著經濟的發(fā)展,擁有汽車的家庭越來越多,對于經驗不足的駕駛員來講,在擁擠的停車場、車庫以及路邊實現安全泊車的問題越來越突出。自動泊車系統的出現提高了泊車過程的準確度。相對于國外研發(fā)的自主泊車系統,目前國內關于自動泊車系統的研究仍處于初級階段,僅有少數的高檔轎車上才配有自動泊車輔助系統。設計泊車系統模型對泊車控制算法進行驗證,可以為真實車輛研發(fā)自動泊車系統提供一定理論依據,促使自動泊車系統代替駕駛員觀察并判斷,實現自動泊車到位,從而減少泊車事故的發(fā)生。
1 原理與算法
1.1 超聲波測距原理
超聲波是頻率高于20 000 Hz的聲波,它指向性強,在介質中傳播的距離較遠,因而超聲波經常用于距離的測量。利用超聲波檢測往往比較迅速、方便、計算簡單、易于做到實時控制。通過超聲波發(fā)射裝置向某一方向發(fā)射超聲波,超聲波發(fā)射的同時開啟計時器計時,超聲波在空氣中傳播,途中碰到障礙物就立即返回來,超聲波接收器收到反射波后立即停止計時。通過超聲波在空氣中傳播的速度v和計時器所記錄的時間t,利用公式
s=v×t/2
就可以計算出發(fā)射點距障礙物的距離s。
本系統對測量精度要求較高,由于超聲波傳播的速度受溫度變化的影響較大,所以采用溫度補償的方法對溫度進行校正。由下面計算公式得到:
其中:τ為攝氏溫度。
系統使用8個超聲波裝置分別放置在模型車四周組成環(huán)境測量裝置,可以對環(huán)境中車位精確定位以及由周圍環(huán)境獲取車身姿態(tài)角,保證了系統的可靠性。
1.2 運動模型建模
為了更加直觀、簡便地求解自動泊車這一特殊的行車過程,對模型小車建立車輛運動學模型,即把小車簡化成一個矩形的剛體,建立基于阿克曼轉向幾何的小車運動學模型。對于本文研究的小車模型,可將其簡化為兩輪車模型,以車輛前后軸中點為參考來描述車輛的運動,建立的阿克曼轉向模型如圖1所示。
圖中(xf,yf)、(xr,yr)分別表示車輛前、后軸中點坐標;φ表示前輪轉角;θ表示車身航向角;l表示車輛軸距;vr表示后軸中心點速度,化簡的車輛運動學方程組為:
由以上運動學方程組分析得:在低速運動下,模型車的后軸中心點運動軌跡為一個定圓,且該圓半徑僅與車輛前輪轉角φ有關。
設計中根據實際車輛大小,按比例設計小車模型及泊車環(huán)境,并且在Matlab/Simulink中建立阿克曼轉向模型,為下面的模糊控制器器設計提供了良好的理論依據。
1.3 自動泊車模糊控制器設計
模糊控制是以模糊語言變量、模糊集合理論及模糊推理為基礎的一類計算機控制方法,適合用于數學模型復雜的系統。模糊控制繼承了人類對概念模式和思維圖像的自然語言習慣,相比其他傳統的控制方法,模糊控制在自動泊車系統中的應用更加廣泛。自動泊車模糊控制器設計包括垂直泊車模糊控制器設計、平行泊車模糊控制器設計和斜行泊車模糊控制器設計,由于三種控制器設計方式類似,本文以垂直泊車為例討論模糊控制器設計。本設計的模糊自動泊車系統控制框圖如圖2所示。
其中模糊化、模糊推理、模糊判斷和模糊規(guī)則4部分構成模糊控制器。CPU主要通過以下3個步驟實現模糊控制:
①首先通過超聲波陣列獲取車輛后軸中心點坐標(Xr,yr)和車身航向角θ,將超聲波傳感器采樣到的數據進行模糊化。
②根據模糊控制規(guī)則,結合駕駛員的實際泊車經驗推理計算出模糊控制量。
③對模糊控制量進行判決,得出確切的輸出量給轉向舵機,控制模型車前輪轉向。
通過對上述模糊控制器進行仿真分析,在實際運行中適當進行調整,反復調試最終實現精確泊車控制。
2 硬件設計與仿真
本設計硬件電路主要包括飛思卡爾K60最小系統模塊設計、超聲波電路設計、轉向電機驅動電路設計、直流電機驅動電路設計、語音模塊電路設計。硬件系統電路框圖如圖3所示。
車輛駛過停車位置時,超聲傳感器的信號由控制器接收,從而識別并存儲車位的尺度信息,建立泊車區(qū)域的地圖。啟動泊車系統,核心控制器控制舵機驅動電路驅動轉向舵機,由雙軸陀螺儀采集舵機轉角反饋到核心控制器,形成PID閉環(huán)控制,獲得精確的前輪轉角控制量φ。直流電機驅動電路驅動直流電機,由編碼器獲取當前的速度反饋給核心控制器,行車第2個PID閉環(huán)控制,使車速平穩(wěn),系統更加穩(wěn)定。泊車過程中,由攝像頭獲取倒車影像存儲到核心控制器K60的內部DMA控制器中,最后顯示在顯示器上。當發(fā)現合適停車位和泊車結束時,控制語音模塊進行語音提醒,使系統更加智能化。
2.1 直流電機驅動電路
直流電機驅動電路主要用來控制直流電機的轉動方向和轉動速度??梢酝ㄟ^改變直流電機兩端的電壓來控 自動泊車系統啟動泊車操作,由超聲波感知周圍環(huán)境信息,通過模糊控制實現泊車入庫,圖7為自動泊車子系統流程圖。制電機的轉向;而控制直流電機的轉速則有不同的方案,常規(guī)的方法則是采用PWM控制。驅動電路直接選用英飛凌大功率驅動芯片BTS7960組成的全H橋驅動模塊。BTS7960內含電流檢測電路、控制驅動電路,以及1個P型和1個N型MOSFET管,可以靈活應用于2相或3相、直流有刷或無刷電機的控制驅動電路中,不僅可以簡化電路設計,而且使得控制更加簡單。電機驅動原理圖如圖4所示。
2.2 電源電路
電源電路的穩(wěn)定性對系統的穩(wěn)定性起決定性的作用,電源電路為不同的模塊電路提供不同等級的電壓。本模型車設計需要3.3V、5V、12 V三個等級電壓。電源由12 V鋰離子電池提供。電源電路原理圖如圖5所示。
系統采用LM1117芯片對12 V電壓降壓到3.3 V,為飛思卡爾單片機供電;串聯穩(wěn)壓芯片LM2940穩(wěn)壓,輸出5 V電壓,為CMOS攝像頭、超聲波模塊和液晶屏顯示器供電。舵機驅動采用穩(wěn)壓可調芯片LM2596-ADJ穩(wěn)壓至5 V,接入舵機驅動模塊,以驅動舵機轉向舵機。
3 系統軟件設計
自動泊車系統模型,啟動自動泊車系統后,選擇垂直、平行和斜行3種泊車方式,超聲波測距得到車輛后輪軸中心坐標(xr,yr)和前輪轉角φ以及車身航向角θ,輸入模糊控制器中控制車輛倒車運行狀態(tài),實現自動泊車。系統軟件流程圖如圖6所示。
自動泊車系統啟動泊車操作,由超聲波感知周圍環(huán)境信息,通過模糊控制實現泊車入庫,圖7為自動泊車子系統流程圖。
4 測試與分析
本設計建立基于超聲波測距的模糊控制泊車系統模型,通過超聲波測量車輛模型后輪軸中心點坐標作為泊車的起始位置,在Matlab Simulink建立車輛運動學模型和模糊控制器,并對自動泊車過程進行仿真,驗證了模糊控制器設計的合理性和本設計的準確性。其中Matlab Simulink仿真結果如圖8所示。
在軟件仿真的基礎上進行硬件電路設計,同時以2個同等大小模型車作為參考車,兩紙盒中間按實際車庫比例預留空車位,由搭建好的模型進行實際模型車測試,測試結果如表1所列。
由測試結果可以看出,模型車航向角控制在0~32°范圍內,小車模型均可實現快速自動泊車,泊車入庫精度高,系統穩(wěn)定性好。當航向角大于32°時,由于車身傾斜造成超聲波傳感器對實際距離的檢測失去一定的準確性,從而使模型車對車位以及自身所處位置造成誤判斷,最終導致泊車失敗。在進行平行和斜行式泊車測試時,出現相同的情況。對超聲波模塊以不同角度斜面進行距離測試,由測試結果可知,當航向角大于32°時,由于超聲波測距造成的誤差使得自動泊車系統造成車位誤判斷。
結語
設計的自動泊車系統,不僅能夠完成模型小車自動尋找最小空車位,采用模糊控制法實現3種停車位的泊車,而且采用語音模塊實現語音提醒,以及在車載顯示屏上顯示倒車后面的路況信息,使實驗室泊車系統模型設計更加人性化、智能化。