isaac sim 与 WLS2 ros2实现通信

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

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/43762.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

安全求交集PSI

安全求交集定义 求交集的PSI:交集可以被两方看见或其中一方看见,非交集进行保护有两方的PSI半诚实的PSI:攻击者要严格遵守协议,在此基础上得到他人的秘密是做不到的 Two-Party Semi-Honest PSI 挑战一:隐藏非交集元素…

软件测试之冒烟测试

🍅 视频学习:文末有免费的配套视频可观看 🍅 点击文末小卡片,免费获取软件测试全套资料,资料在手,涨薪更快 1. 核心 冒烟测试就是完成一个新版本的开发后,对该版本最基本的功能进行测试&#x…

使用树莓派进行python开发,控制电机的参考资料

网站连接:https://www.cnblogs.com/kevenduan?page1 1、简洁的过程步骤, 2、有代码示例, 3、有注意事项,

Java PKI Programmer‘s Guide

一、PKI程序员指南概述 PKI Programmer’s Guide Overview Java认证路径API由一系列类和接口组成,用于创建、构建和验证认证路径。这些路径也被称作认证链。实现可以通过基于提供者的接口插入。 这个API基于密码服务提供者架构,这在《Java密码架构参考指…

硬件:CPU和GPU

一、CPU与GPU 二、提升CPU利用率:计组学过的 1、超线程一般是给不一样的任务的计算使用,而非在计算密集型工作中 2、Cpu一次可以计算一个线程,而gpu有多少个绿点一次就能计算多少个线程,Gpu比cpu快是因为gpu它的核多,…

electron src build

编译文档: 构建说明 | Electron 1 下载depot_tools (1)安装depot_tools用于获取 Chromium 及其依赖项的工具集:地址 WINDOWS Download the depot_tools bundle and extract it somewhere. (2)在 Windows 上,您需要…

小试牛刀--对称矩阵压缩存储

学习贺利坚老师对称矩阵压缩存储 数据结构实践——压缩存储的对称矩阵的运算_计算压缩存储对称矩阵 a 与向量 b 的乘积-CSDN博客 本人解析博客 矩阵存储和特殊矩阵的压缩存储_n阶对称矩阵压缩-CSDN博客 版本更新日志 V1.0: 对老师代码进行模仿 , 我进行名字优化, 思路代码注释 …

扩展任务1:完成页面的布局设计和美化

任务指导 1、参照下图,完成页面的布局和美化设计: 2、实现思路 例如可以通过修改Style样式的方式完成布局调整,具体页面显示样式,需要学生根据自己的喜好和设计自行完成,建议每个学生的页面尽量个性化设计&#xff0…

锅总反驳李彦宏说的“不要卷模型,要卷应用”

李彦宏的观点是大家不要卷模型,要卷应用,但我认为这种看法是荒谬的。以下是24条反驳李彦宏观点的论点和论据: 模型的准确性直接决定应用的质量和用户体验: 论据:在自然语言处理、计算机视觉等领域,模型的准…

【HTML入门】第六课 - 上标字、下标字和删除字

这一小节,我们说3个比较特殊的,用到的场景不多,但需要的时候绝对是有用处的。他们分别是上标字,下标字和删除字。 目录 1 上标字 2 下标字 3 删除字 4 学习HTML的一些问题 1 上标字 什么是上标字呢?你是否记得多少…

线程并发库复习

1.进行和线程 什么是进程:进程是内存分配的基本单位,它是程序执行时的一个实例,会被放到进程就绪队列,等进程调度器选择它,给它时间片,它才会运行。在java中启动进程,main,test&…

MySQL GROUP_CONCAT 函数详解与实战应用

提示:在需要将多个值组合成一个列表时,GROUP_CONCAT() 函数为 MySQL 提供了一种强大的方式来处理数据 文章目录 前言什么是 GROUP_CONCAT()基本语法 示例使用 GROUP_CONCAT()去除重复值排序结果 前言 提示:这里可以添加本文要记录的大概内容…

16:9横屏短视频素材库有哪些?横屏短视频素材网站分享

在这个视觉内容至关重要的时代,16:9横屏视频因其宽广的画面和优越的观赏体验,已经成为无数创作者和营销专家的首选格式。但要创造出吸引人的横屏视频,高质量的视频素材库是不可或缺的。不管你是资深视频制作人还是刚入行的新手,下…

02day-C++学习(const 指针与引用的关系 inline nullptr)

02day-C学习 1. 使用const注意事项 注意事项 • 可以引⽤⼀个const对象,但是必须⽤const引⽤。const引⽤也可以引⽤普通对象,因为对象的访 问权限在引⽤过程中可以缩⼩,但是不能放⼤。 • 不需要注意的是类似 int& rb a3; double d 1…

SVM - 径向基函数核 Radial Basis Function Kernel,简称RBF核或者高斯核

SVM - 径向基函数核 Radial Basis Function Kernel,简称RBF核或者高斯核 flyfish 径向基函数核(Radial Basis Function Kernel,简称RBF核),也称为高斯核,是一种常用的核函数,用于支持向量机&a…

2025考研~数据结构试卷

作者主页:知孤云出岫 数据结构试题 [TOC](数据结构试题)数据结构试卷一、选择题(每题2分,共20分)二、填空题(每题3分,共15分)三、简答题(每题10分,共40分)四…

15.分频器设计--偶分频

设计一个六分频时钟信号 (1)visio视图: (2)Verilog代码: module divider_six(clk,reset_n,clk_out);input clk;input reset_n;output reg clk_out;reg [1:0]cnt;//计数器模块设计 always(posedge clk o…

突破传统,实时语音技术的革命。Livekit 开源代理框架来袭

🚀 突破传统,实时语音技术的革命!Livekit 开源代理框架来袭! 在数字化时代,实时通信已成为我们日常生活的一部分。但你是否曾想象过,一个能够轻松处理音视频流的代理框架,会如何改变我们的沟通方式?今天,我们就来一探究竟! 🌟 什么是 Livekit 代理框架? Live…

大数据基础:Hadoop之HDFS重点架构原理

文章目录 Hadoop之HDFS重点架构原理 一、什么是Hadoop 二、HDFS简介 三、HDFS架构 3.1、NameNode 3.2、SecondaryNameNode 3.3、DataNode 3.4、Client 四、fsimage和editslog合并 五、Block副本放置策略 六、读写流程 6.1、HDFS写文件流程 6.2、HDFS读文件流程 Ha…

2024年7月1日,公布的OpenSSH的漏洞【CVE-2024-6387】

目录 ■概要 ■概要(日语) ■相关知识 openssh 和 ssh 有区别吗 如何查看 openssh的版本 漏洞描述 glibc Linux是什么 如何查看系统是不是基于 Gibc RHEL Linux 是基于Glibc的Linux吗 还有哪些 Linux版本是基于 GNU C库(glibc&…