SimSet
用於設定模擬器各種物件的屬性設定。此外,用於進行機器人的動作、物件操作和設定模擬器相關的操作。
格式
(1) 物件的屬性設定
SimSet Object.Property, Value
SimSet Robot.Hand.Property, Value
(2) 機器人的動作設定(Pick及Place)
SimSet Robot.Pick, Object [,Tool]
SimSet Robot.Place, Object
(3) 物件的操作設定(指定父物件)
SimSet Object.SetParent [, ParentObject]
(4) 模擬器的設定(重設碰撞檢測)
SimSet ResetCollision
參數
(1) 物件的屬性設定
- Object
- 表示用於設定屬性值的物件名稱之字串變數
- Robot
- 表示有安裝夾具(以「Hand」指定)的機器人名稱之字串變數
- Hand
- 表示用於設定屬性值的夾具名稱之字串變數
- Property
- 用於設定新值的屬性名稱。屬性詳如後述。
- Value
- 新值的運算式。資料類型因屬性而異。
(2) 機器人動作設定(Pick及Place)
- Robot
- 表示用於進行Pick或Place的機器人名稱之字串變數
- Object
- 表示被Pick或Place的物件名稱之字串變數
- Tool
- 表示用於Pick的Tool編號之運算式
(3) 物件的操作設定(指定父物件)
- Object
- 表示設定父物件的物件名稱之字串變數
- ParentObject
- 表示父物件名稱的字串變數
說明
此命令用於進行模擬器各種物件的屬性設定/操作、機器人動作、模擬器設定的變更。
(1) 物件的屬性設定
可透過指定如下所示屬性,設定物件。
屬性 | 說明 | 單位 | 資料類型 | 設定值 |
---|---|---|---|---|
PositionX | 用於設定X坐標位置 | 公釐(mm) | Double | 最大值:100000 最小值:-100000 |
PositionY | 用於設定Y坐標位置 | 公釐(mm) | Double | 最大值:100000 最小值:-100000 |
PositionZ | 用於設定Z坐標位置 | 公釐(mm) | Double | 最大值:100000 最小值:-100000 |
RotationX | 用於設定X軸旋轉角度 | 度(degree) | Double | 最大值:360 最小值:-360 |
RotationY | 用於設定Y軸旋轉角度 | 度(degree) | Double | 最大值:360 最小值:-360 |
RotationZ | 用於設定Z軸旋轉角度 | 度(degree) | Double | 最大值:360 最小值:-360 |
CollisionCheck | 用於設定碰撞檢測的啟用/停用 | - | Boolean | True或False |
CollisionCheckSelf | 用於設定機器人自我碰撞檢測的啟用/停用 | - | Boolean | True或False |
Visible | 用於設定顯示/隱藏 | - | Boolean | True或False |
HalfSizeX | 取得BOX物件的X方向的長度 | 公釐(mm) | Double | 最大值:100000 最小值:0.001 |
HalfSizeY | 取得BOX物件的Y方向的長度 | 公釐(mm) | Double | 最大值:100000 最小值:0.001 |
HalfSizeZ | 取得BOX物件的Z方向的長度 | 公釐(mm) | Double | 最大值:100000 最小值:0.001 |
HalfSizeHeight | 取得Plane物件的長度 | 公釐(mm) | Double | 最大值:100000 最小值:0.001 |
HalfSizeWidth | 取得Plane物件的寬度 | 公釐(mm) | Double | 最大值:100000 最小值:0.001 |
PlaneType | 取得Plane物件的類型 | - | Integer | Horizontal: 0 Vertical: 1 |
Radius | 取得Sphere物件或Cylinder物件的半徑 | 公釐(mm) | Double | 最大值:100000 最小值:0.001 |
Height | 取得Cylinder物件的高度 | 公釐(mm) | Double | 最大值:100000 最小值:0.001 |
Name | 取得物件名稱 | String | ||
Color | 取得物件展現的顔色 | String | 顔色名稱或者16進位顔色代碼(ARGB) |
可透過下表所示組合設定屬性。
屬性 | 物件 | |||||||
---|---|---|---|---|---|---|---|---|
Robot | Hand | Box | Sphere | Cylinder | Plane | CAD | Camera | |
PositionX | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ |
PositionY | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ |
PositionZ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ |
RotationX | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ |
RotationY | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ |
RotationZ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ |
CollisionCheck | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ |
CollisionCheckSelf | ○ | - | - | - | - | - | - | - |
Visible | - | ○ | ○ | ○ | ○ | ○ | ○ | ○ |
HalfSizeX | - | - | ○ | - | - | - | - | - |
HalfSizeY | - | - | ○ | - | - | - | - | - |
HalfSizeZ | - | - | ○ | - | - | - | - | - |
HalfSizeHeight | - | - | - | - | - | ○ | - | - |
HalfSizeWidth | - | - | - | - | - | ○ | - | - |
PlaneType | - | - | - | - | - | ○ | - | - |
Radius | - | - | - | ○ | ○ | - | - | - |
Height | - | - | - | - | ○ | - | - | - |
Name | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ |
Color | - | - | ○ | ○ | ○ | ○ | - | - |
(2) 機器人的動作設定(Pick及Place)
可設定如下所示機器人的動作。
Pick
以「Robot」指定的機器人進行握持以「Object」指定的物件之動作。
被握持的物件將被註冊為該機器人的零件。此外,透過在「Tool」上指定任意工具編號,利用指定工具進行握持動作。若省略指定「Tool」,則利用Tool0進行握持動作。
無法握持已註冊為零件的物件或設為手臂安裝設備的物件。此外,也無法握持相機。
Place
以「Robot」指定的機器人進行配置以「Object」指定的物件之動作。配置的物件將被解除該機器人零件的註冊。
不可配置已被解除零件註冊的物件。
可透過下表所示組合握持或配置物件。
動作 物件 Robot Hand Box Sphere Cylinder Plane CAD Camera Pick - - ○ ○ ○ ○ ○ - Place - - ○ ○ ○ ○ ○ -
(3) 物件的操作設定(指定父物件)
可設定如下所示物件的操作。
SetParent
對於以「Object」指定的物件,將以「ParentObject」指定的物件視為父物件進行設定。可省略「ParentObject」。此時,以「Object」指定的物件即為父物件。舉例來說,若以「Object」指定的物件為某個物件的子物件,則解除子物件的設定。
此外,若將以「Object」指定的物件設為零件或手臂安裝機器,不可指定父物件。
下表所示為可指定SetParent的物件。在相機物件方面,唯有作為固定相機而設定的物件方可利用SetParent。
操作 物件 Robot Hand Box Sphere Cylinder Plane CAD Camera SetParent - - ○ ○ ○ ○ ○ ○ 此外,SetParent可用於下表所示的搭配。
ParentObject(父物件) Robot Hand Box Sphere Cylinder Plane CAD Camera Object (子物件) Robot - - - - - - - - Hand - - - - - - - - Box - - ○ ○ ○ ○ ○ ○ Sphere - - ○ ○ ○ ○ ○ ○ Cylinder - - ○ ○ ○ ○ ○ ○ Plane - - ○ ○ ○ ○ ○ ○ CAD - - ○ ○ ○ ○ ○ ○ Camera - - ○ ○ ○ ○ ○ ○
(4)模擬器的設定(重設碰撞檢測)
可變更如下模擬器的設定。
ResetCollision
用於重設碰撞檢測。執行ResetCollision後,若機器人和物件之間未發生碰撞,則解除碰撞狀態,並更新模擬器的3D顯示。機器人和物件之間發生碰撞時,不解除碰撞狀態,也不更新模擬器的3D顯示。
參照
SimGet
SimSet範例
'將SBox_1物件的X坐標值設為100.0mm
SimSet SBox_1.PositionX, 100.0
'透過Robot1以Tool1握持SBox_1
SimSet Robot1.Pick, SBox_1, 1
'配置透過Robot1握持的SBox_1
SimSet Robot1.Place, SBox_1
'在SBox_1的父物件上設定CAD_1
SimSet SBox_1.SetParent, CAD_1
'將SBox_1作為父物件
SimSet SBox_1.SetParent
'重設碰撞檢測
SimSet ResetCollision