OTTO Bipedal Robot Control System(OTTO 双足机器人,仓库名 otto_robot)

阿加犀智能科技RoboHub开源项目Arduino UNO Q

产品参数 · 内容说明

基于 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 Q1核心控制器(内置 WiFi)官方商店:https://store.arduino.cc/products/uno-q-4gb
4USB 线缆USB-C 转 USB-A1连接开发板与计算机(烧录 / 调试)—
5超声波传感器HC-SR04(可选)1障碍物检测(扩展功能)—
6电池12V 2800mAh 锂电池1整机供电—
7C-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 4GB1官方商店: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