Windows10 安装使用 ROS2
注意,本章只将环境安装到可以运行Ros2官方案例结点
1. 下载ros2案例项目
如下载jazzy版本
https://github.com/ros2/ros2/releases
下载,然后解压到电脑中,这里假设你解压的位置在C:\WorkSpace\Ros2
则ros2中的local_setup.ps1的完整路径为:
C:\WorkSpace\Ros2\ros2-jazzy-20240523-windows-release-amd64\ros2-windows\local_setup.ps1
(ps. 由于本文是在虚拟机中运行的, 文件存放路径都是在C盘中, 在非虚拟机中切勿如此)
2. 运行ros2模版项目
先打开终端尝试运行local_setup.ps1
C:\WorkSpace\Ros2\ros2-jazzy-20240523-windows-release-amd64\ros2-windows\local_setup.ps1
如果无法运行, 提示策略相关的报错则先将local_setup.ps1文件加入执行策略白名单(否则想要执行很麻烦), 然后将本机的执行策略改为RemoteSigned。
Unblock-File -Path "C:\WorkSpace\Ros2\ros2-jazzy-20240523-windows-release-amd64\ros2-windows\local_setup.ps1"
Set-ExecutionPolicy RemoteSigned
然后就可以执行了
C:\WorkSpace\Ros2\ros2-jazzy-20240523-windows-release-amd64\ros2-windows\local_setup.ps1
运行完local_setup.ps1之后, 就会把运行ros2需要的相关环境变量设置上。
再执行模板文件中的topic发送者即可发送消息
ros2 run demo_nodes_cpp talker
此时发现ros2的发布节点已经开始发送数据了
3. powershell配置启动自动运行脚本
3.1 powerShell7
在终端打开powershell7,运行以下命令
if (!(Test-Path -Path $profile)) {
New-Item -ItemType File -Path $profile -Force
}
echo 'chcp 65001' > $profile; echo 'C:\WorkSpace\Ros2\ros2-jazzy-20240523-windows-release-amd64\ros2-windows\local_setup.ps1' >> $profile
这样每次打开powershell7都会默认执行local_setup.ps1文件
在vscode中也可以直接运行python节点文件了 ,下一篇文章会详细讲述结点创建以及这一步的作用。
3.2 Visual Studio PowerShell
管理员运行终端, 如果不是配置的默认打开Visual Studio PowerShell, 则打开Visual Studio PowerShell
输入命令
if (!(Test-Path -Path $profile)) {
New-Item -ItemType File -Path $profile -Force
}
其中$profile是系统配置的一个值, 为当前powershell的启动执行文件, 不一定存在, 所以上面的命令是不存在就新建一个
检查执行策略, 如果执行策略不为RemoteSigned, 则设为RemoteSigned
然后将启动命令输入到powershell启动文件中
Get-ExecutionPolicy
Set-ExecutionPolicy RemoteSigned
echo 'chcp 65001' > $profile; echo 'C:\WorkSpace\Ros2\ros2-jazzy-20240523-windows-release-amd64\ros2-windows\local_setup.ps1' >> $profile
这样每次打开Visual Studio PowerShell都可以执行ros2的环境初始化了