ros创建节点
时间: 2025-03-09 08:12:34 浏览: 38
### 创建节点的方法
在 Robot Operating System (ROS) 中,`rclcpp::Node` 类是一个非常重要的组成部分,它是 ROS2 系统中通信的基本单元,代表着参与 ROS 网络的一个独立实体[^1]。为了创建一个节点,在 C++ 编程环境中通常需要继承 `rclcpp::Node` 并实现特定的功能逻辑。
下面展示了一个简单的例子,演示了如何通过继承 `rclcpp::Node` 来创建一个新的节点:
```cpp
#include "rclcpp/rclcpp.hpp"
class MinimalPublisher : public rclcpp::Node {
public:
MinimalPublisher()
: Node("minimal_publisher") { // 节点名称为 minimal_publisher
RCLCPP_INFO(this->get_logger(), "Node is created");
}
};
int main(int argc, char * argv[]) {
rclcpp::init(argc, argv);
auto node = std::make_shared<MinimalPublisher>();
rclcpp::spin(node); // 进入循环等待回调函数触发
rclcpp::shutdown();
return 0;
}
```
这段代码定义了一个名为 `MinimalPublisher` 的类,该类继承自 `rclcpp::Node`。构造函数初始化时指定了节点的名字 `"minimal_publisher"`,并打印一条消息表示节点已成功创建。最后,在主程序里实例化这个对象,并调用了 `rclcpp::spin()` 函数让节点进入事件处理循环直到收到终止信号为止。
除了上述基本操作外,还可以利用其他特性如服务端口、参数服务器等功能进一步增强节点的能力;同时也可以借助内部审查机制来监控和调整运行期间的日志级别以便更好地支持开发过程中的调试工作][^[^23]。
阅读全文
相关推荐


















