国产粉嫩蜜臀av一区二区三区-日韩国产av一区二区三区-av黄色国产一区二区三区-久久综合99热国产女同超

18621383605

上海市寶山區(qū)富聯(lián)一路98號6棟

側(cè)邊懸浮
主頁 > 新聞動態(tài) > 企業(yè)動態(tài)

庫卡機器人干貨分享:如何利用KRL編程?

2018-03-02 17:34:40

第十章 在 KRL 中成功編程

庫卡機器人干貨——如何利用 KRL 編程

10.1 機器人的程序結(jié)構(gòu)和組成


程序流程控制

除了純運動指令和通訊指令(切換和等待功能)之外,在機器人程序中還有大量用于控制程序流程的程序。 其中包括:

循環(huán) | 循環(huán)是控制結(jié)構(gòu)。 它不斷重復(fù)執(zhí)行指令塊指令,直至出現(xiàn)終止條件。

分支 | 使用分支后,便可以只在特定的條件下執(zhí)行程序段。

無限循環(huán) :在無限循環(huán)中無止境地重復(fù)指令段。 然而,卻可通過一個提前出現(xiàn)的中斷(含 EXIT 功能)退出循環(huán)語句。

庫卡機器人干貨——如何利用 KRL 編程

程序流程圖: 無限循環(huán)

LOOP 指令舉例:

庫卡機器人干貨——如何利用 KRL 編程

庫卡機器人干貨——如何利用 KRL 編程

計數(shù)循環(huán) :用計數(shù)循環(huán) (FOR 循環(huán)語句)可使指令重復(fù)定義的次數(shù)。 循環(huán)的次數(shù)借助于一個計數(shù)變量控制。

庫卡機器人干貨——如何利用 KRL 編程

程序流程圖: FOR 循環(huán)語句

一個 FOR 循環(huán)語句舉例: 將輸出端 1 至 5 依次切換到 TRUE。 用整數(shù)(Integer) 變量 “i” 來對一個循環(huán)語句內(nèi)的循環(huán)進行計數(shù)。

庫卡機器人干貨——如何利用 KRL 編程

當(dāng)型循環(huán): WHILE 循環(huán)是一種當(dāng)型或者先判斷型循環(huán),這種循環(huán)會在執(zhí)行循環(huán)的指令部分前先判斷終止條件是否成立。

庫卡機器人干貨——如何利用 KRL 編程

WHILE 程序流程圖

WHILE 循環(huán)示例: 輸出端 17 被切換為 TRUE,而輸出端 18 被切換為FALSE,并且機器人移入 Home 位置,但僅當(dāng)循環(huán)開始時就已滿足條件 (輸入端 22 為 TRUE)時才成立。

庫卡機器人干貨——如何利用 KRL 編程

直到型循環(huán): REPEAT 循環(huán)是一種直到型或者檢驗循環(huán),這種循環(huán)會在第一次執(zhí)行完循環(huán)指令部分后才會檢測終止條件。

庫卡機器人干貨——如何利用 KRL 編程

程序流程圖 REPEAT

REPEAT 循環(huán)示例:輸出端 17 被切換為 TRUE,而輸出端 18 被切換為FALSE,并且機器人移入 Home 位置。 這時才會檢測條件。

庫卡機器人干貨——如何利用 KRL 編程

條件性分支 :條件性分支 (IF 語句)由一個條件和兩個指令部分組成。 如果滿足條件,則可處理第一個指令。 如果未滿足條件,則執(zhí)行第二個指令。

但是,對 IF 語句也有替代方案:

庫卡機器人干貨——如何利用 KRL 編程

程序流程圖: IF 分支

IF 語句舉例: 如果滿足條件 (輸入端 30 必須為 TRUE),則機器人運動到點P3,否則到點 P4。

庫卡機器人干貨——如何利用 KRL 編程

分配器: 一個 SWITCH 分支語句是一個分配器或多路分支。 此處首先分析一個表達式。然后,該表達式的值與一個案例段 (CASE) 的值進行比較。 值一致時執(zhí)行相應(yīng)案例的指令。

庫卡機器人干貨——如何利用 KRL 編程

程序流程圖: 分配模塊 SWITCH - CASE

對帶有名稱 “ 狀態(tài) ” 的整數(shù)變量 (Integer),首先要檢查其值。 如果變量的值為1,則執(zhí)行案例 1 (CASE 1): 機器人運動到點 P5。 如果變量的值為 2,則執(zhí)行案例 2 (CASE 2): 機器人運動到點 P6。 如果變量的值未在任何案例中列出(在該例中為 1 和 2 以外的值),則將執(zhí)行默認分支: 故障信息。

庫卡機器人干貨——如何利用 KRL 編程

10.2 結(jié)構(gòu)化機器人程序

機器人程序結(jié)構(gòu)化設(shè)計的方法:

機器人程序的結(jié)構(gòu)是體現(xiàn)其使用價值的一個十分重要的因數(shù)。 程序結(jié)構(gòu)化越規(guī)范,程序就越易于理解、執(zhí)行效果越好、越便于讀取、越經(jīng)濟。 為了使程序得到結(jié)構(gòu)化設(shè)計,可以使用以下技巧:

