機(jī)器人的開發(fā)語言與高級計(jì)算機(jī)語言結(jié)構(gòu)相似的相似

2023-11-03    分類: 網(wǎng)站建設(shè)

機(jī)器人的開發(fā)語言一般為C、C++、C++、Vb、VC等語言,主要取決于執(zhí)行器(伺服系統(tǒng))的開發(fā)語言;而機(jī)器人編程分為示教級、動(dòng)作級機(jī)器人編程語言和任務(wù)級編程語言三個(gè)層次;機(jī)器人編程語言分為特殊操作語言(如VAL語言、AL語言、SLIM語言等),現(xiàn)有計(jì)算機(jī)語言機(jī)器人庫(如語言、JARS語言、AR語言等)的應(yīng)用。 )、應(yīng)用程序有三類新的通用語言機(jī)器人程序庫(如語言、AML 語言語言等)。目前主要應(yīng)用是SLIM語言。

隨著機(jī)器人的發(fā)展,機(jī)器人語言也得到了發(fā)展和完善。機(jī)器人語言已成為機(jī)器人學(xué)的重要組成部分。除了依靠機(jī)器人硬件的支持外,機(jī)器人的相當(dāng)一部分功能都要依靠機(jī)器人語言來完成。早期的機(jī)器人功能簡單,動(dòng)作簡單,因此可以采用固定的程序或示教方法來控制機(jī)器人的運(yùn)動(dòng)。隨著機(jī)器人操作的多樣化和工作環(huán)境的復(fù)雜化,僅僅依靠固定的程序或示教方法已經(jīng)不夠了。必須使用能夠隨時(shí)適應(yīng)工作和環(huán)境變化的機(jī)器人語言編程來完成機(jī)器人的工作。

自從機(jī)器人問世以來,美國、日本等機(jī)器人起源國也同時(shí)開始研究機(jī)器人語言。美國斯坦福大學(xué)于1973年開發(fā)了世界上第一種機(jī)器人語言——WAVE語言。WAVE是一種機(jī)器人動(dòng)作語言,即語言功能主要描述機(jī)器人的動(dòng)作,同時(shí)也控制力和接觸。還可以與視覺傳感器配合,對機(jī)器人的手眼進(jìn)行協(xié)調(diào)控制。

在 WAVE 語言的基礎(chǔ)上,1974 年,斯坦福大學(xué)人工智能實(shí)驗(yàn)室開發(fā)了一種新語言,稱為 AL 語言。這種語言在結(jié)構(gòu)上類似于高級計(jì)算機(jī)語言。它是一種帶有指令編譯器的編譯語言,可以在實(shí)時(shí)機(jī)器上進(jìn)行控制。用戶編寫的機(jī)器人語言的源程序,由編譯器進(jìn)行編譯,為機(jī)器人分配任務(wù)和任務(wù)。作業(yè)命令控制。 AL語言不僅可以描述爪子的運(yùn)動(dòng),還可以記憶工作環(huán)境以及環(huán)境中物體與物體之間的相對位置,實(shí)現(xiàn)多機(jī)器人的協(xié)同控制。

美國IbM也一直致力于機(jī)器人語言的研究,并取得了很多成果。 1975年IbM開發(fā)了ML語言,主要用于機(jī)器人的組裝作業(yè)。后來,該公司又開發(fā)了另一種語言——,這是一種用于匯編的高級語言,可以半自動(dòng)地編寫幾何模型任務(wù)。

美國一家公司于1979年推出了VAL語言,它是在語言的基礎(chǔ)上進(jìn)行擴(kuò)展的機(jī)器人語言,因此具有核心和結(jié)構(gòu),編程簡單工業(yè)機(jī)器人編程語言,語句簡潔。 VAL語言成功應(yīng)用于pUMA和類型機(jī)器人。 1984年,公司在VAL-VALⅡ語言的基礎(chǔ)上推出了一種改進(jìn)的機(jī)器人語言。 VAL Ⅱ語言除了具備VAL語言的所有功能外,還增加了傳感器信息的讀取,使得利用傳感器信息進(jìn)行運(yùn)動(dòng)控制成為可能。

