项目简介
本项目借助ESP-01S微控制器达成对iRobot Roomba扫地机器人的智能操控。借助WiFi和MQTT协议,用户能够远程控制Roomba开展清扫、停止、回充等操作。该项目适配600系列、700系列和800系列的Roomba,并且支持OTA更新、自动重连、传感器数据报告等多种高级功能。
项目的主要特性和功能
- 网络配置:支持DHCP和静态IP,可通过BSSID连接特定路由器(适用于网状网络)。
- OTA更新:支持通过OTA(Over-The-Air)方式进行固件更新。
- MQTT通信:通过MQTT协议与Roomba通信,支持自动重连。
- Roomba控制:可从正常和深度睡眠中唤醒Roomba,控制其执行正常/局部/最大清扫、停止清扫并返回充电桩。
- 时钟设置:能设置Roomba的时钟,支持自动和手动设置,支持夏令时调整。
- 充电状态:获取Roomba详细的充电状态信息。
- 状态猜测:因Roomba的Open Interface不报告清扫状态,项目通过猜测获取其当前状态。
- 传感器数据:报告高级传感器数据,如电池温度、电压、通用功耗、电机电流、虚拟墙传感器值、按键状态等。
- WiFi状态:报告完整的WiFi状态,包括SSID、BSSID、通道、RSSI和IP。
- 设备重启:支持重启ESP和Roomba,可关闭Roomba电源。
- Home Assistant集成:可轻松集成到Home Assistant,使用模板吸尘器配置即可。
安装使用步骤
- 硬件配置:连接ESP-01S、iRobot Roomba、WiFi模块和其他必要硬件,参照项目中的连接图进行连接。
- 软件安装:确保计算机上安装了Arduino IDE。
- 编译和烧录:使用Arduino IDE打开项目文件,配置必要设置(如WiFi信息),然后编译并烧录到ESP-01S。
- Roomba配置:按照iRobot的说明,确保Roomba的固件是最新的。
- 运行和测试:将烧录好的ESP-01S连接到Roomba,在WiFi网络下测试各项功能。
- Home Assistant集成(可选):按照Home Assistant的文档,配置模板吸尘器以控制Roomba。
注意事项
在进行任何硬件连接或编程之前,请确保你理解相关风险,并在必要时寻求专业人士的帮助。此项目仅供参考和学习,不承担任何责任。
系统要求
- 软件要求:Arduino IDE、MQTT Broker。
- 硬件要求:兼容的iRobot Roomba、WiFi网络、ESP-01S、FTDI Flasher和其他必要硬件。
下载地址
点击下载 【提取码: 4003】【解压密码: www.makuang.net】