欧美日韩精品国产,欧美aⅴ99久久黑人专区,亚洲综合久久久久,中文字幕一区二区三区精彩视频

ROS 2與Unity合作提升自主機(jī)器人性能

文章來源: 作者:frank 發(fā)布時(shí)間:2021年08月18日 點(diǎn)擊數(shù): 1176 次

Unity在新版本中添加了ROS 2的官方支持,其強(qiáng)大的框架,加上模擬,將支持無數(shù)全新用例。

機(jī)器人操作系統(tǒng)(ROS)是從2007年開始開發(fā)機(jī)器人應(yīng)用程序的流行框架。盡管最初是為了加速機(jī)器人研究而設(shè)計(jì)的,但它很快在工業(yè)和商業(yè)機(jī)器人中被廣泛采用。ROS 2建立在ROS可靠框架的基礎(chǔ)上,同時(shí)改進(jìn)了對(duì)現(xiàn)代應(yīng)用程序的支持,如多機(jī)器人系統(tǒng)、實(shí)時(shí)系統(tǒng)和生產(chǎn)環(huán)境。Unity目前已經(jīng)將其對(duì)ROS生態(tài)系統(tǒng)的官方支持?jǐn)U展到ROS 2。

?

現(xiàn)代機(jī)器人技術(shù)正在將其重點(diǎn)轉(zhuǎn)向“自主性”,即研究和開發(fā)能夠在沒有人類開發(fā)者定義的嚴(yán)格規(guī)則的情況下做出決策的算法,而模擬算法則是通過實(shí)現(xiàn)比現(xiàn)實(shí)世界測(cè)試更大的靈活性和更快的實(shí)驗(yàn)時(shí)間來實(shí)現(xiàn)這一轉(zhuǎn)變。在本篇文章中將演示如何模擬由Unity和ROS 2創(chuàng)建的自主移動(dòng)機(jī)器人(AMR)的同時(shí)定位和映射(SLAM)以及導(dǎo)航功能。

ROS 2為現(xiàn)代機(jī)器人技術(shù)提供動(dòng)力

雖然ROS仍然是機(jī)器人原型開發(fā)的優(yōu)秀框架,但它已經(jīng)接近生命周期的盡頭,并且缺少一些在機(jī)器人系統(tǒng)中實(shí)現(xiàn)超越原型,全面生產(chǎn)和部署所必需的功能。ROS 2的技術(shù)路線圖由行業(yè)專家委員會(huì)定義了明確的原則,以確保將ROS 2打造成為服務(wù)機(jī)器人最終用戶的合適框架。ROS 2支持更多的操作系統(tǒng)和通信協(xié)議,并且設(shè)計(jì)得比ROS分類更加精確。

自主模擬供電

ROS 2的許多新興用例都側(cè)重于自動(dòng)化。引入自主性意味著機(jī)器人做出的決策以及這些決策的結(jié)果不完全可以僅使用狀態(tài)機(jī)和一組數(shù)學(xué)公式來進(jìn)行預(yù)測(cè),就像它們可能在許多工業(yè)機(jī)器人的案例中一樣。與工業(yè)機(jī)器人相比,自主機(jī)器人的操作環(huán)境呈指數(shù)級(jí)增長(zhǎng)。它所遇到的輸入的排列遠(yuǎn)遠(yuǎn)超過了在受控的實(shí)驗(yàn)室環(huán)境中所能復(fù)制的水平。為了完全驗(yàn)證自主機(jī)器人的行為符合制造商的預(yù)期,制造商們也可以在機(jī)器人上進(jìn)行編輯。在以Unity創(chuàng)建的模擬世界中,時(shí)間變得毫無意義,因此制造商們可以根據(jù)他們的需要對(duì)機(jī)器人進(jìn)行:適當(dāng)強(qiáng)度的模擬學(xué)習(xí)。

如果在模擬中期望機(jī)器人能夠感知周邊環(huán)境,那么該模擬必須在不對(duì)環(huán)境模擬拓?fù)浜臀锢砭确矫孀龀鐾讌f(xié)的情況下實(shí)現(xiàn)對(duì)機(jī)器人身上的傳感器進(jìn)行精確建模才能實(shí)現(xiàn)。如果該環(huán)境中有其他干擾,即人或其他機(jī)器人,則模擬過程必須能夠?qū)崿F(xiàn)代理行為的建模,同時(shí)仍然保持其傳感器模擬、拓?fù)?a class="insidelink" href="http://www.www.gentlemenlisten.com/solution/DE/Display/" title="1">展示和物理建模的準(zhǔn)確性。為了讓機(jī)器人在所有可能遇到的情況下都能充分得到鍛煉,這個(gè)模擬需要運(yùn)行很多很多次。這就意味著,要實(shí)現(xiàn)自主機(jī)器人模擬過程就需要工業(yè)機(jī)器人模擬不常用到的四個(gè)特點(diǎn):靈活性、可擴(kuò)展性、可量測(cè)性和保真度。而Unity正好位于所有這些需求的交叉點(diǎn),目前Unity平臺(tái)中已經(jīng)包含了更多的功能來更好的支持自主機(jī)器人的開發(fā)。

