封面1 / 11产品参数 · 内容说明
基于 Arduino UNO Q 的双足机器人控制系统:浏览器 Web 控制、语音指令、音乐同步舞蹈、虚拟钢琴互动,无需安装任何 App。
产品参数 · 基本信息
| 项目 | 内容 |
|---|
| 产品名称 | OTTO Bipedal Robot Control System(OTTO 双足机器人,仓库名 otto_robot) |
| 产品定位 | 桌面级双足机器人 / DIY 机器人学习平台(Web + 音乐交互) |
| 开发团队 | APLUX 阿加犀(GitHub:APLUX-Official) |
| 分类 | Motors & Robotics(Arduino 分类) |
| 开源协议 | Apache License 2.0 |
| 项目案例页 | https://projecthub.arduino.cc/aplux/otto-bipedal-robot-control-system-based-on-arduino-uno-q-09add0 |
产品参数 · 核心规格
| 类别 | 参数 |
|---|
| 结构 | 双足四舵机(4 关节:左髋 / 右髋 / 左脚踝 / 右脚踝) |
| 舵机 | 4 × DS3115 数字舵机(0–180°,中位 90°,官方标注扭矩约 2.5 kg·cm;兼容 MG996R) |
| 主控 | Arduino UNO Q(内置 WiFi,48MHz,32KB Flash) |
| 电源 | 12V 2800mAh 锂电池(稳压 5V 供舵机与主控,可脱离电脑独立运行) |
| 机身 | 3D 打印件(PLA/PETG 推荐):躯干外壳、髋支架、腿段、脚板 |
| 扩展 | HC-SR04 超声波传感器(选配,障碍物检测) |
| 控制方式 | 浏览器 Web 界面(手机 / 电脑均可);支持语音指令(Web Speech API) |
| 动作库 | 14 种预设动作 + 3 套预设舞蹈 + 自定义动作序列(JSON 格式) |
| 音频方案 | ① 网页发声(Web Audio API,9 种乐器音色);② USB 扬声器发声(WaveGenerator 合成) |
| 通信 | 前端 ↔ 后端:WebSocket(Socket.IO);后端 ↔ 硬件:Arduino RouterBridge |
产品参数 · 舵机引脚分配
详见 imgs/舵机引脚分配图.png。
| 引脚 | 关节 | 功能 |
|---|
| D3 | 左髋(YL) | 左腿前后摆动 |
| D5 | 右髋(YR) | 右腿前后摆动 |
| D6 | 左脚踝(RL) | 左脚上下倾斜(平衡控制) |
| D9 | 右脚踝(RR) | 右脚上下倾斜(重心转移) |
产品参数 · 系统架构(三层分离)
- Web 前端:舵机测试页 / 虚拟钢琴页 / 动作控制与音乐播放页(Socket.IO 实时通信)
- Python 后端:main.py(服务器与 API)、otto_core.py(正弦振荡器与动作生成)、otto_controller.py(硬件接口封装)
- Arduino 固件:sketch.ino(舵机实时控制、RouterBridge 通信、角度变化 <2° 不重复下发以减小抖动)
产品参数 · 核心算法
- 重心转移原理:髋关节交替摆动产生前进动力,踝关节上下倾斜转移重心;髋 / 踝关节相位差 90°,保证单腿支撑期平衡
- 正弦振荡器:位置 = A × sin(相位 + 初始相位) + O,舵机角度 = 位置 + 90 + 校准值(限幅 0–180°);固定采样周期 30ms(约 33 FPS)
- 四参数动作生成:振幅 A、偏移 O、周期 T、相位差 —— 组合出全部动作
产品参数 · 动作库(14 种)
| 动作 | 说明 | 参数 |
|---|
| walk | 行走 | steps, T, direction |
| turn | 转向 | steps, T, direction |
| bend | 侧弯 | steps, T, direction |
| shakeLeg | 摇腿 | steps, T, direction |
| updown | 上下起伏 | steps, T, height |
| swing | 摆动 | steps, T, height |
| tiptoeSwing | 踮脚摆动 | steps, T, height |
| jitter | 抖动 | steps, T, height |
| ascendingTurn | 上升旋转 | steps, T, height |
| moonwalker | 月球漫步 | steps, T, height, direction |
| crusaito | 滑翔 | steps, T, height, direction |
| flapping | 拍打 | steps, T, height, direction |
| jump | 跳跃 | steps, T |
| home | 归位 | — |
产品参数 · 预设舞蹈(3 套)
- happy 快乐:摇摆 → 前进 → 后退 → 踮脚摇摆 → 归位
- dance 舞蹈:左滑步 → 右滑步 → 左滑翔 → 右滑翔 → 拍打 → 归位
- greeting 问候:摇摆 → 左弯 → 右弯 → 前进 → 归位
产品参数 · 特色功能
- 浏览器控制:无需安装任何软件,打开网页即可控制
- 虚拟钢琴:9 种乐器音色(钢琴、小提琴、吉他、长笛、萨克斯等);音符频率映射动作(低频 C3–G3 缓慢、中频 C4–B4 标准、高频 C5–G5 快速)
- 音乐同步舞蹈:内置 4 首歌曲(APT.、极乐净土、Welcome to New York、咏春),支持上传 MP3 自动分析节拍并同步起舞
- 语音控制:说出预设指令(行走、跳跃、停止等)即可执行动作
- 安全特性:舵机角度自动限位 0–180°、动作参数范围检查、线程安全设计
- 性能优化:动作帧预计算、固定采样率保证流畅、角度变化小于 2° 不发送命令
产品参数 · 快速上手
- 按 3D 打印件说明装配机器人,舵机接到 D3 / D5 / D6 / D9
- USB 连接开发板与电脑,在 Arduino App Lab 中加载 OttoControlWebVoice 项目,配置 WiFi(教程示例密码:12345678)
- 点击 Run 启动程序,按日志输出的地址打开 Web 控制台(默认 http://<机器人IP>:8000)
- 点击 Connect 连接机器人 → 依次体验舵机测试、虚拟钢琴、动作控制与音乐舞蹈
- 注意:USB 扬声器发声版本(OttoControlUsbVoice)音效尚在完善,推荐优先使用网页发声版本
产品参数 · 说明
本页参数依据官方 GitHub README、Arduino 项目页描述与博客文档整理,如有更新以官方发布为准。
BOM清单 · 内容说明
基于 Arduino UNO Q 的 OTTO 双足机器人(Web 浏览器控制 + 语音指令 + 音乐同步舞蹈)可采购硬件 / 配件清单。 > 整理依据:官方 GitHub 仓库 README 硬件组件表、Arduino Project Hub 项目页与完整博客文档。
BOM清单 · 一、可购买硬件 / 配件
备注: > - 机器人提供两个软件版本:网页发声版(OttoControlWebVoice,推荐)与 USB 扬声器发声版(OttoControlUsbVoice);硬件相同。 > - 工具建议:个人电脑、3D 打印机(推荐 PLA/PETG)、焊接工具、螺丝刀套装。
| 序号 | 物料名称 | 型号 / 规格 | 数量 | 用途 | 购买链接 |
|---|
| 1 | 舵机 | DS3115 数字舵机(0–180°,中位 90°;兼容 MG996R) | 4 | 腿部关节驱动:左髋(D3)、右髋(D5)、左脚踝(D6)、右脚踝(D9) | 淘宝购买:https://item.taobao.com/item.htm?id=36360286212 |
| 2 | 拓展板 | 自定义(电池供电、舵机 IO 扩展与供电) | 1 | 电源分配与舵机信号连接 | — |
| 3 | 开发板 | Arduino UNO Q | 1 | 核心控制器(内置 WiFi) | 官方商店:https://store.arduino.cc/products/uno-q-4gb |
| 4 | USB 线缆 | USB-C 转 USB-A | 1 | 连接开发板与计算机(烧录 / 调试) | — |
| 5 | 超声波传感器 | HC-SR04(可选) | 1 | 障碍物检测(扩展功能) | — |
| 6 | 电池 | 12V 2800mAh 锂电池 | 1 | 整机供电 | — |
| 7 | C-to-C 数据线 | 自定义 | 1 | 连接拓展板与开发板 | — |
| 8 | 外壳 | 3D 打印(OTTO 模型全部打印件:上盖、下盖、开关、电池盖板、左/右髋、左/右脚踝) | 1 套 | 机身结构 | 模型目录:https://github.com/APLUX-Official/otto_robot/tree/OttoControlUsbVoice/models |
| 9 | 螺丝 | 自定义 | 若干 | 组装机器人全部零件 | — |
BOM清单 · 二、官方器件清单(Arduino Project Hub)
| 类别 | 名称 | 数量 | 链接 |
|---|
| 硬件 | Arduino® UNO™ Q 4GB | 1 | 官方商店:https://store.arduino.cc/products/uno-q-4gb |
| 软件 | Arduino App Lab(开发环境) | 1 | 官方文档:https://docs.arduino.cc/software/app-lab/ |
| 工具 | 个人电脑(Personal Computer) | 1 | — |
开源协议与链接 · 一、开源协议
备注:GitHub 仓库未附独立 LICENSE 文件,再分发 / 二次开发请遵循 Apache-2.0 条款。
| 适用对象 | 开源协议 | 说明 |
|---|
| 项目(整体) | Apache License 2.0(Apache-2.0) | 来源:Arduino Project Hub 项目页许可标注(license_type: Apache License 2.0) |
开源协议与链接 · 二、相关链接
| 类型 | 链接 |
|---|
| 项目仓库(GitHub) | https://github.com/APLUX-Official/otto_robot |
| 项目案例页(Arduino Project Hub) | https://projecthub.arduino.cc/aplux/otto-bipedal-robot-control-system-based-on-arduino-uno-q-09add0 |
| 操作手册(PDF,官方) | https://projects.arduinocontent.cc/09c4773a-f085-4598-afd4-9efe57b1c920.pdf |
| 项目博客(PDF,官方) | https://projects.arduinocontent.cc/2564eb10-b07b-4e2f-a0d3-c521c39f35c7.pdf |
| 电路原理图(PDF) | https://github.com/APLUX-Official/otto_robot/blob/OttoControlUsbVoice/Schematic_2026-03-10.pdf |
| 3D 打印模型目录 | https://github.com/APLUX-Official/otto_robot/tree/OttoControlUsbVoice/models |
| 动作文档(OTTO_ACTIONS.md) | https://github.com/APLUX-Official/otto_robot/blob/OttoControlUsbVoice/OTTO_ACTIONS.md |
| Arduino UNO Q 4GB(官方商店) | https://store.arduino.cc/products/uno-q-4gb |
| Arduino App Lab(开发环境) | https://docs.arduino.cc/software/app-lab/ |
| 开发团队主页 | https://github.com/APLUX-Official |