ROS程式設計第三步 使用自己的訊息

2021-10-23 01:38:43 字數 1622 閱讀 8280

上一講說了怎樣 定製自己的訊息,這裡說說怎麼把自己的訊息用起來。

把自己定製的訊息記為 person

一 .最好的辦法就是 ,寫乙個 發布者不停發自己的訊息person,另乙個接收者不停接受自己的訊息person

那麼就寫出了如下 乙個 發布者,乙個訂閱者

// 發布者 

#include

#include

"learning_topic/person.h"

intmain

(int argc ,

char

** ar**)

return0;

}

//訂閱者

#include

#include

"learning_topic/person.h"

void

personinfocallback

(const learning_topic::person::constptr& msg)

intmain

(int argc,

char

**ar**)

**結構清晰明了,解釋一下 nage person_info 是從哪來的, 這個只要你的 發布者發布這樣乙個話題, 無論是什麼名字, 只要你 接收者接受乙個同名的話題就行了,不用糾結叫啥名,它可以是 任意乙個名字。

然後,為了**生效,做如下工作

進入cmakelists

找到# 包圍的 install ,上面新增

add_executable

(person_subscriber src/person_subscriber.cpp)

target_link_libraries

(person_subscriber

$)add_dependencies

(person_subscriber $_generate_messages_cpp )

add_executable

(person_publisher src/person_publisher.cpp)

target_link_libraries

(person_publisher

$)add_dependencies

(person_publisher $_generate_messages_cpp )

解釋 :

上面是subscriber的東西,下面是puslisher的東西,講講上面的吧

第一行: 把自己的cpp檔案可執行化

第二行: 為自己的檔案新增鏈結庫

第三行: 也是所有使用了 【自定義訊息】的程式都要新增的,程式必須新增這個依賴才可以使得內部訊息可用。反之 如果你沒用自定義訊息,你只用新增上面兩行。

回到工作空間 ,catkin_make , 然後 source devel/setup.bash

開三個終端

第乙個: roscore

第二個: rosrun 你的功能包名 person_subsriber //發現沒反應

接著開第三個 : rosrun 你的功能包名 person_publisher

可以看到 subscriber有反應了。。

lucene第三步 建立索引

對所有文件分析得出的語彙單元進行索引,索引的目的是為了搜尋,最終要實現只搜尋被索引的語彙單元從而找到document 文件 注意 建立索引是對語彙單元索引,通過詞語找文件,這種索引的結構叫倒排索引結構。傳統方法是根據檔案找到該檔案的內容,在檔案內容中匹配搜尋關鍵字,這種方法是順序掃瞄方法,資料量大 ...

第三步 移動sprite小精靈

開啟第二步的專案,給遊戲新增敵人enemies 自定義addtarget 函式來完成這項工作 使敵人從螢幕左邊出生,以乙個隨機random的速度向左移動 在helloworldscene.h標頭檔案加入void addtarget 宣告 在helloworldscene.cpp檔案中實現該函式 並新...

新人產品分析 第三步(5)

決定分析報告的細節有很多分別為 文字格式 格式 水印 大小 清晰度 排列 標點符號 合理的分段 正確的使用各種大綱級別,合理使用隔頁 各種符號輔助,這才是乙個專業的產品分析報告。水印 不要在上保留各種水印。但是一些必要的水印需要保留 有版權申明的 資料 機構的原始水印。大小 最小不要低於300畫素 ...