機(jī)器人操作系統(tǒng)從ROS升級到ROS2 部署不再是難題
目前,全球機(jī)器人市場持續(xù)增長,工業(yè)機(jī)器人市場持續(xù)穩(wěn)定增長,服務(wù)機(jī)器人市場則呈現(xiàn)快速發(fā)展趨勢。伴隨著人工智能技術(shù)的逐步成熟,人機(jī)協(xié)作的不斷深度,機(jī)器人產(chǎn)品應(yīng)用產(chǎn)業(yè)不斷拓展,全球機(jī)器人行業(yè)將迎來新一輪的增長。機(jī)器人領(lǐng)域之所以快速增長,有一部分原因是得益于開源開發(fā)和機(jī)器人操作系統(tǒng)ROS或ROS2的發(fā)展。
本文引用地址:http://m.butianyuan.cn/article/201810/393104.htm關(guān)于ROS和ROS2的發(fā)展?fàn)顩r,英特爾物聯(lián)網(wǎng)軟件技術(shù)副總裁Greg Burns和ADLINK物聯(lián)網(wǎng)技術(shù)總監(jiān)Joe Speed做了詳細(xì)分析。Greg Burns就職于英特爾開源技術(shù)中心工作,是OTC(開源技術(shù)中心)的軟件架構(gòu)師,其所在的小組專注于開源開發(fā)和開源貢獻(xiàn)。過去多年來,他一直在關(guān)注物聯(lián)網(wǎng),尤其是物聯(lián)網(wǎng)網(wǎng)絡(luò)協(xié)議,在大約18個月前,他參與了英特爾的機(jī)器人領(lǐng)域。Joe Speed也在該領(lǐng)域從事多年研發(fā)工作,包括讓物聯(lián)網(wǎng)更加開放、開放標(biāo)準(zhǔn)和開源物聯(lián)網(wǎng)。技術(shù)貢獻(xiàn),如MQTT,他讓其成為開放標(biāo)準(zhǔn)并開源,將它們放入車輛和很多其它設(shè)備中。過去幾年,他圍繞如何將物聯(lián)網(wǎng)應(yīng)用到人們生活中,以及如何讓人和物交互花費了大量的時間進(jìn)行研究。他為自動駕駛汽車、自動駕駛員、老年人和殘疾人提供#AccessibleOlli,在眾包、開源自主機(jī)動性方面做了很多研究。
ROS建立強(qiáng)大生態(tài)系統(tǒng),ROS2從原型設(shè)計邁向部署
不管是開源軟件,還是開源硬件,一經(jīng)推出在全球都受到開發(fā)者的熱捧,這些產(chǎn)品對科技的發(fā)展起到了巨大的推動作用。在機(jī)器人領(lǐng)域,開源操作系統(tǒng)ROS2如何驅(qū)動該領(lǐng)域的增長?Greg表示,“雖然ROS被稱為機(jī)器人操作系統(tǒng),但實際上它并不是像Linux和Windows真正意義上的操作系統(tǒng)。它是一系列設(shè)施和通信協(xié)議的集合,使用戶更易于整合軟件組件去構(gòu)建機(jī)器人或者機(jī)器人系統(tǒng)。并且它取得了巨大的成功。過去十年來,已經(jīng)圍繞ROS建立了一個龐大的生態(tài)系統(tǒng),并且它使參與機(jī)器人研究的人,特別是那些研究人員和在學(xué)術(shù)領(lǐng)域的人,能夠構(gòu)建、共享、協(xié)作構(gòu)建機(jī)器人所必須的軟件組件。某些情況下,這些軟件組件級別很低,像傳感器、攝像頭等接口。某些情況下,他們有更高級的功能,比如導(dǎo)航或者運動規(guī)劃。但事實上,你可以用這些組件構(gòu)建他們,然后和其它開發(fā)者共享,因此這些開發(fā)者可以使用它們,而不需要理解他們內(nèi)部的細(xì)節(jié),提高了創(chuàng)新速度,真正讓人們用這些強(qiáng)大的組件構(gòu)建機(jī)器人?!?/p>
ROS確實是一個很成功的開源項目、開源生態(tài)系統(tǒng),現(xiàn)在已經(jīng)建立了龐大的生態(tài)系統(tǒng),在全球估計有十萬名開發(fā)者正在使用或熟悉ROS,并且所有擁有機(jī)器人經(jīng)驗的學(xué)術(shù)界人士都在使用ROS。雖然從多方面來看ROS很成功,但是它只用于研發(fā),在部署中并不經(jīng)常使用。當(dāng)涉及到實際構(gòu)建機(jī)器人并將其作為商業(yè)產(chǎn)品進(jìn)行部署時,大部分開發(fā)者會轉(zhuǎn)向?qū)S媒鉀Q方案。大概五年前或者更早,有人倡議開始構(gòu)建ROS2。ROS2試圖解決原始ROS中的一些技術(shù)缺陷,以及安全、性能等問題,使一些其它基于ROS的部署解決方案變得可行和更實用,當(dāng)然,那將帶來一個更有效的流程使得ROS不僅用于原型設(shè)計而是最終的部署。
對比ROS,ROS2的一個關(guān)鍵點是,其選擇在軟件中改變底層協(xié)議層,以便可以使用一系列不同的低層協(xié)議作為用于軟件組件之間通信的數(shù)據(jù)總線,用戶可以使用DDS多種實現(xiàn),因為DDS已經(jīng)在業(yè)界被廣泛部署多年。當(dāng)然,用戶可以使用自己的開源DDS實現(xiàn),以及其它方式。ROS2的強(qiáng)大之處在于,它可以讓用戶運行其它替換協(xié)議。比如:MQTT,如果條件允許,ROS2甚至可以工作在MQTT之上。
ROS2讓多個機(jī)器人彼此通信
機(jī)器人原來都是單個工作,彼此之間并不會通信,但是未來會從單個向多個彼此通信的趨勢發(fā)展,并且它們占據(jù)了和人類同樣的空間。這些集群機(jī)器人到底意味著什么?我們?nèi)绾巫霾拍軐崿F(xiàn)這樣的目標(biāo)?或許ROS2可以協(xié)助我們實現(xiàn)這樣的目標(biāo)。Joe分析,“關(guān)于ROS2,其中一個關(guān)鍵點是通信方式,通過它可以在組件之間低延時傳遞信息,可以獲得更高的服務(wù)質(zhì)量,可以讓機(jī)器人彼此通信,實現(xiàn)協(xié)調(diào)。在這些群體行為,當(dāng)其中一個機(jī)器人手持工件,而另一個機(jī)器人可以在上面工作。但是對我來說非常有意思的是機(jī)器人內(nèi)部的實際情況,在DDS總線上的所有通信,有視覺、決策 、執(zhí)行,所有這些資源也可以安全地與其它機(jī)器人共享,非常有意思的是,如果你可以讓機(jī)器人A借用機(jī)器人B的眼睛,機(jī)器人C借用機(jī)器人A的手臂,通過這種方式即使一個機(jī)器人失去了視力,也可以共享周圍群體提供的同樣的能力,我覺得這樣可以做很多事情。并且我看到其他人正在做的例子,即帶視覺功能的自動輪椅,將LIDAR放在天花板上的攝像機(jī)中,將其構(gòu)建到基礎(chǔ)設(shè)施中,然后作為機(jī)器人可以共享的資源?!?/p>
Greg則強(qiáng)調(diào),“機(jī)器人在本質(zhì)上是邊緣計算設(shè)備。無論你如何看他,他們都需要很多傳感器。計算機(jī)視覺對于我們看機(jī)器人技術(shù)的演進(jìn)方式非常重要。我們討論了很多關(guān)于自動駕駛汽車的內(nèi)容。自動化讓機(jī)器人技術(shù)發(fā)生了很大的變化。我們正在從預(yù)先編程的相對固定功能的重復(fù)操作的機(jī)器人,轉(zhuǎn)向現(xiàn)在變得自主的機(jī)器人。并且他們變得自動化后,需要更多計算,還要運行很多相關(guān)軟件。隨著軟件的運行,人們對安全和管理的擔(dān)心越來越多。如何做軟件升級?像你看到的那樣,它和我們在數(shù)據(jù)中心擁有相同的能力。因此,毫不夸張地說,機(jī)器人基本上是車輪上的數(shù)據(jù)中心或者帶腿的數(shù)據(jù)中心。這是一個大的轉(zhuǎn)折點—曾經(jīng)的方式發(fā)生了巨大的改變—這種改變是被計算機(jī)視覺以及所有與之相關(guān)的東西,比如:機(jī)器學(xué)習(xí)和目標(biāo)識別,來驅(qū)動的。越來越多的機(jī)器人在跑出籠子,從歷史上來看,機(jī)器人是遠(yuǎn)離人類的?!?/p>
機(jī)器人個頭很大,能力很強(qiáng)大,移動迅速,也可能很危險。但是,目前正在出現(xiàn)一類新興事物,被稱為人機(jī)協(xié)作機(jī)器人,它們與人類一起工作。它們不再在籠子中?,F(xiàn)在,如果你有一個靠近人類的機(jī)器人手臂,顯然你必須有強(qiáng)大的傳感器系統(tǒng),你必須有攝像頭可以探測人類的位置,你必須關(guān)心什么是安全至上的操作和保持安全以避免傷害。機(jī)器人必須了解環(huán)境,了解運行位置。這帶來了很多進(jìn)行目標(biāo)識別的機(jī)器學(xué)習(xí)和推理引擎。因此,越來越重要的領(lǐng)域是功能安全,計算機(jī)視覺演進(jìn),機(jī)器學(xué)習(xí)算法,以及在機(jī)器人硬件上高效運行這些算法的能力。與任何運行大量軟件的邊緣計算設(shè)備一樣,需要管理軟件升級,管理軟件開發(fā)生命周期,以及帶來很多現(xiàn)在在數(shù)據(jù)中心看到的技術(shù),像集裝箱化,便于管理運行在這些機(jī)器人系統(tǒng)上的重要軟件。
隨著聯(lián)網(wǎng)設(shè)備數(shù)量的不斷增加,設(shè)備廠商越來越意識到邊緣計算的重要。ADLINK和英特爾多年來一直在邊緣計算和機(jī)器視覺系統(tǒng)領(lǐng)域進(jìn)行合作。對于機(jī)器人技術(shù),人們對此做了一些令人吃驚的事情。ADLINK有識別機(jī)器人,實際上開發(fā)了一個包。Joe解釋,“我們有這種精彩的小工程,這是一款堅固的邊緣計算攝像頭,內(nèi)置英特爾的計算機(jī)…并且這些人已經(jīng)想出如何把它放到自動化工廠或者建筑工地的現(xiàn)有工業(yè)機(jī)器人中,并在一個小時之內(nèi)教會它們手眼協(xié)作?!盧OS2有很多功能,用戶可以開發(fā)新的應(yīng)用領(lǐng)域,可以做新系統(tǒng),新機(jī)器人,但是對大多數(shù)人來說,這些事物正在進(jìn)入現(xiàn)有系統(tǒng)的現(xiàn)實環(huán)境,用戶如何與他們一起工作,ADLINK采用了DDS進(jìn)行信息傳遞,和其他人一直在致力于如何從DDS橋接到所有傳統(tǒng)工業(yè)協(xié)議和接口,因此這些公司可以進(jìn)入并參與工作,與現(xiàn)有系統(tǒng)的現(xiàn)有系列一起使用現(xiàn)有的攝像機(jī)。
機(jī)器人新應(yīng)用不斷出現(xiàn),ROS2功不可沒
ROS2有開源標(biāo)準(zhǔn)、開源信息傳遞的機(jī)制,給用戶接口和其他設(shè)備連接。所以,就像內(nèi)置的支持開箱即用的WatsonIoT和ThingWorx,以及Azure物聯(lián)網(wǎng)設(shè)備網(wǎng)關(guān)和AWS物聯(lián)網(wǎng)等,以及我們和其他人必須從其它地方橋接,比如OPC UA和Modbus,以及所有其它類型的東西,用戶可以將它們和現(xiàn)有的東西對接。因此,機(jī)器人和自動化不必是全新的套件安裝。它可以利用傳感器和已存在的系統(tǒng)。因此,如果用戶想要一個機(jī)器人,可以把它當(dāng)作生產(chǎn)線上的一個單元,上游的東西是什么,下游的東西是什么,對這些東西進(jìn)行協(xié)調(diào),利用所有材料可以作出產(chǎn)品。
用戶應(yīng)該向ROS工業(yè)組織吶喊,因為該組織在精確地研究那個灰色區(qū)域。用戶如何使用現(xiàn)有的機(jī)器人制造標(biāo)準(zhǔn),提供最佳的經(jīng)驗將它們推進(jìn)到自動化的未來?Greg解釋,“你通常無法替代每個機(jī)器人。你必須能夠以漸進(jìn)和增長方式做到這一點。當(dāng)我們討論灰色地帶時,我們看到在機(jī)器人部署增長的一個重要領(lǐng)域是倉庫。大多數(shù)倉庫不是很大。那里有很多這樣的倉庫,并且它們可以受益于增加自動化設(shè)備,無論是庫存還是搬運。因此自動化機(jī)器人在這種環(huán)境中可以充分發(fā)揮。并且?guī)准夜驹跇?gòu)建全自動化機(jī)器人,它們圍繞倉庫,基于攝像頭和傳感器實時映射,它們可能很快就成為一項有價值的資產(chǎn),并且能夠執(zhí)行精簡的有用操作,可以處理倉庫的資料,我們可以期待看到大量的新興產(chǎn)品,不僅是在倉庫中,還有快遞機(jī)器人等等?!?/p>
從ROS向ROS2升級的實用案例
英特爾的實感攝像頭是一個很好的實例,深度攝像頭對于許多機(jī)器人應(yīng)用場景都非常有用。英特爾提供一個ROS封裝,它封裝了深度相機(jī)的功能,讓機(jī)器人設(shè)計師可以輕松地將其整合到機(jī)器人中。隨著技術(shù)的不斷發(fā)展,現(xiàn)在英特爾正在將其轉(zhuǎn)移到ROS2上,并轉(zhuǎn)移到最新的RealSense相機(jī)上。同時利用Movidius神經(jīng)棒做了同樣的事情。用戶現(xiàn)在可以將其作為ROS軟件包的軟件組件整合到現(xiàn)有機(jī)器人中,不必了解該神經(jīng)計算棒工作的任何內(nèi)部細(xì)節(jié),它使每個更容易合并為一個組件。另外,英特爾還在上面添加了一些額外的補(bǔ)丁。ADLINK已采用其中部分組件并開始集成它們。
ADLINK提供的是神經(jīng)元開發(fā)板,它是一個ROS入門套件,并且集成了Greg和他的團(tuán)隊所做的大部分工作,與英特爾計算機(jī)、Movidius、RealSense深度攝像頭一起集成,并完成了所有集成和打包整合。該團(tuán)隊一直在做一些有趣的產(chǎn)品,包括高速輪式無人機(jī)—基本上,改造越野遙控車,以非常高的速度駕駛,但完全自主,并可以和人一起近距離合作。它稱為“跟我來”…它跟在你周圍,如果你走向它,它就撤退,如果你走遠(yuǎn),它再次跟著你。還有一些其它群集行為。因此,當(dāng)它們在信息總線上共享彼此的遙測數(shù)據(jù)后,這些機(jī)器人彼此了解,協(xié)同工作。
關(guān)于ROS的重要應(yīng)用,Jeo表示,“其中一個是波音首席機(jī)器人專家Dr. Philip Freeman,在最近的ROS產(chǎn)業(yè)活動中,他發(fā)表了一些我認(rèn)為非常有說服力的觀點,相當(dāng)尖銳。他說,ROS讓我感覺處在1993年Linux的驚人轉(zhuǎn)折點。對于我們這些90年代早期開始研究開源和操作系統(tǒng)的人來說,這是一個讓人震驚的時刻。你可以感受到力量,你可以看到即將發(fā)生什么,可以看到Linux將無處不在,而且這就是動力,這就是現(xiàn)在我們在ROS社區(qū)中所感受到的能量?!?/p>
歡迎更多開發(fā)者參與ROS建設(shè)
對于開源系統(tǒng),需要更多開發(fā)者的參與建設(shè),系統(tǒng)才能更加完善,對于ROS也一樣,需要全球的開發(fā)者在使用中發(fā)現(xiàn)問題、解決問題??赡芎芏嗳艘呀?jīng)在使用,但是也有很多人不知道如何參與。對于想要參與進(jìn)來,學(xué)習(xí)更多內(nèi)容的聽眾,他們應(yīng)該如何參與?
Greg介紹,“第一個地方是ros.org,關(guān)于ROS2的信息在ros2.org,如果你登陸后,它實際上會將你重新定向到GitHub上的源代碼上,那里有文檔和其它信息。還有教程,以及有很多關(guān)于ROS的書籍。還有ROS-Industrial它專注制造機(jī)器人并將其遷移到更靈活和更自動化的設(shè)備上。ROS-Industrial建立在ROS之上;它不是替代品,而是添加劑,ROS年度聚會于九月中旬在馬德里舉辦?!?/p>
評論