站内搜索
发作品签到
ESP-SparkBot
专业版

ESP-SparkBot

工程标签

ESP系列

DIY设计

31.7w
0
0
350

简介

ESP-SparkBot 基于 ESP32-S3,融合语音交互、图像识别与多媒体娱乐,可变身遥控小车、玩转本地 AI,支持大模型对话、实时视频传输和高清视频投屏,性能强大,乐趣无限!

简介:ESP-SparkBot 基于 ESP32-S3,融合语音交互、图像识别与多媒体娱乐,可变身遥控小车、玩转本地 AI,支持大模型对话、实时视频传输和高清视频投屏,性能强大,乐趣无限!

开源协议

GPL 3.0

(未经作者授权,禁止转载)
创建时间:2024-10-15 11:45:10更新时间:2025-03-12 13:42:19

描述

ESP-SparkBot: ESP32-S3 大模型 AI 桌面机器人

嘉立创介绍图片.jpg

项目简介

ESP-SparkBot 是⼀款基于 ESP32-S3,集成语⾳交互、图像识别、遥控操作和多媒体功能于⼀体的智能设备。它不仅可以通过语⾳助⼿实现⼤模型对话、天⽓查询、⾳乐播放等互动,还使⽤⼩度⼿机 APP 完成蓝牙配⽹、⾳⾊切换、⾳乐播放及其他智能服务。同时,ESP-SparkBot 内置加速度传感器,⽀持摇⾊⼦2048 游戏等娱乐交互功能。硬件⽅⾯,其磁吸式设计⽀持模块扩展,可轻松转换为遥控⼩⻋,实现摄像头实时传输⼿机操控。此外,设备⽀持本地 AI 处理,可以运⾏⼈脸识别和动作检测功能。还可以通过投屏模块实现⾼清视频播放和游戏运⾏,展⽰强⼤的性能和多功能性。

视频展示

ESP32 大模型 AI 桌面机器人

> 也欢迎大家二次开发,一起感受 ESP-SparkBot 的魅力与乐趣

版本更新记录

  • V1.0(2024年12月4日):主体头部没有断电开关,无法实现断电关机

  • V1.1(2024年12月26日):

  1. 主体头部新加了断电开关(开关链接已在物料清单中添加),可以通过关机了!!!
    image.png
  2. 新的结构也改好了,只改了头部后壳的结构,所以新增的 3D 文件只有一个,在附件里!!!改动如下图:
    image.png
  3. 履带小车底盘 PCB 也做了相应修改,改成一块板了。
  4. 触摸 FPC 也修复了已知问题。
  5. 新增顶部单触摸按键版本的 FPC 文件。
  • V1.2(2025年2月28日):在 V1.1 版本之上优化了 ES8311 部分电路,解决了大模型对话时喇叭播放声音卡顿问题。

最新的打板只需要打以下三个(红框框出部分)就好,两个 PCB,一个 FPC!!!
image.png

关于固件

固件程序开源在:https://gitee.com/esp-friends/esp_sparkbot

交互方式

ESP-SparkBot 使用 ESP32-S3 自带的触摸功能进行交互,触摸按键通过 FPC 软排线粘贴在 ESP-SparkBot 的顶部(注意:由于受到摄像头结构的影响,顶部按键被分割为左右两块,实际两个按键串接在同一个触摸引脚上)及两个侧面,默认情况下,顶部按键用于确认,左右两侧按键用于功能上下切换。

功能展示

  • 天气时钟功能

ESP-SparkBot 可以通过 IP 地址显⽰当地的实时⽇期、天⽓和温度。

image.png

  • 大模型 AI 对话功能

ESP-SparkBot 可以通过接入大语言模型,实现对话聊天功能,目前已对接:文心一言、ChatGPT、豆包、DeepSeek、Kimi、智谱 AI、Mistral AI、小智AI。具体实现代码请参考源码仓库

大模型对话.gif

  • 无线音箱功能

在⼿机端可以通过⼩度 APP 进⾏蓝牙配⽹和互动操作。连接到⼩度服务器后,ESP-SparkBot 能直接语⾳控制家中的⼩度智能设备,成为你的全能语⾳助⼿

ESP-SparkBot 不仅⽀持⾳量调节,还可以切换到特定的播报⾳⾊,比如明星配⾳,总有⼀种声⾳可以说到你的⼼趴。

