一、项目概述
本项目为OOMWOO 开源扫地机器人配套 I/O 主控板研发项目,基于 CPU+MCU 异构双核心架构,采用完全开源硬件设计,目标打造一套可自主复刻、本地离线运行、具备商用级安全机制的 ROS2 自主清扫机器人硬件平台。项目硬件使用 KiCad 完成 PCB 设计,遵循 Apache 2.0 开源协议,全部原理图、PCB 文件、固件代码对外开放,支持爱好者与研发团队二次修改、自制与功能拓展,整机不依赖云端服务,地图、导航、传感器数据全部本地运算处理。

二、总体架构设计
项目采用消费级扫地机主流的计算单元与实时控制单元分离架构,实现高性能智能算法与高可靠实时安全控制解耦:
高层计算单元(CPU):搭载树莓派 CM4/CM5 核心模块,负责 SLAM 建图、路径规划、2D 激光雷达数据解析、双目 MIPI 相机视觉避障、ROS2 机器人业务调度,可对接智能家居平台。CPU 通过串口、SPI、I2C 总线与 MCU 进行数据交互。
实时安全协处理器(MCU):选用 STM32G473,运行 FreeRTOS 实时操作系统,作为整机安全管控核心,保障满足 CE 安全认证要求。MCU 具备静态内存分配、硬件看门狗、确定性实时响应能力,独立管理电机、传感器与电源。当 CPU 程序卡死、失去响应时,MCU 将自动切断所有动力电机电源,规避设备失控风险。
三、硬件功能与接口
I/O 主板集成机器人执行驱动、传感采集、电源管理、外设交互全链路接口,实现一体化硬件承载:
电机驱动模块:支持行走轮、吸尘风机、边刷、滚刷、拖地水泵驱动,内置电流采样与过流检测,实时监测堵转、过载故障。
传感器接口:预留 2D 激光雷达、IMU 惯性单元、红外测距、防跌落悬崖传感器、碰撞传感器、压力传感器、电机里程编码器接口。
视觉模块:搭载双路 MIPI 摄像头接口,用于障碍物识别与视觉避障。
电源管理:集成 4S 锂电池充放电管理、电池状态监测,实现整机上下电、掉电保护、底座充电对接控制。
人机与拓展外设:配置实体按键、状态 LED、音频编解码、麦克风、扬声器、SD 卡存储、充电底座触点等外设。
四、核心安全机制
安全为本项目设计重点,由 MCU 独立实现安全闭环,不依赖上层 CPU:
硬件看门狗监控,保障 MCU 持续运行;CPU 异常无应答时,MCU 自动关停全部电机,防止失控。
碰撞、悬崖触发时,立即切断行走动力,实现紧急停机。
电池电压监测,低电量时自动执行关机保护,防止电池过放损坏。
电机过流检测,检测到堵转、短路时切断电机输出。
所有安全逻辑在 MCU 本地实时执行,即使操作系统崩溃,保护逻辑依旧生效。
五、项目特色与创新点
软硬件解耦双核架构:将复杂 AI 导航算法与底层实时安全控制分离,兼顾智能性能与设备安全性。
全开源可自制:PCB、原理图、固件全部开源,使用通用元器件,可自主打板、组装,支持 3D 打印外壳快速搭建整机。
本地离线自主运行,无强制云端依赖,用户数据、机器人地图本地存储,隐私性更强。
模块化可拓展:树莓派 CM 核心模块可插拔更换,预留丰富传感器与执行器接口,除扫地机器人外,可迁移用于其他移动机器人开发。
面向合规设计,原生按照 CE 安全规范进行硬件保护设计,具备商业化落地改造潜力。
六、应用场景
机器人研发教学、ROS2 科研实验平台;
开源硬件爱好者自制自主清扫机器人;
移动机器人底层控制方案原型验证;
定制化室内自主清洁设备前期开发。
七、开源说明
项目硬件 PCB 使用 KiCad 设计,源码托管于 GitHub 仓库,采用 Apache 2.0 开源许可证,允许自由使用、修改、分发,支持个人非商用以及商业场景下二次开发。
