張瑞森,萬興鴻,高 昕
(成都工業學院,四川 成都 611730)
移動機器人控制技術[1]在近幾年發展迅速,不斷滲入到電力、能源、運輸、工業、農業等多個行業。但是,傳統的工業物流機器人模式的缺陷日益增多,這對農業物流方向上的拓展應用形成了阻礙。為了將導航小車更好地應用到農業物流領域,所以就有了本次設計中的AGV小車綜合系統的研究、設計與實現。
AGV型小車[2-5]是一種可以沿著設置路線行駛的自動導向設備,為了方便實時現場調度,所感知到的信息通常會向計算機傳遞。
在農業大棚的應用場景中,AGV小車用于大棚環境里的對植物的監測和物料運輸。目前市面常見的AGV小車通常只能實現簡單地前后移動與固定軌道上的轉彎,很難滿足復雜的農業大棚環境,且系統不容易低成本重用。
為了解決傳統AGV小車在大棚環境里應用時四向移動能力不能滿足需求的問題,設計了基于麥克拉姆輪的新型AGV運動小車,小車采用麥克拉姆輪,麥克納姆輪具有更強的靈活性,可以實現多方向移動。系統采取多重控制、混合決策的方式,使其更方便、更立體、更精準地判斷方位和自動化作業。
本文結合新的農業應用場景下的自動化物流的全新需求,設計了基于麥克納姆輪的AGV農業物流小車,該系統運用的多重控制、混合決策的技術,不僅能用于農業物流,還有拓展到其他關聯領域的潛力與可能。經比較分析,本次設計的新型小車具有如下的優勢:①小車通過麥輪全驅聯動技術,可以完成任意方向的前進、后退、斜行、本地自由全角度旋轉等運動形態;②小車通過多變量輸入變量控制,控制時會結合紅外、超聲波、無線通信技術等立刻捕獲的當前運動狀態監測來進行調整;③小車具備多模感知的能力,并且小車是一個閉環系統,可以對偏差進行反饋并及時彌補,支持app的遠程控制方式;④小車的感知系統可輕松辨識障礙物、規劃路徑等,它由超聲波、紅外線和監控模塊構成。
系統從上往下分為采集感知層、網絡傳輸層、中間接口層和端側應用層4部分,且每一層涉及的設備、模塊或作用見圖1。

圖1 系統總體構架Fig.1 The overall system architecture
系統以STM32F103C8T6高性能芯片為控制核心,搭載藍牙模塊等用于實現人機之間的無接觸交互,自由完成小車的自動循跡和避障功能時,控制指令下發和運動、反饋信息獲取十分方便。
基于圖1所示的系統架構,最終完成的系統硬件整體設計方案見圖2。從圖中可以看出,小車硬件部分由主控芯片STM32F103 C8T6、超聲波傳感器、紅外線傳感器、電源模塊、藍牙模塊、驅動模塊構成,并且有主控芯片可通過I/O接口和SPI與各模塊緊密相連。

圖2 硬件總體設計圖Fig.2 The overall hardware design
小車整體由主芯片STM32F103C8T6、紅外傳感器、測距傳感器等模塊組成,除此以外,還包括有電機電路,信號模塊,電源模塊,WIFI模塊,藍牙板塊,2個驅動芯片TB6612FNG,麥克納姆輪。要模塊的詳細設計的結果如下。
主芯片原理圖見圖3。從圖3中可以看出,主芯片選擇了32位微控處理器STM32F103C8T6,工作溫度為工業級溫度,可以滿足實際需要,且該款芯片價格低,節省了系統成本,同時也滿足較強的溫度適應性。并且,系統內置高速存儲器,內含晶振器可以為系統提供基本的時鐘信號,外接電機控制PWM,紅外線傳感器等多個傳感器。并且擁有多個IO擴展口,方便使用時擴展。

圖3 主芯片原理圖Fig.3 The schematic diagram of main chip
驅動芯片原理圖見圖4。驅動芯片采用的雙通道電路輸出的直流電機驅動裝置,由東芝半導體公司提供,可以同時驅動2臺電機。使用兩塊驅動芯片就可以滿足同時驅動4個電機。此外,每通道的最高輸出1.2 A電流,電機驅動電壓為4.5~15 V。因為芯片的工作溫度為-20℃~85℃,適應溫度能力強,在工作中無需外加散熱裝置。并且芯片負載能力較強。

圖4 驅動芯片原理圖Fig.4 The schematic diagram of driver chip
藍牙模塊可以與手機能智能終端互動,同時能將互動的信息進一步使用通用同步/異步串行接受/發送器交流給主控芯片。如圖5所示,設計了藍牙模塊接口。這一部分的工作原理是:通過藍牙接收到信號并且將接收到的信號傳給系統和用戶,用戶和系統可以根據返回來的信息對小車的實時環境進行分析從而做出相應的改變和處理。

