MUX的使用

當我在尋求多地圖實時切換方案的時候,找到了mux這個工具

對硬件比較熟悉的各位,應該指導多路復用器這個東西,就是這個mux

mux可以訂閱多個topic,所謂的intopics,

intopics

一個mux節(jié)點只能輸出一個topic(但是可以同時啟動多個mux哦)

輸出的topic就是從mux的input topic中篩選,更改成設定的output topic name之后發(fā)布

提供三個服務(選擇、添加、刪除)

選擇哪個輸入作為輸出
添加一個輸入topic
刪除一個輸入topic

image.png

舉例

比如 我有4張地圖-------描述文件分別為:

map1.yaml 
map2,yaml
map3.yaml
map4,yaml

利用map_server把四張地圖全部發(fā)布出去,有以下消息

\map1, \map1_metadata
\map2, \map2_metadata
\map3, \map3_metadata
\map4, \map4_metadata

做了兩個mux,topic名字修改為 mux_map和mux_mapmeta(這是為了防止多個mux之間名字沖突)

map_mux的輸入設置為

\map1
\map2
\map3
\map4

輸出為 \map

rosrun topic_tools mux map map1 map2 map3 map4 mux:=mux_map

mux_mapmeta的輸入設置為

\map1_metadata
\map2_metadata
\map3_metadata
\map4_metadata

輸出為\map_metadata

rosrun topic_tools mux map_metadata map1_metadata map2_metadata map3_metadata map4_metadata mux:=mux_mapmeta

那么我們可以通過select服務,來選擇每個mux的輸出來自哪個輸入topic

rosservice call mux_map/select map1
rosservice call mux_mapmeta/select map1_metadata
最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
【社區(qū)內容提示】社區(qū)部分內容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內容

  • Spring Cloud為開發(fā)人員提供了快速構建分布式系統(tǒng)中一些常見模式的工具(例如配置管理,服務發(fā)現,斷路器,智...
    卡卡羅2017閱讀 136,578評論 19 139
  • Kafka入門經典教程-Kafka-about云開發(fā) http://www.aboutyun.com/threa...
    葡萄喃喃囈語閱讀 10,985評論 4 54
  • Spark SQL, DataFrames and Datasets Guide Overview SQL Dat...
    草里有只羊閱讀 18,556評論 0 85
  • 發(fā)現 關注 消息 iOS 第三方庫、插件、知名博客總結 作者大灰狼的小綿羊哥哥關注 2017.06.26 09:4...
    肇東周閱讀 15,405評論 4 61
  • 頑張って行くと、きっと何かあるという信念で乗り越えたのかなあ。実際は、自分がよく頑張ったという記憶以外、何もな...
    ftony7899閱讀 87評論 0 0

友情鏈接更多精彩內容