王 健,許志鴻,武 政,高 靖,王聰偉
(1.內蒙古農業大學機電工程學院,內蒙古 呼和浩特 010018;2.中國鐵路呼和浩特局集團公司車輛部,內蒙古 呼和浩特 010053;3.內蒙機械動力研究所,內蒙古 呼和浩特 010010)
循跡小車是一個集環境感知、規劃決策、自動行駛等功能于一身的光機電一體化系統,它集合了傳感器、信息處理及自動控制等技術。如今,隨著國內外各種智能小車大賽的火熱舉行,各高校對其展開了深入廣泛的研究,同時也是對單片機課程的繼續學習和應用強化。
循跡小車的布局滿足以下條件:(1)為使小車有優良的加減速度性能,應使小車的質量較小;(2)為使小車的結構簡單,采用單個萬向輪代替傳統小車前輪;(3)為有良好的視野,攝像頭支架應固定在小車前端;(4)為降低重心,攝像頭的支架應在滿足視野的要求下,取最小高度;(5)為平衡前后重心,小車的電池應盡量放在小車后端,同時為降低重心,應將電池固定在滿足結構要求的最低位置。
系統的硬件電路包括主控模塊、視覺傳感器、電源模塊、動力驅動模塊和顯示模塊,系統設計方案框圖如圖1所示。

圖1 系統設計方案框圖
主控模塊選用單片機STM32F系列作為控制芯片,并由晶振時鐘電路和按鍵復位電路組成單片機最小系統,如圖2所示。
設計中選用可多次循環充電的電池供電,并具有電池電壓測量功能。通過穩壓電路的轉換為電機驅動芯片供電,為CCD攝像頭TSL1401CL提供5V電壓,并為單片機和OLED液晶顯示屏提供3.3V電壓,電路如圖3、圖4所示。

圖2 單片機最小系統

圖3 穩壓電路

圖4 電池電壓測量電路
視覺傳感器選用型號為TSL1401CL的CCD,具有信號傳輸零丟失、噪點較小、感光度較高等特點,實物及接口電路如圖5所示。

圖5 TSL1401CL型CCD及接口電路
動力驅動模塊由電機及驅動組成,電機采用霍爾編碼器,型號為TB6612FNG。霍爾編碼器能夠將角位移的信息轉換成具有一定特性的電數字脈沖信號,測量出位移或速度信息,如圖6所示,其接口電路如圖7、圖8所示。

圖6 霍爾編碼器示意圖

圖7 霍爾編碼器接口電路1

圖8 霍爾編碼器接口電路2
電機驅動采用A4950,通過脈寬調制控制電機,其接口電路如圖9所示。

圖9 電機驅動接口電路
顯示模塊由OLED顯示屏實現,主要顯示電池電量、運行速度等信息,其接口電路如圖10所示。

圖10 顯示屏接口電路
系統流程如圖11所示。初始化完成后,CCD開始采集賽道二維圖像信息,并進行圖像處理。通過霍爾編碼器獲取小車當前的速度并反饋給單片機,由增量式PID調節器控制電機,從而實現對小車速度的控制。

圖11 主程序流程圖
對攝像頭采集的圖像采用數字圖像處理方法,獲取黑色賽道信息,實現機器視覺小車的導航功能,算法流程如圖12所示。

圖12 導航算法流程圖
攝像頭采集的圖像經二值化、取反及閉運算后的效果如圖13所示。從圖13中可以看出,賽道信息能夠準確地被提取。

圖13 賽道圖像處理效果圖
利用PID控制可以實現循跡小車的快速平穩運行。通過PID的三個環節,可對偏差信號進行反饋、處理和修正,以此提高運行速度,縮短系統的響應時間從而提高小車的靈敏度。PID形象表達如圖14所示。

圖14 PID形象表達
電機采用模糊控制算法,根據輸入偏差和變化量的大小建立適當的模糊規則表,使直道輸出高速度,轉彎迅速減速,出彎后再加速,解決了二次曲線出彎沖出賽道的問題,再配合經典的增量式PID控制電機轉速,實現了小車的速度控制,并具有良好的控速性能。
基于機器視覺導航的循跡小車實物如圖15所示。通過對硬件的測試,小車已能通過CCD攝像頭進行導航,測試中采用辨別率高的黑白賽道,即以白色的A4紙為底襯,在A4紙中央貼上12mm寬的黑色PVC絕緣膠帶。賽道是由兩條平行的長為1100mm的黑色PVC膠帶和兩個半徑大約為600mm的半圓拼接而成。循跡小車在賽道上的行駛情況如圖16、圖17所示,機器視覺小車的主要參數如表1所示。

圖15 基于機器視覺導航的循跡小車實物

圖16 循跡小車直道行駛

圖17 循跡小車轉彎行駛

表1 機器視覺小車參數表
基于機器視覺導航的循跡小車采用單目CCD實現了賽道信息的采集,運用雙峰法動態閾值和多點平均動態閾值分割出賽道和背景信息。基于模糊控制算法,再配合經典的增量式PID控制電機轉速,使直道輸出高速度,轉彎迅速減速,出彎后再加速,解決了二次曲線出彎沖出賽道的問題,實現了小車的速度控制。為了使小車結構簡單和轉向靈活,采用單個萬向輪代替了傳統小車前輪。