前言
一直想用语音模块做一些项目,从刚开始的LD3320模块到科大讯飞的语音识别再到cl1122模块,cl1122模块在离线语音识别这一块是真的香,价格便宜而且识别率也很高。
该模块为单面贴装,主要IC包括语音识别芯片CI1122、电源、功放等、声音从单麦克风输入,经语音IC识别后送给功放驱动喇叭播放声音。该模块有8个GPIO口,扩展性良好,通过 2 路 UART,可以扩展 wifi、bt、2.4G、433、zigbee 等通讯 接口实现联网需求,通过 3 路 PWM 可以直接控制灯光,红外等外设。
一.CI1122芯片与其它型号对比
二.资料获取
(建议用ie浏览器,我的谷歌浏览器加载巨慢)
1.启英泰伦语音AI平台
https://platform.chipintelli.com/web#action=179&model=news.news&view_type=list&menu_id=
文档中心: 软硬件开发资料以及平台的使用方法
开发资料: SDK和固件下载,相关开发工具的下载,开发板的硬件资料。
开发者论坛
2.哔哩哔哩立创eda暑期培训视频第三节
三.语音模块识别原理
原理文档:https://platform.chipintelli.com/web#action=232&menu_id=193 视频地址:https://platform.chipintelli.com/web#action=236&menu_id=198 声学模型(男声/女生) 语言模型(中文/英语/日语)
四.初体验
需要的期间 1.usb转ttl模块 2.C22GS02S模块(前言上面那张图) 3.若干导线
接线图 5v供电,该模块上有5V转3.3V的器件,当下载时需要短接3.3v和MCLK(棕色的线) 实物图
usb转ttl连上电脑给开发板后会有语音提示。
五.制作自己的固件
https://platform.chipintelli.com/web#action=232&menu_id=193
1.制作语言模型
命令词列表可以参考命令词推荐:https://platform.chipintelli.com/web#action=232&menu_id=193 选择左侧第三个”语言模型“,点击创建。 先选择自己需要的语言类型然后下载命令词列表_中文模板(最下面深紫色的那个) 将自己的命令词改到模板中。 如果长时间供电不使用模块做语音识别将会进入待机状态需要唤醒词将其唤醒后再说命令词得到其答复。
改完后上传你的文件,之后点击保存,得到声学模型和语言模型,下载声学模型和语言模型。
2.制作播报音合成
选择左侧第五个”播报音合成“,点击创建。 先选择自己需要的语言类型然后下载播报词列表_中文模板(深紫色的那个) 播报词列表需要和你的命令词列表一一对应。
改完后上传你的文件,之后点击保存,得到语音合成文件,下载语音合成文件。
3.环境搭建
下载CI1122的SDK并解压 https://platform.chipintelli.com/web#id=68&action=259&model=ci_document&view_type=form&menu_id=217
下载官方配置好的eclipse 因为CI1122是RISC-V架构需要交叉编译链。 https://platform.chipintelli.com/web#id=36&action=259&model=ci_document&view_type=form&menu_id=217
4.程序编译
打开eclipse.exe file->import… 选择general->existing projects into workspace 输入SDK的地址会自动出现projects:里面的内容然后点击finish 点到项目上然后单击右键选择build project 会在SDK\sample\internal\sample_1122\firmware\user_code生成一个user.bin文件(这个文件在生成固件中很重要)
5.替换文件
1.解压刚下载的语言模型得到以下的三个文件夹 CmdWordStructure:该文件夹存放的内容为{cmd_info}表格,为用户词条置信度相关参数配置文件; GfstCmd:该文件夹存放的内容为平台生成的命令词模型文件; GfstWake:该文件夹存放的内容为平台生成的唤醒词模型文件;
用户将下载的语言模型文件夹中 GfstCmd 以及 GfstWake 这两个文件夹里的[x]asr_chinese_SE292_CI1122_normal.dat文件替换SDK语言模型文件位置内的asr文件夹里的内容。 和 复制到 用户将下载的语言模型文件夹中 CmdWordStructure 目录下配置文件放入SDK语言模型文件夹位置 user_file\cmd_info 内并替换原先的内容;
复制到(可以改名只要开头的[60000]不变就行) 编辑命令词信息表文件(刚复制的那个xls文件) 让播报音1ID那一列和解压语音合成文件 的TTS_wav目录下的文件前面的序号相匹配 2.解压语音合成文件 将TTS_wav目录下的文件复制到sample_1122\firmware\voice\mp3[0]voice_zhinengguanjia_chn
复制 到
6.固件生成
1.双击运行sample_1122\firmware下的合成分区bin文件.bat 选择mp3
2.双击运行sample_1122\firmware下的打包升级.bat 选择芯片,点击固件打包 点击打包固件生成Firmware_V200.bin文件
点击固件升级 拔掉usb转ttl与模块的之间的连线GND或者5v,将usb转ttl插到电脑上,使电脑能识别到usb但是开发板不上电,点击端口后面的蓝色框使其变成对勾 短接3.3V和MCLK引脚
快速连接刚才拔掉的供电线开始下载固件(下载有点慢)
下载完成后打开串口调试助手看看是否有输出并试试自己的命令能不能用
完成
六.绘制底板
可以参考官方的文件: https://document.chipintelli.com/%E7%A1%AC%E4%BB%B6%E5%BC%80%E5%8F%91/%E5%BC%80%E5%8F%91%E6%9D%BF%E5%A5%97%E4%BB%B6%E8%AF%B4%E6%98%8E/img/CI-B02-MB_SCH_20201029.pdf 这是我的底板图:
|