林建勇
(山東理工大學,山東 淄博255000)
隨著物聯網技術迅速發展,在傳感器技術以及智能信息技術的推動下,無人搬運車已經逐漸在物料搬運市場普及,智能物料搬運車在倉儲業和物流行業占據了非常重要的地位,通過RFID 技術與傳感器技術相結合,可以實現倉儲環境智能化,從而更好地進行商品和物品調配與管理[1]。AGV 物料搬運車作為典型的智能物流系統,在工作效率、精準搬運、智能規劃方面均發揮著人工作業無法比擬的優勢[2]。為了更好地適應工業自動化過程中的物料搬運系統的工作情況,設計了基于STM32 單片機的智能搬運工程車。
在傳統企業中,機械性、重復性抓放工作由大量人工完成,不僅給工廠帶來了巨大的人工管理成本,還難以保證工作的可靠度。智能搬運工程車主要是實現物流系統中最基本的裝卸搬運工作,可以充分地利用工作環境,大大提高物流搬運能力以及工廠內部的搬運、制造與物流系統之間的自主搬運能力[3]。智能搬運工程車可以實現按照規定路線自主前進,自主識別不同種類的物料顏色,并按照物料顏色不同將物料搬運至相對應的不同區域,搬運全程無需人工操作,通過對于不同顏色的物料搬運用以模擬工業自動化生產中的物流搬運系統, 該智能搬運工程車的系統設計可以良好完成路線的循跡、物料的抓取、物料的識別以及搬運工作。

圖1 智能光電搬運工程車硬件結構圖
智能物料搬運工程車設計主要是使用基于Cortex-M4 內核的STM32F427 系列單片機、M2006 P36 直流無刷減速電機、C610 無刷電機調速器、24V 電源管理模塊、數字量灰度傳感器、TCS3200D 顏色識別傳感器、MG995 金屬標準舵機等。其硬件系統連接結構圖主要如圖1 所示。
智能物流搬運工程車的主控制器采用STM32F427IIH6 型號單片機,其擁有豐富的外部拓展接口,具有16 路PWM 輸出接口和CAN1 與CAN2 兩路CAN 通訊接口,板載陀螺儀姿態傳感器并配備有3 路12V 電源輸出接口,一個OLED 顯示屏接口,4 路可控電源輸出接口,供電通過XT30 接口采用24V 電源管理模塊進行供電。顏色識別系統是依靠TCS3200D 顏色識別傳感器,TCS3200D 采用3-5V 電源供電方式,可由主控制板的PWM輸出接口進行顏色識別系統的電源供電,擁有抗光干擾電路設計,可以輕松識別物料顏色;路線規劃系統采用數字量灰度傳感器,數字量傳感器擁有更高的精確度和靈敏度,可以輕松實現物料搬運工程車的路線循跡以及精準停車;機械抓取系統通過金屬標準舵機進行精確位置控制,通過機械結構設計可以實現物料的抓取和放置;工程運動系統采用的是無刷直流電機,由C610 無刷電調驅動,M2006 無刷直流電機內置位置與速度傳感器,可以精準反饋工程車當前的位置和速度信息,通過軟件PID 算法可以實現搬運車位置系統的精準控制,該款電機由FOC 矢量控制技術控制扭矩,配以36:1 的減速箱,可以保證產生連續合適的扭矩。
硬件系統可以整體分為輸入系統與輸出系統兩大部分,輸入系統是由顏色傳感器和數字量灰度傳感器分別提供物料顏色信息和地面軌跡信息,信號輸入到STM32 主控制器,由程序邏輯和算法分析進行計算,最后輸出到輸出系統,機械抓取通過PWM信號驅動數字金屬標準舵機控制物料的裝載和放置,工程運動系統通過CAN 連接的通訊方式,由主控制器控制。
智能搬運工程車的輸入系統由顏色識別和路線規劃兩部分組成。顏色識別主要是利用顏色傳感器進行顏色識別,其識別原理主要是通過三原色感應原理,利用顏色濾波器,設置只允許特定的原色通過,便可以分別得出紅色光、藍色光、綠色光的光強值,利用這三個光強值進行算法程序分析,便可以得到投射在顏色傳感器上的不同色光[4]。但由于工作環境與光線強弱程度的不同,白色光的三原色含量也是不同的,所以在運用顏色傳感器進行顏色識別的前提是要確定好紅色、綠色和藍色濾波器的參數值,也就是常說的白平衡,可以在顏色傳感器啟動前放置一個白色物料,通過程序設計便可以自動設置濾波器的三個參數。路線規劃系統主要是依靠數字量灰度傳感器,通過采用多路數字灰度傳感器嚴格卡點路線的特征值,利用不同路面對于光線的顏色發射程度不同進行路線軌跡探測和規劃[5],數字量灰度傳感器通過發光二極管發出白色光照射在檢測路面上,通過不同路線的反射不同,光敏電阻檢測光強信號得到可識別的數字信號,進而通過單片機數字信號輸入端發送到STM32 主控制器,由算法程序進行路線分析。
智能搬運工程車的輸出系統包括物料抓取系統與工程運動系統。物料抓取系統由數字金屬標準舵機構成,通過對STM32 單片機編寫程序,利用分時復用的方式向金屬舵機發送PWM波,利用有效的脈沖信號可以使得輸出不同的脈沖寬度,在動力源的驅動下進而可以控制數字金屬舵機達到不同的目標角度[6]。舵機的工作速度在于STM32 單片機發送的周期內的高低占空比的比例,利用合理的機械結構設計配合精準的數字舵機PWM角度控制便可以實現物料的抓取與拆卸。工程運動系統主要是通過對無刷直流電機的位置控制與速度控制實現智能搬運工程車的前進與后退以及轉向操作。利用PID 控制算法對電機進行精準的反饋控制,可以實現搬運工程車迅速循跡以及在達到目標位置時的精準停車,精準停車技術是對于可以精準放置物料的嚴格技術要求。
智能搬運車的主控制器是STM32F427 系列的單片機,主要通過keil 5 軟件,利用基于C 語言的單片機編程語言進行編程。其程序流程框圖主要如圖2 所示。

