国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

【ROS2】為什么要使用ROS2?《ROS2系統(tǒng)特性介紹》

這篇具有很好參考價值的文章主要介紹了【ROS2】為什么要使用ROS2?《ROS2系統(tǒng)特性介紹》。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

一、為什么要推出ROS2?

2010年,ROS1首次發(fā)布正式版本,其研發(fā)的初衷是為設(shè)計PR2(個人服務(wù)型機器人)共用的軟件架構(gòu)。但隨著ROS1技術(shù)的普及,ROS1開始廣泛融入各領(lǐng)域無人系統(tǒng)的研發(fā),陸續(xù)暴露了系統(tǒng)的諸多問題。為了適應(yīng)新時代機器人研發(fā)的需要,2022年5月,ROS開發(fā)者團隊推出新版本ROS2。

(一)ROS1的誕生

2007年,斯坦福大學(xué)學(xué)生為開發(fā)PR2(個人服務(wù)型機器人)共用的軟件架構(gòu),設(shè)計ROS的原型。2010年,Willow Garage公司推出ROS1的首個發(fā)行版。

(二)ROS1存在的問題

ROS1最早的設(shè)計目標:針對家庭服務(wù)機器人PR2,設(shè)計一款共用開發(fā)的軟件架構(gòu)。

(1)PR2特點

  • 體積大,算力充足:它搭載了工作站級別的計算平臺和各種先進的通信設(shè)備,不用擔憂算力不夠,有足夠的實力支持各種復(fù)雜的實時運算和處理;
  • 通訊可靠:由于是單兵作戰(zhàn),通信絕大部分都自己內(nèi)部完成,那就可以用有線連接,保證了良好的網(wǎng)絡(luò)連接,沒有丟數(shù)據(jù)或者黑客入侵的風(fēng)險;
  • 實驗室產(chǎn)品,沒有工程應(yīng)用:這臺機器人最終雖然小批量生產(chǎn),但是由于高昂的成本和售價,也只能用于學(xué)術(shù)研究。
    【ROS2】為什么要使用ROS2?《ROS2系統(tǒng)特性介紹》

(2)ROS1存在問題

隨著ROS1技術(shù)的普及,ROS1融入各領(lǐng)域無人系統(tǒng)的研發(fā)。原本僅針對PR2設(shè)計的軟件架構(gòu),就出現(xiàn)諸多問題:

  • 資源需求大:需要在資源有限的嵌入式系統(tǒng)中運行;
  • 系統(tǒng)抗干擾差:要在有干擾的地方保證通信的可靠性;
  • 產(chǎn)品應(yīng)用差:要做成產(chǎn)品走向市場,甚至用在自動駕駛汽車和航天機器人上。

(三)ROS2設(shè)計思路

(1)ROS2針對場景

  • 多機器人系統(tǒng):ROS2為多機器人系統(tǒng)的應(yīng)用提供了標準方法和通信機制。
  • 跨平臺:機器人應(yīng)用場景不同,使用的控制平臺也會有很大差異,為了讓所有機器人都可以運行ROS2,ROS2可以跨平臺運行于Linux、Windows、MacOS、RTOS,甚至是沒有任何系統(tǒng)的微控制器(MCU)上。
  • 實時性:機器人運動控制和很多行為策略要求機器人具備實時性,比如機器人要可靠得在100ms內(nèi)發(fā)現(xiàn)前方的行人,或者穩(wěn)定的在1ms周期內(nèi)完成運動學(xué)、動力學(xué)的解算,ROS2為類似這樣的實時性需求提供了基本保障。
  • 網(wǎng)絡(luò)連接:無論在怎樣的網(wǎng)絡(luò)環(huán)境下,ROS2都可以盡量保障機器人大量數(shù)據(jù)的完整性和安全性,比如在wifi信號不好的時候數(shù)據(jù)也要盡力發(fā)送過去,在有黑客入侵風(fēng)險的場景下要對數(shù)據(jù)進行加密解密。
  • 產(chǎn)品化:大量機器人已經(jīng)走向我們的生活,未來還會越來越多,ROS2不僅可以用于機器人研發(fā)階段,還可以直接搭載在產(chǎn)品中,走向消費市場,這對ROS2的穩(wěn)定性、強壯性也提除了巨大挑戰(zhàn)。
  • 項目管理:機器人開發(fā)是一個復(fù)雜的系統(tǒng)工程,設(shè)計、開發(fā)、調(diào)試、測試、部署等全流程的項目管理工具和機制,也會在ROS2中體現(xiàn),更方便我們?nèi)ラ_發(fā)一款機器人。

