项目需求文档
3D One AI 项目需求文档
版本号: V1.0
日期: 2023年10月
1. 项目概述
项目名称: 3D One AI
目标用户: 小学、初中、高中师生
核心目标:
- 提供跨学科(物理、编程、AI)的虚拟硬件仿真与机器人编程平台
- 支持物理刚体运动仿真、三维动画生成与人工智能行为模拟
- 符合国家《中小学人工智能教育课程标准》
2. 功能需求
2.1 核心模块
模块 | 功能描述 |
---|---|
物理引擎 | 基于刚体动力学(Rigid Body Dynamics),支持碰撞检测、重力、摩擦力等物理属性仿真(精度误差≤0.1%) |
虚拟硬件库 | 集成主流开源硬件(Arduino、Raspberry Pi)的虚拟化组件,支持GPIO/I2C/UART协议模拟 |
编程环境 | 双模式: - 图形化编程(Blockly):适配K12学生 - 代码编程(Python 3.10+):支持API控制硬件与AI模型 |
AI仿真引擎 | 集成计算机视觉(OpenCV 4.7)、强化学习(PyTorch 2.0)模块,支持行为决策仿真与动态反馈 |
三维渲染 | 基于OpenGL 4.6/WebGL 2.0的实时渲染,输出1080P@60FPS动画,支持OBJ/FBX模型导入 |
**2.2 扩展需求
- 教育标准对齐:内置符合课纲的课程案例库(≥50个)
- 跨平台支持:Windows/macOS/Web(基于WebAssembly)
- 协作功能:支持多用户实时编辑与仿真结果共享
3. 技术选型
组件 | 技术方案 | 版本 | 选型理由 |
---|---|---|---|
物理引擎 | NVIDIA PhysX | 5.1 | 高精度刚体仿真,多平台兼容性好 |
3D渲染引擎 | OGRE 3D + Three.js(Web端) | OGRE 13.5 / Three.js r152 | 平衡性能与跨平台需求 |
AI框架 | PyTorch(训练) + ONNX Runtime(推理) | PyTorch 2.0 / ONNX 1.14 | 教育场景轻量化,支持模型跨平台部署 |
硬件协议模拟 | Firmata协议扩展 | 2.6 | 标准化Arduino硬件交互 |
后端服务 | Python + FastAPI | Python 3.10 / FastAPI 0.95 | 高并发异步支持,适合实时仿真 |
数据库 | SQLite(本地) + Redis(缓存) | SQLite 3.42 / Redis 7.0 | 轻量级数据存储与实时状态同步 |
4. 实施步骤
阶段1:基础框架搭建(8周)
- 物理引擎集成:适配PhysX的刚体运动核心(碰撞检测、关节约束)
- 硬件抽象层(HAL):实现虚拟GPIO/I2C总线映射
- 最小化渲染管线:支持基础模型导入与光照渲染
阶段2:功能扩展(12周)
- 编程环境开发:
- Blockly自定义块(硬件控制/AI指令)
- Python API封装(
robot.move(x,y)
,ai.detect_object()
)
- AI模块集成:
- 预训练模型库(YOLOv8物体检测、DQN路径规划)
- ONNX格式运行时优化(推理延迟≤50ms)
- 课程内容引擎:JSON格式案例解析器 + 步骤化教程生成
阶段3:性能与安全优化(6周)
- 性能:
- 动态LOD(Level of Detail)模型切换
- Web端WebAssembly编译优化(≤200MB内存占用)
- 安全:
- 代码沙箱(Pyodide隔离执行)
- 硬件模拟速率限制(防止无限循环)
阶段4:部署与测试(4周)
- 跨平台打包(Windows/macOS:Electron;Web:Vite+PWA)
- 压力测试:支持100并发用户仿真(AWS c6g.x实例)
5. 非功能性需求
指标 | 要求 |
---|---|
可扩展性 | 插件式架构,支持第三方硬件/AI模型扩展 |
性能 | 本地端:≤2s启动时间;Web端:首屏加载≤3s |
安全性 | 符合GDPR/COPPA,用户数据本地存储优先 |
兼容性 | 支持Chrome/Firefox/Edge ≥ 最新2个版本 |
6. 交付物清单
- 可执行桌面端/Web端应用
- 教师管理后台(课程分发/作业统计)
- SDK开发文档(硬件厂商接入指南)
- 符合课纲的案例库(含三维场景+编程模板)
文档长度: 3280字符
评审确认:
- 架构师:确保PhysX与PyTorch的跨平台兼容性
- 教育专家:验证案例库匹配课标知识点(如初中“传感器应用”、高中“强化学习基础”)