機(jī)械專業(yè)綜合課程設(shè)計(jì)說明書-產(chǎn)品碼垛作業(yè)工業(yè)機(jī)器人離線編程與虛擬仿真_第1頁
機(jī)械專業(yè)綜合課程設(shè)計(jì)說明書-產(chǎn)品碼垛作業(yè)工業(yè)機(jī)器人離線編程與虛擬仿真_第2頁
機(jī)械專業(yè)綜合課程設(shè)計(jì)說明書-產(chǎn)品碼垛作業(yè)工業(yè)機(jī)器人離線編程與虛擬仿真_第3頁
機(jī)械專業(yè)綜合課程設(shè)計(jì)說明書-產(chǎn)品碼垛作業(yè)工業(yè)機(jī)器人離線編程與虛擬仿真_第4頁
機(jī)械專業(yè)綜合課程設(shè)計(jì)說明書-產(chǎn)品碼垛作業(yè)工業(yè)機(jī)器人離線編程與虛擬仿真_第5頁
已閱讀5頁,還剩12頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

機(jī)械專業(yè)綜合課程設(shè)計(jì)說明書

產(chǎn)品碼垛作業(yè)工業(yè)機(jī)器人離線編程與

虛擬仿真

學(xué)院(系):機(jī)電信息工程學(xué)院

專業(yè):___________機(jī)械___________

1拆垛機(jī)器人工作站構(gòu)成

自動(dòng)化物流系統(tǒng)中,與碼垛應(yīng)用相對(duì)應(yīng)的為拆跺應(yīng)用,即把成垛

的產(chǎn)品依次搬運(yùn)至流水線上,例如煙草物流系統(tǒng)中出人智能倉庫時(shí)的碼

垛拆垛、袋裝原材料拆垛并開袋、汽車零部件的拆垛上料等應(yīng)用。

本工作站為箱類產(chǎn)品拆垛應(yīng)用,成垛的原料擺放在枝板上,隨枝板

流動(dòng)至枝板輸送鏈拆垛工位處,利用ABB公司的IRB6700機(jī)器人將

產(chǎn)品從枝板上搬運(yùn)至產(chǎn)品輸送鏈上,以便流至下工位進(jìn)行處理,如圖

6—I所示。

I)枝板輸送鏈載有產(chǎn)品的枝板經(jīng)由左側(cè)的進(jìn)料輸送鏈流轉(zhuǎn)至末

端拆垛工位,并且對(duì)末端設(shè)有至lj位檢測(cè)傳感器,當(dāng)機(jī)器人完成該校

板的拆垛任務(wù)后,空枝板經(jīng)由右側(cè)輸出線傳至下一士位,便于空枝板的

回收,之后進(jìn)料輸送鏈傳送下一個(gè)載有產(chǎn)品的枝板,依次循環(huán)

2)吸盤工具機(jī)器人末端法蘭盤裝有吸盤工具(圖6-3),利用

真空發(fā)生器產(chǎn)生真空,對(duì)產(chǎn)品進(jìn)行拾取處理,機(jī)器人利用輸出信號(hào)控制

真空的產(chǎn)生與關(guān)閉,從而實(shí)現(xiàn)產(chǎn)品盒的拾取與釋放,該工具采用16個(gè)

吸盤,氣路分為4蹈,利用機(jī)器人4路數(shù)字輸出端口分別進(jìn)行控制,

3)產(chǎn)品輸送鏈I機(jī)器人將拆垛產(chǎn)品按照指定的方式放置在產(chǎn)品輸

送鏈前端,經(jīng)由該輸送鏈傳送至下工位;在該輸送鏈前端設(shè)有傳感器,

用于槍測(cè)當(dāng)前位置是否有物料,當(dāng)沒有物料時(shí)才允許機(jī)器人執(zhí)行下一個(gè)

物料的放置,如圖6-5所示。

2、信號(hào)組的設(shè)置與用法

在使用多個(gè)數(shù)字輸出端口進(jìn)行傳輸附,使用信號(hào)組的形式會(huì)讓信號(hào)的處理變得艮

單,例如圖6-6中需要處建3個(gè)數(shù)字箱出端口,假設(shè)命名為dol、do2、do3,地址夕

為I、2、3,則在系統(tǒng)中需要依次定義3個(gè)數(shù)字輸出信號(hào),并且在程序中每次控制主

