ARTICLE DETAIL

建站实战干货

来自一线的建站与推广经验沉淀,每一条都经过真实交付验证。

ROS第一个程序——helloworld

2026/9/8 18:11:30 拓冰建站 浏览量
ROS第一个程序——helloworld

目录

一、工作空间的创建

1.创建工作空间并初始化

2.进入 src 创建 ros 包并添加依赖

二、C++实现helloworld

C++源码实现

 编辑 ros 包下的 Cmakelist.txt文件

进入工作空间目录并编译 

执行 

三、python实现helloworld

进入 ros 包添加 scripts 目录并编辑 python 文件

新建 python 文件 

为 python 文件添加可执行权限

编辑 ros 包下的 CamkeList.txt 文件

进入工作空间目录并编译

执行


一、工作空间的创建

1.创建工作空间并初始化

mkdir -p 自定义空间名称/src
cd 自定义空间名称
catkin_make

        首先会创建一个工作空间以及一个 src 子目录,然后再进入工作空间调用 catkin_make命令编译。 

2.进入 src 创建 ros 包并添加依赖

cd src
catkin_create_pkg 自定义ROS包名 roscpp rospy std_msgs

        上述命令,会在工作空间下生成一个功能包,该功能包依赖于 roscpp、rospy 与 std_msgs,其中roscpp是使用C++实现的库,而rospy则是使用python实现的库,std_msgs是标准消息库,创建ROS功能包时,一般都会依赖这三个库实现。 

二、C++实现helloworld

cd 自定义的包

C++源码实现

#include "ros/ros.h"int main(int argc, char *argv[])
{//执行 ros 节点初始化ros::init(argc,argv,"hello");//创建 ros 节点句柄(非必须)ros::NodeHandle n;//控制台输出 hello worldROS_INFO("hello world!");return 0;
}

 编辑 ros 包下的 Cmakelist.txt文件

add_executable(步骤3的源文件名src/步骤3的源文件名.cpp
)
target_link_libraries(步骤3的源文件名${catkin_LIBRARIES}
)

 

进入工作空间目录并编译 

cd 自定义空间名称
catkin_make

执行 

先启动命令行1:
roscore
再启动命令行2:
cd 工作空间
source ./devel/setup.bash
rosrun 包名 C++节点

 

三、python实现helloworld

进入 ros 包添加 scripts 目录并编辑 python 文件

cd ros包
mkdir scripts

新建 python 文件 

#! /usr/bin/env pythonimport rospyif __name__ == "__main__":rospy.init_node("Hello")rospy.loginfo("Hello World!!!!")

为 python 文件添加可执行权限

chmod +x 自定义文件名.py

编辑 ros 包下的 CamkeList.txt 文件

catkin_install_python(PROGRAMS scripts/自定义文件名.pyDESTINATION ${CATKIN_PACKAGE_BIN_DESTINATION}
)

 

进入工作空间目录并编译

先启动命令行1:
roscore
再启动命令行2:
cd 工作空间
source ./devel/setup.bash
rosrun 包名 自定义文件名.py

执行