【ROS2】概念:中级-组件

 目录

  • ROS 1 - 节点 vs. 节点组

  • ROS 2 - 统一 API

  •  编写组件

  •  使用组件

  •  实际应用

ROS 1 - 节点 vs. 节点组 

在 ROS 1 中,您可以将代码编写为 ROS node 或 ROS nodelet 。ROS 1 节点被编译成可执行文件。另一方面,ROS 1 nodelet 被编译成共享库,然后由容器进程在运行时加载。

ROS 2 - 统一 API 

在 ROS 2 中,推荐的编写代码方式类似于 nodelet - 我们称之为 Component 。这使得将常见概念添加到现有代码中变得容易,比如生命周期 https://design.ros2.org/articles/node_lifecycle.html 。在 ROS 1 中最大的缺点是有不同的 API,而在 ROS 2 中避免了这一点,因为两种方法使用相同的 API。

 注意

仍然可以使用“编写自己的主程序”的节点样式,但对于常见情况,不推荐这样做。

通过将流程布局设为部署时的决策,用户可以选择:

  • 在单独的进程中运行多个节点,具有进程/故障隔离的好处以及更容易调试单个节点

  • 在单个进程中运行多个节点,具有较低的开销,并且可选择更高效的通信(参见进程内通信 https://docs.ros.org/en/jazzy/Tutorials/Demos/Intra-Process-Communication

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值