国产日韩欧美一区_无码精品人妻一区二区久久久_日本丰满妇人成熟免费中文字幕_bl肉yin荡受np各种play男男_久久综合亚洲色社区

您現(xiàn)在的位置:首頁(yè)  >  行業(yè)新聞  >  技術(shù)與應(yīng)用

ABB機(jī)器人之高級(jí)編程:安全域WorldZone的使用!

2019/4/30 17:49:47 標(biāo)簽:中國(guó)傳動(dòng)網(wǎng)

微信圖片_20190430111052.jpg

一、簡(jiǎn)介

WorldZones的作用是在機(jī)器人位于用戶專門定義的區(qū)域內(nèi)時(shí),停止該機(jī)器人或設(shè)置一個(gè)輸出信號(hào)。

有如下特性:

1、當(dāng)TCP或者關(guān)節(jié)值進(jìn)入某個(gè)區(qū)間或離開(kāi)某個(gè)區(qū)間的時(shí)候,Set一個(gè)輸入輸出信號(hào);

2、當(dāng)機(jī)器人到達(dá)某個(gè)區(qū)間的邊界時(shí),停止機(jī)器人;

3、可以定義長(zhǎng)方體、圓柱體、球體以及關(guān)節(jié)值區(qū)域;

4、可以通過(guò)啟動(dòng)自動(dòng)激活,也可以使用程序進(jìn)行激活與禁用;

5、手動(dòng)、自動(dòng)都有效;

6、如果是多機(jī)器人系統(tǒng),每個(gè)機(jī)器人都有自己獨(dú)立的WorldZone。

二、典型應(yīng)用

1、當(dāng)兩臺(tái)機(jī)器人的工作區(qū)域部分重疊時(shí)??赏ㄟ^(guò)WorldZones監(jiān)控來(lái)安全地消除這兩臺(tái)機(jī)器人相撞的可能性;

2、當(dāng)該機(jī)器人的工作區(qū)域內(nèi)有某種永久性障礙或某些臨時(shí)外部設(shè)備時(shí)??蓜?chuàng)建一個(gè)禁區(qū)來(lái)防止機(jī)器人與此類設(shè)備相撞;

3、指明相關(guān)機(jī)器人正處在一個(gè)“允許用可編程邏輯控制器(PLC)來(lái)開(kāi)始執(zhí)行程序”的位置;

4、出于安全考慮,不可使用此功能進(jìn)行人員安全的保護(hù)。

三、數(shù)據(jù)類型

數(shù)據(jù)類型

描述

wztemporary

wztemporary的作用是識(shí)別臨時(shí)全局區(qū)域,并可用在RAPID程序中的任何位置。

可通過(guò)RAPID指令來(lái)禁用、重新啟用或擦除臨時(shí)全局區(qū)域。當(dāng)載入一段新程序時(shí),或當(dāng)從MAIN例程的起點(diǎn)處開(kāi)始執(zhí)行程序時(shí),系統(tǒng)便會(huì)自動(dòng)擦除臨時(shí)全局區(qū)域。

wzstationary

wzstationary的作用是識(shí)別固定全局區(qū)域,并僅能用在與事件“通電”相關(guān)聯(lián)的一則事件例程中。定義事件例程方面的信息請(qǐng)參見(jiàn)操作員手冊(cè)-帶FlexPendant的IRC5。

固定全局區(qū)域會(huì)始終處于激活狀態(tài),而重啟(先關(guān)閉電源然后再打開(kāi)電源,或更改系統(tǒng)參數(shù))則會(huì)再次激活此類區(qū)域。無(wú)法通過(guò)RAPID指令來(lái)禁用、啟用或擦除固定全局區(qū)域。

如果涉及到安全問(wèn)題,則應(yīng)使用固定全局區(qū)域。

shapedata

shapedata的作用是描述一個(gè)全局區(qū)域的幾何形狀。

可將全局區(qū)域定義為4種不同的幾何形狀:

