傳動網 > 新聞頻道 > 技術前沿 > 資訊詳情

機器人操作系統 ROS 解讀

時間:2018-09-28

來源:網絡轉載

導語:ROS是一個開源的機器人操作系統,能夠集成大規模的不同機器人的通信層,其主要目標是通過知識共享加速機器人的研究和工業應用。它允許個人修改高級外設,如運動控制、感知和路徑規劃工具等。

【中國傳動網 技術前沿】 ROS是一個開源的機器人操作系統,能夠集成大規模的不同機器人的通信層,其主要目標是通過知識共享加速機器人的研究和工業應用。它允許個人修改高級外設,如運動控制、感知和路徑規劃工具等。在ROS的幫助下,軟件開發人員能夠方便地模擬機器人的行為,省去了制造或購買實體機器人所需的高昂費用,并通過借助免費開源庫中的現有代碼來快速構建自己的應用程序場景。在未來,動態的和更具協作性的工業生產環境將使得具有適應性的機器人擁有巨大的市場。

如果沒有ROS,就沒有最近流行的無人服務、物流機器人、飛行器及自動駕駛,正是機器人操作平臺ROS為這些技術帶來了飛速的進步。ROS并非其字面意義上的操作系統,而更多的是一個中間件,它能夠讓你根據現有的代碼知識構建你的想法,并共享各種模塊來解決一些常見問題,從而使機器人更快、更經濟、更高效地工作。本文講述了ROS自其誕生以來的故事,主要探討了現有市場玩家對于開源的不同看法,展示了目前相關的實用案例及技術上存在的難點。文章的最后總結了關于這些矛盾如何解決的前景,以及ROS未來的發展可能性。

別重新發明車輪

ROS起源于斯坦福人工智能機器人(STAIR),這是一個由AndrewNg領頭并組織相關研究人員而推出的項目,旨在將多種AI功能(如視覺、操縱、導航等)整合到單個機器人中。由于大量的重復編程非常浪費時間,這些研究人員想建立一個基于現有資源的某種東西——停止重新發明車輪。STAIR的與眾不同之處在于,人們可以在保持系統整體不變的情況下使用不同的子系統。盡管系統這個概念對于不同的使用者來說是不同的——這是高效使用大批量機器人項目的一個先決條件。

這些斯坦福大學研究人員在募資時,遇到了谷歌出身的企業家斯科特·哈桑(ScottHassan)。哈桑于2006年創立了一家機器人技術公司WillowGarage,投入了大量資金。2009年,這家公司發布了ROS的第一個源代碼開放Beta版,在第二年發布了正式版。

隨后,WillowGarage加大了公關力度,在各個主流的國際機器人大會上也非?;钴S。ROS社區取得了快速發展,與此同時,ROS軟件包的數量也在快速增長(ROS軟件包:具有各種應用項目的軟件,如導航)。2011年和2012年,ROS逐漸成為機器人領域的一個巨大炒作話題。WillowGarage推出了更多基于ROS的機器人(TurtleBot)。在這個階段,每隔6個月就會出現新版本且功能更強大的ROS系統,代碼的質量也在穩步提高。因為沒有看到商業化的趨勢,當時也有人質疑WillowGarage關于ROS的動機。2013年,斯科特·哈桑并不看好服務機器人能帶來的收益,隨后從WillowGarage撤資,并在當年晚些時候關閉了該公司。

開源機器人基金會(OSRF)正式負責接管了ROS的后續開發。當時負責ROS的團隊規模很小,也沒有大的投資方參與。憑借著世界各地的開發人員對ROS的開發和使用所形成的開發者社區,ROS得以幸存并延續至今。

自2014年起,ROS社區發展迅猛

由于技術的持續改進,機器學習取得突破,以及對于靈活且小規模工業應用的需求愈發旺盛,機器人領域從2014年開始再次得到了學術研究機構和風險投資的重視。

今天,ROS社區比以往任何時候都更加活躍。它已擁有大約3000名有積極貢獻的活躍社區成員。這些成員來自各個國家,其中大部分來自美國、中國、德國和日本。他們貢獻了總計超過450萬行重要的代碼,據推測,這相當于169名全職開發人員8.5年的工作量。

截至2017年7月,根據維基關于ROS的問答數量,ROS社區的參與度在一年內大約提高15%。同時wiki.ros.org網站的編輯和瀏覽量也上漲了30%。圖1展示了可應用于不同場景的軟件包逐年下載數量的變化。

圖1軟件包下載數量的變化

學術著作《ROS:一個開源的機器人操作系統》的被引用量清晰地展現了社區和ROS的合作進程,這篇論文由M·Quigley和斯坦福大學計算機科學系、WillowGarage和南加州大學計算機科學系在2009年聯合發表。發表至今已逾8年,但其引用量自2016年以來激增了40%。

