鄧峰
(1.武漢軟件工程職業學院,湖北武漢,430205;2.武漢廣播電視大學,湖北武漢,430205)
在以往的各種競賽中,多次出現要求實現小車進行高速循跡,識別、越過障礙物的命題。通常采用的辦法為,通過運算放大器采集光電反射式傳感器信號,以識別小車相對于循跡線的位置,并將此信號進行放大,再通過單片機和驅動電路直接反饋給電機進行速度補償。此辦法雖成熟,但對于底盤需要轉向的任務而言,無疑耽誤了非常多的時間,而且該方法無法克服地面反射物不均產生的干擾。因此本文設計了一種基于PID算法的高速循跡麥克納姆輪底盤[1],該麥輪底盤可以在底盤朝向不變的情況下輕易完成各種路線的巡線以及避障功能,且采用灰度傳感器差值補償速度的算法,能使巡線過程更加平滑。
光電反射式傳感器主要由光電發射和光敏接收器件并排組成,在被測物體反射光線后,接收端的輸出經過后級電路調理后可以得到放大的電壓。根據使用目的的不同,調理過后的電壓可以有數字電平和模擬電平之分。在本例中,我們使用了輸出量為模擬電平的反射式傳感器,俗稱灰度傳感器[2]。

圖1 灰度傳感器的原理
循跡底盤上灰度傳感器的分布有很多種方式,其中一種如圖2所示。我們以黑色代表軌跡顏色,即其反射率相較非軌跡而言較小。在巡線過程中,當灰度傳感器1壓線時,其反射信號會立即減小,此處通過主控板輸出信號讓車向左側行駛,傳感器由此脫離巡線軌跡。若灰度傳感器2壓線時,主控會輸出信號讓車向右行駛,以此確保車體始終處于巡線軌跡上。

圖2 灰度傳感器兩端分布
另外一種傳感器分布如圖3所示,將灰度傳感器分布在巡線軌跡內,一旦有傳感器移動到尋跡軌跡外,其反射會增強導致其輸出信號發生變化,主控會根據傳感器狀態及時對運動軌跡做出調整。使用該方法時需要注意對左右兩個傳感器進行光信號隔離,否則可能有一側光線對另外一側產生干擾。亦可以通過軟件算法對兩側傳感器取差值,根據其正負范圍進行循跡判斷。
實際使用中,也可以將這兩種方式結合起來進行循跡傳感器分布設計。

圖3 灰度傳感器居中分布
Mecanum輪是瑞典麥克納姆公司的專利,其一般由呈放射狀的金屬外輪轂和與輪軸呈45°夾角安裝的可自由轉動的輥子裝配而成,如圖4所示。

圖4 麥克納姆輪結構
麥輪的驅動方式為全驅,即所有的輪子均為主動輪。當輪轂向一個方向轉動時,與地面接觸的輥子與地面產生摩擦,且摩擦力和輪轂行進方向相反,即摩擦力會阻止麥輪輪轂的轉動。此摩擦力可以分解成沿輥子周向力(F滾)和輥子軸向力(F軸)兩個分量。其中軸向力作用于輥子側邊的輪轂,由于輪轂整體和電機、底盤連接,進而轉變成整個總成的沿輪轂軸向的力。而作用在輥子上的周向力只能使輥子發生被動自轉,其受力分析如圖5所示,其中橢圓虛線框即為和地面接觸的輥子方向。因此電機輸出的扭矩,一部分成為輥子的轉矩,這部分對于運動沒有貢獻。另一部分則使整個麥輪總成發生轉動,讓底盤獲得輪轂徑向以及軸向運動速度。而此處的軸向力,正是讓麥輪底盤具備多種運動形式的基礎。

圖5 麥輪運動時的受力分析
利用四個麥輪構成如圖6所示底盤,在此種驅動方式下,四個麥輪總成所受摩擦力的前后分量方向相反進而抵消,因此底盤沒有前進或者后退的運動趨勢。而所有輥子所受的軸向力合力方向向右,底盤在此力的作用下會獲得向右運動的加速度。

圖6 平行右移時麥輪底盤受力分析
在圖7中,給出了麥輪組在不同速度方向組合下轉動時的車體運動狀態。其中箭頭方向為輪轂運動方向,也即輥子所受摩擦力的方向。其他運動狀態可由類似受力分析得到,此處不再贅述。

圖7 不同麥輪運動組合下底盤運動狀態
由于場地表面粗糙度和底盤懸掛、麥輪損耗的差別,速度閉環麥輪底盤未必能完成固定軌跡的巡航任務。而采取根據實時狀態調整麥輪速度補償的方案,反而有利于完成循跡工作。因此設計整體思路如下:底盤正常行進時,當左右灰度傳感器的差值到達一定閾值后,將其差值送入PID運算器,并將PID計算結果返回給麥輪驅動器進行轉速補償,由此可以在不影響整個底盤朝向的情況下完成尋跡過程[3],車體無需提供轉向速度分量而維持高速運行。當左右傳感器差值到達閾值,但是經過延時后此差值再次低于閾值,可以認為這是由于地面反射程度差別導致的誤差,應將其濾除。設計該閾值的好處在于,針對不同反射情況的地形,可以設定不同閾值以消除反射差別造成的影響,或者可以通過減小該閾值以提高循跡靈敏度。其程序設計流程圖如圖8所示。

圖8 基于PID算法的速度補償程序流程
部分源代碼:




本系統采用了基于PID算法的電機速度補償方法,灰度傳感器差值可以設定為到達或者低于某個閾值后,再將其進行PID運算得到麥輪速度補償值。由此可以克服地面反射情況不均造成的誤判斷,實現了高速巡線麥克納姆輪底盤的驅動。今后可以結合電機編碼器、陀螺儀或者激光雷達,對麥輪速度進行閉環控制,以實現更復雜的運動方式。