所有分类
主题 主题
平台 平台
我的工作台
userHead
注册时间 [[userInfo.create_time]]
创造力 [[userInfo.creativity]]
[[userInfo.remark]]
[[d.project_title]]
articleThumb
[[d.material_name]]
timelineThumb
进入工作台
折叠
所有分类 我的工作台
展开

语音控制月球灯

小汤一号迷弟 小汤一号迷弟 2020-01-17 20:09:55
2
0
简单

【项目背景】

看到好多人家里都有智能音箱,可以控制家里的灯、电视等家用电器,真的很羡慕。我想自己做一个能够用语音控制的月球灯。

【原理分析】

语音控制需要给出几个语音指令,比如开灯、关灯、切换颜色等。我们可以仿照小米小爱同学的设计思路,设计一个唤醒词。听到唤醒词以后再给出具体的指令,让灯依照我们的指令变幻颜色。我们选择掌控板作为主控,利用板载三颗彩色 LED,能够变幻出各种颜色。也可以用灯带或者全彩 LED 模块。但是经测试,Mind+ 实时模式下不支持灯带,我们只能用掌控板的板载 LED 来充当灯了。

材料清单 材料清单
1x
掌控板
1x
高品质 micro USB数据线
步骤1 步骤1
修改舞台背景

首先到背景库中挑选“睡房2”作为我们舞台的背景。

projectImage
步骤2 步骤2
加载扩展

为了完成我们的程序,我们需要加载很多扩展。首先选择左下角的“扩展”按钮,到【主控板】分类下选择【掌控板】。

projectImage

选择【功能模块】分类下的【文字朗读】和【语音识别】。

projectImage

选择【网络服务】分类下的【AI图像识别】。

projectImage
步骤3 步骤3
编写主程序

我们在 Mind+ 角色中编写主程序的代码。当绿旗被点击的时候,我们就开始语音识别。因为需要让电脑一直保持监听的状态,所以我们设置了一个循环。

projectImage

当听到唤醒词“小月小月”的时候,做一个反馈,告诉我们已经听到了,然后等候用户的语音指令。这里唤醒词原先使用的是“月亮月亮”,但是唤醒成功率或者说识别率太低了,只好换成“小月小月”了。

projectImage

当听到“开灯”或“关灯”的时候响应用户的指令。

projectImage

其他指令很简单,听到什么颜色就开什么颜色的灯光。

projectImage

稍微复杂一点的就是渐变灯。本来也应该写在 Mind+ 角色中的,但是因为用到了死循环,这样我们让它关灯时它只会象征性灭一下,又开始渐变灯的效果了。所以我们做了简单处理,放到背景里去了。当听到“渐变灯”指令时,广播“开渐变灯”,通知背景可以开启渐变灯了。

projectImage
步骤4 步骤4
编写渐变灯代码

渐变灯需要创建三个变量,分别代表红色、绿色和蓝色。

projectImage

我们通过控制红色的值从 0 到 255,然后绿色的值从 0 到 255,接着蓝色的值从 0 到 255,接着依次把这些值递减回 0,这样就可以一直变幻颜色了。

projectImage
步骤5 步骤5
创建百度智能云应用

我们去百度 AI 开放平台创建一个百度智能云应用。地址是:http://ai.baidu.com。打开后选择页面右上角的控制台。用百度账号登录即可,登陆后如下图所示。

projectImage

选择左侧的“语音技术”。

projectImage

在新出来的页面中选择“创建应用”。

projectImage

填写好应用信息。我们需要用到语音识别和语音合成,这些已经帮我们勾选好了。

projectImage

创建完成后记下页面中这个应用的 AppID、API Key 和 Secret Key。填入【切换至独立账户】指令中。

projectImage
步骤6 步骤6
设计外观

月球灯的主角当然是月球灯罩了。因为建模过程太复杂,我直接网上下载了一个模型,用 3D 打印机打印出来。我们将掌控板塞进去即可。

projectImage
projectImage
projectImage
步骤7 步骤7
测试运行

调试代码,观察效果。

projectImage
Makelog作者原创文章,未经授权禁止转载。
2
0
评论
[[c.user_name]] [[c.create_time]]
[[c.parent_comment.count]]
|
[[c.comment_content]]