吳 迪,武利國,武建新
(內(nèi)蒙古工業(yè)大學(xué),內(nèi)蒙古 呼和浩特 010051)
棱管與法蘭的焊接軌跡為與棱管相同的多邊形,焊接時(shí)運(yùn)動(dòng)復(fù)雜,控制難度大。本研究設(shè)計(jì)了一種棱管法蘭自動(dòng)焊接機(jī)械臂,在自動(dòng)焊接設(shè)備的設(shè)計(jì)過程中引入焊接機(jī)器人的結(jié)構(gòu)和控制方法,使得該設(shè)備兼有焊接機(jī)器人的某些優(yōu)點(diǎn)。本研究利用建立的機(jī)械臂數(shù)學(xué)模型,編寫相應(yīng)的程序進(jìn)行求解,利用PRO-E建立虛擬樣機(jī)來驗(yàn)證求解的正確性,并對插補(bǔ)誤差進(jìn)行計(jì)算分析。利用該機(jī)械能夠完成棱管與法蘭復(fù)雜相貫線接縫的自動(dòng)焊接任務(wù)[1-2]。
四自由度焊接機(jī)械臂由四個(gè)連桿組成,其中三個(gè)連桿L1、L2、L3的運(yùn)動(dòng)在同一主平面上,并垂直于棱管的橫截面[3],如圖1所示。連桿L4(焊槍)在與主平面垂直的L3和L4所在平面上運(yùn)動(dòng)并與水平面夾角為45°,并且在焊接過程中與棱管保持一定的焊接距離和角度,如圖1所示。主平面上的連桿之間通過關(guān)節(jié)進(jìn)行約束定義(B點(diǎn)和C點(diǎn)),同時(shí)初始關(guān)節(jié)與剛性固定點(diǎn)通過關(guān)節(jié)約束(A點(diǎn)),主平面上OA垂直于OE,O點(diǎn)距固定點(diǎn)A的距離為Q,距棱管的表面為P,棱管繞其中心軸線勻角速旋轉(zhuǎn),所以P的值隨著時(shí)間變化。棱管的頂點(diǎn)F(最高點(diǎn))在棱管的外接圓上,棱管邊的中點(diǎn)G(最低點(diǎn))在棱管的內(nèi)切圓上,如圖2所示。
圖1 四自由度焊接機(jī)械臂
圖2 焊接機(jī)械臂結(jié)構(gòu)示意
在焊接過程中,棱管按一定角速度繞中心軸線轉(zhuǎn)動(dòng),在主平面上棱管高度在頂點(diǎn)與邊的中點(diǎn)之間變化,P的長度隨之變化。由于轉(zhuǎn)動(dòng)中棱管邊的斜率隨著時(shí)間變化,要保證焊接距離為10 mm以及焊槍與焊縫成 60°~80°夾角[4],焊槍要時(shí)刻調(diào)整位姿滿足角度要求,焊槍轉(zhuǎn)動(dòng)產(chǎn)生位置變動(dòng)使P、Q產(chǎn)生變化。當(dāng)棱管的角速度確定以后,焊槍的轉(zhuǎn)角是有關(guān)于時(shí)間的函數(shù),P、Q可以相應(yīng)的確定。用幾何法求逆解[5],主平面上的三個(gè)桿長為 L1、L2、L3,現(xiàn)已知L3相對于地面坐標(biāo)系的位姿,通過逆運(yùn)算,可得到θ1、θ2、θ3的數(shù)列。做輔助線 AC 和 AD(圖 2 中的虛線部分)。在三角形OAE中
在三角形ACE中
∠AEC=45°-∠ACE=45°-arctan(Q/P)
由余弦定理可得出
在三角形ABC中
可得出
L4是機(jī)械臂的焊槍部分,在與主平面垂直的L3所在平面上,焊槍部分可繞關(guān)節(jié)四轉(zhuǎn)動(dòng)轉(zhuǎn)動(dòng),轉(zhuǎn)角為φ,如圖3所示。
圖3 焊槍的運(yùn)動(dòng)形式
當(dāng)棱管逆時(shí)針旋轉(zhuǎn)α角度時(shí),為了保證焊槍與管壁保持一定角度,焊槍要相應(yīng)的旋轉(zhuǎn)β角度。棱管旋轉(zhuǎn)時(shí)所帶來的在焊接距離的變化,還有焊槍轉(zhuǎn)動(dòng)時(shí)所帶來的焊接距離的變化總和為h,如圖4所示。為了保證焊槍頭與工件之間的焊接距離在規(guī)定范圍內(nèi),在焊接過程中補(bǔ)償差值,以保證焊接質(zhì)量。焊槍在每個(gè)周期內(nèi)都旋轉(zhuǎn)β角,β角可由焊槍長度與棱管的尺寸參數(shù)求得,如圖5所示。
圖4 焊槍與棱管的相對運(yùn)動(dòng)姿態(tài)
圖 5 中△ABC 相似于△ODC,AB∶OD=BC∶DC,BC+DC=a(a為棱邊的一半),AB、OD、a已知,可求出BC長度,從而可求得β角。
圖5 求β角度
把棱管轉(zhuǎn)動(dòng)一圈分成8個(gè)周期,每個(gè)周期為從棱管一邊中點(diǎn)轉(zhuǎn)動(dòng)到相鄰的下一邊中點(diǎn),這樣每個(gè)周期焊槍的運(yùn)動(dòng)是相同的。再把每個(gè)周期的運(yùn)動(dòng)分為4個(gè)小周期,如圖6~圖9所示。第一個(gè)周期棱管的頂點(diǎn)由a點(diǎn)繞棱柱圓心旋轉(zhuǎn)到b點(diǎn),焊槍由1位置旋轉(zhuǎn)到2位置。第二個(gè)周期棱管的頂點(diǎn)由b點(diǎn)繞棱柱圓心旋轉(zhuǎn)到c點(diǎn),焊槍由2位置旋轉(zhuǎn)到3位置。第三個(gè)周期棱管的頂點(diǎn)由c點(diǎn)繞棱柱圓心旋轉(zhuǎn)到d點(diǎn),焊槍由3位置旋轉(zhuǎn)到4位置。第四個(gè)周期棱管的頂點(diǎn)由d點(diǎn)繞棱柱圓心旋轉(zhuǎn)到e點(diǎn),焊槍由4位置旋轉(zhuǎn)到5位置。
圖6 運(yùn)動(dòng)周期1
圖7 運(yùn)動(dòng)周期2
圖8 運(yùn)動(dòng)周期3
圖9 運(yùn)動(dòng)周期4
式(1)、式(2)、式(3)三個(gè)方程都是關(guān)于變量P、Q 的方程,周期性的檢測出 P、Q 的值,θ1、θ2、θ3可相應(yīng)的求出唯一值。在此選用Matlab 7.1編程來進(jìn)行求解。所得各關(guān)節(jié)角度如表1所示。在Matlab中生成時(shí)間與各關(guān)節(jié)的關(guān)系,由于時(shí)把間分成了400個(gè)時(shí)間點(diǎn),這里只列出18個(gè)時(shí)間點(diǎn)中各關(guān)節(jié)的角度。圖中第一列為插補(bǔ)時(shí)間,第二到第四列為四個(gè)關(guān)節(jié)的角度。
焊接過程中,隨著棱管的轉(zhuǎn)動(dòng),焊槍轉(zhuǎn)動(dòng)與棱管要保持60°~80°夾角,焊槍尾部在Y軸上移動(dòng)。棱管的中心距焊接位置的變化為直線變化,這樣就形成了焊槍的圓弧運(yùn)動(dòng)來插補(bǔ)焊接位置的直線變化。插補(bǔ)過程中采用定時(shí)插補(bǔ),這種插補(bǔ)方式易于自動(dòng)化焊接機(jī)床的控制系統(tǒng)的實(shí)現(xiàn)。每隔t秒中斷一次進(jìn)行一次插補(bǔ),計(jì)算并輸出一次給定值。從焊接開始的初始位每隔一個(gè)插補(bǔ)周期取一個(gè)點(diǎn),取了五個(gè)點(diǎn),焊槍從a點(diǎn)運(yùn)動(dòng)到e點(diǎn),如圖10所示。每個(gè)周期棱管旋轉(zhuǎn)β角度。現(xiàn)將圖中焊槍端點(diǎn)位置放大。如圖11所示,可以看出在焊接插補(bǔ)過程中,弧ab與直線ab的間隙最大,所以現(xiàn)分析ab段最大誤差[7]。
采用2500線編碼器,4倍頻,分辨率10000 cts/rev。圖 12 中,桿長 L,初始位置 a(x1,y1)與 Y 軸夾角為α。一個(gè)單位脈沖時(shí)間焊槍旋轉(zhuǎn)β角,a運(yùn)動(dòng)到b(x2,y2),可求直線 ab 方程為
表1 所得各關(guān)節(jié)角度
圖11 焊槍端點(diǎn)位置放大
弧ab上動(dòng)點(diǎn)由a到b的軌跡方程為
圖12 求直線ab方程
將一個(gè)單位脈沖按時(shí)間等分n份,可求焊槍軌跡與弧ab、直線ab的交點(diǎn)間的距離。根據(jù)兩點(diǎn)間距離式(4)可以求得弧ab到直線ab的最大距離d。計(jì)算值為0.009 1 mm,小于規(guī)定的最大誤差值
通過PRO-E建立焊接機(jī)械臂的模型,通過裝配等形式及約束條件,將關(guān)節(jié)部分和棱管的旋轉(zhuǎn)軸定義銷釘約束,如圖13所示,其他裝備定義為剛性約束。模型建立好后,在應(yīng)用程序的機(jī)構(gòu)選項(xiàng)中顯示裝配關(guān)節(jié)定義無問題,開始添加電機(jī)驅(qū)動(dòng),電機(jī)驅(qū)動(dòng)為圖9中4個(gè)旋轉(zhuǎn)箭頭所示。將Matlab中運(yùn)算的值以tab格式保存,在電機(jī)的編輯定義中導(dǎo)入,完成仿真[8]。圖14為焊槍頭運(yùn)動(dòng)軌跡曲線,可以看處曲線閉合并符合個(gè)周期運(yùn)動(dòng)特點(diǎn)。
圖13 PRO-E運(yùn)動(dòng)仿真點(diǎn)的軌跡
圖14 PRO-E運(yùn)動(dòng)仿真變的軌跡
利用幾何運(yùn)算,通過Matlab運(yùn)算功能自編程序?qū)λ淖杂啥葯C(jī)械臂的逆運(yùn)動(dòng)學(xué)進(jìn)行求解,并沒有采用傳統(tǒng)使用Matlab的Robotics Toolbox工具箱對該機(jī)械臂進(jìn)行建模求解。將編寫的求解逆運(yùn)動(dòng)學(xué)程序編制成一個(gè)函數(shù),通過定義其中的輸入輸出參數(shù),就可求解四桿機(jī)械臂末端執(zhí)行器在工作范圍內(nèi)變化過程中各關(guān)節(jié)的變化。確定運(yùn)動(dòng)參數(shù)并分析計(jì)算插補(bǔ)誤差。通過PRO-E運(yùn)動(dòng)仿真對機(jī)械運(yùn)動(dòng)過程可視化,驗(yàn)證是否達(dá)到工作要求。
[1]李曉輝.汪蘇焊接機(jī)器人智能化的發(fā)展[J].電焊機(jī),2005,35(6):39-41.
[2]林尚揚(yáng),陳善本,李成桐.焊接機(jī)器人及其應(yīng)用[M].北京:機(jī)械工業(yè)出版社,2000.
[3]陳魯剛,平雪良.平面三自由度機(jī)械臂的軌跡規(guī)劃及仿真[J].工具技術(shù),2011,45(9):26-30.
[4]中國機(jī)械工程學(xué)會(huì)焊接學(xué)會(huì)編.焊接手冊(第2版)[M].北京:機(jī)械工業(yè)出版社,2001.
[5]梶田秀司.仿人機(jī)器人[M].管貽生譯.北京:清華大學(xué)出版社,2007.
[6]石辛民,郝整清.基于MATLAB的實(shí)用數(shù)值計(jì)算[M].北京:北京交通大學(xué)出版社,2006.
[7]尹 萍.自動(dòng)焊接機(jī)床運(yùn)動(dòng)控制算法研究與軟件系統(tǒng)開發(fā)[D].山東:山東大學(xué),2006.
[8]林清安.Pro/ENGINEER野火3.0中文版動(dòng)態(tài)機(jī)構(gòu)設(shè)計(jì)與仿真[M].北京:電子工業(yè)出版社,2005.