diff --git a/document/sphinx-cn/tutorials/plugins/ros2_plugin.md b/document/sphinx-cn/tutorials/plugins/ros2_plugin.md index 87912b997..3eded973d 100644 --- a/document/sphinx-cn/tutorials/plugins/ros2_plugin.md +++ b/document/sphinx-cn/tutorials/plugins/ros2_plugin.md @@ -199,10 +199,10 @@ byte[] data | pub_topics_options | array | 可选 | [] | 发布 Topic 时的规则 | | pub_topics_options[i].topic_name | string | 必选 | "" | Topic 名称,支持正则表达式 | | pub_topics_options[i].qos | map | 可选 | - | QOS 配置 | -| pub_topics_options[i].qos.history | string | 可选 | "default" | QOS 的历史记录选项
keep_last:保留最近的记录(缓存最多 N 条记录,可通过队列长度选项来配置)
keep_all:保留所有记录(缓存所有记录,但受限于底层中间件可配置的最大资源)
default:使用系统默认 | -| pub_topics_options[i].qos.depth | int | 可选 | 10 | QOS 的队列深度选项(只能与Keep_last配合使用) | -| pub_topics_options[i].qos.reliability | string | 可选 | "default" | QOS 的可靠性选项
reliable:可靠的(消息丢失时,会重新发送,反复重传以保证数据传输成功)
best_effort:尽力而为的(尝试传输数据但不保证成功传输,当网络不稳定时可能丢失数据)
default:系统默认 | -| pub_topics_options[i].qos.durability | string | 可选 | "default" | QOS 的持续性选项
transient_local:局部瞬态(发布器为晚连接(late-joining)的订阅器保留数据)
volatile:易变态(不保留任何数据)
default:系统默认 | +| pub_topics_options[i].qos.history | string | 可选 | "keep_last" | QOS 的历史记录选项
keep_last:保留最近的记录(缓存最多 N 条记录,可通过队列长度选项来配置)
keep_all:保留所有记录(缓存所有记录,但受限于底层中间件可配置的最大资源)
default:使用系统默认 | +| pub_topics_options[i].qos.depth | int | 可选 | 1 | QOS 的队列深度选项(只能与Keep_last配合使用) | +| pub_topics_options[i].qos.reliability | string | 可选 | "best_effort" | QOS 的可靠性选项
reliable:可靠的(消息丢失时,会重新发送,反复重传以保证数据传输成功)
best_effort:尽力而为的(尝试传输数据但不保证成功传输,当网络不稳定时可能丢失数据)
default:系统默认 | +| pub_topics_options[i].qos.durability | string | 可选 | "volatile" | QOS 的持续性选项
transient_local:局部瞬态(发布器为晚连接(late-joining)的订阅器保留数据)
volatile:易变态(不保留任何数据)
default:系统默认 | | pub_topics_options[i].qos.deadline | int | 可选 | -1 | QOS 的后续消息发布到主题之间的预期最大时间量选项
需填毫秒级时间间隔,填 -1 为不设置,按照系统默认 | | pub_topics_options[i].qos.lifespan | int | 可选 | -1 | QOS 的消息发布和接收之间的最大时间量(单位毫秒)选项
而不将消息视为陈旧或过期(过期的消息被静默地丢弃,并且实际上从未被接收
填-1保持系统默认 不设置 | | pub_topics_options[i].qos.liveliness | string | 可选 | "default" | QOS 的如何确定发布者是否活跃选项
automatic:自动(ROS2 会根据消息发布和接收的时间间隔来判断)
manual_by_topic:需要发布者定期声明
default:保持系统默认 | @@ -210,10 +210,10 @@ byte[] data | sub_topics_options | array | 可选 | [] | 订阅 Topic 时的规则 | | sub_topics_options[i].topic_name | string | 必选 | "" | Topic 名称,支持正则表达式 | | sub_topics_options[i].qos | map | 可选 | - | QOS 配置 | -| sub_topics_options[i].qos.history | string | 可选 | "default" | QOS 的历史记录选项
keep_last:保留最近的记录(缓存最多 N 条记录,可通过队列长度选项来配置)
keep_all:保留所有记录(缓存所有记录,但受限于底层中间件可配置的最大资源)
default:使用系统默认 | -| sub_topics_options[i].qos.depth | int | 可选 | 10 | QOS 的队列深度选项(只能与Keep_last配合使用) | -| sub_topics_options[i].qos.reliability | string | 可选 | "default" | QOS 的可靠性选项
reliable:可靠的(消息丢失时,会重新发送,反复重传以保证数据传输成功)
best_effort:尽力而为的(尝试传输数据但不保证成功传输,当网络不稳定时可能丢失数据)
default:系统默认 | -| sub_topics_options[i].qos.durability | string | 可选 | "default" | QOS 的持续性选项
transient_local:局部瞬态(发布器为晚连接(late-joining)的订阅器保留数据)
volatile:易变态(不保留任何数据)
default:系统默认 | +| sub_topics_options[i].qos.history | string | 可选 | "keep_last" | QOS 的历史记录选项
keep_last:保留最近的记录(缓存最多 N 条记录,可通过队列长度选项来配置)
keep_all:保留所有记录(缓存所有记录,但受限于底层中间件可配置的最大资源)
default:使用系统默认 | +| sub_topics_options[i].qos.depth | int | 可选 | 1 | QOS 的队列深度选项(只能与Keep_last配合使用) | +| sub_topics_options[i].qos.reliability | string | 可选 | "best_effort" | QOS 的可靠性选项
reliable:可靠的(消息丢失时,会重新发送,反复重传以保证数据传输成功)
best_effort:尽力而为的(尝试传输数据但不保证成功传输,当网络不稳定时可能丢失数据)
default:系统默认 | +| sub_topics_options[i].qos.durability | string | 可选 | "volatile" | QOS 的持续性选项
transient_local:局部瞬态(发布器为晚连接(late-joining)的订阅器保留数据)
volatile:易变态(不保留任何数据)
default:系统默认 | | sub_topics_options[i].qos.deadline | int | 可选 | -1 | QOS 的后续消息发布到主题之间的预期最大时间量选项
需填毫秒级时间间隔,填 -1 为不设置,按照系统默认 | | sub_topics_options[i].qos.lifespan | int | 可选 | -1 | QOS 的消息发布和接收之间的最大时间量(单位毫秒)选项
而不将消息视为陈旧或过期(过期的消息被静默地丢弃,并且实际上从未被接收
填-1保持系统默认 不设置 | | sub_topics_options[i].qos.liveliness | string | 可选 | "default" | QOS 的如何确定发布者是否活跃选项
automatic:自动(ROS2 会根据消息发布和接收的时间间隔来判断)
manual_by_topic:需要发布者定期声明
default:保持系统默认 | diff --git a/src/plugins/ros2_plugin/ros2_channel_backend.h b/src/plugins/ros2_plugin/ros2_channel_backend.h index 34f5852ab..ae28b14ba 100644 --- a/src/plugins/ros2_plugin/ros2_channel_backend.h +++ b/src/plugins/ros2_plugin/ros2_channel_backend.h @@ -32,12 +32,12 @@ class Ros2ChannelBackend : public runtime::core::channel::ChannelBackendBase { * @param keep_all:保留所有记录(缓存所有记录,但受限于底层中间件可配置的最大资源) * @param default:系统默认 */ - std::string history = "default"; + std::string history = "keep_last"; /** * @brief 队列深度选项(只能与Keep_last配合使用) */ - int32_t depth = 10; + int32_t depth = 1; /** * @brief 可靠性选项 @@ -45,7 +45,7 @@ class Ros2ChannelBackend : public runtime::core::channel::ChannelBackendBase { * @param best_effort:尽力而为的(尝试传输数据但不保证成功传输,当网络不稳定时可能丢失数据) * @param default:系统默认 */ - std::string reliability = "default"; + std::string reliability = "best_effort"; /** * @brief 持续性选项 @@ -53,7 +53,7 @@ class Ros2ChannelBackend : public runtime::core::channel::ChannelBackendBase { * @param volatile:易变态(不保留任何数据) * @param default:系统默认 */ - std::string durability = "default"; + std::string durability = "volatile"; /** * @brief 后续消息发布到主题之间的预期最大时间量