1.定义msg文件
功能包下新建 msg 目录,添加文件 Person.msg
文件内容

string name
uint16 age
float64 height

2.编辑配置文件
package.xml中添加编译依赖与执行依赖
<build_depend>message_generation</build_depend>
<exec_depend>message_runtime</exec_depend>
CMakeLists.txt编辑 msg 相关配置

find_package(catkin REQUIRED COMPONENTSroscpprospystd_msgsmessage_generation
)
# 需要加入 message_generation,必须有 std_msgs
## 配置 msg 源文件
add_message_files(FILESPerson.msg
)
# 生成消息时依赖于 std_msgs
generate_messages(DEPENDENCIESstd_msgs
)
#执行时依赖
catkin_package(
#  INCLUDE_DIRS include
#  LIBRARIES demo02_talker_listenerCATKIN_DEPENDS roscpp rospy std_msgs message_runtime
#  DEPENDS system_lib
)
add_executable(pub_node src/persion_msg_pub_node.cpp)
add_executable(sub_node src/persion_msg_sub_node.cpp)
#让自定义消息优先编译生成对应头文件,这样在使用的时候防止显示未定义
add_dependencies(pub_node ${PROJECT_NAME}_generate_messages_cpp)
add_dependencies(sub_node ${PROJECT_NAME}_generate_messages_cpp)
target_link_libraries(pub_node ${catkin_LIBRARIES}
)
target_link_libraries(sub_node ${catkin_LIBRARIES}
)

pub_node.cpp

#include "ros/ros.h"
#include "persion_msg/Persion.h"int main(int argc, char *argv[])
{ros::init(argc, argv, "demo4");ros::NodeHandle nh;ros::Publisher pub = nh.advertise<persion_msg::Persion>("pub_persion_msg",10);persion_msg::Persion persion;persion.age = 30;persion.name = "songjian";persion.height = 170;ros::Rate rate(20);while (ros::ok())
{pub.publish(persion);rate.sleep();ros::spinOnce();
}return 0;
}

sub_node.cpp

#include "ros/ros.h"
#include "persion_msg/Persion.h"void Dopersion(const persion_msg::Persion::ConstPtr & msg){ROS_INFO("name: %s age:%d height:%.2f", msg->name.c_str(), msg->age, msg->height);}int main(int argc, char *argv[])
{ros::init(argc, argv, "demo4_sub");ros::NodeHandle nh;ros::Subscriber sub = nh.subscribe("pub_persion_msg", 10, Dopersion);ros::spin();return 0;
}

vscode自定义消息配置相关推荐

  1. golang 同一个包中函数互相调用报错 undefined 以及在 VSCode 中配置右键执行整个包文件

    1. 代码结构 demo 文件夹下有两个文件,分别为 hello.go 和 main.go ,结构如下: wohu@wohu:~/GoCode/src$ tree demo/ demo/ ├── he ...

  2. golang select default continue_Golang+VSCode环境配置

    安装golang.git golang官网下载Go语言安装包,安装.默认在 C:Go 官网下载git,安装.默认在C:Program FilesGit 配置环境变量 用户环境变量 新建 GOBIN 值 ...

  3. Go语言vscode环境配置

    Go语言vscode环境配置 此教程在GO已经安装成功的前提下. 安装vscode扩展 在vscode扩展里面搜索go,然后下载扩展. 安装go 插件 在$GOPATH目录下创建bin,pkg,src ...

  4. vs在linux下的环境搭建,linux下vscode环境配置

    文章目录 linux下vscode环境配置 编译器,调试器安装 sudo apt update #通过以下命令安装编译器和调试器 sudo apt install build-essential gd ...

  5. ftp文件传输 vscode_在vscode中配置ftp

    在vscode中配置ftp 安装ftp插件 在vscode扩展中搜索 FTP-Sync 并安装. 启用插件 在vscode 项目中按下F1按钮启动命令行工具,输入ftp ,选择 FTP-Sync:in ...

  6. vscode中配置LeetCode插件的教程(愉快刷题)

    转载于脚本之家,原链接为https://www.jb51.net/article/183720.htm 大家好,今早在B站看到up主的vscode里藏了leetcode插件,这才知道原来还有这款神器. ...

  7. VsCode同步配置到另一台设备

    VsCode同步配置到另一台设备 一.概述 二.步骤简单描述 三.具体操作步骤 1. 打开[GitHub](https://github.com/),生成token和gist id (1)生成toke ...

  8. VSCode下配置R语言环境(Windows)

    本文介绍Windows下在VSCode中使用R语言的配置过程. 最后更新日期 2021/12/2 文章目录 更新信息 系统环境 VSCode插件安装 python(3)下安装radian R 包安装 ...

  9. 在VSCode中配置并调试R语言.r文件

    一.在VSCode中配置R语言 1. 安装R解释器 访问网址下载 选择安装目录时,目录中不要有中文字符,否则就很可能出问题. 2. 安装radian(可有可无) radian只是一个让交互命令行更漂亮 ...

最新文章

  1. 顺序表-顺序表表示集合-差集(for + while ,不断遍历)
  2. 轻松使用OpenCV Python控制Webcam,读取Barcode
  3. 图片做背景撑开div
  4. 高一计算机网络技术应用计划,高一计算机网络应用基础教学计划
  5. python十点半游戏代码_Python实现Pig Latin小游戏实例代码
  6. AndroidStudio实用快捷键组合
  7. C中无警告输出size_t的值
  8. python遗传算法解决分配问题
  9. python人工智能算法的方式_Python与人工智能
  10. ps画笔工具、填充选区文字工具、合成
  11. 计算机桌面文字重影,为什么电脑屏幕上的字老是重影,该怎么调?
  12. 软件测试工程师需要掌握哪些技能呢?
  13. TeamTalk的windows客户端流程
  14. [4G+5G专题-137]: 终端 - 射频前端(滤波器、功率放大器)详解
  15. 第三章 初级像差理论与像差校正(理解有误,请不吝指正)
  16. 是时候更新Android Studio 3.5了!不信,你看~
  17. 域渗透|NTLM 中继攻击
  18. 论文:Detecting and Correcting for Label Shift with Black Box Predictors(BBSE)
  19. Springboot跨域配置报错:When allowCredentials is true, allowedOrigins cannot contain the specia
  20. 斯坦福大学计算机排名多少,斯坦福大学全球排名第几

热门文章

  1. Janus videoroom 视频录制
  2. 11月小报|读小报,涨知识
  3. JS 超大文件上传解决方案:分片断点上传(一)
  4. 万豪国际扩大北京奢华酒店布局,JW万豪将落户东城区
  5. 有用的一些链接Powerstore VxRail
  6. 点云损失函数Chamfer Distance 和 Earth Mover‘s Distance
  7. 基于寒武纪CNCodec 做视频编解码遇到的一些问题
  8. 最便捷的港股/A股/美股实时行情API【免费-免费-免费滴,已应用到策略中】
  9. 如何正确判断USB等接口的接线顺序
  10. 船舶物资与市场杂志船舶物资与市场杂志社船舶物资与市场编辑部2022年第7期目录