摘 要:本文主要介紹了基于線性CCD的飛思卡爾智能小車控制系統的軟、硬件設計要點。智能車系統的簡單工作原理是MK60收集線性CCD傳感器返回來的賽道信息,通過相應運算后,軟件判斷其有效性,結合控制算法控制舵機給出合理舵值,單片機再給出合適的PWM波占空比以控制電機轉速。速度控制方面采用一個500線增量式光電編碼器來實時反饋脈沖,利用單片機的脈沖累加器采集速度。經實際場地測試,本智能車系統可以很好的適應大小“S”彎,“十”字交叉和大回環等不同的賽道類型以及不同類型賽道的不同組合。
關鍵詞:飛思卡爾智能車;線性CCD;光電編碼器;MK60
中圖分類號:TP212.14 文獻標識碼:A 文章編號:1674-7712 (2014) 16-0000-01
隨著經濟與科技的快速發展,電子技術和信息技術得到了快速的發展。越來越多的智能技術在汽車上得到運用與發展。因此,智能車成為人們關注和研究的焦點。本文以“飛思卡爾”智能車競賽為背景,著重的介紹了小車控制系統的軟、硬件結構,包括硬件電路的設計與試驗,程序算法的制定與優化等,經過不斷改進、調試與優化,智能車的行駛速度和穩定性都得到了明顯的提高。通過對這種自主循跡的智能車的研究對于促進控制技術、傳感器技術、汽車電子科學技術的發展,起到了很好的促進作用。
一、硬件系統部分
核心控制單元采用飛思卡爾16位單片機MC9S12XS128作為主控制單元,由線性CCD采集道路信息進行路徑識別,并將信號傳輸到單片機,單片機根據檢測信號分別對轉向舵機和驅動電機進行控制,達到智能車的穩定快速的自主循跡行駛。
主要結構:本智能車的系統主要包括主控單元、電源模塊、轉向控制模塊、圖像采集模塊、電機驅動模塊、速度采集模塊,本文著重介紹驅動模塊、測速模塊三個部分。
(1)驅動模塊。智能車采用后輪驅動,由于單片機輸出的脈寬。無法直接驅動B車模提供的直流電機,因此需要驅動電路來驅動電機。本智能車的電機驅動采用H橋電路,如圖1所示,可以方便地實現電機正、反轉和加、減速。采用MOS管作為分立元件搭建H橋驅動電路。經過邏輯設計,可以讓電機處在多種模式下工作,通過在賽道上對智能車試驗,電機的加減速效果很好且很穩定,可以滿足智能車在不同類型賽道上加減速的要求。但是也存在一些不足:驅動電路部分具有很強的熱效應,發熱現象很嚴重。
圖1 H橋驅動電路原理圖
(2)測速模塊。測速裝置在智能車系統中占有非常重要的地位,其要求是分辨能力強、精度高和檢測時間短。從精度要求來看,光電編碼器最為合適,且集成性好,抗干擾能力強。最終采用光電編碼器作為系統的測速模塊。但體積較大,會使車重增加。根據速度控制精度的要求,采用了300線的編碼器。
該編碼器工作電壓為5-12V,有三根引線,其中棕色線接VCC,藍色線接地,黑色線為輸出信號,需要上拉后接入單片機。測速時,通過齒輪與后輪驅動齒輪咬合,后輪一轉動,ECT模塊就在脈沖累加模式下對編碼器產生的脈沖進行累加,而后在一定時長的定時中斷中將脈沖數轉變為后輪轉速。設編碼器采用x齒的齒輪,后輪驅動為y齒,后輪周長為z毫米。在10ms的中斷內,編碼器產生a個脈沖,那么后輪轉速v,見式(1):
v=a*y*z/3000*x (1)
二、軟件系統部分
智能車的舵機轉向以及速度控制算法均采用增量式PID算法。相比于傳統的位置式PID算法,增量式PID算法不易引起積分飽和,因此能獲得更好的控制效果。而且增量式設計只與本次的偏差值有關,與閥門原來的位置無關,因而能快速獲得更精確的調節量。增量式算法中,只計算輸出增量,誤動作時影響小,必要時可加邏輯保護,限制或禁止故障時的輸出,更有效地防止智能車出現系統事故,對智能車起到了安全保護的作用。
我們著重介紹基于CCD的線性循跡算法:由于賽道為白色背景兩邊是黑色邊緣,又在賽道中小S部分增加了虛線,使提取中心線更加的困難。要提取中心線必須先提取賽道邊緣信息,邊緣的提取方法:一是采用跳變法,在二值化后的圖像信息中從中間向兩邊尋找由0到1的跳變點即為白到黑的跳變沿,此算法相對于圖像二值化法較為可靠,抗干擾能力強,但是單片機資源開銷較大,運算時間較長;二是采用跟蹤邊沿檢測法,當找到第一個正確的跳變點后,根據圖像的連續性可預知下一行跳變點的區域范圍并進行搜索,這樣可以大大節省單片機的運行時間,但同時也會丟失許多賽道的寶貴信息,尤其是小S不好處理。經過量的實踐對比,最終選用跳變法。邊緣的提取是由近到遠逐行從中心到兩邊掃描圖像找到黑點并且記錄黑點位置,當在一定范圍內找不到黑點時記為十字交叉或者是小S虛線部分,此時根據上下的賽道趨勢確定邊界的位置并記錄下來,經過仿真可以得到很好的效果。
三、結束語
本文介紹了基于CCD的自主循跡的智能車的一種設計方案。經實踐證明該智能車能夠穩定的運行。但是,還是有很多可以改進的地方。調試整個制作過程中最耗時間的部分。調試人員必須有耐心,細心,積極的記錄有用的數據,以便于分析,這對于提高智能車的性能有很大的好處。
參考文獻:
[1]雷貞勇,謝光驥.飛思卡爾智能車舵機和測速的控制設計與實現[J].電子設計工程,2010.
[2]卓晴,黃開勝,邵貝貝.學做智能車:挑戰“飛思卡爾”杯[M].北京:北京航空航天大學出版社,2007.
[3]劉金琨.先進PID控制MATLAB 仿真(第3版)[M].北京:電子工業出版社,2011.
[作者簡介]朱軍(1992.12-),男,浙江人,本科在讀,信息科學與工程學院,自動化專業。