1980 年代初期,一家美國公司開發(fā)了 RAIL 語言,該語言可以使用傳感器信息來檢測零件。同時(shí),麥克唐納道格拉斯公司開發(fā)了MCL語言,這是在CNC自動(dòng)編程語言-ApT語言的基礎(chǔ)上發(fā)展起來的一種機(jī)器人語言。 MCL特別適用于數(shù)控機(jī)床和機(jī)器人組成的柔性加工單元的編程。

機(jī)器人語言種類繁多,新的語言層出不窮。這是因?yàn)闄C(jī)器人的功能不斷擴(kuò)展,需要新的語言來配合它的工作。另一方面,機(jī)器人語言大多是針對特定類型的特定機(jī)器人而開發(fā)的,因此機(jī)器人語言的通用性很差。幾乎一個(gè)新的機(jī)器人出現(xiàn)了一個(gè)新的機(jī)器人語言來匹配它。

機(jī)器人語言根據(jù)其工作描述級別可分為動(dòng)作級編程語言、對象級編程語言和任務(wù)級編程語言。

機(jī)器人編程語言(一)動(dòng)作級編程語言

動(dòng)作級編程語言是最低級的機(jī)器人語言。它主要基于對機(jī)器人運(yùn)動(dòng)的描述。通常,一條指令對應(yīng)于機(jī)器人的一個(gè)動(dòng)作,即從機(jī)器人的一個(gè)姿勢移動(dòng)到另一個(gè)姿勢。動(dòng)作級編程語言的優(yōu)勢在于它相對簡單且易于編程。其缺點(diǎn)是功能有限,無法進(jìn)行復(fù)雜的數(shù)學(xué)運(yùn)算,不接受浮點(diǎn)數(shù)和字符串,子程序不包含自變量;不能接受復(fù)雜的傳感器信息,只能接受傳感器開關(guān)信息;與計(jì)算機(jī)的通信能力差。典型的動(dòng)作級編程語言是 VAL 語言。例如AVL語言句子“MOVE TO()”表示機(jī)器人從當(dāng)前位姿移動(dòng)到目標(biāo)位姿。

動(dòng)作級編程語言編程分為關(guān)節(jié)級編程和末端執(zhí)行器級編程。

聯(lián)合級編程

關(guān)節(jié)級編程基于機(jī)器人的關(guān)節(jié)。編程時(shí)給出機(jī)器人各關(guān)節(jié)位置的一系列時(shí)間序列,在關(guān)節(jié)坐標(biāo)系中進(jìn)行編程。對于直角坐標(biāo)機(jī)器人和圓柱坐標(biāo)機(jī)器人,由于直角關(guān)節(jié)和圓柱關(guān)節(jié)的表示比較簡單,這種編程方法更適合;對于帶有旋轉(zhuǎn)關(guān)節(jié)的關(guān)節(jié)機(jī)器人,關(guān)節(jié)位置的時(shí)間序列很難表達(dá),即使一個(gè)簡單的動(dòng)作也要經(jīng)過很多復(fù)雜的計(jì)算,所以這種方法不適用。

關(guān)節(jié)級編程可以通過簡單的編程指令來實(shí)現(xiàn),也可以通過教學(xué)盒中的教學(xué)、打字教學(xué)來實(shí)現(xiàn)。

末端執(zhí)行器級編程

末端執(zhí)行器級編程在機(jī)器人工作空間的笛卡爾坐標(biāo)系中進(jìn)行。在這個(gè)直角坐標(biāo)系中,給出了機(jī)器人末端執(zhí)行器一系列位姿的時(shí)間序列,連同力、觸摸、視覺等其他輔助功能的時(shí)間序列。工具等是確定和協(xié)調(diào)的??刂茩C(jī)器人的動(dòng)作。

這種編程方式允許簡單的條件分支、感知函數(shù)、選擇和設(shè)置工具,有時(shí)還有并行函數(shù),以及強(qiáng)大的實(shí)時(shí)數(shù)據(jù)處理能力。

