西北民族大學電氣工程學院 周麟翔 李京昊 唐 媛 胡 俊 岑佳怡 馬旭璇
隨著電子商務的快速發展,為倉儲物流行業帶來了新的需求和挑戰。機器人的研究領域不斷擴展,智能化是機器人發展最重要的方向之一,具有能夠代替人類完成一些工作的機器人往往是我們研究的重點領域。隨著時代發展,為解放更多的勞動力,提高分揀搬運效率,減少生產成本,智能搬運機器人應運而生。為提高分揀機器人的工作效率,本項目設計了一種履帶型底盤和機械臂相組合的智能分揀機器人,并對其程序算法、機械結構進行了研究。本項目使用基于STM32F103ZET6芯片的履帶車模和機械臂,結合語音識別模塊、ZigBee模塊對分揀機器人進行控制和搬運工作。通過巡線的方式將各類物品搬運到相應的位置。語音識別操控系統取代傳統觸式操工作效率,提高了整個系統的便捷性、安全性和準確性,提高了整個分揀過程的效率。
本系統以語音控制的分揀機器人作為研究對象,該分揀機器人使用了以STM32 Cortex-M3為內核的主控芯片,其中采用AS608光學指紋識別模塊、LD3320語音識別模塊、ZigBee無線串口收發模塊、線性CCD攝像頭、0.96OLED顯示模塊等構成的一個完整的智能分揀機器人,圖1為硬件系統設計流程圖。

圖1 硬件系統設計圖
為了保證具體功能的實現,本項目中的分揀機器人使用STM32微控制器對整個機器人進行控制,在系統設置過程中使用到STM32的基本外設功能,例如IO口的使用、PWM波、串口通信、定時器以及定時器中斷等外設。采用了各類模塊,各模塊功能如下:通過指紋識別模塊對分揀機器人進行啟動控制;使用語音識別模塊對分揀機器人的動作等進行控制;通過ZigBee模塊將語音指令傳輸到單片機主控板上,從而達到控制機器人的效果;通過指令信息采用攝像頭模塊及光電傳感器等對運輸路線進行巡線。
在系統設計過程中,系統的主控處理器采用的是STM-32F103ZET6核心板,該核心板是嵌入式-微控制器常見的控制器,其內核是Cortex-M3。該芯片可工作在40~85℃的環境中,具有很強的環境適應性。芯片中集成了定時器、串口等功能。在STM32核心模塊上可從各個模塊采集相對應的值,進而控制整個機器人工作過程中的具體功能。
在系統設計過程中,為了保證機器人的安全,使用了光學指紋識別模塊。在項目中采用指紋識別模塊型號是AS608,在項目中主要實現對于機器人工作狀態的開關狀態。該模塊在3.0~3.6V的工作電壓下工作,模塊通訊接口為UART和USB通訊接口,內置各種指紋特征采集算法,可以非常快速的保存和識別指紋。
在本項目中,使用了線性CCD模塊,主要是為了使機器人能夠準確的循跡指定路線。采用的是TSL1401線性CCD模塊,CCD模塊的特點是以電荷作為信號,而非電流或電壓。TSL1401CL模塊含有128個感光單元,呈線性排列,每一個感光單元可以讀取環境的光線強度并轉換為電壓輸出,光線越強電壓值越高,因此可以通過單片機的ADC依次采集每個感光單元的電壓值(共128組)并存在數組中。每個像素所采集的圖像灰度值與它所感知的光強和積分時間(即曝光時間)成正比。線性 CCD具有高線性、均勻性和寬動態范圍、低圖像滯后等優點,前瞻最遠可達1.2m。具體流程如圖2所示。

圖2 線性CCD模塊工作原理
語音識別模塊采用了集成通過STC11L08XE的單片機做的一些指令、數據處理,相比于其他的LD3320的模塊,其操作更加簡單,用戶不需要進行太多的編程,直接串口發送指令設置關鍵詞即可識別。該模塊是支持三種識別檢測模式的,即:循環檢測模塊、口令檢測模式和按鈕檢測模式。在本項目中,我們使用的是“口令檢測模式”,所謂的“口令檢測模式”,就意味著我們先要對上口令,才能夠進行下一步操作。
在本項目中搬運部分采用的是履帶式小車和機械臂的組合,主要為將物體夾起,并且運輸到指定的位置。履帶式小車對于地面的接觸面積大,從而減小對地面的壓力,對地面的附著能力強,行駛過程中相對比較穩定,能夠很好的適應生活中的各種復雜地面,穩定的底盤為抓取物體提供了比較好的選擇。履帶式小車上安裝的機械臂是通過各個舵機組成的系統,可以自由并且靈活的抓取物體,但是對于舵機的控制難度相對比較大,考慮到抓取物體的精準程度,在保證靈活性的前提下,選擇了盡可能小的自由度。除了上述功能和硬件結構,智能機器人還可以聽從操作員的命令并執行相應的功能,基本實現物體的定位、定位和爬行。針對調試過程中遇到的問題和無法解決的技術難題,我們將繼續進行深入的探索和研究,不斷改進和完善項目,爭取取得最佳效果。
在系統設計過程中,采用的ZigBee無線通信模塊,主要是為將STC11L08XE單片機和STM32F103ZET6單片機進行無線通信。Zigbee無線通信需要高頻的載波來提供發射效率。Zigbee模塊之間要想正常的收發數據,接收模塊必須把接收頻率和發射模塊的載波頻率設置一致。在項目中采用的是CC2530芯片的ZigBee無線串口收發模塊,該模塊的頻率可達2400~2450MHZ,通信距離高達250m,工作電壓為3.0~5.0v。兩個單片機通過串口與ZigBee進行通信,將數據無線發送至另外一端,誤碼率低。
在本項目中采用的編程語言是C語言通過在MDK keil5中編寫程序。Keil5編譯器功能十分強大,可通過C語言對STM32系列的微控制器進行驅動,并且可支持軟件仿真,通過軟件更好的了解項目設計中存在的問題,避免對硬件的傷害,同時對于我們在調試程序過程中的幫助也非常大。項目中的控制程序相對比較多,在開發過程中可采用模塊化編程,將不同模塊的初始化以及驅動的整個過程封裝在.c文件中,然后在主程序main.c文件中引用相當于.c的文件即可調用,各模塊中的函數在相當于的.h文件中聲明。總的來說,模塊化的實現方法:將一個功能模塊的代碼單獨編寫成一個.c文件,然后把該模塊的接口函數放在.h文件中。模塊化編程的好處是提高了維護的便捷性,容易區分邊界,一旦出了問題,能立刻定位是哪個模塊出了問題等。此外,本項目中使用到IO口復用、IIC、SPI、USART、定時器以及定時器中斷等外設,這些功能的使用也是項目功能完成的前提,特別是串口資源的分配與使用,因為大多數模塊都要用到串口通信,解決好這一問題是模塊功能能夠順利實現的基礎。
結語:本項目研究的“語音控制分揀機器人”對于分揀行業具有一定的實用性,具有很大的社會利用價值,在調試過程中仍有部分功能不完善;同時,其并沒有進行大范圍投入使用以觀看項目使用效果,因此還需要進一步的研究和實踐。基于STM32微處理器的語音控制分揀機器人,采用語音識別等技術,通過各類傳感器實現分揀機器人的各類具體的功能。通過指紋等技術保障機器人的安全,提高了分揀效率。