機(jī)器人設(shè)計(jì)工作總結(jié)
機(jī)器人設(shè)計(jì)工作總結(jié)
一、作品標(biāo)題:
立體式停車場(chǎng)
二、制作者名單:
我們的組號(hào)為07,組長(zhǎng)是XXX,組員包括XXX和XXX
三、選題意義和目的:
由于在生活中停車問(wèn)題是一個(gè)比較麻煩的問(wèn)題,傳統(tǒng)的停車場(chǎng)都是在水平平面上的,導(dǎo)致很嚴(yán)重的資源浪費(fèi)。為了減少由于停車而產(chǎn)生的用地,我們?cè)O(shè)計(jì)了這個(gè)立體式停車場(chǎng),旨在能夠?yàn)槲覀兩钪薪鉀Q停車難問(wèn)題提供一個(gè)全新的思路。
四、結(jié)構(gòu)方案設(shè)計(jì):
我們的模型結(jié)構(gòu)主要分為兩部分,第一部分是三維的停車場(chǎng)部分,這一部分不需要馬達(dá),開(kāi)關(guān)等重要部件,只需要利用一些固體零件搭建出一個(gè)停車場(chǎng)的框架即可。這其中需要考慮車庫(kù)的大小,數(shù)量等,最重要的要考慮是停車場(chǎng)的穩(wěn)定性,使其不論遇到什么樣的撞擊都不會(huì)變形或者錯(cuò)位等。第二部分是運(yùn)輸部分,這也是整個(gè)作品最重要的部分。它將實(shí)現(xiàn)把車運(yùn)送到指定車庫(kù)的功能。在這里我們用到了三個(gè)馬達(dá),分別控制X,Y,Z三個(gè)方向的運(yùn)動(dòng),并用到了三個(gè)開(kāi)關(guān),分別用來(lái)判斷三個(gè)方向上的運(yùn)行位置。但在實(shí)現(xiàn)的過(guò)程中,我們遇到了重力不均的情況,也就是結(jié)構(gòu)不穩(wěn)定,易偏斜的情況。對(duì)此,我們采用了配重的辦法,使得這一問(wèn)題得到了很好的解決。我們還采用了計(jì)數(shù)的程序使得開(kāi)關(guān)的使用數(shù)量大大減少。
五、實(shí)現(xiàn)功能簡(jiǎn)介:
以存車為例,涉及的基本過(guò)程如下:1.將貨物放在傳送板上后,在程序Terminal上輸入所要到達(dá)的樓層,例如第二層,第三個(gè)空位。2.在傳送裝置向前運(yùn)行的過(guò)程中,通過(guò)判斷觸碰觸發(fā)開(kāi)關(guān)的次數(shù),進(jìn)行橫向定點(diǎn)的確定,本例中即開(kāi)關(guān)觸碰三次。3.橫向定位之后裝置在橫向固定不動(dòng),開(kāi)始縱向上升,同樣也是通過(guò)開(kāi)關(guān)模擬計(jì)數(shù),開(kāi)關(guān)觸碰兩次之后停止。4.運(yùn)送裝置通過(guò)觸碰開(kāi)關(guān)將貨物運(yùn)送到指定位置。5.傳送裝置回到最初位置。取車過(guò)程的功能與操作和停車相反。本機(jī)器人運(yùn)用三個(gè)馬達(dá)的簡(jiǎn)單組合,實(shí)現(xiàn)了小車在前進(jìn)、上升以及傳送三個(gè)維度的定位,并且能夠根據(jù)需要進(jìn)行定點(diǎn)定位的存取車。
六、本人在本次作業(yè)中主要工作:
在這次機(jī)器人設(shè)計(jì)中,我負(fù)責(zé)的主要工作是進(jìn)行程序的編寫(xiě)和修正程序中bug。
七、收獲與心得體會(huì)級(jí)作品的優(yōu)缺點(diǎn):
在這次作業(yè)中,我收獲了很多。由于這是我第一次進(jìn)行程序設(shè)計(jì)。所以在程序編寫(xiě)后進(jìn)行調(diào)試的過(guò)程中,程序出現(xiàn)了好幾個(gè)bug:第一個(gè)bug是計(jì)數(shù)重復(fù),第二個(gè)bug是坐標(biāo)(1,1)無(wú)法實(shí)現(xiàn)正常的馬達(dá)運(yùn)轉(zhuǎn)。在老師和同組成員的幫助下,我成功的解決了這些bug。發(fā)現(xiàn)并解決這些bug讓我認(rèn)識(shí)到了程序補(bǔ)丁包的重要性,也體會(huì)到了編程人員的辛苦之處。而每一個(gè)程序的編寫(xiě)是很多人的心血,是花費(fèi)很多的經(jīng)歷的,所以我們要尊重別人編寫(xiě)的程序的專利權(quán)。通過(guò)這次與另外兩個(gè)同學(xué)和合作活動(dòng),也讓我認(rèn)識(shí)到了團(tuán)體的重要性,正是我們小團(tuán)體的精確分工與合作,才能在這個(gè)短短的時(shí)間里成功完成了這次大作業(yè)的設(shè)計(jì)和完成。
最終作品的優(yōu)缺點(diǎn):這個(gè)作品的優(yōu)點(diǎn):
1是用少量的開(kāi)關(guān)和馬達(dá)實(shí)現(xiàn)了再平面空間上多個(gè)坐標(biāo)的定位。
2用一個(gè)包含子程序的程序?qū)崿F(xiàn)了存車和取車兩個(gè)工作狀態(tài)的統(tǒng)一。這個(gè)作品的缺點(diǎn):
1由于計(jì)數(shù)開(kāi)關(guān)數(shù)量較少,只能通過(guò)同一個(gè)開(kāi)關(guān)進(jìn)行判定一個(gè)維度上的坐標(biāo),導(dǎo)致系統(tǒng)的穩(wěn)定性下降。
2由于在豎直平面上進(jìn)行大面積的移動(dòng)(其中包括三個(gè)馬達(dá)和三個(gè)定位開(kāi)關(guān)),所以導(dǎo)致接線較復(fù)雜,容易被影響,導(dǎo)致立體車庫(kù)的穩(wěn)定性下降。
3由于考慮到材料的限制和減少導(dǎo)線。我們并沒(méi)有設(shè)計(jì)復(fù)位開(kāi)關(guān),所以一旦程序中間停止,我們就需要運(yùn)行額外的復(fù)位程序并手動(dòng)控制才能實(shí)現(xiàn)復(fù)位的要求。
八、總結(jié):
這次機(jī)器人大作業(yè)讓我們得到了很好的鍛煉,增強(qiáng)了我們的動(dòng)手能力和組織能力。開(kāi)拓了我們的思維,豐富了我們的教學(xué)方式,讓我們受益良多。
九、參考文獻(xiàn)
《惠魚(yú)創(chuàng)意機(jī)器人設(shè)計(jì)與實(shí)踐教程》曲凌編上海交通大學(xué)出版社
附錄:程序設(shè)計(jì)的思想
定位:在豎直平面上的X和Y坐標(biāo)設(shè)立激發(fā)定位開(kāi)關(guān)的標(biāo)記,程序中定義兩個(gè)函數(shù),初始值為0,每當(dāng)對(duì)應(yīng)的定位開(kāi)關(guān)經(jīng)過(guò)一個(gè)坐標(biāo)標(biāo)記后激發(fā)開(kāi)關(guān)計(jì)數(shù),開(kāi)關(guān)每被激發(fā)一次函數(shù)值加一,并與輸入的坐標(biāo)值做比較,當(dāng)兩者相同時(shí)馬達(dá)停轉(zhuǎn)到達(dá)指定坐標(biāo),否則繼續(xù)往目標(biāo)方向前進(jìn);
存取車:存取車的實(shí)現(xiàn)是在子程序中進(jìn)行的,改變Y坐標(biāo)與Z坐標(biāo)兩個(gè)馬達(dá)的運(yùn)轉(zhuǎn)順序即可實(shí)現(xiàn)兩種完全相反的功能,存車的具體順序是Y馬達(dá)上升1.5秒后停止,Z馬達(dá)前進(jìn)到制定位置后Y發(fā)達(dá)復(fù)位該坐標(biāo)的標(biāo)記處,Z馬達(dá)后退到原始位置。而取車則是Z馬達(dá)前進(jìn)到制定位置后,Y馬達(dá)上升1.5秒,然后Z坐標(biāo)后退然后Y馬達(dá)復(fù)位。子程序有兩個(gè)輸入端口,其中一個(gè)是存車,另一個(gè)是取車,在進(jìn)行子程序之間先判定,若為1則接入存車端口,0則接入取車端口。
復(fù)位:平臺(tái)的復(fù)位時(shí)與定位是相反,每次開(kāi)關(guān)激發(fā)是將函數(shù)值減1后并與1進(jìn)行判斷,而不是0(這是程序初稿放的錯(cuò)誤)。當(dāng)函數(shù)等于1時(shí)馬達(dá)繼續(xù)運(yùn)行3秒后停止,防止馬達(dá)在開(kāi)關(guān)被激發(fā)處停下,影響下次判定。
擴(kuò)展閱讀:機(jī)器人設(shè)計(jì)工作總結(jié)
實(shí)習(xí)期間主要工作
機(jī)械手(6kg)設(shè)計(jì)分析
1、機(jī)械手的運(yùn)動(dòng)學(xué)分析
機(jī)械手常用的運(yùn)動(dòng)學(xué)分析方法是建立D-H坐標(biāo),采用建立D-H參數(shù)的方法進(jìn)行運(yùn)動(dòng)學(xué)分析。實(shí)習(xí)期間,我采用了該方法對(duì)六自由度機(jī)械手進(jìn)行了運(yùn)動(dòng)學(xué)分析。
1.1機(jī)械手幾何結(jié)構(gòu)圖及各關(guān)節(jié)位置
關(guān)節(jié)3關(guān)節(jié)3關(guān)節(jié)2ZZY關(guān)節(jié)1X1406004
590124
機(jī)械手三維造型及相關(guān)尺寸
1.2.機(jī)械手運(yùn)動(dòng)學(xué)正向求解
(1)機(jī)械手各關(guān)節(jié)坐標(biāo)系的約定及初始位置示意圖如下
y1z1x1600(a2)140(a3)y2z3180(d1)z0y0y3z2x2x3160(a1)590(d4)z4z5x6y5x5y6z6y4x4得到的D-H參數(shù)如下表:
機(jī)械手D-H參數(shù)關(guān)節(jié)代號(hào)i123456初始角度:連桿轉(zhuǎn)角i連桿長(zhǎng)度ai900-9090-900160(a1)600(a2)140(a3)000連桿偏距di關(guān)節(jié)角i180(d1)00590(d4)0012345610,20,30,40,50,60.
相鄰坐標(biāo)系間的變換矩陣:
cosisiniTi00sinicosisinisiniaicosicosicosicosisinaisinisinicosidi0Ti描述了連桿坐標(biāo)系之間相對(duì)平移和旋轉(zhuǎn)的一次坐標(biāo)變換,如T1描述第一
根連桿相對(duì)于某個(gè)坐標(biāo)系(如機(jī)身)的位姿,T2描述第二根連桿相對(duì)于第一根連桿坐標(biāo)系的位姿。
對(duì)于以上六自由度的機(jī)械手模型,機(jī)械手末端相對(duì)于固定坐標(biāo)系的變換可表示為:
T60TT12T3T4T5T6
機(jī)械手的手部位置矢量為固定參考系坐標(biāo)原點(diǎn)指向手部坐標(biāo)系原點(diǎn)的矢量
p,手部的方向矢量為n、o、a。于是手部的位姿可用44矩陣表示為:
nxnT60ynz0由D-H參數(shù)表以及變換矩陣可得:
sxaxsyayszaz00
pxpypz1c10s1s0c1T11010000c4sT4400010s400a1c1c2sa1s1T220d110s20c200
a2c2c3s0a2s2T33010010s5c5000c6s0T6600100010s6c600s3c300a3c3a3s3010c40c5s0T550d410001000001001求得:c1c23c4c5c6s4s6c1s23s5c6s1s4c5c6c4s6s1c23c4c5c6s4s6s1s23s5c6c1s4c5c6c4s6T60s23c4c5c6s4s6c23s5s60c1c23c4c5s6s4c6c1s23s5s6s1s4c5s6c4c6s1c23c4c5s6s4c6s1s23s5s6c1s4c5s6c4c6s23c4c5s6s4c6c23s5s60c1c23c4s5s23c5s1s4s5s1c23c4s5s23c5c1s4s5s23c4s5c23c50c1s23d4c23a3c2a2a1s1s23d4c23a3c2a2a1c23d4s23a3s2a2d11
以上各式中:sisini,cicosi,sijsinij,cijcosij。1.3機(jī)械手運(yùn)動(dòng)學(xué)逆向求解
在機(jī)械手的逆向求解過(guò)程中,給出了關(guān)節(jié)變量值就可以求出手部在空間笛卡爾坐標(biāo)系下的位姿,也就是實(shí)現(xiàn)了由關(guān)節(jié)空間到笛卡爾空間的轉(zhuǎn)換。在機(jī)械手的控制中,需在已知手部要到達(dá)的目標(biāo)位姿的情況下求出所需的位姿得到滿足。常用的求解方法分為幾何法和代數(shù)法。在本次實(shí)習(xí)過(guò)程中,我采用了代數(shù)法進(jìn)行求運(yùn)動(dòng)學(xué)逆解,依然針對(duì)的是上述的機(jī)械手模型,在求解的過(guò)程中需要注意逆運(yùn)動(dòng)學(xué)解的多重性,這就要求我們需要根據(jù)實(shí)際情況提出多余的解,選取實(shí)現(xiàn)機(jī)械手運(yùn)動(dòng)的最佳解。
由1.2中可知:
nxnynz0sxaxsyayszaz00pxpyTTTTTTpz1234561在該矩陣方程中,等式左邊的矩陣元素nx,ny,nz,sx,sy,sz,ax,ay,az,px,py,pz是已知的,而等式右邊的六個(gè)矩陣是未知的,它們的值取決于關(guān)節(jié)變量1,2,3,
4,5,6的大小。
c1s1001T1s1c1000a1c2s21d11Ts2c201*201*00s40c400a2c3s30a30000101T3s3c301000100010001c401T4s401)求解1,3。
00c5s501d401T10s5c5000501000
T11T60T2T3T4T5T6
c1s100s1c1000a1nx1d1ny00nz010sxaxsyayszaz00pxpyT①pz611式中:s1sin1,c1cos1,T61T2T3T4T5T6。將①式的左、右邊展開(kāi),且令左、右兩邊的(3,4)元素相等,可得
pxs1pyc10②
1arctan2(py,px)
其中arctan2(y,x)表示計(jì)算y/x的反正切值。
再令矩陣兩邊的(1,4)元素、(2,4)元素相等,得到以下方程:
3ds42a3c③c1pxs1pyac32a2s④pza3s23d4c23求式②、③與④的平方和,得
a3c3d4sk⑤3222222pxpypz(a2a3d4)其中:k。
2a2令
a3sin⑥
d4cos把⑥式代入⑤式,可得
sin(3)k2k2
cos(3)223arctan2(a3,d4)arctan2(k,a3d4k2)
2)求2,4
將式①左乘T31T21可得
c1c23s1c1s230s1c23s23a1c23d1a2c3a3nxsxaxc100nysyays1s23c23a1s23d1c23a2s3nzszaz001000pxpyT⑦pz631式中:T63T4T5T6。將⑦的左、右兩邊展開(kāi),且令左右兩邊矩陣的(1,4)和(3,4)元素分別相等:
c1c23pxs1c23pys23pza1c23d1s23a2c3a3c1s23pxs1s23pyc23pza1s23d1c23a2s3d4由上兩式求得
c23s23(d4a2s3)pz(a3a2c3)(pxc1pys1)d1d4d1a2s3a1a2c3a1a3(pxc1pys1a1)2(pzd1)2(a3a2c3)pz(a2s3d4)(pxc1pys1)a1d4d1a2c3a1a2s3d1a3(pxc1pys1a1)2(pzd1)2
由于s23和c23表達(dá)式的分母相等且為正,故有
2323arctan2(s23,c23)⑧根據(jù)1和3的解有4種可能組合,由式⑧可以算出23的四個(gè)值,于是得到2的
34個(gè)可能解:223令等式兩邊的(1,3)(2,3)分別相等,便可得:
c1c23axs1c23ays23azc4s5c1ays1axs4s5只要s50,便可以求得
c1ays1ax4
c1c23axs1c23ays23az3)求解5
解出4后,便可以進(jìn)一步求解出5。將式①繼續(xù)左乘T41T31T21,可得
T41T31T21T11T60T64
因1,2,3,4均已解出,從而有
c1c23c4s1s4c1s23ccs4s1c41230s1c23c4c1s4s23c4a1c23c4d1s23c4a2c3c4a3c4s1s23c23a1s23d1c23a2s3d4TT
s1c23s4c1c4s23s4a1c23s4d1s23s4a2c3s4a3s46064001⑨
使式⑨兩邊的(1,3)元素和(2,3)元素相等,得
(c1c23c4s1s4)ax(s1c23c4c1s4)ays23c4azs5c1s23axs1s23ayc23azc5
5arctan2(s5,c5)
4)求解6
繼續(xù)使用上述方法求解6,得
T51T41T31T21T11T60T65⑩使式⑩兩邊的(1,1)元素和(2,1)元素相等,得
(c1c23c4c5s1s4c5c1c23s5)nx(s1c23c4c5c1s4c5s1s23s5)ny(s23c4c5c23s5)nzc6(c1c23s4s1c4)nx(s1c23s4c1c4)nys23s4nzs66arctan2(s6,c6)
有上述計(jì)算過(guò)程我們可以求得機(jī)械手的運(yùn)動(dòng)學(xué)逆解,即:1,2,3,4,5,6。為了驗(yàn)證求解是否正確我們,可以運(yùn)用運(yùn)動(dòng)學(xué)正解和運(yùn)動(dòng)學(xué)逆解進(jìn)行相互驗(yàn)證。
得到的結(jié)果誤差在允許的范圍內(nèi)。而后我又運(yùn)用matlab中CorkeMATLABRobotics工具箱檢查了運(yùn)動(dòng)學(xué)正解和運(yùn)動(dòng)學(xué)逆解結(jié)果的正確性。
2速度與靜力
在完成了機(jī)械手的運(yùn)動(dòng)學(xué)分析后,緊接著我又將機(jī)械手的討論擴(kuò)展到剛體線速度和角速度的表示方法并且通過(guò)線速度和角速度去分析機(jī)械手的運(yùn)動(dòng),主要是通過(guò)求取雅克比矩陣來(lái)對(duì)機(jī)械手的運(yùn)動(dòng)進(jìn)行分析。
通過(guò)對(duì)本部分的學(xué)習(xí),我們需要重點(diǎn)理解和運(yùn)用的是:1)連桿間的速度傳遞函數(shù):
由于機(jī)械手是鏈?zhǔn)浇Y(jié)構(gòu),每一個(gè)連桿的運(yùn)動(dòng)都與它的相鄰桿有關(guān),故我們可以由基坐標(biāo)系依次計(jì)算各連桿的速度。由此,通過(guò)旋轉(zhuǎn)變換矩陣得到連桿i1的角速度相對(duì)于坐標(biāo)系{i1}的表達(dá)式:
i1Zi1ii1Riii1i1
同理可通過(guò)旋轉(zhuǎn)變換矩陣得到連桿i1的線速度相對(duì)于坐標(biāo)系{i1}的表達(dá)式:
i1vi1ii1R(iviiiiPi1)
2)作用在機(jī)械手上的靜力傳遞:
因?yàn)闄C(jī)械手末端執(zhí)行器需要在工作空間進(jìn)行焊接過(guò)程,存在負(fù)載,所以我們?yōu)榱吮3窒到y(tǒng)靜態(tài)平衡,需要求出各關(guān)節(jié)的關(guān)節(jié)靜力矩和靜力。同樣的通過(guò)旋轉(zhuǎn)變換矩陣得到連桿之間靜力的傳遞表達(dá)式:
ifii1iRi1fi1
iinii1iRi1ni1iPi1fi
式中fi表示連桿i1施加在連桿i上的力,ni表示連桿i1施加在連桿i上的力矩。
除了繞關(guān)節(jié)的力矩外,力和力矩矢量的所有分量都可以由機(jī)械手本身來(lái)平衡,因此,為了求出保持系統(tǒng)靜平衡所需的關(guān)節(jié)力矩,應(yīng)計(jì)算關(guān)節(jié)軸矢量和施加在連桿上的力矩矢量的點(diǎn)積:
iiiniTiZ3)雅克比矩陣的求解:
機(jī)械手的雅克比矩陣J通常是指從關(guān)節(jié)空間向操作空間運(yùn)動(dòng)速度傳遞的廣義傳動(dòng)比,即:
J(q)qVX是操作速度矢量。是關(guān)節(jié)速度矢量,X式中:q計(jì)算雅克比矩陣通常運(yùn)用構(gòu)造法進(jìn)行求解。
TTdx,dy,dz,x,y,zpixniypiynix,pixsiypiysix,pixaiypiyaix,niz,siz,aizdi
式中:dx,dy,dzT表示沿參考坐標(biāo)系主軸的微分移動(dòng),x,y,zT表示
沿參考坐標(biāo)系主軸的微分轉(zhuǎn)動(dòng)。
對(duì)于該項(xiàng)目中的六自由度機(jī)械手,可以求得對(duì)應(yīng)的六階雅可比矩陣J為:
dx,dy,dz,x,y,zJd1,d2,d3,d4,d5,d6式中:JJ1,J2,,J6。推導(dǎo)出機(jī)械手雅可比矩陣的表達(dá)式為:
s23d4c23a3c2a2a1s4c5c6c4s6s23d4c23a3c2a2a1s4c5s6c4c6s23d4c23a3c2a2a1s4s5Js23c4c5c6s4s6c23s5c6s23c4c5s6s4c6c23s5s6s23c4s5c23c5c4c5c6s4s6s3a2d4s5c6c3a2a3c4c5s6s4c6s3a2d4s5s6c3a2a3TTc4s5s3a2d4c5c3a2a3s4c5c6c4s6s4c5s6c4c6s4s5000c4c5c6s4s6d4s5c6a3000c4c5s6s4c6d4s5s6a3000c4s5d4c5a3s5c6s60s4c5c6c4s6s5s6c60s4c5s6c4c6c501s4s53機(jī)械手的動(dòng)力學(xué)分析
研究機(jī)械手動(dòng)力學(xué)的目的是為了實(shí)現(xiàn)后續(xù)的實(shí)時(shí)控制,利用機(jī)械手的動(dòng)力學(xué)模型,才有可能進(jìn)行最優(yōu)控制,以期達(dá)到最優(yōu)指標(biāo)或更好的動(dòng)態(tài)性能。該問(wèn)題的復(fù)雜性在于實(shí)時(shí)的動(dòng)力學(xué)計(jì)算。利用動(dòng)力學(xué)方程中重力項(xiàng)的計(jì)算結(jié)果可進(jìn)行前饋補(bǔ)償,以達(dá)到更好的動(dòng)態(tài)性能。此外,機(jī)械手的動(dòng)力學(xué)模型還可用于調(diào)節(jié)伺服系統(tǒng)的增益,改善系統(tǒng)的性能。
目前,機(jī)器人的動(dòng)力學(xué)模型的重要應(yīng)用是設(shè)計(jì)機(jī)器人,設(shè)計(jì)人員可以根據(jù)連桿質(zhì)量、負(fù)載大小、傳動(dòng)機(jī)構(gòu)的特征進(jìn)行動(dòng)態(tài)仿真。因?yàn)閯?dòng)力學(xué)方程可以用來(lái)精確計(jì)算出實(shí)現(xiàn)給定運(yùn)動(dòng)所需要的力矩,仿真結(jié)果也可用來(lái)說(shuō)明是否需要重新設(shè)計(jì)機(jī)械結(jié)構(gòu)。
在本次實(shí)習(xí)中,我主要學(xué)習(xí)了動(dòng)力學(xué)分析方法中,拉格朗日法和牛頓歐拉。結(jié)合研究生期間所學(xué)相關(guān)課程,對(duì)這兩種方法比較好把握。3.1牛頓歐拉迭代動(dòng)力學(xué)方程
假設(shè)已知關(guān)節(jié)的位置、速度和加速度,結(jié)合機(jī)械手運(yùn)動(dòng)學(xué)和質(zhì)量分布的相關(guān)知識(shí),可以計(jì)算出驅(qū)動(dòng)關(guān)節(jié)運(yùn)動(dòng)所需的力矩。
主要算法如下:
1)計(jì)算速度和加速度的向外迭代公式:
i1i1i1i1Zi1ii1Riii1i1i1Zi1Zi1ii1RiiRiii1i1i1i1iiPi1iiiiiPi1ivi1ii1Riivi1i1PCi1i1i1Ci1i1v
i1i1i1i1i1PCi1i1v作用在連桿上的力和力矩,
i1i1Ci1Fi1mi1i1vNi1Ci1i1i1Ii1i1i1Ci1Ii1i1i1
2)計(jì)算力和力矩的向內(nèi)迭代公式:
iifiii1Ri1fi1iFiniiNii1iRi1ni1iPCiiFiiPi1i1iRi1fi1
iiniTiZi4)涉及重力的動(dòng)力學(xué)算法:
0G就可以簡(jiǎn)單地將作用在連桿上的重力因素包括到動(dòng)力學(xué)方程令0v中去,其中G與重力矢量大小相等,而方向相反。這等效于機(jī)器人正以1g的加速度在做向上的加速運(yùn)動(dòng)。這個(gè)假想的向上加速度與重力作用在連桿上的效果是相同的。因而,不需要其他額外的計(jì)算就可以對(duì)重力影響進(jìn)行計(jì)算。5)機(jī)械手的動(dòng)力學(xué)方程的結(jié)構(gòu):
V(,)G()M())是n1的離心力和哥氏力矢量,式中M()為機(jī)械手nn的質(zhì)量矩陣,V(,G()是n1重力矢量。
3.2機(jī)械手的拉格朗日方程
利用拉格朗日方法推導(dǎo)機(jī)械手力學(xué)模型十分簡(jiǎn)便且具有規(guī)律性。機(jī)械手的動(dòng)力學(xué)方程建立可分五步進(jìn)行。
1)計(jì)算連桿各點(diǎn)速度。2)計(jì)算系統(tǒng)的動(dòng)能。3)計(jì)算系統(tǒng)的位能。4)構(gòu)造拉格朗日函數(shù)。5)推導(dǎo)動(dòng)力學(xué)方程。
4Adams仿真分析軟件的學(xué)習(xí)
ADAMS是以計(jì)算多體系統(tǒng)動(dòng)力學(xué)(ComputationalDynamicsofMultibodySystems)為基礎(chǔ),包含多個(gè)專業(yè)模塊和專業(yè)領(lǐng)域的虛擬樣機(jī)開(kāi)發(fā)系統(tǒng)軟件,利用它可以建立起復(fù)雜機(jī)械系統(tǒng)的運(yùn)動(dòng)學(xué)和動(dòng)力學(xué)模型,其模型可以是剛性體,也可以是柔性體,以及剛?cè)峄旌夏P。如果在產(chǎn)品的概念設(shè)計(jì)階段就采用ADAMS進(jìn)行輔助分析,就可以在建造真實(shí)物理樣機(jī)之前,對(duì)產(chǎn)品進(jìn)行各種性能測(cè)試,達(dá)到縮短開(kāi)發(fā)周期、降低開(kāi)發(fā)成本的目的。
在前面的工作中,我已經(jīng)對(duì)所要研發(fā)的機(jī)械手的運(yùn)動(dòng)學(xué)和動(dòng)力學(xué)進(jìn)行了相關(guān)的初期工作,完成了前期的計(jì)算工作,為了完成通過(guò)機(jī)械手運(yùn)動(dòng)學(xué)和動(dòng)力學(xué)的仿真,開(kāi)始進(jìn)行了ADAMS的有關(guān)學(xué)習(xí)。在學(xué)習(xí)的初期我主要了解的ADAMS的工作界面,相關(guān)工具箱的作用,以及在使用ADAMS過(guò)程中常用的快捷鍵的運(yùn)用。
4.1ADAMS的基本操作的應(yīng)用
通過(guò)一段時(shí)間的理論學(xué)習(xí),對(duì)ADAMS的工作界面,常用領(lǐng)域,以及基本思想有了初步的了解。同時(shí)通過(guò)對(duì)一些例子的練習(xí),對(duì)ADAMS的相關(guān)操作有了更深的理解。操作實(shí)例如下:
焊接機(jī)器人模型
夾緊機(jī)構(gòu)模型5、ADAMS與MATLAB聯(lián)合仿真方法
本章介紹了如何利用ADAMS和MATLAB進(jìn)行聯(lián)合仿真。在介紹該方法的過(guò)程中,我們采用了最簡(jiǎn)單的模型,如下圖所示:
3D模型
關(guān)節(jié)2
關(guān)節(jié)13D模型
具體方法步驟如下:
1、ADAMS中需要完成的過(guò)程:
1)建立如圖所示的3D模型,并通過(guò)靜態(tài)平衡分析工具驗(yàn)證機(jī)械系統(tǒng)的靜平衡。仿真工具進(jìn)行機(jī)械系統(tǒng)仿真,若可以進(jìn)行正常仿真,則該系統(tǒng)符合要求。
12如圖所示,使用1來(lái)對(duì)關(guān)節(jié)1和關(guān)節(jié)2添加旋轉(zhuǎn)副,使用2來(lái)對(duì)關(guān)節(jié)1和關(guān)節(jié)2添加力矩。2)設(shè)置仿真過(guò)程中的變量:控制力矩torque,關(guān)節(jié)2仰角position和馬達(dá)轉(zhuǎn)速velocity。方法如下:
在Build菜單,選擇SystemElements項(xiàng),再選擇StateVariable,最后選擇New命令,在name欄處命名變量torque,單擊
,以此類推,分
別設(shè)置變量position和velocity。
接著,在Build菜單中,選擇SystemElements項(xiàng),再選擇StateVariable,最后選擇Modify命令,顯示ADAMS/View變量列表,從中選擇控制力矩變量torque,選擇
按鈕,顯示修改狀態(tài)變量對(duì)話框。如下圖所示。
單擊F(time,…)后的
,進(jìn)入后顯示如下圖對(duì)話框,定義變量函數(shù)(對(duì)
話框中紅色標(biāo)記區(qū)域),即控制力矩,最后點(diǎn)擊OK,設(shè)定完成。
采用同樣的方法,對(duì)變量position和velocity進(jìn)行變量函數(shù)設(shè)定,分別為AZ(MARKER_32,MARKER_35)和WZ(MARKER_2,MARKER_35,MARKER_35)。3)定義ADAMS/Controls模塊的輸入和輸出變量:
首先,載入ADAMS/Controls模塊(選擇Tools中的pluginmanager,彈出對(duì)話框進(jìn)行載入)。
在Controls菜單,選擇PlantExport命令,顯示如下對(duì)話框,進(jìn)行如圖所示操作。
添加輸入變量本例中為torque添加輸出變量本例中為:position和velocity此處修改為:matlaB
4)進(jìn)行完如上操作后,會(huì)產(chǎn)生一些文件:matlab程序(.m)、ADAMS/View命令文件(.cmd)和ADAMS/Solve命令文件(.adm),供聯(lián)合仿真使用。5)將ADAMS安裝目錄中的如下文件:adams_server.py、adams_plant.mexw32、adams.dll、adamscxx.dll、decode.m、aview.loq、aview.log、plant.lib、adamsqt.dll、adamscxx_imp.lib與步驟4中產(chǎn)生的文件放在一起(可以有效防止仿真出錯(cuò)),如本例中的D:\\125t-25eADAMS。2、MATLAB中完成的部分(控制系統(tǒng)建模):
1)打開(kāi)MATLAB,將當(dāng)前工作目錄指向D:\\125t-25eADAMS。在commandwindow中依次輸入命令:>>cd
D:\\125t-25eADAMS
>>dir
.adamsqt.dll..aview.logControls_Plant.admaview.loqControls_Plant.cmddecode.m
Controls_Plant.mplant.libzhnr_chenggong.binzhnr_chenggong.biq
adams.dlladams_plant.mexw32adams_server.pyadamscxx.dlladamscxx_imp.lib
>>Controls_Plant(該命令來(lái)自上述命令中.adm、.cmd和.m的前綴)ans=
01-Aug-201*10:22:17
Warning:Functiond:\\MSC~1.SOF\\MSC~1.ADA\\201*r1\\win32\\amd.dllhasthesamenameasaMATLABbuiltin.Wesuggestyourenamethefunctiontoavoidapotentialnameconflict.>Inpathat113Inaddpathat89
InControls_Plantat22
%%%INFO:ADAMSplantactuatorsnames:1torque
%%%INFO:ADAMSplantsensorsnames:1position2velocity
2)接著,繼續(xù)鍵入命令adams_sys得到如下對(duì)話框:復(fù)制
新建一個(gè)文件,將上圖框內(nèi)部分,復(fù)制入新建文件中,如下圖所示:
雙擊adams_sub,彈出如下對(duì)話框:
雙擊紅色區(qū)域,彈出如下對(duì)話框進(jìn)行參數(shù)修改:
將圖中紅色框位置的選項(xiàng)更改為:interactive。最后在下圖中完成控制系統(tǒng)圖:
系統(tǒng)控制圖
單擊
,開(kāi)始仿真。
在MATLAB界面中的commandwindow中,鍵入:plot(ADAMS_tout,ADAMS_uout)可以得到時(shí)間與力矩的關(guān)系圖。
3)在ADAMS/View中繪制仿真分析結(jié)果:
如果需要在ADAMS/View中繪制仿真分析結(jié)果,可以首先輸入ADAMS/Controls聯(lián)合分析的有關(guān)結(jié)果文件;仿真結(jié)果文件(.res)、要求文件(.req)和圖形文件(.gra)。然后啟動(dòng)后處理模塊ADAMS/PostProcessor,繪制仿真分析結(jié)果。方法如下:
(1)在ADAMS/View中打開(kāi)一個(gè)新的數(shù)據(jù)庫(kù),然后在File菜單中,選擇import命令,顯示輸入文件對(duì)話框。
填寫(xiě)相應(yīng)(.cmd)文件的路徑
(2)接著用相同的方法,在上述對(duì)話框中的文件類型選擇框FileType,選擇結(jié)果文件ADAMSResultsFile。在FiletoRoad欄,輸入D:\\125t-25eADAMS\\Controls_Plant.res,在ModelName中選擇模型名稱,點(diǎn)擊OK,如圖所示:
5(3)在主工具箱,選擇繪圖命令圖標(biāo),啟動(dòng)后處理模塊
ADAMS/PostProcessor。在ADAMS/PostProcessor界面,選擇繪圖對(duì)象。在Model、Filter、Object、Characteristic和Component欄,分別選擇.hand_robot、constraint、joint_2、element_torque和Y,最后點(diǎn)擊Addcurves繪制圖形,如下圖。
3、完成matlab與ADAMS的聯(lián)合仿真。
通過(guò)一個(gè)簡(jiǎn)單例子,實(shí)現(xiàn)了matlaB與ADAMS的聯(lián)合仿真。
友情提示:本文中關(guān)于《機(jī)器人設(shè)計(jì)工作總結(jié)》給出的范例僅供您參考拓展思維使用,機(jī)器人設(shè)計(jì)工作總結(jié):該篇文章建議您自主創(chuàng)作。
來(lái)源:網(wǎng)絡(luò)整理 免責(zé)聲明:本文僅限學(xué)習(xí)分享,如產(chǎn)生版權(quán)問(wèn)題,請(qǐng)聯(lián)系我們及時(shí)刪除。