ROS开发环境搭建(2024.8.4)

随着机器人技术的迅猛发展,机器人操作系统(ROS, Robot Operating System)作为一种开源的机器人中间件,已成为开发和实现机器人应用的重要工具。在这篇文章中,我将介绍如何在Ubuntu上搭建ROS开发环境,尤其是ROS 2的安装和基本配置,使读者能够顺利开始他们的ROS之旅。

安装前准备

在开始之前,请确保你的系统是Ubuntu 20.04或更高版本。如果你还没有安装Ubuntu,可以选择使用双系统或虚拟机。安装完成后,确保操作系统已更新:

sudo apt update
sudo apt upgrade

安装ROS 2

  1. 设置ROS 2存储库

首先,确保你已经安装了curl工具,以帮助我们设置ROS 2的APT源。

sudo apt install curl

接下来,添加ROS 2的APT源:

sudo sh -c 'echo "deb [arch=amd64] http://packages.ros.org/ros2/ubuntu main" > /etc/apt/sources.list.d/ros2-latest.list'

然后,添加ROS 2的密钥:

curl -s https://raw.githubusercontent.com/ros/rosdistro/master/ros.asc | sudo apt-key add -
  1. 更新APT索引并安装ROS 2

运行以下命令更新APT索引并安装ROS 2:

sudo apt update
sudo apt install ros-humble-desktop

安装完成后,还需要初始化rosdep工具:

sudo rosdep init
rosdep update
  1. 环境配置

将ROS 2的环境变量添加到bashrc文件中,以便每次启动终端时自动加载:

echo "source /opt/ros/humble/setup.bash" >> ~/.bashrc
source ~/.bashrc

创建工作空间

在ROS中,工作空间是用于存放代码和资源的地方。接下来,我们将创建一个工作空间:

mkdir -p ~/ros2_ws/src
cd ~/ros2_ws/
colcon build

上面的指令将创建一个名为ros2_ws的工作空间,并在其下创建一个src目录,用于存放源代码。colcon build命令会构建工作空间中的所有包。

创建第一个ROS 2包

现在,我们可以创建一个简单的ROS 2包来验证环境是否搭建成功:

  1. 创建包

src目录下运行以下命令创建一个新包:

cd ~/ros2_ws/src
ros2 pkg create my_first_package
  1. 编写示例代码

接着,我们可以在my_first_package包中创建一个简单的“Hello World”节点。打开my_first_package目录下的my_first_package文件夹,再创建一个hello.py文件:

# hello.py
import rclpy
from rclpy.node import Node

class HelloWorldNode(Node):
    def __init__(self):
        super().__init__('hello_world_node')
        self.get_logger().info('Hello, ROS 2!')

def main(args=None):
    rclpy.init(args=args)
    node = HelloWorldNode()
    rclpy.spin(node)
    node.destroy_node()
    rclpy.shutdown()

if __name__ == '__main__':
    main()
  1. 修改setup.py

确保在setup.py中添加hello.py的入口点,以便可以通过命令行启动该节点:

entry_points={
    'console_scripts': [
        'hello = my_first_package.hello:main'
    ],
},
  1. 构建包

在工作空间根目录下,运行以下命令以构建代码:

cd ~/ros2_ws/
colcon build

构建完成后,别忘了重新加载环境变量:

source ~/ros2_ws/install/setup.bash

运行节点

最后,运行我们的节点以查看结果:

ros2 run my_first_package hello

你应该能在终端中看到类似“Hello, ROS 2!”的输出。

总结

通过以上步骤,你成功在Ubuntu上搭建了一个ROS 2的开发环境,并创建了一个基础的ROS 2包与示例节点。这为进一步探索和开发更复杂的机器人应用打下了基础。希望这篇文章能帮助你顺利入门,开启属于你的机器人开发之旅!

点赞(0) 打赏

微信小程序

微信扫一扫体验

微信公众账号

微信扫一扫加关注

发表
评论
返回
顶部