在 RAPID 程序中,靜態的 WorldZone 不能被解除并再次激活,或者進行擦除。
? ? ? ??在 RAPID 程序中, 臨時的 WorldZone 可以被解除(WZDisable) , 再次激活(WZEnable) 或者擦除(WZFree)。
語法:
WZDOSet ? ? ? ? ? ?WZDOSet - Activate world zone to set digital output. ? ? ? ? ? ?語法: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 類型的表達式(IN)>’;’
? ? ? ??相關信息:
? ? ? ??相關信息 ?參看
World Zones ?《RAPID 參考手冊—RAPID 概述》運動和 I/O 原理—World Zone 部分
World Zone 形狀 ?第 1004 頁 shapedata—World Zone 形狀數據部分
臨時 WorldZone ?第 1045 頁 wztemporary—臨時 WorldZone 數據
靜態 WorldZone ?第 1043 頁 wzstationary—靜態 WorldZone 數據
定義球形 World Zone ?第 636 頁 WZSphDef—定義球形 World Zone。
定義箱體形狀的 World Zone ?第 611 頁 WZBoxDef—定義箱體形狀的 World Zone。
定義圓柱形狀 World Zone ?第 613 頁 WZCylDef—定義圓柱形狀的 World Zone。
定義關節 home 位的 World Zone ?第 625 頁 WZHomeJointDef—定義關節 home 位的 World Zone。
激活 WorldZone 限位監視 ?第 633 頁 WZLimSup—激活 WorldZone 限位監視
信號進入水平 ?《技術參考手冊—系統參數》I/O 主題—信號類型—進入級部分
1.231.WZEnable—激活臨時 WorldZone 監視
? ? ? ??基本范例:
? ? ? ??該指令的基本范例說明如下:
例 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?
? ? ? ??當往 p_pick 移動的時候, 檢測到機器人 TCP 的位置, 這樣它就不能進入特定的空間 wzone。 當進入 p_place的時候沒有進行這個監視,但是在移動到 p_home 的時候重新激活。
? ? ? ??項目:
? ? ? ??WZEnable WorldZone?
? ? ? ??WorldZone:
數據類型:wztemporary?
wztemporary 類型的變量或者恒量,包含要激活的 WorldZone 的標識符。
程序執行:
臨時 WorldZone 被再次激活。注意,當創建 WorldZone 的時候,它是自動激活的。如果被 WZDisable 指令解除后,它只是需要重新激活。
限制:
只有臨時的 WorldZone 可以被解除或者再激活,靜態的 WorldZone 總是激活的。
語法:
WZEnable?
[WorldZone’:=’]<wztemporary 類型的變量或者恒量(INOUT)>’;’
? ? ? ??相關信息:
? ? ? ??相關信息 ?參看
World Zones ?《RAPID 參考手冊—RAPID 概述》運動和 I/O 原理—World Zone 部分
World Zone 形狀 ?第 1004 頁 shapedata—World Zone 形狀數據部分
臨時 WorldZone 數據 ?第 1045 頁 wztemporary—臨時 WorldZone 數據
激活 WorldZone 限位監視 ?第 633 頁 WZLimSup—激活 WorldZone 限位監視
激活 World Zone 數字輸出設置 ?第 617 頁 WZDOSet—激活 World Zone 來設置數字輸出。
解除 WorldZone ?第 615 頁 WZDisable—解除臨時 WorldZone?
? ? ? ??用途:
? ? ? ??WZFree(WorldZone 釋放)用來擦除臨時 WorldZone 的定義,之前定義用來停止運動或者設定輸出的。
? ? ? ??基本范例:
? ? ? ??該指令的基本范例說明如下:
例 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?
? ? ? ??當往 p_pick 移動的時候,檢測到機器人 TCP 的位置,所以它不能夠進入指定的 wzone 空間。當往 p_place移動的時候,該監視沒有執行,但是在往 p_home 移動之前重新激活該監視。到達 p_home 之后,WorldZone 的定義被擦除。
? ? ? ??項目:
WZFree WorldZone?
WorldZone:
數據類型:wztemporary?
wztemporary 類型的變量或者恒量,包含要擦除的 world zone 的標識符。
? ? ? ??程序執行:
? ? ? ??臨時 world ?zone 首先被解除,然后它的定義被擦除。一旦擦除,臨時 world ?zone 不能被重新激活也不能被解除。
? ? ? ??限制:
? ? ? ??只有臨時 world zone 可以被解除、重新激活或者擦除,靜態 world zone 通常都是激活的。
? ? ? ??語法:
WZFree [WorldZone’:=’]<wztemporary 類型的變量或者恒量(INOUT)>’;’
相關信息:
相關信息 ?參看
World Zones ?《RAPID 參考手冊—RAPID 概述》運動和 I/O 原理—World Zone 部分
World Zone 形狀 ?第 1004 頁 shapedata—World Zone 形狀數據部分
臨時 WorldZone 數據 ?第 1045 頁 wztemporary—臨時 WorldZone 數據
激活 WorldZone 限位監視 ?第 633 頁 WZLimSup—激活 WorldZone 限位監視
激活 World Zone 數字輸出設置 ?第 617 頁 WZDOSet—激活 World Zone 來設置數字輸出。
解除 WorldZone ?第 615 頁 WZDisable—解除臨時 WorldZone?
激活 WorldZone ?第 621 頁 WZEnable—激活臨時 WorldZone 監視
? ? ? ??WZHomeJointDef(World Zone home 關節定義)用來為機器人和外部軸在關節坐標中定義一個 world zone,用來作為一個 Home 或者服務位置。
? ? ? ??基本范例:
? ? ? ??該指令的基本范例說明如下:
......
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]:
數據類型:switch?
定義 MiddleJointV al +/- DeltaJointV al 范圍內的關節空間。
[\Outside]:
數據類型:switch?
定義 MiddleJointV al +/- DeltaJointV al 范圍外的關節空間(反關節空間)。
Shape:
數據類型:shapedata?
存儲定義的關鍵空間的變量(系統的私有數據 private)。
MiddleJointV al:
數據類型:jointtarget?
? ? ? ??關節坐標系中即將定義的關節空間的中心位置。為每一個機器人軸和外部軸指定(對于旋轉軸來說單位是度數, 對于線形軸來說單位是毫米) 。在絕對關節中指定(對于外部軸來說,不是在偏移坐標系 Eof fsSet-EoffsOn中)。對于某些軸來說 9E9 就是說軸不應該去理會。在編程中,不激活的外部軸也會給出 9E9。
DeltaJointV al:
? ? ? ??數據類型:jointtarget?
? ? ? ??在關節坐標系中,從關節空間的中心位置算起的+/-偏移位置。對于每一個要管理的軸來說,該數值必須大于 0。
? ? ? ??下圖說明旋轉軸的關節空間的定義。
? ? ? ??下圖說明了線性軸的關節空間的定義。
? ? ? ??程序執行:
? ? ? ??關節空間的定義存儲在 shapedata 類型的變量中(項目 Shape) ,以后在 WZLimSup 或者 WZDOSet 指令中使用。
如果和 WZHomeJointDef 指令一起還使用了 WZDOSet, 當所有帶關節空間監視的、 激活的軸即將進入或者已經進入關節空間的時候,才能設置數字輸出信號。
如果和關節空間以外 WZHomeJointDef(項目\Outside)指令一起還使用了 WZLimSup,當任何一個帶關節空間監視的、激活的軸到達關節空間時,機器人立即停止。
如果和關節空間內 WZHomeJointDef (項目\Inside)指令一起還使用了 WZLimSup,當最后一個帶關節空間監視的、激活的軸到達關節空間時,機器人立即停止。這就是說,一個或者幾個軸,但不是所有監視的、激活的軸可以同時位于關節空間內。
當執行 ActUnit 或者 DeactUnit 指令來激活或者解除機械單元的時候, HOME 位或者工作區域限制位的管理狀態將被更新。
限制:
只有激活的機械單元和他的激活的軸在 world zone 激活的時間段內
描述:
World Zone 可以定義為四個不同的幾何形狀:
l ?直立的箱體,所有的邊都平行于 world 坐標系,由 WZBoxDef 指令定義。
l ?一個球體,由 WZSphDef 指令定義。
l ?一個圓柱體,平行于 world 坐標系的 z 軸,由 WZCylDef 指令定義。
l ?機器人和/或外部軸的關節的一個空間區域,由指令 WZHomeJointDef 或者 WZLimJ ointDef 定義。
World Zone 的幾何形狀由預覽指令中的一個定義, World Zone 的動作由指令 WZLimSup 和 WZDOSet 定義。
基本范例:
該數據類型的基本范例說明如下:
例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?
定義了一個箱體形狀的 conveyor,并且該區域的監視已經激活。一個圓柱形狀的 pole 也已經定義,此區域的管理也已經激活。如果機器人到達以上區域中的一個,運動將被停止。
特征:
Shapedata 是一個非數值的數據類型。
相關信息:
相關信息 ?參看
World Zones ?《RAPID 參考手冊—RAPID 概述》運動和 I/O 原理—World Zone 部分
定義圓柱形狀 World Zone ?第 613 頁 WZCylDef—定義圓柱形狀的 World Zone。
定義球形 World Zone ?第 636 頁 WZSphDef—定義球形 World Zone。
定義箱體形狀的 World Zone ?第 611 頁 WZBoxDef—定義箱體形狀的 World Zone。
定義關節 home 位的 World Zone ?第 625 頁 WZHomeJointDef—定義關節 home 位的 World Zone。
定義關節限位的 World Zone ?第 629 頁 WZLimJ ointDef—定義關節限位的 World Zone。
激活 World Zone 限位管理 ?第 633 頁 WZLimSup—激活 World Zone 限位管理。
激活 World Zone 數字輸出設置 ?第 617 頁 WZDOSet—激活 World Zone 來設置數字輸出
? ? ? ??在 RAPID 程序中, 臨時的 WorldZone 可以被解除(WZDisable) , 再次激活(WZEnable) 或者擦除(WZFree)。
語法:
WZDOSet ? ? ? ? ? ?WZDOSet - Activate world zone to set digital output. ? ? ? ? ? ?語法: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 類型的表達式(IN)>’;’
? ? ? ??相關信息:
? ? ? ??相關信息 ?參看
World Zones ?《RAPID 參考手冊—RAPID 概述》運動和 I/O 原理—World Zone 部分
World Zone 形狀 ?第 1004 頁 shapedata—World Zone 形狀數據部分
臨時 WorldZone ?第 1045 頁 wztemporary—臨時 WorldZone 數據
靜態 WorldZone ?第 1043 頁 wzstationary—靜態 WorldZone 數據
定義球形 World Zone ?第 636 頁 WZSphDef—定義球形 World Zone。
定義箱體形狀的 World Zone ?第 611 頁 WZBoxDef—定義箱體形狀的 World Zone。
定義圓柱形狀 World Zone ?第 613 頁 WZCylDef—定義圓柱形狀的 World Zone。
定義關節 home 位的 World Zone ?第 625 頁 WZHomeJointDef—定義關節 home 位的 World Zone。
激活 WorldZone 限位監視 ?第 633 頁 WZLimSup—激活 WorldZone 限位監視
信號進入水平 ?《技術參考手冊—系統參數》I/O 主題—信號類型—進入級部分
1.231.WZEnable—激活臨時 WorldZone 監視
? ? ? ??用途:
? ? ? ??WZEnable(WorldZone 使能)用來重新激活對臨時 WorldZone 的監視,該 WorldZone 之前定義用來停止運動或者設定輸出。? ? ? ??基本范例:
? ? ? ??該指令的基本范例說明如下:
例 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?
? ? ? ??當往 p_pick 移動的時候, 檢測到機器人 TCP 的位置, 這樣它就不能進入特定的空間 wzone。 當進入 p_place的時候沒有進行這個監視,但是在移動到 p_home 的時候重新激活。
? ? ? ??項目:
? ? ? ??WZEnable WorldZone?
? ? ? ??WorldZone:
數據類型:wztemporary?
wztemporary 類型的變量或者恒量,包含要激活的 WorldZone 的標識符。
程序執行:
臨時 WorldZone 被再次激活。注意,當創建 WorldZone 的時候,它是自動激活的。如果被 WZDisable 指令解除后,它只是需要重新激活。
限制:
只有臨時的 WorldZone 可以被解除或者再激活,靜態的 WorldZone 總是激活的。
語法:
WZEnable?
[WorldZone’:=’]<wztemporary 類型的變量或者恒量(INOUT)>’;’
? ? ? ??相關信息:
? ? ? ??相關信息 ?參看
World Zones ?《RAPID 參考手冊—RAPID 概述》運動和 I/O 原理—World Zone 部分
World Zone 形狀 ?第 1004 頁 shapedata—World Zone 形狀數據部分
臨時 WorldZone 數據 ?第 1045 頁 wztemporary—臨時 WorldZone 數據
激活 WorldZone 限位監視 ?第 633 頁 WZLimSup—激活 WorldZone 限位監視
激活 World Zone 數字輸出設置 ?第 617 頁 WZDOSet—激活 World Zone 來設置數字輸出。
解除 WorldZone ?第 615 頁 WZDisable—解除臨時 WorldZone?
擦除 WorldZone ?第 623 頁 WZFree—擦除臨時 WorldZone 監視
? ? ? ??用途:
? ? ? ??WZFree(WorldZone 釋放)用來擦除臨時 WorldZone 的定義,之前定義用來停止運動或者設定輸出的。
? ? ? ??基本范例:
? ? ? ??該指令的基本范例說明如下:
例 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?
? ? ? ??當往 p_pick 移動的時候,檢測到機器人 TCP 的位置,所以它不能夠進入指定的 wzone 空間。當往 p_place移動的時候,該監視沒有執行,但是在往 p_home 移動之前重新激活該監視。到達 p_home 之后,WorldZone 的定義被擦除。
? ? ? ??項目:
WZFree WorldZone?
WorldZone:
數據類型:wztemporary?
wztemporary 類型的變量或者恒量,包含要擦除的 world zone 的標識符。
? ? ? ??程序執行:
? ? ? ??臨時 world ?zone 首先被解除,然后它的定義被擦除。一旦擦除,臨時 world ?zone 不能被重新激活也不能被解除。
? ? ? ??限制:
? ? ? ??只有臨時 world zone 可以被解除、重新激活或者擦除,靜態 world zone 通常都是激活的。
? ? ? ??語法:
WZFree [WorldZone’:=’]<wztemporary 類型的變量或者恒量(INOUT)>’;’
相關信息:
相關信息 ?參看
World Zones ?《RAPID 參考手冊—RAPID 概述》運動和 I/O 原理—World Zone 部分
World Zone 形狀 ?第 1004 頁 shapedata—World Zone 形狀數據部分
臨時 WorldZone 數據 ?第 1045 頁 wztemporary—臨時 WorldZone 數據
激活 WorldZone 限位監視 ?第 633 頁 WZLimSup—激活 WorldZone 限位監視
激活 World Zone 數字輸出設置 ?第 617 頁 WZDOSet—激活 World Zone 來設置數字輸出。
解除 WorldZone ?第 615 頁 WZDisable—解除臨時 WorldZone?
激活 WorldZone ?第 621 頁 WZEnable—激活臨時 WorldZone 監視
? ? ? ??1.233.WZHomeJointDef—定義關節 home 位的 WorldZone?
? ? ? ??用途:? ? ? ??WZHomeJointDef(World Zone home 關節定義)用來為機器人和外部軸在關節坐標中定義一個 world zone,用來作為一個 Home 或者服務位置。
? ? ? ??基本范例:
? ? ? ??該指令的基本范例說明如下:
例 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?
? ? ? ??定義并激活一個靜態 world zone home, 當所有機器人軸和外部軸 extax.eax_a 在程序執行或者點動過程中處于關節位置 home_pos(每一個軸在+/-delta_pos 范圍內),home 把信號 do_home 設為 1。Shapedata 類型的數據變量 joint_space 用來從指令 WZHomeJointDef 指令傳送到 WZDOSet 指令。項目:
WZHomeJointDef [\Inside] | [\Outside] Shape MiddleJointV al DeltaJointV al?[\Inside]:
數據類型:switch?
定義 MiddleJointV al +/- DeltaJointV al 范圍內的關節空間。
[\Outside]:
數據類型:switch?
定義 MiddleJointV al +/- DeltaJointV al 范圍外的關節空間(反關節空間)。
Shape:
數據類型:shapedata?
存儲定義的關鍵空間的變量(系統的私有數據 private)。
MiddleJointV al:
數據類型:jointtarget?
? ? ? ??關節坐標系中即將定義的關節空間的中心位置。為每一個機器人軸和外部軸指定(對于旋轉軸來說單位是度數, 對于線形軸來說單位是毫米) 。在絕對關節中指定(對于外部軸來說,不是在偏移坐標系 Eof fsSet-EoffsOn中)。對于某些軸來說 9E9 就是說軸不應該去理會。在編程中,不激活的外部軸也會給出 9E9。
DeltaJointV al:
? ? ? ??數據類型:jointtarget?
? ? ? ??在關節坐標系中,從關節空間的中心位置算起的+/-偏移位置。對于每一個要管理的軸來說,該數值必須大于 0。
? ? ? ??下圖說明旋轉軸的關節空間的定義。
? ? ? ??下圖說明了線性軸的關節空間的定義。
? ? ? ??程序執行:
? ? ? ??關節空間的定義存儲在 shapedata 類型的變量中(項目 Shape) ,以后在 WZLimSup 或者 WZDOSet 指令中使用。
如果和 WZHomeJointDef 指令一起還使用了 WZDOSet, 當所有帶關節空間監視的、 激活的軸即將進入或者已經進入關節空間的時候,才能設置數字輸出信號。
如果和關節空間以外 WZHomeJointDef(項目\Outside)指令一起還使用了 WZLimSup,當任何一個帶關節空間監視的、激活的軸到達關節空間時,機器人立即停止。
如果和關節空間內 WZHomeJointDef (項目\Inside)指令一起還使用了 WZLimSup,當最后一個帶關節空間監視的、激活的軸到達關節空間時,機器人立即停止。這就是說,一個或者幾個軸,但不是所有監視的、激活的軸可以同時位于關節空間內。
當執行 ActUnit 或者 DeactUnit 指令來激活或者解除機械單元的時候, HOME 位或者工作區域限制位的管理狀態將被更新。
限制:
只有激活的機械單元和他的激活的軸在 world zone 激活的時間段內
? ? ? ??3.44.shapedata—World Zone ?形狀數據:
Shapedata 用來描述 World Zone 的幾何形狀。描述:
World Zone 可以定義為四個不同的幾何形狀:
l ?直立的箱體,所有的邊都平行于 world 坐標系,由 WZBoxDef 指令定義。
l ?一個球體,由 WZSphDef 指令定義。
l ?一個圓柱體,平行于 world 坐標系的 z 軸,由 WZCylDef 指令定義。
l ?機器人和/或外部軸的關節的一個空間區域,由指令 WZHomeJointDef 或者 WZLimJ ointDef 定義。
World Zone 的幾何形狀由預覽指令中的一個定義, World Zone 的動作由指令 WZLimSup 和 WZDOSet 定義。
基本范例:
該數據類型的基本范例說明如下:
例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?
定義了一個箱體形狀的 conveyor,并且該區域的監視已經激活。一個圓柱形狀的 pole 也已經定義,此區域的管理也已經激活。如果機器人到達以上區域中的一個,運動將被停止。
特征:
Shapedata 是一個非數值的數據類型。
相關信息:
相關信息 ?參看
World Zones ?《RAPID 參考手冊—RAPID 概述》運動和 I/O 原理—World Zone 部分
定義圓柱形狀 World Zone ?第 613 頁 WZCylDef—定義圓柱形狀的 World Zone。
定義球形 World Zone ?第 636 頁 WZSphDef—定義球形 World Zone。
定義箱體形狀的 World Zone ?第 611 頁 WZBoxDef—定義箱體形狀的 World Zone。
定義關節 home 位的 World Zone ?第 625 頁 WZHomeJointDef—定義關節 home 位的 World Zone。
定義關節限位的 World Zone ?第 629 頁 WZLimJ ointDef—定義關節限位的 World Zone。
激活 World Zone 限位管理 ?第 633 頁 WZLimSup—激活 World Zone 限位管理。
激活 World Zone 數字輸出設置 ?第 617 頁 WZDOSet—激活 World Zone 來設置數字輸出