isaac sim 与 WLS2 ros2实现通信

11 篇文章 4 订阅
1 篇文章 0 订阅

Omniverse以及isaac还是windows下使用顺手一点,但是做跟ros相关的开发时候,基本就得迁移到ubuntu下了,windows下ros安装还是过于复杂,那不想用双系统或者ubuntu或者虚拟机,有啥别的好方法呢?这里想到了windows WLS2:

Windows Subsystem for Linux 2 (WSL2) 是微软在Windows操作系统上推出的第二代Linux子系统,它利用虚拟化技术提供了一个完整的Linux内核环境,让Windows用户能够无缝运行Linux应用与工具,显著提升性能与兼容性。

WSL2的优势在于其卓越的性能表现(特别是在文件I/O密集型操作上)和广泛的Linux发行版支持,为开发者、数据分析师及任何需要Linux环境的用户提供了强大而灵活的工具。

参考教程1:nvidia isaac sim中关于ros安装和配置

ROS 和 ROS 2 安装 — Omniverse IsaacSim 最新文档 --- ROS and ROS 2 Installation — Omniverse IsaacSim latest documentation (nvidia.com)icon-default.png?t=N7T8https://docs.omniverse.nvidia.com/isaacsim/latest/installation/install_ros.html最新的isaac sim4.0推荐支持ros2 humble版本,ros2 foxy以及ros1都将被废弃了,不建议尝试;


 ​​​​​​WLS2安装Ubuntu22.04

这部分网上教程很多,重点讲一下,win11自带wsl 2,但在安装前,建议还是升级wsl到最新,否则可能遇到问题。

wsl --update

wsl --update命令可以帮助保持WSL及其内核的最新状态,从而确保用户能够利用最新的功能和安全更新。

安装ROS2 Humble 

跟正常ubuntu上安装ros2 humble一样,

参考教程2:ros2官方Humble Ubuntu安装教程

Ubuntu (Debian packages) — ROS 2 Documentation: Humble documentationicon-default.png?t=N7T8https://docs.ros.org/en/humble/Installation/Ubuntu-Install-Debians.html

如果ros.key添加不上,可以这样做: 

wget http://packages.ros.org/ros.key
sudo apt-key add ros.key
sudo mv ros.key /usr/share/keyrings/ros-archive-keyring.gpg
sudo apt-get update

添加清华ros源:

sudo echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/ros-archive-keyring.gpg] https://mirrors.tuna.tsinghua.edu.cn/ros2/ubuntu jammy main" | sudo tee /etc/apt/sources.list.d/ros2.list > /dev/null
sudo apt-get update

windows isaac sim配置

这一步很简单,在这里之间这样选配即可,然后STRAT启动Isaac Sim

WLS2 ROS Humble配置

这一步也很简单,source 一下ros 环境即可

source /opt/ros/humble/setup.bash

验证

使用isaac action graph发布一个clock,可以参考下面教程:

ROS Clock — Omniverse IsaacSim latest documentation (nvidia.com)icon-default.png?t=N7T8https://docs.omniverse.nvidia.com/isaacsim/latest/ros_tutorials/tutorial_ros_clock.html

 在WLS ubuntu终端订阅该topic;

其它可能问题

我按照上面步骤安装和配置没有遇到问题,但之前配置docker ros遇到过网络问题,本以为WLS2也会遇到,因为发现WLS用了虚拟以太网,可能使得DDS发现不了,但是神奇的是本机直接就通了,但多机之间ROS还通不了。

如果遇到ros2 topic list 显示不出消息,那么可以检测防火墙,或者关闭防火墙,更高级的可以配置WSL的网络,默认情况下,WSL 使用基于 NAT(网络地址转换)的体系结构进行网络连接。 

使用 WSL 访问网络应用程序 |Microsoft 学习 --- Accessing network applications with WSL | Microsoft Learn


Isaac Lab开发不易,欢迎加QQ群一起交流学习:723139415

  • 18
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值