實際中ROS應用的增長也被相關數據所證實。圖2中的數據曲線代表兼容ROS的機器人的數量,展現了ROS應用的快速增長。

圖2ROS應用的增長趨勢

在中國,ROS也開始逐漸流行開來。目前從數量上來看,中國用戶是訪問ROS網站的第二大團體,并且份額正逐漸增加,如圖3所示。

圖3各國訪問ROS網站份額對比

ROS架構中所蘊含的哲學目標

自創立之初,ROS的架構便是基于由創始人定下的“哲學目標”:

(1)點對點(Peer-to-peer)。

(2)基于工具(Tools-based)。

(3)多語言(Multi-lingual)。

(4)簡潔(Thin)。

(5)免費且開源(FreeandOpen-Source)。

使用ROS的系統涉及許多在對等拓撲中運行時需要連接的進程。為了防止計算機異構網絡溢出中央服務器的流量,ROS通過緩沖和對等連接在很大程度上緩解了這些風險。創始成員選擇了“微內核設計”,即將大型工具拆分成更小的單元,以提高處理復雜機器人環境所需的靈活性和穩定性,但同時效率有所降低。要實現消息的良好交流,語言環境是決定性的因素。因此,ROS使用一種簡單的、與語言無關的接口定義語言(IDL),它自動將所支持的語言標準化為一個通用代碼,從而實現“混合和匹配”。為ROS提倡的“更簡單的代碼提取”和“沒有或幾乎沒有包裝”的外部存儲庫的應用鋪平了道路。因此,不同中間件之間的不兼容性及“獨立庫”對ROS的依賴性保持較低。

ROS成功的關鍵無疑是開源。無私、無直接經濟報酬、致力于公益的想法看起來可能是罕見而天真的。盡管有意識地進行無償的知識共享、起初的困難很難想象,但這已經被早先成功的Linux計算機操作系統證明是可行的。被調整過的Linux正運行著高度復雜和與安全相關的諸多系統,如核電站的控制及如今多達150萬臺Android智能手機。

ROS的倡導者們認為,ROS的發展也會遵循同樣的軌跡。根據OSRF首席執行官BrianGerkey的說法,Linux在Windows環境下是一個“蹩腳的暴發戶”。而在機器人技術方面,ROS卻是“先行者”。事實上,微軟最初試圖建立自己的機器人平臺——“微軟機器人開發工作室”,但最終因為ROS在這一領域太過強勢,微軟不得不停止其自主工作室的開發。

工業互聯網和深度學習的基礎

ROS還支持分布式系統,在這個系統中數十個進程可以在數臺機器上并行運行。一種名為ROSLink的新協議已經被提出,它結合了搭載ROS的機器人與物聯網,其目標是構建一張包含物理對象、車輛及諸如傳感器和制動器之類的其他設備的網絡。利用ROS,可以使用精確的物理模擬來測試不同的算法,包括深度學習,而不需要昂貴的硬件投資。ROS與不同的機器人模擬器兼容,這對于原型設計、新算法驗證,以及機器人在不同使用場景和環境下智能行為的培訓至關重要。其中最常用的模擬器是Gazebo,它是ROS的一部分。Gazebo已被廣泛應用于學術界和工業界,以促進機器人從研究階段到實際應用的發展。

目前使用案例

ROS的首批應用主要是在移動機器人方面。這些機器人不光用在傳統的研究和學術領域,同時在一些創業公司中也可以發現它們的身影:

(1)美國國家航空航天局(NASA):作為太空和航天領域的關鍵參與者,它選擇用廉價和方便的ROS來開發它的“Swarmie”項目。在這個致力于未來火星任務的關鍵項目中,NASA在基于ROS的簡單機器人上模擬螞蟻的協作行為。

(2)Fetch:很可能是最著名的初創公司,由一幫前WillowGarage人員創立。它推出了專為物流行業設計的Fetch機器人系統,以提高倉庫效率。它的實驗室地面機器人就是基于ROS界面來實現各種控制器的集成。該公司開發了一種雙重方法:用一個小且靈活的采摘機器人——“Fetch”,由一個更大的推車式機器人——“Freight”來支持。通過這種雙重方法,將多個物品運輸到指定的送貨點,也可以加入多個來自不同廠商的機器人來完成。這種相互作用歸根結底還是得益于ROS框架。

