27浏览
查看: 27|回复: 27

[项目] 【花雕动手做】基于ESP32S3和通义千问AI语音聊天机器人

[复制链接]
开源项目
1、核心功能:该项目利用ESP32S3开发板,结合通义千问大模型,实现了一个AI语音聊天机器人。用户可以通过语音与机器人进行交互,机器人能够理解用户的语音指令并给出相应的语音回答。
2、技术架构:
(1)语音识别:使用语音转文字大模型,将用户的语音输入转换为文本信息。
(2)文本理解:将转换后的文本发送到通义千问大模型进行处理,模型会根据文本内容生成相应的回答。
(3)语音合成:将模型生成的文本答案通过文本转语音大模型转换为语音输出,供用户收听。
3、DIY硬件:
•开发板:ESP32-S3-DevKitC-1(选择 WROOM N16R8 模组)
•数字麦克风:INMP441
•功放:MAX98357A
•腔体喇叭:8Ω 2~3W  或 4Ω 2~3W
•导线:跳线一盒,杜邦线若干
•400 孔面包板 2 块
•12832 IIC 液晶显示屏,SSD1306 驱动(0.91寸)
•ML307R Cat.1 4G 模组,AT固件版(可选)
4、软件实现:
(1)连接WiFi:ESP32S3首先需要连接到WiFi网络,以便能够访问互联网。
(2)语音采集与播放:通过麦克风模块采集用户的语音输入,并通过扬声器播放机器人的语音回答。
(3)API调用:使用HTTP协议调用通义千问大模型的API,实现语音识别、文本理解、语音合成等功能。
(4)数据处理:将采集到的音频数据打包成JSON格式,发送到语音识别API;将模型生成的文本答案打包成JSON格式,发送到语音合成API。
5、应用场景
(1)智能家居控制:用户可以通过语音指令控制连接到ESP32S3的智能家居设备,如开关灯、调节温度等。
(2)信息查询:机器人可以回答用户的各种问题,如天气预报、新闻资讯等。
(3)娱乐互动:提供简单的娱乐功能,如讲故事、播放音乐等。
6、项目优势
(1)低成本:ESP32S3开发板价格相对较低,且项目开源,用户可以根据自己的需求进行二次开发。
(2)易操作:支持语音唤醒和连续对话,用户无需手动操作设备,即可实现便捷的语音交互。
(3)多功能:除了语音聊天功能外,还可以扩展其他功能,如音乐播放、显示屏实时显示等。

【花雕动手做】基于ESP32S3和通义千问AI语音聊天机器人图1

【花雕动手做】基于ESP32S3和通义千问AI语音聊天机器人图2

驴友花雕  中级技神
 楼主|

发表于 昨天 11:50

【花雕动手做】基于ESP32S3和通义千问AI语音聊天机器人

1、麦克风 INMP441接线

ESP32S3开发板  麦克风 INMP441(I2S接口)
GPIO4                WS 数据选择
GPIO5                SCK 数据时钟
GPIO6                SD 数据输出
3V3                    VDD 电源正 3.3V
GND               GND 接地 短接 L/R 左/右声道

2、数字功放 MAX98357A接线

ESP32S3开发板  数字功放 MAX98357A
GPIO7                   DIN 数字信号
GPIO15               BCLK 位时钟
GPIO16               LRC 左/右时钟
3V3 /3.3V            VCC 电源正极 短接 SD 关机频道
GND                  GND 接地 短接 GAIN 增益和频道

3、0.91寸显示屏(IIC/I2C 接口)接线

ESP32S3开发板   显示屏(IIC/I2C 接口)
GPIO41                 SDA  数据线
GPIO42                 SCK  时钟线
3V3 3.3V                 VCC 电源正
GND                    GND 接地


回复

使用道具 举报

驴友花雕  中级技神
 楼主|

发表于 昨天 15:27

【花雕动手做】基于ESP32S3和通义千问AI语音聊天机器人

三、配置设备 Wi-Fi 和登记设备
1、 WI-FI网络配置
1)启动设备
在bin固件下载/烧录后,将设备保持接通电源,按下开发板上的RST按钮,复位重启设备(如下图位置),设备将进入配网模式。
注:如果烧录0.3.1以上的固件,程序会自动运行,不需要手动按下RST按钮。
2)配网状态
如果 sRGB 彩灯为蓝色(开发板上的白色灯),并保持闪烁,表示设备处于配网状态。
如果设备不在配网状态或需要重新配网,请按住设备上的配网按键(连接 1 号引脚和GND,v0.2.2以下的旧版),同时按下开发板上的复位(RST)按键,然后先松开复位按键,再松开配网按键。
3)配网步骤
(1)使用手机或电脑连接到设备的 WiFi 网络,通常以 Xiaozhi-XXXXXX 命名。选中并连接,如下图示:

