基于ESP32的MICROPYTHON的AI对讲终端示例

语音助手(MCU独立完成)-MICROPYTHON方案YTH20240723
历史记录
日期 撰写 说明 备注
2024.7.23 YTH MICROPYTHON实现基本功能

目录
1 要求及系统方案 3
1.1 系统要求 3
1.2 系统方案 3
2 硬件原理 3
2.1 硬件原理框图 3
2.2 资源分配 4
2.3 接线实物图 5
3 MicroPython嵌入式软件设计 5
3.1 搭建硬件(下载BOOT) 5
3.2 程序结构 6
3.3 程序设计 7
4 系统测试验证 8
4.1 MICROPYTHON 调试跟踪记录 8
5 技术参考 8
5.1 音频采样及头格式 8
5.2 WAV文件格式 8
5.2.1 文件大小: 8
5.2.2 Wav文件头 9
6 视频观看及源代码: 9

1 要求及系统方案
1.1 系统要求
基于AI实现实现语音对话,代码用micropython实现
1.2 系统方案
在这里插入图片描述

数据流说明

  1. 声音采集:按键采集声音,抬起按键上传当前采集的声音数据。
  2. 声音识别:mcu将声音文件送到平台(百度)识别出TXT文本
  3. 人工对话:mcu将TXT文本送到人工智能(miniMixia)进行理解,回收得到的文本TXT
  4. 文本转WAV:mcu将文本送到到云平台(讯飞),将TXT转换成声音。
  5. 结果播报:终端获取云WAV文件,语音播报出结果。

2 硬件原理
2.1 硬件原理框图

在这里插入图片描述

2.2 资源分配

  1. INMP441
    #define I2S_SCK 40
    #define I2S_WS 41
    #define I2S_SD 39

L/R----0 左声道。
2) 按键
#define button 10 //按键口线

  1. MAX98357:

#define I2S_PIN_SCK 12
#define I2S_PIN_LRC 14
#define I2S_PIN_DIN 13

2.3 接线实物图

在这里插入图片描述

3 MicroPython嵌入式软件设计

3.1 搭建硬件(下载BOOT)
1)BOOT下载
https://micropython.org/download/ESP32_GENERIC_S3/

2)烧写BOOT程序
https://blog.csdn.net/m0_63235356/article/details/136428924

继续用usart口。

3.2 程序结构

Main.py: 系统主流程
MyWiFi: 网络连接
MyKey.py: 按键检测程序
MyRecord: 录音
Minmaxi:语言模型
MyPlay.py:语音播报

3.3 程序设计

def MyAPP():

MyWiFi.do_connect()

while True:
    
    # 1.等待键按下
    if MyKey.Is_KeyClik()==False:
        continue
    
    # 2.音频采样
    txt=MyRecord2.vtt()
    
    print(txt)
    
    # 3.等待PC处理
    aitext=minimaxi.ai_txt2txt(txt)
      
    # 4.播放音频数据
    MyPlay2.play(aitext)        

4 系统测试验证
4.1 MICROPYTHON 调试跟踪记录

视频观看:【基于ESP32的MicroPython语言开发的AI对讲助手】 https://www.bilibili.com/video/BV1i7eBeyEpY/?share_source=copy_web&vd_source=308a726b717fa4d423fa061267f25ce5

5 技术参考
5.1 音频采样及头格式
https://github.com/micronext/micropython-esp32-i2s-examples/blob/master/examples/read-mono-mic-write-internal-flash.py

5.2 WAV文件格式
5.2.1 文件大小:
Wav大小:TOTAL=HEADER:WAV头(44字节)+PCM (Body)

PCM就是音频文件.

:采样率 * 量化位宽 * 通道数,以及音频数据。

5.2.2 Wav文件头

6 视频观看及源代码:
视频观看:【基于ESP32的MicroPython语言开发的AI对讲助手】 https://www.bilibili.com/video/BV1i7eBeyEpY/?share_source=copy_web&vd_source=308a726b717fa4d423fa061267f25ce5

源代码获取:
https://item.taobao.com/item.htm?id=819764249736

  • 17
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值