此外,還有一個很好的例子:Delft大學在AmazonPickingChallenge上大獲全勝。他們的勝利來自通過利用ROS來幫助資源有限的年輕研究員們開發先進的解決方案。通過ROS,機器人能夠自主地將物品從標準貨架上移動到包里,或從包里轉移到標準貨架上。根據Delft團隊成員KantervanDeurzen的說法,他們成功的決定性因素是將“最高標準的各個組成部分”作為與“一體化系統”相結合的“多學科方法”。這種整合的方法是通過使用基于ROS的軟件而實現的。Delft大學也正在歐盟范圍內推動ROS-I軟件組件達到一個更高的水平,這個任務被稱作ROSIN。除了Delft大學,合作機構還包括德國的Fraunhofer制造工程與自動化研究所和FachhochschuleAachen大學、哥本哈根IT大學,以及來自瑞典的機器人公司ABB和來自西班牙的Tecnalia研究所。

在中國,ROS為眾多新興的服務機器人公司奠定了基礎:

(1)Ecovacs和iRobot(清潔機器人)。

(2)索亞機器人(迎賓機器人)。

盡管ROS在中國服務機器人的使用范圍很廣,但迄今為止,對于ROS的學術貢獻還不大。

值得一提的是,ROS也被用于自動駕駛。例如,寶馬的335IG自動駕駛概念,以及百度的Apollo平臺都是基于定制化的ROS。

目前ROS在工業領域應用相對較少

目前ROS的工業級使用率遠低于學術界或服務機器人領域,主要有以下兩個原因。

1

技術方面

工業機器人制造商主要提到了ROS在實時性和穩定性方面的弱點,以及數據安全問題。這些都可能對制造商產生負面的品牌影響。

ROS軟件的安全性主要取決于早期貢獻者的責任感。開發內部軟件時,其整個生命周期都需要控制和維護,并需要儲存完整的檔案。相比之下,開源軟件是由松散組織的開發人員開發的,他們相互信任程度較低,對于檔案保存的標準也較低。此外,對于使用開源的最終用戶來說,與單一制造商或集成商建立合法的雙向關系很難,因為他們和開發者之間缺乏有約束力的服務協議。據Fraunhofer制造工程與自動化研究所(IPA)研究員TheoJacobs的說法,除了經過驗證的軟件版本,解決方案可能是由一小組程序員維護的自包含模塊。但通過使用來自主題密鑰驗證消息的發送者和聽眾的認證,可能可以確其保機密性。

一些專家也擔心,ROS從未被設計用于工業機器人的傳統典型應用,例如噴涂,點焊或弧焊。例如,大多數工業機器人軟件都可以調整焊機上的電壓和電流通道,以確保達到最佳效果——這不屬于ROS的范疇。然而,通過ROS可以更容易找到一些新的解決方案,例如:如果工程師想要噴涂出一個之前機器人從未見過的幾何圖形,ROS可以相對容易地為搭載有工業視覺的噴涂機器人生成相應路徑。

2

經濟方面

主要的行業參與者擔心其業務模式被淡化。開放自己投入了大量研發資源所獲得的核心知識并非是他們所愿意的。他們所特有的硬件可能會失去其優勢,并且可能被其他更便宜的硬件輕松替換,而這些便宜的硬件還可以通過ROS來增強外設。

在一定程度上,可以將這種困境與蘋果的iOS和Google的Android所采取的做法類比:

(1)蘋果對AppStore始終保持相對嚴格的控制,并且一直是iOS終端設備的唯一硬件供應商。這有助于建立一個快速、穩定和相對安全的系統。其用戶群通常會非常快速地更新軟件,從而能夠更容易地修復錯誤和解決安全問題。缺點是用戶基數較小,未來能為機器學習提供的數據較少。

(2)相比之下,Android采取了一種相當開放的方式,這帶來了更廣的用戶群體,并且這些用戶群體可以從各種終端設備中進行選擇。但是,這是以反復出現的接口問題為代價的,并且終端設備和軟件之間會存在適配錯誤。設備分化和從第三方安裝應用程序使得Android操作系統易受安全問題的困擾。高度的設備分化也使得Android系統的維護和缺陷修復比iOS更困難。

到目前為止,蘋果控制其平臺的模式非常成功。與20世紀90年代Macintosh不同的是,現今廣大的iOS用戶使得這種模式為蘋果帶來頗豐的收益。與此同時,幾乎沒有一家專注于Android生態系統的硬件公司能夠長期盈利。

那為什么工業機器人制造商們要開放他們的平臺,并提供他們產品控制系統的接口呢?

不同機器人制造商對這個問題的看法存在分歧。發那科和庫卡系統相對來說比較封閉,其他廠商則采取更加開放的態度:

(1)盡管對通過ROS提供自由的第三方訪問也存在著一些擔憂,但YaskawaMotoman通過高級外設,利用他們的機器人的潛力推動了它早期開源的行動,特別是雙臂機器人在自動化裝配任務中的使用日益增加。Motoman認為,搭建一座與他人之間的橋梁將提高互操作性,并從而吸引更多客戶。