通过绑定 QQ ⾳乐账号,ESP-SparkBot 还能播放你喜欢的⾳乐,瞬间化⾝为⼀台迷你⾳箱。还⽀持播放新闻和有声读物,让⽤户体验更加丰富多彩。

  • 赛博木鱼功能

在木鱼功能界面,通过触摸 ESP-SparkBot 顶部的触摸按键,可以敲赛博⽊⻥,积累功德。
如果⼿中有很多 ESP-SparkBot,可以通过 ESP-NOW ⼴播同时敲⽊⻥。成倍积累功德。
功德圆满后进入放松摸⻥状态。

敲木鱼.gif

  • 赛博骰子功能

ESP-SparkBot 内置加速度传感器,进而可以将它当作⼀个赛博骰子,随机转到或摇晃 ESP-SparkBot,屏幕中的 3D 骰子就会根据加速度传感器数据进行转动,停止转到或摇晃后,屏幕上的骰子会逐渐停止转到,并显示最终的骰子点数。

  • 2048 游戏功能

ESP-SparkBot 也搭载了 2048 游戏,进入到 2048 游戏界面后,通过内置的加速度传感器可实现手势识别,通过手势动作与游戏进行交互,畅玩 2048,触摸顶部触摸按键可重置 2048 游戏。

dd4a1ac8-5eb2-41a5-bee0-31b3e0958da8.gif

  • 语音识别 & 人脸识别 & 移动检测

ESP32-S3 ⽀持在本地离线运⾏⼀些 AI 模型,比如语⾳识别、⼈脸识别和移动检测。

通过使用 ESP-SR 库,可以轻松在本地实现语音识别。

通过使用 ESP-WHO 库,可以轻松实现其他视觉 AI 模型,比如猫脸识别、人脸识别、移动检测和⾏⼈检测等。

人脸检测.gif

  • USB 投屏功能

ESP-SparkBot 还可以通过 USB 进⾏投屏,仅需⼀根 USB 线即插即⽤,不占⽤ HDMI ⼝,可以轻松把它当作⼀个电脑副屏使⽤。

⽀持⾳频双向传输,既可以当作扬声器,也可以当作麦克⻛。除了可以流畅观看电视剧,还可以流畅体验电竞或者 3A ⼤作。

USB 副屏.gif
小猫2.gif

  • 运动控制和无线图传功能

除了以上功能,ESP-SparkBot 可以作为一个无线遥控侦查机器人使用。

ESP-SparkBot 底部设计有 4P 磁吸接口(5V/GPIO48/GPIO38/GND),通过设计一个履带小车底盘(需单独再使用一个其他主控,本工程使用的是 ESP32-C2),将履带小车底盘的 4P 磁吸接口与 ESP-SparkBot 的 4P 磁吸接口连接,履带底盘除了可以通过 5V 和 GND 引脚为 ESP-SparkBot 供电,还可以将另外两个 GPIO 通过程序配置为其他通信协议引脚(比如 UART和 I2C),实现履带底盘和 ESP-SparkBot 的数据通信。本项目使用 UART 通信协议,由 ESP-SparkBot 给履带底盘主控发送控制命令,进而实现运动控制。

在运动控制上,可以使用语音控制它前进后退和左右转,或者通过无线遥控设备进行控制。对于无线遥控端,本项目设计开发了配套的 WebServer 控制界面,通过连接到 ESP-SparkBot 的 WebSocket 服务器,然后使用浏览器(推荐使用 Chrome 浏览器)打开 **WebServer 控制界面(192.168.4.1)**就能实现机器人的运动控制和无线图传,另外还可以拍照和切换灯光效果。

语音控制小车运动:
遥控小车.gif
WebServer 控制界面:
image.png

3D 结构设计

