win10安装ROS2(foxy+humble/在线安装+离线安装)超详细保姆级教程

这篇具有很好参考价值的文章主要介绍了win10安装ROS2(foxy+humble/在线安装+离线安装)超详细保姆级教程。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

一、提要:

        之前已经在ubuntu22.04上安装上了ROS2-Humble,后期开发想要跨平台,ubuntu上发布话题,在windows上订阅话题,所以实验在windows上安装ROS2。

        因为ubuntu上安装的是Humble版本,所以在win10上首选安装也是Humble版,实验过程中是先通过在线方式安装了foxy版本,后面通过离线方式又安装了Humble。

二、必要的工具和准备

2.1 系统要求

Windows系统准备:ROS-for-Windows需要64位Windows 10桌面或Windows 10物联网企业版。
检查系统是否自带工具Powershell。
从病毒扫描程序中排除ROS安装路径c:\opt(以及稍后的工作区文件夹),因为它们可能会干扰安装和开发。

2.1 powershell介绍

工具准备:powershell是一个交互终端,其命令和linux下差不多,ls,ssh,ping,scp等等都是支持的。可以使用win+R,输入powershell打开,也可以通过左下方搜索powershell打开。

三、安装Visual Studio 2022

Vcpkg is used for managing dependent libraries. It requires that the English language pack be installed.
Include "Desktop development with C++" workload.
In the Individual Components, select "Windows 10 SDK (10.0.19041.0)".
注意:安装完VC2019后,有一个VC版本的命令行工具很重要,如图:

在安装ROS2之前我已经安装了64位2022 Community版本的Visual Studio。

此次安装ROS2,会用到VS的命令行工具(下图)进行64位的软件操作,都需要打开此命令行进行。

ros2 humble 和 foxy兼容吗,ROS2开发系列,windows,机器人

四、 “巧克力”-Chocolatey安装

4.1  Chocolatey是啥?

在Ubuntu下有下载更新工具apt-get,Chocolatey就可以理解成win10版的apt-get。

4.2 安装一个chocolatey

在开始菜单中,找到“x64 Native Tools Command Prompt for VS 2022”项,然后右键选择“以管理员身份运行”

复制以下命令行运行:

@"%SystemRoot%\System32\WindowsPowerShell\v1.0\powershell.exe" -NoProfile -InputFormat None -ExecutionPolicy Bypass -Command "iex ((New-Object System.Net.WebClient).DownloadString('https://chocolatey.org/install.ps1'))" && SET "PATH=%PATH%;%ALLUSERSPROFILE%\chocolatey\bin"


安装完成后在powershell中输入choco显示如下

ros2 humble 和 foxy兼容吗,ROS2开发系列,windows,机器人

五、安装ROS2

安装过程参考ROS2官方安装说明:

ROS2-Humble官方安装文档

5.1 安装各种依赖

需要使用chocolatey,但是chocolatey国内网速非常慢,经常连接不到服务器,需要自己想办法,或者离线安装。

ros2 humble 和 foxy兼容吗,ROS2开发系列,windows,机器人
5.1.1在线or离线安装python-3.8.3

 A.在线安装:

choco install -y python --version 3.8.3

B.离线安装:

python-3.8.3官网下载地址

ros2 humble 和 foxy兼容吗,ROS2开发系列,windows,机器人

ros2 humble 和 foxy兼容吗,ROS2开发系列,windows,机器人

ros2 humble 和 foxy兼容吗,ROS2开发系列,windows,机器人

ros2 humble 和 foxy兼容吗,ROS2开发系列,windows,机器人

注意:建议安装debug,需要科学上网,安装时下载可能会遇到,“0x80072efd未指定的错误”,可以先不勾选,安装完再Modify.

点击安装后等待即可,强烈建议去除window最大路径长度限制

ros2 humble 和 foxy兼容吗,ROS2开发系列,windows,机器人

5.1.2在线安装Visual C++ Redistributables

choco install -y vcredist2013 vcredist140

5.1.3离线安装OpenSSL

OpenSSL官网下载地址

ros2 humble 和 foxy兼容吗,ROS2开发系列,windows,机器人

ROS2官方安装文档要求下载Win64 OpenSSL v1.1.1n,不要下载v1.1.1n Light、Win32或者v3.X.Y版本的。

发个安装完成的界面让大家开心一下

ros2 humble 和 foxy兼容吗,ROS2开发系列,windows,机器人

 安装完成后,设置环境变量(管理员权限打开powershell)

setx /m OPENSSL_CONF "C:\Program Files\OpenSSL-Win64\bin\openssl.cfg"

5.1.4在线+离线安装其他依赖

choco install -y cmake

GIt下载页面

  • asio.1.12.1.nupkg

  • bullet.3.17.nupkg

  • cunit.2.1.3.nupkg

  • eigen-3.3.4.nupkg

  • tinyxml-usestl.2.6.2.nupkg

  • tinyxml2.6.0.0.nupkg

