KEBA機器人控制系統(tǒng)基礎操作與編程應用 教案 教學案例說明-碼垛拆跺_第1頁
KEBA機器人控制系統(tǒng)基礎操作與編程應用 教案 教學案例說明-碼垛拆跺_第2頁
KEBA機器人控制系統(tǒng)基礎操作與編程應用 教案 教學案例說明-碼垛拆跺_第3頁
KEBA機器人控制系統(tǒng)基礎操作與編程應用 教案 教學案例說明-碼垛拆跺_第4頁
KEBA機器人控制系統(tǒng)基礎操作與編程應用 教案 教學案例說明-碼垛拆跺_第5頁
已閱讀5頁,還剩8頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

碼垛拆垛程序說明

目錄

碼垛程序說明......................................................1

一、系統(tǒng)說明................................................1

二、項目說明................................................1

三、程序說明................................................2

1.GetTool:抓取工具程序.................................2

2.GetBox:抓取盒子程序.................................5

3.PutBox:放置盒子程序.................................8

4.PutTool:卸下工具程序................................10

5.Main:主程序........................................12

一、系統(tǒng)說明

控制器:CP088F

系統(tǒng)版本:KeMotion303.16

本體名稱:ArtarmTX60L

二、項目說明

碼垛項目名稱:Pallet_0416

項目程序組成:

GetBox:抓取盒子程序

GetTool:安裝抓取工具程序

Main:主程序

PutBcx:放置盒子程序

PutTool:卸下釋放工具程序

項目變量說明:

Palletjn:碼垛進(物體放入,在托盤上進行碼垛)

Pallet_Out:碼垛出(物體取出,在托盤上進行拆垛)

Pallet_ln_2:碼垛進2(物體放入2,在工作臺上進行碼垛)

注:(等待時間)可以設置長一些,比如1500ms,運行程序時,機器人速度

最好不要設置在100%,而是設置在50%左右即可。

②注意標黃底程序語句里,指令里用的動態(tài)參數(shù)和逼近參數(shù)(針對本條指令),以及單獨

設置變量的動態(tài)參數(shù)組和逼近參數(shù)組的使用區(qū)別(針對■改語句下的所有動作指令)。

三、程序說明

1.GetTool:抓取工具程序

IO.DO_ConnectTool:=FALSE(抓取工具信號關閉)

WaitTime(500)(等待500ms)

RefSys(World)(設置參考坐標系為世界坐標系)

Tool(DefaultTool)(設置目前使用工具坐標系為默認工具坐標系)

PTP(apHome)(機器人關節(jié)運動到Home點)

PTP(apGetTool_gddl)(機器人關節(jié)運動到抓取工具的過渡點

Lin(cpGetTool_gdd2)(機器人直線運動到抓取工具的過渡點2)

Lin(cpGetToolPoint,dO,oaO)(機器人直線運動到抓取工具點,并設置該條運動指

令動態(tài)參數(shù)為dO,逼近參數(shù)為。2)

WaitlsFinished()(等待機器人運動到指定位置點)

IO.DO_ConnectTool:=TRUE(抓取工具信號打開)

WaitTime(500)(等待500ms)

Lin(cpGetTool_gdd3)(機器人直線運動到抓取7:具的過渡點3)

PTP(apGetTool_gddl)(機器人關節(jié)運動到抓取工具的過渡點1)

PTP(apHome)(機器人關節(jié)運動到Home點)

附圖說明如下:

|IArtwmljfWorld|\DCuitroolj00%|

Ptlk<_0416G<Tooi33:、0雋16I1014

□?兒!L

GttToolsnphe

;lODO.ConfMCtTool:■FALSE

3WammH500)

4RefSyi(WortcO

5lodgMlTToM

7PTP(?pGt<To?4_Qddn

?Un(cpG4tTool.odd2)

3Lkn(cpC?rroolPoknt.dOM0|

IOW?MHFZh?dO

1110DO.ConmctToolTRUE

12WiRTImHWO)

I)Lin(cpG<tTooLodtf5)

14PTP(ipG?<Toci_gdd1J

TPTP(tpHofnt)

l<?>EOF<?

圖1機器人關節(jié)運動到Home點

ERA

PaBetMHGKTool

GMTocISTEPtj

?K>DO.CofWWCfTo?i:?FALSE

3W.<TE|WO|

4R?TSyMWo<M)

5To<Mp?CMJ?TooO

SPTP(epHo<n?)

P-P|jpGetTc.:..Qd<:<:

?LFcpG<T。。3g

>LrcpGMTooTKdoo?O)

toWaevFlnitMOO

iiIODO.ConnecfTool:?TRUE

12WatTwlWOI

ULHcpGMTool_9dd3)