圖2 整體程序流程框圖
整車程序是采用基于C 語言的單片機程序編寫,利用FreeRTOS 嵌入式實時操作系統,分別編寫了顏色識別程序任務,路線循跡任務以及物料抓取任務。FreeRTOS 嵌入式操作系統是一個輕量級系統,其功能包括任務管理、時間管理、內存管理等,可以滿足嵌入式控制系統的開發需求,FreeRTOS 操作系統可以輕松移植到ARM、MSP430、AVR 等多種微處理器[7]。整車程序首先進行控制系統的初始化,包括數字量灰度傳感器的啟動、顏色傳感器的初始化與白平衡、無刷直流電機的啟動等。初始化任務完成之后,進入輸入系統的顏色檢測任務與路線檢測任務,路線檢測任務通過灰度傳感器對于不同路面路線的反饋,進而調用不同的路線處理函數,當檢測到路線信息時,主控制器便會通過CAN 通訊接口發送控制信號,驅動運動系統在C610 無刷電調的調制下進行位置和速度的輸出。當搬運工程車遇到物料時,其顏色檢測任務便會檢測到不同色光的信號輸入,通過數字輸入I/O 端口反饋給主控制器,主控制器根據白平衡顏色濾波器設置的三個參數辨別不同顏色并調用相應的顏色處理函數,進而輸出到機械抓取系統。STM32 主控制器通過控制PWM的信號輸出控制舵機的旋轉角度,最終抓取到相應的顏色物塊。當運動系統檢測到抓取顏色所對應的目的地時,通過閉環PID 算法進行精準停車并由抓取控制系統把物料精確放到目的地。
為了能夠精確確定無刷直流電機的速度和位置信息,確保物料搬運工程車能夠精確停到響應的目標位置,本車的運動控制算法部分采用控制算法中常用的數字PID 閉環算法。相較于開環控制系統,閉環控制系統的機械特性與控制特性將大大得到提高。理想空載時,閉環系統的靜差率要比開環控制系統小得多。PID 調節算法是閉環控制算法中最為常用的算法之一,其離散形式的數學表達式[8]為:

圖3 PID 控制算法結構圖

其中:Kp為PID 調節器的比例部分系數,Ki為PID 調節器的積分部分系數,Kd為PID 調節器的微分部分系數,P(k)為系統的輸出,e(k)與e(k-1)分別為第k 次和第k-1 次時的誤差值。比例環節的作用主要是針對于系統的瞬態偏差,比例系數越大,控制作用越強;積分部分環節的作用是消除靜態誤差,但是也會降低整體系統的響應速度;微分環節的作用是阻止偏差的變化,主要是為了克服較大的震蕩,但微分不易過大,因為其對于干擾的響應較為敏感,不利于最后的控制綜合特性。無刷直流電機的控制結構框圖如圖3 所示。
首先設定好無刷直流電機的目標速度值,通過M2006 無刷直流電機的內置傳感器解算出當前的實際速度,并將當前的實際速度反饋到STM32F427 主控制器,由目標速度和實際速度,通過PID 控制算法便可以得到控制無刷直流電機的目標電流值。PID 控制算法在路線循跡與停車卡點方面發揮著重要的作用。
本文設計了基于STM32F427 的智能光電搬運工程車,傳感器均是采用光電式傳感器。設計成本較低,通過顏色傳感器確定目標顏色,數字量灰度傳感器確定路線軌跡,并對運動控制系統進行PID 算法優化,可以實現全自主地智能識別并搬運物料,具有良好的工業應用價值。