news 2026/5/11 6:47:07

SpireMS的std_msgs消息详解

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
SpireMS的std_msgs消息详解

std_msgs 消息详解

这篇文档梳理当前仓库中所有std_msgs::*消息类型,内容以源码中的消息模板和 JSON Schema 为准。

目标:

  • 人能快速查字段
  • AI 能直接提取结构和含义
  • 内容尽量简单直接

说明:

  • 本文主要依据spirems/json_msgs/std_msgs/*.json(消息初值)
  • 同时参考spirems/json_schemas/std_msgs/*.json(消息类型说明)

1. 消息总览

当前源码中共有 11 个std_msgs消息:

消息类型说明
std_msgs::Boolean布尔值
std_msgs::BooleanMultiArray布尔数组
std_msgs::Clock时钟(仅时间戳)
std_msgs::KeyValuePair键值对
std_msgs::Log日志消息
std_msgs::Null空消息
std_msgs::Number数值(浮点)
std_msgs::NumberMultiArray数值数组
std_msgs::String字符串
std_msgs::StringMultiArray字符串数组
std_msgs::SystemStatus系统状态监控

2. 通用约定

2.1type

每个消息模板里都有:

"type":"std_msgs::某个类型"

作用:标识消息类型,便于运行时分发和校验。

2.2timestamp

所有std_msgs消息都带:

"timestamp":0.0

含义:时间戳,单位是秒(Unix 时间)。初值为0.0


3. 消息详解

3.1 Boolean — 布尔值

用途:传递单个布尔状态(开关、标志位等)。

初值模板(spirems/json_msgs/std_msgs/Boolean.json):

{"type":"std_msgs::Boolean","timestamp":0.0,"data":false}

字段说明

字段类型初值说明
typestring"std_msgs::Boolean"消息类型标识
timestampnumber0.0时间戳(秒)
databoolfalse布尔值

3.2 BooleanMultiArray — 布尔数组

用途:传递多个布尔值,如批量标志位。

初值模板(spirems/json_msgs/std_msgs/BooleanMultiArray.json):

{"type":"std_msgs::BooleanMultiArray","timestamp":0.0,"data":[false]}

字段说明

字段类型初值说明
typestring"std_msgs::BooleanMultiArray"消息类型标识
timestampnumber0.0时间戳(秒)
databool[][false]布尔数组

3.3 Clock — 时钟

用途:传递时间信息本身,无额外数据载荷。

初值模板(spirems/json_msgs/std_msgs/Clock.json):

{"type":"std_msgs::Clock","timestamp":0.0}

字段说明

字段类型初值说明
typestring"std_msgs::Clock"消息类型标识
timestampnumber0.0当前时钟值(秒)

注意:此消息仅有typetimestamp,无data字段。时钟信息即timestamp本身。


3.4 KeyValuePair — 键值对

用途:传递通用键值对数据(参数、配置、属性等)。

初值模板(spirems/json_msgs/std_msgs/KeyValuePair.json):

{"type":"std_msgs::KeyValuePair","timestamp":0.0,"key":"","value":""}

字段说明

字段类型初值说明
typestring"std_msgs::KeyValuePair"消息类型标识
timestampnumber0.0时间戳(秒)
keystring""键名
valuestring""值(字符串形式)

3.5 Log — 日志消息

用途:传递日志信息,包含级别、内容、来源文件和行号。

初值模板(spirems/json_msgs/std_msgs/Log.json):

{"type":"std_msgs::Log","timestamp":0.0,"level":2,"message":"","name":"","file":"","line":0}

字段说明

字段类型初值说明
typestring"std_msgs::Log"消息类型标识
timestampnumber0.0日志时间戳(秒)
levelint2日志级别(见下方枚举)
messagestring""日志内容
namestring""进程或节点名称
filestring""源文件名
lineint0源文件行号(≥0)

日志级别枚举 (spirems.LogLevel)

常量值名称说明
0UNKNOWN未知级别
1DEBUG调试信息
2INFO一般信息(默认初值)
3WARNING警告
4ERROR错误
5FATAL严重错误

来源:JSON Schema 定义在spirems/json_schemas/std_msgs/Log.json


3.6 Null — 空消息

用途:无数据载荷的占位消息,可用于心跳、信令等场景。

初值模板(spirems/json_msgs/std_msgs/Null.json):

{"type":"std_msgs::Null","timestamp":0.0}

字段说明

字段类型初值说明
typestring"std_msgs::Null"消息类型标识
timestampnumber0.0时间戳(秒)

注意:与Clock一样仅含typetimestamp。语义上Null表示"无意义载荷",Clock表示"时间信息"。


3.7 Number — 数值

用途:传递单个浮点数值(温度、速度、比率等)。

初值模板(spirems/json_msgs/std_msgs/Number.json):

{"type":"std_msgs::Number","timestamp":0.0,"data":0.0}

字段说明

字段类型初值说明
typestring"std_msgs::Number"消息类型标识
timestampnumber0.0时间戳(秒)
datanumber0.0浮点数值

3.8 NumberMultiArray — 数值数组

用途:传递多个浮点数值(传感器读数序列、向量等)。

初值模板(spirems/json_msgs/std_msgs/NumberMultiArray.json):

{"type":"std_msgs::NumberMultiArray","timestamp":0.0,"data":[0.0]}

字段说明

字段类型初值说明
typestring"std_msgs::NumberMultiArray"消息类型标识
timestampnumber0.0时间戳(秒)
datanumber[][0.0]浮点数值数组

3.9 String — 字符串

用途:传递单个字符串(文本、JSON 字串、命令等)。

初值模板(spirems/json_msgs/std_msgs/String.json):

{"type":"std_msgs::String","timestamp":0.0,"data":""}

字段说明

字段类型初值说明
typestring"std_msgs::String"消息类型标识
timestampnumber0.0时间戳(秒)
datastring""字符串内容

3.10 StringMultiArray — 字符串数组

用途:传递多个字符串(标签列表、文件名列表等)。

初值模板(spirems/json_msgs/std_msgs/StringMultiArray.json):

{"type":"std_msgs::StringMultiArray","timestamp":0.0,"data":[""]}

字段说明

字段类型初值说明
typestring"std_msgs::StringMultiArray"消息类型标识
timestampnumber0.0时间戳(秒)
datastring[][""]字符串数组

3.11 SystemStatus — 系统状态监控

用途:传递系统运行时状态(CPU、内存、磁盘、网络、进程信息)。

初值模板(spirems/json_msgs/std_msgs/SystemStatus.json):

{"type":"std_msgs::SystemStatus","timestamp":0.0,"cpu_usage":0,"cpu_temp":0,"mem_usage":0,"disk_free":0,"disk_write":0,"disk_read":0,"net_sent":0,"net_recv":0,"top_processes_by_cpu":[],"top_processes_by_mem":[],"top_processes_by_io":[]}

字段说明

字段类型初值说明
typestring"std_msgs::SystemStatus"消息类型标识
timestampnumber0.0采样时间戳(秒)
cpu_usageint0CPU 使用率(百分比,0-100)
cpu_tempint0CPU 温度(摄氏度)
mem_usageint0内存使用率(百分比,0-100)
disk_freeint0磁盘可用空间(MB)
disk_writeint0磁盘写入速率(KB/s)
disk_readint0磁盘读取速率(KB/s)
net_sentint0网络发送速率(KB/s)
net_recvint0网络接收速率(KB/s)
top_processes_by_cpuarray[]CPU 占用最高的进程列表
top_processes_by_memarray[]内存占用最高的进程列表
top_processes_by_ioarray[]IO 最高的进程列表

4. 快速对照表

消息类型是否含data特有字段
Booleanbool
BooleanMultiArraybool[]
Clock
KeyValuePairkey,value
Loglevel,message,name,file,line
Null
Numbernumber
NumberMultiArraynumber[]
Stringstring
StringMultiArraystring[]
SystemStatuscpu_usage,cpu_temp,mem_usage,disk_*,net_*,top_processes_*
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/5/11 6:46:25

GetQzonehistory终极指南:如何5分钟永久备份你的QQ空间青春记忆

GetQzonehistory终极指南:如何5分钟永久备份你的QQ空间青春记忆 【免费下载链接】GetQzonehistory 获取QQ空间发布的历史说说 项目地址: https://gitcode.com/GitHub_Trending/ge/GetQzonehistory 你是否曾担心QQ空间里那些承载青春回忆的说说、照片和留言会…

作者头像 李华
网站建设 2026/5/11 6:42:52

免费解锁B站4K大会员视频:Python开源下载工具完全指南

免费解锁B站4K大会员视频:Python开源下载工具完全指南 【免费下载链接】bilibili-downloader B站视频下载,支持下载大会员清晰度4K,持续更新中 项目地址: https://gitcode.com/gh_mirrors/bil/bilibili-downloader 还在为无法下载B站大…

作者头像 李华
网站建设 2026/5/11 6:40:28

Prometheus监控主机,Grafana成图

全部使用官方 GitHub 源的部署方案,下载链接来自官方,无需镜像。 官方下载地址汇总 组件 官方下载地址 Node Exporter https://github.com/prometheus/node_exporter/releases/download/v1.8.2/node_exporter-1.8.2.linux-amd64.tar.gz Prometheus https…

作者头像 李华
网站建设 2026/5/11 6:32:00

从一篇文章到一个 AI 排毒系统,我花了 7 天

从一篇文章到一个 AI 排毒系统,我花了 7 天阶段 0 → 5,8 条案例,2 分到 85 分。完整历程。阶段 0:种子 2026.5.3 13:05。刷到一篇文章。 《卧底 GEO 公司 30 天:我目睹了 AI 如何被系统性投毒》。作者在一家 GEO 公司…

作者头像 李华
网站建设 2026/5/11 6:20:06

LT8315高压反激转换器设计与优化实践

1. LT8315高压反激转换器设计概述高压反激转换器作为隔离式开关电源的核心拓扑,在工业自动化、医疗设备和通信基站等领域具有不可替代的作用。传统方案通常采用光耦(optocoupler)进行次级到初级的反馈控制,但这种架构存在明显缺陷…

作者头像 李华