中圖分類號:TP242 文獻標志碼:A
Design of Intelligent Logistics Robot Control System Based on STM32 Embedded Structure
LU Zhong-ling1,GAO Jin2* ,YANG Jing-chao2 (1.Chongqing College of Mobile Communication,Chongqing 40152o,China; 2.Hebei Jiaotong Vocational and Technical College,Shijiazhuang O5oo35,China)
Abstract:Aiming at the problem of poor control stability of traditional logistics robot control system,a logistics robot control system based on STM 32 embedded structure is designed. In the system hardware, STM32F103 microprocessor with both performance and power consumption is selected. The power module can provide variable voltage for modules with different functions. The communication module chooses LVTTL serial port communication to ensure the stability of signal input and output. The system software selects the multi-task operating system,and an improved A* algorithm is designed to select the best path in the global scope. The experimental results show that the STM32 embedded control system has advantages in communication ability and robot stability control, and the variance of robot operation fluctuation is only 0. 02.
Key words:embedded; logistics robot; control system; microprocessor; multitask operation
0 引言
柱產(chǎn)業(yè)之一,而且現(xiàn)階段物流業(yè)的發(fā)展正朝著大型化、自動化和智能化的方向前進.與傳統(tǒng)人工理貨、出入庫和記賬的方式相比,智能物流機器人的當前物流業(yè)已經(jīng)成為我國國民經(jīng)濟發(fā)展的支引人極大地提升了物流管理的效率.隨著倉儲物流業(yè)管理難度增大和對管理精度要求的提升,對智能物流機器人的控制要求也同步提高1-2」.針對智能物流機器人的控制,文獻[3]設(shè)計了一種基于PID的控制方案,根據(jù)物流機器人運動軌跡的實時數(shù)據(jù)與標準值的比較,進而產(chǎn)生調(diào)整的誤差比例、積分和微分數(shù)據(jù),達到精確控制機器人的目的.PID控制系統(tǒng)的魯棒性和可靠性均較好,但模型的構(gòu)建和參數(shù)的選擇難度較大,導致控制方案無法得到有效推廣.文獻[4設(shè)計了一種基于滑??刂频臋C器人控制系統(tǒng),滑模控制可以應對物流機器人運動中的非線性變化場景,響應更快且對參數(shù)的擾動變化不敏感.但滑??刂圃谡麄€機器人控制過程中容易產(chǎn)生斗振現(xiàn)象,進而影響機器人的運動軌跡和控制精度.文獻[5]設(shè)計了一種基于粒子群算法(particle swarm optimization,PSO)的控制系統(tǒng),PSO作為一種高效的仿生控制算法,在機器人的路徑尋優(yōu)和軌跡選擇方面具有一定的優(yōu)勢,能夠提升機器人的路徑選擇效率.但PSO算法在較為復雜的物流運輸場景下,容易陷入局部最優(yōu)解,進而影響了物流機器人的高精度控制和最優(yōu)路徑的選擇.由現(xiàn)有的智能物流機器人控制系統(tǒng)及控制方案可知,控制芯片的選擇和控制系統(tǒng)的硬件結(jié)構(gòu)設(shè)計,決定了機器人的最終控制效果.為此,本文選擇了綜合性能更優(yōu)的STM32F103芯片,作為物流機器人的主控芯片,核心控制模塊采用了嵌入式的結(jié)構(gòu)設(shè)計,以提升系統(tǒng)的穩(wěn)定性和可靠性.
1系統(tǒng)總體框架結(jié)構(gòu)設(shè)計
基于嵌入式結(jié)構(gòu)設(shè)計的智能物流機器人控制系統(tǒng),主要由下位機層、上位機層和數(shù)據(jù)采集層構(gòu)成,如圖1所示.其中,下位機層主要控制機器人的機械底盤、驅(qū)動系統(tǒng)和機械手系統(tǒng)等驅(qū)動部分,通過接收上位機層的指令,選擇前進的方向、速度或控制機械手的運動軌跡.上位機層是控制系統(tǒng)的核心層,首先上位機層與控制端通過無線網(wǎng)絡(luò)連接進行數(shù)據(jù)交互,向上傳達智能物流機器人當前的位置信息、工作狀態(tài)信息等,同時接收控制端的指令并執(zhí)行新的任務(wù);然后,上位機接收和處理由攝像頭傳感器、位移傳感器、激光雷達、超聲波傳感器采集的信息,來控制機器人的運動軌跡;最后,上位機利用分析處理后的傳感器信息控制下位機層的機器人底盤和機械手等,精確控制機器人的運動.內(nèi)置了STM32F103微處理器芯片的均衡設(shè)計,采用嵌入式的控制模塊結(jié)構(gòu),一方面均衡了性能并降低功耗,另一方面嵌入式結(jié)構(gòu)更容易實現(xiàn)機器人控制系統(tǒng)的集成化和小型化設(shè)計[6-7],能夠更好的協(xié)助對機器人的遠程控制和定制設(shè)計.
2智能物流機器人的硬件設(shè)計
在物流機器人嵌人式結(jié)構(gòu)設(shè)計的理念指導下,對機器人的硬件控制模塊進行了高度集成,其中內(nèi)置控制主板選擇兼容性更好的Atxmega64,能夠?qū)崿F(xiàn)與STM32F103芯片的高效配合.控制系統(tǒng)硬件包括電源模塊、底盤電機控制模塊和傳感器激光雷達控制模塊.智能物流機器人的硬件框圖如圖2所示.
Atxmega64控制板具有高性能、高穩(wěn)定性、低功耗及PCB高度集成化設(shè)計的優(yōu)勢,微控制器和其他控制芯片均采用嵌入式的方式集成于主板內(nèi),便于指令的傳達和各項功能的整合.本文控制系統(tǒng)選擇的STM32F103芯片是一款低功耗、高性能的微處理器,STM32F103選擇了Cortex-M4內(nèi)核,時鐘頻率大于 160MHz ,同時該芯片還支持DSP指令和FPU指令[8].芯片包含64個I/O接口和1M的FLASH閃存,便于臨時存儲相關(guān)的信息,芯片的實物圖如圖3所示.
此外,STM32F103微處理器擁有17個定時器和多樣化的通信接口,包括串口、SPI接口和I2C接口等.電源模塊是硬件控制系統(tǒng)中的重要組成部分之一,本文嵌入式控制系統(tǒng)采用智能化供電模式,即給不同的功能模塊提供不同的電壓.其中,為STM32F103微處理器模塊提供3.3V的電壓,為主板提供 12V 的電壓,為機器人的激光雷達提供 12V 的電壓,為其他傳感器提供 5V 的電壓,為機器人的底盤驅(qū)動系統(tǒng)提供 36V 的電壓.電壓轉(zhuǎn)換裝置是電源模塊的核心組成部分,其電路設(shè)計如圖4所示 (5-36V 之間的轉(zhuǎn)換).
電機控制模塊與STM32F103微處理器連接,并受微處理器的控制.電機控制模塊主要控制底盤電機,如果智能物流機器人具有機械手的抓取、托舉等功能,電機控制模塊同步控制底盤運動和機械手運動.電源模塊要滿足變壓、穩(wěn)壓的不同需要,根據(jù)智能物流機器人當前的狀態(tài)平衡不同模塊的電壓需求.電源轉(zhuǎn)換裝置還具有穩(wěn)壓和自動保護功能,當電源內(nèi)部的溫度過高或電池的電量過低時,電源模塊會向微控制器報警以提示后臺工作人員及時處理.位移和障礙物避碰主要采用帶紅外夜視功能的超聲波傳感器,主要用于感知物流機器人附近的靜止障礙物和移動障礙物,在躲避障礙物的同時選擇最佳路徑.由于采用了嵌入式的結(jié)構(gòu)設(shè)計,各模塊之間的通信和數(shù)據(jù)傳輸時延較短.STM32F103微處理器通過評估電平高低起伏變化,判斷機器人行進路徑上是否有障礙物,感應距離可以根據(jù)需求自行調(diào)整.激光雷達模塊輔助位移傳感器模塊的工作,能夠識別較遠位置的障礙物,獲取障礙物的位置信息輔助設(shè)計智能物流機器人的路徑規(guī)劃.
通信模塊選用了ATK-ESP8266型高性能的WIFI模塊,物流機器人的活動范圍通常在倉儲物流中心,WIFI通信可以實現(xiàn)無死角的覆蓋.WIFI通信模塊選擇MCU設(shè)備和LVTTL串口通信,由電源模塊提供3.3V的電壓.為了方便數(shù)據(jù)的傳輸,該模塊自帶了STA模式和AP模式,可通過構(gòu)建快速串口通信的方式選擇最佳通信模式,并實現(xiàn)通信數(shù)據(jù)的有效共享.其中AP模式可以通過WIFI連接外網(wǎng),而STA模式可以通過本地路由連接到互聯(lián)網(wǎng),定向傳播和共享數(shù)據(jù)[9-10].
3嵌入式控制系統(tǒng)軟件與控制算法設(shè)計
基于STM32F103微處理器的嵌人式機器人控制系統(tǒng)的軟件部分,由多任務(wù)操作系統(tǒng)(real-timeoperation systern,RTOS),用戶接口和通用組件模塊構(gòu)成.RTOS是嵌入式軟件應用的基礎(chǔ)平臺,可實現(xiàn)對各模塊的綜合調(diào)度、協(xié)調(diào)和控制,該操作系統(tǒng)還具有強穩(wěn)定性、可裁剪性、代碼固化、操作簡潔等優(yōu)勢.初始化后先讀取當前時刻的各種傳感器數(shù)據(jù),包括識別當前的坐標和位置信息,位移傳感器信息,激光雷達的信息等.嵌入式控制器結(jié)構(gòu)配備了I2C串行總線和SCL時鐘線,將各個功能納人到嵌人式控制系統(tǒng)之中,基于STM32F103的嵌入式機器人控制系統(tǒng)軟件框架,如圖5所示.
為了更好地與智能物流機器人嵌入式控制系統(tǒng)匹配,在機器人軌跡控制方面本文選擇了A* 算法.該算法是一種啟發(fā)式算法,根據(jù)代價函數(shù)中成本代價最低的方式尋找下一個節(jié)點. A* 算法以機器人的當前位置或出發(fā)位置作為起始點(x0,y0) ,以目的地作為終點 (xe,ye) ,同時選擇和設(shè)定 n 個節(jié)點,作為機器人行進途中的待選擇節(jié)點.先選擇一條最經(jīng)濟的路徑作為初始路徑,根據(jù)該條路徑上的障礙物分布情況和其他機器人的行進狀態(tài),隨時調(diào)整最優(yōu)的行進路徑.總代價函數(shù)f(n) 表示如下
f(n)=g(i)+h(n).
式中: g(i) 表示從起始點到節(jié)點 i(xi,yi) 的代價函數(shù); h(n) 表示從節(jié)點 i 到終點的代價函數(shù).g(i) 和 h(n) 的計算過程如下
考慮到智能物流機器人行進過程中,由于節(jié)點數(shù)量過多容易出現(xiàn)數(shù)據(jù)冗余,存在算法復雜度過高等問題,本文對 A* 算法進行優(yōu)化并對啟發(fā)式函數(shù)進行動態(tài)加權(quán)處理,優(yōu)化的過程如下
式中, h′(n) 表示優(yōu)化后的代價函數(shù),通過引入指數(shù)函數(shù) 對 h′(n) 做變換處理.
式中, 是模型的控制參數(shù),其取值范圍為 [-1,1] .智能物流機器人在改進A* 算法的控制下,其路徑尋優(yōu)的啟發(fā)性會受到指數(shù)函數(shù)
和控制參數(shù) τ 的影響,
表示機器人當前行進區(qū)域與總區(qū)域的比值.當 a 的取值增大時 h′(a,n) 會出現(xiàn)相反的變化趨勢,同時函數(shù)的啟發(fā)性同步變小搜索效率降低;而 Δa 的取值逐漸縮小時函數(shù)的啟發(fā)性增大,智能物流機器人的路徑檢索效率提升.在智能物流機器人躲避障礙物時,本文引入了deepSORT算法多目標尋優(yōu).控制系統(tǒng)根據(jù)激光雷達和位移傳感器采集的信息,整合當前位置信息和最優(yōu)的運動軌跡信息,有效躲避行進路徑中的障礙物.利用馬氏距離描述機器人與前端障礙物之間的位置關(guān)系,機器人當前選擇的前進軌跡 p 和前端距離最近的障礙物 q 之間的關(guān)聯(lián)關(guān)系 σ(p,q) 表示如下
σ(?,q)=(κq-lp)TSi-1(κq-lp)
式中: lρ 表示物流機器人的當前位置; κq 是機器人與最近障礙物之間的外接矩形狀態(tài); Si-1 是平均跟蹤位置的協(xié)方差矩陣.嵌入式控制系統(tǒng)通過綜合評估機器人當前軌跡路徑與最近障礙物之間的協(xié)方差關(guān)系,達到躲避障礙物的目的,同時執(zhí)行改進 A* 算法所選擇的最優(yōu)行進路徑,提升智能物流機器人的工作效率.
4系統(tǒng)測試
4.1 控制系統(tǒng)調(diào)試
實驗用的物流機器人選擇FR-05型輪式物流機器人,采用前驅(qū)后輪轉(zhuǎn)向方式.機器人的三圍尺寸為 1.05m× 0.75m× 0.55m ,內(nèi)部控制系統(tǒng)選擇可拆卸式,可以根據(jù)不同的使用場景選擇不同的控制邏輯和控制模塊.機器人自重為240kg ,最大承載重量為 500kg ,F(xiàn)R-05型輪式物流機器人實物圖,如圖6所示.
機器人的控制系統(tǒng)調(diào)試主要利用多任務(wù)操作系統(tǒng)RTOS展開,采用多個功能模塊陸續(xù)加載的方式,先驗證每個硬件模塊的子程序,再統(tǒng)一調(diào)試智能物流機器人的主控程序.多模塊加載方式的優(yōu)點在于修改子程序不會對主控程序產(chǎn)生影響,而且系統(tǒng)初始化也不需要重啟系統(tǒng),調(diào)試步驟如下.
Step1使用交叉編譯器編寫智能物流機器人的控制程序Makefile文件.
Step2將文件傳輸?shù)綑C器人控制系統(tǒng)中執(zhí)行下列命令:#chmod十x,同時將每個模塊對應的子程序?qū)傩愿臑楫斚驴蓤?zhí)行,
Step3執(zhí)行1 smod 指令并串聯(lián)主動程序,驗證STM32微處理的兼容情況,同時編寫test.c測試程序,并將物流機器人控制系統(tǒng)的占空比調(diào)整到 20%-90% 之間.
Step 4將機器人控制系統(tǒng)每個硬件模塊的子程序調(diào)試完成后,對系統(tǒng)的全部參數(shù)初始化,使控制系統(tǒng)處于待工作狀態(tài).
4.2 測試結(jié)果與分析
控制系統(tǒng)測試環(huán)節(jié)主要圍繞STM32微處理器的嵌入式結(jié)構(gòu)展開,重點關(guān)注控制系統(tǒng)的通信性能、控制精度和物流機器人軌跡尋優(yōu).為了使測試結(jié)果更直觀,引入傳統(tǒng)的PID控制系統(tǒng)、滑模控制系統(tǒng)和基于PSO的控制系統(tǒng)參與對比.實驗中均采用FR-05型輪式物流機器人,分別安裝和調(diào)試不同控制系統(tǒng),采集相關(guān)數(shù)據(jù)并對比.嵌入式系統(tǒng)的優(yōu)勢在于高集成度和高兼容性,本文針對STM32F103微處理器單元進行了優(yōu)化和調(diào)整,包括與Atxmega64主控制板的兼容性調(diào)整,與ATK-ESP8266型高性能WIFI模塊的兼容性調(diào)整等.控制信號的穩(wěn)定輸入和輸出決定了對機器人的控制精度,因此分析了本文嵌入式控制系統(tǒng)的信號輸入穩(wěn)定性及數(shù)據(jù)傳輸?shù)臅r延情況.隨機選擇一段控制系統(tǒng)的信號輸入情況,如圖7所示.
圖7為隨機采集的一組 10s 的通信信號,信號的變化幅度區(qū)間在 ±10 dB之間,并未出現(xiàn)較大的信號波動,信號的穩(wěn)定輸出有助于對智能物流機器人運動軌跡的精確控制.基于STM32嵌入式系統(tǒng)的優(yōu)勢在于控制精度較高,不易受到現(xiàn)場其他干擾源的干擾.在相同的采集周期內(nèi),傳統(tǒng)的PID控制系統(tǒng)、滑??刂葡到y(tǒng)和基于PSO的控制系統(tǒng)的信號輸入情況,如圖8所示.
從圖8可看出,PID控制系統(tǒng)、滑模控制系統(tǒng)和基于PSO的控制系統(tǒng)在1Os的統(tǒng)計周期內(nèi)均出現(xiàn)了信號波動,這種情況的出現(xiàn)會影響到物流機器人控制系統(tǒng)的穩(wěn)定性,同時帶來通信時延.1-10s各算法的通信時延情況,如表1所列.
從表1可看出,基于STM32的嵌入式控制系統(tǒng)各時點間的平均時延為 0.008s ,而三種傳統(tǒng)算法的時延分別為0.091s、0.116s和 0.113s 本文設(shè)計的STM32嵌入式系統(tǒng)具有一定優(yōu)勢.其次,驗證各控制系統(tǒng)對于物流機器人行進穩(wěn)定性的控制.智能物流機器人行進過程中受轉(zhuǎn)向角、偏航角、系統(tǒng)噪聲和通信時延等多重因素的影響,需要對機器人的運行軌跡實施實時糾偏.選取一段 50m 的室內(nèi)路徑,并劃定路徑的中心線觀察機器人的軌跡控制情況和路徑偏差情況,各控制算法的控制結(jié)果圖9所示.具體的偏差數(shù)值統(tǒng)計,如表2所列.
數(shù)據(jù)的波動方差表示物流機器人在運動過程中的移動情況,方差值越小證明控制系統(tǒng)的控制效果越好.從表2可看出,本文嵌入式控制系統(tǒng)的波動方差值僅為0.02,相比其他控制系統(tǒng)具有更精確的控制效果.最后,模擬智能物流機器人真實的工作場景.在4種不同控制系統(tǒng)下,對比完成同一項物流任務(wù)的完成時間和機器人的有效行進距離,統(tǒng)計結(jié)果如表3所列(理論情況下的最佳距離為 105.3m ,理論下最短耗時為 55s)
從表3可看出,本文嵌入式系統(tǒng)的完成時間為123.4s,距離為 63m ,更接近于理論情況下的最優(yōu)值,且優(yōu)于3種傳統(tǒng)的控制系統(tǒng).本文設(shè)計的STM32嵌入式控制系統(tǒng)控制精度更優(yōu),選用改進A* 算法能夠在全局范圍內(nèi),選擇最佳的路徑并有效躲避場地中的靜態(tài)障礙物和移動障礙物.
5 結(jié)語
隨著智能物流機器人應用場景的增多,對機器人的控制精度也提出了更高的要求.為此本文設(shè)計了一種基于STM32嵌入式結(jié)構(gòu)的智能物流機器人控制系統(tǒng),以提升和改善對智能物流機器人的控制精度.在核心硬件方面,選擇了兼顧性能和功耗的STM32F103微處理器,電源模塊、WIFI通信模塊都采用了嵌人式的結(jié)構(gòu)設(shè)計,高度集成化的設(shè)計模式有助于提升機器人的控制精度并改善通信時延.實驗結(jié)果顯示,本文設(shè)計的控制系統(tǒng)在機器人通信信號的穩(wěn)定性控制,物流機器人運行的控制精度和最佳路徑選擇等方面都具有一定優(yōu)勢.
參考文獻:
[1]李橙,衛(wèi)星,周游,等.基于激光視覺引導的智能物流分揀機器人控制研究LJ」.激光雜志,2022(8):217-222.
[2]史宜巧,周湘貞.采用混合方案的移動運輸機器人的定位與跟蹤[J].機械設(shè)計與制造,2022(1):281-285.
[3]司癸卯,曾強,喬桐.基于模糊PID的振搗機器人重心控制系統(tǒng)研究[J].中國工程機械學報,2022,20(3):216-220.
[4」姜穎韜,康升征.智能掃地機器人雙環(huán)積分滑??刂品椒ㄑ芯縖J].機械設(shè)計與制造,2018(5):207-210.
[5]段倩倩,辛紹杰.基于改進混合粒子群算法的機器人軌跡規(guī)劃[J].機床與液壓,2022(17):50-56.
[6]黨選舉,林智武.面向打磨機器人的基于串聯(lián)結(jié)構(gòu)的雙卡爾曼濾波算法[J].振動與沖擊,2023,42(12):220-226.
[7]趙金亮,張小俊,吳亞淇,等.輪足式爬壁機器人的磁吸附結(jié)構(gòu)設(shè)計與優(yōu)化[J」.科學技術(shù)與工程,2022(16):6585-6591.
[8]鄭康,李晨,陳海燕,等.超長指令字DSP標量訪存單元的設(shè)計與優(yōu)化LJ」.計算機工程與科學,2023,45(11):1929-1940.
[9」徐坤,鄭羿,丁希侖.六輪腿式機器人結(jié)構(gòu)設(shè)計與運動模式分析[J].北京航空航天大學學報,2016,42(1):59-71.
[10]薛元洲,楊碩,毛新軍.自主機器人的伴隨觀察模式及其軟件實現(xiàn)框架[J].計算機科學,2023,50(7):1-9.
[責任編輯:陳滿麗]