基于PT32Z192 Cortex-M3 MCU的离线语音识别案例
2024-05-09 来源:elecfans
随着科技的飞速发展,人机交互的方式也在不断演变。在键盘、触摸屏之后,语音识别技术正逐渐成为人机交互的新宠。从技术路线上来讲语音识别又分为在线语音和离线语音,不同于在线语音受制于网络的局限性,离线语音完全在本地运行,不需要联网和后台服务器,具有明显的低成本、低功耗优势。本文分享一款基于MCU平台的离线语音方案,具有识别灵敏度高、成本低廉和应用方便等特点,供大家参考。
废话不多说,直接上干货
此方案基于PT32Z192 Cortex-M3的MCU,内置AI语音识别算法库,默认普通话,可支持多种语言词条,支持语音播报。识别距离:安静环境下可达10米。
01 主控MCU资源
型号:PT32Z192,Cortex-M3内核
主频:160MHz
FLASH:512Kbytes,RAM:128Kbytes
12位高精度ADC,最高转换速率1Msps
高级定时器:最多可配置4路互补PWM输出
UART串口数量:2
IIC/SPI
封装:QFN32/LQFP64
02 咪头
选用了一款高灵敏度咪头,30dB或更高。
03 显示
采用了一个2.8寸TFT显示屏,三线SPI接口,移植了LVGL图形库进行UI界面交互;
04 通讯接口
预留两路UART通讯口,方便以后的应用扩展,如连接蓝牙/NB/Zigbee等无线通讯模块。
05 语音播报
兼容两种方案,专用语音播报芯片和PWM语音播放方案。
1)采用专用语音播放芯片,其中语音数据是存储在语音芯片内部的,可以找厂家定制或者自己用工具采样生成并烧录,方法灵活多样。然后,语音芯片的输出端连接一个功放(可不要,加功放可驱动大功率喇叭)和扬声器,MCU通过串口控制语音芯片进行声音播报。这种采用专用语音芯片的方案优点就是控制起来比较简单,软件开发也比较容易,只需要调通语音芯片的通讯协议即可。
2)PWM语音播报,就是MCU把采集好的语音数据(语音数据比较大,可存放在nor flash中)通过PWM方式输出,经过功率放大后驱动扬声器发出声音。如果不使用专用语音芯片同时对播报音量强度要求不高的情况下,可以采用PWM+功放+nor flash的方案。这种方案等于把专用语音芯片用一个功放IC和nor flash替代,成本上是否有优势读者可根据实际情况去评估,另外有一个缺点就是软件处理上相对复杂一点,声音的音质没有保证,需要花精力去调试和优化。
06 AI语音识别算法库
MCU厂家提供语音识别算法库和现成的应用DEMO,接口简单易懂、调用方便,拿到DEMO程序后保留原有语音识别框架不动,然后添加自己的应用程序代码,可以很方便的实现应用开发。
基本功能讲完了,下面直接上原理图
电源部分
MCU主控部分
语音咪头电路
语音播报芯片电路
功放电路
PWM语音播报电路
NOR FLASH电路
TFT显示屏接口
此方案简单易用,可应用于多种智能控制场景,如语音灯,语音风扇、智能窗帘等。
语音识别技术作为人机交互的新宠,正逐渐改变我们的生活方式。从智能家居到车载导航,从智能客服到语音助手,语音识别技术的应用场景越来越广泛。未来,随着技术的不断进步,语音识别技术将在更多领域发挥重要作用。让我们共同期待一个充满智慧与便捷的语音识别技术时代!