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