機(jī)器人編程語言(二)對象級編程語言

所謂對象是指作品和作品對象本身。對象級編程語言是一種比動(dòng)作級編程語言高一級的編程語言。不需要描述機(jī)器人抓手的運(yùn)動(dòng),只要程序員以程序的形式給出作業(yè)本身的順序過程的描述和環(huán)境模型的描述,即運(yùn)營商和運(yùn)營商。機(jī)器人可以通過編譯程序知道如何移動(dòng)。

這類語言的典型例子是 AML 和其他語言,其特點(diǎn)是:

(1) 具有動(dòng)作級編程語言的所有動(dòng)作功能。

(2)具有很強(qiáng)的感知能力,可以處理復(fù)雜的傳感器信息,可以使用傳感器信息修改和更新環(huán)境的描述和模型,也可以使用傳感器信息進(jìn)行控制、測試和監(jiān)督。

(3)具有良好的開放性,語言系統(tǒng)提供了開發(fā)平臺工業(yè)機(jī)器人編程語言,用戶可以根據(jù)需要添加指令和擴(kuò)展語言功能。

(4)強(qiáng)大的數(shù)字計(jì)算和數(shù)據(jù)處理能力,可以處理浮點(diǎn)數(shù),可以與計(jì)算機(jī)實(shí)時(shí)通信。

對象級編程語言以接近自然語言的方式描述對象變化。對象級編程語言的算術(shù)函數(shù)、工作對象的位置和姿態(tài)序列、工作量、工作對象的力和力矩等都可以以表達(dá)式的形式出現(xiàn)。系統(tǒng)中的機(jī)器人尺寸參數(shù)、工作對象和工具一般以知識庫和數(shù)據(jù)庫的形式存在。系統(tǒng)在編譯程序時(shí)獲取這些信息,然后模擬機(jī)器人的運(yùn)動(dòng)過程,進(jìn)而實(shí)現(xiàn)工作對象的適當(dāng)位姿,獲取傳感器信息。并處理、避開障礙物并與其他設(shè)備通信。

機(jī)器人編程語言(三)任務(wù)級編程語言

任務(wù)級編程語言是比前兩類更高級的語言,也是機(jī)器人最理想的高級語言。這種語言不需要用機(jī)器人動(dòng)作來描述任務(wù),也不需要描述機(jī)器人對象的中間狀態(tài)過程。它只需要按照一定的規(guī)則描述機(jī)器人對象的初始狀態(tài)和最終目標(biāo)狀態(tài),機(jī)器人語言系統(tǒng)就可以使用它?,F(xiàn)有環(huán)境信息、知識庫和數(shù)據(jù)庫自動(dòng)進(jìn)行推理和計(jì)算,從而自動(dòng)生成詳細(xì)的機(jī)器人動(dòng)作、序列和數(shù)據(jù)。

例如,裝配機(jī)器人要完成某個(gè)螺釘?shù)难b配,則螺釘?shù)某跏嘉恢煤脱b配后的目標(biāo)位置是已知的。當(dāng)發(fā)出抓取螺絲的指令時(shí),語言系統(tǒng)會(huì)搜索從初始位置到目標(biāo)位置的路徑,在復(fù)雜的操作環(huán)境中找到一條不會(huì)與周圍障礙物發(fā)生碰撞的合適路徑,選擇合適的姿勢抓取螺絲在初始位置擰緊,并沿此路徑移動(dòng)到目標(biāo)位置。在這個(gè)過程中,作業(yè)中間狀態(tài)的設(shè)計(jì)、程序的選擇、前后動(dòng)作的安排等一系列問題都由計(jì)算機(jī)自動(dòng)完成。

任務(wù)級編程語言的結(jié)構(gòu)非常復(fù)雜,需要人工智能的理論基礎(chǔ)和大規(guī)模知識庫和數(shù)據(jù)庫的支持。目前還不是很完整。它是一種理想的語言,需要進(jìn)一步研究。但相信隨著人工智能技術(shù)和數(shù)據(jù)庫技術(shù)的不斷發(fā)展,任務(wù)級編程語言將取代其他語言,成為機(jī)器人語言的主流,讓機(jī)器人編程應(yīng)用變得非常簡單。

