方梓帆,錢(qián)劍勇,蘇 琦,徐 兵
(浙江大學(xué) 流體動(dòng)力與機(jī)電系統(tǒng)國(guó)家重點(diǎn)實(shí)驗(yàn)室,浙江 杭州 310027)
混凝土布料機(jī)具有布料范圍大、機(jī)動(dòng)性高、靈活性強(qiáng)的特點(diǎn),是建筑行業(yè)中至關(guān)重要的工程機(jī)械之一[1]。如今,我國(guó)混凝土布料臂架廣泛采用操作工人單關(guān)節(jié)獨(dú)立遙控的控制方式。為減少勞動(dòng)力投入,提高澆筑質(zhì)量,避免因布料機(jī)械臂支撐體系坍塌等極端情況導(dǎo)致的人員傷亡事故,建筑施工上對(duì)全自動(dòng)混凝土布料機(jī)器人的需求日漸提高,其核心問(wèn)題就是如何實(shí)現(xiàn)末端軌跡控制,即全自動(dòng)布料[2]。
國(guó)內(nèi)外已經(jīng)有諸多學(xué)者對(duì)混凝土布料機(jī)械臂的末端軌跡控制進(jìn)行了研究,均取得了較好的成果。KEATING S J等[3]實(shí)現(xiàn)了泡沫式建筑材料澆筑噴頭的末端軌跡控制;AYTEN等[4]基于能量消耗最少的原則進(jìn)行了最優(yōu)軌跡規(guī)劃方面的研究,提出了效率高且復(fù)雜度低的優(yōu)化算法;黃罡等[5]基于正解模型推導(dǎo)了油缸行程和關(guān)節(jié)角變化的關(guān)系,并通過(guò)位移傳感器測(cè)量液壓缸的伸出長(zhǎng)度,運(yùn)用前饋補(bǔ)償?shù)目刂撇呗?,?yōu)化了臂架的控制系統(tǒng);周淑文等[6-8]基于正解模型采用插補(bǔ)算法實(shí)現(xiàn)對(duì)臂架出料口的智能化控制,并進(jìn)行了仿真與實(shí)驗(yàn);杜冰暉等[9]依據(jù)最優(yōu)控制原理制定了臂架運(yùn)動(dòng)過(guò)程中的關(guān)節(jié)角限制條件,并進(jìn)行了避障控制的研究;王珊[10]將臂架的整體形態(tài)與臂架逆解相結(jié)合,使臂架保持流動(dòng)阻力較小的弧形;張思奇等[11]運(yùn)用最小范數(shù)法使關(guān)節(jié)運(yùn)動(dòng)連續(xù)平穩(wěn),并進(jìn)行了聯(lián)合仿真優(yōu)化;郭立新等[12]采用以各執(zhí)行構(gòu)件變化時(shí)間最大者最小的最優(yōu)化控制原理進(jìn)行運(yùn)動(dòng)學(xué)逆解;俞志鵬[13]基于遍歷算法對(duì)上個(gè)離散點(diǎn)關(guān)節(jié)角附近的角度進(jìn)行遍歷,以各關(guān)節(jié)角絕對(duì)值之和最小作為限制條件;朱云峰等[14]基于數(shù)值迭代算法,依次固定所求夾角中的3個(gè)而轉(zhuǎn)動(dòng)另一角,使得末端逐步逼近目標(biāo)點(diǎn),該方法適用于PLC控制,能夠明顯使臂架運(yùn)動(dòng)快于人工手動(dòng)調(diào)試。但是上述研究多是針對(duì)布料機(jī)剛性臂架,而在實(shí)際應(yīng)用中,布料機(jī)臂架末端常通過(guò)布料軟管對(duì)混凝土進(jìn)行導(dǎo)向,若臂架進(jìn)行大幅度擺動(dòng),容易導(dǎo)致布料軟管出現(xiàn)甩動(dòng),影響混凝土出料落點(diǎn)的位置。因此,在進(jìn)行軌跡控制時(shí),還應(yīng)考慮最后一節(jié)臂的擺動(dòng)對(duì)布料軟管產(chǎn)生的影響。
針對(duì)混凝土布料機(jī)的軌跡控制,提出一種基于姿態(tài)枚舉算法的機(jī)械臂軌跡控制方法,采用該方法對(duì)某13m-3Z型混凝土布料機(jī)進(jìn)行了末端軌跡控制,并基于AMESim-MATLAB-ADAMS模型對(duì)其進(jìn)行了聯(lián)合仿真分析,得到了末端軌跡以及布料傾角的變化規(guī)律。該方法以布料機(jī)械臂的運(yùn)動(dòng)學(xué)逆解模型為基礎(chǔ),求解得到目標(biāo)關(guān)節(jié)角度,適用于具有多自由度的布料機(jī)械臂的PLC控制。
混凝土布料機(jī)械臂通常是一個(gè)多自由度機(jī)械臂系統(tǒng),本研究以具有三節(jié)臂的混凝土布料機(jī)械臂為例,闡述其基本結(jié)構(gòu)及運(yùn)動(dòng)學(xué)逆解模型的建立過(guò)程。該混凝土布料機(jī)械臂結(jié)構(gòu)如圖1所示,其主要組成部分為回轉(zhuǎn)臺(tái)、1#關(guān)節(jié)、1#臂、2#關(guān)節(jié)、2#臂、3#關(guān)節(jié)、3#臂、末端軟管。末端軟管基本不具有混凝土承載能力,僅為末端混凝土出料口起導(dǎo)向作用,在施工過(guò)程中,基本保持垂直朝向工作平面,可暫忽略其自由度,因此可將該系統(tǒng)視為回轉(zhuǎn)臺(tái)+三節(jié)臂組成的四自由度系統(tǒng)。
1.回轉(zhuǎn)臺(tái) 2.1#關(guān)節(jié) 3.1#臂 4.2#關(guān)節(jié) 5.2#臂 6.3#關(guān)節(jié) 7.3#臂 8.末端出料口 9.末端軟管圖1 混凝土布料機(jī)械臂結(jié)構(gòu)示意圖
為研究關(guān)節(jié)補(bǔ)償角對(duì)末端出料口位置的影響,以D-H矩陣法為理論基礎(chǔ),建立各臂段關(guān)節(jié)角度變化和臂架末端空間位姿的關(guān)系。在該混凝土布料機(jī)械臂上建立的D-H坐標(biāo)系如圖2所示。
圖2 混凝土布料機(jī)械臂D-H坐標(biāo)系示意圖
(1)
T=[N5N6N7N8]
(2)
以基坐標(biāo)原點(diǎn)為原點(diǎn)設(shè)置圓柱坐標(biāo)系如圖3所示。在該坐標(biāo)系中,為便于建立末端位姿與關(guān)節(jié)角的函數(shù)關(guān)系,設(shè)定4個(gè)布料參數(shù)如下:布料高度H為末端坐標(biāo)系原點(diǎn)在圓柱坐標(biāo)系z(mì)軸方向的尺度;布料半徑R為末端坐標(biāo)系原點(diǎn)在圓柱坐標(biāo)系的徑向尺度;布料傾角θ為末端坐標(biāo)系x軸與水平面之間的夾角;此時(shí)θ0也稱(chēng)布料轉(zhuǎn)角。
圖3 圓柱系與布料參數(shù)示意圖
(3)
式中,R3×3——末端旋轉(zhuǎn)矩陣
P3×1——末端位置矢量
經(jīng)過(guò)降維簡(jiǎn)化處理后,根據(jù)末端旋轉(zhuǎn)矩陣、末端位置矢量的數(shù)值意義可建立二維平面內(nèi)3個(gè)關(guān)節(jié)角與4個(gè)布料參數(shù)的關(guān)系如下:
即:
(5)
整理可得混凝土布料機(jī)械臂逆運(yùn)動(dòng)學(xué)求解方程:
(6)
得到3個(gè)關(guān)節(jié)角和設(shè)定的4個(gè)布料參數(shù)之間的關(guān)系:
(7)
本研究所提出的基于姿態(tài)枚舉算法的混凝土布料機(jī)械臂軌跡控制方法,其目的在于減小布料傾角θ的變化量,進(jìn)而減少末端軟管相對(duì)于3#臂架鉸點(diǎn)的轉(zhuǎn)角變化量,降低混凝土出料時(shí)因末端軟管徑向甩動(dòng)產(chǎn)生的離心力。
現(xiàn)以某13m-3Z型混凝土布料機(jī)械臂為例對(duì)該控制方法進(jìn)行闡述,部分參數(shù)如表1所示。
表1 13m-3Z型混凝土布料機(jī)械臂參數(shù)
令笛卡爾坐標(biāo)系原點(diǎn)、z軸、x軸分別與圓柱坐標(biāo)系原點(diǎn)、z軸、方位角基準(zhǔn)軸重合,可建立笛卡爾坐標(biāo)系中布料參數(shù)與臂架末端位置的關(guān)系如下:
(8)
當(dāng)給定一段布料機(jī)械臂末端運(yùn)動(dòng)軌跡時(shí),利用插值法可將該目標(biāo)運(yùn)動(dòng)軌跡離散化為不同的離散點(diǎn)。通過(guò)控制臂架末端依次跟隨離散點(diǎn),最終實(shí)現(xiàn)臂架末端從目標(biāo)起點(diǎn)經(jīng)目標(biāo)軌跡抵達(dá)目標(biāo)終點(diǎn)的布料操作。離散化過(guò)程中,各離散點(diǎn)之間的距離應(yīng)根據(jù)實(shí)際工程需要來(lái)確定。若距離過(guò)小,產(chǎn)生的離散點(diǎn)則過(guò)多,容易導(dǎo)致控制器運(yùn)算量較大,末端頻繁動(dòng)作而不穩(wěn)定等問(wèn)題;若距離過(guò)大,則離散點(diǎn)過(guò)少,會(huì)使末端軌跡跟蹤的精度降低。
以控制末端按照某一直線軌跡進(jìn)行運(yùn)動(dòng)為例,給定離散點(diǎn)之間的距離,可求得離散點(diǎn)個(gè)數(shù),并進(jìn)一步確定相鄰離散點(diǎn)坐標(biāo)差值如下:
(9)
式中, Δx——各離散點(diǎn)在笛卡爾坐標(biāo)系x軸的差值
Δy——各離散點(diǎn)在笛卡爾坐標(biāo)系y軸的差值
Δz——各離散點(diǎn)在笛卡爾坐標(biāo)系z(mì)軸的差值
n——軌跡路徑上的離散點(diǎn)個(gè)數(shù)
(xt,yt,zt)——目標(biāo)軌跡終點(diǎn)坐標(biāo)
(x0,y0,z0)——目標(biāo)軌跡起點(diǎn)坐標(biāo)
布料傾角與各關(guān)節(jié)角的關(guān)系如下:
θ=θ1+θ2+θ3
(10)
對(duì)于目標(biāo)軌跡上任一對(duì)正向運(yùn)行的相鄰離散點(diǎn)而言,布料半徑的變化量滿(mǎn)足下式:
(11)
根據(jù)ΔR的正負(fù)判斷相鄰2點(diǎn)布料半徑的變化方向,作為末端姿態(tài)即布料傾角枚舉方向的判定依據(jù):
(12)
設(shè)定初始布料傾角θ以及每次枚舉時(shí)的傾角變化量Δθ。為使混凝土澆筑出料順暢,通常令θ=-90°,同時(shí)將各離散點(diǎn)笛卡爾坐標(biāo)轉(zhuǎn)換為柱坐標(biāo),即計(jì)算各離散點(diǎn)坐標(biāo)對(duì)應(yīng)R,H,θ0的值代入布料機(jī)械臂逆運(yùn)動(dòng)學(xué)模型,可求解得到各關(guān)節(jié)角度值。
當(dāng)求解得到的θ1,θ2,θ3不滿(mǎn)足表1所示關(guān)節(jié)角范圍條件時(shí),按照枚舉方向?qū)Ζ冗M(jìn)行枚舉直到其逆運(yùn)動(dòng)學(xué)求解結(jié)果符合范圍條件。其中,目標(biāo)軌跡起點(diǎn)到第2個(gè)離散點(diǎn)的求解過(guò)程流程圖如圖4所示。令所有離散點(diǎn)均按此方法求解得到相應(yīng)的關(guān)節(jié)角度值從而生成預(yù)設(shè)路徑,即完成了本研究所提出的基于姿態(tài)枚舉算法的混凝土布料機(jī)械臂軌跡控制。
圖4 基于姿態(tài)枚舉算法末端軌跡控制程序流程圖
應(yīng)用姿態(tài)枚舉算法對(duì)多自由度混凝土布料機(jī)械臂進(jìn)行軌跡控制的過(guò)程中,對(duì)預(yù)設(shè)路徑產(chǎn)生影響的參數(shù),包括離散點(diǎn)個(gè)數(shù)n、初始布料傾角θ及傾角枚舉步長(zhǎng)Δθ。其中,初始布料傾角θ對(duì)預(yù)設(shè)路徑的精度以及平滑性影響較小。
現(xiàn)以表1所述布料機(jī)械臂為對(duì)象,設(shè)置3組不同的參數(shù)如表2所示,采用基于姿態(tài)枚舉算法的控制策略對(duì)軌跡進(jìn)行控制,得到3#臂關(guān)節(jié)角θ3的變化曲線如圖5所示。其中,設(shè)置初始傾角θ=-90°,起始點(diǎn)坐標(biāo):R=7000,H=0,θ0=0°,終點(diǎn)坐標(biāo):R=127000,H=0,θ0=30°。
表2 基于姿態(tài)枚舉算法的軌跡控制參數(shù)
分析圖5可得,在該條件下,當(dāng)傾角枚舉步長(zhǎng)保持在1°時(shí),通過(guò)逆解模型求得的3#臂關(guān)節(jié)角波動(dòng)在5°以上,且增加離散點(diǎn)個(gè)數(shù)對(duì)于預(yù)設(shè)軌跡的平滑性改善并不明顯;當(dāng)傾角枚舉步長(zhǎng)設(shè)為0.1°時(shí),關(guān)節(jié)角波動(dòng)減少至2°左右,預(yù)設(shè)軌跡的平滑性和穩(wěn)定性大大改善。因此,在傾角傳感器分辨率足夠的情況下,采用姿態(tài)枚舉算法對(duì)布料機(jī)械臂軌跡進(jìn)行控制時(shí),應(yīng)盡可能減小傾角枚舉步長(zhǎng)Δθ的設(shè)置。
圖5 不同參數(shù)下3#臂關(guān)節(jié)角變化曲線圖
為了驗(yàn)證基于姿態(tài)枚舉算法的混凝土布料機(jī)械臂軌跡控制方法在實(shí)際工程應(yīng)用中的可行性,以表1所述某13m-3Z型混凝土布料機(jī)械臂為對(duì)象,建立了基于AMESim-MATLAB-ADAMS的混凝土布料機(jī)械臂聯(lián)合仿真模型。
通過(guò)在AMESim中建立閥控缸模型,在ADAMS中建立布料機(jī)械臂機(jī)械結(jié)構(gòu)模型,在MATLAB/Simulink環(huán)境下建立機(jī)械臂控制模型并將三者結(jié)合進(jìn)行聯(lián)合仿真的方式,使仿真模型更加貼合實(shí)際。該聯(lián)合仿真模型以MATLAB/Simulink為主體,并添加了AMESim與ADAMS的聯(lián)仿接口。各個(gè)模塊以及模塊間的信息傳遞路徑如圖6所示。
圖6 聯(lián)合仿真模型各模塊及信息傳遞路徑
其中,軌跡的控制基于插值法進(jìn)行,實(shí)時(shí)軌跡控制模塊在每個(gè)仿真步中讀取ADAMS模塊經(jīng)運(yùn)動(dòng)學(xué)求解得到的關(guān)節(jié)角度值。在控制精度允許的范圍內(nèi),當(dāng)關(guān)節(jié)角度達(dá)到目標(biāo)位置時(shí),應(yīng)用基于姿態(tài)枚舉算法的軌跡控制方法,實(shí)時(shí)地更新各關(guān)節(jié)目標(biāo)角度,以供控制信號(hào)產(chǎn)生模塊計(jì)算閥控信號(hào)值。
首先,以本研究所提出的姿態(tài)枚舉算法作為軌跡控制策略對(duì)一弧形目標(biāo)軌跡進(jìn)行仿真,其中的主要參數(shù)設(shè)置如表3所示。
表3 基于姿態(tài)枚舉算法的聯(lián)合仿真主要參數(shù)設(shè)置
其次,對(duì)于具有多自由度的機(jī)械臂軌跡控制而言,遍歷算法是一種簡(jiǎn)單且通用的控制算法。該算法和枚舉算法具有相似性,兩者均按一定步長(zhǎng)對(duì)機(jī)械臂逆運(yùn)動(dòng)學(xué)進(jìn)行求解結(jié)果的搜索,并依據(jù)附加的限定條件從結(jié)果解集中篩選出最優(yōu)解。本研究以遍歷算法作為軌跡控制策略進(jìn)行仿真對(duì)比,布料傾角θ的遍歷范圍設(shè)置為[-70°,-1°],遍歷步長(zhǎng)設(shè)置為0.1°,初始傾角設(shè)置為-60°,最優(yōu)解約束條件設(shè)置為各關(guān)節(jié)角變化量之和最小。得到2種不同控制策略下的末端軌跡曲線如圖7所示,布料傾角隨布料半徑變化曲線如圖8所示。
圖7 末端軌跡曲線對(duì)比
圖8 布料傾角變化曲線圖對(duì)比
從圖7可以看出,在布料機(jī)械臂運(yùn)動(dòng)學(xué)逆解模型的基礎(chǔ)上,2種不同的控制策略均能實(shí)現(xiàn)布料機(jī)械臂按照預(yù)定目標(biāo)路線運(yùn)動(dòng)。
從圖8可以看出,當(dāng)采用基于遍歷算法的軌跡控制策略時(shí),布料傾角θ隨布料半徑增加而增加,最小值為-60.14°,最大值為-1.33°,傾角變化量為58.81°。當(dāng)采用基于枚舉算法的軌跡控制策略時(shí),在布料半徑為7000~10100 mm的運(yùn)動(dòng)段里,布料傾角最小值為-60.50°,最大值為-60.19°,波動(dòng)僅為0.31°,基本穩(wěn)定在-60°左右,證明在該運(yùn)動(dòng)段內(nèi)軟管-3#臂鉸點(diǎn)與3# 臂一起以近似平移的方式移動(dòng);在布料半徑大于10100 mm的運(yùn)動(dòng)段里,由于臂架伸展距離較遠(yuǎn),布料傾角不能保持在-60°,并隨布料半徑增加而增加;但得益于姿態(tài)枚舉的控制策略,從起點(diǎn)運(yùn)行到終點(diǎn)的過(guò)程中,布料傾角最大值為-19.83°,傾角變化量為40.67°,與基于遍歷算法的控制策略相比,變化量減少了30.8%。結(jié)果表明,盡管采用以各關(guān)節(jié)角變化量之和最小作限制條件的遍歷算法有利于縮短油缸行程,減少能耗,但與混凝土出料口直接相關(guān)的3#臂擺動(dòng)幅度較大。本研究提出的基于姿態(tài)枚舉算法的混凝土布料機(jī)械臂軌跡控制方法限制了3#臂的擺動(dòng),減少了末端軟管的徑向甩動(dòng),增加了混凝土出料的穩(wěn)定性。
本研究以13m-3Z型混凝土布料機(jī)械臂為例,建立了該機(jī)械臂的運(yùn)動(dòng)學(xué)正、逆解模型,提出了基于姿態(tài)枚舉算法的軌跡控制方法,分析了該方法不同參數(shù)對(duì)控制結(jié)果的影響規(guī)律,搭建了聯(lián)合仿真模型,對(duì)比分析姿態(tài)枚舉算法和遍歷算法的仿真結(jié)果,得到以下結(jié)論:
(1) 傾角變化量反映布料機(jī)最后一節(jié)臂與水平面間夾角的波動(dòng)情況。傾角變化量越小,則波動(dòng)越小,末端軟管隨最后一節(jié)臂擺動(dòng)的幅度越小,混凝土出料落點(diǎn)的控制精度越高;
(2) 與遍歷算法相比,采用本研究提出的姿態(tài)枚舉算法,可使布料傾角變化量減少30.8%。證明該算法可減少末端布料軟管相對(duì)最后一節(jié)臂的轉(zhuǎn)動(dòng),從而降低末端布料軟管的徑向甩動(dòng);
(3) 選取姿態(tài)枚舉算法的參數(shù)時(shí),減小傾角枚舉步長(zhǎng)Δθ可改善軌跡控制的平滑性和穩(wěn)定性。