【花雕动手做】基于ESP32S3和通义千问AI语音聊天机器人图1

【花雕动手做】基于ESP32S3和通义千问AI语音聊天机器人图2

回复

使用道具 举报

驴友花雕  中级技神
 楼主|

发表于 昨天 13:55

【花雕动手做】基于ESP32S3和通义千问AI语音聊天机器人

(2)在导入bin文件选择框前面勾选中(一定要勾选),在bin文件选择框后面的输入框中填写 0x0  或 0x00 或 0 (表示下载到开发板存储器1区起始位置)

注意:如果你不把bin文件放到flash download tool 程序的bin目录下,放到电脑硬盘其他地方时,请不要使用中文目录名,否则烧录程序加载bin文件会报错,将无法烧录。

(3)COM端口:先在桌面 此电脑 —》右键菜单属性 —》设备管理器(右侧菜单) —》端口(COM和LPT)点击展开,查看插入的开发板对应的COM端口号,(不确定的请插拔一下开发板USB接口,看卸载和新识别的COM端口号就是要选择的COM端口号),即为FLASH DOWNLOAD TOOL在SPI下载是要设置的对应COM端口号。

【花雕动手做】基于ESP32S3和通义千问AI语音聊天机器人图1

回复

使用道具 举报

驴友花雕  中级技神
 楼主|

发表于 昨天 09:02

【花雕动手做】基于ESP32S3和通义千问AI语音聊天机器人

主要DIY硬件

【花雕动手做】基于ESP32S3和通义千问AI语音聊天机器人图1


回复

使用道具 举报

驴友花雕  中级技神
 楼主|

发表于 昨天 09:03

【花雕动手做】基于ESP32S3和通义千问AI语音聊天机器人

400 孔面包板 2 块

【花雕动手做】基于ESP32S3和通义千问AI语音聊天机器人图1
回复

使用道具 举报

驴友花雕  中级技神
 楼主|

发表于 昨天 09:05

【花雕动手做】基于ESP32S3和通义千问AI语音聊天机器人

导线:跳线一盒,杜邦线若干

【花雕动手做】基于ESP32S3和通义千问AI语音聊天机器人图1
回复

使用道具 举报

驴友花雕  中级技神
 楼主|

发表于 昨天 09:08

【花雕动手做】基于ESP32S3和通义千问AI语音聊天机器人

腔体喇叭:8Ω 2~3W  或 4Ω 2~3W

【花雕动手做】基于ESP32S3和通义千问AI语音聊天机器人图1
回复

使用道具 举报

驴友花雕  中级技神
 楼主|

发表于 昨天 09:09

【花雕动手做】基于ESP32S3和通义千问AI语音聊天机器人

3.7V1800mah 锂电池

【花雕动手做】基于ESP32S3和通义千问AI语音聊天机器人图1
回复

使用道具 举报

驴友花雕  中级技神
 楼主|

发表于 昨天 09:12

【花雕动手做】基于ESP32S3和通义千问AI语音聊天机器人

大致的DIY实验布局

【花雕动手做】基于ESP32S3和通义千问AI语音聊天机器人图1

回复

使用道具 举报

驴友花雕  中级技神
 楼主|

发表于 昨天 11:43

【花雕动手做】基于ESP32S3和通义千问AI语音聊天机器人

初步布线完成

【花雕动手做】基于ESP32S3和通义千问AI语音聊天机器人图1
回复

使用道具 举报

驴友花雕  中级技神
 楼主|

发表于 昨天 11:56

【花雕动手做】基于ESP32S3和通义千问AI语音聊天机器人

接线参考图

【花雕动手做】基于ESP32S3和通义千问AI语音聊天机器人图1

回复

使用道具 举报

驴友花雕  中级技神
 楼主|

发表于 昨天 12:27

【花雕动手做】基于ESP32S3和通义千问AI语音聊天机器人

二、Flash烧录ESP32 S3 开发板固件(无IDF开发环境)

此固件适用于 ESP32 S3 WROOM N16R8(最新为V0.98版本)
1、下载固件:https://github.com/78/xiaozhi-esp32/releases(选择下载文件:v0.9.8_bread-compact-wifi.zip)

【花雕动手做】基于ESP32S3和通义千问AI语音聊天机器人图1

回复

使用道具 举报

驴友花雕  中级技神
 楼主|

发表于 昨天 13:25

【花雕动手做】基于ESP32S3和通义千问AI语音聊天机器人

3、下载后解压 flash_download_tool_3.9.7_1.zip 到硬盘自行指定目录即可,无需安装,进入目录直接双击 flash_download_tool_3.9.7.exe 即可运行。
注意,烧录工具也不要放在中文目录下,否则可能无法加载文件。

