其中clients文件夾一共有127個文件,看來是最大的包了。
現在我們來到了ROS最核心的地帶。
客戶端這個名詞出現的有些突然,一個機器人操作系統里為什么需要客戶端。
原因是,節點與主節點master之間的關系是client/server,這時每個節點都是一個客戶端(client),而master自然就是服務器端(server)。
那客戶端庫(client libraries)是干什么的?就是為實現節點之間通信的。
雖然整個文件夾中包含的文件眾多,但是我們如果按照一定的脈絡來分析就不會眼花繚亂。
節點之間最主要的通信方式就是基于消息的。為了實現這個目的,需要三個步驟,如下。
弄明白這三個步驟就明白ROS的工作方式了。這三個步驟看起來是比較合乎邏輯的,并不奇怪。
消息的發布者和訂閱者(即消息的接收方)建立連接;
發布者向話題發布消息,訂閱者在話題上接收消息,將消息保存在回調函數隊列中;
調用回調函數隊列中的回調函數處理消息。
-
通信
+關注
關注
18文章
6197瀏覽量
137643 -
客戶端
+關注
關注
1文章
301瀏覽量
17049 -
ROS
+關注
關注
1文章
286瀏覽量
17667
發布評論請先 登錄
在Android中使用ROS
ROS與STM32是如何進行通信的
做ROS與樹莓派進行通信
什么是ROS?ROS產生、發展和壯大的原因和意義
怎樣通過ROS Arduino程序去點亮LED燈呢
基于FreeRTOS的micro(微型)ROS

ROS與STM32通信

深度解析開源無人機ROS開發方案
Unity與ROS鏈接介紹

評論