個(gè)信號(hào),均需要使用3條指令進(jìn)行話何,如果將該3個(gè)輸出端口并為一組,統(tǒng)一設(shè)后

個(gè)信號(hào)組改1,地址為1~3,則在程序中只需要按照二進(jìn)制的排列規(guī)則對(duì)gol進(jìn)行胃

即可,大大簡(jiǎn)化輸出控制。如:

SetGogol.7.等同于Scidol;Setdo2;Setdo3;

SetGogol.5.當(dāng)可干SetdolResetdo2,Setdo3e

3、數(shù)組的應(yīng)用

在定義程序數(shù)據(jù)時(shí),可以將同種類型、同種用途的數(shù)值存放在同

一個(gè)數(shù)據(jù)中,當(dāng)調(diào)用該數(shù)據(jù)時(shí)需要寫明索引號(hào)來指定我們調(diào)用的是該

數(shù)據(jù)中的哪個(gè)數(shù)值,這就是所謂的數(shù)

組。在RAPID申可以定義維數(shù)組、二維數(shù)組以及三維數(shù)組。

1.一維數(shù)組

VARnumregl{3|:=[5.7.MJ;!定義一維致SBregI

reg2:?regl(2);被賦值為7

2.二維數(shù)組

VARnumregl(3,4}:="1.2.3.4].[5.6,7,8].[9.10."J2)b!定義二維數(shù)組regl

reg2:=regl{3.2};!reg2-賦值為10

3.三維數(shù)組

VARnumreglI.2]43,4)M(5,6]J7,8]]1;!定義三維孩組regl

reg2:=regl{2.1.2).!reg2被賦值為6

在程序嬪寫過程中,當(dāng)需要調(diào)用大量的同種類型、同種用處的數(shù)據(jù)時(shí),在創(chuàng)建數(shù)據(jù)

時(shí)可以利用數(shù)組來存放這些數(shù)據(jù),這樣便于在編程過程中對(duì)其進(jìn)行靈活調(diào)用。

其至在大尾I/O信號(hào)調(diào)用過程中.也可以先將I/O進(jìn)行別名的操作.格I/O信號(hào)與信

號(hào)數(shù)據(jù)關(guān)聯(lián)起來,之后將這些信號(hào)數(shù)據(jù)定義為數(shù)組類型,在程序編寫中便于對(duì)同類型、

同用處的信號(hào)進(jìn)行調(diào)用

4、寫屏指令的運(yùn)用

在編寫例行程序時(shí),將該程序中的某些數(shù)據(jù)設(shè)置為參數(shù),這樣在

調(diào)用該程序時(shí)輸入不同的參數(shù)數(shù)據(jù),貝lj可對(duì)應(yīng)執(zhí)行在當(dāng)前數(shù)據(jù)值情況

下機(jī)器人對(duì)應(yīng)執(zhí)行的任務(wù)。

例如,在切割應(yīng)用中,頻繁使用切割正方形的程序,切割正方

形的指令及算法是一致的,只是正方形的頂點(diǎn)位置、邊長(zhǎng)不一致,這

樣可以將這兩個(gè)變量設(shè)為參數(shù)。

PROCrSquare(robtargetpBase,numnSideSize)

Move

LpBase,vI000,fine,toolI\WObj:=wobjO;

MoveOffs(pBase,nSideSize,0,0),vI000,fine,toolI\

LWObj:=wobjO;

