<output id="qn6qe"></output>

    1. <output id="qn6qe"><tt id="qn6qe"></tt></output>
    2. <strike id="qn6qe"></strike>

      亚洲 日本 欧洲 欧美 视频,日韩中文字幕有码av,一本一道av中文字幕无码,国产线播放免费人成视频播放,人妻少妇偷人无码视频,日夜啪啪一区二区三区,国产尤物精品自在拍视频首页,久热这里只有精品12

      Ros2_control淺析——一個(gè)機(jī)器人開(kāi)發(fā)通用框架的結(jié)構(gòu)(1)

      引言:

      最近在開(kāi)發(fā)一個(gè)送餐機(jī)器人,但是在電機(jī)和ros2系統(tǒng)交互時(shí)犯了難,不知道該怎么寫(xiě)才能讓系統(tǒng)架構(gòu)清晰一些,后來(lái)了解到ros2社區(qū)有一個(gè)規(guī)范的開(kāi)發(fā)框架,所以我會(huì)結(jié)合個(gè)人理解來(lái)分析一下這個(gè)架構(gòu),算是我的學(xué)習(xí)筆記吧,希望能夠?qū)δ袔椭?/p>

      ros2_control是什么

      ros2_control 是一個(gè)硬件無(wú)關(guān)的控制框架,用于抽象第三方解決方案(如 MoveIt2 和 Nav2 系統(tǒng))的硬件和低級(jí)控制,它提供了一些接口來(lái)實(shí)現(xiàn)標(biāo)準(zhǔn)化的硬件抽象和控制流程。

      有點(diǎn)像是cpp的庫(kù)文件,讓上層系統(tǒng)不必關(guān)心過(guò)多細(xì)節(jié)。它通過(guò)硬件接口插件與真實(shí)設(shè)備通信,并通過(guò)控制器將硬件狀態(tài)發(fā)布為ROS2話題或?qū)OS2指令傳遞給硬件。

      從而讓上層系統(tǒng)不必關(guān)心底層硬件的實(shí)現(xiàn),只需要使用ros2_control提供的接口,從而讓上層的應(yīng)用去調(diào)用來(lái)實(shí)現(xiàn)實(shí)際應(yīng)用中的功能。

      官方文檔示例

      這張圖就展示了這個(gè)框架的核心思想——抽象硬件接口,方便上層軟件的使用,實(shí)現(xiàn)軟硬件解耦

      然后是官網(wǎng)文檔中的舉例圖,
      可以看到客戶端可以不用去考慮硬件方面的資源開(kāi)銷(xiāo),從而最小化在實(shí)際客戶端應(yīng)用程序上花費(fèi)的資源。可以直接拓展自己的控制器,或者通過(guò)自定義的第三方軟件進(jìn)行控制操作。

      這個(gè)框架的源代碼可以在以下兩個(gè)倉(cāng)庫(kù)中找到:

      https://github.com/ros-controls/ros2_control

      https://github.com/ros-controls/ros2_controllers

      這兩個(gè)倉(cāng)庫(kù)里面包含了一些控制器的示例,可以本地克隆下來(lái)嘗試一下。

      官方文檔給出的ros2_control框架的架構(gòu):

      可以看到明顯的分成了上下兩個(gè)部分,兩個(gè)部分之間連接處是Controller Manager(控制器管理器)和Resource Manager(資源管理器),下面來(lái)解析一下圖中的概念。

      架構(gòu)解析:

      控制器管理器(Controller Manager 簡(jiǎn)稱(chēng)CM)

      可以看作是用戶操作硬件的“調(diào)度中心”,它知道控制器需要的接口,也知道硬件提供的接口。它管理控制器及其所需接口,而且通過(guò)資源管理器訪問(wèn)硬件組件的接口,“承上啟下”,可以這樣理解。

      用戶或者上層系統(tǒng)在這個(gè)框架下無(wú)法直接操作控制器,通過(guò)Ros2提供的服務(wù)(services)和控制器管理器交互。

      CM支持自定義的集成,原生的CM是不帶執(zhí)行器的,一個(gè)節(jié)點(diǎn)想要處理回調(diào)需要執(zhí)行器(Executor)來(lái)運(yùn)行。比如一個(gè)節(jié)點(diǎn)中使用rclcpp::spin(),本質(zhì)上就是創(chuàng)建了一個(gè)默認(rèn)的執(zhí)行器,這樣就可以觸發(fā)節(jié)點(diǎn)對(duì)應(yīng)的回調(diào)函數(shù)。將cm嵌入到你的執(zhí)行器中后,就可以在你自己的節(jié)點(diǎn)中可以同時(shí)啟動(dòng)CM的服務(wù),即個(gè)人節(jié)點(diǎn)和CM在同一個(gè)進(jìn)程下運(yùn)行,從而避免進(jìn)程間的通信開(kāi)銷(xiāo)。

      資源管理器(Resource Manager 簡(jiǎn)稱(chēng)RM)

      RM所做的事情是將物理硬件及其驅(qū)動(dòng)程序(一個(gè)完整可調(diào)用的硬件模組)抽象化成硬件組件(Hardware Components),將硬件組件以插件的形式嵌入到框架之中,并管理它們的生命周期和組件的狀態(tài)

      硬件組件(Hardware Components)

      硬件組件是物理硬件的抽象化表示,主要分為以下三種類(lèi)型:System、Actuator、Sersor。

      System(系統(tǒng)組件):相當(dāng)于一個(gè)組裝好的部分,控制多個(gè)自由度(比如機(jī)械臂,靈巧手),細(xì)節(jié)在內(nèi)部處理,ros2_control只關(guān)心關(guān)節(jié)位置和控制命令。
      必須實(shí)現(xiàn)read()和write()操作(因?yàn)橐鞔_狀態(tài)和下達(dá)控制指令)。

      Actuator(執(zhí)行器組件):通常對(duì)應(yīng)一個(gè)關(guān)節(jié),比如一個(gè)電機(jī)或者一個(gè)推桿、閥門(mén)。
      每個(gè)執(zhí)行器之間獨(dú)立通信,通過(guò)執(zhí)行器之間的組合構(gòu)建出高自由度的系統(tǒng)。
      必須實(shí)現(xiàn)write(),read()是可選的。

      Sensor(傳感器組件):對(duì)應(yīng)感知類(lèi)的設(shè)備,比如IMU、攝像頭、編碼器,這些傳感器類(lèi)型的硬件,通常獨(dú)立于執(zhí)行器組件,因?yàn)楂@取到的外接信息的處理往往需要單獨(dú)處理。
      只有read(),對(duì)于感知設(shè)備讀取即可。

      本篇文章的參考來(lái)源:

      ros2_control官方文檔:https://control.ros.org/master/doc/getting_started/getting_started.html#architecture

      《通過(guò)控制器訪問(wèn)硬件的設(shè)計(jì)文檔》:https://github.com/ros-controls/roadmap/blob/master/design_drafts/hardware_access.md

      ROSCon 2025 Workshop提供的ros2_control有關(guān)的幻燈片下載:https://control.ros.org/master/_downloads/facbcb9c9cc446bc58379564f481ee37/ROSCon2025-Workshop_Fun_with_Robot_Drivers.pdf

      posted @ 2025-10-04 13:42  秋嶼123  閱讀(164)  評(píng)論(0)    收藏  舉報(bào)
      主站蜘蛛池模板: 无码中文字幕人妻在线一区| 丰满人妻被黑人猛烈进入| 国产成人高清亚洲综合| 国产精品中出一区二区三区| 麻豆蜜桃av蜜臀av色欲av| 国产成人精品a视频| 日韩在线成年视频人网站观看| 精品无码久久久久久尤物| 美女午夜福利视频一区二区| 综合偷自拍亚洲乱中文字幕| 国产精品美女黑丝流水| 精品亚洲国产成人av在线| 最新av中文字幕无码专区| 国产一级r片内射免费视频| 国产一级黄色片在线观看| 香蕉久久国产精品免| 久久99九九精品久久久久蜜桃| 国产精品成人午夜久久| 临湘市| 国产三级a三级三级| 香蕉久久久久久久AV网站| 依依成人精品视频在线观看| 亚洲人成人伊人成综合网无码| 国产无遮挡又黄又大又爽| 久久亚洲人成网站| 老熟女重囗味hdxx69| 国产一区二区三区激情视频| 最近中文国语字幕在线播放| 久久精品一本到东京热| 99精品国产中文字幕| 湘潭县| 国产亚洲真人做受在线观看| 欧美成本人视频免费播放| 国产精品午夜av福利| 国产成人精品无人区一区| 国内精品一区二区不卡| 久久一本人碰碰人碰| 国产精品第一页一区二区| 亚洲乱理伦片在线观看中字| 少妇xxxxx性开放| 国内熟女中文字幕第一页|