3D 打印文件已放附件,欢迎下载!

  • 主体结构
    ESP-SparkBot 的主体结构炸视图如下:
    ESP_Sparkbot 主体爆炸视图.png
    如图所示,主体的一共有 3 块 PCB 板,都通过 1.27mm 的排针排母进行对接。其中,竖着的核心 PCB 板上有 ESP32-S3 的模组、屏幕驱动电路及接口、摄像头驱动电路及 FPC 接口、ES8311 音频电路及扬声器接口。由于受结构影响,麦克风单独贴装在一块小的 PCB 板,它与主控板之间通过 4P 1.27mm 的排针排母进行对接。横着的底部 PCB 板上搭载了 USB-Type-C 口、BMI270 陀螺仪、5V-3.3V DC-DC 转换电路、锂电池充电管理电路及接口、4P 磁吸连接器(母)。竖着的核心 PCB 板和横着的
    主体 3D 结构由四部分组成,分别是主体后壳、主体前盖(带屏幕卡口)、摄像头前盖和摄像头后盖

  • 履带小车底盘结构
    ESP-SparkBot 的履带小车底盘结构炸视图如下:
    履带小车 3D 爆炸视图.png
    如图所示,履带小车底盘由两个 N20 减速电机、ESP32-C2 主控 PCB 板、前后 RGB 灯板、4P 磁吸连接器板、锂电池、两个橡胶履带和 3D 打印结构组成。左右两侧履带分别由两个 N20 减速电机进行驱动,3D 结构设计上主动轮设计有牙槽,防止打滑。
    履带小车一共有四块 PCB 组成,需要飞线连接,飞线连接图如下:
    履带小车飞线图.png

  • 其他配件
    此外,我们还设计了磁吸供电底座和用于装饰的耳朵配件,3D 文件在附件“esp-sparkbot 配件 3D 模型”中,组合效果如下:
    image.png

硬件电路设计说明

供电方式

ESP-SparkBot 支持 USB-Type-C磁吸底座锂电池三种供电方式,既可以长时间磁吸在底座(可自行设计)或履带底盘上使用,也可以短时间拿在手里“把玩”,还支持通过 USB 线进行长供电,具有较强的使用灵活性。

主体电路设计

ESP-SparkBot 主体电路设计参考了乐鑫官方的 ESP32-S3-EYEESP32-P4-Function-EV-Board 开发板电路,其中摄像头和屏幕电路参考的是 ESP32-S3-EYE 开发板,麦克风和扬声器电路参考的 ESP32-P4-Function-EV-Board 开发板,其他电源切换电路、锂电池充电管理电路等等,都是“老套路”了,在以往的项目中都有介绍,需要了解的请参考该账号下的其他项目!!!

复刻指南

  1. 打板时板厚选择 1mm
  2. 板子涉及拼板,打板回来需要自己剪开并打磨
  3. 头部两个板子插接需注意方向,接反极大可能烧板!!!

物料清单

V1.2 版本新增物料:

QQ 交流群

扫描下方二维码加入学习交流群!
image.png

购买方式

目前已经有部分淘宝个人卖家售卖成品或散件,如果不想复刻,可在淘宝搜索“esp-sparkbot”进行购买,也可点击以下链接进行购买:

巡线小车 AI Esp-sparkbot 智能机器人
集智 AI Esp-sparkbot 桌面机器人
ESP-SparkBot 拼单

已知问题

已知问题

目前已知问题如下:

  • 锂电池容量太小,在电池电压较低的时候,在摄像头和 wifi 同时使用时功耗太高,会出现供电不稳导致的重启现象。
  • 目前结构上是 3 块 PCB 板相互插接,还有触摸按键的 FPC,导致装配难度偏高,不是很好装配。
  • IMU 选用的是博世的 BMI270,建议在嘉立创购买,淘宝购买有很大概率买到的不是 BMI270,而是 BMI220,别问为什么是这样,因为我已经踩坑了(可参考这个避坑指南,里面有更详细的说明)。不过在代码里我也适配了 BMI220,但仍然建议使用 BMI270。

如果你在复刻之后发现有其他问题,欢迎评论指正!!!

设计图

未生成预览图,请在编辑器重新保存一次

BOM

暂无BOM

3D模型

序号文件名称下载次数
暂无数据

附件

序号文件名称下载次数
1
ESP-Sparkbot V1.0 版本 3D 结构文件.zip
7838
2
sparkbot 主体头部后壳(有开关版本)_20250107.STL
7814
3
esp-sparkbot 配件 3D 模型.zip
3832
克隆工程
添加到专辑
0
0
分享
侵权投诉
知识产权声明&复刻说明

本项目为开源硬件项目,其相关的知识产权归创作者所有。创作者在本平台上传该硬件项目仅供平台用户用于学习交流及研究,不包括任何商业性使用,请勿用于商业售卖或其他盈利性的用途;如您认为本项目涉嫌侵犯了您的相关权益,请点击上方“侵权投诉”按钮,我们将按照嘉立创《侵权投诉与申诉规则》进行处理。

请在进行项目复刻时自行验证电路的可行性,并自行辨别该项目是否对您适用。您对复刻项目的任何后果负责,无论何种情况,本平台将不对您在复刻项目时,遇到的任何因开源项目电路设计问题所导致的直接、间接等损害负责。

底部导航