(2)設(shè)計思路

ROS開發(fā)團隊從長遠角度考慮,選擇推翻ROS1的軟件架構(gòu),設(shè)計全新的ROS2操作系統(tǒng)。對系統(tǒng)架構(gòu)、軟件代碼、系統(tǒng)編譯均做出全面升級。

  • 系統(tǒng)架構(gòu):借助DDS通信架構(gòu),實現(xiàn)系統(tǒng)分布式
  • 軟件接口:ROS2結(jié)合C++和Python3的最新標準,重新設(shè)計API接口
  • 系統(tǒng)編譯:對大工程和python工程,更加友好。
    【ROS2】為什么要使用ROS2?《ROS2系統(tǒng)特性介紹》

二、ROS2系統(tǒng)特性

(一)系統(tǒng)架構(gòu)

【ROS2】為什么要使用ROS2?《ROS2系統(tǒng)特性介紹》

  • 進程管理:在ROS1中,需要開啟中央節(jié)點管理器Master,統(tǒng)一管理所有節(jié)點。如果Master節(jié)點出現(xiàn)故障,將嚴重影響ROS系統(tǒng)功能。在ROS2中,系統(tǒng)引入節(jié)點自發(fā)現(xiàn)機制,可有效提高系統(tǒng)魯棒性。
  • 進程內(nèi)通信:進程內(nèi)部進行通信,ROS1和ROS2均采用共享內(nèi)存的方式。
  • 進程間通信:在ROS1中,進程間進行通信主要依賴于底層的TCP\UDP協(xié)議,但是在ROS2中,引入復(fù)雜的DDS系統(tǒng)。

(二)通信架構(gòu)

【ROS2】為什么要使用ROS2?《ROS2系統(tǒng)特性介紹》

ROS1是基于TCP/UDP通信系統(tǒng),具有高延遲、丟數(shù)據(jù)、無法加密等特點。而ROS2在通信層面使用DDS通信協(xié)議。
DDS是物聯(lián)網(wǎng)中一種通信協(xié)議,具有多個版本,DDS是一個國際標準,能夠?qū)崿F(xiàn)該標準的軟件系統(tǒng)并不是唯一的。多個廠家可以提供的DDS系統(tǒng),比如OpenSplice、FastRTPS等,每一家的性能不同,適用的場景也不同。
每一個廠家的軟件接口是不同的,為了解決這個問題,ROS2設(shè)計了一個ROS Middleware,簡稱RMW,也就是指定一個標準的接口。比如如何發(fā)數(shù)據(jù),如何收數(shù)據(jù),數(shù)據(jù)的各種屬性如何配置,都定義好了,如果廠家想要接入ROS社區(qū),就得按照這個標準寫一個適配的接口,把自家的DDS給移植過來,這樣就把問題交給了最熟悉自家DDS的廠商。對于我們這些用戶來講,某一個DDS用的不爽,只要安裝另一個,然后做一個簡單的配置,程序一行的都不用改,輕松更換底層的通信系統(tǒng)。
對于開發(fā)者,在產(chǎn)品研發(fā)階段,可以使用開源的DDS滿足產(chǎn)品基本需求,在部署交付階段,可以更換到更加穩(wěn)定的DDS版本,以減小開發(fā)成本。
(三)核心概念
為了ROS開發(fā)者開發(fā)的延續(xù)性,ROS2保留了ROS1的基本概念。
【ROS2】為什么要使用ROS2?《ROS2系統(tǒng)特性介紹》

