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

ROS與STM32通信

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

評論