?一個(gè)方盒,所有側(cè)面都與全局坐標(biāo)系平行

?一個(gè)圓柱體,與全局坐標(biāo)系的z軸平行

?一個(gè)球體

?針對(duì)機(jī)器人軸和/或外軸的一個(gè)關(guān)節(jié)角區(qū)

VARshapedatavolume;

四、指令

1、WZBoxDef-定義一個(gè)箱形全局區(qū)域

WZBoxDef(WorldZoneBoxDefinition)用于定義擁有直線箱形狀,且各側(cè)均與世

界坐標(biāo)系各軸平行的全局區(qū)域。

如:

VARshapedatavolume;

CONSTposcorner1:=[200,100,100];

CONSTposcorner2:=[600,400,400];

...

WZBoxDef\Inside,volume,corner1,corner2;

定義坐標(biāo)與世界坐標(biāo)系各軸平行,且由對(duì)角corner1和corner2所定義的直線箱。

用機(jī)器人定義,需要使用WobJ0.

變?cè)猈ZBoxDef[\Inside]|[\Outside]ShapeLowPointHighPoint

2、WZCylDef(全局區(qū)域圓柱體定義)為,用于定義外形為圓柱形,且圓柱軸與世界坐標(biāo)

系z(mì)軸平行的全局區(qū)域。

VARshapedatavolume;

CONSTposC2:=[300,200,200];

CONSTnumR2:=100;

CONSTnumH2:=200;

...

WZCylDef\Inside,volume,C2,R2,H2;

定義底圓中心C2、半徑R2且高度H2的圓柱體。

變?cè)猈ZCylDef[\Inside]|[\Outside]ShapeCentrePointRadiusHeight

3、WZSphDef-定義球形全局區(qū)域

VARshapedatavolume;

CONSTposC1:=[300,300,200];

CONSTnumR1:=200;

...

WZSphDef\Inside,volume,C1,R1;

根據(jù)其中心C1及其半徑R1,定義命名為volume的球體。

變?cè)猈ZSphDef[\Inside]|[\Outside]ShapeCentrePointRadius

4、WZHomeJointDef-定義內(nèi)部接頭的全局區(qū)域

WZHomeJointDef(WorldZoneHomeJointDefinition)用于定義接頭坐標(biāo)系中的

全局區(qū)域,以便將機(jī)械臂和外軸作為HOME或SERVICE位置。

VARwzstationaryhome;

...

PROCpower_on()

VARshapedatajoint_space;

CONSTjointtargethome_pos:=[[0,0,0,0,0,-45],[0,9E9,9E9,9E9,9E9,9E9]];

CONSTjointtargetdelta_pos:=[[2,2,2,2,2,2],[5,9E9,9E9,9E9,9E9,9E9]];

...

WZHomeJointDef\Inside,joint_space,home_pos,delta_pos;

WZDOSet\Stat,home\Inside,joint_space,do_home,1;

ENDPROC

變?cè)猈ZHomeJointDef[\Inside]|[\Outside]ShapeMiddleJointValDeltaJointVal

有關(guān)某些軸的值9E9意味著不應(yīng)該監(jiān)控該軸。編程期間,

無(wú)效外軸亦得出9E9。

5、WZLimJointDef-定義有關(guān)接頭內(nèi)限制的全局區(qū)域

WZLimJointDef(WorldZoneLimitJointDefinition)用于定義接頭坐標(biāo)系中的全

局區(qū)域,以便將機(jī)械臂和外軸用于工作區(qū)域的限制。

VARwzstationarywork_limit;

...

PROCpower_on()

VARshapedatajoint_space;

CONSTjointtargetlow_pos:=[[-90,9E9,9E9,9E9,9E9,9E9],[-1000,9E9,9E9,9E9,9E9,9E9]];

CONSTjointtargethigh_pos:=[[90,9E9,9E9,9E9,9E9,9E9],[9E9,9E9,9E9,9E9,9E9,9E9]];

