当前位置: 首页 > news >正文

【ROS2 自动驾驶学习】02-安装ROS2及其配套工具

目录

一、设置语言环境

二、添加存储库

三、添加软件源

四、安装ROS2

五、配置环境

六、测试ROS2

七、安装一些工具

7.1 terminator

7.2 colcon工具 

7.3 tf工具 

7.4 joint-state-publisher工具

7.5 urdf

八、安装三方库

8.1 Eigen

8.2 yaml-cpp

8.3 matplotlib

8.4 osqp和osqp-eigen


一、设置语言环境

检查本地语言环境是否支持UTF-8编码,在控制台输入如下命令检查

locale

如下图,每1条都含有“UTF-8”就表示支持UTF-8编码

如果没有上图的输出,就需要输入如下指令使得系统支持UTF-8编码

二、添加存储库

打开“软件和更新”,勾选“社区维护的自由和开源软件”

三、添加软件源

1. 在控制台中输入如下指令,更新软件源

sudo apt update

2. 输入如下指令来利用apt工具从 Ubuntu 的官方软件源中下载并安装curl软件包

sudo apt install curl -y

3. 输入如下指令来安全地从 ROS 官方 GitHub 仓库获取 GPG 密钥,并将其保存到系统的密钥环目录中。

sudo curl -sSL https://raw.githubusercontent.com/ros/rosdistro/master/ros.key -o /usr/share/keyrings/ros-archive-keyring.gpg

4. 输入如下指令,将ROS2的阿里云镜像源配置添加到系统的软件源列表中,同时指定架构、密钥验证和当前 Ubuntu 版本代号,确保后续apt命令能从正确的源下载适合当前系统的 ROS 2 软件包

echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/ros-archive-keyring.gpg] \
https://mirrors.aliyun.com/ros2/ubuntu $(. /etc/os-release && echo $UBUNTU_CODENAME) main" | \
sudo tee /etc/apt/sources.list.d/ros2.list > /dev/null

输入上面的命令后可以在“/etc/apt/sources.list.d/”中找到“ros2.list”

打开“ros2.list”可以看到ROS2下载的源已经设置了

四、安装ROS2

输入如下3个指令,从已配置的软件源(之前添加的阿里云 ROS 2 镜像源)中下载并安装ROS2 Humble版本的桌面完整版

sudo apt update
sudo apt upgrade
sudo apt install ros-humble-desktop

五、配置环境

输入如下指令,可以帮助让用户在打开终端后,把ROS2的环境会自动配置好,用户可以直接使用ros2命令以及相关工具

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

输入如下指令,Bash 会重新读取并执行.bashrc文件中的所有命令 ,可以使修改立即生效

source ~/.bashrc

执行后可以在主页按下Ctrl+H显示主页隐藏的文件夹,然后打开“.bashrc”

可以看到已经进行了配置。这样每次打开新的终端窗口时,系统自动执行“.bashrc”中的每一条命令,也就把"source /opt/ros/humble/setup.bash"一起执行了。

六、测试ROS2

输入如下指令,运行turtlesim软件包中的turtlesim_node节点,从而启动海龟仿真器。这个仿真器会创建一个图形界面,界面中有一只海龟,用户可以通过发布指令控制海龟在画布上移动。

ros2 run turtlesim turtlesim_node 

如下图,表示我们已经成功安装了ROS2 

此时我们再重新打开一个终端窗口,输入如下指令,就可以通过键盘的前后左右键来控制小乌龟移动了。

ros2 run turtlesim turtle_teleop_key 

七、安装一些工具

7.1 terminator

输入如下指令来安装terminator

sudo apt install terminator

安装terminator后,再次打开终端后,我们就可以对终端进行水平、垂直分割,方便看到多个窗口的内容。

水平和垂直分割后如下所示。

7.2 colcon工具 

输入如下指令来安装colcon工具。colcon 是 ROS 2 中官方推荐的构建工具,用于编译和管理 ROS 2 工作空间中的软件包。它集成了 CMake 和 Python 的构建系统,提供了更高效、更灵活的工作流。

sudo apt install python3 && sudo apt install python3-colcon-common-extensions

7.3 tf工具 

输入如下指令。

        第1条指令用于安装tf工具。TF2 是 ROS 2 中用于管理和处理坐标系变换的核心框架,它能够跟踪机器人各部分(如传感器、关节、末端执行器等)之间的空间关系,并在不同坐标系之间进行实时转换。TF2 在机器人导航、定位、运动规划等任务中起着至关重要的作用。

        第2条指令用于安装pip。通过python3-pip,用户可以方便地管理 Python 包,为后续开发或使用 Python 应用程序奠定基础。

        第3条指令用于安装transform3d。这是一个专注于三维空间变换的 Python 库,提供了各种坐标变换、旋转矩阵、四元数等计算功能。

sudo apt install ros-humble-tf2-tools ros-humble-tf-transformations
sudo apt install python3-pip
pip3 install transforms3d

7.4 joint-state-publisher工具

输入如下指令来安装“joint-state-publisher”和“joint-state-publisher-gui”软件包。

joint-state-publisher:

        自动生成机器人各关节的控制值(如角度)。

        通过/joint_states话题发布这些值,供其他节点(如 RViz、控制器)使用。

        适用于没有真实硬件的仿真环境,或需要手动控制关节的场景。

joint-state-publisher-gui是joint-state-publisher的图形化扩展,提供:

        滑块界面:通过拖动滑块实时调整关节角度。

        关节分组:可折叠 / 展开不同部位的关节(如手臂、腿部)。

        自动生成:基于机器人模型自动识别可活动关节,并创建对应的控制滑块。