圖5 藍牙模塊原理圖Fig.5 The schematic diagram of Bluetooth module
基于麥克納姆輪全向控制與多模態感知技術的AGV農業小車的控制策略和軟件設計主要分為:多變量輸入控制策略;模糊PID控制算法;感知與避障算法;小車app輔助控制小車軟件。
多變量輸入控制,見圖6,所謂的多輸入就是采集多種傳感信息綜合應用起來,為協同控制小車運動提供豐富的可利用的環境模型,這些環境信息采集時使用模塊和數據傳送方式如下:①通過紅外傳感器輸出的高低電平和檢測紅外線的有無,檢測小車的前進路線。②超聲波模塊主要實現小車的避障作用,與紅外線傳感器協同合作,高效率的完成小車避障功能。③攝像頭模塊主要完成對小車周圍環境信息的采集,判斷小車的運動狀態,完成實時的控制。④數據傳輸通過藍牙連接,數據傳輸給用戶可以通過app控制。

圖6 多變量輸入控制Fig.6 The multivariable input control
5.2.1 模糊PID控制算法
采用PID算法完成小車的尋跡部分,PID控制方法是控制技術中一項較為重要的控制算法,已經運用到了生活中的各個地方。PID算法簡單,適用范圍廣,P:Proportion(比例),輸入偏差乘以常數。I:Integral(積分),對輸入偏差進行積分運算。D:Derivative(微分),對輸入偏差進行微分運算。

式中:Kp——比例系數;TI——積分時間常數;TD——微分時間常數。
由于小車在運動過程中路線多樣以及情況多樣,采用傳統的PID控制固定控制器參數既不符合實際也不可靠。因此實際實現時,創新地采用模糊PID算法,同時重設計了它的具體參數。現將其算法實施和驗證過程詳述如下。

圖7 模糊PIDFig.7 The fuzzy PID
(1)量化:首先是量化,設定小車的偏移E為-100~100,并將其映射到-6~6,-100就對應-6,而100對應6,量化后E的范圍變成了-6~6,再定義一個當前偏差值與最近一次偏差值的變動值EC。
(2)模糊化:量化完后要對其偏移進行模糊化,這首先確定模糊子集:負大[NB]、負中[NM]、負小[NS]、零[ZO]、正小[PS]、正中[PM]、正大[PB],NB對應-6,NM對應-4,PB對應-6;然后利用三角隸屬度函數求出E和EC的隸屬值,完成這些工作以后進入下一步。
(3)建立模糊PID規則庫,Kp值的選取決定于系統的穩定性和精度要求,對應Kp來說需要讓它的值先大再小最后適當大,調節過程中應注意不要讓系統不穩定;比例調節調整好之后,再利用積分控制消除系統的穩態誤差,對于Ki的值變化的趨勢是需要讓其由小到大變化直到達到滿意的誤差控制效果;最后,對于Kd需要讓它的值適當小一些,一般用于通過調節以補償相位。
(4)最后一步就是進行解模糊和清晰化的過程。根據建立的規則表和隸屬值將其清晰化。以建立模糊控制器參數值KP的清晰化結果為例,其值將由圖8的計算圖來確定。

圖8 模糊控制器參數計算圖Fig.8 The parameter calculation diagram of fuzzy controller
5.2.2 感知與避障算法
進一步地,系統還通過紅外線傳感器,發射紅外線,當紅外線遇到障礙物時被反彈回傳感器,機器做出相關反應完成避障或者其他行動。同時,在空氣中超聲波的速度已知,我們只需要測到超聲波從發射開始到重新接收到信號的時間我們就可以知道距離的長度,完成測距。公式為:

式中:v——超聲波在空氣中的速度,t——測得的時間。
5.2.3 小車app輔助控制小車實現
根據實地情況,小車可以自動運行。但同時,該系統也支持通過小車app對小車進行實時控制,即小車app通過藍牙與小車進行連接,通過靈活的操控實現更復雜的運動,并且把這些自定義的運動記錄下來,可供后續自動控制做參考。設計完成的小車app控制主界面,見圖9。

圖9 小車APP控制主界面Fig.9 The main interface of trolley app control
本文設計了一種基于STM32芯片為主控芯片的農業物流小車,將多傳感器協同、多模態信息利用與模糊PID控制結合在一起,當采用麥克納姆輪的AGV小車機械結構時,多種傳感器協同工作可以提高其工作的穩定性,使期可以運用于更加復雜的環境。采用模糊PID算法進行尋跡并通過仿真驗證其正確性。最后,對小車進行實地的操控,麥克納姆輪可以使小車完成多方位的轉動,效果達到預期。