【花雕动手做】基于ESP32S3和通义千问AI语音聊天机器人图1

回复

使用道具 举报

驴友花雕  中级技神
 楼主|

发表于 昨天 13:35

【花雕动手做】基于ESP32S3和通义千问AI语音聊天机器人

4、连接 ESP32 S3 开发板的 USB JTAG/serial 到电脑主机,运行 Flash 下载工具,使用 UART 模式把下载解压后的 merged-binary.bin 烧录到地址 0x0 。下载设置:
(1)芯片类型,选择 ESP32-S3
(2)工作模式,选择 Develop
(3)加载模式,建议选择 UART (备选USB模式,这里不做说明)

【花雕动手做】基于ESP32S3和通义千问AI语音聊天机器人图1

开发板正面TypeC接口朝下时,右边的接口为 UART 接口(如下图示),左边的为USB接口,注意不要接错了。

【花雕动手做】基于ESP32S3和通义千问AI语音聊天机器人图2



回复

使用道具 举报

驴友花雕  中级技神
 楼主|

发表于 昨天 13:53

【花雕动手做】基于ESP32S3和通义千问AI语音聊天机器人

5、加载固件 & SPI下载设置
(1)在第一行空白框上 ... 按钮,选择bin文件目录导入bin文件,如下图示:

【花雕动手做】基于ESP32S3和通义千问AI语音聊天机器人图1

回复

使用道具 举报

驴友花雕  中级技神
 楼主|

发表于 昨天 14:10

【花雕动手做】基于ESP32S3和通义千问AI语音聊天机器人

(4)其他:SPI速度SPEED 和SPI模式MODE 默认即可(不要选QOUT和DOUT),BAUD波特率可选速度高一点的。
烧录的bin文件前面复选框一定要勾选!
COM端口号根据自己电脑设备管理器里的COM端口选择。

【花雕动手做】基于ESP32S3和通义千问AI语音聊天机器人图1

回复

使用道具 举报

驴友花雕  中级技神
 楼主|

发表于 昨天 14:13

【花雕动手做】基于ESP32S3和通义千问AI语音聊天机器人

(5)点击 START开始烧录,进度条开始出现,直到结束,状态显示 FINISH 完成。下载/烧录过程一般几分钟到十来分钟。

【花雕动手做】基于ESP32S3和通义千问AI语音聊天机器人图1
回复

使用道具 举报

驴友花雕  中级技神
 楼主|

发表于 昨天 14:16

【花雕动手做】基于ESP32S3和通义千问AI语音聊天机器人

(6)烧录完成后,点击按钮上的 RST(Restart,如图位置)重启开发板,即可进入 WI-FI 配网模式。

【花雕动手做】基于ESP32S3和通义千问AI语音聊天机器人图1

【花雕动手做】基于ESP32S3和通义千问AI语音聊天机器人图2
回复

使用道具 举报

驴友花雕  中级技神
 楼主|

发表于 昨天 15:35

【花雕动手做】基于ESP32S3和通义千问AI语音聊天机器人

(2)打开浏览器,确保无线局域网(WIFI)连接的网络是 Xiaozhi-XXXXXX 不要切换,浏览器地址栏输入网址 http://192.168.4.1 进入设备的网络配置页面。

【花雕动手做】基于ESP32S3和通义千问AI语音聊天机器人图1

【花雕动手做】基于ESP32S3和通义千问AI语音聊天机器人图2
回复

使用道具 举报

驴友花雕  中级技神
 楼主|

发表于 昨天 15:37

【花雕动手做】基于ESP32S3和通义千问AI语音聊天机器人

(3)在网络配置页面上,选择 WiFi 名称(仅支持 2.4G,iPhone 热点要打开“最大兼容性”选项),SSID将会自动填写,在下方输入密码,然后点击 “Connect” 按钮(如上右图所示)。
如果 WiFi 名称和密码正确,设备将自动连接到 Wi-Fi,并显示 “Done”,表示已经配置网络成功,设备将在 3 秒后自动重启。
如果配置失败,请检查 WiFi 名称和密码是否正确,或者尝试重新配置。

【花雕动手做】基于ESP32S3和通义千问AI语音聊天机器人图1

【花雕动手做】基于ESP32S3和通义千问AI语音聊天机器人图2

回复

使用道具 举报

12下一页
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

为本项目制作心愿单
购买心愿单
心愿单 编辑
[[wsData.name]]

硬件清单

  • [[d.name]]
btnicon
我也要做!
点击进入购买页面
上海智位机器人股份有限公司 沪ICP备09038501号-4 备案 沪公网安备31011502402448

© 2013-2025 Comsenz Inc. Powered by Discuz! X3.4 Licensed

mail