回到首页 返回首页
回到顶部 回到顶部
返回上一页 返回上一页

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

头像 驴友花雕 2025.01.08 53 0

开源项目
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)多功能:除了语音聊天功能外,还可以扩展其他功能,如音乐播放、显示屏实时显示等。

01 (1).jpg
01 (9).jpg

主要DIY硬件

 

01 (5).jpg

01 (4).jpg

400 孔面包板 2 块

 

01 (3).jpg

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

 

01 (2).jpg

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

 

01 (8).jpg

3.7V1800mah 锂电池
 

01 (6).jpg

大致的DIY实验布局

 

01 (7).jpg

初步布线完成

 

02.jpg

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 接地

 

接线参考图
 

03.jpg

二、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)

 

04.jpg


2、安装 Flash 下载工具:https://www.espressif.com.cn/zh-hans/support/download/other-tools

 

06.jpg


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

 

07.jpg
 

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

 

08.jpg

 

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

 

09.png

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

 

09.jpg

(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端口号。

 

11.jpg

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

 

12.png

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

 

12-.jpg

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

 

13-.jpg
14.jpg

 

三、配置设备 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 命名。选中并连接,如下图示:

 

14-1 (2).jpg
14-1.jpg

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

 

14-2.jpg
14-3.jpg

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

 

14-4.jpg
15 (1).jpg

2、添加新设备到管理后台
你的设备在WI-FI或4G联网后,需要到 小智AI聊天机器人-控制面板 添加设备验证通过,才能正常使用设备进行AI语音聊天,请按照以下步骤操作:
确保设备已连接到互联网,能够通过“你好,小智”唤醒,并出现要求添加设备的提示语6位设备验证码(可以重复唤醒重听)。

手机或电脑浏览器访问 小智AI聊天机器人-控制面板 后台:https://xiaozhi.tenclass.net/  ,如未注册先注册账号。

 

16 (1).jpg

 

在菜单选择“设备管理”,页面中找到“添加新设备”入口。
输入提示语中告知6位数字的设备 ID,然后点击“添加设备”按钮,如下图示。

 

17.jpg

在菜单选择“设备管理”,页面中找到“添加新设备”入口。
输入提示语中告知6位数字的设备 ID,然后点击“添加设备”按钮,如下图示。

 

18.jpg
19.jpg

目前版本,可以选择的角色音色大约有五十多种。

 

20.jpg

实验场景图

 

15 (6).jpg

实验记录视频之一

 

 

【【花雕动手做】基于ESP32S3和通义千问大模型AI语音聊天机器人#电子爱好者 #人工智能 #编程 #科技改变生活】 

 

https://www.bilibili.com/video/BV1SvrYYpE56/?share_source=copy_web&vd_source=371a292a55e5ca9be994cbb4a86cc987

 

 


 

实验记录视频之二

 

 

【【花雕动手做】尝试两个机器人聊天,他们老是互相打岔……】 

 

https://www.bilibili.com/video/BV1EjrYYiE7W/?share_source=copy_web&vd_source=371a292a55e5ca9be994cbb4a86cc987

实验记录视频之三

 

【[花雕动手做]看看两个机器人能聊出什么话题? #人工智能机器人 #电子爱好者 #单片机开发 #编程 #科技改变生活】 

 

https://www.bilibili.com/video/BV1PPrYYyEsn/?share_source=copy_web&vd_source=371a292a55e5ca9be994cbb4a86cc987

评论

user-avatar
icon 他的勋章
    展开更多