机器人逻辑与接口平台(Java对接ROS)产品系统

我要开发同款
javajet2026年11月02日
4阅读

技术信息

语言技术
Java、Spring、RabbitMQ、HTTP、Flutter
系统类型
Linux、Web
行业分类
机器人、智能硬件

作品详情

行业场景

服务机器人产品需要被Web控制台、手机App和客户业务系统调用,但原团队基于ROS的方案研发3年未能交付:上层应用必须懂ROS才能接入,接口零散、状态不可控、多台机器人无法统一管理。项目推倒重来,目标是做一个让上层应用不用懂ROS、通过标准接口就能下发任务和获取状态的基础平台。

功能介绍

1. 统一接口:资源化HTTP API,统一返回格式与错误码,带版本号,向后兼容;
2. 实时推送:WebSocket推送机器人状态、任务进度和告警,支持对外WebSocket连接;
3. 消息与远程调用:RabbitMQ消息数据链路、Thrift双向远程调用、通用透明数据通道;
4. 逻辑层:按商业需求定义的业务逻辑、状态机、任务编排、多机器人管理、权限与日志;
5. 通信层:自研rosbridge协议实现,连接管理与自动重连,ROS话题/服务/动作与业务接口的映射;
6. 前端:用Flutter开发机器人控制App,用于联调测试。

项目实现

本人以ROS外行身份接手,独自完成从需求分析、整体设计到编码、单元测试的全部工作,用时3个月。
技术栈:Java、Spring Boot、WebSocket、RabbitMQ、Thrift、rosbridge(Ubuntu + ROS)、Flutter。
亮点与难点:
1. 机器人行业以C++/Python为主,本项目用Java实现完整的rosbridge对接,把ROS细节完全封装在通信层;
2. 分层设计:接口层、逻辑层、通信层解耦,机器人型号或ROS版本变化不影响上层应用;
3. 任务异步化 + 状态推送,解决导航等长耗时动作的状态跟踪问题;
4. 平台最终成为机器人产品的基础性商用逻辑与接口系统。
说明:配图为重新绘制的架构与接口风格示意,不含原项目代码与界面。

示例图片

声明:本文仅代表作者观点,不代表本站立场。如果侵犯到您的合法权益,请联系我们删除侵权资源!如果遇到资源链接失效,请您通过评论或工单的方式通知管理员。未经允许,不得转载,本站所有资源文章禁止商业使用运营!
下载安装【程序员客栈】APP
实时对接需求、及时收发消息、丰富的开放项目需求、随时随地查看项目状态

评论