px-ros-pkgのノードを起動しながら
rostopic type /トピック名
で型を調べると
px_comm/OpticalFlow
となった.その中身は
rosmsg show px_comm/OpticalFlow
std_msgs/Header header
uint32 seq
time stamp
string frame_id
float32 ground_distance
int16 flow_x
int16 flow_y
float32 velocity_x
float32 velocity_y
uint8 quality
Subscriberに必要な資料はこんな感じだ.つまずきポイントはpx_commというパッケージ.px4flow専用のカスタムメッセージ定義である.同じcatkinワークスペースにpx-ros_pkgがgit cloneされていれば,
~/catkin_ws/devel/include
の中にpx_commがある.なので,このカスタムメッセージ定義をしたいパッケージのCMakeLists.txtに
find_package(
/*ここから先を追加する*/
ros_cpp
std_msgs
sensor_msgs
image_transport
px_comm
)
を 書き込んでおく必要がある.あとは#include<px_comm/OpticalFlow.h>をcppファイルなりに追加しておけばpx_comm::OpticalFlowのメッセージ型が使える.
0 件のコメント:
コメントを投稿