汤果 发表于 2021-3-20 17:59:31

智能语音灯


## 【项目背景】

近些年智能家居非常流行,很多设备都可以用语音来控制。我们不妨用语音识别模块来做一个智能语音灯,实现“君子动口不动手”。

## 材料清单
数量|名称|链接
---|---|---
1x|掌控板2.0编程入门学习主控板 含microUSB转TypeC两用线|[链接](https://www.dfrobot.com.cn/goods-1939.html)
1x|Gravity I2C 离线语音识别模块|[链接](https://www.dfrobot.com.cn/goods-3011.html)
1x|micro:bit掌控I/O扩展板|[链接](https://www.dfrobot.com.cn/goods-1966.html)
## 制作过程
### 步骤1 连接器材



设备连接很简单,将语音识别模块连接到扩展板的 I2C 接口即可。



### 步骤2 加载扩展
打开 Mind+ 后切换到【上传模式】。点击左下角的【扩展】,选择【主控板】下的【掌控板】。
![](https://makelogimg.dfrobot.com.cn/Fun4Qc1iCdvv2CXWiWGiiJnniuvP?imageView2/2/w/1600)
切换到【用户库】,搜索“语音识别”,点击【I2C 语音识别模块】。
![](https://makelogimg.dfrobot.com.cn/Fg7EH3bKnGpzGR6JUcWYD0Nyzann?imageView2/2/w/1600)
### 步骤3 编写代码
语音识别模块使用起来很简单,先初始化设置,然后设置关键词。接着就可以识别了。当识别到关键词后会返回一个编号,我们对编号做个判断就知道识别结果的内容了。

![](https://makelogimg.dfrobot.com.cn/FqA-0eRmcl_t-NR0J53jx0Q-pwOo?imageView2/2/w/1600)
下面是基本的语音开关灯程序。

![](https://makelogimg.dfrobot.com.cn/FgAMoe-2WyWkuA65JZd6SmOCTXPn?imageView2/2/w/1600)
来看一下实际效果吧!

https://www.bilibili.com/video/BV1fh411Q7Em

### 步骤4 升级代码
基本功能已完成,但好像缺了点什么。对了,少了点生机。如果有声音的反馈就好了。是时候该派出语音合成模块了。



用同样的方式把语音合成模块接到扩展板的 I2C 接口。在用户库中搜索“语音合成”,将语音合成模块用户库添加到项目中。在代码头部添加如下两部分代码:
![](https://makelogimg.dfrobot.com.cn/FuzHMBSeyJh69pi1wLY_34tJWxzI?imageView2/2/w/1600)
方框中代码中为列表变量【应答】初始化。后面唤醒后从这里随机挑一句应答。蓝色代码为语音合成模块的初始化。
![](https://makelogimg.dfrobot.com.cn/FoREOoRhyNwdvoahGziUES2fqcT0?imageView2/2/w/1600)
当检测到唤醒词(小鱼),也就是返回值为 0 时,随机从应答库中挑一句播放。开灯和关灯的时候播放对应提示语。

完善后的效果如下:

https://www.bilibili.com/video/BV1mh411Q7JM

## 附件
[智能语音灯1.0.sb3](http://makelogimg.dfrobot.com.cn/makelogFile_16162334883056752.109897977918.sb3)
[智能语音灯2.0.sb3](http://makelogimg.dfrobot.com.cn/makelogFile_16162334927154257.587859932974.sb3)

rzyzzxw 发表于 2021-3-21 08:00:52

他来了他来了,智能语音他来了

gray6666 发表于 2021-3-21 15:04:18

列表用很合理,赞{:6_215:}

网络白丁 发表于 2021-3-24 13:56:33

本帖最后由 网络白丁 于 2021-3-24 15:57 编辑

入了一块语音识别模块,感觉识别率很低,很容易错识别错,不知是不是我这块质量问题,还是模块本身就是识别率很低,比如 关灯,开灯,说“灯”就会识别成“关灯”,说开就会识成“开灯”, 说一起其它的词也会被识别成设置的关键词,有时程序一样,还会莫名的没有反应
页: [1]
查看完整版本: 智能语音灯