節(jié)點(diǎn)實(shí)現(xiàn)了機(jī)器人各種各樣的功能,但這些功能并不是獨(dú)立的,之間會(huì)有千絲萬(wàn)縷的聯(lián)系,其中最重要的一種聯(lián)系方式就是話題,它是節(jié)點(diǎn)間傳遞數(shù)據(jù)的橋梁。
通信模型
以兩個(gè)機(jī)器人節(jié)點(diǎn)為例。A節(jié)點(diǎn)的功能是驅(qū)動(dòng)相機(jī)這個(gè)硬件設(shè)備,獲取得到相機(jī)拍攝的圖像信息,B節(jié)點(diǎn)的功能是視頻監(jiān)控,將相機(jī)拍攝到的圖像實(shí)時(shí)顯示給用戶查看。
大家可以想一下,這兩個(gè)節(jié)點(diǎn)是不是必然存在某種關(guān)系?沒(méi)錯(cuò),節(jié)點(diǎn)A要將獲取的圖像數(shù)據(jù)傳輸給節(jié)點(diǎn)B,有了數(shù)據(jù),節(jié)點(diǎn)B才能做這樣可視化的渲染。
此時(shí)從節(jié)點(diǎn)A到節(jié)點(diǎn)B傳遞圖像數(shù)據(jù)的方式,在ROS中,我們就稱之為話題,它作為一個(gè)橋梁,實(shí)現(xiàn)了節(jié)點(diǎn)之間某一個(gè)方向上的數(shù)據(jù)傳輸。
發(fā)布/訂閱模型
從話題本身的實(shí)現(xiàn)角度來(lái)看,使用了基于DDS的發(fā)布/訂閱模型,什么叫發(fā)布和訂閱呢?
話題數(shù)據(jù)傳輸?shù)奶匦允菑囊粋€(gè)節(jié)點(diǎn)到另外一個(gè)節(jié)點(diǎn),發(fā)送數(shù)據(jù)的對(duì)象稱之為發(fā)布者,接收數(shù)據(jù)的對(duì)象稱之為訂閱者,每一個(gè)話題都需要有一個(gè)名字,傳輸?shù)臄?shù)據(jù)也需要有固定的數(shù)據(jù)類型。
打一個(gè)比方,大家平時(shí)應(yīng)該也會(huì)看微信公眾號(hào),比如有一個(gè)公眾號(hào),它的名字叫做“古月居”,這個(gè)古月居就是話題名稱,公眾號(hào)的發(fā)布者是古月居的小編,他會(huì)把組織好的機(jī)器人知識(shí)排版成要求格式的公眾號(hào)文章,發(fā)布出去,這個(gè)文章格式,就是話題的數(shù)據(jù)類型。
如果大家對(duì)這個(gè)話題感興趣,就可以訂閱“古月居”,成為訂閱者之后自然就可以收到古月居的公眾號(hào)文章,沒(méi)有訂閱的話,也就無(wú)法收到。
類似這樣的發(fā)布/訂閱模型在生活中隨處可見(jiàn),比如訂閱報(bào)紙、訂閱雜志等等。
聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。
舉報(bào)投訴
-
機(jī)器人
-
模型
-
多節(jié)點(diǎn)
相關(guān)推薦
金航標(biāo)kinghelm薩科微slkor總經(jīng)理宋仕強(qiáng)介紹說(shuō),薩科微Al大模型機(jī)器人有哪些的優(yōu)勢(shì)?薩科微AI大模型機(jī)器人由清華大學(xué)畢業(yè)的天才少年
發(fā)表于 07-05 08:52
多任務(wù)實(shí)時(shí)操作系統(tǒng)VxWorks是什么?與傳統(tǒng)通信機(jī)制相比,模塊間通信模型有什么優(yōu)勢(shì)?基于VxWorks實(shí)時(shí)操作系統(tǒng)的通信模型該怎樣去設(shè)計(jì)?
發(fā)表于 04-26 06:25
提出一種高效可靠的移動(dòng)Agent通信模型――D-C通信模型,結(jié)合域名字解析器和移動(dòng)Agent系統(tǒng)中的Communicator實(shí)現(xiàn)移動(dòng)Agent之間的通信。通過(guò)引入一種基于全局的、與位置無(wú)關(guān)的命名方法
發(fā)表于 04-16 08:53
?26次下載
針對(duì)基于多計(jì)算機(jī)機(jī)群構(gòu)成的網(wǎng)格的大規(guī)模并行計(jì)算的需要,對(duì)多級(jí)分組通信模型的單一機(jī)群分組通信進(jìn)行了研究。探討了在單一機(jī)群內(nèi)的主動(dòng)節(jié)點(diǎn)、被動(dòng)節(jié)點(diǎn)個(gè)數(shù)和各個(gè)計(jì)算
發(fā)表于 06-25 13:52
?12次下載
本文提出了一種任務(wù)間的通信模型,將用于網(wǎng)絡(luò)通信的UDP方式引進(jìn)到任務(wù)間的通信中,使通信更加靈活和便于管理,改善了整個(gè)系統(tǒng)的性能。
發(fā)表于 06-01 10:07
?1056次閱讀
機(jī)器人多傳感器測(cè)距系統(tǒng)研究與設(shè)計(jì)......
發(fā)表于 12-23 14:46
?10次下載
機(jī)器人多傳感器信息融合測(cè)距系統(tǒng)設(shè)計(jì)....
發(fā)表于 12-23 15:00
?16次下載
網(wǎng)絡(luò)通信模型,在基礎(chǔ)講解的前提下,建立數(shù)學(xué)模型來(lái)分析。
發(fā)表于 03-15 13:56
?9次下載
基于Zigbee的無(wú)線智能輸液通信模型設(shè)計(jì)_楊艷
發(fā)表于 03-16 08:00
?3次下載
針對(duì)云存儲(chǔ)中現(xiàn)有多節(jié)點(diǎn)失效修復(fù)模型的不足,給出了一種可以對(duì)多個(gè)系統(tǒng)節(jié)點(diǎn)或冗余節(jié)點(diǎn)同時(shí)修復(fù)的多節(jié)點(diǎn)協(xié)作的精確修復(fù)碼,證明了其存在性,并且將此修
發(fā)表于 02-27 15:23
?0次下載
完成的,它相當(dāng)于是ROS機(jī)器人系統(tǒng)中的神經(jīng)網(wǎng)絡(luò)。 通信模型 DDS的核心是通信,能夠?qū)崿F(xiàn)通信的模型和軟件框架非常多,這里我們列出常用的四種
發(fā)表于 11-24 17:50
?1572次閱讀
用到——那就是動(dòng)作。從這個(gè)名字上就可以很好理解這個(gè)概念的含義,這種通信機(jī)制的目的就是便于對(duì)機(jī)器人某一完整行為的流程進(jìn)行管理。 通信模型 舉個(gè)例子,比如我們想讓機(jī)器人轉(zhuǎn)個(gè)圈,這肯定不是一
發(fā)表于 11-27 17:05
?665次閱讀
編程方法 相比之前話題和服務(wù)的程序,動(dòng)作通信的例程相對(duì)較長(zhǎng),我們一起來(lái)運(yùn)行并分析一下。 運(yùn)行示例程序 $ source /opt/tros/local_setup.bash $ source
發(fā)表于 11-27 17:10
?464次閱讀
的數(shù)量并不是唯一的,可以稱之為是多對(duì)多的通信模型。 因?yàn)?b class='flag-5'>話題是多對(duì)多的模型,發(fā)布控制指令的搖桿可以有一個(gè),也可以有2個(gè)、3個(gè),訂閱控制指令的機(jī)器人可以有1個(gè),也可以有2個(gè)、3個(gè)。 大家
發(fā)表于 11-27 17:42
?684次閱讀
/userdata/dev_ws/ $ colcon build 運(yùn)行示例程序 編譯成功后,我們嘗試運(yùn)行話題通信的Hello World例程,在這個(gè)例程中,我們會(huì)先創(chuàng)建一個(gè)發(fā)布者,發(fā)布話題“chatter”,周期發(fā)送“Hell
發(fā)表于 11-27 17:48
?408次閱讀
評(píng)論