From 6ea1bb9b721984663e8721a00ff3514eae097fcc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=A2=A6=E5=87=8C=E6=B1=90?= Date: Thu, 3 Jul 2025 09:47:35 +0800 Subject: [PATCH] Update README.md --- README.md | 68 ++++++++++++++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 67 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index 4c62d72..dc1dbbb 100644 --- a/README.md +++ b/README.md @@ -1 +1,67 @@ -NO README now. \ No newline at end of file +# MarsCar - 火星车项目 + +MarsCar 是一个基于 ESP32 的火星车项目,带有一个机械臂,可以通过 Flutter 移动应用或 PS2 手柄进行远程控制。 + +## ✨ 项目亮点 + + * **双模控制**: 可通过专属的 Flutter App 或 PS2 游戏手柄进行控制,满足不同场景下的操作需求。 + * **高级机械臂控制**: 采用了逆运动学算法,通过牛顿迭代法精确控制机械臂的末端执行器,实现复杂抓取任务。 + * **实时视频图传**: Flutter 应用集成了低延迟的实时视频流,让您身临其境,精准操控。 + * **功能丰富的用户界面**: + * **多功能遥感**: 提供了多种虚拟摇杆,用于控制车辆移动和机械臂操作。 + * **数据可视化**: 在 App 中实时显示图传和控制的延迟数据,帮助您监控连接状态。 + * **精细化操作**: 支持多种机械臂操控速度模式(精确、缓慢、默认、狂暴),以适应不同任务需求。 + * **跨平台控制器**: 基于 Flutter 开发的 App,可轻松在 Android 和 iOS 设备上运行。 + * **模块化代码**: C++ 源码结构清晰,将不同功能模块化(PS2 控制器、WiFi 服务、机械臂、向量运算等),易于维护和扩展。 + +## 🛠️ 技术栈 + +### **硬件** + + * **主控**: ESP32 + * **电机驱动**: Servo + +### **固件 (Embedded)** + + * **框架**: ESP-IDF, FreeRTOS + * **语言**: C++ + * **通信**: + * WiFi (UDP) + * UART + * **核心算法**: + * 逆运动学 (牛顿迭代法) + * 2D/3D 向量和矩阵运算 + +### **移动端 (Mobile App)** + + * **框架**: Flutter + * **语言**: Dart + * **视频播放**: `media_kit` (RTSP 协议) + * **状态管理**: `provider` + * **图表**: `fl_chart` + +## 🚀 如何开始 + +### **硬件要求** + + * ESP32 开发板 + * 直流电机及驱动模块 + * 舵机 (用于机械臂和转向) + * 摄像头模块 (支持 RTSP 视频流) + * PS2 游戏手柄 (可选) + +### **软件环境** + +1. **ESP-IDF**: 参照 [官方文档](https://docs.espressif.com/projects/esp-idf/en/latest/esp32/get-started/) 进行安装和配置。 +2. **Flutter**: 参照 [官方文档](https://flutter.dev/docs/get-started/install) 进行安装。 + +### **编译与烧录** + +1. 克隆本仓库。 +2. 使用 VSCode 和 ESP-IDF 插件打开项目,编译并烧录固件到 ESP32。 +3. 在 `main/main.cpp` 中配置您的 WiFi SSID 和密码。 +4. 在 Flutter 项目中,根据需要修改 `home_page.dart` 中的默认 IP 地址,然后运行 App。 + +## 协议 + +本项目基于 Apache-2.0 协议。详情请见 [LICENSE](https://www.google.com/search?q=rain-kotsuzui/marscar/MarsCar-979f33becefb45504f5706dfb15daa39fc480306/managed_components/espressif__servo/license.txt) 文件。