注釋和印章 :添加注釋為在機器人程序中存儲僅針對程序讀者的文本提供了可能性。 即機器人解釋器不讀入該文本。 該文本只是為了提高程序的可讀性。

在機器人程序中可以在許多地方使用注釋:

庫卡機器人干貨——如何利用 KRL 編程

注釋示例: 信息

庫卡機器人干貨——如何利用 KRL 編程

注釋示例: 分層目錄

添加注釋 :(專家層面) | 通過在程序行的起始位置添加分號來使該程序行 “變成注釋 ”,即該文本作為注釋來識別,而不進入程序執(zhí)行。

庫卡機器人干貨——如何利用 KRL 編程

注釋示例: 添加注釋

以及對需執(zhí)行的工作的說明 | 標識未完成的程序段

庫卡機器人干貨——如何利用 KRL 編程

注釋示例: 說明

注意:只有不斷更新,注釋才有意義。 如果之后更改過指令,則也必須更新注釋!

可以使用三種不同的注釋方式:

庫卡機器人干貨——如何利用 KRL 編程

注釋的聯(lián)機表單

庫卡機器人干貨——如何利用 KRL 編程

庫卡機器人干貨——如何利用 KRL 編程

印章的聯(lián)機表格

庫卡機器人干貨——如何利用 KRL 編程

插入注釋和印章的操作步驟:

1. 標定其后應(yīng)插入注釋或印章的那一行。

2. 選擇菜單序列指令 > 注釋 > 正?;蛴≌隆?/span>

3. 輸入所希望的數(shù)據(jù)。 如果事先已經(jīng)插入了注釋或印章,則聯(lián)機表格中還保留著相同數(shù)據(jù)。

4. 用指令 OK 存儲。

程序行的縮進 提高機器人程序可讀性的一個有效手段是縮進程序行。 由此可提高程序單元之間關(guān)聯(lián)的清晰度。

庫卡機器人干貨——如何利用 KRL 編程

程序行縮進

注意:縮進效應(yīng)只是視覺上的。 縮進的程序行在程序運行時與未縮進的程序行一樣得到處理。

通過 Fold 隱藏程序行:

KUKA 機器人編程語言可將程序行折疊和隱藏到 Fold 中。 用戶因此而看不到這些程序行。這使程序的閱讀變得更加簡潔方便。 以后可在專家用戶組中打開和編輯 Fold。

庫卡機器人干貨——如何利用 KRL 編程

關(guān)閉的 Fold

庫卡機器人干貨——如何利用 KRL 編程

打開的 Fold

Fold 的顏色:

庫卡機器人干貨——如何利用 KRL 編程

10.3 鏈接機器人程序

子程序技術(shù): 利用子程序技術(shù)可將機器人程序模塊化,因而可以有效結(jié)構(gòu)設(shè)計程序。 目的是不將所有指令寫入一個程序,而是將特定的流程、計算或過程轉(zhuǎn)移到單獨的程序中。

通過使用子程序產(chǎn)生了一系列的優(yōu)點:

原則上可將子程序分為兩種不同的類型

庫卡機器人干貨——如何利用 KRL 編程

全局子程序示意圖


一個全局子程序是一個獨立的機器人程序,可從另一個機器人程序調(diào)用??筛鶕?jù)具體要求對程序進行分支,即某一程序可在某次應(yīng)用中用作主程序,而在另一次則用作子程序。

庫卡機器人干貨——如何利用 KRL 編程

示意圖: 局部子程序

局部子程序是集成在一個主程序中的程序,即指令包含在同一個 SRC 文件中。 子程序的點坐標相應(yīng)存放在同一個 DAT 文件中。

調(diào)用子程序的過程: 每個程序都以 DEF 行開始并以 END 行結(jié)束。 如果要在主程序中調(diào)用子程序,則正常情況下子程序會從 DEF 運行至 END。 到達 END 行后,程序運行指針重新跳入發(fā)出調(diào)用指令的程序 (主程序)。

庫卡機器人干貨——如何利用 KRL 編程

調(diào)用子程序的過程

注意:為了能提早退出子程序 (即在 END 行之前),可以在子程序中編入 RETURN 指令。 程序讀到該程序行時,即可提前終止子程序的運行。

調(diào)用子程序的操作步驟:

為了對子程序調(diào)用進行編程,必須已選擇用戶組 “ 專家 ”。 子程序調(diào)用的句法為:

??( )

1. 在主菜單中選擇 配置 > 用戶組。 將顯示出當(dāng)前用戶組。

2. 若欲切換至其它用戶組,則: 按下登錄 …。 選定用戶組專家。

3. 輸入密碼 kuka,然后用登錄確認。

4. 用打開將所需的主程序載入編輯器

庫卡機器人干貨——如何利用 KRL 編程

5. 將光標定位在所需的行內(nèi)

6. 輸入子程序名稱和括號,例如:myprog( )

庫卡機器人干貨——如何利用 KRL 編程

7. 用關(guān)閉圖標關(guān)閉編輯器并保存修改