在 ABB 機(jī)器人的 RAPID 編程語言中,指令、函數(shù)、數(shù)據(jù)類型是三個(gè)十分重要的語言要素,在 ABB 官方提供的說明書手冊中有一個(gè)手冊叫做《技術(shù)參考手冊——RAPID 指令、函數(shù)和數(shù)據(jù)類型》,該手冊的 H 次修訂本頁數(shù)多達(dá) 1678 頁,指令、函數(shù)、數(shù)據(jù)類型的重要性由此可見一斑。
幫助大家更深入地理解 ABB 工業(yè)機(jī)器人 RAPID 編程語言的數(shù)據(jù)類型,現(xiàn)在為大家介紹 RAPID 語言數(shù)據(jù)類型的作用和分類。首先讓我們一起來看看,你是否也存在以下疑問呢?
(1)疑問一:RAPID 編程語言中有多少種數(shù)據(jù)類型?
(2)疑問二:數(shù)據(jù)類型有什么作用?
(3)疑問三:可以對(duì) RAPID 數(shù)據(jù)類型進(jìn)行分類嗎?
(4)疑問四:需要記住所有的數(shù)據(jù)類型嗎?
(1)答:在不同版本的 Robotware 控制系統(tǒng)中,數(shù)據(jù)類型的數(shù)量是不同的,在 5.6 版本的 Robotware 中數(shù)據(jù)類型的數(shù)量是 86 個(gè),在 6.05 版本中的 Robotware 中數(shù)據(jù)類型的數(shù)量是 104 個(gè),在 6.08 版本中的 Robotware 中數(shù)據(jù)類型的數(shù)量是 102 個(gè)。當(dāng)然這些數(shù)量是只計(jì)算了系統(tǒng)預(yù)定義的數(shù)據(jù)類型,用戶還可以增加新的自定義數(shù)據(jù)類型,如果不考慮存儲(chǔ)問題和實(shí)用型問題,理論上可以定義無限個(gè)數(shù)據(jù)類型。
(2)答:數(shù)據(jù)類型的作用主要有以下兩個(gè):1)讓系統(tǒng)知道為一個(gè)數(shù)據(jù)分配多少存儲(chǔ)單元;2)讓編程員不易犯錯(cuò),對(duì)人來講,操作一個(gè)任意形式的變量,是很不好掌握,很容易出錯(cuò)的,所以引入數(shù)據(jù)類型的概念,限制人的操作,從而降低操作難度、降低出錯(cuò)率。
(3)答:可以將 RAPID 編程語言的系統(tǒng)預(yù)定義數(shù)據(jù)類型分為基本數(shù)據(jù)類型和復(fù)合數(shù)據(jù)類型,基本數(shù)據(jù)類型是指自身不能再拆分出其他數(shù)據(jù)類型且可用作其它數(shù)據(jù)類型的組件成分的數(shù)據(jù)類型。基本數(shù)據(jù)類型有:bool,num,dnum,str 四個(gè),其他數(shù)據(jù)類型都屬于復(fù)合數(shù)據(jù)類型。
(4)答:中國的漢字一共有九萬多個(gè),你需要把他們都記住嗎?答案當(dāng)然是否定的。我們只需要記住一些常用的數(shù)據(jù)類型,當(dāng)遇到不熟悉的數(shù)據(jù)類型時(shí)查閱技術(shù)參考手冊即可。
了解了 ABB 工業(yè)機(jī)器人數(shù)據(jù)類型的數(shù)量、分類和用途,現(xiàn)在我們就來深入聊一聊一些經(jīng)常用到的數(shù)據(jù)類型。首先我們一起來看,以下一條指令語句:
MoveL p10, v1000, z50, tool0;
有讀者會(huì)不以為意,這是一條非常簡單的指令語句,即使是 ABB 機(jī)器人初學(xué)者也能看懂,有什么好看的呢?但以作者多年的工業(yè)機(jī)器人教學(xué)經(jīng)驗(yàn)來看,很多人其實(shí)是沒有能夠透徹理解這樣一條簡單的指令語句的。不相信的話,不妨讓我們嘗試以下回答以下幾個(gè)問題:
(1)為什么兩條 MoveL 指令語句,使用相同的速度數(shù)據(jù),走同樣距離的軌跡,所花的時(shí)間卻不相同呢?
(2)為什么在 MoveL 指令語句之的 setdo 指令在手動(dòng)單步調(diào)試運(yùn)行時(shí)能夠在準(zhǔn)確的時(shí)機(jī)輸出 DO 信號(hào),而在自動(dòng)模式運(yùn)行時(shí)卻不能在準(zhǔn)確的時(shí)機(jī)執(zhí)行呢?
(3)為什么有的時(shí)候執(zhí)行 MoveL 指令,會(huì)提示“軸配置錯(cuò)誤”,軸配置是什么意思呢?
(4)為什么在【程序數(shù)據(jù)】頁面里對(duì) P10 進(jìn)行了【修改位置操作】,執(zhí)行指令語句時(shí)機(jī)器人卻無法運(yùn)動(dòng)到示教的目標(biāo)位置呢?
(5)位置數(shù)據(jù) P10 是以坐標(biāo)值的形式來描述目標(biāo)位置的,那它是以什么坐標(biāo)系為參考坐標(biāo)系的呢?
(6)指令語句中的 tool0 起到什么作用呢?
如果以上幾個(gè)問題中有任何一個(gè)問題把你難住了,就說明你對(duì)以上一條看似簡單 MoveL 指令語句的理解還不夠透徹,更確切的說是對(duì)以上一條指令語句中所用到數(shù)據(jù)類型的理解還不夠透徹。對(duì)于以上 MoveL 指令語句的數(shù)據(jù)類型進(jìn)行提問,還可以提出很多讓大家感到不解的問題,由此可見數(shù)據(jù)類型中隱藏的秘密還真不少!
在以上 MoveL 指令語句中用到的數(shù)據(jù)類型有:位置數(shù)據(jù) robtarget(p10)、速度數(shù)據(jù) speeddata(V1000)、區(qū)域數(shù)據(jù) znoe(z50)、工具數(shù)據(jù) tooldata(tool0)以及隱含的工件數(shù)據(jù)(wobj0)。
審核編輯 黃宇
-
機(jī)器人
+關(guān)注
關(guān)注
210文章
27839瀏覽量
204596 -
ABB
+關(guān)注
關(guān)注
26文章
515瀏覽量
52181
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論