劉祚時, 房雙艷, 饒 遠(yuǎn)
(江西理工大學(xué) 機(jī)電工程學(xué)院,江西 贛州 341000)
隨著傳感器技術(shù)、現(xiàn)代控制與計算機(jī)科學(xué)技術(shù)快速發(fā)展[1],機(jī)器人技術(shù)已走到綜合前沿技術(shù)的研究階段。小型服務(wù)類機(jī)器人作為未來機(jī)器人技術(shù)產(chǎn)業(yè)化的重要發(fā)展方向,除了一般的衛(wèi)生打掃、碗碟清洗、監(jiān)管房屋等家用商用價值外,也可在一些場合中代替工業(yè)機(jī)器人,例如:在科技館展示機(jī)器人、助手機(jī)器人、機(jī)器人教育等實際場景[2]。因此,針對工作精度要求不高的場合,可以考慮換用成本更低且精度符合應(yīng)用場合的低價、小尺寸機(jī)器人。
王嵐等人[3]利用機(jī)械手結(jié)合旋轉(zhuǎn)桌面搭建了助餐機(jī)器人,并在該機(jī)器人伺服控制系統(tǒng)的基礎(chǔ)上設(shè)計了控制器,通過運動軌跡跟蹤實驗,證明了該助餐機(jī)器人的可行性。郭峰等人[4]以Arduino Melzi為控制板設(shè)計了一種三自由度的機(jī)械手,同時設(shè)計了用上位機(jī)Pronterface進(jìn)行在線或離線編程控制的桌面機(jī)械手控制系統(tǒng),實現(xiàn)了機(jī)械手書寫漢字的效果。劉祚時等人[5]設(shè)計了一款輔助進(jìn)食的桌面機(jī)械手,通過攝像頭跟蹤識別使用者的人臉并結(jié)合比例—積分—微分(proportional integral diffirential,PID)控制對機(jī)械手關(guān)節(jié)上的舵機(jī)進(jìn)行動態(tài)實時調(diào)整,達(dá)到機(jī)械手末端實時跟隨人臉的目的,當(dāng)使用者說出已經(jīng)通過預(yù)定義的食物編號,便能完成進(jìn)食任務(wù)。周海波等人[6]為了解決小球類運動訓(xùn)練中的撿球問題,設(shè)計了一種撿拾機(jī)械手,通過對該五自由度的機(jī)械手進(jìn)行運動學(xué)與仿真分析后,驗證了該機(jī)械手的撿拾功能足夠滿足一般小球類物體。上述的機(jī)器人在一定程度上滿足了人們的需求,相比工業(yè)機(jī)器人,成本更低,體積也更小巧。針對工作空間范圍較小且對操作精度要求不高的場合所提出的桌面機(jī)械手的研究。通過運動學(xué)等相關(guān)理論過程得出桌面機(jī)械手軌跡規(guī)劃的理論軌跡情況,結(jié)合對機(jī)械手工作空間的分析,完成桌面機(jī)械手雙臂協(xié)作試驗,對后續(xù)桌面機(jī)械手的雙臂協(xié)作研究有一定的現(xiàn)實意義。
本文所搭建的桌面機(jī)械手由KS—3527數(shù)字舵機(jī)作為底座驅(qū)動舵機(jī),其余關(guān)節(jié)處采用KS—3518數(shù)字舵機(jī),STM32F429IGT6開發(fā)板作為主控制器,并結(jié)合MDK-ARM平臺、電源適配器、機(jī)械手、ST-Link下載器和Arduino擴(kuò)展板等實現(xiàn)本文的預(yù)期效果。桌面機(jī)械手硬件平臺及其相關(guān)上位機(jī)軟件的整體控制流程框架如圖1所示。
圖1 軟硬件平臺整體框架圖
鑒于本文研究的桌面雙臂機(jī)械手平臺是由兩臺型號相同且基座可固定安裝在指定地點的桌面機(jī)械手所組成,其中桌面單臂機(jī)械手實物如圖2所示,圖中數(shù)字表示對應(yīng)數(shù)字舵機(jī)的編號。
圖2 單臂桌面機(jī)械手
以單個機(jī)械臂作為對象進(jìn)行運動學(xué)分析?,F(xiàn)使用D-H參數(shù)法建立相應(yīng)關(guān)節(jié)處的連桿坐標(biāo)系,如圖3中所示,并選擇距離關(guān)節(jié)1處Z軸方向長度為H=33 mm,Y軸方向為L=180 mm的點作為桌面機(jī)械手的坐標(biāo)原點m。
圖3 桌面機(jī)械手D-H坐標(biāo)系
同時經(jīng)過對機(jī)械手外形尺寸的實際測量和圖3中建立的D-H坐標(biāo)系,可得到桌面機(jī)械手的D-H參數(shù)表,如表1中所示。
表1 桌面機(jī)械手D-H參數(shù)
表1中各字母的含義為θi表示關(guān)節(jié)角度,di表示連桿偏移距離,ai表示連桿長度,αi表示連桿的扭轉(zhuǎn)角度。而表內(nèi)各參數(shù)中連桿的偏移距離分別為d2=23 mm,d3=27 mm,d4=152 mm,連桿長度分別為a1=20 mm,a2=15 mm,a3=144 mm。
由于該桌面機(jī)械手上的所有關(guān)節(jié)都為轉(zhuǎn)動關(guān)節(jié),故可根據(jù)各關(guān)節(jié)之間的位姿關(guān)系得到其位姿變換矩陣i-1Ai的通式為
i-1Ai=Rot(z,θi)Trans(z,di)Trans(x,ai)Rot(x,αi)
(1)
(2)
將表1中的D-H參數(shù)代入式(2)中可得到各相鄰關(guān)節(jié)的位姿變換矩陣
(3)
(4)
(5)
對桌面機(jī)械手進(jìn)行逆運動學(xué)分析的實質(zhì)就是在已確定機(jī)械手末端位姿矩陣的前提條件下,來對機(jī)械臂上各關(guān)節(jié)變量(關(guān)節(jié)角)進(jìn)行求解的過程[7]。由于本文使用的主控芯片自帶FPU單元,具有高效的運算能力,其運算速度能夠滿足在運動學(xué)逆解求解過程中對硬件的基礎(chǔ)要求。故本文將采用反變換法對桌面機(jī)械手的左臂進(jìn)行運動學(xué)反解的求解計算
(6)
利用蒙特卡—羅法對桌面機(jī)械手的雙臂模型進(jìn)行工作空間求解時,需要保證隨機(jī)產(chǎn)生的角度值在其對應(yīng)關(guān)節(jié)的轉(zhuǎn)動范圍內(nèi),這樣便可過隨機(jī)生成的一組關(guān)節(jié)角度值{(θ1),(θ2),(θ3),(θ4),(θ5)}m來確定機(jī)械手工作空間內(nèi)的一坐標(biāo)點Pm;同時當(dāng)隨機(jī)點的數(shù)量越多時,該隨機(jī)點的集合即可趨近為雙臂的工作空間,從而求解出桌面機(jī)械手雙臂的工作空間。根據(jù)雙臂運動學(xué)正解中的式(4)和式(5)可知,雙臂工作空間可分別表示為
PL=(nx,ny,nz)
(7)
PR=(nx,ny,nz)
(8)
式(7)中所有點的集合表示桌面機(jī)械手左臂的工作空間,式(8)中所有點的集合表示桌面機(jī)械手右臂的工作空間,同時各關(guān)節(jié)角度范圍滿足θmin≤θi≤θmax,i=1~5?,F(xiàn)在已知桌面機(jī)械手左、右臂末端位置點的條件下采用蒙特—卡羅法求解工作空間:
1)令各關(guān)節(jié)角的角度值滿足式θi=θmin+(θmax-θmin)×rand(N,1),其中rand(N,1)是MATLAB中的隨機(jī)數(shù)函數(shù),rand(N,1)表示隨機(jī)生成N×1的一維向量,N表示隨機(jī)生成的隨機(jī)點個數(shù),同時該一維向量中各元素的值在0~1之間均勻分布,而θmin,θmax則分別表示某一關(guān)節(jié)角的最小值和最大值,故針對桌面機(jī)械手各關(guān)節(jié)而言,上式(角度值θi公式)始終成立。
2)將上式(角度值θi公式)中得到的N組關(guān)節(jié)變量值代入式(7)和式(8)中,即可分別求得桌面機(jī)械手左、右臂的工作空間。
由此可根據(jù)上述步驟利用MATLAB繪制桌面機(jī)械手雙臂的工作空間點云圖如圖4所示。
圖4 桌面機(jī)械手的雙臂工作空間點云圖
從工作空間點云圖中可以看出桌面機(jī)械手的雙臂工作空間的整體外形與邊界,可大致得知工作空間內(nèi)隨機(jī)點的分布情況。桌面機(jī)械手的左、右臂之間存在相互重合的空間區(qū)域,且工作空間為兩個相交的球形空間,其工作空間關(guān)于平面y=0對稱。
本文研究的是輕量級的桌面機(jī)械手,在運動中產(chǎn)生的慣量較小,因此將利用五次多項式插值對桌面機(jī)械手進(jìn)行軌跡規(guī)劃[8]。除了原先指定的約束條件(起始點和終止點的位置、速度)之外,還要對始末點的加速度給予條件約束?,F(xiàn)假設(shè)關(guān)節(jié)位置處的五次多項式插值函數(shù)為
θ(t)=a5t5+a4t4+a3t3+a2t2+a1t1+a0
(9)
對式(9)分別進(jìn)行求導(dǎo)可得關(guān)節(jié)速度函數(shù)與關(guān)節(jié)加速度函數(shù),其分別如式(10)和式(11)所示
(10)
(11)
針對式(9)中的六個未知系數(shù),根據(jù)約束條件所建立的方程組求解得出
(12)
現(xiàn)通過MATLAB對一個關(guān)節(jié)的運動情況進(jìn)行分析,隨后將對桌面機(jī)械手的左臂進(jìn)行點到點的運動路徑仿真,同時需在仿真前保證該關(guān)節(jié)的起始角度值與終止角度值在桌面機(jī)械手各關(guān)節(jié)的角度范圍內(nèi)。假設(shè)始末位置處的關(guān)節(jié)角度分別為θm=-π/3,θn=π/4,并令運動時間tn=6 s,同時以Δt=5 ms的時間作為插補(bǔ)間隔,單個關(guān)節(jié)的運動曲線如圖5所示。
圖5 單個關(guān)節(jié)的運動曲線
從圖5可知,單個關(guān)節(jié)的運動曲線都為“S”型光滑曲線,并且在始末位置處滿足速度、加速度為零。因此,該平滑的運動曲線足夠保證機(jī)械手關(guān)節(jié)位置運動的平穩(wěn)性,保證運動精度的同時減小運動過程中機(jī)械手的振動。
為了描述機(jī)械手末端在抓取過程中始終保持沿著Z軸垂直向上的定姿態(tài)動作,現(xiàn)采用RPY角即橫滾角、俯仰角、偏航角的形式來表述末端執(zhí)行器的相對位姿關(guān)系。此時將末端坐標(biāo)系沿X軸的轉(zhuǎn)動角度記為θ,旋轉(zhuǎn)矩陣為Rθ;沿Y軸的轉(zhuǎn)動角度記為γ,旋轉(zhuǎn)矩陣為Rγ;沿Z軸的轉(zhuǎn)動角度記為α,旋轉(zhuǎn)矩陣為Rα,如圖6所示。
圖6 繞各軸旋轉(zhuǎn)角度示意
(13)
以桌面機(jī)械手左臂為例,結(jié)合式(13)和式(5)可得
(14)
在已知操作對象的中心坐標(biāo)與尺寸后,可得到機(jī)械手末端位姿矩陣的nx,ny,nz,所以在已知L,H,d2,d3,d4,a1,a2,a3的前提下可通過式(14)求得左臂的偏航角αL的值,進(jìn)而將其代入式(13)中求解出左臂目標(biāo)對象的位姿矩陣并利用逆運動學(xué)解出左臂各關(guān)節(jié)的角度值θ1~θ5。同理可知右臂的偏航角αR的值及其右臂末端的坐標(biāo)位置為
(15)
因此,由左、右臂的末端位姿矩陣可知其沿Z軸保持豎直向上定姿態(tài)的仿真效果圖如圖7所示,豎直向上的定姿態(tài)效果與預(yù)期效果一致。
圖7 雙臂末端定姿態(tài)
當(dāng)桌面機(jī)械手在進(jìn)行雙臂不同時協(xié)作操作任務(wù)時(如雙臂搬運傳遞任務(wù)),操作物體應(yīng)處于雙臂工作空間中的協(xié)作空間范圍內(nèi)。雙臂部分約束條件下的協(xié)作示意圖如圖8所示。其中封閉的橢圓形區(qū)域代表雙臂協(xié)作空間,而桌面機(jī)械手左、右臂末端的位姿矩陣分別為TL,TR,而機(jī)械臂末端所對應(yīng)的坐標(biāo)位置為PL,PR。
圖8 雙臂協(xié)作示意
桌面機(jī)械手左右臂之間的關(guān)系為
PLR=PL-PR
(16)
其中,PLR表示左臂至右臂的末端相對位置。該實驗過程中桌面機(jī)械手將從目標(biāo)對象的初始位置處夾取目標(biāo)物體,隨后運動至雙臂協(xié)作空間中的某一指定位置,隨后另一機(jī)械臂末端將運動至前一機(jī)械臂末端位置處并夾住目標(biāo)物體,同時前一機(jī)械臂松開目標(biāo)物體,最后由后一機(jī)械臂將目標(biāo)物體放置回目標(biāo)物體的初始位置。
在進(jìn)行雙臂搬運傳遞實驗前通過MATLAB將雙臂搬運過程中的軌跡插補(bǔ)數(shù)據(jù)保存為.mat文件格式,并且利用STM32系列開發(fā)板的直接存儲器訪問(DMA)功能將實驗中機(jī)械臂的運動軌跡數(shù)據(jù)保存至STM32F429的存儲器,該過程可由MDK軟件實現(xiàn)數(shù)據(jù)地導(dǎo)入,最后只需通過MDK軟件使能STM32F429的DMA控制器,讓桌面機(jī)械手依照設(shè)定的運行軌跡完成搬運傳遞的雙臂協(xié)作,如圖9所示。
圖9 雙臂協(xié)作搬運傳遞實驗
實驗過程中雙臂在三維空間中的運動軌跡即左、右臂的期望運動軌跡如圖10所示;同時利用上位機(jī)軟件串口調(diào)試助手從開發(fā)板的USART1串口讀取初始位置與目標(biāo)位姿點處的舵機(jī)關(guān)節(jié)角度,其雙臂各關(guān)節(jié)角度如表2中所示。
圖10 搬運傳遞過程雙臂的期望運動軌跡
表2 雙臂協(xié)作實驗各關(guān)節(jié)角參數(shù) (°)
由該實驗可知該桌面機(jī)械手雙臂在搬運傳遞物體、插裝等任務(wù),具有良好的運動穩(wěn)定性與定位精度。
針對工作空間范圍較小的場景,以低成本的桌面機(jī)械手雙臂為研究對象,對其建立模型并進(jìn)行運動學(xué)分析,采用蒙特卡羅法求解雙臂工作空間,對機(jī)械手路徑規(guī)劃進(jìn)行研究,并進(jìn)行雙臂協(xié)作搬運實驗。結(jié)果表明,該桌面機(jī)械手雙臂可應(yīng)用于日常生活或精度允許范圍內(nèi)的工業(yè)場景,并對小體積目標(biāo)物體進(jìn)行搬運作業(yè)等操作,且具有良好的運動穩(wěn)定性與定位精度。