ARTICLE DETAIL

资讯详情

深耕商务建站与企业官网运营的一线实战洞察。

ROS2-节点01

ROS2-节点01 一、Python 节点运行命令python3 ros2_python_node.py 运行 Python 节点脚本ros2 node list 查看节点列表代码骨架import rclpy 导入 ROS2 Python 客户端库from rclpy.node import Node 导入 Node 类rclpy.init() 初始化 ROS2node Node(python_node) 创建节点node.get_logger().info(你好python节点) 输出日志信息rclpy.spin(node) 持续运行节点rclpy.shutdown() 关闭 ROS2日志格式环境变量export RCUTILS_CONSOLE_OUTPUT_FORMAT[{function_name}:{line_number}]:{message} 设置日志输出格式RCUTILS_CONSOLE_OUTPUT_FORMAT rcutils 提供的日志输出模板变量{function_name} 函数名占位符{line_number} 行号占位符{message} 消息内容占位符二、C 节点代码骨架#include rclcpp/rclcpp.hpp 导入 ROS2 C 客户端库rclcpp::init(argc, argv) 初始化 ROS2std::make_sharedrclcpp::Node(cpp_node) 创建节点RCLCPP_INFO(node-get_logger(), Hello c!) 输出日志信息rclcpp::spin(node) 持续运行节点rclcpp::shutdown() 关闭 ROS2CMakeLists.txt修正版cmake_minimum_required(VERSION 3.8) 指定 CMake 最低版本project(ros2_cpp_node) 定义项目名称find_package(rclcpp REQUIRED) 查找 rclcpp 依赖包add_executable(ros2_cpp_node ros2_cpp_node.cpp) 生成可执行文件target_include_directories(ros2_cpp_node PUBLIC ${rclcpp_INCLUDE_DIRS}) 配置头文件路径target_link_libraries(ros2_cpp_node ${rclcpp_LIBRARIES}) 链接库编译与运行cmake . 生成 Makefilemake 编译cmake . | grep rclcpp 过滤 rclcpp 相关输出ros2 node info /cpp_node 查看节点详细信息三、关键要点节点三件套 init → 创建 Node → spin → shutdownC 与 Python 差异 C 需 CMake 配置头文件路径和链接库易错点 CMake 中链接库用 target_link_libraries不是 target_link_directories调试工具 ros2 node list / ros2 node info
返回列表
PREV
查看更多资讯
NEXT
返回资讯列表