首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >疯狂的 Rust 机器人新框架 ,比 ROS2 快 575 倍

疯狂的 Rust 机器人新框架 ,比 ROS2 快 575 倍

作者头像
niqin.com
发布2026-03-18 16:43:20
发布2026-03-18 16:43:20
2200
举报

HORUS,是一个新开源的生产级 Rust 机器人框架。

2026 年 1 月 9 日宣布,声称其性能比 ROS2 快 575 倍,具有亚微秒的 IPC 延迟。HORUS 由 Softmata 团队构建,定位为“机器人的 Android”,通过零拷贝共享内存和无锁架构解决了开发人员对 ROS2 复杂性和性能瓶颈的不满。

“速度不是一切,但在这场竞赛中,它是唯一的筹码。” —— 改编自电影《极速风流》

在机器人领域,时间从来不是抽象的概念。

它意味着机械臂能否在空中抓住一个滚落的零件,意味着自动驾驶汽车能否在毫秒间避开障碍,意味着一个系统是“智能”,还是“迟钝”。

ROS2 长期以来是这一领域的实际标准。但它诞生于一个 CPU 性能每年提升 50% 的时代,其设计隐含着一个如今正在失效的假设:硬件总会越来越快。

我们进入了后摩尔定律时代。

现在,一个名为 Horus 的新框架,用 Rust 语言给出了另一种答案:不依赖硬件提速,而是重构软件本身

2026 年 1 月 9 日,一个名叫 Horus 的机器人框架发布了。

它的团队 Softmata 给它贴了个标签:“机器人的 Android”。口气不小。但它甩出来的数据更唬人:比 ROS2 快 575 倍,IPC 延迟做到亚微秒级

注:什么亚微秒?一微秒是百万分之一秒,一微秒是 1000 纳秒。亚微秒是指少于 1 微秒,但不是 0。好奇的你应该问:那为什么不说纳秒级呢?因为用纳秒数字就太大咯。

575 倍。这数字要么是营销注水,要么是重新发明了轮子——而且这轮子是碳纤维的。

但看完技术文档,倾向于后者。

ROS2 的困境:当“工业标准”变成“工业负担”

2025 年,ROS1 正式结束支持。还在跑着 ROS1 的机器人团队,被推到了岔路口:要么迁移到 ROS2,要么找条新路。

很多人选了 ROS2,然后后悔了。

性能倒车是最直接的耳光。有开发者在论坛里吐槽:“简单节点在 ROS1 只占几个点的 CPU,到了ROS2 吃掉整个核心。”这不是优化问题,是架构问题。对于高带宽传感器——摄像头、深度相机、3D 激光雷达——这种倒退是致命的。

注:ROS2 改用 DDS(数据分发服务)作为通信中间件。DDS 是企业级标准,功能强大,但抽象层厚、开销大。用 DDS 做机器人通信,相当于用集装箱货轮送外卖——能送,但别嫌慢。

一位被逼急了的开发者直接开干:“我受够了 ROS2,就用 Rust 重写了一遍。”——这话后来成了 Horus 文档里的题词。

复杂度的膨胀比性能更让人头疼。ROS2 被批评有 “身份认知障碍:明明是个框架,却觉得自己是操作系统”。想跑起来一个节点,先敲 10 几条命令:工作空间管理、环境变量 sourcing、DDS 配置……还没开始写代码,已经累了。

单元测试“设计上就很复杂”——分布式架构的馈赠。阻塞回调让你在回调里收不到 tf 变换(:tf 是 ROS 里的坐标变换系统),只能写各种别扭的 workaround。

Horus 团队盯上的,就是这些痛点。

575 倍怎么来的:零拷贝 + 锁无关

Horus 的加速有两个引擎,都靠Rust 的内存安全撑起来。

第一个引擎:零拷贝共享内存 IPC

传统框架(ROS2)怎么做通信?发消息时序列化,塞进 DDS,收消息时反序列化。每次拷贝都在烧时间,高频场景下这开销能把 CPU 点着。

Horus 把这套流程直接删了。发布者往共享内存(Linux 下的 /dev/shm/horus/)里写数据,订阅者拿个引用去读——零拷贝,零序列化

注:共享内存不是什么黑科技,但敢在框架层默认用共享内存,需要 Rust 的所有权系统兜底——编译器确保没人一边读一边改,不用加锁,不会崩。C++ 不是不能做,是做了之后 bug 能让你调到怀疑人生。

研究数据说,零拷贝 IPC 对机器人负载能带来 2-3 个数量级的提升。什么意思?传一张 4MB图像,从几十毫秒压到几百微秒。

第二个引擎:锁无关数据结构

Rust 在编译期就把数据竞争堵死了,这让无锁、免等待的通信成为可能。没有线程争抢,没有死锁,没有优先级反转——对硬实时控制(<1ms 循环)来说,这是刚需。