MPTP(apG?(Tocij><M1?

?5PTF(epHom<)

??>EOF<?

圖2機器人關節(jié)運動到抓取工具的過渡點1

7Artar?T\|1K>%

3G?<T2':??,套1,

國PaMtJMISlAjfar^TxeCtG?tToc4FTP|ipMar

G?T2FTBPtr

710DO_C4<ww€fT?ol??FMSC

9WaffTtoM<M0l

3TocMDWMTT

?PTPtapHWM)

10

Il?DO.CEtcfTI:?TRUE

f:WaffTtowdOOI

l>LWCtG<To?i_e>MJ)

M小《pG?(T2-fddn

?srTFttpHHm)

It??fOF?<

圖3機器人關節(jié)運動到抓取工具的過渡點2

7AftermTfWcrW\(MMMTOOI100%

),t_M6MTool

AT(MirwroOLpeGHToolPTPfipHjfl

GMTMSltPVj10

2?DO.C?<wwcfTo?l?FALW

jWaMTim^MOl

4R?fSyt(Wo<M|

9TafDtfeuCToon

cPTPtipHw<)

'PTP(?pG^Tool_fl<Kl1)

?EcpG^fTooUKkO

?W4E”wdO

iiQDO.CeanectTool?TRl^

12WaffT?n?<mi

19LEcgfroolqg

MPTP(?pGHTool_o<kl1)

16FTP(?pMcm?)

K舊”

圖4機器人直線運動到抓取工具點

GHTOOISTtPtjU

2lODO.Coon^tTool-FALSI

>WMT<YM(K0)

圖5機器人直線運動到抓取工具的過渡點3

2.GetBox:抓取盒子程序

IO.DO_EnableVacuum:=FALSE(真空吸盤關閉)

WaitTime(500)(等待500ms)

RefSysfWorld)(設置參考坐標系為世界坐標系)

Tool(DefaultTool)(設置目前使用工具坐標系為默認工具坐標系)

PTP(apHome)(機器人關節(jié)運動到Home點)

PTP(apGetBox_gddl)(機器人關節(jié)運動到抓取盒子的過渡點\)

Tool(Tool_Vacuum)(設置目前使用工具坐標系為真空吸盤工具坐標系)

PTP(apGetBox_gdd2)(機器人關節(jié)運動到抓取盒子的過渡點2)

(機器人直線運動到抓取盒子點,并設置該條運動指

Lin(cpGetBox_Point/dO,oaO)

令的動態(tài)參數(shù)為dO,逼近參數(shù)為oaO)

WaitlsFinishedf)(等待機器人運動到指定位置點)

IO.DO_EnableVacuum:=TRUE(真空吸盤打開)

WaitTime(SOO)(等待500ms)

PTP(apGetBox_gdd2)(機器人關節(jié)運動到抓取盒子的過渡點2)

