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

ROS2进阶:安装与初体验(附choco介绍)

操作系统: windows10

(一)按照 ms-iot 上的指导安装 

系统安装路径:C:\opt\ros\galactic

系统安装参考:ROS2在windows上的安装。

ROS 2 Binary Installation - ROS on Windows

原来官网

https://github.com/ros2/ros2

这个ROS2的windows版本已经安装过不止一回了,貌似总会有些问题,通常比较难顺利安装。所以我这里采用的ms-iot上的做法。

(1)找到VS2019命令窗口"x64 Native Tools Command Prompt for VS 2019" 

(2)选择以管理员身份运行

(3)输入指令

@"%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"

不知道是不是为安装管理工具chocolatey做准备,总之我是直接到chocolatey官网上下载安装的,目录在

C:\ProgramData\chocolatey\bin\choco.exe

(4)安装git

choco upgrade git -y

(5)安装 ROS2

mkdir c:\opt\chocolatey
set ChocolateyInstall=c:\opt\chocolatey
choco source add -n=ros-win -s="https://aka.ms/ros/public" --priority=1
choco upgrade ros-galactic-desktop -y --execution-timeout=0 --pre

我没弄懂这里的chocolatey安装配置方法,由于我已经安装了chcolatey,所以这里的4条指令我实际只用到了后面两条。

然后我的ROS2就顺利地安装完了。

另外,官网没有说要安装python3,,不确定这会不会对安装过程产生影响。我实际已经安装了python3.8.3,所以如果你发现需要python的话,补上就可以了。

下面我们来测试一下,

(1)测试一

打一个cmd窗口,输入

> call C:\opt\ros\galactic\x64\setup.bat
> ros2 run turtlesim turtlesim_node

然后打开另一个cmd窗口,输入,

>call C:\opt\ros\galactic\x64\setup.bat
>ros2 run turtlesim turtle_teleop_key

然后就可以通过键盘控制小乌龟了。

(2)测试二

分别打开两个cmd,输入

>call C:\opt\ros\galactic\x64\setup.bat
>ros2 run demo_nodes_cpp talker

>call C:\opt\ros\galactic\x64\setup.bat
>ros2 run demo_nodes_py listener

就可以看到两个线程能正常通信了。

(3) 测试三

ms-iot提代了nav2的代码,反正这个我没编译成功,也没测试成功。

后话

整体上,比ubuntu上的体验差多了。powershell对ROS2的支持很不友好,没法完整运行。mingw bash也不太好运行。在VS2019 prompt中效果好一点。

(二)按官网的指导

安装或编译安装的指导在这里,

Installing ROS 2 on Windows — ROS 2 Documentation: Galactic documentation

Building ROS 2 on Windows — ROS 2 Documentation: Galactic documentation

不管是building 还是installing,都可以到github上去拉取源码下来,

Releases · ros2/ros2 · GitHub

 按照官方办法走一次就OK了。只要你存放的地方不一样,不同的安装方法的同一版本,或不同的版本都是可以共存的。

附:Choco常用指令

choco search     搜索软件

choco list  列出包

choco install   安装软件

choco install   -version *** 安装指定版本

choco  uninstall name 卸载软件

choco version   查看安装包的版本情况

choco  upgrade    更新某个软件

choco list -localonly        查看一下所有安装在本地的包的列表

choco list -lo       功能同上

本文结束

相关文章:

  • ROS2进阶:colcon的初步使用--‘colcon‘ is not recognized
  • ROS2进阶:基本指令与RVIZ2介绍
  • Windows控制台cmd默认代码页修改的办法【GBK、UTF-8】
  • ROS2 ERROR: qt.qpa.plugin: Could not find the Qt platform plugin “windows“ in
  • ROS2 Warning: RosPluginProvider._parse_plugin_xml() plugin file rqt_gui_cpp/plugin.xml not found
  • ROS2进阶:turtlesim与rqt
  • TCP/UDP常见的端口号
  • ROS2进阶:基于cmake创建自己的开发包
  • ROS2进阶:如何查找特定的包(package)并列出包中所有节点(node)
  • ROS2进阶:VS2019调试ROS2-examples程序
  • Python Error: 系统找不到指定的文件。: ‘c:\\python38\\Scripts\\pep8.exe‘ -> ‘c:\\python38\\Scripts\\pep8.exe.del
  • Ubuntu中如何处理难缠的软件包升级
  • 3D进阶之OSG:从VS2019编译osgEarth开始
  • vcpkg如何全面卸载和重新安装包
  • 3D进阶之OSG: VS2019编译OpenSceneGraph
  • 《深入 React 技术栈》
  • 【跃迁之路】【519天】程序员高效学习方法论探索系列(实验阶段276-2018.07.09)...
  • android百种动画侧滑库、步骤视图、TextView效果、社交、搜房、K线图等源码
  • ERLANG 网工修炼笔记 ---- UDP
  • HTTP请求重发
  • JDK9: 集成 Jshell 和 Maven 项目.
  • mockjs让前端开发独立于后端
  • Python学习之路13-记分
  • 持续集成与持续部署宝典Part 2:创建持续集成流水线
  • 关于 Cirru Editor 存储格式
  • 检测对象或数组
  • 看图轻松理解数据结构与算法系列(基于数组的栈)
  • 京东物流联手山西图灵打造智能供应链,让阅读更有趣 ...
  • ​直流电和交流电有什么区别为什么这个时候又要变成直流电呢?交流转换到直流(整流器)直流变交流(逆变器)​
  • (JS基础)String 类型
  • (附源码)spring boot网络空间安全实验教学示范中心网站 毕业设计 111454
  • (附源码)计算机毕业设计SSM疫情社区管理系统
  • (十一)手动添加用户和文件的特殊权限
  • (心得)获取一个数二进制序列中所有的偶数位和奇数位, 分别输出二进制序列。
  • (一)Neo4j下载安装以及初次使用
  • *Algs4-1.5.25随机网格的倍率测试-(未读懂题)
  • ./include/caffe/util/cudnn.hpp: In function ‘const char* cudnnGetErrorString(cudnnStatus_t)’: ./incl
  • .\OBJ\test1.axf: Error: L6230W: Ignoring --entry command. Cannot find argumen 'Reset_Handler'
  • .java 9 找不到符号_java找不到符号
  • .NET 5.0正式发布,有什么功能特性(翻译)
  • .NET CF命令行调试器MDbg入门(二) 设备模拟器
  • .Net Core/.Net6/.Net8 ,启动配置/Program.cs 配置
  • .Net MVC + EF搭建学生管理系统
  • .NET 常见的偏门问题
  • .net 开发怎么实现前后端分离_前后端分离:分离式开发和一体式发布
  • @LoadBalanced 和 @RefreshScope 同时使用,负载均衡失效分析
  • [Android] 240204批量生成联系人,短信,通话记录的APK
  • [C#]C# winform实现imagecaption图像生成描述图文描述生成
  • [C#]OpenCvSharp使用帧差法或者三帧差法检测移动物体
  • [C/C++]数据结构 循环队列
  • [C++随笔录] 红黑树
  • [CTO札记]如何测试用户接受度?
  • [Flexbox] Using order to rearrange flexbox children
  • [HOW TO]如何在iPhone应用程序中发送邮件
  • [MySQL]基础的增删改查