ROS2系统学习3---第一个“Hello World”程序---即工作空间创建与包创建

工作空间创建

ROS2创建工作空间和ROS1基本相同。

首先创建工作空间文件夹,命名为ROS2(可以命名别的),然后在该文件夹下新建一个src文件夹,直接退回到ROS2文件夹下,运行如下代码进行编译。

colcon build

编译完成后就会在工作空间中生成build、install、log三个文件夹。

打开install文件夹,可以看到与ROS1的devel很类似的几个文件。

以上我们就完成了ROS2工作空间的创建。

对比ROS1,可以看到ROS2工作空间的创建基本一致,只是少了初始化的环节,并且包的编译从catkin_make改成了colcon build。

包创建

ROS2包的创建过程也和ROS1差不多,就是进入之前创建的src,然后通过以下命令创建:

ros2 pkg create --build-type ament_cmake --node-name my_node my_package

其中my_node是节点的名称,my_package是包的名称。运行完命令可以看到在生成的my_package文件夹下多出了一个src的文件夹,该文件夹中的my_node.cpp文件是ROS2自动生成的“Hello World”程序。

生成完后可以再回到工作空间编译一下:

colcon build

就生成了节点,通过将节点加入到环境变量:

echo 'source /home/parallels/ROS2/install/setup.zsh' >> ~/.zshrc
source ~/.zshrc

即可运行该节点:

ROS2 ros2 run my_package my_node
  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
ROS(Robot Operating System)是一个用于构建机器人应用程序的开源框架。下面是创建一个ROShelloworld程序的步骤: 1. 首先,确保你已经安装了ROS。可以通过以下命令检查ROS是否已经安装: ``` $ rosversion -d ``` 2. 创建一个ROS工作空间(workspace)。在终端中执行以下命令: ``` $ mkdir -p ~/catkin_ws/src $ cd ~/catkin_ws/ $ catkin_make ``` 3. 进入到src目录,并创建一个新的ROS软件(package)。执行以下命令: ``` $ cd ~/catkin_ws/src $ catkin_create_pkg hello_world rospy std_msgs ``` 4. 进入到刚创建的软件目录,并创建一个Python脚本文件。执行以下命令: ``` $ cd ~/catkin_ws/src/hello_world/src $ touch hello.py $ chmod +x hello.py ``` 5. 使用文本编辑器打开hello.py文件,并将以下代码复制粘贴到文件中: ```python #!/usr/bin/env python import rospy from std_msgs.msg import String def hello_callback(msg): rospy.loginfo("Received message: %s", msg.data) if __name__ == '__main__': rospy.init_node('hello_node') rospy.Subscriber('hello_topic', String, hello_callback) rospy.spin() ``` 6. 保存并关闭文件。 7. 返回到catkin_ws目录,并编译ROS软件。执行以下命令: ``` $ cd ~/catkin_ws/ $ catkin_make ``` 8. 运行ROS节点。在终端中执行以下命令: ``` $ roscore ``` 9. 在另一个终端中,发布一个消息到hello_topic话题。执行以下命令: ``` $ rostopic pub hello_topic std_msgs/String "Hello, World!" ``` 10. 在第一个终端中,运行hello.py脚本。执行以下命令: ``` $ rosrun hello_world hello.py ``` 11. 现在,你应该能够在第一个终端中看到输出,显示收到的消息。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值