少年恃险若平地,独倚长剑凌清秋。这篇文章主要讲述Windows使用ROS机器人操作系统全面资料汇总相关的知识,希望能为你提供帮助。
0 摘要:本文以?Win10?系统中安装使用??ROS1Melodic和ROS2Dashing??为基础,并通过开源硬件设备Arduino与ROS的通信为示例,具体介绍机器人操作系统ROS1和ROS2的细节。部分内容已经在高校本科课程中进行讲解,详情可搜索:?机器人控制器编程?。
??
1 引言:机器人操作系统ROS,可以被理解为??一个特定的应用于机器人领域的物联网(IoT)系统??,很多知识点和技能相似相通,学习并掌握这个工具非常重要。ROS接口丰富,并可与OpenCV,OpenAI等多种第三方开源工具结合,开发出新奇实用的各类机器人。
全平台(Windows/Linux/MacOS/……)和全语言(C++/python/java/……)是ROS的另一个典型特点。大部分ROS课程基于Ubuntu讲解。本课程从设计之初就考虑到不同平台使用用户特定场景之差异,课程涵盖了Windows/Linux/MacOS。但测试过程并未公开,依据大量反馈,以学生为中心,目标导向和持续改进为内核,课程将全面免费公开Windows版本内容,该版本在测试与反馈中获得较为温和评价,Windows系统目前仍然是国内占有率最高的桌面平台。
课程部分介绍资料参考链接:??机器人编程实践-ROS2基础与应用-??
必备工具,请安装最新版本
2 ROS1:安装:??http://wiki.ros.org/Installation/Windows??
使用:??https://ms-iot.github.io/ROSOnWindows/??
?
注意:中文版本是一年以前写的,现在已经有些变动,将在下文列出。
除了基本教程,还支持??服务机器人???和??工业机械臂??。
这些在之前博客中已经详细介绍过了,这里就不再重复了。只列出一些要点:
Windows操作系统
预留安装空间
安装路径
安装Visual Studio 2019为Windows生成ROS项目需要Visual Studio和Windows的Microsoft SDK。
使用C++的桌面开发
安装到D:
d:
安装Windows软件包管理器【Windows使用ROS机器人操作系统全面资料汇总】Chocolatey是Windows的程序包管理器。它用于简化安装构建和运行ROS项目所需的工具和库的过程。
@"%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"
安装Git:
choco install git -y
git --version
二进制软件包安装要为Windows设置ROS,请遵循以下建议步骤:
win10中ros软件包安装
?ROS 1最新的(LKG)编译好的安装包-Melodic?
要开始,请安装推荐的desktop_full元软件包。元软件包是其他软件包的集合。桌面完全元软件包是指构建,运行,调试和可视化机器人所需的许多其他软件包。
如上所述,以管理员身份打开Visual Studio命令提示符。
choco source add -n=ros-win -s="https://roswin.azurewebsites.net/api/v2" --priority=1
choco upgrade ros-melodic-desktop_full -y --execution-timeout=0
ros-melodic
?ROS 2最新的编译好的安装包-Dashing?
要开始使用ROS 2,也可以按照类似的步骤从同一Chocolatey Feed中安装ROS 2。
例如,如果要安装最新ROS2
Dashing版本,请打开上面创建的ROS命令提示符,如果尚未打开,请批准管理标高。
choco source add -n=ros-win -s="https://roswin.azurewebsites.net/api/v2" --priority=1
choco upgrade ros-dashing-desktop -y --execution-timeout=0 --pre
请一定,一定,一定测试安装是否成功!!!
ROS1:
roscore
ROS2:
发布
接收
创建ROS命令窗口快捷方式为了在Windows上使用ROS,需要在每个命令窗口中调用ROS设置脚本。为了将来不会忘记,使用自动执行此操作的ROS快捷方式将很有帮助。
C:\\Windows\\System32\\cmd.exe /k "C:\\Program Files (x86)\\Microsoft Visual Studio\\2019\\Community\\Common7\\Tools\\VsDevCmd.bat" -arch=amd64 -host_arch=amd64 &
&
c:\\opt\\ros\\melodic\\x64\\setup.bat
C:\\Windows\\System32\\cmd.exe /k "C:\\Program Files (x86)\\Microsoft Visual Studio\\2019\\Professional\\Common7\\Tools\\VsDevCmd.bat" -arch=amd64 -host_arch=amd64 &
&
c:\\opt\\ros\\melodic\\x64\\setup.bat
C:\\Windows\\System32\\cmd.exe /k "C:\\Program Files (x86)\\Microsoft Visual Studio\\2019\\Enterprise\\Common7\\Tools\\VsDevCmd.bat" -arch=amd64 -host_arch=amd64 &
&
c:\\opt\\ros\\melodic\\x64\\setup.bat
参考:
ROS1:
ROS2:
C:\\Windows\\System32\\cmd.exe /k "D:\\Program Files (x86)\\Microsoft Visual Studio\\2019\\Community\\Common7\\Tools\\VsDevCmd.bat" -arch=amd64 -host_arch=amd64 &
&
c:\\opt\\ros\\melodic\\x64\\setup.bat
(可选)使用新的Windows终端Microsoft正在??为Windows开发???新的??开源终端???,该??终端对???内置命令行进行了许多改进,包括选项卡和外观自定义。您可以从??Microsoft Store??安装它。
C:\\Windows\\System32\\cmd.exe /k "D:\\Program Files (x86)\\Microsoft Visual Studio\\2019\\Community\\Common7\\Tools\\VsDevCmd.bat" -arch=amd64 -host_arch=amd64 &
&
c:\\opt\\ros\\dashing\\x64\\local_setup.bat
为ROS设置终端:
"profiles" :
[
"acrylicOpacity" : 0.5,
"background" : "#012456",
"closeOnExit" : true,
"colorScheme" : "Campbell",
"commandline" : "C:\\\\Windows\\\\System32\\\\cmd.exe /k \\"C:\\\\Program Files (x86)\\\\Microsoft Visual Studio\\\\2019\\\\Community\\\\Common7\\\\Tools\\\\VsDevCmd.bat\\" -arch=amd64 -host_arch=amd64 &
&
c:\\\\opt\\\\ros\\\\melodic\\\\x64\\\\setup.bat",
"cursorColor" : "#FFFFFF",
"cursorShape" : "bar",
"fontFace" : "Consolas",
"fontSize" : 10,
"guid" : "xxxxx",
"historySize" : 9001,
"icon" : "ms-appx:///ProfileIcons/0caa0dad-35be-5f56-a8ff-afceeeaa6101.png",
"name" : "ROS",
"padding" : "0, 0, 0, 0",
"snapOnInput" : true,
"startingDirectory" : "c:\\\\ws",
"useAcrylic" : true
,
"globals" :
"alwaysShowTabs" : true,
"copyOnSelect" : false,
"defaultProfile" : "xxxx",
....
启动新的Windows终端时,请记住以“以管理员身份运行”,方法是右键单击Windows终端并选择“以管理员身份运行”。在取消此要求之前,需要实施“
??始终运行终端”提升功能请求??。
保持最新
如果要更新ROS安装,请使用Chocolatey的升级功能:
打开上面创建的ROS命令提示符,并批准管理海拔(如果尚未打开)。
运行以下命令:
choco upgrade ros-melodic-desktop_full -y --execution-timeout=0
建议添加
--execution-timeout=0
,以避免由于网络缓慢而导致的chocolatey
安装失败。
3 ROS2:安装:??https://index.ros.org/doc/ros2/Installation/Dashing/Windows-Install-Binary/??
使用类似ROS1方式更为简洁,也可以使用源码编译。
ROS1和ROS2在Windows 10中详细安装调试记录参考,如下链接:
??Windows安装使用ROS机器人操作系统1&
2记录??
安装配置完成后,可以直接与Linux或MacOS中的ROS通讯互联,也可以连接丰富外部设备。
4 Ardurno:什么是Arduino?(课程包含avr和arm)
Arduino是一个基于易于使用的硬件和软件的开源电子平台。
??Arduino开发板???能够读取传感器上输入,控制灯,按钮或Twitter消息-并将其转换为输出-启动电动机,打开LED并在线发布内容。可以通过向板上的微控制器发送一组指令来告诉该怎么做。为此,可以使用??Arduino编程语言???(基于??Wiring???)和??Arduino软件(IDE)???(基于??Processing)??。
多年来,Arduino一直是数千个项目的大脑,从日常对象到复杂的科学仪器。这个开放源代码平台聚集了世界各地的开发人员社区,包括学生,业余爱好者,艺术家,程序员和专业人士,他们的贡献积累了无与伦比的??可访问性知识??,对新手和专家都可以提供极大的帮助。
Arduino出生于Ivrea交互设计学院,是一种快速原型制作的简便工具,主要面向没有电子和编程背景的学生。Arduino板一旦进入更广泛的社区,便开始进行更改以适应新的需求和挑战,将其产品从简单的8位板扩展到IoT应用,可穿戴,3D打印和嵌入式环境的产品。所有Arduino开发板都是完全开源的,使用户能够独立构建它们,并最终使它们适应其特定需求。该??软件??也是开源的,并且通过全球用户的贡献而不断发展。
为什么选择Arduino?
由于其简单易用的用户体验,Arduino已用于数千个不同的项目和应用程序中。Arduino软件对于初学者来说易于使用,但对于高级用户而言足够灵活。它可以在Mac,Windows和Linux上运行。老师和学生使用它来构建低成本的科学仪器,证明化学和物理原理,或?开始编程和机器人技术?。设计师和建筑师构建交互式原型,音乐家和艺术家将其用于安装并尝试新的乐器。例如,制造商当然会使用它来构建在Maker Faire上展出的许多项目。Arduino是学习新事物的关键工具。任何人-儿童,业余爱好者,艺术家,程序员-都可以按照套件的逐步说明进行修补,
还有许多其他微控制器和微控制器平台可用于物理计算。Parallax Basic Stamp,Netmedia的BX-24,Phidgets,MIT的Handyboard以及许多其他产品都提供了类似的功能。所有这些工具都采用了微控制器编程的繁琐细节,并将其包装在易于使用的程序包中。Arduino还简化了使用微控制器的过程,但与其他系统相比,它为教师,学生和感兴趣的业余爱好者提供了一些优势:
如何使用Arduino?
请参阅??入门指南???。如果您正在寻找灵感,可以在??Arduino Project Hub??上找到各种各样的教程。
Arduino入门指南的文本已获得
??Creative Commons Attribution-ShareAlike 3.0 License的许可??。该指南中的代码示例已发布到公共领域。
安装:??https://www.arduino.cc/en/Main/Software??
选择windows版本直接安装即可使用,在库中可以直接安装加载ROS库。
win10 ros2 arduino
5 Webots:为什么选择Webots?Webots是一个开放源代码的机器人模拟仿真器,它提供了完整的开发环境来对机器人进行建模,编程和仿真。全球数以千计的机构将其用于研发和教学。自1996年以来,Webots由??洛桑???的??瑞士联邦理工学院??联合开发,经过全面测试,充分记录并持续维护。它是快速获得专业成果的最有效解决方案,包括:
Webots功能
投资组合:基于Webots
开始使用请遵循以下步骤以熟练掌握Webots:
安装:??https://www.cyberbotics.com/#download??
选择windows版本,免费版本无服务支持。
6 V-Rep:具有集成开发环境的机器人模拟仿真器V-REP基于分布式控制体系结构:每个对象/模型都可以通过嵌入式脚本,插件,ROS或BlueZero节点,远程API客户端或自定义进行单独控制解。这使得V-REP非常通用,非常适合多机器人应用。控制器可以用C / C ++,Python,Java,Lua,Matlab或Octave编写。
V-REP用于快速算法开发,工厂自动化仿真,快速原型制作和验证,机器人技术相关的教育,远程监控,安全性双重检查以及数字孪生等等。可以??在此处???找到??功能概述??。
安装:??http://coppeliarobotics.com/downloads.html??
7 Matlab:官网:??https://ww2.mathworks.cn/products/matlab.html??
8 ……待完善……
依据反馈更新修正,感谢~
推荐阅读
- Windows Server2012R2 安装MongoDB
- Bash特性
- Oracle Windows 环境下安装 + PL/SQL
- Windows使用ROS机器人操作系统教程说明
- Bash的特性
- Bash初识2
- Qt实用技巧(使用QMediaPlayer和Windows自带组件播放swfrmvbmpgmp4等视频文件)
- ROS2初学者教程(Dashing和Eloquent)Windows
- Linux之ack命令