1.准备
无论是使用C++还是Python编写ROS2程序,都需要依赖于工作空间,在此,我们先实现工作空间的创建与编译,打开终端,输入如下指令:
mkdir -p ws00_helloworld/src #创建工作空间以及子级目录 src,工作空间名称可以自定义
cd ws00_helloworld #进入工作空间
colcon build #编译
该指令创建了一个命名为 p ws00_helloworld 的工作空间及其子级目录 src
上述指令执行完毕,将创建ws00_helloworld目录,且该目录下包含build、install、log、src共四个子级目录(编译后自动生成另外三个)。
2.创建功能包
首先需要进入ws00_helloworld/src目录(通过如下指令)
cd ws00_helloworld/src
然后使用如下指令创建一个python功能包:
ros2 pkg create pkg02_helloworld_py --build-type ament_python --dependencies rclpy --node-name helloworld
执行完毕,在src目录下将生成一个名为pkg02_helloworld_py的目录,且目录中已经默认生成了一些子级文件与文件夹。
3.编辑源文件
进入pkg02_helloworld_py/pkg02_helloworld_py目录,该目录下有一helloworld.py文件,修改文件内容如下:
import rclpy
def main():
# 初始化 ROS2
rclpy.init()
# 创建节点
node = rclpy.create_node("helloworld_py_node")
# 输出文本
node.get_logger().info("hello world!")
# 释放资源
rclpy.shutdown()
if __name__ == '__main__':
main()
4.编译
以下指令需要在工作空间中执行,由于上面还在src 中,因此可以用下面指令回到工作空间
cd ..
终端下进入到工作空间,执行如下指令:
colcon build
5.执行
终端下进入到工作空间,执行如下指令:
. install/setup.bash//刷新环境变量
ros2 run pkg02_helloworld_py helloworld
这样便是完成了
参考于---赵虚左老师的课程
关于环境变量可以看一下这篇文章 http://t.csdnimg.cn/CIpkghttp://t.csdnimg.cn/CIpkg