復(fù)合型數(shù)據(jù)類型:結(jié)構(gòu)
定義結(jié)構(gòu)數(shù)據(jù)類型-STRUC
用關(guān)鍵詞 STRUC 定義一個結(jié)構(gòu)類型復(fù)雜變量.
結(jié)構(gòu)是不同數(shù)據(jù)類型的組合.
一種結(jié)構(gòu)必須首先經(jīng)過定義,然后才能繼續(xù)使用.
例如:
例如:對一輛汽車而言,發(fā)動機功率或里程數(shù)為整數(shù)型。對價格而言,實數(shù)型最適用。而空調(diào)設(shè)備的存在則與此相反,更應(yīng)為布爾型。所有部分匯總起來可描述一輛汽車。
在結(jié)構(gòu)中可使用簡單的數(shù)據(jù)類型 INT、REAL、BOOL 及 CHAR
變量實例:
STRUC CAR_TYPE INT motor, REAL price, BOOL air_condition
CAR_TYPE:是結(jié)構(gòu)變量名稱
motor: 是結(jié)構(gòu)里的一個變量,INT是motor的變量類型.
在結(jié)構(gòu)中可以嵌入 CHAR 數(shù)組
變量實例:
STRUC CAR_TYPE INT motor, REAL price, BOOL air_condition, CHAR
car_model[15]
在結(jié)構(gòu)中也可以使用諸如位置 POS 等已知結(jié)構(gòu)
變量實例:
STRUC CAR_TYPE INT motor, REAL price, BOOL air_condition, POS
car_pos
定義完結(jié)構(gòu)后還必須對此聲明工作變量
STRUC CAR_TYPE INT motor, REAL price, BOOL air_condition
DECL CAR_TYPE my_car CAR_TYPE變成了變量的類型
結(jié)構(gòu)的初始化 / 賦值
例如:
在$CONFIG.DAT 中給工具1初始化/中賦值
TOOL_DATA[1]={X 0.0,Y 0.0,Z 996.5,A 0.0,B 90.0,C 1.35000002}
在結(jié)構(gòu)中不必指定所有結(jié)構(gòu)元素,一個結(jié)構(gòu)將通過一個結(jié)構(gòu)元素進(jìn)行初始化,未初始化的值已被或?qū)⒈辉O(shè)置為未知值.
例如:
結(jié)構(gòu)變量my_car賦值.
my_car = {motor 50, price 14999.95, air_condition = TRUE}
結(jié)構(gòu)變量my_car中motor的 賦值.
my_car = {motor 75} ;
也可以通過點號進(jìn)行: my_car.price = 9999.0
位置范圍內(nèi)預(yù)設(shè)定的 KUKA 結(jié)構(gòu):
AXIS:STRUC AXIS REAL A1, A2, A3, A4, A5, A6
結(jié)構(gòu)AXIS中的元素A1…A6 是相對于機器人的6個軸的角度值 (轉(zhuǎn)軸) 或平移值(平移軸) 。
E6AXIS:STRUC E6AXIS REAL A1, A2, A3, A4, A5, A6, E1, E2, E3, E4,E5, E6
在結(jié)構(gòu)E6AXIS利用附加元素E1...E6可以對外部軸的值進(jìn)行調(diào)用。
FRAME:STRUC FRAME REAL X, Y, Z, A, B, C
在結(jié)構(gòu)類型FRAME中可以在空間上(X,Y and Z)定義三個位置值,在空間上3 (A, B and C)上定義3個角度值. 由此可以明確一個點空間的位置和取向。
POS:STRUC FRAME REAL X, Y, Z, A, B, C
因為有的機器人可以帶多種軸位抵達(dá)空間的同一點,所以用結(jié)構(gòu)類型POS中的整數(shù)變量S和T來確定某個明確的軸位.
E6POS:STRUC E6POS REAL X, Y, Z, A, B, C, E1, E2, E3, E4, E5, E6 INT S,T
在結(jié)構(gòu)類型E6POS中可以利用附加元素E1...E6對附加軸進(jìn)行調(diào)用。
AXIS,E6AXIS,POS,E6POS和FRAME的類型也被稱為幾何數(shù)據(jù)類型,因為它們提供一個簡單的方法用來說明幾何關(guān)系。
事例:
坐標(biāo)點的工作屬性結(jié)構(gòu)賦值
DECL VW_MPARA_TYP P1_D = {TOOL_NO 1,BASE_NO 1,VB 100,VE 0,ACC 100,TRG_TIME 0,MOVE_TYPE #PTP_MOTION}
軌跡坐標(biāo)點
DECL E6POS P1 = {X 2892.639, Y -1126.021, Z -1979.668, A 89.99997, B 0.000055789, C -178.648, S 2, T 35 , E1 114.0, E2 0.0, E3 0.0, E4 0.0, E5 0.0, E6 0.0}
-執(zhí)行軌跡E1軸,焊鉗動極臂的補償-
VW_MPARA_ACT=P1_D
Act_P1 = P1
Act_P2 = P1
VW(#MPARA,TRUE)
act_P1.E1=(act_P1.E1-(MyCorrValue*SZ1_Z1_AHV))
PTP act_P1 偏差軌跡的改變
-
數(shù)據(jù)類型
+關(guān)注
關(guān)注
0文章
236瀏覽量
13618 -
數(shù)組
+關(guān)注
關(guān)注
1文章
417瀏覽量
25939
原文標(biāo)題:KRL 復(fù)合型數(shù)據(jù)類型:結(jié)構(gòu)
文章出處:【微信號:gh_a8b121171b08,微信公眾號:機器人及PLC自動化應(yīng)用】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
相關(guān)推薦
評論