處理復雜的機器人應用的一個重要的前提條件是一個自由的和容易使用的可編程控制器。
為了滿足該需求,機器人控制器的功能性必須在機器人語言中可編程。機器人控制器全部的功能僅當控制參數(shù)完整地和集成在機器人程序中時才可使用。通過預定系統(tǒng)變量和文件,在KRC...中得到了最好的解決。
預定變量的例子是$POS_ACT(當前機器人位置),$BASE(基本坐標系)或$VEL.CP(CP速度)。更詳細的說明和。
所有預定變量的列表見單獨資料[系統(tǒng)變量]。
系統(tǒng)變量被完整地集成在KRL的變量概念中。系統(tǒng)變量擁有相對應的數(shù)據(jù)類型,可以象其它變量一樣可在程序中讀和寫,沒有數(shù)據(jù)的類型的限制。當前機器人的位置,例如,僅可以讀而不能寫。控制器檢查和限制該狀態(tài)。
基于安全觀念的允許,您有可能會寫系統(tǒng)數(shù)據(jù)。從KCP或編程系統(tǒng)中可以裝載和改變大量的系統(tǒng)數(shù)據(jù),這樣就建立一個寬范圍的診斷能力 寫系統(tǒng)變量的例子是$TIMER[ ]和$FLAG[ ]。
16個計時器變量$TIMER[1]…$TIMER[16]可用于測量時間順序,可用作“秒表”。開
始和停止計時使用系統(tǒng)變量$TIMER_STOP[1]…$TIMER_STOP[16]:
$TIMER_STOP[4]=FALSE
開始計時器4,舉例。
$TIMER_STOP[4]=TRUE
開始計時器4。使用一般變量分配可在任何時候復位有關的計時器變量。舉例來說:
$TIMER[4]=0
如果計時器變量值從負向正變化,對應的標記則設置為TRUE(暫停條件),舉例來說:
$TIMER_FLAG[4]=TRUE
當控制器啟動時,所有的計時器變量預設置為0,標記
$TIMER_FLAG[1]…$TIMER_FLAG[16] 預設置為FALSE,變量$TIMER_STOP[1]...$TIMER_STOP[16] 預設置為TRUE。
計時器變量的單位是毫秒(ms)。$TIMER[1]…$TIMER[16]和$TIMER_FLAG[1]...$TIMER_FLAG[16]以12ms循環(huán)更新。
1024個標記$FLAG[1]…$FLAG[1024]被用作全局標記。這些BU布爾變量預設置為FALSE。
您可以隨時在用戶界面上通過“監(jiān)視”菜單看標記的當前值。
KRC...中可用32個循環(huán)標記$CYCFLAG[1]…$CYCFLAG[32],控制器啟動后預設為FALSE。
機器人中標記僅是循環(huán)被激活。在提交文件中允許循環(huán)標記,但是它們不循環(huán)求值。
循環(huán)標記可在子程序、函數(shù)和中斷子程序中定義和激活。
$CYCFLAG[1]…$CYCFLAG[32]的數(shù)據(jù)類型為BOOL型。任何布爾表達式可分配給循環(huán)標記。
下列是允許的:
G布爾系統(tǒng)變量
G在數(shù)據(jù)表中聲明和初始化過的布爾變量。
不允許的是
G函數(shù)返回的布爾值
語句
$CYCFLAG[10]=$IN[2] AND $IN[13]
布爾表達式“$IN[2]AND$IN[13]”循環(huán)求值。例如,一旦輸入12或輸入13變化,$CYCFLAG[10]也變化,上述表達式執(zhí)行后與程序指針的位置無關。
定義過的所有的循環(huán)標記保持有效直到選擇一個模態(tài)或通過復位進行程序塊選擇。所有的循環(huán)標記保持有效直到程序的最后。
$符號
預定變量一般選擇一個容易記憶的名稱。以$符號開始和有意義的英文縮寫組成。它們象一般變量一樣處理,所以您不必記憶任何不尋常的命令和稀有的選項。
為避免發(fā)生混亂,您在聲明自己的變量的時候應該以$符號開頭。
有的預定變量針對整個KRC...控制器(例如$ALARM_STOP用于定義輸出到到PLC的急停信號PLC).其它,然而僅用于機器人(例如$BASE用于基本坐標系)。
機器人驅動器中有關控制的數(shù)據(jù)存儲在目錄“Steu”中,有關機器人的數(shù)據(jù)存儲在目錄“R1”中,并可在KUKA GUI上顯示。
KUKA圖形用戶界面上的不同級別
當編程KRC...,您可以建立程序文件和數(shù)據(jù)表。程序文件是數(shù)據(jù)定義和可執(zhí)行指令。而數(shù)據(jù)表僅包含數(shù)據(jù)定義和可能的初始化。
除了編程期間建立的數(shù)據(jù)表外,在KRC...中還有KUKA定義的和控制軟件一起的數(shù)據(jù)表。這些數(shù)據(jù)表被稱為預定數(shù)據(jù)表,主要包含預定變量。
您自己并不刪除和建立預定數(shù)據(jù)表,當軟件安裝時自動產(chǎn)生,然后永遠可以使用。就象預定數(shù)據(jù)的名稱一樣,預定數(shù)據(jù)表的名稱也以$符號開始。
KRC...中存在以下預定數(shù)據(jù)表:
● $MACHINE.DAT
是預定數(shù)據(jù)表,包含專有的系統(tǒng)變量。適配控制器和所連接機器人(運動信息,控制參數(shù)等)的機床數(shù)據(jù)。控制系統(tǒng)和機器人系統(tǒng)中都有一個$MACHINE.DAT,您不可以新建或刪除現(xiàn)存的。
例如:
$ALARM_STOP 急停信號 (控制器特有)
$NUM_AX 機器人軸數(shù) (機器人特有)
● $CUSTOM.DAT
僅在控制系統(tǒng)中存在的數(shù)據(jù)表。包含可以配置或參數(shù)化特定控制函數(shù)的數(shù)據(jù)。編程師僅可以改變預定變量的值。不可以新建或刪除現(xiàn)存的。
例如:
$PSER_1 串行接口1的協(xié)議參數(shù)
$IBUS_ON 激活可選的聯(lián)絡母線組
● $CONFIG.DAT
KUKA預定的數(shù)據(jù)表,不包含任何系統(tǒng)變量,然而,在控制級和機器人級都有一個
$CONFIG.DAT 可用。其中可定義長時間有效的變量、結構、通道和信號,對許多程序普通重要。
數(shù)據(jù)表分為以下幾個程序塊:
-- BAS
-- AUTOEXT
-- GRIPPER
-- PERCEPT
-- SPOT
A10
A50
A20
-- TOUCHSENSE
-- USER
用戶的全局聲明應該輸入USER程序塊,因為僅該處的聲明在以后的軟件升級中被轉移。
● $ROBCOR.DAT
文件$ROBCOR.DAT包含特定機器人的機器人動態(tài)模型的數(shù)據(jù)。在軌跡計劃編排中需要這些數(shù)據(jù)。在文件中您不可以新建一個新變量或刪除現(xiàn)存的。
數(shù)據(jù)表 | 系統(tǒng) | 值分配 | ||
數(shù)據(jù)表 | 控制 | 機器人 | at | by |
$MACHINE.DAT | Y | Y | 試運轉 | KUKA/user |
$CUSTOM.DAT | Y | 試運轉 | user/KUKA | |
$CONFIG.DAT | Y | Y | 單元安裝或變換 | user/KUKA |
$ROBCOR.DAT | Y | Y | 運輸 | KUKA |
審核編輯:劉清
-
機器人
+關注
關注
211文章
28601瀏覽量
207850 -
plc
+關注
關注
5016文章
13362瀏覽量
464616 -
可編程控制器
+關注
關注
6文章
536瀏覽量
38890 -
計時器
+關注
關注
1文章
426瀏覽量
32787
原文標題:KUKA 系統(tǒng)變量和系統(tǒng)文件
文章出處:【微信號:gh_a8b121171b08,微信公眾號:機器人及PLC自動化應用】歡迎添加關注!文章轉載請注明出處。
發(fā)布評論請先 登錄
相關推薦
評論