力運動限制功能的SPEL+程式

概觀

力覺動作限制功能為用於偵測機器人的位置或姿態是否符合設定條件之功能。
可利用結果執行開始、結束、分支等處理。
力覺動作限制功能的編程將依下列步驟執行。

  1. 設定參數
  2. 執行力運動限制功能
  3. 讀取結果

力運動限制限制功能的參數

力覺動作限制功能的參數在力覺動作限制物件的各屬性中設定。
設定將於執行程式前在GUI進行。如需GUI設定的詳細資訊,請參閱下列章節。
軟體篇 [機器人管理器] - [Tools]功能表
- [工具]-[機器人管理器]-[力(_F)]面板

此外,若需在執行程式期間動態變更參數,可使用FSet陳述式進行設定。

  • ForceSensor屬性
    指定在達到力覺動作限制功能之條件時作為記錄力和扭力之對象的力覺感應器編號。
  • CoordinateSystem屬性
    指定在達到力覺動作限制功能之條件時用於指定記錄力和扭力之力覺座標系的力覺座標系物件。
  • Operator屬性
    指定於達成各軸所有條件時或達成哪一軸條件時達成力覺動作限制功能之條件。
  • RobotLocal屬性
    指定作為力覺動作限制功能監控位置基準的本地座標系。
  • RobotTool屬性
    指定作為力覺動作限制功能監控位置基準的工具座標系。
  • TriggerMode屬性
    指定進行監控的對象位置。
    如需各模式的詳細資訊,請參閱下列手冊。
    "Epson RC+ 8.0 選配 Force Guide 8.0 SPEL+語言參考"
  • DatumPoint屬性
    指定在TriggerMode指定RelativePoint時作為基準的點。
  • Dist_Axes屬性
    指定以X、Y、Z中的哪一軸計算距離。
  • Rot_Axes屬性
    指定以X、Y、Z中的哪一軸計算角度。
  • Enabled屬性
    針對PosX~J6指定執行力覺動作限制功能的軸。
    可在應用程式中,僅啟用所需軸的力覺動作限制功能。
  • Polarity屬性
    指定達成條件的標準是各位置、角度、間接位置位於上/下限值的範圍內時,或超出範圍時。
    若要偵測位置及姿態是否移動至規定範圍外,請指定為範圍外。
    若要偵測位置及姿態是否在預定範圍內,請指定為範圍內。
  • UpperLevel屬性
    設定力覺動作限制功能的上限值。
    監控數值是否為設定值以下或超出設定值。
  • LowerLevel屬性
    設定力覺動作限制功能的下限值。
    監控數值是否為設定值以上或小於設定值。

執行力運動限制功能

透過Till、Wait、Trap、Find指定力覺動作限制功能。
關於各命令的基本功能,請參閱下列手冊。
Epson RC+ 8.0 SPEL+ Language Reference
以下說明力覺動作限制功能。各機器人最多可同時監控15個力覺動作限制。1台機器人無法同時使用16個以上。

  • Till
    透過在Till陳述式的事件運算式中指定力覺動作限制物件,即可將力覺動作限制功能設定為動作的結束條件。藉此即可在達到指定條件的位置時結束動作。

    使用範例:

    Till FMR1
    Move P1 FC1 Till
    

透過Till陳述式在Till條件中設定力覺動作限制,並在Move動作途中達成力覺動作限制物件FMR1中設定的條件時,Move動作即使為動作途中仍會停止,並執行下一個陳述式。

  • Trap
    透過在Trap陳述式的事件運算式中指定力覺動作限制物件,將力覺動作限制功能設定為插斷處理的開始條件。藉此即可隨時監控位置姿態,並在符合指定條件的位置姿態時,開始插斷程序。

    使用範例:

    Trap 1, FMR1 Goto TrapLabel
    

透過Trap陳述式執行力覺動作限制功能,開始監控條件。已達到力覺動作限制物件FMR1中設定的條件時,移動至指定標籤。

  • Wait
    透過在Wait陳述式的事件運算式中指定力覺動作限制物件,將力覺動作限制功能設定為待機的結束條件。藉此待機至符合指定條件的位置姿態為止。

    使用範例:

    Wait FMR1
    

透過Wait陳述式執行力覺動作限制功能,開始監控條件。在達到力覺動作限制物件FMR1中設定的條件前暫停程式,並於達到條件時重新啟動該程式。

  • Find
    透過在Find陳述式的事件運算式中指定力覺動作限制物件,將力覺動作限制功能設定為在動作中儲存座標的條件。藉此即可記錄達到指定位置姿態的位置。

    使用範例:

    Find FMR1
    Move P1 FC1 Find
    P0=FindPos
    

    透過Find陳述式在Find條件中設定力覺動作限制,並在Move動作途中達成力覺動作限制物件FMR1中設定的條件時,控制器會記憶達成條件的位置,並以FindPos函數取得該位置。

    力覺動作限制功能可使用TriggeredPos狀態取得達到條件時的位置。因此在指定結合多項條件的事件運算式時,Find非常實用。TriggeredPos狀態可取得達成該力覺動作限制物件設定條件的位置。FindPos函數可取得達成結合條件之事件運算式的位置。

請勿以FDel陳述式刪除開始監控的力覺動作限制物件。另外,在多工處理下建立程式時,請注意避免讓指定力覺動作限制物件的Till、Wait、Trap、Find同時執行。

讀取力運動限制功能的結果

執行力覺動作限制功能後,使用FGet陳述式指定力覺動作限制物件的狀態,即可取得其結果。使用取得結果即可判定作業成功與否,或執行條件式分支。
執行力覺動作限制功能時會將狀態初始化,並在力覺動作限制功能結束時設定結果。設定結果會持續保留至力覺動作限制功能再次執行,或專案讀入為止。

  • Triggered狀態
    傳回力覺動作限制條件的達成狀態。
    若在前一個力覺動作限制功能中達到條件,將傳回「True」。此結果可用於判定位置姿態是否達到指定條件,並進行分支處理。

  • TriggeredAxes狀態
    依各軸傳回力覺動作限制條件的達成狀態。
    可判定更詳細的條件(例如哪一軸的力是否超出指定範圍等),並進行分支處理。

  • TriggeredPos狀態
    傳回達到力覺動作限制條件的座標。
    可判定達成條件的位置是否在指定範圍內等,並根據位置進行詳細分支處理。

  • TriggeredForces狀態
    傳回達到力覺動作限制條件時的力與扭力。
    可判定達成條件時的力是否在指定範圍內等,並根據力進行分支處理。