電子發(fā)燒友網(wǎng)報(bào)道(文/李寧遠(yuǎn))對于熟悉機(jī)器人應(yīng)用的讀者,對ROS(機(jī)器人操作系統(tǒng))想必是不會陌生的。ROS作為機(jī)器人開發(fā)的基石,為機(jī)器人在研發(fā)過程中的代碼復(fù)用提供了支持的開源框架。大量的機(jī)器人開源項(xiàng)目,從感知到控制、從定位到構(gòu)圖、從導(dǎo)航到可視化,都使用ROS作為基礎(chǔ)。
而不久前AMD XILINX推出了以ROS2為中心的增強(qiáng)機(jī)器人自適應(yīng)計(jì)算能力的硬件加速方法——Kria Robotics Stack(KRS),通過硬件加速為機(jī)器人帶來自適應(yīng)計(jì)算能力。
從ROS到ROS2
ROS2基于ROS升級而來,如果說ROS為機(jī)器人研究和機(jī)器人原型開發(fā)提供了公用的軟件架構(gòu)并建立了良好的開源?態(tài)的話,那么ROS2就是在此基礎(chǔ)上進(jìn)一步補(bǔ)齊了?于機(jī)器人部署環(huán)境的開發(fā)架構(gòu)和相應(yīng)的工具鏈。
這一升級也是因?yàn)殡S著ROS在各類機(jī)器人系統(tǒng),甚至延伸到在各類無人系統(tǒng)中的普及,暴露出了越來越多的弊端。首先它對資源的需求大,并不能保證在資源有限的嵌入式系統(tǒng)中運(yùn)行,其次它的通信抗干擾性較差。可以說傳統(tǒng)機(jī)器人ROS實(shí)質(zhì)上是仍舊停留在主控芯片邊界的,需要通過串行協(xié)議或者ROS中的工具與主控芯片集成在一起。如果操作系統(tǒng)允許在硬件級別附近運(yùn)行ROS節(jié)點(diǎn),那么所有硬件外設(shè)都可用于該應(yīng)用程序,從而使其能夠直接與低級總線系統(tǒng)進(jìn)行交互,亦與傳感器和執(zhí)行器接口互通。從ROS到ROS2正是基于這些原因進(jìn)行的升級改版。
ROS2解決了ROS在很多層面上的性能短板,包括但不限于實(shí)時(shí)性、對MCU的支持、網(wǎng)絡(luò)通信的依賴程度、多機(jī)器人的支持等等。另外,ROS2采?RTSP(Real-Time Publish-Subscribe)協(xié)議的DDS作為中間層,大大提升了通信表現(xiàn)。DDS作為?種?于實(shí)時(shí)和嵌?式系統(tǒng)發(fā)布-訂閱式通信的?業(yè)標(biāo)準(zhǔn),在系統(tǒng)容錯(cuò)和靈活性上會更加完善。總的來說,ROS2解決了ROS在下一代實(shí)時(shí)機(jī)器人技術(shù)上的局限性。
機(jī)器人的自適應(yīng)計(jì)算
機(jī)器人是一個(gè)系統(tǒng)中系統(tǒng)——它包括感知環(huán)境的傳感器,感知環(huán)境的執(zhí)行器,計(jì)算處理所有系統(tǒng),同時(shí)對其應(yīng)用做出一致的響應(yīng)。在很大程度上,機(jī)器人技術(shù)是系統(tǒng)集成的藝術(shù),無論是在軟件還是硬件方面。作為機(jī)一種高度集成的專業(yè)化系統(tǒng),機(jī)器人旨在執(zhí)行具有高可靠性和精度的任務(wù)。因此,機(jī)器人中的硬件和軟件能力之間的關(guān)系是至關(guān)重要的。
大多數(shù)機(jī)器人在內(nèi)部網(wǎng)絡(luò)交換信息,這在某種程度上可以說機(jī)器人是一個(gè)對時(shí)間敏感的網(wǎng)絡(luò)。機(jī)器人系統(tǒng)通常只有有限的板載資源,包括內(nèi)存、I/O和磁盤或計(jì)算能力,這阻礙了系統(tǒng)集成過程,使其在非結(jié)構(gòu)化、動態(tài)或不斷變化的環(huán)境中難以滿足實(shí)時(shí)需求。因此,必須為機(jī)器人系統(tǒng)選擇一個(gè)合適的計(jì)算平臺,一個(gè)既能簡化系統(tǒng)集成,又能滿足功率限制,并使機(jī)器人適應(yīng)不斷變化的需求(即自適應(yīng)機(jī)器人)。
自適應(yīng)機(jī)器人三大基石分別是自適應(yīng)行為、自適應(yīng)機(jī)電一體化以及自適應(yīng)計(jì)算,至少滿足其中一個(gè)才能被稱為自適應(yīng)機(jī)器人。我們這里主要關(guān)注自適應(yīng)計(jì)算。自適應(yīng)計(jì)算指的是機(jī)器人在運(yùn)行時(shí)適應(yīng)其計(jì)算系統(tǒng)的一個(gè)或多個(gè)屬性(例如,其決定論、功耗或吞吐量)的能力。FPGA一直以來都扮演了自適應(yīng)計(jì)算中的重要角色,從過去這么多年的機(jī)器人應(yīng)用來看它比CPU和通用GPU都更適合機(jī)器人自適應(yīng)計(jì)算。
FPGA幾乎可以用于機(jī)器人技術(shù)中的任何處理任務(wù),在數(shù)據(jù)流計(jì)算上非常出色,遵循數(shù)據(jù)驅(qū)動的機(jī)器模型,有很高的并行性和吞吐量的潛力。FPGA適合自適應(yīng)計(jì)算的另一個(gè)方面是,數(shù)據(jù)路徑寬度和寄存器長度可以根據(jù)每個(gè)機(jī)器人應(yīng)用程序的需要進(jìn)行定制。CPU和通用GPU雖然在控制流計(jì)算上很出色,但固定架構(gòu)很難適應(yīng)新的機(jī)器人場景,同時(shí)它們的功耗通常比專門的計(jì)算架構(gòu)高出一到兩個(gè)數(shù)量級。
ROS2與機(jī)器人自適應(yīng)計(jì)算
以ROS2為中心的增強(qiáng)機(jī)器人自適應(yīng)計(jì)算能力的硬件加速方法——Kria Robotics Stack專門針對此前AMD XILINX推出的Kira SOM硬件組合,提供低延遲(快速計(jì)算)、確定性(可預(yù)測)、實(shí)時(shí)(準(zhǔn)時(shí))、安全性和高吞吐量的徹底硬件加速,將自適應(yīng)算力帶向 AI 和軟件開發(fā)者。其核心為將機(jī)器人技術(shù)中使用的傳統(tǒng)控制驅(qū)動方法與數(shù)據(jù)驅(qū)動方法相結(jié)合以優(yōu)化硬件資源的數(shù)量,從而提高性能,并允許更高效、確定性和安全的硬件結(jié)構(gòu)。
KRS與ROS2深度綁定,沒有重新設(shè)計(jì)庫和模擬器,直接建立在ROS2上。ROS2位于KRS架構(gòu)的核心,在中間件組層中被繼續(xù)增強(qiáng)。為了幫助ROS2突破OSI堆棧中的時(shí)間瓶頸和限制,KRS分三類對ROS2進(jìn)行硬件加速。
KRS部分架構(gòu)圖,AMD XILINX
第一個(gè)針對ROS 2應(yīng)用程序和庫,這個(gè)組可以在ROS 2之上加速OSI L7應(yīng)用程序或庫,包括導(dǎo)航、操作、感知或控制堆棧中的所選組件;第二個(gè)針對ROS2核心,在FPGA或SOM中加速或卸載ROS2節(jié)點(diǎn);第三個(gè)針對ROS2的底層,包括完整或部分FPGA加速DDS實(shí)現(xiàn)、卸載網(wǎng)絡(luò)堆棧等等。
Kria SOM與KRS加速示例,AMD XILINX
以ROS2為核心,KRS從整體硬件加速的視角出發(fā),既優(yōu)化了ROS2內(nèi)的計(jì)算交互,也對在ROS2上的應(yīng)用提供了加速,在ROS2中實(shí)現(xiàn)了自適應(yīng)計(jì)算的集成。
寫在最后
KRS以ROS設(shè)計(jì)人員的視角提供了一種實(shí)現(xiàn)自適應(yīng)計(jì)算的思路,再結(jié)合SOM,為機(jī)器人應(yīng)用提供了雙重軟件和硬件靈活的計(jì)算基底,提供了下一代機(jī)器人所需的關(guān)鍵自適應(yīng)特性。
-
機(jī)器人
+關(guān)注
關(guān)注
213文章
29466瀏覽量
211521 -
AI
+關(guān)注
關(guān)注
87文章
34152瀏覽量
275323
發(fā)布評論請先 登錄
【「# ROS 2智能機(jī)器人開發(fā)實(shí)踐」閱讀體驗(yàn)】視覺實(shí)現(xiàn)的基礎(chǔ)算法的應(yīng)用
【「# ROS 2智能機(jī)器人開發(fā)實(shí)踐」閱讀體驗(yàn)】機(jī)器人入門的引路書
【「# ROS 2智能機(jī)器人開發(fā)實(shí)踐」閱讀體驗(yàn)】+ROS2應(yīng)用案例
【「# ROS 2智能機(jī)器人開發(fā)實(shí)踐」閱讀體驗(yàn)】+內(nèi)容初識
大象機(jī)器人攜手進(jìn)迭時(shí)空推出 RISC-V 全棧開源六軸機(jī)械臂產(chǎn)品
機(jī)器人開發(fā)套件 Kria KR260

名單公布!【書籍評測活動NO.58】ROS 2智能機(jī)器人開發(fā)實(shí)踐
使用myCobot 280機(jī)械臂結(jié)合ROS2系統(tǒng)搭建機(jī)械分揀站

【「具身智能機(jī)器人系統(tǒng)」閱讀體驗(yàn)】2.具身智能機(jī)器人的基礎(chǔ)模塊
《具身智能機(jī)器人系統(tǒng)》第10-13章閱讀心得之具身智能機(jī)器人計(jì)算挑戰(zhàn)
【「具身智能機(jī)器人系統(tǒng)」閱讀體驗(yàn)】+初品的體驗(yàn)
ROSCon China 2024 | RDK第一本教材來了!地瓜機(jī)器人與古月居發(fā)布新書《ROS 2智能機(jī)器人開發(fā)實(shí)踐》

評論