下载后放到【下载文件夹】,powershell安装

choco install -y -s 【下载文件夹】 asio cunit eigen tinyxml-usestl tinyxml2 bullet

升级pip和setuptools:

python -m pip install -U pip setuptools==59.6.0

安装python其他依赖

python -m pip install -U catkin_pkg cryptography empy importlib-metadata lark==1.1.1 lxml matplotlib netifaces numpy opencv-python PyQt5 pillow psutil pycairo pydot pyparsing==2.4.7 pyyaml rosdistro

 5.1.4离线安装Qt5

ROS2官方文档推荐安装5.12.X

Qt官网下载链接

确保在安装过程中,勾选 Qt -> Qt 5.12.12 下的MSVC 2017 64-bit组件

安装完成后,在管理员模式下的powerShell中设置环境变量

setx /m Qt5_DIR C:\Qt\Qt5.12.12\5.12.12\msvc2017_64
setx /m QT_QPA_PLATFORM_PLUGIN_PATH C:\Qt\Qt5.12.12\5.12.12\msvc2017_64\plugins\platforms

至此,准备工作基本完成,现在入正题,开始安装ROS2。

5.2安装ROS2        

实验过程中,在线存在服务器无响应的情况,可以多试几次,能不能安装上靠命,推荐自己下载后离线安装。

ros2 humble 和 foxy兼容吗,ROS2开发系列,windows,机器人

5.2.1在线安装ROS2-Foxy

mkdir c:\opt\chocolatey
set PYTHONNOUSERSITE=1
set ChocolateyInstall=c:\opt\chocolatey
choco source add -n=ros-win -s="https://aka.ms/ros/public" --priority=1

安装最新版本的Foxy

choco upgrade ros-foxy-desktop -y --execution-timeout=0

ros2 humble 和 foxy兼容吗,ROS2开发系列,windows,机器人

5.2.2在线安装ROS2-Humble

mkdir c:\opt\chocolatey
set PYTHONNOUSERSITE=1
set ChocolateyInstall=c:\opt\chocolatey
choco source add -n=ros-win -s="https://aka.ms/ros/public" --priority=1

安装最新版本的Humble(Humble目前是pre版,需要加参数--pre)

choco upgrade ros-humble-desktop --pre -y --execution-timeout=0

5.2.1在线安装ROS2

1.下载自己需要的版本的离线包

离线包下载地址

ros2 humble 和 foxy兼容吗,ROS2开发系列,windows,机器人

2.开始菜单中,右键 “x64 Native Tools Command Prompt for VS 2019” ,以管理员身份运行。

3.修改安装包搜索优先级,如图所示,是下载的nupkg文件所在的文件夹地址。

choco source add -n=ros-win -s=“E:\roswininstall”  #离线包本地存放地址
choco source remove -n=chocolatey
choco source add -n=chocolatey -s"https://chocolatey.org/api/v2/"  --priority=1

4.在Command输入

choco upgrade chocolatey-windowsupdate.extension

5.更新成功后,继续输入

choco upgrade ros-foxy-desktop -y --execution-timeout=0

或者

choco upgrade ros-humble-desktop --pre -y --execution-timeout=0

ros2 humble 和 foxy兼容吗,ROS2开发系列,windows,机器人

ros2 humble 和 foxy兼容吗,ROS2开发系列,windows,机器人

六、测试ROS2 

1.HelloWorld-Foxy

打开cmd命令行,设置环境变量

call C:\opt\ros\foxy\x64\local_setup.bat

HelloWorld

ros2 run demo_nodes_cpp talker

Ctrl+C退出

ros2 humble 和 foxy兼容吗,ROS2开发系列,windows,机器人

 2.小海龟-Humble

打开cmd命令行,设置环境变量

call C:\opt\ros\humble\x64\local_setup.bat

 运行小海龟

ros2 run turtlesim turtlesim_node

ros2 humble 和 foxy兼容吗,ROS2开发系列,windows,机器人

 再启动一个窗口,设置环境变量

call C:\opt\ros\humble\x64\local_setup.bat

启动键盘控制节点

ros2 run turtlesim turtle_teleop_key

ros2 humble 和 foxy兼容吗,ROS2开发系列,windows,机器人

 七、设置ROS2 环境变量

因为每次打开新的PowerShell运行ROS2都需要运行call C:\opt\ros\humble\x64\local_setup.ps1来设置ROS2环境,所以官方也给出了自动初始化ROS2环境的方法:

1.在文件夹C:\用户\【你的用户名】\文档\WindowsPowerShell\里面新建一个.txt文件

2.然后在txt里粘贴两行代码 C:\dev\ros2_foxy\local_setup.ps1 和 Unblock-File C:\dev\ros2_foxy\local_setup.ps1 ,保存,重命名文件为 Microsoft.PowerShell_profile.ps1,以后就不用每次打开PowerShell都要运行call C:\dev\ros\foxy\x64\local_setup.ps1来Source ROS2了