...

WZLimJointDef\Outside,joint_space,low_pos,high_pos;

WZLimSup\Stat,work_limit,joint_space;

ENDPROC

程序執(zhí)行和點(diǎn)動(dòng)期間,固定式全局區(qū)域work_limit的定義和啟用,將機(jī)械臂軸1的工

作區(qū)域限制在-90到+90度,并將外軸extax.eax_a限制在-1000mm。

變?cè)猈ZLimJointDef[\Inside]|[\Outside]ShapeLowJointValHighJointVal

五、啟用及停用

1、WZEnable-啟用臨時(shí)全局區(qū)域監(jiān)控

WZEnable(WorldZoneEnable)用于重新啟用對(duì)臨時(shí)全局區(qū)域的監(jiān)控,其預(yù)先定

義,以便停止移動(dòng)或設(shè)置輸出。

VARwztemporarywzone;

...

PROC...

WZLimSup\Temp,wzone,volume;

MoveLp_pick,v500,z40,tool1;

WZDisablewzone;

MoveLp_place,v200,z30,tool1;

WZEnablewzone;

MoveLp_home,v200,z30,tool1;

ENDPROC

當(dāng)向p_pick移動(dòng)時(shí),檢查機(jī)械臂TCP的位置,以便其不會(huì)進(jìn)入指定體積wzone。當(dāng)轉(zhuǎn)

到p_place時(shí),不實(shí)施該監(jiān)控,但是在轉(zhuǎn)到p_home前,重新啟用該監(jiān)控。

2、WZDisable-停用臨時(shí)全局區(qū)域監(jiān)控

WZDisable(WorldZoneDisable)用于停用對(duì)臨時(shí)全局區(qū)域的監(jiān)控,其預(yù)先定義以

便停止移動(dòng)或設(shè)置輸出。

VARwztemporarywzone;

...

PROC...

WZLimSup\Temp,wzone,volume;

MoveLp_pick,v500,z40,tool1;

WZDisablewzone;

MoveLp_place,v200,z30,tool1;

ENDPROC

當(dāng)向p_pick移動(dòng)時(shí),檢查機(jī)械臂TCP的位置,以便其不會(huì)進(jìn)入指定體積wzone。當(dāng)轉(zhuǎn)

到p_place時(shí),不實(shí)施該監(jiān)控。

3、WZFree-擦除臨時(shí)全局區(qū)域監(jiān)控

WZFree(WorldZoneFree)用于擦除臨時(shí)全局區(qū)域的定義,其預(yù)先定義,以便停止

移動(dòng)或設(shè)置輸出。

VARwztemporarywzone;

...

PROC...

WZLimSup\Temp,wzone,volume;

MoveLp_pick,v500,z40,tool1;

WZDisablewzone;

MoveLp_place,v200,z30,tool1;

WZEnablewzone;

MoveLp_home,v200,z30,tool1;

WZFreewzone;

ENDPROC

當(dāng)向p_pick移動(dòng)時(shí),檢查機(jī)械臂TCP的位置,以便其不會(huì)進(jìn)入指定體積wzone。當(dāng)轉(zhuǎn)

到p_place時(shí),不實(shí)施該監(jiān)控,但是在轉(zhuǎn)到p_home前,重新啟用該監(jiān)控。當(dāng)達(dá)到該

位置時(shí),擦除全局區(qū)域定義。

4、WZDOSet-啟用全局區(qū)域,設(shè)置數(shù)字信號(hào)輸出

WZDOSet(WorldZoneDigitalOutputSet)用于定義行動(dòng),并啟用全局區(qū)域,以監(jiān)控機(jī)械臂移動(dòng)。在執(zhí)行該指令后,當(dāng)機(jī)械臂TCP或機(jī)械臂/外軸(接頭中的區(qū)域)位于指定全局區(qū)域內(nèi),或正在接近全局區(qū)域時(shí),將數(shù)字信號(hào)輸出信號(hào)設(shè)置為指定值。