一般用戶接觸到的語言是機(jī)器人公司自己開發(fā)的用戶專用語言平臺,通俗易懂。在這個(gè)層面上,每個(gè)機(jī)器人公司都有自己的語法規(guī)則和語言形式。這些都不重要,因?yàn)檫@一層是用于用戶教學(xué)和編程的。此語言平臺之后是基于硬件的高級語言平臺,如C語言、C++語言、標(biāo)準(zhǔn)語言等,這些語言是機(jī)器人企業(yè)開發(fā)機(jī)器人系統(tǒng)所使用的語言平臺。這個(gè)級別的語言平臺你可以編寫一個(gè)翻譯和口譯程序,將用戶所教的語言平臺上編寫的程序翻譯成這個(gè)級別的語言可以理解的指令。這一層的語言平臺主要用于運(yùn)動(dòng)學(xué)和控制編程,底層是硬件語言,如基于硬件的匯編指令等。

創(chuàng)新互聯(lián)提供給用戶的編程接口一般是自己開發(fā)的簡單的教學(xué)編程語言系統(tǒng),如KUKA、Abb等,機(jī)器人控制系統(tǒng)提供商一般為用戶提供二級語言平臺。在這個(gè)平臺層面,控制系統(tǒng)供應(yīng)商可以提供機(jī)器人運(yùn)動(dòng)學(xué)算法和核心的多軸聯(lián)動(dòng)插補(bǔ)算法。用戶可以對自己設(shè)計(jì)的產(chǎn)品應(yīng)用自由進(jìn)行二次開發(fā)。這個(gè)級別的語言平臺是比較開放的。但是,用戶的工作量也相應(yīng)增加了。這一級別的平臺主要針對機(jī)器人開發(fā)廠商。例如,一些歐洲機(jī)器人控制系統(tǒng)供應(yīng)商基于標(biāo)準(zhǔn)的編程語言平臺。我們一般不太關(guān)注最低匯編語言級別的編程環(huán)境。這些都是控制系統(tǒng)芯片硬件廠商的東西。

每個(gè)工業(yè)機(jī)器人公司的機(jī)器人編程語言都不一樣,都有自己的編程語言。然而,無論變化有多大,它們的關(guān)鍵特征都是相似的。比如機(jī)器人的編程語言叫VAL3,風(fēng)格類似; Abb的被稱為,風(fēng)格類似C;還有V+、KUKA,都有專門的編程語言,但大都大同小異。而且因?yàn)楣疽婚_始發(fā)明機(jī)器人的語言是VAL,所以這些語言結(jié)構(gòu)都差不多。

VAL語言是1979年美國公司推出的一種機(jī)器人編程語言,主要配置在pUMA及同等機(jī)器人上。它是一種特殊的動(dòng)作描述語言。

VAL 語言是在語言的基礎(chǔ)上發(fā)展起來的,所以它與語言的結(jié)構(gòu)非常相似。公司在VAL的基礎(chǔ)上,引入了VALⅡ語言;后來收購了公司,開發(fā)了VAL3機(jī)器人編程語言。

為了學(xué)習(xí),一般每個(gè)機(jī)器人的官網(wǎng)都會(huì)有這些介紹資料,但是詳細(xì)的資料會(huì)比較少。

文/工控老鬼,機(jī)器人網(wǎng)博客

當(dāng)前標(biāo)題:機(jī)器人的開發(fā)語言與高級計(jì)算機(jī)語言結(jié)構(gòu)相似的相似
網(wǎng)頁地址:http://www.muchs.cn/news6/292156.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供營銷型網(wǎng)站建設(shè)、App開發(fā)、域名注冊網(wǎng)站設(shè)計(jì)公司、網(wǎng)站建設(shè)、虛擬主機(jī)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

網(wǎng)站優(yōu)化排名