吳學(xué)鋒,齊賀男,李東亞
(蘇州大學(xué)應(yīng)用技術(shù)學(xué)院工學(xué)院,江蘇昆山 215300)
隨著互聯(lián)網(wǎng)網(wǎng)民增加,電商行業(yè)發(fā)展迅猛。在網(wǎng)購過程中,物流作為重要的環(huán)節(jié),極大影響著消費者的網(wǎng)絡(luò)購物體驗[1]。與此同時,物流分揀離不開人工,且人工分揀存在成本高、差錯率高、效率低等一系列缺點[2]。目前國內(nèi)外絕大多數(shù)的物流分揀機器人缺少多次準確移動定位功能,抓取物料較為單一,同時縱觀市場上的物料分揀機器人,無非就是應(yīng)用傳統(tǒng)單片機或者PLC 控制的方式,大部分時間要人為操作控制[3]。為了解決以上問題,綜合前人的設(shè)計思路,整合多研究方案,本文設(shè)計一種新型的物流分揀機器人。該物流分揀機器人可以按照設(shè)定的程序完成相應(yīng)的任務(wù),同時機械手爪可方便更換,便于抓取與放置多種物料,而且采用高底盤結(jié)構(gòu),便于物料機器人爬坡,放置多層物料,有效解決物流倉庫多層放置物料問題。該款物流分揀機器人可以運用在大型存儲倉庫的自動搬運中,當前市場需要的是智能化且實用性強的物流分揀機器人,本文設(shè)計方案的實驗表明,該款物流分揀機器人可以獨立自主并順利完成從識別、抓取、搬運到放置的過程,也可以針對不同的物料進行有序抓取,按照實際需求進行分類擺放。
該款以STM32 為基礎(chǔ)的物流分揀機器人是根據(jù)全國大學(xué)生工程訓(xùn)練綜合能力競賽要求,從原理上出發(fā),設(shè)計一款能夠自我識別物料,并進行搬運到指定位置的智能物流機器人。依據(jù)比賽的要求:物流分揀機器人在黃黑線條的賽道上的初始區(qū)域,聽到出發(fā)指令后,出發(fā)至二維碼識別區(qū)來讀取工作任務(wù),然后經(jīng)過數(shù)據(jù)分析得到相應(yīng)的任務(wù),根據(jù)任務(wù)搬運不同的物料至粗加工區(qū),然后將粗加工物料放置到精加工區(qū),該過程結(jié)束后,再次進行第二次不同物料搬運至精加工區(qū)域,將第二次搬運的物料堆疊到第一次物料上,實現(xiàn)更為精準地放置,最后回到指定的區(qū)域,完成比賽。
物流分揀機器人是移動式AGV 和機械手臂相結(jié)合的新型工業(yè)機器人,它可以滿足物流行業(yè)物料分揀的要求,從而準確實現(xiàn)物料的抓取與放料。由于搬運過程中防止機器人過于笨重導(dǎo)致的物料放置問題,因此在滿足功能的前提下,減輕整機的重量,提高機械臂的運動空間范圍,增加抓取物料的多樣性與準確性。
底盤部分包括麥克納姆輪與底部支撐板的設(shè)計。一般來說,底盤運動多數(shù)采用輪式或者履帶式,少數(shù)采用仿生式。輪式結(jié)構(gòu)可以采用固定普通輪、轉(zhuǎn)向輪、全向輪或者麥克納姆輪??紤]到底盤結(jié)構(gòu)運行過程便于橫向與縱向運動,如果遇到障礙物,也可以順利轉(zhuǎn)向,因此本文設(shè)計的物流分揀機器人采用麥克納姆輪。麥克納姆輪一般4個一組使用,包括2個右旋麥輪和2個左旋麥輪[4]。麥克納姆輪安裝方式主要分為X-正方形、X-長方形、O-正方形、O-長方形??紤]到物流機器人所需要的力臂較長,而X 型的安裝方式轉(zhuǎn)動力矩的力臂相對較短,而O 型的安裝方式轉(zhuǎn)動力矩的力臂比較長,而對于底盤上需要安裝機械手臂與物料架,并且盡可能減少底盤的尺寸大小,因此采用“O-長方形”安裝方式,這樣便可以盡可能多的實現(xiàn)一次性搬運物料,提高了工作效率。
根據(jù)以上的安裝方式,可以將底盤的運動分解為3個獨立變量來描述,即X軸運動、Y軸運動以及小車基于旋轉(zhuǎn)中心軸Yaw的自轉(zhuǎn)。設(shè)表示X軸運動的速度,即左右方向,以右為正;表示Y軸的運動速度,即前后方向,定義向前為正;繞Yaw軸自轉(zhuǎn)的角速度為,以逆時針方向為正。根據(jù)以上設(shè)定條件,對麥克納姆輪進行正逆運動學(xué)分析,以此得到運動學(xué)解析方程[5]。令為幾何中心指向麥克納姆輪中 心 的 矢 量,與分別 是在X軸 與Y軸 方向上 的 分 量,(N=1,2,3,4) 為麥克納姆輪中心的運行速度矢量,所設(shè)各變量值如圖1所示。由此可得1號麥克納姆輪的X、Y軸的分量:
圖1 底盤運動分解
由于麥克納姆輪特殊的結(jié)構(gòu),垂直錕子方向的速度分量是無效的,因為該方向上錕子是自轉(zhuǎn)的,無法為小車提供有效的動力來源。所以軸心位置的速度在X軸與Y軸分量來源于平行于錕子方向的速度,同時又因為麥克納姆輪與輪子本身之間的夾角為45°,因此,設(shè)上述的麥克納姆輪平行于錕子方向的速度為,因此速度關(guān)系的方程為:
因為錕子速度動力來自于麥克納姆輪的運動,且麥克納姆輪和錕子本身的夾角為45°,設(shè)麥克納姆輪的轉(zhuǎn)速為,所以可以得到:
設(shè)底盤的運動中心到該麥克納姆輪的中心在X軸方向和Y軸方向的分向量分別為a和b,所以得到:
物流分揀機器人在執(zhí)行搬運過程中,機械手臂和抓取動作起到至關(guān)重要的作用,在整個機械手臂的運動空間,需要有X軸、Y軸、Z軸、自身的旋轉(zhuǎn)運動,從而可知其自由度為4,需要4個舵機有效控制,其機械原理如圖2 所示。圖中XOZ為底盤處,由底部舵機控制,實現(xiàn)機械手臂的旋轉(zhuǎn)運動,ABM連桿與JG連桿兩處的兩個舵機實現(xiàn)末端機械手爪的位置定位,JMN 位置的舵機實現(xiàn)機械手爪的張開與閉合,同時此處設(shè)計成便于更換的手爪,可以便于抓取不同的物料,由于比賽運行場地尺寸范圍是300 mm×300 mm,物料架放置在場地邊緣,因此設(shè)計距離底座近端大臂尺寸為35 mm,設(shè)計距離手爪近端小臂尺寸為30 mm,所設(shè)計的手爪強度滿足,尺寸滿足抓取比賽物料要求。
圖2 機械手臂結(jié)構(gòu)原理
綜合底盤方案與機械手臂方案的設(shè)計,根據(jù)實際抓取物料和抓取范圍要求,采用模塊化設(shè)計方案,底盤運動采用4 個12 V 直流電機驅(qū)動型號為ZGA37RG。采用SolidWorks 三維制圖軟件,設(shè)計出三維模型,因為賽制要求機器人(含機械手臂)外形尺寸滿足鉛垂方向投影在邊長300 mm 的正方形內(nèi),高度不超過400 mm,因此底盤設(shè)計寬度為280 mm×200 mm,如圖3所示。
圖3 物流分揀機器人整機
本文采用STM32 單片機為微控制單元,采用可移植性C語言[6],從識別、抓取、循跡等多種模塊進行軟硬件的設(shè)計,該物流機器人采用差分方式傳輸,運用RS485串口標準,抗干擾能力強,再編寫驅(qū)動程序,完成分揀過程中的任務(wù)。
物流分揀機器人采用4 個直流有刷減速電機,由于物流分揀機器人運行過程中需要保證足夠的穩(wěn)定狀態(tài),同時本身自重較大,為了保證底盤運動的穩(wěn)定性,因此電機選用的時候,需要增加齒輪減速箱,提高電機的轉(zhuǎn)矩。通過計算選型,選用電機HJX3RE,額定工作電壓為12 V,轉(zhuǎn)速620 r/min。前面正逆運動學(xué)已經(jīng)給出方程式,因此可以列出部分程序方程如下:
1.handle->speed1 = y_axisbuf - x_axisbuf +(yawbuf*handle->yawfac);
2.AbsSpeed1=Absolute_Value(handle->speed1);
3.if (AbsSpeed1 > AbsSpeed2) SpeedMax =AbsSpeed1;
4.else SpeedMax=AbsSpeed2;
5.if (SpeedMax < AbsSpeed3) SpeedMax =AbsSpeed3;
6.if (SpeedMax < AbsSpeed4) SpeedMax =AbsSpeed4;
7.if(SpeedMax >handle->MaxLinearSpeed)
8.{handle->speed1=handle->speed1*handle->Max-LinearSpeed/SpeedMax;
9.handle->speed2 = handle->speed2 * handle->Max-LinearSpeed/SpeedMax;
10.handle->speed3=handle->speed3*handle->Max-LinearSpeed/SpeedMax;
11.handle->speed4=handle->speed4*handle->Max-LinearSpeed/SpeedMax;}
比賽的場地是由黃黑相間的格子組成,根據(jù)地圖線條的位置,選用黑色線條作為軌跡規(guī)劃的運動依據(jù)。因此,整個設(shè)計方案是以黑色為指引線,循跡傳感器通過判斷走過黑色的線條數(shù)[7]。而對于循跡過程中偏差的識別,物流分揀機器人采用PID 負反饋調(diào)節(jié),通過改變左右電機轉(zhuǎn)速差,從而調(diào)整物流機器人的位置,也可以防止“過沖”。物流機器人需要4個循跡傳感器,以單循跡傳感器為例,傳感器上有8 個監(jiān)測裝置,分別感應(yīng)當前位置值。將其序號定為1~8,例如當2 號傳感器單獨觸發(fā),則信號顯示N2,若4 號與5 號同時顯示,則位置平均值為N4.5,將該數(shù)值反饋到主控板上,以此調(diào)整位置。綜上所述,物流分揀機器人循跡目的調(diào)整運行方向,首先通過算法計算當前位置,通過循跡傳感器獲取一定數(shù)值,然后通過判斷采樣數(shù)值正負關(guān)系,確定物流分揀機器人整體左移或者右移動。所采用的調(diào)節(jié)原理圖如圖4所示。因此判斷姿態(tài)的公式為:
圖4 循跡模塊調(diào)節(jié)原理
式中:Nft為前循跡傳感器的當前位置反饋值;Nbt為后循跡傳感器的當前位置反饋值。
本次設(shè)計舵機的控制方式是采用PWM信號,即通過調(diào)節(jié)占空比的變化來調(diào)節(jié)信號和能量的變化,占空比是一個周期內(nèi)的信號處于高電平的時間所占整個信號周期的百分比[8]。選用的舵機為360°的連續(xù)轉(zhuǎn)動舵機,可以通過信號控制速度與方向,這款舵機的周期為20 ms 的時基脈沖,脈沖的高電平時間為0.5~2.5 ms。機械手臂在抓取物料過程中,通過上位機軟件來調(diào)節(jié)4 個舵機的運動范圍,然后編寫程序代碼到app.c文件中,上位機軟件界面如圖5所示。
圖5 上位軟件界面
為了保證設(shè)計的合理性,同時又為了更好地測試,然后對整機實物進行制作,完成物流分揀機器人的平臺搭建[9]。采用3D 打印技術(shù),設(shè)計不同類型的機械手爪,目的是為了更好地適應(yīng)多種物料,整機實物如圖6所示。在實際測試的過程中,若針對不同位置的物料,可以通過上位機調(diào)整4 個舵機旋轉(zhuǎn)角度的多少。通過調(diào)整循跡傳感器位移的大小,從而改變運動格子多少,實現(xiàn)物流搬運機器人不會出現(xiàn)偏移,準確運動至所需要的位置。與此同時,物流機器人的循跡傳感器可以隨時進行自我矯正,配合調(diào)節(jié)機械手臂抓取物體位置,可以實現(xiàn)物料抓取、搬運、放置功能[10]。
圖6 整機實物
本文從實際功能出發(fā),依照所需的功能要求,設(shè)計出結(jié)構(gòu)簡單、操作性強的物流分揀機器人。實驗前,先確定黃黑地圖上物料抓取區(qū)域和放置的位置,然后確定物流機器人的出發(fā)與返回區(qū)域,實驗中發(fā)現(xiàn),該物流機器人可以進行多次反復(fù)的物料放置,同時也可以準確實現(xiàn)堆疊的操作過程[11]。本文的整機框架結(jié)構(gòu)與機械手臂軟件編程設(shè)計具有創(chuàng)新性的意義,而且在實際使用過程中,只需要對內(nèi)部app.c文件進行修改即可,編程程序可移植性強大,可以進行商業(yè)化生產(chǎn)[12]。因此,本文的思路可以為后續(xù)的行業(yè)發(fā)展提供有效的理論依據(jù)。