sudo apt install ros-humble-joint-state-publisher
sudo apt install ros-humble-joint-state-publisher-gui

7.5 urdf

输入如下指令来安装urdf。Xacro 是 ROS 中用于简化机器人模型描述的工具,它基于 XML 语法,允许使用变量、宏定义、条件语句等编程元素来创建更简洁、更易维护的机器人模型文件。Xacro 文件通常具有.xacro.urdf.xacro扩展名,最终会被编译成标准的 URDF(Unified Robot Description Format)文件。

sudo apt install ros-humble-xacro

八、安装三方库

8.1 Eigen

访问“https://eigen.tuxfamily.org/”,点击“Eigen 3.4.0 released!

点击链接

这里下载第1个

在Windows系统下载该压缩包后,这里通过共享文件夹的方式将压缩包共享到Ubuntu中。

提取压缩包

在“/home/chaochao/下载/”中打开终端窗口,然后输入如下指令将提取后文件夹移动到系统软件安装的位置“/usr/local/include/”

sudo mv eigen-3.4.0/ /usr/local/include/

8.2 yaml-cpp

可以通过访问https://github.com/jbeder/yaml-cpp下载源码。或通过输入如下指令安装:

sudo apt update
sudo apt install libyaml-cpp-dev

8.3 matplotlib

可以通过访问官网“Matplotlib — Visualization with Python”下载。或通过如下指令下载:

# 方式1:(apt安装)
sudo apt update
sudo apt install python3-matplotlib# 方式2:(pip安装)
pip3 install matplotlib

8.4 osqp和osqp-eigen

通过如下指令先确认gcc和cmake已经安装了。

gcc --version
cmake --version

在“主目录”中打开终端窗口,输入如下指令来安装git

sudo apt install git

再通过git克隆V1.0.0的osqp 

git clone -b v1.0.0 https://github.com/osqp/osqp.git

通过git克隆V0.10.0的osqp-eigen

git clone -b v0.10.0 https://github.com/robotology/osqp-eigen.git

此时可以看到主目录中已经有“osqp”和“osqp-eigen”

输入如下指令 进入“osqp”目录并创建“build”文件夹再进入“build”

cd osqp && mkdir build && cd build

输入如下指令。通过该指令开发者可以将项目的源代码转换为可编译的构建文件,为后续的编译和安装步骤做好准备。

cmake ..

输入如下指令,该指令用于加速编译过程的命令,它通过(nproc)获取系统可用CPU核心数,并利用make -j 选项开启并行编译,让编译器同时执行多个任务,显著缩短项目的构建时间。

make -j$(nproc)

编译后可以看到build目录中包含很多文件

输入如下指令,该指令会依据 Makefile 中的规则将程序文件、库文件和配置文件复制到指定的系统目录( /usr/local/

sudo make install

执行后可以看到在“/usr/local/include/osqp/”中包含如下头文件

在 “/usr/local/lib/”中包含库“libosqp.so”

输入如下指令来更新库的链接关系

sudo ldconfig

再输入“source ~/.bashrc”

此时“osqp”就安装完成了。下面同样的步骤安装“osqp-eigen”。

退回主目录

依次输入如下指令

cd osqp-eigen && mkdir build && cd build
cmake .. make -j$(nproc)
sudo make install
sudo ldconfig
source ~/.bashrc

 

安装后可以检查一下

http://www.lryc.cn/news/582260.html

相关文章:

  • Java 内存分析工具 Arthas
  • 卷积神经网络:卷积层的核心原理与机制
  • MATLAB | 绘图复刻(二十一)| 扇形热图+小提琴图
  • Spring AOP 设计解密:代理对象生成、拦截器链调度与注解适配全流程源码解析
  • 网络安全之重放攻击:原理、危害与防御之道
  • 指尖上的魔法:优雅高效的Linux命令手册
  • Spring Boot 操作 Redis 时 KeySerializer 和 HashKeySerializer 有什么区别?
  • 自动驾驶基本结构与组成
  • 【MyBatis】XML实现,配置方法和增、删、改、查
  • 第二届云计算与大数据国际学术会议(ICCBD 2025)
  • 物联网技术的关键技术与区块链发展趋势的深度融合分析
  • React Native 基础组件详解<一>
  • VSCODE创建JS项目
  • 常见问题与最佳实践——AI教你学Docker
  • 【力扣(LeetCode)】数据挖掘面试题0002:当面对实时数据流时您如何设计和实现机器学习模型?
  • EPLAN 电气制图:项目的创建(多功能天车系统案例)
  • 摄影后期:使用Photoshop进行暗角控制
  • 分布式生成 ID 策略的演进和最佳实践,含springBoot 实现(Java版本)
  • 【R语言】Can‘t subset elements that don‘t exist.
  • LastActivityView -查看电脑上的所有操作记录
  • 初识Neo4j之入门介绍(一)
  • 【Linux系统】Linux权限 | Shell命令以及运行原理
  • Python爬虫图片验证码和滑块验证码识别总结
  • Taro+Vue3实现微信小程序富文本编辑器组件开发指南
  • OpenCV人脸分析------绘制面部关键点函数drawFacemarks()
  • 虚幻引擎UE5 GAS开发RPG游戏-02 设置英雄角色-18 改成网络多人游戏
  • turborepo 如何解决git管理包过大的问题
  • 5、Receiving Messages:Message Listener Containers
  • Python实现文件夹中文件名与Excel中存在的文件名进行对比,并进行删除操作
  • 【无标题】三维拓扑量子色动力学模型:理论重构与实验验证