Administrator
发布于 2025-08-22 / 3 阅读
0
0

ros2学点

ros2

ros

ros2

创建包

catkin_create_pkg

ros2 pkg create

例子

catkin_create_pkg   ssr_pkg   rospy   roscpp  std_msgs

ros2 pkg create --build-type ament_cmake --license Apache-2.0 demo_cpp_pkg(ament_python)

编译

编译 catkin_make 或 catkin build

colcon build

创建节点

ros2 pkg create --build-type ament_cmake --license Apache-2.0 

cmakelists添加

find_package(rclcpp REQUIRED)

add_executable(启动名字 cpp文件地址) 
ament_target_dependencies(启动名字 rclcpp)

install(TARGETS 启动名字 
  DESTINATION lib/${PROJECT_NAME}
)

add_executable( [source1] [source2] [source3] ...)

写代码

头文件

/opt/ros/humble/include/**
#include "rclcpp/rclcpp.hpp"
    // 步骤1: 初始化ROS 2客户端库
    rclcpp::init(argc, argv);
    // 步骤2: 创建名为"chao_node"的节点
    auto node = std::make_shared<rclcpp::Node>("xxx_node");
    // 步骤3: 使用节点(这里只是打印日志)
    RCLCPP_INFO(node->get_logger(), "节点已启动!");
    // 步骤4: 让节点持续运行,等待消息和请求
    rclcpp::spin(node);
    // 步骤5: 关闭ROS 2客户端库
    rclcpp::shutdown();

编译(对包的)

pkg路径下

colcon build
source install/setup.bash

ros2 run 包名 启动名

ros2 run demo_cpp_pkg cpp_node

ros1的包都在catkin_ws/src 中 可以自己命名为xxx_pkg

package.xml 这个文件包包括依赖信息

写新的的时候要注意添加

gedit ~/.bashrc
source /opt/ros/humble/setup.bash

在 ~/.bashrc 中添加 setup.bash 文件的源(source)命令,是为了在每次打开新的终端时自动设置ROS(ROS 1或ROS 2)或其他软件框架的工作环境

source ~/ros_ws/devel/setup.bash     # ROS 1
source ~/ros2_ws/install/setup.bash  # ROS 2

对代码的

cd build
cmake ../
make
./xxx_node


评论