智元开源机器人中间件AimRT,正式上线!
今天, 智元自主研发的机器人中间件AimRT正式开源上线,兑现在8月18日智元2024新品发布会上的开源承诺。
AimRT的源码目前托管在Gitee,并同步镜像至GitHub等主流开源社区,相关文档已上线官方网站aimrt.org,感兴趣的开发者请移步官网查看。
在介绍AimRT有哪些特点之前,我们先来谈谈智元为什么要做这样一个中间件。
在机器人中间件的领域中,ROS 1和ROS 2长期占据主导地位。ROS 1在2010年发布了1.0版本,但随着时间的推移,其局限性逐渐显现。为了解决这些问题,ROS 2在2017年发布了第一个版本,并在2022年推出了第一个长期支持版ROS 2 Humble。尽管ROS 2在实时性能、安全性、模块化设计方面进行了显著提升,但在产业落地方面仍面临诸多挑战,针对未来机器人与AI、机器人与云技术的融合,ROS 2尚显不足。面向未来的机器人技术,需要一个更加轻量化、开放和模块化的中间件,以支持新兴技术的发展和应用。
因此,AimRT应运而生。AimRT是智元机器人于成立之初便开始自行研发的一套高性能通信中间件,经过长时间的内部实际使用和测试,现已趋于成熟,并在行业内具备技术领先竞争力。AimRT是一个更现代、轻量易用,且高效稳定的通信开发框架,具备机器人开发流程所必备的许多实用特性,并解决了主流开源中间件的一些痛点。
在软件开发效率方面,AimRT基于现代C++新标准开发,轻量易部署,将现代化设计模式应用在资源管控、异步编程、部署配置等方面,使得机器人应用的开发更加快捷和高效。在工具链与调测效率方面,AimRT提供了完善的调试、性能分析工具,以及良好的可观测性支持,有助于快速发现并解决系统中的问题,相比较传统的通信框架能够更加有力的保证机器人系统的稳定运行。在生态兼容方面,AimRT能够兼容ROS2、Http、Grpc等传统机器人生态或云服务生态,开发者可以根据需要选择合适的通信后端,并支持渐进式升级存量系统,可广泛应用于机器人端侧、边缘端、云端等多种部署场合,与最新的AI技术更亲和。总体来说,这是一款对于开发者非常友好的中间件,能够极大提升开发效率。
另外,我们也考虑到,开发者可能正在使用一些中间件,或许存在开发接口不兼容的问题。所以,在扩展性方面,AimRT提供了全面的插件开发接口,也为后续生态拓展打下了坚实的基础。目前,我们还提供了十余种官方插件,同时也支持开发者们进行二次开发以适配更多场景。比如,对于传统机器人领域开发者,基于 ROS2 开发的运动控制、Slam 等算法模块,可以无缝引入 AimRT ,并通过ROS2后端与已有的原生ROS2模块通信;对于AI 领域开发者,需要基于 Python 或 C++ 开发图像、音频、大模型等算法,也可以直接在代码中引入 AimRT 与 ROS2、Mqtt 等节点通信,从而获取传感器数据或AI处理结果;而对于云服务后台开发者,基于 Python 或 C++ 开发云服务后台,可以直接使用 AimRT 开发后台微服务,基于 Grpc 或 Http 等后端接收请求或与下游微服务通信。
AimRT架构图
以下是AimRT的主要特点总结:
简洁轻量无依赖:基于C++20标准开发,吸取大量现代设计思想,具备高可维护性,高效稳定,为开发者提供一个轻量化的ROS2替代中间件;
强大的兼容性:支持ROS2、Grpc、Http、Mqtt等通信协议,统一接口,原生AI亲和,整合了机器人端侧、边缘端、云端等多种部署场合的研发,支持渐进式升级存量系统;
高扩展性:AimRT提供了全面的插件开发接口,支持二次开发以满足各种特殊场景的需求。
智元正式开源机器人中间件AimRT,是希望通过开源开放和生态共创,共同推进工业机器智能化以及具身智能机器人的技术创新与产业发展。通过社区协作,驱动技术创新的快速迭代和创新成果的极致共享,牵引更多企业和开发者参与到机器人生态建设之中,共同营造一个活跃繁荣的生态系统,为AI与机器人技术的深度融合与最终产业落地作出贡献。
欢迎大家关注
并提出宝贵意见
与我们一起共建智能机器人生态!
评论排行