(2)類似的是,作為ROS-I項目的一部分,工業機器人巨頭ABB為其協作組裝機器人Yumi開放了ROS接口。

關于MotomanSIA20D、ABB的YuMi和UniversalRobotsUR5等小型機器人,它們不再進行昂貴的研發過程,而是直接使用3D感知工具來增強其功能。在不久的將來,為特定需求而編寫的軟件將隨著業界需求從高容量、可重復的流程轉變為結合了動態軌跡算法和傳感器的智能機器人而變得更有實際價值。

Bosch的研發部門開始允許他們的工程師“快速、方便地對其系統進行可視化、檢查、記錄和模擬”,以便創造更大的效益,這展現了ROS的另一個機會。前Bosch研究員現任MayfieldRobotics的聯合創始人兼首席運.官SarahOstentoski認為,以這種方式使用ROS,將使它成為一種“雙向流動的管道”,公司愿意與社區分享他們的進步,社區也可以憑借它在學術系統中的流行度幫助公司網羅更多ROS方面的人才。

更大的驚喜在更遠的將來

ROS在過去的幾年中增長迅猛,并且在可預見的未來幾年中將發揮更重要的作用。

首先是日益增長的服務機器人公司的需求。在接下來的十年里,我們將會看到第一輛自動駕駛汽車成功上路。屆時將會出現一批我們今天無法設想的機器人和應用程序。正如WillowGarage最早成員之一TullyFoote在2007年年末承諾的那樣,在未來,“你將能夠使用任何開源軟件,只需結合你的商業模式做一些小小的改動,就能開啟你的創業之旅”。ROS社區的發展將前所未有地使有創意的設計師和創業者們站在巨人的肩膀上。

其次,工業市場上的應用也將越來越多。然而目前,對于ROS仍然有限的工作能力和是否應該放棄傳統的成功商業模式,工業機器人制造商們仍持有一定理性的顧慮。不過,與此同時,ROS正在以相對簡單的方式來靈活設計解決方案,以此拓展整個行業的邊界。

在此背景下,ROS-IndustrialConsortium已經向前邁進了一步。這個機構由付費會員組成,其中大多數是大型工業企業,它們正在投入知識和資金,以加大機器人的能力范圍并提高質量。這其中的重點是用資本來引導研究重點,這樣可以更加有效并且公平地分配資源,并最終分享結果。雖然進入這一協會的資本壁壘與開源社區的原則相矛盾,但是它是獨立開發者的試錯運動和企業在參與開源擴張的同時又能保證自身原有利益之間的一種妥協,所有高昂的研發費用都是為了整個行業的共同利益。通過所謂的聚焦技術項目(FTP),這個行業的蛋糕需要先被做大,即便需要付費成員來決定其味道。

最后,備受矚目的ROS2.0的Beta版本正在測試當中。它應該解決現有的安全問題,并提高適用于大型項目的技術能力。實際上,這個版本是為了應對“非理想網絡”和現實中的生產環境而建立的,它使得在ROS中進行實時控制的進程和機器間能夠直接通信。對于ROS1.0在意料之外、情理之中的走紅,其后繼者應該為靜態配置提供清晰的模式和支持配置,從而擴大在工業領域中所占的一席之地。

中傳動網版權與免責聲明:

凡本網注明[來源:中國傳動網]的所有文字、圖片、音視和視頻文件,版權均為中國傳動網(www.hysjfh.com)獨家所有。如需轉載請與0755-82949061聯系。任何媒體、網站或個人轉載使用時須注明來源“中國傳動網”,違反者本網將追究其法律責任。

本網轉載并注明其他來源的稿件,均來自互聯網或業內投稿人士,版權屬于原版權人。轉載請保留稿件來源及作者,禁止擅自篡改,違者自負版權法律責任。

如涉及作品內容、版權等問題,請在作品發表之日起一周內與本網聯系,否則視為放棄相關權利。

關注伺服與運動控制公眾號獲取更多資訊

關注直驅與傳動公眾號獲取更多資訊

關注中國傳動網公眾號獲取更多資訊

最新新聞
查看更多資訊

熱搜詞
  • 運動控制
  • 伺服系統
  • 機器視覺
  • 機械傳動
  • 編碼器
  • 直驅系統
  • 工業電源
  • 電力電子
  • 工業互聯
  • 高壓變頻器
  • 中低壓變頻器
  • 傳感器
  • 人機界面
  • PLC
  • 電氣聯接
  • 工業機器人
  • 低壓電器
  • 機柜
回頂部
點贊 0
取消 0