Roomberry:用树莓派 Zero W 将 Roomba 改装为监控机器人
Roomberry 是一个定制监控机器人,将 iRobot Roomba 改装为移动摄像头平台,由树莓派 Zero W 和 CSI 摄像头模组驱动。
本指南教你如何接线 Roomba 开放接口 (OI),从 Roomba 电池给树莓派供电,配置树莓派无头模式,并构建紧凑外壳以访问所有端口。
观看演示视频可看到机器人移动、实时摄像头流和基于网页的控制界面。
理解 Roomba OI
iRobot Roomba 600/700/800 系列暴露一个 mini-DIN 接口,实现开放接口 (OI)。OI 是双向 TTL 串口链路(115200 波特率),允许发送移动指令、读取传感器数据、控制 LED 和扬声器。
OI 支持四种操作模式:
- Off – 默认状态。机器人监听
Start指令。 - Passive – 可读取传感器但不能控制电机。
- Safe – 完全电机控制,带安全检查(悬崖、跌轮、充电器)。
- Full – 完全电机控制,无安全检查 – 谨慎使用。
Passive 模式下,机器人 5 分钟无活动自动休眠。Safe 和 Full 模式保持机器人持续唤醒,任务完成后记得切回 Passive 或 Off 以保护电池。
串口连接与电平转换
Roomba TxD 引脚输出 5V,可能损坏树莓派 Zero W 的 3.3V 逻辑。需用双向电平转换器(如 Adafruit 双向电平转换器)或低速数据分压电阻。转换器需支持 115200 波特率,推荐有源器件。
从 Roomba 为树莓派供电
直接使用 mini-DIN 7 号电源针脚 (Vcc-Gnd) 受限于 200mA 自恢复保险丝。Pi Zero W 单独需 150-180mA,加上摄像头 300-450mA 峰值会反复触发保险丝。
解决方案是绕过保险丝,直接焊接导线到 Roomba 主板电池焊盘。部分拆解后焊接一对线到电池焊盘,获得 10-20.5V 全电压,需降压至稳压 5V。
推荐开关降压稳压器如 Pololu D24V5F5。输入最高 36V,输出 5V,效率 85-90%,支持 500mA,足够 Pi Zero 和摄像头。将稳压器输出接 micro-USB 线插入 Pi 电源输入。
外壳与硬件布局
为整洁构建,用 12×10 引脚 PCB 做小型 HAT,集成电平转换器、复位按钮和 Pi Zero W。外壳为标准树莓派外壳改装,开口给 micro-USB 线和 CSI 摄像头连接器。
复位按钮接 Pi RUN 引脚,无需断电即可重启系统。
配置 Raspbian (Stretch Lite)
1. 禁用串口控制台:raspi-config –> Interfacing Options –> Serial(登录 shell 选 No,UART 选 Yes)。或编辑 /boot/config.txt 注释 console=serial0,115200 并添加 enable_uart=1。
2. 启用摄像头:raspi-config –> Interfacing Options –> Camera 或在 /boot/config.txt 设置 start_x=1, gpu_mem=128, disable_camera_led=1。
3. 禁用 swap 并将 /tmp 挂载为 50MB RAM 盘。调整 /etc/fstab 和 commit_time=30 减少 SD 卡磨损。
4. 可选省电调整:关闭 HDMI (tvservice -o)、关闭活动 LED、禁用蓝牙 (dtoverlay=pi3-disable-bt)。
测试串口接口
安装 minicom (sudo apt-get install minicom) 并连接 Roomba 串口:
minicom -b 115200 -o -D /dev/serial0
若机器人在充电座,应看到实时传感器数据流。按 Ctrl-A 然后 X 退出。
运行 Roomberry
树莓派上电、摄像头启用、串口链路建立后,即可启动 Roomberry 控制脚本(此处不含)。网页界面允许控制移动、拍照、视频流。
完整演练请观看演示视频并遵循上述分步说明。
安全提示
- 使用后务必将机器人切回 Passive 或 Off 模式,避免电池深度放电。
- 使用知名降压稳压器;廉价山寨品不可靠。
- 焊接电池焊盘时仔细核对极性,保持布线整洁防短路。
- 使用全新大容量 microSD 卡延长寿命。
制造工艺
- ROCR:仿长臂猿攀爬的轻量化节能机器人
- 现代相机的演变与设计
- 树莓派与Arduino协作构建机器人:分步指南
- BrickPi Bookreader:树莓派+乐高Mindstorms自动翻页朗读Kindle
- DIY仿Wall-E树莓派CD盒机器人
- 滚动闹钟机器人:树莓派+Google Calendar智能移动唤醒系统
- 用 Arduino 打造电动《我的世界》苦力怕机器人
- Archimedes:情感感知 AI 机器猫头鹰
- Roomberry:用树莓派 Zero W 将 Roomba 改装为监控机器人
- 在 Windows 10 IoT Core 上构建语音驱动的计算机视觉机器人
- ROS 机器人:树莓派终端控制导航
- Simple Pi Robot:用树莓派打造 2WD 自主巡航车