楊旭 季嫣然 郭守娜 林希寧
摘? 要:為了提高倉(cāng)儲(chǔ)物流自動(dòng)化與智能化水平,達(dá)到物流搬運(yùn)行業(yè)提高工作效率與減少生產(chǎn)成本的目的,著力于設(shè)計(jì)一套基于STM32的智能物料搬運(yùn)控制系統(tǒng),使機(jī)器人實(shí)現(xiàn)行進(jìn)控制、循跡定位、顏色及二維碼識(shí)別、物料抓取與精準(zhǔn)碼垛等功能。根據(jù)設(shè)計(jì)需求進(jìn)行分析,文中明確了物料搬運(yùn)機(jī)器人的開發(fā)功能,將機(jī)器人設(shè)計(jì)劃分為結(jié)構(gòu)設(shè)計(jì)、電路設(shè)計(jì)、控制系統(tǒng)、視覺(jué)檢測(cè)四個(gè)部分。為智慧物流加工行業(yè)解決人工勞力搬運(yùn)分揀以及低智能機(jī)器低速低效搬運(yùn)碼垛的問(wèn)題提供了一種可行方案。
關(guān)鍵詞:STM32;物流搬運(yùn)機(jī)器人;循跡定位;物料抓取
中圖分類號(hào):TP212;TP311 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):2096-4706(2023)10-0154-04
Abstract: In order to improve the automation and intelligence level of warehousing and logistics, and achieve the purpose of improving work efficiency and reducing production costs in the logistics and handling industry, this paper focuses on designing a set of intelligent material handling control system based on STM32, so that the robot can realize the functions of travel control, tracking positioning, color and two-dimensional code recognition, material grabbing and accurate palletizing. Make an analysis according to the design requirements, this paper clarifies the development function of material handling robots, and divides the robot design into four parts: structural design, circuit design, control system, and visual inspection. It provides a feasible solution for the intelligent logistics processing industry to solve the problems of manual labor handling and sorting, low-speed and inefficient handling and palletizing of low-intelligent machines.
Keywords: STM32; logistics and handling robot; tracking positioning; material grabbing
0? 引? 言
隨著物流裝備技術(shù)的逐漸成熟,物料搬運(yùn)技術(shù)也逐步向智能化方向發(fā)展[1]。在國(guó)家經(jīng)濟(jì)保持穩(wěn)定發(fā)展的趨勢(shì)下,政府出臺(tái)了“中國(guó)制造2025”等一系列產(chǎn)業(yè)振興政策,物料搬運(yùn)在設(shè)備智能化、自動(dòng)化發(fā)展環(huán)境中擁有不可忽視的競(jìng)爭(zhēng)力。目前在很多實(shí)際生產(chǎn)加工過(guò)程中,物料搬運(yùn)仍舊采用人工方式,即便裝備了智能機(jī)器,搬運(yùn)效率依舊耗費(fèi)大量成本,無(wú)法達(dá)到預(yù)期的智能化水平。為此,通過(guò)模擬實(shí)際物料搬運(yùn)場(chǎng)景[2],本文提出了智能物料搬運(yùn)機(jī)器人的解決方案,通過(guò)對(duì)機(jī)械結(jié)構(gòu)、硬件電路和控制系統(tǒng)的設(shè)計(jì),應(yīng)用視覺(jué)檢測(cè)和定位技術(shù),構(gòu)成了具有自主移動(dòng)、路徑規(guī)劃、物料抓取與智能碼垛功能的搬運(yùn)機(jī)器人,該設(shè)計(jì)方案對(duì)提升物料搬運(yùn)技術(shù)的智能化水平具有重要意義。
1? 問(wèn)題提出
1.1? 模擬作業(yè)環(huán)境描述
如圖1所示,模擬工廠為邊長(zhǎng)2.4 m的正方形,內(nèi)設(shè)休息區(qū)、任務(wù)區(qū)、物料區(qū)、加工區(qū)、成品區(qū),地面由經(jīng)緯線劃分,便于機(jī)器人循跡。為了模擬工件和易于教學(xué)實(shí)驗(yàn),將物料簡(jiǎn)化為圓柱或長(zhǎng)方體,可由3D打印完成,顏色分別為紅、綠、藍(lán),不同顏色代表不同材質(zhì)、不同用途的物料。
1.2? 機(jī)器人作業(yè)要求
機(jī)器人搬運(yùn)物料的全過(guò)程采用自主導(dǎo)航模式[3],其工作流程為:機(jī)器人自休息區(qū)出發(fā),依次循跡至物料區(qū)和任務(wù)區(qū),并通過(guò)圖像識(shí)別模塊識(shí)別任務(wù)二維碼、物料顏色和物料當(dāng)前位置順序;根據(jù)任務(wù)要求,機(jī)器人在物料區(qū)和加工區(qū)之間往返,將物料搬運(yùn)至加工區(qū);之后,在加工區(qū)和成品區(qū)之間往返,最終將物料全部搬運(yùn)至成品區(qū);搬運(yùn)任務(wù)完成后,機(jī)器人自動(dòng)返回休息區(qū)。
2? 系統(tǒng)設(shè)計(jì)方案
2.1? 結(jié)構(gòu)設(shè)計(jì)
機(jī)器人的設(shè)計(jì)包括結(jié)構(gòu)設(shè)計(jì)、電路設(shè)計(jì)、控制系統(tǒng)、視覺(jué)檢測(cè)四個(gè)部分,只有把這四個(gè)部分互相融合才能實(shí)現(xiàn)機(jī)器人的全部功能。機(jī)器人整體結(jié)構(gòu)包括底盤、儲(chǔ)物模塊和抓取模塊,整體結(jié)構(gòu)圖如圖2所示。其中,抓取模塊由絲桿、云臺(tái)電機(jī)和舵機(jī)組成,絲桿上部配置2006減速電機(jī)控制絲桿轉(zhuǎn)動(dòng),配合滑軌控制機(jī)械手爪上下移動(dòng);絲桿底部云臺(tái)電機(jī)6020控制抓取模塊整體旋轉(zhuǎn)。底盤選用麥克納姆輪。儲(chǔ)物模塊設(shè)計(jì)成圓弧走向的3個(gè)圓柱筒,用來(lái)臨時(shí)存放物料。
機(jī)器人的底盤裝有4個(gè)減速電機(jī)[4],底盤設(shè)計(jì)圖如圖3所示,地盤由底板和兩個(gè)凹槽組成,電機(jī)支架放置于底板4腳,前后左右四個(gè)方向有放置循跡傳感器的螺絲口。前部分圓柱形凹槽用于放置和固定云臺(tái)電機(jī),凹槽設(shè)計(jì)圖如圖4所示,后部分T型凹槽用于集中和放置線材,電機(jī)驅(qū)動(dòng)器和電池等元件。
抓取臂末端放置兩個(gè)舵機(jī),如圖5所示,分別控制爪子和OpenVMS抬起與平放,以及爪子的打開與抓取。通過(guò)爪子的抬起能夠使OpenVMS識(shí)別前方或爪子底部的畫面,減少視覺(jué)盲區(qū),增加識(shí)別準(zhǔn)確性。
2.2? 機(jī)器人電路設(shè)計(jì)
該控制系統(tǒng)硬件電路結(jié)構(gòu)如圖6所示,機(jī)器人通過(guò)4組安裝在底盤四周的灰度傳感器進(jìn)行空間范圍的位置識(shí)別,實(shí)現(xiàn)定位效果,并對(duì)地面十字形交叉的黑線進(jìn)行精確檢測(cè),在交叉路口進(jìn)行計(jì)數(shù)與定位,同時(shí)配合陀螺儀進(jìn)行行走矯正和位置反饋。搬運(yùn)任務(wù)信息和物料顏色信息由OpenVMS主板配合其攝像頭進(jìn)行數(shù)據(jù)采集并發(fā)送到主控芯片。主控芯片對(duì)信息進(jìn)一步運(yùn)算處理并將采集到信息顯示到OLED屏幕。
系統(tǒng)主控MCU部分采用了STM32F407VGT6單片機(jī)主控模塊作下位機(jī)控制器,其在性能上可以滿足各類機(jī)器人豐富的功能需求,因此本文中采用STM32F4作為機(jī)器人系統(tǒng)的主控模塊。
本控制系統(tǒng)采用5路灰度循跡傳感器。本工廠模擬圖為縱橫交錯(cuò)的黑色線條,將場(chǎng)地等分為若干相同規(guī)格的小格,因此可以通過(guò)機(jī)器人行駛至交叉黑線處進(jìn)行計(jì)數(shù),將數(shù)據(jù)作為位置判斷,從而得到機(jī)器人當(dāng)前位置,并使其能夠沿黑線進(jìn)行循跡行走。
由于需要進(jìn)一步矯正機(jī)器人的角度,提高擺放物料的準(zhǔn)確度,采用JY62陀螺儀得到機(jī)器人的航向角,如圖7所示,從而對(duì)位置進(jìn)行反饋。當(dāng)擺放物料時(shí),由于底部摩擦力不均勻,機(jī)器人總會(huì)出現(xiàn)傾斜,可通過(guò)陀螺儀反饋的航向角來(lái)對(duì)底部電機(jī)進(jìn)行操控,直到航向角達(dá)到我們想要的角度,從而消除機(jī)器人傾斜的問(wèn)題。
本系統(tǒng)采用RobotMaster M2006動(dòng)力系統(tǒng)作為機(jī)器人的底部驅(qū)動(dòng)動(dòng)力系統(tǒng)和絲桿驅(qū)動(dòng)動(dòng)力系統(tǒng),其減速比、輸出端最高轉(zhuǎn)速、最大持續(xù)扭矩、最大持續(xù)輸出功率等參數(shù)都較為理想,確保能長(zhǎng)時(shí)間帶動(dòng)機(jī)器人行走。除了RobotMaster M2006動(dòng)力系統(tǒng)以外,采用GM6020電機(jī)作為云臺(tái)動(dòng)力系統(tǒng),RoboMaster GM6020是一款內(nèi)部集成驅(qū)動(dòng)器的高性能直流無(wú)刷電機(jī),電機(jī)采用空心軸設(shè)計(jì),同樣具有速度傳感器和位置傳感器,可以對(duì)其速度和位置雙環(huán)控制,提高云臺(tái)轉(zhuǎn)動(dòng)的速度和精確度。
2.3? 機(jī)器人控制系統(tǒng)設(shè)計(jì)
搬運(yùn)機(jī)器人的控制系統(tǒng)采用基于C語(yǔ)言開發(fā)的Keil MDK編寫。在整個(gè)智能化的識(shí)別以及物料搬運(yùn)過(guò)程中,機(jī)器人運(yùn)行路徑的標(biāo)準(zhǔn)選擇方式有許多不同的排列組合,因此搬運(yùn)機(jī)器人就需要通過(guò)調(diào)試和優(yōu)化代碼設(shè)計(jì)出最佳的運(yùn)動(dòng)狀態(tài)和行走路徑。
在進(jìn)行多次實(shí)驗(yàn)后,我們發(fā)現(xiàn)控制系統(tǒng)遇到的問(wèn)題有:工作中會(huì)因?yàn)檐嚿碡?fù)載、地面摩擦、地板循跡圖紙磨損等環(huán)境因素造成的機(jī)器人偶有偏移,為了助機(jī)器人進(jìn)行方位的修正,我們引入陀螺儀動(dòng)態(tài)檢測(cè)。由于在實(shí)際中出現(xiàn)任務(wù)安排時(shí)間過(guò)長(zhǎng)或過(guò)短而導(dǎo)致的高度位置偏差,所以在程序中添加了延時(shí)函數(shù)進(jìn)行了緩沖。由于舵機(jī)偶有因?yàn)殡妷翰环€(wěn)定而導(dǎo)致不理想的狀態(tài),那么為了改善我們添加了穩(wěn)壓模塊。最后電機(jī)控制在實(shí)際調(diào)試中經(jīng)過(guò)不斷修正Kp、Ki和Kd參數(shù),達(dá)到了一個(gè)平衡、高效的閉環(huán)控制,代碼設(shè)計(jì)具體流程如圖8 所示。
2.4? 視覺(jué)檢測(cè)系統(tǒng)設(shè)計(jì)
機(jī)器人視覺(jué)采用OpenVMS模塊進(jìn)行識(shí)別,可以掃描二維碼以及尋找色塊進(jìn)行排序[5],現(xiàn)在,最為常用的是CIE Lab色空間。我們?cè)趯?duì)兩個(gè)顏色進(jìn)行比較時(shí),就可以通過(guò)這兩個(gè)顏色的Lab差值來(lái)判斷它們之間的色差。通過(guò)修改獲取的LAB閾值就可以識(shí)別到想要的目標(biāo)顏色。調(diào)整紅色物料LAB閾值使得識(shí)別紅色物料,如圖9所示。
通過(guò)OpenVMS庫(kù)函數(shù)image.find_blobs()返回色塊對(duì)象,獲取目標(biāo)之后比較blob.x()中各色塊在幀緩沖區(qū)x的坐標(biāo),判斷色塊位置,通過(guò)串口將數(shù)據(jù)打包為數(shù)組,發(fā)送給STM32。如顏色順序從左到右為紅、綠、藍(lán),則發(fā)送[1, 2, 3]。
3? 測(cè)試分析
3.1? 二維碼識(shí)別情況
相機(jī)找到QR二維碼后采用紅色框線定位,輸出即二維碼的內(nèi)容。內(nèi)容的格式均為“XXX+XXX”的形式,其中X代表數(shù)字1、2、3中的任意一個(gè),例如二維碼信息“132+231”,代表規(guī)定的機(jī)械臂抓取不同顏色物料的順序。1、2、3分別代表紅色、綠色和藍(lán)色。數(shù)字的排序代表著抓取的順序。
3.2? 顏色識(shí)別情況
相機(jī)識(shí)別到紅、綠、藍(lán)色塊后,分別使用1、2、3代替以上三種顏色,并按照上層+下層,從左至右的順序,輸出不同位置的色塊顏色情況。顏色識(shí)別同樣采用“XXX+XXX”的形式。例如,上層從左至右為:紅、綠、藍(lán),下層從左至右為:藍(lán)、紅、綠,則輸出“123+312”,這代表了物料實(shí)際擺放的順序。
3.3? 任務(wù)完成情況
小車掃描二維碼領(lǐng)取搬運(yùn)任務(wù),在指定的工業(yè)場(chǎng)景內(nèi)行走,運(yùn)行的位置精度達(dá)到±0.5 cm。在規(guī)定地方出發(fā)后來(lái)到指定的二維碼放置區(qū)進(jìn)行二維碼識(shí)別從而得到任務(wù)信息,接著小車行駛到物料擺放區(qū)域進(jìn)行物料顏色識(shí)別,得到物料擺放信息后,將任務(wù)要求和物料的具體擺放位置信息進(jìn)行信息處理后讓小車將物料按順序抓取。抓取精度為:±1 cm,小車會(huì)首先將物料按照任務(wù)順序擺放到粗加工區(qū),全部擺放完成后再將物料按順序進(jìn)行抓取,然后再行駛到成品區(qū)將物料進(jìn)行最后的擺放,接著返回物料區(qū)進(jìn)行二層抓取,流程同第一層大概一致,只是最后在成品區(qū)時(shí)采用堆垛的方式進(jìn)行擺放。擺放精度為:±1.5 cm。機(jī)器人運(yùn)行情況匯總?cè)绫?所示。
4? 結(jié)? 論
本文順應(yīng)物料分揀搬運(yùn)的智能化、自動(dòng)化的時(shí)代潮流與發(fā)展前景,設(shè)計(jì)研發(fā)了一款基于STM32單片機(jī)的智能物料搬運(yùn)機(jī)器人,可以實(shí)現(xiàn)在短時(shí)間內(nèi)完成物料的識(shí)別、指定物料的搬運(yùn)等工作任務(wù),其具有高效率、高質(zhì)量、高準(zhǔn)確率的優(yōu)點(diǎn),同時(shí)提高物流搬運(yùn)行業(yè)的效率與精度,降低生產(chǎn)成本。因此本項(xiàng)目所設(shè)計(jì)的基于STM32的智能物料搬運(yùn)系統(tǒng)能夠?yàn)闄C(jī)器人在智慧物流加工行業(yè)的實(shí)際應(yīng)用提供便利。
參考文獻(xiàn):
[1] 林兆花,徐天亮.機(jī)器人技術(shù)在物流業(yè)中的應(yīng)用 [J].物流技術(shù),2012,31(13):42-45.
[2] 邊述華,吳年祥.基于智能機(jī)器人的運(yùn)動(dòng)軌跡實(shí)驗(yàn)綜述 [J].安慶師范學(xué)院學(xué)報(bào):自然科學(xué)版,2013,19(2):57-60.
[3] 金琦淳,任俊,袁明新,等.復(fù)雜競(jìng)賽任務(wù)中的自動(dòng)分揀搬運(yùn)機(jī)器人系統(tǒng)設(shè)計(jì) [J].輕工機(jī)械,2019,37(2):17-23+28.
[4] 陳博翁,范傳康,賀驥.基于麥克納姆輪的全方位移動(dòng)平臺(tái)關(guān)鍵技術(shù)研究 [J].東方電氣評(píng)論,2013,27(4):7-11.
[5] 曾梓浩.工業(yè)機(jī)器人視覺(jué)抓取系統(tǒng)及圖像時(shí)延補(bǔ)償?shù)难芯?[D].合肥:合肥工業(yè)大學(xué),2018.
作者簡(jiǎn)介:楊旭(1989—),男,漢族,吉林琿春人,工程師,碩士研究生,研究方向:實(shí)驗(yàn)室設(shè)備管理;季嫣然(2002—),女,漢族,山東菏澤人,本科在讀,研究方向:視覺(jué)檢測(cè);郭守娜(2002—),女,漢族,廣東汕頭人,本科在讀,研究方向:自動(dòng)控制;林希寧(1986—),男,漢族,廣東湛江人,實(shí)驗(yàn)師,碩士研究生,研究方向:工業(yè)機(jī)器人技術(shù)應(yīng)用研究。