EC機器人JBI,LUA和用戶(hù)PLC介紹,區別及如何選擇
1. 簡(jiǎn)介
1.1. JBI語(yǔ)言介紹
● JBI語(yǔ)言是艾利特機器人示教器的編程語(yǔ)言,其主要功能是編寫(xiě)整體邏輯框架,及運動(dòng)指令等。
● JBI 腳本的數據類(lèi)型有 int{整型},uint{正整數型},double{浮點(diǎn)型},joint{關(guān)節位}pose{
內置全局變量 (variable) 包括:B{uint}, 正整數型變量。I{int}, 整數型變量。D{double}, 浮點(diǎn)數變量。P{joint}, 關(guān)節位置變量。V{pose},位姿變量。M{bit} 虛擬線(xiàn)圈。
● JBI 腳本是大小寫(xiě)敏感型,所有的指令及參數均是大寫(xiě);對縮進(jìn)沒(méi)有要求,不同指令需處于不同行。JBI 腳本的常用格式如下,指令均需包圍在關(guān)鍵字 NOP 和 END 之間,NOP 之前的數據是軟件自動(dòng)生成的關(guān)節位置數據,對應于使用非變量類(lèi)型的 MOV 指令,例如下面代碼的第5、6 行。
1 //固 定 點(diǎn) 位 的 存 儲 (//是 注 釋?zhuān)?/p>
2 C00000=0.0000,-90.0000,0.0000,0.0000,90.0000,0.0000,0.0000,0.0000
3 C00001=0.0000,-90.0000,0.0000,0.0000,90.0000,0.0000,0.0000,0.0000
4 NOP
5 MOVJ VJ=100% PL=0
6 MOVL AV=10.0 MM/S PL=0
7 END
技術(shù)資料_機器人技術(shù)-艾利特機器人詳細介紹可以看jbi手冊
1.2. LUA腳本介紹
● lua是艾利特機器人的后臺腳本,可以理解為線(xiàn)程,其主要功能是做一些復雜計算和通訊,除了IO通訊,其他所有的通訊都需要腳本來(lái)實(shí)現。
● lua語(yǔ)言是用標準C語(yǔ)言編寫(xiě)并以源代碼形式開(kāi)放,是一種輕量小巧的腳本語(yǔ)言,其設計目的是為了嵌入應用程序中,從而為應用程序提供靈活的擴展和定制功能。
● 除了查看我們的lua手冊LUA手冊,網(wǎng)上也有許多可以學(xué)習的網(wǎng)址,例如:菜鳥(niǎo)鏈接
● 艾利特機器人的lua腳本編程靈活,不僅可以使用lua手冊中的函數,而且lua原生的函數庫都可以兼容,所以編程時(shí)不要局限于手冊?xún)鹊闹噶?,對于一些手冊無(wú)法解決的需求,可以去網(wǎng)上查找。
1.3. 用戶(hù)PLC介紹
● 用戶(hù)PLC 是一個(gè)始終在后臺運行的PLC 程序。PLC 使用梯形邏輯,這是一種可視化編程語(yǔ)言。每行稱(chēng)為一個(gè)梯級,按照梯形圖從上至下、從左至右的順序執行。一旦梯形圖的所有梯級都執行完畢,PLC 程序將返回頂部梯級并再次執行程序。PLC 最多支持200 行或梯級。
● 用戶(hù)PLC可以將機器人IO,線(xiàn)圈等,映射到一個(gè)功能上面,功能如下:

詳細內容可查看用戶(hù)手冊EC機器人用戶(hù)手冊
1.4. 三者的關(guān)系
JBI通過(guò)機器人的全局變量與LUA交互,例如:B/I/D變量和M線(xiàn)圈,以讓外部設置的通訊
用戶(hù)PLC作為機器人的后臺線(xiàn)程,通過(guò)可以通過(guò)IO和M線(xiàn)圈觸發(fā)對應的功能,可以通過(guò) JBI或LUA觸發(fā),外部設備也可以。

2. 操作流程
2.1. JBI的使用
1. 在主界面內,打開(kāi)或新建JBI程序

2.進(jìn)入程序后,編輯指令功能塊亮起,此時(shí)所有的JBI指令都在編輯指令里

3.接下來(lái)就可以根據項目來(lái)編程,關(guān)于指令的詳細介紹和示例,可以查看JBI手冊
4. 也可以通過(guò)Web示教器對JBI程序進(jìn)行在線(xiàn)編程。如何使用Web可以咨詢(xún)官方技術(shù)文檔。
2.2. LUA的使用
1. 推薦使用Web示教器進(jìn)行LUA編程,詳細使用Web示教器可以咨詢(xún)官方技術(shù)文檔。
2. 點(diǎn)擊新建,選著(zhù)LUA文件,命名文件后即可編程LUA。

3. 程序編輯好后可以點(diǎn)擊保存并運行進(jìn)行測試。

4.后續想再編輯腳本,可以再打開(kāi)中選著(zhù)之前編寫(xiě)的腳本。

2.3. 用戶(hù)PLC的使用
1. 用戶(hù)PLC的編寫(xiě)只能在示教器上,在擴展-用戶(hù)PLC中。

2.在橫線(xiàn)處插入行

3.在空白區域點(diǎn)擊修改即可出現PLC指令進(jìn)行編寫(xiě)

3. 常見(jiàn)問(wèn)題解答
3.1. JBI常見(jiàn)問(wèn)題
● 邏輯控制內的if,while等指令都有對于的結束語(yǔ)句。
● CALL指令不可以嵌套超過(guò)十次
● jbi程序一行只可以一條指令
● jbi 在離線(xiàn)編程的時(shí)候不可在指令行后面做注釋
3.2. LUA常見(jiàn)問(wèn)題
● lua程序第一行需要使用sleep()延時(shí)指令,正常0.1秒即可。
● lua程序中的死循環(huán)需要在循環(huán)中加0.1秒的延時(shí),降低機器人運行內存的負荷。
● lua程序不要求縮進(jìn),但建議編寫(xiě)時(shí)使用縮進(jìn),方便后期維護查看。
● lua的if,while等指令都有end的結束語(yǔ)句,需要注意,并且lua是有大小寫(xiě)和符號中英文區分。
● lua中的變量建議使用local定義局部變量。
3.3. 用戶(hù)PLC常見(jiàn)問(wèn)題
用戶(hù)plc一般只用作簡(jiǎn)單的機器人功能配置,不能當做邏輯控制器使用,編寫(xiě)復雜程序會(huì )導致無(wú)法保存。
● 最多支持200行的編寫(xiě)。
4. 示例
4.1. JBI示例
可以參考JBI手冊第三章JBI腳本示例
4.2. LUA示例
可以參考lua手冊目錄中以Example命名的示例
官方技術(shù)論壇中也有許多JBI和LUA的示例及解決問(wèn)題的方法
4.3. 用戶(hù)PLC示例
可以參考用戶(hù)手冊第十章的內容