ROS2系統(tǒng)學(xué)習(xí),可參考:古月居ROS2入門21講文章來源地址http://www.zghlxwxcb.cn/news/detail-490985.html

到了這里,關(guān)于【ROS2】為什么要使用ROS2?《ROS2系統(tǒng)特性介紹》的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔相關(guān)法律責任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經(jīng)查實,立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費用

相關(guān)文章

  • Redis—Redis介紹(是什么/為什么快/為什么做MySQL緩存等)

    Redis—Redis介紹(是什么/為什么快/為什么做MySQL緩存等)

    一、Redis是什么 Redis 是一種 基于內(nèi)存的數(shù)據(jù)庫 ,對數(shù)據(jù)的讀寫操作都是在內(nèi)存中完成,因此讀寫速度非??欤S糜?緩存,消息隊列、分布式鎖等場景 。 ????????Redis 提供了多種數(shù)據(jù)類型來支持不同的業(yè)務(wù)場景,比如 String(字符串)、Hash(哈希)、 List (列表)、Set(集合)、

    2024年02月10日
    瀏覽(29)
  • 電腦bios使用的uefi啟動,系統(tǒng)盤使用的mbr格式,為什么安裝完系統(tǒng)無法進入?

    電腦bios使用的uefi啟動,系統(tǒng)盤使用的mbr格式,為什么安裝完系統(tǒng)無法進入?

    ? 在電腦的安裝系統(tǒng)過程中,我們會遇到一些問題,比如說使用UEFI啟動但是磁盤分區(qū)使用MBR格式,導(dǎo)致系統(tǒng)安裝完成之后無法引導(dǎo)。這是因為UEFI啟動只支持GPT格式的磁盤分區(qū)。 在本文中,我們將探討如何將磁盤轉(zhuǎn)換成GPT格式,并重新安裝系統(tǒng),以便正確地引導(dǎo)系統(tǒng)。 ? ?

    2024年02月12日
    瀏覽(18)
  • 你用過猿如意嗎?猿如意可以使用ChatGPT哦,這里詳細介紹了猿如意的功能,為什么我建議你使用猿如意,來看看吧

    你用過猿如意嗎?猿如意可以使用ChatGPT哦,這里詳細介紹了猿如意的功能,為什么我建議你使用猿如意,來看看吧

    你是否還在為為每次安裝IDE(集成開發(fā)工具)要去各種網(wǎng)站找教程而煩惱? 你是否還在為各種文本格式轉(zhuǎn)換而頭痛? 你是否在為斗圖都不過兄弟們而卑微? 你是否在為互聯(lián)網(wǎng)中龐大冗雜卻低效的教程文檔而崩潰? 你想不想有一個關(guān)于代碼的模板庫? 你想不想不用\\\"科技\\\"就使

    2023年04月13日
    瀏覽(24)
  • HTTPS工作過程,國家為什么讓http為什么要換成https,Tomcat在MAC M1電腦如何安裝,Tomcat的詳細介紹

    HTTPS工作過程,國家為什么讓http為什么要換成https,Tomcat在MAC M1電腦如何安裝,Tomcat的詳細介紹

    目錄 引言 一、HTTPS工作過程 二、Tomcat 在訪達中找到下載好的Tomcat文件夾(這個要求按順序) zsh: permission denied TOMCAT的各部分含義: 在密碼中一般是:明文+密鑰-密文(加密) ,密文+密鑰-明文(解密) 那么為什么大家放棄了原有的http換為https呢? 這我們就要先介紹一下H

    2024年02月08日
    瀏覽(19)
  • SaaS是什么?企業(yè)為什么要有SaaS系統(tǒng)?

    SaaS是什么?企業(yè)為什么要有SaaS系統(tǒng)?

    什么是SaaS系統(tǒng)?企業(yè)為什么要有SaaS系統(tǒng)? 近幾年, SaaS突然變成了一個熱門詞匯 ,無論是一些權(quán)威報告,還是 知乎上知友們熱烈的討論,對于Saas系統(tǒng)可謂是各有各的見解和看法。 今天就綜合幾位答主的觀點,以及我個人的見解,為大家解釋下,到底什么是SaaS系統(tǒng)。 想要

    2023年04月20日
    瀏覽(28)
  • 我們?yōu)槭裁葱枰植际较到y(tǒng)?

    簡單來說,分布式系統(tǒng)的出現(xiàn),主要是為了解決單體系統(tǒng)的不足。 分布式系統(tǒng)解決了單機性能瓶頸導(dǎo)致的成本問題。由于摩爾定律失效,廉價PC機的性能瓶頸無法繼續(xù)突破,雖然小型機和大型機能夠?qū)崿F(xiàn)更高的單機性能,但是成本太高。 分布式系統(tǒng)解決了用戶量和數(shù)據(jù)量爆炸

    2023年04月11日
    瀏覽(100)
  • 什么是分布式操作系統(tǒng)?我們?yōu)槭裁葱枰植际讲僮飨到y(tǒng)?

    什么是分布式操作系統(tǒng)?我們?yōu)槭裁葱枰植际讲僮飨到y(tǒng)?

    分布式操作系統(tǒng)是一種特殊的操作系統(tǒng),本質(zhì)上屬于多機操作系統(tǒng),是傳統(tǒng)單機操作系統(tǒng)的發(fā)展和延伸。它是將一個計算機系統(tǒng)劃分為多個獨立的計算單元(或者也可稱為節(jié)點),這些節(jié)點被部署到每臺計算機上,然后被網(wǎng)絡(luò)連接起來,并保持著持續(xù)的通信狀態(tài)。在分布式操作

    2024年02月16日
    瀏覽(38)
  • 為什么不用Go開發(fā)操作系統(tǒng)?

    為什么不用Go開發(fā)操作系統(tǒng)?

    ? 操作系統(tǒng) (OS) 是計算機系統(tǒng)的心臟和靈魂,它管理著計算機的硬件和軟件資源,并為用戶提供與計算機交互的方式。傳統(tǒng)上,C 和 Assembly 等語言因其低開銷和 “接近機器碼” 的特性而被用于開發(fā)操作系統(tǒng)。 但諸如 Go 等高級語言的興起引入了一些特性,這些特性或許可以使

    2024年02月06日
    瀏覽(38)
  • 我們?yōu)槭裁葱枰狝PI管理系統(tǒng)?

    我們?yōu)槭裁葱枰狝PI管理系統(tǒng)?

    我們?yōu)槭裁葱枰狝PI管理系統(tǒng)? 隨著web技術(shù)的發(fā)展,前后端分離成為越來越多互聯(lián)網(wǎng)公司構(gòu)建應(yīng)用的方式。前后端分離的優(yōu)勢是一套Api可被多個客戶端復(fù)用,分工和協(xié)作被細化,大大提高了編碼效率,但同時也帶來一些“副作用”: 接口文檔不可靠。很多小伙伴管理接口文檔,

    2024年02月12日
    瀏覽(106)
  • 為什么很多程序員喜歡linux系統(tǒng)?

    a Linux哪些行業(yè)在運用? Linux系統(tǒng)運用極其廣泛,不少用戶只知道windows,是因為,Linux的運用主要是在企業(yè)端?,F(xiàn)在科技極其發(fā)達,我們手機在手,就能干很多事情,只需點一點屏幕,輕松完成聊天、娛樂、甚至支付功能。這些操作看似簡單,但其背后,有一系列復(fù)雜請求和響

    2024年02月03日
    瀏覽(27)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包