PTP(apGetBox_gddl)(機器人關節(jié)運動到抓取盒子的過渡點

PTP(apHome)(機器人關節(jié)運動到Home點)

附圖說明如下:

7PTP(M>G?tBox-odd1|

6Too<(Tooi-V?cuum|

9PTP(apGttBox.gdd2)

,oLri(cpGM8oi_PoiHt.goaO)

IIWs*hFkni?h?dO

12IO.DO_£nibleV?ajum-TRUE

13WiltT?me(500|

uPTP(apGttBox.gdd2)

isPTP“G?tBox_9dd1)

16PTP(?pHomt)

17?>EOF?<

圖6機器人關節(jié)運動到Home點

AnarWorld\D?f?J(Tool300%

l」UH-JAf11*%(>?>?

Qr*ttft>99!?W

o;Eu?BCA?,a*?a0????;工

G?<B?xFTCP戶夕,,#l~Q?21*Z

2IOOO.IrwW?V?€uum-FALU

3WtrfTm0KO)

4RgyXWE

3TOGA?U*TT

6PTP(?pH0^)

iPTP(4pG?<0oBj)d<11)

9PTFt^>G^So?^d<O)

10Lr<cpG?tBoi_PoM<0.o?0)

HWMMFWMdO

12K>IX>.EnMieV?cuum?TRUE

13WtMTkVH<001

i4PTP(4pG?(Bo>_04<Q)

15rTF^G^?o?_B<M1)

sunstop

?<

n?>COF?<

圖7機器人關節(jié)運動到抓取盒子的過渡點1

MtMST1Ph10

210OO.En^UVacuum-FALSE

3W?<T??w|W0|

4R?f8y?(W0f1d|

SZgfc?TT

6PTP(ipHom?)

:PTP(?pGt<BOM_fl<M1)

?Toe4(Tooi.Vacuui^)

9PTP(?pGMB??_g?>dQ)

.PK.680I

IlWWtFknHMdO

1210DO.EfMbtoVacuum:?TRUE

UWsffTm|500)

MPTP(?pGHBoi_??M2)

ISPTP(ipG?<Boi_fl<M1)

KPTP(tpHom?)

???>ior?<

PWR

圖8機器人關節(jié)運動到抓取盒子的過渡點2

圖9機器人直線運動到抓取盒子點

£P.MJM1.(MwmTXm.peo^sth)GttBoiE(?pH??r.

STEPhH

2IODO.€rMM?VKUOT-FALSE

9WaMBmHSOOI

4RtfSy?(WortflO

6T8KMMAY。。。

<PTP<ipHom?)

1PTP(M>G?CB0M.Qd<J1>

9TglCTooLVecuum)

□PTP(epC?<Box_gdd2)

10L*n(cpC^B?i_Po*ntgosO)IM

IIWartltFraMdO

12lODO.EfMNeVacuum,TRUE

13W?itnmHW01

PTP(ioG?Box_oddn

?PTP(apHom?)

一I

PWR

圖10機器人抓取盒子后,關節(jié)運動到抓取盒子的過渡點1

3.PutBox:放置盒子程序

Tool(Tool_Vacuum)(設置目前使用工具坐標小吸盤工具坐標系)

PTP(apHome)(機器人關節(jié)運動到Home點)

PTP(apPutBox_gddl)(機器人關節(jié)運動到放置盒子的過渡點

Dyn(dO)(設置以下所有指令的動態(tài)參數(shù)為d。)

Ovl(oaO)(設置以下所仃指令的動態(tài)參數(shù)為。。0)

Pallet_ln.ToPut()(進垛去放置盒子點、)

WaitlsFinished()(等待機器人運動到指定位置點)

IO.DO_EnableVacuum:=FALSE(真空吸盤關閉)

WaitTime(SOO)(等待500ms)

Pallet_ln.FromPut()(從放置盒子點出垛)

PTP(apPutBox_gddl)(機器人關節(jié)運動到放置盒子的過渡點口

PTP(apHome)(機器人關節(jié)運動到Home點)

//Lin(cpPutBox_Point)(該指令被注釋,不執(zhí)行)

//Lin(cp_PutBox_Point2)(該指令被注釋,不執(zhí)行)

附圖說明如下:

圖11機器人關節(jié)運動到放置盒子的過渡點1

圖12進垛到達放置盒子點

圖13出垛到碼垛入口點

4.PutTool:卸下工具程序

RefSysfWorld)(設置參考坐標系為世界坐標系)

Tool(DefaultTool)(設置目前使用工具坐標系為默認工具坐標系)

PTP(apHome)(機器人關節(jié)運動到Home點)

PTP(apPutTool_gddl)(機器人關節(jié)運動到放置工具的過渡點口

Lin(cpPutTool_gdd2)(機器人直線運動到放置工具的過渡點2)

)(機器人直線運動到放置工具點,并設置該運動指令動態(tài)

LinlcpPutToolPoint,dOzoaO

參數(shù)為dO,逼近參數(shù)為oaO)

WaitlsFinished()(等待機器人運動到指定位置點)

IO.DO_ConnectTool:=FALSE(抓取工具信號關閉)

WaitTime(SOO)(等待500ms)

PTP(apPutTool_gddl)(機器人關節(jié)運動到放置工具的過渡點

PTP(apHome)(機器人關節(jié)運動到Home

附圖說明如下:

圖14機器人關節(jié)運動到放置工具的過渡點1

圖15機器人直線運動到放置工具的過渡點2

圖16機器人直線運動到放置工具點

5.Main:主程序

Pallet_ln.Reset))(Palletjn碼垛數(shù)據(jù)復原-初始化)

CALLGetToolf)(調用GetTool子程序)

WHILENOTPalletJn.isFullDOPalletjn碼垛沒堆滿時進行如下操作,用循環(huán)指令)

CALLGetBox()(調用GetBox子程廳,)

CALLPutBox()(調用PutBox子程序)

END_WHILE(結束WHILE循環(huán))

Pallet_Out.actParts:=8(設置PHletJDut碼垛中當前物體數(shù)為8,用賦值語句)

Pallet_ln_2.Reset()(Pa"et_m_2碼垛數(shù)據(jù)復原,初始化)

WHILENOTPalletJn_2.isFullDO(Pallet_ln_2碼垛沒有堆滿時進行如下操作)

Dyn(dO)(設置以下所有指令的動態(tài)參數(shù)為dO)

Ovl(oaO)(設置以下所有指令的動態(tài)參數(shù)為0ao)

Pallet_Out.ToGet()(進垛夫抓取盒子點)

WaitlsFinished()(等待機器人運動到指定位置點)

IO.DO_EnableVacuum:=TRUE(真空吸盤打開)

WaitTime(1500)(等待1500ms)

Pallet_Out.FromGet()(從抓取盒子點出垛)

PTP(apHome)(機器人關節(jié)運動到Home點)

Pallet_ln_2.ToPut()(進垛去放置盒子點)

WaitlsFinished()(等待機器人運動到指定位置點,即等待機器人到位)

IO.DO_EnableVacuum:=FALSE(真空吸盤關閉)

WaitTime(1500)(等待1500ms)

Pallet_ln_2.FromPut()(從放置盒子低出垛)

PTP(apHome)(機然人關節(jié)運動到Home點、)

END_WHILE(結束WHILE循環(huán))

CALLPutToolf)

溫馨提示

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

評論

0/150

提交評論