葉亮++時銳++孫小杰++衛馳++毛人杰++李志偉
【摘 要】本文針對沿金屬軌道行進智能車問題,提出金屬檢測方案,利用模糊控制原理,經過PID調節,實現了小車穩定的尋跡行進。
【關鍵詞】飛思卡爾;傳感器算法;金屬傳感器;智能車
引言
隨著智能交通運輸的發展,智能車已成為當今社會的研究熱點。對于能夠快速尋跡行進的智能車,在路徑檢測與舵機和電機的控制上都有著較高的要求。
1.檢測方案
1.1 傳感器原理
在傳感器的選擇上,使用了74HC123D和LMV722IDR芯片的運放電路。該電路的特點是可以將金屬信號轉變為高低電頻信號,再由單片機的AD端口進行處理就可實現有無軌道的判斷。
1.2 傳感器布局
由于傳感器數量沒有限制,所以傳感器用多少個,怎么擺放便成了關鍵的問題。放的太少,小車便容易丟線;放的太多,控制策略會變得很復雜,不利于編程和調試。傳感器之間間隔過大,就會在間隔之間出現控制的空白區域;傳感器之間間隔過小,線圈之間便會產生互感現象,影響采集數據的準確性[1]。
傳統傳感器布局有一字型和八字型。一字型布局是傳感器最常用的布局形式,即各個傳感器都在一條直線上,從而保證縱向的一致性,其控制策略主要集中在橫向上。八字型布局是將中間的若干傳感器前置,這樣增加了縱向特性,能夠早一點了解到車前方的道路情況。
經過反復的嘗試與調整,傳感器采用了圖1所示的倒品字形擺法。最前端四個傳感器一字排開,外側傳感器完全在鋁箔外,內側傳感器完全在鋁箔內;后方兩個傳感器都是一半覆蓋在鋁箔上,另一半在鋁箔外。經測試,融合了一字型和八字形優點的倒品字形擺法不僅能對小車過彎進行提前的判斷,從而提早做出反應,更能對小車相對軌道的偏移進行更加精確的調整,使得小車能夠更加穩定地貼合軌道運動。
2.控制方案
2.1程序控制流程
智能車的運行控制是根據路徑識別和車速檢測所獲得的當前路徑和車速信息,控制舵機和直流驅動電機動作,從而調整智能車的行駛方向和速度。控制系統的軟件設計基于IAR 7.3編程環境,單片機使用飛思卡爾公司K60芯片,程序使用C 語言實現。如圖2。
2.2轉向控制策略
該金屬傳感器可以對其底部覆蓋的金屬進行識別,金屬覆蓋面積越大,傳感器得出的數值越小。經檢測,當傳感器完全被鋁箔覆蓋時其讀數為2,在空氣中時其讀數為1024,且2和1024之間幾乎沒有過渡,所以該傳感器只能對是否完全被鋁箔覆蓋進行判斷。
由于小車傳感器部分的復雜性,很難建立精確的數學模型,因此在這里考慮使用模糊控制的方法控制舵機。
如圖3所示,舵機控制程序采用基于模糊控制理論的方法,根據6個傳感器所能接收到的7種狀態進行量化處理。表格中每種傳感器狀態都是按照前4后2的方法排列,和實際傳感器的擺放方法一樣,方便對照和查看。右邊一欄則是對小車位置的量化,其代表的小車偏離位置為{右大,右中,右小,零,左小,左中,左大},對應整數集為{-3,-2,-1,0,1,2,3}[2]。
在舵機轉向時采取了簡單實用的的PID算法,主要對兩個參數的調整來實現:比例控制參數P和微分控制參數D。比例控制參數P可以使得車模方向恢復正確位置。當該參數逐步增加時,車模方向回復速度逐步加快。當比例參數增加到一定數值之后,車模的方向回復由于過快,會出現方向過沖現象。此時通過增加微分控制參數D可以抑制這種方向過沖的現象[3]。
小車的偏離程度為偏離位置的參量絕對值,一共有四種,即{0,1,2,3},根據每一種情況,經過實際的測量與調整,可以分別得到一組合適的P和D參數,使得車模在方向偏移時即能迅速調整回來又不會出現過沖現象[4]。
2.3速度控制策略
根據小車的偏移量,電機會適當的調整其速度,以使得小車在過彎時不會因為速度過快而沖出軌道。小車偏移量越大,電機輸出功率略小。
3.評測結果
經過調試,小車在直道上的速度可以達到2m/s,在轉彎時速度變為1.5m/s。在選定合適的PID參數后,小S彎道可以近乎直線通過,而在90度彎和連續彎道可以緊貼內道,保證了最優路徑,在長直道入彎時也能做到提前轉彎,基本實現了小車在最優路徑下的高速、平穩行駛。
4.結論
該智能車使用飛思卡爾K60單片機作為核心控制單元,自行設計了采集信號的傳感器,編寫了基于模糊控制和PID控制的程序,最終實現了智能車平穩、快速地尋跡行進。
參考文獻:
[1]高月華.基于紅外光電傳感器的智能車自動尋跡系統設計,2009.
[2]賈勇.基于模糊控制算法的智能車轉向舵機控制,2008.
[3]王祥好.模糊PID算法在智能小車中的研究與應用,2009.
[4]史彬,牛岳鵬,郭勇.飛思卡爾攝像頭智能小車設計及舵機算法優化,2012.
課題項目:
本文為上海工程技術大學科研項目(E3-0502-16-XS01017)、上海工程技術大學創新訓練計劃(E3-0800-16-02056)項目成果。