当前位置: 首页 > news >正文

ROS学习记录:自定义消息类型

前言

当我们需要传输一些特殊的数据时,且官方的消息包无法满足需求,我们便可以自己定义一个消息类型

实验步骤

在这里插入图片描述

一、在终端输入cd ~/catkin_ws1/src进入工作空间中src目录

在这里插入图片描述

二、输入catkin_create_pkg qq_msgs roscpp rospy std_msgs message_generation message_runtime,创建消息包

在这里插入图片描述

三、输入code .打开VScode

在这里插入图片描述

四、在刚刚创建的qq_msgs消息包下新创建一个文件夹名叫msg

在这里插入图片描述

五、在msg消息文件夹下面创建一个消息类型文件,名叫Carry.msg

在这里插入图片描述

六、输入如下内容,这样一个新的消息格式就定义好了

在这里插入图片描述

七、打开CMakeLists.txt文件给这个新的消息类型设置编译规则,首先做如下图的修改

在这里插入图片描述

八、再打开这里的注释,这里说的是我们新定义的消息包类型所需要依赖的其它消息包列表,目前只用到了std_msgs里的stringint,所以只需要依赖std_msgs。

在这里插入图片描述

九、再打开这里的注释,这一句的目的是,让依赖我们新定义的消息包的其它软件包能够在运行时使用我们新定义的消息类型

在这里插入图片描述

十、再打开package.xml对如下进行补全

在这里插入图片描述

十一、打开终端,进入工作空间,输入catkin_make进行编译

在这里插入图片描述

十二、编译成功

在这里插入图片描述

十三、先输入source ./devel/setup.bash设置ROS的环境变量,以便在当前的终端窗口中正确运行ROS软件包。再输入rosmsg show qq_msgs/Carry便可看到我们自定义的消息包结构

在这里插入图片描述

http://www.lryc.cn/news/365116.html

相关文章:

  • 创新实训2024.06.06日志:部署web服务
  • 使用C++实现YOLO图像分类:从环境搭建到性能评估的完整指南
  • Linux中安装Docker,并使用Docker安装MySQL和Redis
  • 期货短线交易的核心技术是什么
  • VSCode+Vite+Vue3断点调试
  • RPC框架原理(一)
  • LCTF 2018 bestphp‘s revenge
  • MySQL主从搭建--保姆级教学
  • Modbus通信协议--RTU
  • 我是大学生,应该选系统运维方向,还是web开发方向?
  • Qt窗口与对话框
  • 【笔记】Windows 中 一键部署本地私人专属知识库:MaxKB + Docker + MaxKB docker + Ollama
  • 【Vue】scoped解决样式冲突
  • word模板内容替换
  • docker安装和使用
  • 【AIGC X UML 落地】通过多智能体实现自然语言绘制UML图
  • C++访问越界
  • MATLAB format
  • Face Forgery Detection by 3D Decomposition
  • socket网络编程——多进程、多线程处理并发
  • C++---模板进阶(非类型模板参数,模板的特化,模板分离编译)
  • 锂电池寿命预测 | Matlab基于SSA-SVR麻雀优化支持向量回归的锂离子电池剩余寿命预测
  • 整理好了!2024年最常见 20 道 Kafka面试题(十)
  • Paper Survey——3DGS-SLAM
  • 搜索与图论:深度优先搜索
  • AMD显卡和英伟达显卡哪个好?
  • 5.31.8 学习深度特征以实现判别定位
  • uniapp小程序多线程 Worker 实战【2024】
  • C语言基础——数组(2)
  • 封装PHP用于发送GET和POST请求的公共方法