[具身智能-185]:如何在 Windows 环境中搭建 ROS2 的环境
Windows 搭建 ROS2 Humble / Jazzy 完整教程前置说明Ubuntu22.04 →ROS2 Humble HawksbillUbuntu24.04 →ROS2 Jazzy JaliscoWindows 原生同时支持 Humble、Jazzy推荐 Windows 11 22H2 及以上Windows10 21H2 也兼容两种方案可选✅ 方案 AWindows 原生 ROS2本机直接运行推荐调试 Rviz2、远程连接机器人✅ 方案 BWSL2虚拟 Ubuntu和真机机器人开发环境完全一致最常用机器人开发方案方案 AWindows 原生安装 ROS2无虚拟机一、系统准备开启开发者模式 设置 → 隐私和安全性 → 开发者选项 → 开启【开发人员模式】安装Chocolatey 包管理器管理员 PowerShell 执行powershellSet-ExecutionPolicy Bypass -Scope Process -Force; [System.Net.ServicePointManager]::SecurityProtocol [System.Net.ServicePointManager]::SecurityProtocol -bor 3072; iex ((New-Object System.Net.WebClient).DownloadString(https://community.chocolatey.org/install.ps1))二、安装依赖管理员 PowerShellpowershellchoco install -y python git visualstudio2022-workload-vctools自动安装 C 编译工具、Python、Git编译功能包必备。三、安装 ROS2二选一选项 1安装 Humble对应 Ubuntu22.04机器人系统版本powershellchoco install ros-humble-desktop选项 2安装 JazzyUbuntu24.04powershellchoco install ros-jazzy-desktopdesktop完整版包含 rviz2、demo、可视化工具最小版ros-humble-base无 GUI不推荐。四、环境激活每次打开终端都需要执行PowerShell:powershell# Humble C:\opt\ros\humble\setup.ps1 # Jazzy # C:\opt\ros\jazzy\setup.ps1CMD 终端使用cmdcall C:\opt\ros\humble\setup.bat五、验证安装powershellros2 run turtlesim turtlesim_node弹出蓝色海龟窗口 安装成功 新开终端激活环境运行键盘控制powershellros2 run turtlesim turtle_teleop_key六、【重点】Windows PC ↔ 嵌入式机器人 跨机通信配置场景Windows 运行 Rviz2远程查看小车 ROS2 话题ROS2 底层 DDS 跨网段发现存在问题必须配置固定 DDS 域名 / 设置 IP设置环境变量PowerShell 激活 ROS 后执行powershell$env:ROS_STATIC_DISCOVERY_TIMEOUT5.0 # 使用FastDDS简单静态发现和机器人保持DDS厂商一致推荐FastDDS $env:RMW_IMPLEMENTATIONrmw_fastrtps_cpp⚠️机器人端和 Windows 端必须使用同一种 RMWDDS 实现机器人默认 FastDDS则 Windows 也强制选用 FastDDS否则无法互相发现话题。永久保存环境可选把 setup 命令写入 PowerShell 配置文件不用每次手动 source。七、Windows 原生优缺点✅ 优点原生 Rviz2 运行流畅直接显卡加速不用虚拟机配置简单适合远程观测机器人数据。❌ 缺点很多机器人硬件驱动串口、手柄、CAN移植困难大量机器人源码是基于 Linux 开发Windows 编译容易报错和实体机器人 ubuntu 环境存在差异容易出现 “Windows 能跑Linux 出错”方案 BWSL2 Ubuntu强烈推荐机器人开发【首选方案】优势环境和小车 Ubuntu22.04 完全一致无兼容性坑可以完美复刻开发流程同时Windows 可以直接打开 WSL 里的 Rviz2 图形界面步骤 1开启 WSL管理员 PowerShellpowershellwsl --install重启电脑自动安装 Ubuntu默认 Ubuntu22.04。步骤 2WSL 内安装 ROS2 Humble和实体 Ubuntu 操作一模一样bash# 设置语言 sudo apt update sudo apt install locales sudo locale-gen en_US en_US.UTF-8 sudo update-locale LC_ALLen_US.UTF-8 LANGen_US.UTF-8 export LANGen_US.UTF-8 # 添加ROS2源 sudo apt install software-properties-common sudo add-apt-repository universe sudo apt update sudo apt install curl gnupg lsb-release sudo curl -sSL https://raw.githubusercontent.com/ros/rosdistro/master/ros.key -o /usr/share/keyrings/ros-archive-keyring.gpg echo deb [arch$(dpkg --print-architecture) signed-by/usr/share/keyrings/ros-archive-keyring.gpg] http://packages.ros.org/ros2/ubuntu $(source /etc/os-release echo $UBUNTU_CODENAME) main | sudo tee /etc/apt/sources.list.d/ros2.list /dev/null # 安装完整版ROS2 Humble sudo apt update sudo apt install ros-humble-desktop步骤 3WSL 启用图形界面直接运行 rviz2、gazeboWindows11 自带 WSLg开箱支持 GUI输入命令直接启动 rviz2bashsource /opt/ros/humble/setup.bash rviz2步骤 4WSL 和局域网机器人通信关键配置默认 WSL 是 NAT 模式机器人无法主动发现 WSL。 两种解决方案简单方案Windows 设置桥接模式 WSL高级工程常用静态 DDS 发现文件指定双方 IP规避自动发现失败机器人项目通用方案WSL2 优缺点✅ 优点 环境和实体机器人 Ubuntu22.04 完全一致所有 Linux 驱动、源码直接编译支持 Gazebo 仿真、串口、USB 手柄可 usbipd 把 USB 设备直通 WSL❌ 缺点初次配置稍复杂大场景仿真相比原生 Linux 有微小性能损耗。【方案选型建议结合亚博小车项目】只做远程可视化调试PC 运行 Rviz2 查看小车话题 使用【方案 A Windows 原生 ROS2 Humble】需要写源码、编译功能包、仿真开发、测试驱动 使用【方案 B WSL2 Ubuntu22.04 ROS2 Humble】高频踩坑汇总坑 1Windows 和 Ubuntu 机器人互相看不到话题根本原因DDS 自动发现跨局域网不稳定解决① 两端统一RMW_IMPLEMENTATIONrmw_fastrtps_cpp② 使用 FastDDS 静态发现配置 XML填写两端 IP③ 关闭 Windows 防火墙 / 放行 UDP 7400~7500 端口坑 2Windows 原生编译功能包报错WindowsC 编译器规则和 gcc 不同很多第三方机器人包缺少 Windows 适配优先换到 WSL 开发。坑 3rviz2 卡顿Windows 原生更新显卡驱动 WSLWindows11 WSLg不要额外安装 VcXsrv。常用测试命令安装完成验证连通性Windows/WSL 激活 ROS 环境后bash# 监听话题测试小车发布的 /cmd_vel ros2 topic list ros2 topic echo /turtle1/cmd_vel

相关新闻

深入解析C语言内存布局:字节序、比特序与位域实战指南

深入解析C语言内存布局:字节序、比特序与位域实战指南

1. 项目概述:为什么我们需要关心内存里的“位”?如果你写过C语言,并且和硬件、网络协议或者跨平台数据交换打过交道,那你大概率遇到过一些“诡异”的问题:一个在x86电脑上运行得好好的程序,把数据发到ARM架…

2026/10/24 18:59:37 阅读更多 →
价格敏感度测试(PSM)实战指南:从模型原理到2025年定价策略

价格敏感度测试(PSM)实战指南:从模型原理到2025年定价策略

1. 项目概述:价格敏感度测试的实战价值在商业世界里,定价从来不是一道简单的算术题。它更像是一场与消费者心理的无声博弈,一个微妙的平衡点,决定了产品是门庭若市还是无人问津。我见过太多产品,功能卓越、设计精良&am…

2026/10/25 6:38:04 阅读更多 →
AI写作助手部署指南:从本地LLM到自动化内容生成

AI写作助手部署指南:从本地LLM到自动化内容生成

这次我们来看一个面向内容创作者的自动化写作工具。如果你经常需要从零开始构思文章、寻找灵感、整理素材,甚至希望实现从“读者”到“作者”的自动化内容生成流程,那么这个项目值得关注。它本质上是一个集成了AI能力的智能写作助手,旨在将阅…

2026/10/24 10:07:01 阅读更多 →

最新新闻

Electron桌面应用开发实战:从环境搭建到打包发布全流程

Electron桌面应用开发实战:从环境搭建到打包发布全流程

做前端这些年,我大部分时间都在跟浏览器标签页打交道,直到第一次把桌面应用跑起来,才发现原来自己一直被限制在地址栏和刷新按钮围起来的框框里。Electron这个词,最开始是在某段时间频繁出现在同事的讨论里,一个用HTML…

2026/10/26 12:00:21 阅读更多 →
滑盖智能锁T109深度解析:结构原理、安装调试与故障排查

滑盖智能锁T109深度解析:结构原理、安装调试与故障排查

简介:亚太天能T109滑盖智能锁产品说明书是一份PDF格式的官方技术文档,主要面向智能锁安装人员、终端用户及售后维护者,帮助快速掌握产品安装、配置与常见故障处理。全包仅1个PDF文件,大小4.37MB,内容结构清晰&#xff…

2026/10/25 22:36:10 阅读更多 →
PMSM弱磁控制原理与Simulink建模:高速AGV驱动系统设计指南

PMSM弱磁控制原理与Simulink建模:高速AGV驱动系统设计指南

上个月我在调试一台高速AGV的驱动系统,整车要求空载跑到8m/s,电机转速已经拉到额定点,驱动器的输出电压也顶到了母线电压极限附近。再往上踩速度指令,转速纹丝不动,三相电流反而开始震荡。那会儿我的第一反应就是&…

2026/10/26 4:52:12 阅读更多 →
C++核心知识点:从内存管理到STL的实战指南

C++核心知识点:从内存管理到STL的实战指南

C 这门语言我前前后后折腾了十几年,用它写过嵌入式驱动、做过游戏服务端,也搭过基础组件库。每次看到新人一头扎进"C 核心知识点"这个搜索词,我其实挺感慨的——这门语言的难点从来不是语法多,而是知识点之间的耦合太深…

2026/10/26 12:00:21 阅读更多 →
T109滑盖智能锁怎么装?安装调试与故障排查全攻略

T109滑盖智能锁怎么装?安装调试与故障排查全攻略

简介:亚太天能T109滑盖智能锁产品说明书以PDF格式发布,适合智能锁用户、安装人员与售后维修人员阅读。内容围绕T109系列指纹密码刷卡锁展开,先介绍前面板、后面板、锁体、机械钥匙、电池盒盖等部件名称与功能,再给出完整安装步骤&…

2026/10/26 5:00:37 阅读更多 →
LLM知识降熵:从信息垄断到理解权下放

LLM知识降熵:从信息垄断到理解权下放

你有没有过这种经历:翻开源码注释、论文摘要或者一份专业报告,每个字都认识,连在一起却像天书。想找人聊聊,身边要么没人懂,要么懂的懒得跟你解释。后来我试着把同一段内容丢给一个大语言模型,几秒钟之后&a…

2026/10/26 3:16:46 阅读更多 →

日新闻

周新闻

月新闻

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/26 12:00:19 阅读更多 →
Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/25 13:21:54 阅读更多 →
黑夜航拍船只数据集训练YOLOV5模型全流程解析

黑夜航拍船只数据集训练YOLOV5模型全流程解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/26 8:34:37 阅读更多 →