ROS添加节点

1 下载项目源码

(1)这里我使用是哔哩哔哩的博主源码机器人工匠王杰



(2)建立工作空间

在主目录下载建立如下文件夹

catkin_ws----

      ----src

(3)在src目录下下载项目源码



(4)开始尝试编译


  • catkin_make

如果有报错,可以查看报错原因自行解决

2 添加节点


  • catkin_create_pkg ssr_pkg rospy roscpp std_msgs

使用catkin_create_pkg创建了一个名为ssr_pkg的ROS软件包,并添加了rospy、roscpp和std_msgs作为依赖项。这样的命令将创建一个基本的ROS软件包,使其能够使用ROS Python (rospy) 和 ROS C++ (roscpp),同时依赖于ROS标准消息包 (std_msgs)。

具体来说,这个命令执行后会在你的ROS工作空间的src目录下创建一个名为ssr_pkg的文件夹,并在其中生成所需的基本文件结构和配置文件,包括:
CMakeLists.txt: 用于构建ROS软件包的CMake构建脚本。
package.xml : 包含ROS软件包的元数据和依赖项列表。
src文件夹: 包含ROS软件包的源代码文件,你可以在其中编写ROS节点、服务和其他功能。

通过向catkin_create_pkg命令中添加所需的依赖项,你可以告诉ROS软件包需要使用哪些ROS功能库。在你的例子中,你添加了rospy、roscpp和std_msgs作为依赖项,这表示你的软件包将使用Python的ROS功能库、C++的ROS功能库以及ROS标准消息库。

(2)在ssr_pkg的src文件中新建chao_node.cpp文件

输入如下代码:

c 复制代码
#include<ros/ros.h>

int main(int argc, char  *argv[])
{
    ros::init(argc,  argv,  "chao_node");
    printf("小马同学,hello welcome coming Ros!  \n ");
    return 0;
}

在Cmake.txt配置的文本文件里面末尾添加如下两行

cpp 复制代码
add_executable(chao_node  src/chao_node.cpp)
 target_link_libraries(chao_node
  ${catkin_LIBRARIES}
)

chao_node可以换成自己CPP文件的名字

(3)编译运行

在终端启动ROS


  • roscore

运行我们的节点


  • rosrun ssr_pkg chao_node

备注:ROS的节点就是想安卓系统的APP一样,只是在ROS系统上面叫节点(node)

相关推荐
feasibility.21 小时前
ROS2+Gazebo+VLM服务:纯仿真环境下的具身智能闭环系统| 大脑-小脑分离控制
人工智能·机器人·ros·仿真·具身智能·vla·vlm
前网易架构师-高司机3 天前
ROS2 Jazzy+Gazebo Harmonic 环境下,用 URDF 搭建机器人,配置物理属性、插件与桥接,修复车轮和激光雷达故障 (手把手保姆级教程)
开发语言·算法·golang·机器人·ros
charlee444 天前
《GIS基础原理与技术实践》配套案例(Python版)
python·conda·numpy·gis·环境配置
波特率11520013 天前
在ROS2当中两种rmw比较(CycloneDDS和FastDDS)
ros·ros2·dds
kobesdu18 天前
【ROS2实战笔记-19】ROS2 生命周期节点的启动顺序、状态转换陷阱与热备方案
java·前端·笔记·机器人·ros·ros2
波特率11520018 天前
ROS2当中的几个关键的环境变量
机器人·ros·ros2
勤自省18 天前
ROS2从入门到“重启解决”:21讲8~12章踩坑血泪史与核心总结
linux·开发语言·ubuntu·ssh·ros
kobesdu20 天前
【ROS2实战笔记-20】ROS2 bag 录播与时间模拟:从基础操作到高级调试技巧
笔记·机器人·ros·ros2
kobesdu20 天前
【ROS2实战笔记-18】ROS2 通信的隐秘控制:DDS 配置参数如何决定系统性能
网络·人工智能·笔记·机器人·开源·ros·人形机器人