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)

相关推荐
古月居GYH1 天前
ROS一键安装脚本
人工智能·机器人·ros
DeepAlchemy1 天前
ROSSERIAL与Arduino IDE交叉开发(UBUNTU环境,包含ESP32、arduino nano)
c++·单片机·ros·rosserial
Mr.Winter`4 天前
轨迹优化 | 基于Savitzky-Golay滤波的无约束路径平滑(附ROS C++/Python仿真)
人工智能·算法·机器人·自动驾驶·ros·ros2·数值优化
huanggang9826 天前
在Ubuntu22.04上源码构建ROS noetic环境
ros·ubuntu 22.04
找不着地窖的皮险家7 天前
ROS Action
c++·机器人·ros
Code-world-112 天前
Ubuntu 的 ROS 操作系统安装与测试
linux·ubuntu·ros·noetic ninjemy
饮啦冰美式15 天前
ROS2humble版本使用colcon构建包
ros
SpikeKing15 天前
LLM - 使用 LLaMA-Factory 微调大模型 环境配置与训练推理 教程 (1)
人工智能·llm·大语言模型·llama·环境配置·llamafactory·训练框架
knighthood200115 天前
解决:ros进行gazebo仿真,rviz没有显示传感器数据
c++·ubuntu·ros
knighthood200117 天前
ros中仿真编写launch时robot_state_publisher,output参数
c++·ubuntu·ros