設定力覺引導物件
力覺引導功能是以力覺引導物件的形式呈現包含力控制功能的動作或條件分支等特定的處理。在容器(力覺引導序列)中對齊程序(力覺引導物件),以實現特定操作。
在力覺引導功能中,可從十種通用力覺引導物件或六種專用力覺引導物件中,選擇所需的力覺引導物件,並在力覺引導序列中將其對齊。但是專用力覺引導物件僅可在專用序列中使用。
使用力控制功能的操作可分為下列五種基本動作:
「接觸」、「跟隨」、「對齊」、「探測」、「按壓」
力覺引導物件可分為七種類別: 前述五種基本動作+「執行」(為力控制以外的處理程序) +「專用」(自動配置在專用力覺引導序列中)。此外,部分力覺引導物件可同時執行兩種以上的基本動作。
接觸
從非接觸狀態將機器人移至與物件接觸,並在接觸物件的位置將其停止的動作。使用此動作偵測工件等位置。接觸物件會執行接觸動作。跟隨
跟隨施加的力與扭力,以修正位置的動作。使用此動作將機器人移至施力為「0」的位置。Relax物件及FollowMove物件會執行跟隨動作。對齊
按壓物件同時配合其形狀或方向修正欲抓取工件位置的動作。使用此動作將欲抓取工件與物件對齊。SurfaceAlign物件會執行對齊動作。探測
偵測物件上洞口或高低差的動作。使用此動作偵測洞口或高低差。PressProbe物件及ContactProbe物件會執行探測動作。按壓
維持對物件施加特定力與扭力的動作。使用此動作,對物件施加特定力與扭力。Press物件及PressMove物件會執行按壓動作。此外,使用力控制功能的操作(尤其是按壓動作)通常會往不同方向同時進行按壓及跟隨。工件的插入操作,例如往插入方向按壓,並跟隨兩個與插入方向垂直的方向。因此,Press物件及PressMove物件可同時執行不同軸的按壓及跟隨動作。執行
力控制以外的處理程序。下列物件可執行此動作:- Decision物件
執行條件分支的力覺引導物件。 - SPELFunc物件
執行SPEL+程式函數的力覺引導物件。
- Decision物件
專用
創建專用力覺引導序列後將自動配置。以下物件可執行此動作。- Paste物件
將抓取工件的表面與物件表面對齊,同時往指定方向按壓的物件。 - ScrewTighten 物件
用電動螺絲起子進行螺絲鎖付的物件。 - ScrewRetighten 物件
先將用電動螺絲起子鎖付的螺絲鬆開,再重新鎖付的物件。 - HeightInspect 物件
將機器人移至指定方向,並在接觸物件時使其停止,測量並檢查物件高度的物件。 - Insert 物件
插入工件的物件。 - TensileTest 物件
插入連接器等物件後,往插入方向的反方向施力,判斷插入的工件是否會脫落的物件。
- Paste物件
下表為類別及力覺引導物件清單。
如需更多各物件的詳細資訊,請參閱下列章節。
通用力覺引導物件
Paste物件
ScrewTighten 物件
ScrewRetighten 物件
HeightInspect 物件
Insert 物件
TensileTest 物件
類別 | 物件名稱 | 說明 |
---|---|---|
接觸 | Contact | 將機器人移至指定方向,並在接觸物件時使其停止。 |
跟隨 | Relax | 調整機器人位置,使施加至指定軸的力與扭力為「0」。 |
FollowMove | 以指定軌道移動時,調整機器人位置,使施加至指定軸的力與扭力為「0」。 | |
對齊 | SurfaceAlign | 將抓取工件的表面與物件表面對齊。 |
探測 | 壓按探索 | 按壓抓取的工件,同時偵測洞口或高低差。 |
ContactProbe | 接觸抓取的工件時,偵測物件上的孔洞。 | |
按壓 | 按壓 | 往指定軸方向按壓。 |
壓按移動 | 在指定軌道上移動,同時往指定軸方向按壓。 | |
執行 | Decision | 視物件成功/失敗的結果,進行分支處理。 |
SPELFunc | 執行指定SPEL程式的功能。 | |
專用 | Paste | 將抓取工件的表面與物件表面對齊,同時往指定方向按壓。建立Paste序列後將自動配置。 |
ScrewTighten | 用電動螺絲起子進行螺絲鎖付。建立螺絲鎖付序列後將自動配置。 | |
ScrewRetighten | 先將用電動螺絲起子鎖付的螺絲鬆開,再重新鎖付。啟用螺絲重新鎖付動作並建立螺絲鎖付序列後,將自動配置。 | |
HeightInspect | 將機器人移至指定方向,並在接觸物件時使其停止,測量並檢查物件的高度。建立檢查高度序列後將自動配置。 | |
Insert | 插入工件。建立插入序列後將自動配置。 | |
TensileTest | 插入接頭等物件後,往插入方向的反方向施力,判斷插入的工件是否會脫落。啟用拉拔測試並建立插入序列後,將自動配置。 |
力覺引導物件具有屬性及結果。
- 屬性
基本上會影響力覺引導物件。例如,具有能夠設定運動方向的屬性。 - 結果
顯示力覺引導物件結果。
透過下列步驟設定力覺引導物件:
- step-3-1-將一個操作拆解為多個力覺引導物件
- step-3-2-配置力覺引導物件
- step-3-3-設定力覺引導物件的屬性
Step 3-1. 將一個操作拆解為多個力覺引導物件
視欲透過力覺引導序列實現的操作,決定要使用的力覺物件。
以下說明基本概念。請注意複雜操作等部分操作,可能不適用於基本概念。此外,使用專用力覺引導序列時,會自動配置專用力覺引導物件,因此本步驟可省略。但,專用力覺引導序列是執行各項基本作業的序列,因此可能會依客戶的作業不同而需要新增力覺引導物件。
首先將欲透過力覺引導序列實現的操作拆解為不同類別(「接觸」「跟隨」「對齊」「探測」「按壓」)。若要執行連續動作,如在「跟隨」動作後執行「按壓」動作,請將程序一分為二。請盡量將程序分為單一類別。但若要同時執行兩種類別,請依主要目標,暫時將其分為任一類別。例如,在不考慮接觸狀態的情況下移動機器人時,請試想要使用的Move命令數量,然後細分其類別。
接著,使用下列五種流程圖,決定力覺引導物件。
「接觸」
「跟隨」
*1:指機器人在指定軌道上移動,同時執行跟隨動作的情況。機器人由力控制功能移動時,請選擇「否」。
「對齊」
「探測」
*1:工件引線等零件會因執行按壓探測動作而變形或損壞時,請選擇「否」。
*2:若考慮將「接觸」當成上一程序,請將其刪除。
「按壓」
*1:指機器人在指定軌道上移動,同時使用力控制功能的情況。機器人由力控制功能移動時,請選擇「否」。
*2:指必須依工件或工具指定速度的情況。一般會選擇「否」。例如,使用電動螺絲起子進行螺絲鎖付時,因按壓(螺絲插入)方向速度是由螺絲間距及螺絲起子轉速所設定,請選擇「Yes」。
- 範例:將含有特定大小的力的按壓操作拆解為多個力覺引導物件
-
此為接觸後按壓物件的操作。您可分為「接觸」及「按壓」兩個程序。
由於無其他同時執行的類別,「接觸」將為Contact物件。
由於無其他同時執行的類別,「按壓」僅會移至按壓方向,且並未指定往按壓方向的移動速度,因此「按壓」將為Press物件。
- 範例:將「插件」工作拆解為多個力覺引導物件
-
此為執行下列動作的操作: 接觸物件後探測孔洞→調整時跟隨→往孔洞方向按壓→插入若要同時執行「跟隨」及「按壓」,請將兩者視為單一程序。因主要目標為插入,請暫時分類為「按壓」。
您可分為「接觸」、「探測」及「按壓」三個程序。
由於無其他同時執行的類別,「接觸」將為Contact物件。
由於無其他同時執行的類別,探測目標為洞口,可在按壓工件時進行探測,物件開始時為接觸狀態,因此「探測」將為PressProbe物件。
由於跟隨類別會同時執行,「按壓」僅會移至按壓方向,且並未指定往按壓方向的移動速度,因此「按壓」將為Press物件。
- 範例:將一個插入連接器操作拆解為多個力覺引導物件
-
此為執行下列動作的操作: 接觸物件→探測孔洞→調整時跟隨→往孔洞方向按壓→插入。
若要同時執行「跟隨」及「按壓」,請將兩者視為單一程序。因主要目標為插入,請暫時分類為「按壓」。
您可分為「接觸」、「探測」及「按壓」三個程序。
由於無其他同時執行的類別,「接觸」將為Contact物件。
根據下列原因,「探測」將為ContactProbe物件。無其他同時執行的類別。探測目標為孔洞。無法在按壓工件時進行探測,開始物件時為接觸狀態。
此外,由於以非接觸狀態開始,請刪除先前程序: 「接觸」。
儘管一開始分為三個程序,但「接觸」已刪除,故此操作只包含「探測」及「按壓」兩個程序。
由於跟隨類別會同時執行,「按壓」僅會移至按壓方向,且並未指定往按壓方向的移動速度,因此「按壓」將為Press物件。
- 範例:將一個使用電動螺絲起子執行螺絲鎖付的操作拆解為一個力覺引導物件
-
此為執行下列動作的操作: 接觸物件→調整時跟隨→往孔洞方向按壓→插入。
但在接觸物件後暫停時,螺絲可能會脫落。因此,接觸物件時,請將其視為單一程序,如下所示,並進行按壓。因主要目標為插入,請暫時分類為「按壓」。此操作可視為單一程序: 「按壓」。
由於接觸及跟隨類別會同時執行,「按壓」僅會移至按壓方向,且並未指定往按壓方向的移動速度,因此「按壓」將為PressMove 物件。
以下針對瞭解使用SPEL+編程之力覺功能的使用者進行額外描述。
含五種基本動作的力覺引導物件動作,是由力控制功能、位置控制及結束條件所構成。在各物件中,您所需的動作設定可自行選擇,或自動設定。以下為力覺引導物件清單:
類別 | 物件名稱 | 力控制功能 A:選擇性 B:自動設定 | 位置控制 A:同時執行 B:分別執行 | 結束條件 A:選擇性 B:自動設定 | |||
---|---|---|---|---|---|---|---|
按壓 | 跟隨 | 力覺 | 位置 | I/O | |||
接觸 | Contact | A(僅限1軸) | - | - | B | - | - |
跟隨 | Relax | - | A(所有軸) | - | A | A | A |
FollowMove | - | A(所有軸) | A | - | A | A | |
對齊 | SurfaceAlign | A(轉動軸,僅限1軸) | B *1 | - | A | - | - |
探測 | 壓按探索 | A(轉動軸,僅限1軸) | - | A | A *2 | A *2 | - |
ContactProbe | A(轉動軸,僅限1軸) | - | B *3 | B | B | - | |
按壓 | 按壓 | A(所有軸) | A(所有軸) | - | A | A | A |
壓按移動 | A(所有軸) | A(所有軸) | A | A | A | A | |
執行 | Decision | - | - | - | - | - | - |
SPELFunc | - | - | - | - | - | - | |
專用 | Paste | A (僅限1軸) | B | - | B | B | - |
ScrewTighten | A (僅限1軸) | B | A *4 | B | B | B | |
ScrewRetighten | B(與擰螺絲方向相同) | B | A | B | B | B | |
HeightInspect | A (僅限1軸) | - | - | B | B | - | |
Insert | A (僅限1軸) | B | A *4 | B | B | - | |
TensileTest | B(與插入絲方向相反) | - | - | B | B | - |
*1:設定與按壓方向的軸正交的兩個軸的旋轉方向。
*2:您必須啟用其中一項。
*3:針對離開動作及前往下一個接觸開始位置的動作,使用位置控制。無法與力控制功能同時執行。
*4:在動作中途,從與位置控制的併發,切換為僅力控制功。
Step 3-2. 對齊力覺引導物件
力覺引導物件已在[Force Guide]視窗上選擇並對齊。依步驟3-1設定順序對齊力覺引導物件。
若在建立力覺引導序列時選擇範本,則不需對其力覺引導物件。視操作而定,您可將力覺引導物件新增至範本,或刪除力覺引導物件。
如果在建立力覺引導序列時選擇了專用力覺引導序列,則不需要配置力覺引導序列物件。將自動配置每個序列所需的專用力覺引導物件。不能刪除和移動放置的專用力覺引導物件。如果需要其他操作,還可以添加通用力覺引導序列物件。
如需更多建立步驟的詳細資訊,請參閱下列章節。
軟體篇 - [力覺引導] (工具功能表)
Step 3-3. 設定力覺引導物件的屬性
設定力覺引導物件的屬性。您需依操作設定屬性。使用序列精靈設定專用力覺引導序列,會自動配置力覺引導物件。
如需更多各物件的詳細資訊,請參閱下列章節。
通用力覺引導物件
Paste物件
ScrewTighten 物件
ScrewRetighten 物件
HeightInspect 物件
Insert 物件
TensileTest 物件
如需更多各屬性的詳細資訊,請參閱下列章節。
軟體篇 [力覺引導] (工具功能表)
以下描述設定力覺引導物件屬性時應瞭解的概念。
執行力控制功能時的基本機器人動作
力控制功能可將力或扭力維持在指定值。為維持數值,機器人會移至將要施力的位置。因此,若使用非接觸狀態指定「按壓」的力控制功能,機器人會移至將要施力的位置。
力方向及機器人動作方向
力覺感應器會偵測施加的力。
以下範例中,機器人垂直向下按壓工件(紅色箭頭所示方向)。由於力已平衡,機器人施加作用力(紅色箭頭)時,反作用力(藍色箭頭)會作用於機器人上。
力覺感應器是偵測該反作用力的感應器。請注意,機器人動作方向與要設定的按壓力及偵測力永遠保持相反方向。
例如,若在Press物件中的Fx_ControlMode指定Press+(往正方向按壓),必須在Fx_PressForce設定負值。記錄為動作結果的力也是負值。
力控制功能硬度(Firmness)
力覺引導功能以Firmness屬性表示力控制功能的硬度。
視ContactFirmnessF或Fx_Firmness等力覺引導物件而定,實際屬性名稱會有所差異。但特性相同。
以下說明Firmness屬性的共通概念。
Firmness屬性值大時,力控制功能會較堅硬,且反應較慢。
Firmness屬性值小時,力控制功能會較柔軟,且反應較快。但若Firmness屬性值過小,機器人動作可能會發生振動。
如下圖所示,機器人在物件上開始動作,並以10 [N]的力按壓抓取的工件。將此操作作為範例,並說明Firmness屬性的效果。
以下為其他屬性固定時,執行大小Firmness屬性值時的力圖。
在非接觸狀態下,Firmness屬性值較小時,移動速度將會較快。因此,與物件接觸的時間將縮短,且波形在圖中的上升時間也會不同。由於接觸速度快,力過衝將較大。達到目標力的時間將會縮短,但會產生振動。
圖中綠線為使用力控制功能的理想力變化(理想波形)。該力在接觸時不會過衝,而會立即變為目標力,且非常穩定。但現實中不會呈現該狀態。因為力過衝或振動及循環時間之間的關係會平衡。請針對您的各項操作調整為可容許的狀態。
執行時,Firmness屬性值與力之間的關係會隨環境(機器人, 末端夾具, 工件, 姿態等)改變。因此,您需調整實際環境中的各力覺引導物件。建議在Firmness屬性的初始狀態設定較大值。接著,逐漸降低數值(如數值降低10%)並進行調整。
Firmness值也可透過Firmness精靈來調整。以下說明利用Firmness精靈調整Firmness的方法。
按一下Firmness屬性右側的按鈕。
[剛性嚮導]視窗會隨即顯示。
按一下[示教…]按鈕。
[示教接近點]對話方塊會隨即顯示。
工件移動至要按壓物件的上方1mm處為止。
按一下[確定]按鈕。
儲存目前的位置,並返回[剛性嚮導]視窗。
設定[Motion and Force]的最大容許力或扭力。
若是跟隨方向的Firmness精靈,則設定預計要施加的力或扭力。
設定[Firmness]的Trials、Max time per trial,用滑桿設定Firmness的範圍。
開始調整時,請將滑桿移動到Hard,接著在確認實際力或扭力波形的同時調整數值。
按一下[執行]按鈕。確認對話方塊隨即顯示。
確認初始位置工件及要按壓物件間的距離是否小於1 mm,接著按一下[Yes]按鈕。
機器人會移動,直到設定軸達到目標力為止。
若要中途停止機器人,請按一下[停止]按鈕。
若機器人在達到目標的力或力矩之前就移動了10mm或10deg以上,以下對話方塊會隨即顯示。可能是以下原因所致。
- 初始位置工件與要按壓物件的距離達10mm以上
- 設定的按壓方向與客戶設想的方向不同
若要繼續執行剩餘的嘗試,按一下[Yes]按鈕。若不繼續執行剩餘的嘗試,按一下[No]按鈕。
調整滑桿,使力或扭力的實測資料接近客戶作業中可容許的波形,再按一下[執行]按鈕。
反覆變更滑桿的範圍並執行,直到接近理想的波形為止。
如果波形振動或未調整到目標力,請將滑塊移到Hard側。如果波形太平緩,請將滑塊移動到Soft側。過多移動滑塊可能會顯著改變施加力的方式。一點一點地移動滑塊以進行調整。
按一下[下一步]按鈕。
設定前後的Firmness值會隨即顯示。
若要儲存新數值,請按一下[Finish]按鈕;若要取消數值,則按一下[Cancel]按鈕。