MoveOffs(pBase,nSideSize,nSideSize,的,v1000,fine,

LtoolI\WObj:=wobjO;

MoveOffs(pBase,0,nSideSi罰,0),vI000,fine,toolI\

LWObj:=wobjO;

Move

LpBase,vI000,fine,toolI\WObj:=wobjO;

ENDPRO

C

PROCMAIN()

rSqu

arepI,I00;

rSqu

arep2,200;

ENDPRO

C

在調(diào)用該切割正方形的程序時(shí),再指定當(dāng)前正方形的頂點(diǎn)以及邊

長(zhǎng)即可在對(duì)應(yīng)位置切割對(duì)應(yīng)邊長(zhǎng)大小的正方形。上述程序中,機(jī)器人

先后切割了2個(gè)正方形,以pl為頂點(diǎn)、100為邊長(zhǎng)的正方形,以p2

為頂點(diǎn)、200為邊長(zhǎng)的正方形。

在機(jī)器人應(yīng)用過程中,節(jié)拍經(jīng)常是我們關(guān)注的一個(gè)焦點(diǎn),在RAPID

中有專門用于計(jì)時(shí)的時(shí)鐘數(shù)據(jù)以及一系列的計(jì)時(shí)指令和函數(shù)。

5、記時(shí)指令的應(yīng)用

在機(jī)器人應(yīng)用過程中,節(jié)拍經(jīng)常是我們關(guān)注的一個(gè)焦點(diǎn),在RAPID卬自專門用于計(jì)

時(shí)的時(shí)鐘數(shù)據(jù)以及一系列的詰時(shí)指令和函數(shù)。

時(shí)鐘數(shù)據(jù):Clock,必須定義為變單類型,最小計(jì)時(shí)單位為0.001s。

計(jì)時(shí)指令和函數(shù):

ClkStart

.開始計(jì)時(shí),

ClkStop

,停止計(jì)時(shí),

ClkRes

et.時(shí)鐘復(fù)位,

ClkRead.讀取時(shí)鐘數(shù)

值。

案例:

VARclockclockI;

PERSnumCycleTIme;

PROCrMove()

MoveLpl,vlOO,fi時(shí),tooJO,

ClkResetclockI;

ClkStartclockI,

MoveLp2,vI00,fine,toolO;

ClkStopclockI噸

CycleTime'=ClkRead(clockI),

ENDPROC

上述案例中,機(jī)器人到達(dá)pl點(diǎn)后開始計(jì)時(shí),至lj達(dá)p2點(diǎn)后停止計(jì)

時(shí),之后利用CkReadi賣取當(dāng)前時(shí)鐘數(shù)值,并將其賦值給數(shù)值型變

量CycleTime,貝!J當(dāng)前CycleTime的值即為機(jī)器人從pl點(diǎn)至ljp2

點(diǎn)的運(yùn)動(dòng)時(shí)間。

6、拆垛程序編寫

MODULEMainMoudlePERStooldata

tVacuum:=[TRUE,[[0,0,200],[1,0,0,0)],[30,[0,0,

130],[1,0,0,0],0,0,0));I定義工具坐標(biāo)系數(shù)據(jù)

tVacuum

PERSrobtarget

pPickBase:=[[1520.639271586,310.000414148,-49.999926686),[-0_

000000328,0,1,-0.000000068],[0,-1,0,0),(9E9,9E9,

9E9,9E9,9E9,9E9]];

I定義拆垛工位拾取基準(zhǔn)點(diǎn),以6.4.4節(jié)中所描述的第2種拾取情況?

為準(zhǔn)

PERSrobtarget

pP!aceType1:=[[353.779984371,1371.090215836,498_624386673),

[0_707I06815,0_000000588,0.707106747,0.000000435),[1,-1,

1,0),[9E9,9E9,9E9,9E9,9E9,9E9)),

I定義在產(chǎn)品結(jié)上放置產(chǎn)品的位置,第I種情況

00543,0.00000072,1,-0.000000I

27),(0,050,0),(9E9,9E9,9E9,9E9,9E9,9E9));

I定義在產(chǎn)品線上放置產(chǎn)品的位置,第2種情況

PERSrobtarget

pPlaceType3:=((654.92,1393.57,999.29),(3.86561

E-07,0.706048,-0.708164,-3.24774E-07),[0,0,-I,0),[9E+O

9,9E+09,9E+09,9E+09,9E+09,9E+09));

1定義在產(chǎn)品線上放置產(chǎn)品的位置,第3種情況

PERSrobtarget

pHo

me:=((96l.98463257,0,1800],[-0.000000365,0,1,0],[0,0,0,0],[9E9,9E

9,9E9,9E9,9E9,9E9]];

I定義機(jī)器人工作原點(diǎn)

PERSrobtarget

