日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

6th ROS通信机制概述

發布時間:2024/3/24 编程问答 65 豆豆
生活随笔 收集整理的這篇文章主要介紹了 6th ROS通信机制概述 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

ROS通信是ROS的核心之一。

一、基本概念

  • 節點(Node)
    • 一個節點就表示一個進程
    • 多節點、端到端、分布式通信機制
  • 消息(Message)
    • 節點之間通過訂閱和發布傳遞的數據
    • 可以使用ROS提供的消息類型,也可以使用 .msg 文件自定義消息類型
  • 話題(Topic)
    • 消息通過發布/訂閱(Publish/Subscribe)方式傳遞
    • 發布者節點(Talker)針對一個給定的話題發布消息,訂閱者節點(Listener)訂閱某個話題及其特定數據
    • 話題通信是【異步通信】
    • 無反饋,有緩沖,弱實時,節點關系多對多,適于數據傳輸
  • 服務(Service)
    • 基于服務器/客服端(Sercer/Client)模型
    • 可以使用 ROS 提供的服務類型,也可以使用 .srv 文件自定義
    • 服務通信是【同步通信】
    • 有反饋,無緩沖,強實時,節點關系一對多,適于邏輯處理
  • 節點管理器(ROS Master)
    • 統籌管理所有節點,進行節點間的查找、連接等
    • 為系統提供參數服務器,管理全局參數
    • 節點管理器也體現了ROS的弊端:ROS Master 如果 broken down,整個系統將崩潰

二、通信原理

ROS可以形象的描述為一個工廠的運行機制,創建好一個工作空間(workspace)就像一個工廠,工廠里又有好多個生產車間,每個功能包(pkg)看作是一個生產車間,每個生產車間又有好多工人在配合,每個節點(node)看作是一個工人,節點是又是可執行程序的最小單位,工人們之間相互溝通通過消息(mesage)來完成。

ROS中的通信方式有四種,話題、服務、參數服務器、動作庫。常用前三種。

2.1? 話題通信

對于實時性、周期性的消息,使用topic來傳輸是最佳的選擇。topic是一種點對點的單向通信方式,這里的“點”指的是node,也就是說node之間可以通過topic方式來傳遞信息。topic要經歷下面幾步的初始化過程:首先,publisher節點和subscriber節點都要到節點管理器進行注冊,然后publisher會發布topic,subscriber在master的指揮下會訂閱該topic,從而建立起sub-pub之間的通信。注意整個過程是單向的。

舉個例子,有一個軟件叫今日頭條,你喜歡看汽車類的新聞,這個“汽車類的新聞”就是話題。今日頭條軟件就經常給你推送這個話題的內容,當你打開的時候就會看到,也就是“訂閱”。

再舉個例子,你喜歡聽FM90.8安徽交通廣播的《青春集結號》節目,電臺那邊就是發布者,你打開收音機調到這個頻道就是

2.2? ?服務通信

service服務通訊機制是一種雙向同步數據傳輸模式。基于客戶端/服務器模型,兩部分通信數據類型:一個用于請求,一個用于應答,類似web服務器。

舉個例子,就像是你打10086客服電話查話費,打過去就是客戶端發出請求,客服給你回復就是服務端產生響應。

?2.3 參數服務器

??????? 在機器人系統中,參數傳遞十分重要,機器人工作時,我們有需要對機器人的參數(如傳感器參數、算法的參數)進行設置。有些參數(如機器人的輪廓、傳感器的高度)在機器人啟動時就設定好就行了,有些參數則需要動態改變(特別是在調試的時候)。無論是傳感器的設置,還是控制參數的調整,都需要留出方便的參數調試接口。ROS提供了參數服務器來滿足這一需求,我們可以將參數設置在參數服務器,在需要用到參數的時候再從參數服務器中獲取。使用參數服務器配置系統的參數,是全局可見的,方便我們檢索和更改系統的配置狀態。

? ? ? ? 相當于把參數都放到一個容器中,需要的時候從中取。參數共享。就像共享單車,單車都是參數,需要的時候進行掃碼使用。作為管理者,可能也會投放新的參數,或者刪除一些舊的參數。

?

參考文章:

https://zhuanlan.zhihu.com/p/90425611?from_voters_page=true

https://www.pianshen.com/article/14831374014/

https://blog.csdn.net/sunlin972913894/article/details/103556936

總結

以上是生活随笔為你收集整理的6th ROS通信机制概述的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。