$HOLDING_TORQUE
數據類型:REAL
機器人軸 [軸編號] 的保持轉矩
該保持轉矩與當前的實際軸位置和當前的負載有關。
大眾標準中適用的力矩模式,重要是用來對機器人在移動過程中的力矩監控,減少機器人碰撞時發生損壞。
“ 扭矩模式 ” 功能包含部分功能 “ 力矩限制 ” 和 “ 關閉監控 ”。
扭矩限制
可以為單個或多個軸限制扭矩,即電機電流。扭矩限制實現了以下應用情況:
? 可以用定義的扭矩擠壓或拉動軸,直到遇到阻力。
示例:
用電動點焊鉗在工件上建立定義的壓力。
? 可以 “ 柔和切換 ” 軸。然后可以通過外部的力作用使其運動。例如可以將
其移開。
示例:
機器人必須在壓床中抓取一個工件,然后將其從壓床中頂出。為了可以使
機器人具有柔性并抵消頂出,對所涉的軸進行柔和切換。
機器人必須將工件放在夾具可將其拉入極其正確的姿態的位置上。為此,
機器人必須是柔和的。
監控的關閉:
由于扭矩限制,在額定位置和實際位置之間通常會形成一個相對大的偏差。特
定的監控對該偏差響應,但是這在扭矩限制時是不需要的。因此,可以關閉這
些常規的監控。
[UNTERGRUPPE8]
Name = Momentenbetrieb ---力矩模式
[P1]
Visible = True
enum=True
num0=Ausschalten 關閉
num63=Ein-alle Achsen全軸控制
num7=Ein-Grundachsen 一基軸
num56=Ein-Handachsen 單腕軸
num57=Ein-Achse1,4,5,6 單軸1,4,5,6
num1=Ein-Achse1 1軸
num2=Ein-Achse2 2軸
num4=Ein-Achse3 3軸
num8=Ein-Achse4 4軸
num16=Ein-Achse5 5軸
num31=Ein-Achse6 6軸
CASE 108 ;
Momentenbetrieb 力矩模式
IF(PAR7==TRUE)THEN
IF(PAR1》0)THEN
TRQ_MomentenbetriebEin(PAR1)PAR1設置力矩功能
ENDIF
IF(PAR1==0)THEN
LIN $POS_RET 笛卡兒坐標系中離開軌跡時的位置
ENDIF
ENDIF
…
SET_TORQUE_LIMITS(2, torqlim)
SET_TORQUE_LIMITS(axnum, torqlim)
力矩功能中主要使用了SET_TORQUE_LIMITS()函數,
激活轉矩運行:SET_TORQUE_LIMITS()
用該功能可以為特定的軸執行以下操作:
? 在正向和 / 或負向方向上限制轉矩。
? 關閉在滯后誤差變大時要響應的常規監控。
? 如果常規監控已關閉:更改專用監控的值。
SET_TORQUE_LIMITS (axis: in, values : in)
axis 類型:INT
該指令適用的軸
values 類型:TorqLimitParam
要為該軸設定的值
TorqLimitParam: 是一個結構體
STRUC TorqLimitParam REAL lower 、upper、SW_ONOFF monitor 、REAL max_vel、max_lag
lower 扭矩下限,
upper 扭矩上限,
monitor ? #ON (默認):接通常規的監控 #OFF:關閉常規的監控。相反,監控 max_vel 和 max_lag 已激活。
max_vel 力矩運行下允許的最大實際速度 (只在常規的監控關閉時相關)只允許編程一個正值。
max_lag 力矩運行下允許的最大滯后誤差 (只在常規的監控關閉時相關)
lower/upper 什么時候必須限制轉矩上限和下限?
一般說明:必須始終限制建立滯后誤差的方向。
示例:要駛向一個障礙物并在此停止。在此顯示要建立的轉矩。
? 如果該障礙物在正向運動方向上,則必須設定 upper。
? 如果該障礙物在負向運動方向上,則必須設定 lower。
屬性:
? 可以在機器人程序和提交程序中使用 SET_TORQUE_LIMITS()。
? 預進停止:在機器人程序中,該指令會觸發預進停止。
? Values 有時允許保持未初始化狀態。未初始化組件表示現有值應保持未更改狀態。
? 如果設定兩個極限,則必須為 upper 》= lower
? 如果一個極限已設定(或兩個)并且然后設定另一個極限,和現在通過新的極限得出一個空的區間,則新的極限值變為兩個極限的值。示例:
? 已設定:{lower 1, upper 2}
? 已重新設定:{lower 3}
? 由此,以下適用:{lower 3, upper 3}
? 允許設定一個正的 lower 或一個負的 upper。
? 必須設定極限,使它們含有當前的保持轉矩 $HOLDING_TORQUE。如果它們另外設定,則機器人控制系統輸出用戶必須應答的錯誤信息。
? lower 必須小于或等于 $TORQUE_AXIS_MAX_0 區間的上限值。
upper 必須大于或等于 $TORQUE_AXIS_MAX_0 區間的下限值。
如果極限另外設定,則機器人控制系統輸出用戶必須應答的錯誤信息。
示例 1:
對于 A1 將允許的轉矩范圍限制到區間 800 … 1 400 Nm 上。
SET_TORQUE_LIMITS(1, {lower 800, upper 1400} )
示例 2:
對于 A3 將轉矩上限設定為 1200 Nm。
SET_TORQUE_LIMITS(3, {upper 1200} )
停用扭矩模式:RESET_TORQUE_LIMITS()
可以使用扭矩限制避免在碰撞時發生損壞。
? 優勢:確保了機器人只用特定的有限作用力壓向障礙物。
? 缺點:機器人邊遲鈍。不再能高加速。
例如:
機器人從箱子中取出工件。在運動至點 P7、P8 和 P9 時,可以排除機器人與工件一起掛在箱子上。應確保機器人不會大力壓緊致使形成損壞。為此,在臨界點之前限制作用力。
關閉常規的監控。不因為否則將不必要地觸發監控,而是因為與該示例相反它們不夠嚴格。取而代之,將其中一個專用監控設定為一個很小的值。(取決于具體的應用情況,這對使用常規監控也很有意義。)
1 DECL TorqLimitParam myParams
。..
2 FOR i = 1 to 6
3 myParams.lower = $holding_torque[i] - 500
4 myParams.upper = $holding_torque[i] + 500
5 myParams.monitor = #off
6 myParams.max_lag = 0.1
7 SET_TORQUE_LIMITS(i, myParams)
8 ENDFOR
9 $acc.cp = my_low_acceleration
10 $vel.cp = my_low_velocity
11 LIN P7
12 LIN P8
13 LIN P9
14 FOR i = 1 to 6
15 myParams.lower = -1E10
16 myParams.upper = 1E10
17 myParams.monitor = #on
18 SET_TORQUE_LIMITS(i, myParams)
19 ENDFOR
20 $acc.cp = my_high_acceleration
21 $vel.cp = my_high_velocity
22 LIN P10
2 … 7 限制 A1 … A6 的轉矩。
3, 4 用中間的保持轉矩將限制設定為一個很小的區間。
5, 6 關閉常規的監控。Max_lag = 0.1 的作用是在滯后誤差為 0.1° 時已經觸發了停止。
9, 10 減小加速度和速度,以便機器人緩慢地移到臨界點。
11 …13 可能出現碰撞的點
如果出現碰撞,則監控 max_lag 響應并且設備操作人員可以干預。
在臨界區段之后:
14 …19 停用扭矩限制。
在此可以使用 SET_TORQUE_LIMITS:只在機器人無碰撞地經過臨界點時,機器人才能到達該位置。在該情況下,沒有形成滯后誤差并且不需要額定 / 實際匹配。
20, 21 重新提高加速度和速度。
22 非臨界點
編輯:lyn
-
機器人
+關注
關注
210文章
28191瀏覽量
206505 -
扭矩
+關注
關注
1文章
63瀏覽量
12644 -
User
+關注
關注
1文章
27瀏覽量
10786
原文標題:VASS 標準USER里的扭矩操作
文章出處:【微信號:gh_a8b121171b08,微信公眾號:機器人及PLC自動化應用】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
評論