MobBob:3D 打印智能机器人,Android 手机无缝控制,语音视觉一体
组件与材料
| 组件 | 数量 | 备注 |
|---|---|---|
| Arduino Nano R3 | 1 | 舵机驱动与蓝牙通信 |
| HC-05 蓝牙模块 | 1 | 与手机 App 通信 |
| SG90 微型舵机 | 4 | 双足:左髋/左脚/右髋/右脚 |
| 4xAA 电池盒 | 1 | 供电舵机与 Arduino |
| AA 电池 | 4 | 建议镍氢充电电池 |
所需工具
- 电烙铁
- 3D 打印机 (打印机身结构件)
应用与在线服务
- Arduino IDE
项目简介
MobBob 是一个由智能手机“大脑”驱动的双足行走机器人。手机运行专用 App,通过蓝牙向 Arduino 发送指令,控制 4 颗 SG90 舵机实现行走、转向、摇头、跳舞等动作。手机端利用自带麦克风、摄像头、GPU 实现语音识别、人脸跟随、物体检测等 AI 功能,真正实现了“口袋里的机器人”。
核心资源链接
- 3D 打印模型:Thingiverse #715688
- Android App (APK):APKPure 下载
代码配置要点
在上传代码前,请根据实物修改以下参数:
- 引脚映射:`SERVO_LEFT_HIP`、`SERVO_LEFT_FOOT`、`SERVO_RIGHT_HIP`、`SERVO_RIGHT_FOOT`
- 舵机中位/极限:`*_CENTRE`、`*_MIN`、`*_MAX` 微秒值
- 髋关节朝向:`FRONT_JOINT_HIPS` 设为 `1` (髋关节轴向前,MobBob 风格) 或 `-1` (向后,Bob 风格)
通信协议 (蓝牙串口)
App 与 Arduino 通过软串口 (D11 RX, D12 TX) 以 115200 波特率通信,命令格式为 `<命令,参数...>`,示例:
| 命令 | 格式 | 说明 |
|---|---|---|
| 就绪检查 | ` |
返回 ` |
| 直接设舵机 | ` |
time(ms) 内插值到指定微秒偏移量 |
| 停止/归位 | ` |
完成当前动作后回站立姿态 |
| 立即停止 | ` |
瞬间停止,可能处于不稳定姿态 |
| 前进 | ` |
-1 循环,省略=1 次 |
| 后退 | ` |
同前进 |
| 左转 | ` |
同前进 |
| 右转 | ` | 同前进 |
| 摇头 | ` |
趣味动作 |
| 跳舞/抖动 | ` |
多种预设动画 |
动作完成后 Arduino 回传 `
动画系统架构
代码实现了关键帧插值动画引擎:
- 关键帧数组:`{时长(ms), 左髋, 左脚, 右髋, 右脚}`,-1 表示该关节保持不动
- 支持循环播放、有限次播放、结束动画 (如走路收尾归位)
- 单命令队列:可在当前动画播放时排入下一条,实现平滑衔接
- 20ms 固定周期更新舵机位置 (50Hz)
核心代码 (节选)
完整代码约 600 行,含解析器、动画引擎、舵机驱动。关键片段:
// 动画数据示例:前进步态 (8 关键帧 + 结束动画)
int walkForwardAnim[][5] = {
{8,0,0,0,0}, // 元数据:帧数
{300, LH_C, LF_UP, RH_C, RF_DN},
{300, LH_IN, LF_UP, RH_OUT, RF_DN},
{300, LH_IN, LF_FLAT, RH_OUT, RF_FLAT},
{300, LH_IN, LF_DN, RH_OUT, RF_UP},
{300, LH_C, LF_DN, RH_C, RF_UP},
{300, LH_OUT, LF_DN, RH_IN, RF_UP},
{300, LH_OUT, LF_FLAT, RH_IN, RF_FLAT},
{300, LH_OUT, LF_UP, RH_IN, RF_DN}
};
// 结束动画:回站立姿态
int walkEndAnim[][5] = {{2,0,0,0,0}, {300, LH_C, LF_UP, RH_C, RF_DN}, {300, LH_C, LF_FLAT, RH_C, RF_FLAT}};
原理图

扩展建议
- 换用 MG90S 金属齿舵机,提升耐用性与扭矩
- 加装 MPU6050 实现姿态自稳 (站立不倒)
- 接入 ESP32-CAM 替代手机,实现完全自主视觉导航
- 设计夹爪模块,增加抓取交互能力
制造工艺
- 蓝牙控制树莓派机器人:语音反馈功能构建指南
- 自制LUMAZOID:基于Arduino的音乐可视化灯光控制器
- Arduino 数字骰子:LCD 显示随机点数的电子骰子
- 用 Arduino Nano 自制 37 灯珠轮盘赌游戏机
- Arduino 与智能手机打造智能电压表——简单易做的 DIY 项目
- Arduino Nano 语音控制机器人:蓝牙 + 手机 APP 实现
- PiBot:Arduino驱动的88键钢琴机器人,精准演奏MIDI乐曲
- Arduino Nano 驱动 NeoPixel 矩阵:自制霓虹乒乓游戏
- DIY 手势控制机械臂:基于 Arduino + 柔性传感器 + IMU + 蓝牙的六自由度仿生臂
- 四轮 Arduino 机器人:Dabble App 蓝牙手柄遥控
- Bolt IoT 智能机器人小车:Arduino UNO + L298 驱动
- Arduino 智能安防系统:超声波测距 + 舵机扫描 + 声光报警