EDA-Robot 是一个基于 ESP8266 开发的机器狗控制系统,支持通过 Web 界面进行远程控制机器狗的运动、表情显示等功能,并具备电池状态监测、WiFi 配置、时间同步和天气查询等附加功能。
- 主控:ESP8266 开发板(推荐 NodeMCU v2)
- 执行机构:4 个舵机(分别连接引脚 14、16、12、13)
- 显示设备:SSD1306 128x64 OLED 屏幕(I2C 接口)
- 输入设备:2 个按键(引脚 2、15)
- 电源:支持电压监测的电池供电模块
- 开发环境:PlatformIO IDE
- 框架:Arduino
- 核心库依赖:
- ESPAsyncWebServer:用于搭建 Web 服务器
- U8g2:OLED 屏幕驱动
- NTPClient:网络时间同步
- ArduinoJson:JSON 数据处理
- WiFi:网络连接管理
- 运动控制:支持前进、后退、左转、右转等基础动作
- 姿态控制:可实现坐下、趴下、抬手脚等动作
- 模式切换:支持自由模式(自动动作)与手动控制模式切换
OLED 屏幕可显示多种表情状态:
- 开心、生气、难受、好奇、喜欢
- 错误、晕、嘉立创 LOGO 等特殊状态
- 提供 Web 控制界面,支持通过浏览器远程操作
- WiFi 配置功能,可通过网页设置连接的无线网络
- NTP 时间同步,支持显示当前时间
- 天气查询(需配置心知天气 API 密钥)
- 电池电压实时监测
- 电量百分比计算与显示
- 提供控制页和配置页的入口
- 显示项目基本信息
- 运动控制区:方向控制、姿态控制按钮
- 表情控制区:各种表情切换按钮
- 联网功能区:时间和天气显示切换
- 状态显示区:实时显示电池电压和电量
- WiFi 名称和密码设置
- 心知天气 API 密钥配置
- 城市名称设置(拼音小写)
- 设备信息展示
- 硬件搭建:按引脚定义连接舵机、OLED 屏幕和按键
- 环境配置:
- 安装 PlatformIO IDE
- 导入项目并安装所需库(自动处理依赖)
- 初始设置:
- 上电后连接名为 "EDA-ROBOT" 的 WiFi(密码:11451419)
- 访问 http://192.168.4.1 进入配置页
- 设置本地 WiFi 信息和天气 API(可选)
- 控制操作:通过控制页按钮发送指令控制机器狗
src/main.cpp:主程序逻辑,包含硬件初始化、Web 服务器配置和控制逻辑src/image.cpp:存储 OLED 显示的图像和表情数据data/:存放网页前端文件(index.html、control.html、setting.html)platformio.ini:项目配置文件,定义开发板、框架和依赖库
- 舵机初始位置可能需要根据实际装配情况校准
- 天气功能需要注册心知天气 API 并获取密钥
- 电池电压检测参数(分压比、电压范围)可能需要根据硬件调整
项目基于嘉立创 EDA 开发平台,项目来源于嘉立创平台原作者