ROS Flutter GUI App 是一个基于 Flutter Flame 游戏框架开发的跨平台 ROS 机器人人机交互界面,支持 ROS1/ROS2,可运行于 Android、iOS、Web、Linux、Windows 等多个平台。通过 rosbridge websocket 实现与 ROS 系统的通信。
- 🌟 跨平台支持 - Android、iOS、Web、Linux、Windows
- 🤖 支持 ROS1/ROS2
- 🗺️ 地图显示与导航功能
- 📹 相机图像显示
- 🎮 机器人遥控功能
- 🔋 电池状态监控
- 📍 多点导航任务
- 🛠️ 高度可配置
| 功能 | 状态 | 备注 |
|---|---|---|
| ROS1/ROS2通信 | ✅ | |
| 地图显示 | ✅ | |
| 机器人位置显示 | ✅ | |
| 速度控制 | ✅ | |
| 重定位 | ✅ | |
| 单点/多点导航 | ✅ | |
| 规划轨迹显示 | ✅ | |
| 电池监控 | ✅ | |
| 相机显示 | ✅ | 需要 web_video_server,不支持web |
| 地图编辑 | ✅ | |
| 拓扑地图 | ✅ | |
| 诊断信息显示 | ✅ | /diagnostics topic制表显示及错误Toast弹窗 |
从 Release页面 下载对应平台的最新版本:
- Windows:
ros_flutter_gui_app_windows.zip - Linux:
ros_flutter_gui_app_linux.tar.gz - Android:
ros_flutter_gui_app_android.apk - Web:
ros_flutter_gui_app_web.tar.gz
- ROS1 (Melodic/Noetic) 或 ROS2 (Foxy/Galactic/Humble)
- rosbridge_suite
- web_video_server (可选,用于相机显示功能)
ROS1
sudo apt install ros-${ROS_DISTRO}-rosbridge-suite
sudo apt install ros-${ROS_DISTRO}-web-video-server # 可选ROS2
sudo apt install ros-${ROS_DISTRO}-rosbridge-suite
# web_video_server需要从源码编译
cd ~/ros2_ws/src
git clone https://github.com/RobotWebTools/web_video_server.git
cd ~/ros2_ws
colcon build- 解压web版本压缩包
- 使用Python快速启动HTTP服务:
cd ros_flutter_gui_app_web
python -m http.server 8000- 访问
http://localhost:8000
直接安装APK文件即可。
解压后运行可执行文件即可。
- 启动 rosbridge:
# ROS1
roslaunch rosbridge_server rosbridge_websocket.launch
# ROS2
ros2 launch rosbridge_server rosbridge_websocket_launch.xml- 运行应用并配置连接参数
详细使用说明参见:使用说明
欢迎提交 Issue 和 Pull Request。详见 贡献指南。
本项目采用 CC BY-NC-SA 4.0 许可证。

