復合型數據類型:結構
定義結構數據類型-STRUC
用關鍵詞 STRUC 定義一個結構類型復雜變量.
結構是不同數據類型的組合.
一種結構必須首先經過定義,然后才能繼續使用.
例如:
例如:對一輛汽車而言,發動機功率或里程數為整數型。對價格而言,實數型最適用。而空調設備的存在則與此相反,更應為布爾型。所有部分匯總起來可描述一輛汽車。
在結構中可使用簡單的數據類型 INT、REAL、BOOL 及 CHAR
變量實例:
STRUC CAR_TYPE INT motor, REAL price, BOOL air_condition
CAR_TYPE:是結構變量名稱
motor: 是結構里的一個變量,INT是motor的變量類型.
在結構中可以嵌入 CHAR 數組
變量實例:
STRUC CAR_TYPE INT motor, REAL price, BOOL air_condition, CHAR
car_model[15]
在結構中也可以使用諸如位置 POS 等已知結構
變量實例:
STRUC CAR_TYPE INT motor, REAL price, BOOL air_condition, POS
car_pos
定義完結構后還必須對此聲明工作變量
STRUC CAR_TYPE INT motor, REAL price, BOOL air_condition
DECL CAR_TYPE my_car CAR_TYPE變成了變量的類型
結構的初始化 / 賦值
例如:
在$CONFIG.DAT 中給工具1初始化/中賦值
TOOL_DATA[1]={X 0.0,Y 0.0,Z 996.5,A 0.0,B 90.0,C 1.35000002}
在結構中不必指定所有結構元素,一個結構將通過一個結構元素進行初始化,未初始化的值已被或將被設置為未知值.
例如:
結構變量my_car賦值.
my_car = {motor 50, price 14999.95, air_condition = TRUE}
結構變量my_car中motor的 賦值.
my_car = {motor 75} ;
也可以通過點號進行: my_car.price = 9999.0
位置范圍內預設定的 KUKA 結構:
AXIS:STRUC AXIS REAL A1, A2, A3, A4, A5, A6
結構AXIS中的元素A1…A6 是相對于機器人的6個軸的角度值 (轉軸) 或平移值(平移軸) 。
E6AXIS:STRUC E6AXIS REAL A1, A2, A3, A4, A5, A6, E1, E2, E3, E4,E5, E6
在結構E6AXIS利用附加元素E1...E6可以對外部軸的值進行調用。
FRAME:STRUC FRAME REAL X, Y, Z, A, B, C
在結構類型FRAME中可以在空間上(X,Y and Z)定義三個位置值,在空間上3 (A, B and C)上定義3個角度值. 由此可以明確一個點空間的位置和取向。
POS:STRUC FRAME REAL X, Y, Z, A, B, C
因為有的機器人可以帶多種軸位抵達空間的同一點,所以用結構類型POS中的整數變量S和T來確定某個明確的軸位.
E6POS:STRUC E6POS REAL X, Y, Z, A, B, C, E1, E2, E3, E4, E5, E6 INT S,T
在結構類型E6POS中可以利用附加元素E1...E6對附加軸進行調用。
AXIS,E6AXIS,POS,E6POS和FRAME的類型也被稱為幾何數據類型,因為它們提供一個簡單的方法用來說明幾何關系。
事例:
坐標點的工作屬性結構賦值
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}
軌跡坐標點
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}
-執行軌跡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 偏差軌跡的改變
-
數據類型
+關注
關注
0文章
236瀏覽量
13664 -
數組
+關注
關注
1文章
417瀏覽量
26028
原文標題:KRL 復合型數據類型:結構
文章出處:【微信號:gh_a8b121171b08,微信公眾號:機器人及PLC自動化應用】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
請問ADS1299使用Test Signals ,獲取到的數據類型是什么?
西門子博途新數據類型之:SINT(8位整數)
![西門子博途新<b class='flag-5'>數據類型</b>之:SINT(8位整數)](https://file1.elecfans.com/web1/M00/F4/A4/wKgaoWcuwKSAVv28AABkgk4XsXY477.png)
AIC23采集到的數據是應該用什么數據類型來接收?int還是unsigned int?
labview數據類型的取值范圍是多少
常見的遙感數據類型有哪些
技術干貨驛站 ▏深入理解C語言:基本數據類型和變量
![技術干貨驛站 ▏深入理解C語言:基本<b class='flag-5'>數據類型</b>和變量](https://file1.elecfans.com/web2/M00/FC/CD/wKgZomaWI5uASgBaAABuQHdMO4I302.png)
ESP32-S3是否支持修改控制端點數據類型?
在keil5下定義64bit編譯報錯的原因?
C語言結構體史上最詳細的講解【軟件干貨】
C語言數據類型有哪些
![C語言<b class='flag-5'>數據類型</b>有哪些](https://file1.elecfans.com/web2/M00/C5/16/wKgZomX6UKqAb6q4AABHS7gAoYk070.png)
評論