数据是硬通货:

  • 单生产者/单消费者通道:中位延迟 87ns
  • 多生产者/多消费者枢纽:313ns
  • 电机控制命令(CmdVel):296ns,每秒 338 万条消息
  • 2D 激光雷达数据(LaserScan):1.31μs,每秒 76.2 万条消息

对比一下:ROS2 的延迟在 50-500μs 之间。同等负载下,慢 50-500 倍。

当 ROS2 还在为“大 topic”头疼时,Horus 能跑到 每秒 600 万+ 条消息。这不是数字游戏——这是传感器融合是流畅还是卡顿、CPU 是闲着还是烧满的区别。

混血架构:Rust 干脏活,Python干累活

Horus 没有逼你全盘 Rust。

它的设计是混血的:Rust 负责硬实时控制(电机驱动、传感器融合、安全监控,<1ms 循环那种),Python 负责高层逻辑(AI 模型、计算机视觉、路径规划,用 maturin 绑定,Python 3.9+ 可用)。两边通过同一份 topic 通信,零拷贝的优势共享。

这套逻辑很务实:硬实时的地方要确定性,要内存安全,那是 Rust 的战场;算法层要生态,要迭代速度,Python 的活儿 Python 干。

开发体验也做了减法。Horus 用宏(node!、message!)减少样板代码,对比 ROS2 那套啰嗦的生命周期管理,算是降维打击。编译时类型检查把一堆运行时错误提前掐死。

硬件支持走“电池包含”路线:32 个驱动直接打包。

  • 通信总线:SocketCAN、SPI、I2C
  • 执行机构:Dynamixel 舵机、Roboclaw 电机控制器、步进电机、BLDC/ESC
  • 传感器:超声波、功率监视器、力/扭矩传感器、RealSense 深度相机

有个细节很用心:硬件驱动条件编译。

硬件不在的时候,节点自动回退到仿真模式——在笔记本上开发,不需要改代码

上手:一个命令,而不是一节课

ROS2 的上手成本:新建工作空间、source环境、装依赖、配 DDS……够写一篇小作文。

Horus 的上手:

代码语言:javascript
复制
git clone https://github.com/softmata/horus.git
cd horus
./install.sh

前提条件:Rust 1.70+(推荐1.85+)、常见构建工具(gcc、pkg-config)、平台库(OpenSSL、udev、ALSA)。Python 3.9+ 可选。

安装脚本往 ~/.horus/cache/ 里放五个核心库:

  • horus_core:运行时和调度器
  • horus:主框架
  • horus_macros:宏
  • horus_library
  • horus_py:Python 绑定

跨平台支持是原生级的:Ubuntu 20.04+、树莓派(官方 ARM64 测试)、macOS、Windows、WSL2。

每个平台用各自的共享内存路径,不用操心。

CLI 工具:

  • horus new:新建项目
  • horus run:运行
  • horus monitor:实时可视化
  • horus sim:仿真控制

装完跑 ./verify.sh,能看到彩色输出告诉你系统状态。

什么时候选 Horus,什么时候选 ROS2

Horus 不是来“取代” ROS2 的——这种话术太像忽悠投资人的 PPT。更真实的定位是:特定场景下,它是更好的选择。

选 Horus 的情况:

  • 硬实时控制(<1ms 循环)
  • 安全关键系统(手术机器人、自动驾驶)
  • 性能瓶颈场景(高频传感器、ROS2 被“大 topic”卡住的地方)
  • 边缘/嵌入式部署(树莓派级别、电池供电)
  • 新项目 + 团队有 Rust 能力 + 内存安全不可妥协

选 ROS2 的情况:

  • 生态成熟度优先——几千个现存包、工业标准集成(比如 FANUC 支持)、庞大社区、成熟工具链
  • 已经深度绑定 ROS2,迁移成本 > 收益
  • 团队没有 Rust 经验,或者项目环境风险大,需十年以上的生产案例背书

现实的剧本可能是:共存,而非取代。Horus 负责性能关键子系统,ROS2 负责通用基础设施。混合部署比全盘替换更可能成为常态。

代价与风险

Horus 才三个月大(项目始于2025 年 10 月),GitHub 星星 123 颗。生态基本是荒地。Rust 的所有权模型有学习曲线——这是真话,不是谦虚。

ROS2 的成熟度和网络效应是它的护城河。Horus 目前只是护城河外喊话的那一个。

但对于那些被 ROS2 逼疯的开发者——受够了复杂、受够了性能税、受够了“框架以为自己是个操作系统”——Horus 提供了一个看着很美的选择:

现代语言、零拷贝速度、开箱即用的驱动,以及一个承诺:机器人框架可以变简单,而不必变弱。

或许,Horus 目前还是 PPT 画饼,但我必须给这个饼一个星星 😊

参考文章:

Horus: A Rust-Based Robotics Framework 575x Faster Than ROS2

谢谢您的阅读,欢迎交流。如果您发现错别字,也请向我发信息。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2026-03-07,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 iRust 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档