ABB RAPID 程序 WorldZone 归纳
生活随笔
收集整理的這篇文章主要介紹了
ABB RAPID 程序 WorldZone 归纳
小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
在 RAPID 程序中,靜態(tài)的 WorldZone 不能被解除并再次激活,或者進(jìn)行擦除。
? ? ? ??在 RAPID 程序中, 臨時(shí)的 WorldZone 可以被解除(WZDisable) , 再次激活(WZEnable) 或者擦除(WZFree)。
語(yǔ)法:
WZDOSet ? ? ? ? ? ?WZDOSet - Activate world zone to set digital output. ? ? ? ? ? ?語(yǔ)法:WZDOSet [\Temp] | [\Stat] WorldZone [\Inside] | [\Before] Shape ?Signal SetValue
[[‘\’T emp] |[‘\’Stat]’,’]?
[WorldZone’:=’]<wztemporary 類型的變量或者恒量(INOUT)>?
[‘\’Inside] |[‘\’Before] ‘,’
[Shape’:=’]<shapedata 類型的變量(V AR)>’,’
[Signal’:=’]<signaldo 類型的變量(V AR)>’,’
[SetV alue’:=’]<dionum 類型的表達(dá)式(IN)>’;’
? ? ? ??相關(guān)信息:
? ? ? ??相關(guān)信息 ?參看
World Zones ?《RAPID 參考手冊(cè)—RAPID 概述》運(yùn)動(dòng)和 I/O 原理—World Zone 部分
World Zone 形狀 ?第 1004 頁(yè) shapedata—World Zone 形狀數(shù)據(jù)部分
臨時(shí) WorldZone ?第 1045 頁(yè) wztemporary—臨時(shí) WorldZone 數(shù)據(jù)
靜態(tài) WorldZone ?第 1043 頁(yè) wzstationary—靜態(tài) WorldZone 數(shù)據(jù)
定義球形 World Zone ?第 636 頁(yè) WZSphDef—定義球形 World Zone。
定義箱體形狀的 World Zone ?第 611 頁(yè) WZBoxDef—定義箱體形狀的 World Zone。
定義圓柱形狀 World Zone ?第 613 頁(yè) WZCylDef—定義圓柱形狀的 World Zone。
定義關(guān)節(jié) home 位的 World Zone ?第 625 頁(yè) WZHomeJointDef—定義關(guān)節(jié) home 位的 World Zone。
激活 WorldZone 限位監(jiān)視 ?第 633 頁(yè) WZLimSup—激活 WorldZone 限位監(jiān)視
信號(hào)進(jìn)入水平 ?《技術(shù)參考手冊(cè)—系統(tǒng)參數(shù)》I/O 主題—信號(hào)類型—進(jìn)入級(jí)部分
1.231.WZEnable—激活臨時(shí) WorldZone 監(jiān)視
? ? ? ??基本范例:
? ? ? ??該指令的基本范例說(shuō)明如下:
例 1 ?V AR wztemporary wzone;?
…
PROC …
WZLimSup \T emp, wzone, volume;?
MoveL ?p_pick, v500, z40, tool1;?
WZDisable wzone;?
MoveL ?p_place, v200, z30, tool1;?
WZEnable wzone;?
MoveL ?p_home, v200, z30, tool1;?
ENDPROC?
? ? ? ??當(dāng)往 p_pick 移動(dòng)的時(shí)候, 檢測(cè)到機(jī)器人 TCP 的位置, 這樣它就不能進(jìn)入特定的空間 wzone。 當(dāng)進(jìn)入 p_place的時(shí)候沒(méi)有進(jìn)行這個(gè)監(jiān)視,但是在移動(dòng)到 p_home 的時(shí)候重新激活。
? ? ? ??項(xiàng)目:
? ? ? ??WZEnable WorldZone?
? ? ? ??WorldZone:
數(shù)據(jù)類型:wztemporary?
wztemporary 類型的變量或者恒量,包含要激活的 WorldZone 的標(biāo)識(shí)符。
程序執(zhí)行:
臨時(shí) WorldZone 被再次激活。注意,當(dāng)創(chuàng)建 WorldZone 的時(shí)候,它是自動(dòng)激活的。如果被 WZDisable 指令解除后,它只是需要重新激活。
限制:
只有臨時(shí)的 WorldZone 可以被解除或者再激活,靜態(tài)的 WorldZone 總是激活的。
語(yǔ)法:
WZEnable?
[WorldZone’:=’]<wztemporary 類型的變量或者恒量(INOUT)>’;’
? ? ? ??相關(guān)信息:
? ? ? ??相關(guān)信息 ?參看
World Zones ?《RAPID 參考手冊(cè)—RAPID 概述》運(yùn)動(dòng)和 I/O 原理—World Zone 部分
World Zone 形狀 ?第 1004 頁(yè) shapedata—World Zone 形狀數(shù)據(jù)部分
臨時(shí) WorldZone 數(shù)據(jù) ?第 1045 頁(yè) wztemporary—臨時(shí) WorldZone 數(shù)據(jù)
激活 WorldZone 限位監(jiān)視 ?第 633 頁(yè) WZLimSup—激活 WorldZone 限位監(jiān)視
激活 World Zone 數(shù)字輸出設(shè)置 ?第 617 頁(yè) WZDOSet—激活 World Zone 來(lái)設(shè)置數(shù)字輸出。
解除 WorldZone ?第 615 頁(yè) WZDisable—解除臨時(shí) WorldZone?
? ? ? ??用途:
? ? ? ??WZFree(WorldZone 釋放)用來(lái)擦除臨時(shí) WorldZone 的定義,之前定義用來(lái)停止運(yùn)動(dòng)或者設(shè)定輸出的。
? ? ? ??基本范例:
? ? ? ??該指令的基本范例說(shuō)明如下:
例 1 ?V AR wztemporary wzone;?
…
PROC …
WZLimSup \T emp, wzone, volume;?
MoveL ?p_pick, v500, z40, tool1;?
WZDisable wzone;?
MoveL ?p_Place, v200, z30, tool1;?
WZEnable wzone;?
MoveL ?p_home, v200, z30, tool1;?
WZFree wzone;?
ENDPROC?
? ? ? ??當(dāng)往 p_pick 移動(dòng)的時(shí)候,檢測(cè)到機(jī)器人 TCP 的位置,所以它不能夠進(jìn)入指定的 wzone 空間。當(dāng)往 p_place移動(dòng)的時(shí)候,該監(jiān)視沒(méi)有執(zhí)行,但是在往 p_home 移動(dòng)之前重新激活該監(jiān)視。到達(dá) p_home 之后,WorldZone 的定義被擦除。
? ? ? ??項(xiàng)目:
WZFree WorldZone?
WorldZone:
數(shù)據(jù)類型:wztemporary?
wztemporary 類型的變量或者恒量,包含要擦除的 world zone 的標(biāo)識(shí)符。
? ? ? ??程序執(zhí)行:
? ? ? ??臨時(shí) world ?zone 首先被解除,然后它的定義被擦除。一旦擦除,臨時(shí) world ?zone 不能被重新激活也不能被解除。
? ? ? ??限制:
? ? ? ??只有臨時(shí) world zone 可以被解除、重新激活或者擦除,靜態(tài) world zone 通常都是激活的。
? ? ? ??語(yǔ)法:
WZFree [WorldZone’:=’]<wztemporary 類型的變量或者恒量(INOUT)>’;’
相關(guān)信息:
相關(guān)信息 ?參看
World Zones ?《RAPID 參考手冊(cè)—RAPID 概述》運(yùn)動(dòng)和 I/O 原理—World Zone 部分
World Zone 形狀 ?第 1004 頁(yè) shapedata—World Zone 形狀數(shù)據(jù)部分
臨時(shí) WorldZone 數(shù)據(jù) ?第 1045 頁(yè) wztemporary—臨時(shí) WorldZone 數(shù)據(jù)
激活 WorldZone 限位監(jiān)視 ?第 633 頁(yè) WZLimSup—激活 WorldZone 限位監(jiān)視
激活 World Zone 數(shù)字輸出設(shè)置 ?第 617 頁(yè) WZDOSet—激活 World Zone 來(lái)設(shè)置數(shù)字輸出。
解除 WorldZone ?第 615 頁(yè) WZDisable—解除臨時(shí) WorldZone?
激活 WorldZone ?第 621 頁(yè) WZEnable—激活臨時(shí) WorldZone 監(jiān)視
? ? ? ??WZHomeJointDef(World Zone home 關(guān)節(jié)定義)用來(lái)為機(jī)器人和外部軸在關(guān)節(jié)坐標(biāo)中定義一個(gè) world zone,用來(lái)作為一個(gè) Home 或者服務(wù)位置。
? ? ? ??基本范例:
? ? ? ??該指令的基本范例說(shuō)明如下:
......
CONST ?jointtarget ? home_pos := [ [ 0, 0, 0, 0, 0, -45], [ 0, 9E9,9E9, 9E9, 9E9, 9E9] ];
CONST ?jointtarget ? delta_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;
[\Inside]:
數(shù)據(jù)類型:switch?
定義 MiddleJointV al +/- DeltaJointV al 范圍內(nèi)的關(guān)節(jié)空間。
[\Outside]:
數(shù)據(jù)類型:switch?
定義 MiddleJointV al +/- DeltaJointV al 范圍外的關(guān)節(jié)空間(反關(guān)節(jié)空間)。
Shape:
數(shù)據(jù)類型:shapedata?
存儲(chǔ)定義的關(guān)鍵空間的變量(系統(tǒng)的私有數(shù)據(jù) private)。
MiddleJointV al:
數(shù)據(jù)類型:jointtarget?
? ? ? ??關(guān)節(jié)坐標(biāo)系中即將定義的關(guān)節(jié)空間的中心位置。為每一個(gè)機(jī)器人軸和外部軸指定(對(duì)于旋轉(zhuǎn)軸來(lái)說(shuō)單位是度數(shù), 對(duì)于線形軸來(lái)說(shuō)單位是毫米) 。在絕對(duì)關(guān)節(jié)中指定(對(duì)于外部軸來(lái)說(shuō),不是在偏移坐標(biāo)系 Eof fsSet-EoffsOn中)。對(duì)于某些軸來(lái)說(shuō) 9E9 就是說(shuō)軸不應(yīng)該去理會(huì)。在編程中,不激活的外部軸也會(huì)給出 9E9。
DeltaJointV al:
? ? ? ??數(shù)據(jù)類型:jointtarget?
? ? ? ??在關(guān)節(jié)坐標(biāo)系中,從關(guān)節(jié)空間的中心位置算起的+/-偏移位置。對(duì)于每一個(gè)要管理的軸來(lái)說(shuō),該數(shù)值必須大于 0。
? ? ? ??下圖說(shuō)明旋轉(zhuǎn)軸的關(guān)節(jié)空間的定義。
? ? ? ??下圖說(shuō)明了線性軸的關(guān)節(jié)空間的定義。
? ? ? ??程序執(zhí)行:
? ? ? ??關(guān)節(jié)空間的定義存儲(chǔ)在 shapedata 類型的變量中(項(xiàng)目 Shape) ,以后在 WZLimSup 或者 WZDOSet 指令中使用。
如果和 WZHomeJointDef 指令一起還使用了 WZDOSet, 當(dāng)所有帶關(guān)節(jié)空間監(jiān)視的、 激活的軸即將進(jìn)入或者已經(jīng)進(jìn)入關(guān)節(jié)空間的時(shí)候,才能設(shè)置數(shù)字輸出信號(hào)。
如果和關(guān)節(jié)空間以外 WZHomeJointDef(項(xiàng)目\Outside)指令一起還使用了 WZLimSup,當(dāng)任何一個(gè)帶關(guān)節(jié)空間監(jiān)視的、激活的軸到達(dá)關(guān)節(jié)空間時(shí),機(jī)器人立即停止。
如果和關(guān)節(jié)空間內(nèi) WZHomeJointDef (項(xiàng)目\Inside)指令一起還使用了 WZLimSup,當(dāng)最后一個(gè)帶關(guān)節(jié)空間監(jiān)視的、激活的軸到達(dá)關(guān)節(jié)空間時(shí),機(jī)器人立即停止。這就是說(shuō),一個(gè)或者幾個(gè)軸,但不是所有監(jiān)視的、激活的軸可以同時(shí)位于關(guān)節(jié)空間內(nèi)。
當(dāng)執(zhí)行 ActUnit 或者 DeactUnit 指令來(lái)激活或者解除機(jī)械單元的時(shí)候, HOME 位或者工作區(qū)域限制位的管理狀態(tài)將被更新。
限制:
只有激活的機(jī)械單元和他的激活的軸在 world zone 激活的時(shí)間段內(nèi)
描述:
World Zone 可以定義為四個(gè)不同的幾何形狀:
l ?直立的箱體,所有的邊都平行于 world 坐標(biāo)系,由 WZBoxDef 指令定義。
l ?一個(gè)球體,由 WZSphDef 指令定義。
l ?一個(gè)圓柱體,平行于 world 坐標(biāo)系的 z 軸,由 WZCylDef 指令定義。
l ?機(jī)器人和/或外部軸的關(guān)節(jié)的一個(gè)空間區(qū)域,由指令 WZHomeJointDef 或者 WZLimJ ointDef 定義。
World Zone 的幾何形狀由預(yù)覽指令中的一個(gè)定義, World Zone 的動(dòng)作由指令 WZLimSup 和 WZDOSet 定義。
基本范例:
該數(shù)據(jù)類型的基本范例說(shuō)明如下:
例1 ?VAR ? wzstationary ? pole;?
VAR ?wzstationary ?conveyor;?
…
PROC …
V AR shapedatavolume;?
…
WZBoxDef \Inside, volume, p_corner1, p_corner2;?
WZLimSup \Stat, conveyor , volume;?
WZCylDef \Inside, volume, p_center , 200, 2500;?
WZLimSup \Stat, pole, volume;?
ENDPROC?
定義了一個(gè)箱體形狀的 conveyor,并且該區(qū)域的監(jiān)視已經(jīng)激活。一個(gè)圓柱形狀的 pole 也已經(jīng)定義,此區(qū)域的管理也已經(jīng)激活。如果機(jī)器人到達(dá)以上區(qū)域中的一個(gè),運(yùn)動(dòng)將被停止。
特征:
Shapedata 是一個(gè)非數(shù)值的數(shù)據(jù)類型。
相關(guān)信息:
相關(guān)信息 ?參看
World Zones ?《RAPID 參考手冊(cè)—RAPID 概述》運(yùn)動(dòng)和 I/O 原理—World Zone 部分
定義圓柱形狀 World Zone ?第 613 頁(yè) WZCylDef—定義圓柱形狀的 World Zone。
定義球形 World Zone ?第 636 頁(yè) WZSphDef—定義球形 World Zone。
定義箱體形狀的 World Zone ?第 611 頁(yè) WZBoxDef—定義箱體形狀的 World Zone。
定義關(guān)節(jié) home 位的 World Zone ?第 625 頁(yè) WZHomeJointDef—定義關(guān)節(jié) home 位的 World Zone。
定義關(guān)節(jié)限位的 World Zone ?第 629 頁(yè) WZLimJ ointDef—定義關(guān)節(jié)限位的 World Zone。
激活 World Zone 限位管理 ?第 633 頁(yè) WZLimSup—激活 World Zone 限位管理。
激活 World Zone 數(shù)字輸出設(shè)置 ?第 617 頁(yè) WZDOSet—激活 World Zone 來(lái)設(shè)置數(shù)字輸出
? ? ? ??在 RAPID 程序中, 臨時(shí)的 WorldZone 可以被解除(WZDisable) , 再次激活(WZEnable) 或者擦除(WZFree)。
語(yǔ)法:
WZDOSet ? ? ? ? ? ?WZDOSet - Activate world zone to set digital output. ? ? ? ? ? ?語(yǔ)法:WZDOSet [\Temp] | [\Stat] WorldZone [\Inside] | [\Before] Shape ?Signal SetValue
[[‘\’T emp] |[‘\’Stat]’,’]?
[WorldZone’:=’]<wztemporary 類型的變量或者恒量(INOUT)>?
[‘\’Inside] |[‘\’Before] ‘,’
[Shape’:=’]<shapedata 類型的變量(V AR)>’,’
[Signal’:=’]<signaldo 類型的變量(V AR)>’,’
[SetV alue’:=’]<dionum 類型的表達(dá)式(IN)>’;’
? ? ? ??相關(guān)信息:
? ? ? ??相關(guān)信息 ?參看
World Zones ?《RAPID 參考手冊(cè)—RAPID 概述》運(yùn)動(dòng)和 I/O 原理—World Zone 部分
World Zone 形狀 ?第 1004 頁(yè) shapedata—World Zone 形狀數(shù)據(jù)部分
臨時(shí) WorldZone ?第 1045 頁(yè) wztemporary—臨時(shí) WorldZone 數(shù)據(jù)
靜態(tài) WorldZone ?第 1043 頁(yè) wzstationary—靜態(tài) WorldZone 數(shù)據(jù)
定義球形 World Zone ?第 636 頁(yè) WZSphDef—定義球形 World Zone。
定義箱體形狀的 World Zone ?第 611 頁(yè) WZBoxDef—定義箱體形狀的 World Zone。
定義圓柱形狀 World Zone ?第 613 頁(yè) WZCylDef—定義圓柱形狀的 World Zone。
定義關(guān)節(jié) home 位的 World Zone ?第 625 頁(yè) WZHomeJointDef—定義關(guān)節(jié) home 位的 World Zone。
激活 WorldZone 限位監(jiān)視 ?第 633 頁(yè) WZLimSup—激活 WorldZone 限位監(jiān)視
信號(hào)進(jìn)入水平 ?《技術(shù)參考手冊(cè)—系統(tǒng)參數(shù)》I/O 主題—信號(hào)類型—進(jìn)入級(jí)部分
1.231.WZEnable—激活臨時(shí) WorldZone 監(jiān)視
? ? ? ??用途:
? ? ? ??WZEnable(WorldZone 使能)用來(lái)重新激活對(duì)臨時(shí) WorldZone 的監(jiān)視,該 WorldZone 之前定義用來(lái)停止運(yùn)動(dòng)或者設(shè)定輸出。? ? ? ??基本范例:
? ? ? ??該指令的基本范例說(shuō)明如下:
例 1 ?V AR wztemporary wzone;?
…
PROC …
WZLimSup \T emp, wzone, volume;?
MoveL ?p_pick, v500, z40, tool1;?
WZDisable wzone;?
MoveL ?p_place, v200, z30, tool1;?
WZEnable wzone;?
MoveL ?p_home, v200, z30, tool1;?
ENDPROC?
? ? ? ??當(dāng)往 p_pick 移動(dòng)的時(shí)候, 檢測(cè)到機(jī)器人 TCP 的位置, 這樣它就不能進(jìn)入特定的空間 wzone。 當(dāng)進(jìn)入 p_place的時(shí)候沒(méi)有進(jìn)行這個(gè)監(jiān)視,但是在移動(dòng)到 p_home 的時(shí)候重新激活。
? ? ? ??項(xiàng)目:
? ? ? ??WZEnable WorldZone?
? ? ? ??WorldZone:
數(shù)據(jù)類型:wztemporary?
wztemporary 類型的變量或者恒量,包含要激活的 WorldZone 的標(biāo)識(shí)符。
程序執(zhí)行:
臨時(shí) WorldZone 被再次激活。注意,當(dāng)創(chuàng)建 WorldZone 的時(shí)候,它是自動(dòng)激活的。如果被 WZDisable 指令解除后,它只是需要重新激活。
限制:
只有臨時(shí)的 WorldZone 可以被解除或者再激活,靜態(tài)的 WorldZone 總是激活的。
語(yǔ)法:
WZEnable?
[WorldZone’:=’]<wztemporary 類型的變量或者恒量(INOUT)>’;’
? ? ? ??相關(guān)信息:
? ? ? ??相關(guān)信息 ?參看
World Zones ?《RAPID 參考手冊(cè)—RAPID 概述》運(yùn)動(dòng)和 I/O 原理—World Zone 部分
World Zone 形狀 ?第 1004 頁(yè) shapedata—World Zone 形狀數(shù)據(jù)部分
臨時(shí) WorldZone 數(shù)據(jù) ?第 1045 頁(yè) wztemporary—臨時(shí) WorldZone 數(shù)據(jù)
激活 WorldZone 限位監(jiān)視 ?第 633 頁(yè) WZLimSup—激活 WorldZone 限位監(jiān)視
激活 World Zone 數(shù)字輸出設(shè)置 ?第 617 頁(yè) WZDOSet—激活 World Zone 來(lái)設(shè)置數(shù)字輸出。
解除 WorldZone ?第 615 頁(yè) WZDisable—解除臨時(shí) WorldZone?
擦除 WorldZone ?第 623 頁(yè) WZFree—擦除臨時(shí) WorldZone 監(jiān)視
? ? ? ??用途:
? ? ? ??WZFree(WorldZone 釋放)用來(lái)擦除臨時(shí) WorldZone 的定義,之前定義用來(lái)停止運(yùn)動(dòng)或者設(shè)定輸出的。
? ? ? ??基本范例:
? ? ? ??該指令的基本范例說(shuō)明如下:
例 1 ?V AR wztemporary wzone;?
…
PROC …
WZLimSup \T emp, wzone, volume;?
MoveL ?p_pick, v500, z40, tool1;?
WZDisable wzone;?
MoveL ?p_Place, v200, z30, tool1;?
WZEnable wzone;?
MoveL ?p_home, v200, z30, tool1;?
WZFree wzone;?
ENDPROC?
? ? ? ??當(dāng)往 p_pick 移動(dòng)的時(shí)候,檢測(cè)到機(jī)器人 TCP 的位置,所以它不能夠進(jìn)入指定的 wzone 空間。當(dāng)往 p_place移動(dòng)的時(shí)候,該監(jiān)視沒(méi)有執(zhí)行,但是在往 p_home 移動(dòng)之前重新激活該監(jiān)視。到達(dá) p_home 之后,WorldZone 的定義被擦除。
? ? ? ??項(xiàng)目:
WZFree WorldZone?
WorldZone:
數(shù)據(jù)類型:wztemporary?
wztemporary 類型的變量或者恒量,包含要擦除的 world zone 的標(biāo)識(shí)符。
? ? ? ??程序執(zhí)行:
? ? ? ??臨時(shí) world ?zone 首先被解除,然后它的定義被擦除。一旦擦除,臨時(shí) world ?zone 不能被重新激活也不能被解除。
? ? ? ??限制:
? ? ? ??只有臨時(shí) world zone 可以被解除、重新激活或者擦除,靜態(tài) world zone 通常都是激活的。
? ? ? ??語(yǔ)法:
WZFree [WorldZone’:=’]<wztemporary 類型的變量或者恒量(INOUT)>’;’
相關(guān)信息:
相關(guān)信息 ?參看
World Zones ?《RAPID 參考手冊(cè)—RAPID 概述》運(yùn)動(dòng)和 I/O 原理—World Zone 部分
World Zone 形狀 ?第 1004 頁(yè) shapedata—World Zone 形狀數(shù)據(jù)部分
臨時(shí) WorldZone 數(shù)據(jù) ?第 1045 頁(yè) wztemporary—臨時(shí) WorldZone 數(shù)據(jù)
激活 WorldZone 限位監(jiān)視 ?第 633 頁(yè) WZLimSup—激活 WorldZone 限位監(jiān)視
激活 World Zone 數(shù)字輸出設(shè)置 ?第 617 頁(yè) WZDOSet—激活 World Zone 來(lái)設(shè)置數(shù)字輸出。
解除 WorldZone ?第 615 頁(yè) WZDisable—解除臨時(shí) WorldZone?
激活 WorldZone ?第 621 頁(yè) WZEnable—激活臨時(shí) WorldZone 監(jiān)視
? ? ? ??1.233.WZHomeJointDef—定義關(guān)節(jié) home 位的 WorldZone?
? ? ? ??用途:? ? ? ??WZHomeJointDef(World Zone home 關(guān)節(jié)定義)用來(lái)為機(jī)器人和外部軸在關(guān)節(jié)坐標(biāo)中定義一個(gè) world zone,用來(lái)作為一個(gè) Home 或者服務(wù)位置。
? ? ? ??基本范例:
? ? ? ??該指令的基本范例說(shuō)明如下:
例 1 ?
VAR wzstationary home;......
PROC power_on()
......
VAR shapedata joint_space;CONST ?jointtarget ? home_pos := [ [ 0, 0, 0, 0, 0, -45], [ 0, 9E9,9E9, 9E9, 9E9, 9E9] ];
CONST ?jointtarget ? delta_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?
? ? ? ??定義并激活一個(gè)靜態(tài) world zone home, 當(dāng)所有機(jī)器人軸和外部軸 extax.eax_a 在程序執(zhí)行或者點(diǎn)動(dòng)過(guò)程中處于關(guān)節(jié)位置 home_pos(每一個(gè)軸在+/-delta_pos 范圍內(nèi)),home 把信號(hào) do_home 設(shè)為 1。Shapedata 類型的數(shù)據(jù)變量 joint_space 用來(lái)從指令 WZHomeJointDef 指令傳送到 WZDOSet 指令。項(xiàng)目:
WZHomeJointDef [\Inside] | [\Outside] Shape MiddleJointV al DeltaJointV al?[\Inside]:
數(shù)據(jù)類型:switch?
定義 MiddleJointV al +/- DeltaJointV al 范圍內(nèi)的關(guān)節(jié)空間。
[\Outside]:
數(shù)據(jù)類型:switch?
定義 MiddleJointV al +/- DeltaJointV al 范圍外的關(guān)節(jié)空間(反關(guān)節(jié)空間)。
Shape:
數(shù)據(jù)類型:shapedata?
存儲(chǔ)定義的關(guān)鍵空間的變量(系統(tǒng)的私有數(shù)據(jù) private)。
MiddleJointV al:
數(shù)據(jù)類型:jointtarget?
? ? ? ??關(guān)節(jié)坐標(biāo)系中即將定義的關(guān)節(jié)空間的中心位置。為每一個(gè)機(jī)器人軸和外部軸指定(對(duì)于旋轉(zhuǎn)軸來(lái)說(shuō)單位是度數(shù), 對(duì)于線形軸來(lái)說(shuō)單位是毫米) 。在絕對(duì)關(guān)節(jié)中指定(對(duì)于外部軸來(lái)說(shuō),不是在偏移坐標(biāo)系 Eof fsSet-EoffsOn中)。對(duì)于某些軸來(lái)說(shuō) 9E9 就是說(shuō)軸不應(yīng)該去理會(huì)。在編程中,不激活的外部軸也會(huì)給出 9E9。
DeltaJointV al:
? ? ? ??數(shù)據(jù)類型:jointtarget?
? ? ? ??在關(guān)節(jié)坐標(biāo)系中,從關(guān)節(jié)空間的中心位置算起的+/-偏移位置。對(duì)于每一個(gè)要管理的軸來(lái)說(shuō),該數(shù)值必須大于 0。
? ? ? ??下圖說(shuō)明旋轉(zhuǎn)軸的關(guān)節(jié)空間的定義。
? ? ? ??下圖說(shuō)明了線性軸的關(guān)節(jié)空間的定義。
? ? ? ??程序執(zhí)行:
? ? ? ??關(guān)節(jié)空間的定義存儲(chǔ)在 shapedata 類型的變量中(項(xiàng)目 Shape) ,以后在 WZLimSup 或者 WZDOSet 指令中使用。
如果和 WZHomeJointDef 指令一起還使用了 WZDOSet, 當(dāng)所有帶關(guān)節(jié)空間監(jiān)視的、 激活的軸即將進(jìn)入或者已經(jīng)進(jìn)入關(guān)節(jié)空間的時(shí)候,才能設(shè)置數(shù)字輸出信號(hào)。
如果和關(guān)節(jié)空間以外 WZHomeJointDef(項(xiàng)目\Outside)指令一起還使用了 WZLimSup,當(dāng)任何一個(gè)帶關(guān)節(jié)空間監(jiān)視的、激活的軸到達(dá)關(guān)節(jié)空間時(shí),機(jī)器人立即停止。
如果和關(guān)節(jié)空間內(nèi) WZHomeJointDef (項(xiàng)目\Inside)指令一起還使用了 WZLimSup,當(dāng)最后一個(gè)帶關(guān)節(jié)空間監(jiān)視的、激活的軸到達(dá)關(guān)節(jié)空間時(shí),機(jī)器人立即停止。這就是說(shuō),一個(gè)或者幾個(gè)軸,但不是所有監(jiān)視的、激活的軸可以同時(shí)位于關(guān)節(jié)空間內(nèi)。
當(dāng)執(zhí)行 ActUnit 或者 DeactUnit 指令來(lái)激活或者解除機(jī)械單元的時(shí)候, HOME 位或者工作區(qū)域限制位的管理狀態(tài)將被更新。
限制:
只有激活的機(jī)械單元和他的激活的軸在 world zone 激活的時(shí)間段內(nèi)
? ? ? ??3.44.shapedata—World Zone ?形狀數(shù)據(jù):
Shapedata 用來(lái)描述 World Zone 的幾何形狀。描述:
World Zone 可以定義為四個(gè)不同的幾何形狀:
l ?直立的箱體,所有的邊都平行于 world 坐標(biāo)系,由 WZBoxDef 指令定義。
l ?一個(gè)球體,由 WZSphDef 指令定義。
l ?一個(gè)圓柱體,平行于 world 坐標(biāo)系的 z 軸,由 WZCylDef 指令定義。
l ?機(jī)器人和/或外部軸的關(guān)節(jié)的一個(gè)空間區(qū)域,由指令 WZHomeJointDef 或者 WZLimJ ointDef 定義。
World Zone 的幾何形狀由預(yù)覽指令中的一個(gè)定義, World Zone 的動(dòng)作由指令 WZLimSup 和 WZDOSet 定義。
基本范例:
該數(shù)據(jù)類型的基本范例說(shuō)明如下:
例1 ?VAR ? wzstationary ? pole;?
VAR ?wzstationary ?conveyor;?
…
PROC …
V AR shapedatavolume;?
…
WZBoxDef \Inside, volume, p_corner1, p_corner2;?
WZLimSup \Stat, conveyor , volume;?
WZCylDef \Inside, volume, p_center , 200, 2500;?
WZLimSup \Stat, pole, volume;?
ENDPROC?
定義了一個(gè)箱體形狀的 conveyor,并且該區(qū)域的監(jiān)視已經(jīng)激活。一個(gè)圓柱形狀的 pole 也已經(jīng)定義,此區(qū)域的管理也已經(jīng)激活。如果機(jī)器人到達(dá)以上區(qū)域中的一個(gè),運(yùn)動(dòng)將被停止。
特征:
Shapedata 是一個(gè)非數(shù)值的數(shù)據(jù)類型。
相關(guān)信息:
相關(guān)信息 ?參看
World Zones ?《RAPID 參考手冊(cè)—RAPID 概述》運(yùn)動(dòng)和 I/O 原理—World Zone 部分
定義圓柱形狀 World Zone ?第 613 頁(yè) WZCylDef—定義圓柱形狀的 World Zone。
定義球形 World Zone ?第 636 頁(yè) WZSphDef—定義球形 World Zone。
定義箱體形狀的 World Zone ?第 611 頁(yè) WZBoxDef—定義箱體形狀的 World Zone。
定義關(guān)節(jié) home 位的 World Zone ?第 625 頁(yè) WZHomeJointDef—定義關(guān)節(jié) home 位的 World Zone。
定義關(guān)節(jié)限位的 World Zone ?第 629 頁(yè) WZLimJ ointDef—定義關(guān)節(jié)限位的 World Zone。
激活 World Zone 限位管理 ?第 633 頁(yè) WZLimSup—激活 World Zone 限位管理。
激活 World Zone 數(shù)字輸出設(shè)置 ?第 617 頁(yè) WZDOSet—激活 World Zone 來(lái)設(shè)置數(shù)字輸出
總結(jié)
以上是生活随笔為你收集整理的ABB RAPID 程序 WorldZone 归纳的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: [bzoj3994] [SDOI2015
- 下一篇: 伺服电机惯量问题