3.可能打开PowerShell后提示禁止运行脚本,这个时候输入命令:set-executionpolicy remotesigned,然后选择y就可以了,重启一下PowerShell搞定

至此,win10上安装ROS2完成,可以愉快的玩耍了文章来源地址https://www.toymoban.com/news/detail-805586.html

到了这里,关于win10安装ROS2(foxy+humble/在线安装+离线安装)超详细保姆级教程的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • ROS2 humble版本安装gazebo提示:没有可安装候选或无法定位安装包

    错误提示如下所示: 或者: 解决方法: 如果大家使用这条指令依然无法解决问题,请大家注意发帖时间,是否与您当前使用的时间相隔过久,可能官方又更换安装指令了 方法来源:How to install Gazebo for Ubuntu 22.04 with ROS2 Humble - Gazebo: QA Forum

    2024年02月08日
    浏览(27)
  • win10 在线、离线安装microsoft store 版 WSL

    实验环境: 操作系统:22H2 windows版本 10.0.19045.2486(网友说大于19045.2311也可) WSL版本:Microsoft.WSL_1.0.3.0_x64_ARM64.msixbundle 在此页面获取发布网址: Microsoft Store 中适用于 Linux 的 Windows 子系统的发行说明 获取此页面后下载软件包: 发布 微软/WSL 从Microsoft Store搜索wsl,点击“分享

    2024年02月05日
    浏览(36)
  • ros2 foxy创建一个包和节点-ubuntu20.04

    我们创建了两个目录,ros2_ws和在他下面的子目录,运行编译的目录在ros2_ws目录下,src目录下是我们生成的ros的包,我们自己编写的代码也都早src目录下,colcon build编译之后会在ros2_ws目录下生成一下文件,运行程序也是在ros2_ws这个目录下。 使用 ros2 pkg create 来创建包和节点,

    2024年02月02日
    浏览(38)
  • ROS2 Humble如何使用串口驱动?(Serial)

    目录 1. 串口库(Serial Library)简介: 2.  源码及主页 3.  国内git仓库(ROS2 humble已测试可用) 4. 可能出现的问题

    2024年02月16日
    浏览(28)
  • ros2官方文档(基于humble版本)学习笔记

    由于市面上专门讲ROS 2开发的书籍不多,近期看完了《ROS机器人开发实践》其中大部分内容还是基于ROS 1写的,涉及topic,service,action等一些重要的概念,常用组件,建模与仿真,应用(机器视觉,机器语音,SLAM,机械臂),最后一章写了ROS 2的安装,话题通信和服务通信的示

    2024年02月11日
    浏览(29)
  • Win10/Win7 离线安装 vs2019 详细步骤

    下载链接:https://visualstudio.microsoft.com/zh-hans/vs/ 点击右上角:免费 Visual Studio 说明:win7 安装 vs 时不建议安装最新版本,目前我装的是 vs2019 亲测可以使用!!!  正常 C++ 开发只需要下载:.NET桌面开发、使用 C++ 的桌面开发、使用 C++ 的移动开发、通用 windows 平台开发;即可

    2024年02月05日
    浏览(59)
  • ros2机器人foxy版用笔记本摄像头跑单目orb_slam3

    环境:     Ubuntu 20.04     ROS2 foxy     OpenCV 4.4.0(4版本以上的应该都可以) 安装orb_slam3 搭建环境参考: https://mp.csdn.net/mp_blog/creation/editor/129137521 这将在lib文件夹中创建libORB_SLAM3.so,只需要安装到这一步,生成 libORB_SLAM3.so 动态库即可。后面的ros程序安装是ros1的,ros1早晚会

    2024年02月11日
    浏览(30)
  • TurtleBot3在ROS2 humble中的仿真解析之仿真、遥控与智控

    在TurtleBot3的机器人建模完成后,接下来就需要进行仿真。机器人建模之后,机器人的部件、关节的物理参数就确定了,但是还不能使用安装在其上的各种传感器来感知世界。所谓仿真就是要模仿真实环境中对象/机器人的行为,其主要目的,就是要让机器人通过摄像头、激光

    2024年02月11日
    浏览(31)
  • 【ROS2 Foxy】解决 connext 中间件导致的警告:NDDSHOME environment variable has not been set

    执行安装命令: 终端出现警告: 这里我不想用这个中间件了,所以选择直接卸载: [1] How to supress Connext warning in ROS2

    2024年02月16日
    浏览(26)
  • 关于Ubuntu22.04,ros2-humble环境下,使用gazebo遇到的问题。

    遇到的问题: 打开gazebo时出现error:process has died的报错,虽然仍然可以打开gazebo,但是gazebo显示的并不是launch文件调用的world文件与urdf文件内容,可能显示前次使用gazebo时的内容,或者出现机器人模型乱转的情况。 问题原因: 前次使用gazebo后,没有完全关闭gazebo,尤其是

    2024年02月15日
    浏览(34)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包