通過Unity的Robotics軟件包,用戶將可以訪問已經(jīng)完成構(gòu)建的接口,使與ROS或ROS 2的通信變得更加容易。用戶將能夠直接從Unity的URDF?Importer導(dǎo)入帶有機(jī)器人配置的URDF文件,并使用Unity高質(zhì)量、高效的渲染管道和高性能、高精確度的物理模擬來訓(xùn)練他們的機(jī)器人。通過Unity的資產(chǎn)商店,用戶可以瀏覽各種額外的預(yù)制環(huán)境和道具,以幫助他們?yōu)闄C(jī)器人的特定環(huán)境和任務(wù)建模。只需點(diǎn)擊幾下鼠標(biāo),模擬就可以構(gòu)建并部署到任何主流操作系統(tǒng)上,如Windows 10、Mac OS和Linux等。通過使用C#腳本、Bolt可視化腳本或Unity資產(chǎn)庫中可用的許多腳本和實(shí)用工具包,用戶可以繼續(xù)自定義特定模擬的功能,以適配特定的用例。

一鍵式ROS 2支持

事實(shí)上將Unity項(xiàng)目移動(dòng)到ROS 2很簡(jiǎn)單。在ROS-TCP-Connector包中,Unity添加了一個(gè)下拉菜單,允許用戶在ROS和ROS 2集成之間切換。更改協(xié)議后,Unity將根據(jù)用戶選擇的消息定義和序列化協(xié)議自動(dòng)重新編譯包。用戶只需在自己的項(xiàng)目中進(jìn)行這種更改,或者選擇示例存儲(chǔ)庫中的Robotics-Nav2-SLAM,即可完成測(cè)試。

?

上圖中的示例項(xiàng)目演示了如何使用Unity來模擬在ROS 2中運(yùn)行的導(dǎo)航系統(tǒng)。導(dǎo)航的概念很簡(jiǎn)單,在自主機(jī)器人模擬的內(nèi)容中變化不大。導(dǎo)航算法旨在找到一條直通下一步流程的道路。然而,要從我在什么地方到我要去什么地方,必須首先做SLAM——同時(shí)定位和制圖。SLAM描述了一組算法,用來回答“我現(xiàn)在在哪里,我去過哪里?”作為感官和大腦之間處理管道的固有部分,人類一直在執(zhí)行SLAM。對(duì)于自主機(jī)器人來說,執(zhí)行精確的SLAM對(duì)于大多數(shù)現(xiàn)實(shí)環(huán)境來說仍然是一個(gè)具有挑戰(zhàn)性的命題。一個(gè)自主移動(dòng)機(jī)器人到底需要什么,才能讓它始終知道自己在哪里,相對(duì)于它曾經(jīng)去過的任何地方,這仍然是一個(gè)活躍的研究領(lǐng)域。對(duì)于給定的用例,真正能夠回答這個(gè)問題的唯一方法就是進(jìn)行多次模擬試驗(yàn)(對(duì)于傳感器、算法等)。

在示例中,我們會(huì)發(fā)現(xiàn)這是一個(gè)簡(jiǎn)單的倉庫環(huán)境,一個(gè)帶有模擬雷達(dá)和電機(jī)控制器的Turtlebot 3移動(dòng)機(jī)器人的完全鉸接模型,以及一個(gè)用于構(gòu)建圖像的Dockerfile,該圖像包含模擬練習(xí)Nav2和slam_toolbox堆棧所需的所有ROS 2依賴關(guān)系。

?

左圖:在Unity中生成并發(fā)送的ROS 2消息的RViz顯示。右圖:TurtleBot 3在Unity中執(zhí)行SLAM和自主導(dǎo)航。

主站蜘蛛池模板: 牡丹江市| 关岭| 抚宁县| 静宁县| 芦山县| 平陆县| 鱼台县| 永仁县| 家居| 松滋市| 伊金霍洛旗| 铁岭县| 温宿县| 松原市| 砀山县| 维西| 建平县| 荆州市| 宿州市| 青田县| 辰溪县| 宁远县| 桃园县| 天峻县| 友谊县| 尖扎县| 潮州市| 双峰县| 同德县| 宁波市| 翁源县| 巴青县| 建瓯市| 曲松县| 梧州市| 微山县| 尚义县| 高平市| 台州市| 涡阳县| 奇台县|