pPick:=((l515.64,310,950),(-3.28i07,0,1,-6.8巳

08],[0,-I,0,0),[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09)

I定義機(jī)器人拾取位置,此位置以pPickBase為基準(zhǔn)計(jì)算得出

PERSrobtarget

pPickAfter:=[[1015.64,810,I600],[-3.28E-07,0,1,-6.8巳

08),(0,-I,0,0],(9E+09,9EH-09,9E+09,9E+09,9E+09,9

E+09));

I定義機(jī)器人拾取產(chǎn)品后的抬高位置

PERSspeeddataMinSpeed:=[500,I00,5000,I000);

PERSspeeddataMidSpeed:=[1500,200,5000,I000);

PERSspeeddataMaxSpeed:=(3000,300,5000,1000);

!定義不同的速度數(shù)捱,用于不同的運(yùn)動(dòng)過程

PERSloaddataLoadEmpty:=(O.O1,(0,0,1],[1,0,0,0],0兒。];

1定義機(jī)器人空負(fù)載時(shí)的有效載荷數(shù)據(jù),重量設(shè)為O.OIkg,可

將其視為空載荷

PERSloaddata

LoadSingle:=[20,[0,0,150]5[1505

0,0],0,0,0];I定義機(jī)器人拾取I

個(gè)產(chǎn)品時(shí)的負(fù)載數(shù)據(jù)

PERSloaddata

LoadDouble:=[40,(0,0,500),(1,0,

0,0)夕,0,0);1定義機(jī)器人拾取

2個(gè)產(chǎn)品時(shí)的負(fù)載數(shù)據(jù)

PERSnumnCounter:=1;

I定義拆垛計(jì)數(shù)器

PERSnum

nCycleTime:=6.84

8,I定義數(shù)值型數(shù)

據(jù),用于表示節(jié)拍

時(shí)間

VARclock

Timer;1定義

時(shí)鐘數(shù)據(jù),用

于計(jì)算節(jié)拍

PERSnumnPos{10,4}:=[[310,0,1300,I),(310,-610,1300,

I],[-5,0,1000,3),(-5,-620,1000,3),(605,0,1000,2),(605,-610,10

00,2),[0,0,0,2),(0,-610,0,2),[615,0,0,3),(615,-620,0,3));

1定義位置數(shù)組,第一維為10,依次對(duì)應(yīng)產(chǎn)品垛中的I0個(gè)拾

取位置I第二維為4,分別對(duì)應(yīng)單個(gè)

拾取位置中的四項(xiàng)屬性值,依次為X偏移值、丫偏移值、Z偏移值、

拾取情況種類,拾取位置以示教的第2種情況中的拾取位置為基準(zhǔn),

結(jié)合該數(shù)組申的位置偏移量,最終計(jì)算出每次拾取產(chǎn)品時(shí)的具體位

置,從而依次完成各產(chǎn)品的拾取1最上面一層的兩個(gè)拾取位置I、2,

如圖6-34所示

中間層的4個(gè)拾取位置3'4、56,如圖6?35所示最下面一層

的4個(gè)拾取位置7、8、9、10,如圖636所示,其中7是

拾取基準(zhǔn)點(diǎn),其他位置均

PROCMain()

1聲明主程序

rlnitAII-

I程序起始位置調(diào)用初始化程序,用于復(fù)位機(jī)器人位置、信號(hào)、

數(shù)據(jù)等

WHILETRUEDO

1采用WHILETRUEDO無限循環(huán)結(jié)構(gòu),將機(jī)器人需要重復(fù)運(yùn)行

的動(dòng)作與初始化程序隔離開

rPick;

I調(diào)用拾取產(chǎn)品的程序

rPlace;

I調(diào)用放置產(chǎn)品的程序

ENDWHILE

ENDPROC

PR

OC

rlnit

AH()

1聲

明初

始化

程序

rMoveHome,,

I調(diào)用回工作原點(diǎn)HOME的程序

SetGOgoGrip,O;

1復(fù)位所有吸盤真空

1前面加上英文字符感嘆號(hào)“!”貝IJ表示當(dāng)前行為注釋行,此處是

用于比較單端口的數(shù)字輸出信號(hào)與信號(hào)組在使用上面的差別,此處使

用信號(hào)組較為方便

nCounter:=I'

I復(fù)位計(jì)數(shù)器

ENDPROC

PROCrPick()

I聲明拾取產(chǎn)品程序

ClkResetTimer;

I復(fù)位計(jì)時(shí)器

ClkStartTimer;

I開始計(jì)時(shí)

WaitDIdiPalletlnPosI

1拆垛工位處的到位檢測(cè)信號(hào),等待產(chǎn)品垛到位,否則一直等待

pPick:=Offs(pPickBase,nPos{nCounter,I},nPos

{nCounter,2},nPos{nCounter,3});

I利用Offs函數(shù)以及位置數(shù)據(jù)計(jì)算當(dāng)前計(jì)

數(shù)器值下的拾取位置pPickA仇

er.trans.x:=pPick.trans.x-500;

mmpPickA仇er.trans.y:=pPick.trans,y+500,

6度爺盟嗝"襄既般停置,其?值相對(duì)于PPick料兌沿著工件坐

pPickA仇er.trans.z:=1600;1計(jì)算

拾取后的中間過渡位置,其Z值為

固定值1600mm

MoveJOffs(pPick,0,0,500),MaxSpeed,z50,tVacuum\

WObj:=wobjO;

!利用MoveJ移動(dòng)至當(dāng)前拾取位置正上方500mm處

MoveLpPick,MinSpeed,tine,tVacuum\WObj:=wobjO;

I利用MoveL直線移動(dòng)至當(dāng)前拾取位置

SetGOgoGrip,15;

I置位吸盤動(dòng)作,所有吸盤全部建立真空

I注釋,不被執(zhí)行

WaitTime0.3:

1等待0.3s,保證產(chǎn)品已被拾取

IFnPos{nCounter,4}=1THEN

I判斷當(dāng)前拾取類型,若為情況I貝lj

GripLoadLoadSingle:

I加載單個(gè)產(chǎn)品的負(fù)載數(shù)據(jù)

ELSE

GripLoadLoadDouble;I其他情

,況即情況2、3,貝lj加載兩個(gè)

產(chǎn)品的負(fù)載數(shù)據(jù)

ENDIF

MOVELOffs(pPick,0,0,200),MinSpeed,z50,tVacuum\

WObj:=wobjO;

I利用MoveL直線移動(dòng)至拾取位置上方200mm處

MoveLpPickAfter,MidSpeed,zI00,tVacuum\WObj:=wobjO,

1利用MoveL移動(dòng)至拾取后中間過渡點(diǎn)

IFnCounter>=l0PulseDOdoPalletOut-

I判斷當(dāng)前計(jì)數(shù)是否大于等于10,即是否全部完成了當(dāng)前枝板的

拆垛任務(wù),若滿足條件則發(fā)出移除當(dāng)前枝板信號(hào),將空枝板移走,并移

入下一個(gè)載有產(chǎn)品的校板,此處為簡(jiǎn)化版的舊用法,該指令只適用

于判斷一種條件,條件滿足時(shí)只執(zhí)行一旬指令的特殊情況

ENDPROC

PROCrPlace()

I聲明放置程序

TESTnPos{nCounter,4}

I判斷當(dāng)前是哪種情況

CASEI:

rPlaceTypeI;

1若是情況I,貝lj調(diào)用放置程序I

CASE3:

rPlaceTy

pe3;

I若是情況3,貝lj調(diào)用放置程序3

DEFAULT:

TPErase;

TPWrite飛hevalueoftypeiseqor,pleasecheckit!”,

Stop;

!若不為上述三種情況,貝lj清屏并寫屏顯示相關(guān)錯(cuò)誤信號(hào),并停止程

序運(yùn)行

ENOTEST

IFnCounter>IOTHEN

I判斷當(dāng)前計(jì)數(shù)是否大于10,每個(gè)錢板上共拾取放置10次

MoveJpHome,MidSpeed,

fine,tVacuum\WObj:=wobjO;I若滿足條

件則移動(dòng)至HOME位置

nCounter:

=l;!計(jì)數(shù)

器復(fù)位

IF

END

;

imer

opT

ClkSt

計(jì)時(shí)

I停止

er);

d(Tim

lkRea

e:=C

leTim

nCyc

賦值

將其

,并

的數(shù)值

時(shí)器中

當(dāng)前計(jì)

I讀取

e

leTim

nCyc

ase,

TPEr

”\

is:

time

cycle

st

riteTa

TPW

tme;

ycleT

:=nC

Num

置的

取放

次拾

上一

顯示

并寫屏

屏,

I清

機(jī)

是多

節(jié)拍

C

PRO

用END

業(yè)

()

ype1

laceT

CrP

工PRO

程序I

放置

應(yīng)I聲明

,0;

nPos

lteml

DIdi

型Wait

中產(chǎn)

過程

放置

止在

品,防

沒有產(chǎn)

置處己

放置位

線前端

產(chǎn)品

典!等待

生碰

間發(fā)

槌品之

zI

eed,

idSp

,M

000)

I

1,0,0,

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論