VARwztemporaryservice;

PROCzone_output()

VARshapedatavolume;

CONSTposp_service:=[500,500,700];

...

WZSphDef\Inside,volume,p_service,50;

WZDOSet\Temp,service\Inside,volume,do_service,1;

ENDPROC

機(jī)械臂TCP在程序執(zhí)行期間位于指定球體內(nèi)時(shí),或出現(xiàn)點(diǎn)動(dòng)時(shí),有關(guān)在設(shè)置信號(hào)

do_service的應(yīng)用程序中的臨時(shí)全局區(qū)域service的定義。

變?cè)猈ZDOSet[\Temp]|[\Stat]WorldZone[\Inside]|[\Before]ShapeSignalSetValue

啟用規(guī)定的全局區(qū)域。從此刻起,監(jiān)控機(jī)械臂TCP位置(或機(jī)械臂/外接頭位置),且

當(dāng)機(jī)械臂TCP位置(或機(jī)械臂/外接頭位置)位于體積(\Inside)內(nèi)或接近體積

(\Before)邊界時(shí),將設(shè)置輸出。

如果使用WZHomeJointDef或WZLimJointDef連同WZDOSet,則僅當(dāng)所有有效軸以

及接頭空間監(jiān)控位于接頭空間前或內(nèi)部時(shí),方才設(shè)置數(shù)字信號(hào)輸出信號(hào)。

5、WZLimSup-啟用全局區(qū)域限制監(jiān)控

WZLimSup(WorldZoneLimitSupervision)用于定義行動(dòng),并啟用全局區(qū)域,以監(jiān)控機(jī)械臂或外軸的工作區(qū)域。

執(zhí)行該指令后,在程序執(zhí)行和點(diǎn)動(dòng)期間,當(dāng)機(jī)械臂TCP達(dá)到規(guī)定全局區(qū)域,或當(dāng)機(jī)械

臂/外軸達(dá)到接頭中的規(guī)定全局區(qū)域時(shí),移動(dòng)得以停止。

VARwzstationarymax_workarea;

...

PROCPOWER_ON()

VARshapedatavolume;

...

WZBoxDef\Outside,volume,corner1,corner2;

WZLimSup\Stat,max_workarea,volume;

ENDPROC

包含箱外區(qū)域(臨時(shí)儲(chǔ)存在volume中)以及行動(dòng)工作區(qū)域監(jiān)控的固定式全局區(qū)域

max_workarea的定義和啟用。在進(jìn)入箱外區(qū)域之前,機(jī)械臂在出現(xiàn)錯(cuò)誤消息時(shí)停止。

 

聲明:本文為轉(zhuǎn)載類文章,如涉及版權(quán)問(wèn)題,請(qǐng)及時(shí)聯(lián)系我們刪除(QQ: 2737591964),不便之處,敬請(qǐng)諒解!

 

供稿:PLC技術(shù)圈

本文鏈接:http://www.onehpc.cn/content.aspx?url=rew&id=1412

成員中心

《伺服與運(yùn)動(dòng)控制》

《伺服與運(yùn)動(dòng)控制》

創(chuàng)刊于2005年,秉承面向市場(chǎng)、面向科技、面向應(yīng)用、面向行業(yè),集實(shí)用性、信息性、...

《機(jī)器人與智能系統(tǒng)》

《機(jī)器人與智能系統(tǒng)》

是深圳市機(jī)器人協(xié)會(huì)、中國(guó)傳動(dòng)網(wǎng)共同主辦的聚焦機(jī)器人、智能系統(tǒng)領(lǐng)域的高端產(chǎn)經(jīng)...

《直驅(qū)與傳動(dòng)》

《直驅(qū)與傳動(dòng)》

聚焦直驅(qū)產(chǎn)業(yè),整合資源,為直驅(qū)企業(yè)與用戶搭建橋梁。