其中包含引用解釋器的進(jìn)程指針的數(shù)據(jù). 變量包含接下來將在解釋器中執(zhí)行的塊的數(shù)據(jù)。 根據(jù)特定的解釋器,訪問數(shù)據(jù)的方式如下: 讀取機(jī)器人程序中的變量是指機(jī)器人在解釋器中的狀態(tài)。 在提交程序中讀取變量是指關(guān)聯(lián)的提交解釋器的狀態(tài)。 通過變量校正函數(shù)讀取/寫入變量是指$INTERPRETER的當(dāng)前值。 $INTERPRETER的可能值取決于機(jī)器人控制器所處的提交模式。 機(jī)器人控制器處于單次提交模式(默認(rèn)操作模式): 0:提交解釋器 1:機(jī)器人翻譯 多提交模式下的機(jī)器人控制器(僅適用于KUKA系統(tǒng)軟件8.3及更高版本): 1:機(jī)器人解釋器 2:系統(tǒng)提交解釋器 3:擴(kuò)展提交解釋器1 4:擴(kuò)展提交解釋器2 … 9:擴(kuò)展提交解釋器7 在提交程序中訪問P_Arrived: $PRO_IP在提交解釋器中包含以下初始化組件: ? $PRO_IP.SNR ? $PRO_IP.Name[] ? $PRO_IP.I_Executed 組件$PRO_IP.P_Arrived未在子模塊解釋器中初始化。 在提交程序中讀取組件P_Arrived會(huì)觸發(fā)錯(cuò)誤消息{$variable}值無效。 為了能夠讀取提交程序中的機(jī)器人解釋器組件P_Arrived,必須使用變量$PRO_IP1: IF ($PRO_IP1.P_Arrived == 1) THEN … $PRO_IP= Process data STRUC Pro_Ip CHAR name[32], INT snr, CHAR name_c[32], INT snr_c, BOOL i_executed, INT p_arrived, CHAR p_name[24], CALL_STACK S101, S102, …S110
name[] | 解釋器在其中進(jìn)行預(yù)運(yùn)行的模塊的名稱 |
snr | 解釋器在其中預(yù)先運(yùn)行的塊的編號(hào)(通常不等于程序) |
name_c[] | 插值器所在的模塊的名稱 |
snr_c | 插值器所在的塊的編號(hào) |
i_executed | 指示解釋器是否已經(jīng)執(zhí)行了塊(=TRUE) |
p_arrived | 指示機(jī)器人所在路徑上的點(diǎn)(僅與運(yùn)動(dòng)指令相關(guān)) ? 0:到達(dá)運(yùn)動(dòng)的目標(biāo)或輔助點(diǎn) ? 1:未達(dá)到目標(biāo)點(diǎn)(機(jī)器人在路徑上的某個(gè)位置) ? 2:不相關(guān) ? 3:到達(dá)CIRC或SCIRC行動(dòng)的輔助點(diǎn) ? 4:在起點(diǎn)和輔助點(diǎn)之間的路段上移動(dòng) |
p_name[] | 機(jī)器人所在的目標(biāo)或輔助點(diǎn)的名稱或集合 |
S101 … S110 | 解釋器所在的調(diào)用方堆棧 |
在5.x中,對(duì)$PRO_IP的整體結(jié)構(gòu)的訪問與對(duì)組件的訪問給出了不同的結(jié)果。 在下面的例子中,mPArrived1和mPArrived2有不同的結(jié)果。該示例說明了Submit程序: ?1? Decl PRO_IO mProIP ?2? Decl INT mPArrived1, mPArrived2 ?3? mProIP=$Pro_IP ?4? mPArrived1=mProIP.P_Arrived 從Submit解釋器讀取P_Arrived(始終為0) ?5? mPArrived2=$Pro_IP.P_Arrived 從機(jī)器人解釋器讀取P_Arrived 從機(jī)器人解釋器讀取P_Arrived在8.x中,訪問$PRO_IP的整體結(jié)構(gòu)和訪問組件具有相同的結(jié)果。 顯式訪問解釋器狀態(tài): 8.x中存在以下新變量: $PRO_IP0項(xiàng)目 $PRO_IP0可用于訪問Submit解釋器的狀態(tài)。 $PRO_IP1項(xiàng)目 $PRO_IP1可用于訪問機(jī)器人解釋器的狀態(tài)。 程序可以讀取$PRO_IP0和$PRO_IP1。它們也可以使用變量校正函數(shù)來編寫。 隱式訪問解釋器狀態(tài): 根據(jù)具體的解釋器,$PRO_IP的訪問權(quán)限如下: 讀取機(jī)器人程序中的變量是指機(jī)器人解釋器的狀態(tài)。 讀取Submit程序中的變量是指Submit解釋器的狀態(tài)。 通過變量校正函數(shù)讀取/寫入變量是指$INTERPRETER的當(dāng)前值。 $INTERPRETER=0:選擇了Submit解釋器。 $INTERPRETER=1:選擇機(jī)器人解釋器。 ? 在提交程序中訪問P_Arrived: $PRO_IP在Submit解釋器中包含以下初始化組件: $PRO_IP.SNR項(xiàng)目 $PRO_IP名稱[] $PRO_IP.I_已執(zhí)行 這意味著:P_Arrived未在Submit解釋器中初始化。在提交程序中讀取P_Arrived會(huì)觸發(fā)錯(cuò)誤消息1422“…值無效”。 為了能夠讀取Submit程序中的機(jī)器人解釋器組件P_Arrived,必須按如下方式修改指令: ? IF ($PRO_IP 1 .P_Arrived == 1) THEN … .x到8.x(在5.x中,這是:IF($PRO_IP.P_Arrived==1)THEN…)
-
控制器
+關(guān)注
關(guān)注
112文章
16415瀏覽量
178746 -
機(jī)器人
+關(guān)注
關(guān)注
211文章
28557瀏覽量
207675 -
程序
+關(guān)注
關(guān)注
117文章
3793瀏覽量
81215
原文標(biāo)題:KUKA 的$PRO_IP變量V5.28
文章出處:【微信號(hào):gh_a8b121171b08,微信公眾號(hào):機(jī)器人及PLC自動(dòng)化應(yīng)用】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論