【项目背景】
看到好多人家里都有智能音箱,可以控制家里的灯、电视等家用电器,真的很羡慕。我想自己做一个能够用语音控制的月球灯。
【原理分析】
语音控制需要给出几个语音指令,比如开灯、关灯、切换颜色等。我们可以仿照小米小爱同学的设计思路,设计一个唤醒词。听到唤醒词以后再给出具体的指令,让灯依照我们的指令变幻颜色。我们选择掌控板作为主控,利用板载三颗彩色 LED,能够变幻出各种颜色。也可以用灯带或者全彩 LED 模块。但是经测试,Mind+ 实时模式下不支持灯带,我们只能用掌控板的板载 LED 来充当灯了。
步骤1 修改舞台背景
首先到背景库中挑选“睡房2”作为我们舞台的背景。
步骤2 加载扩展
为了完成我们的程序,我们需要加载很多扩展。首先选择左下角的“扩展”按钮,到【主控板】分类下选择【掌控板】。
选择【功能模块】分类下的【文字朗读】和【语音识别】。
选择【网络服务】分类下的【AI图像识别】。
步骤3 编写主程序
我们在 Mind+ 角色中编写主程序的代码。当绿旗被点击的时候,我们就开始语音识别。因为需要让电脑一直保持监听的状态,所以我们设置了一个循环。
当听到唤醒词“小月小月”的时候,做一个反馈,告诉我们已经听到了,然后等候用户的语音指令。这里唤醒词原先使用的是“月亮月亮”,但是唤醒成功率或者说识别率太低了,只好换成“小月小月”了。
当听到“开灯”或“关灯”的时候响应用户的指令。
其他指令很简单,听到什么颜色就开什么颜色的灯光。
稍微复杂一点的就是渐变灯。本来也应该写在 Mind+ 角色中的,但是因为用到了死循环,这样我们让它关灯时它只会象征性灭一下,又开始渐变灯的效果了。所以我们做了简单处理,放到背景里去了。当听到“渐变灯”指令时,广播“开渐变灯”,通知背景可以开启渐变灯了。
步骤4 编写渐变灯代码
渐变灯需要创建三个变量,分别代表红色、绿色和蓝色。
我们通过控制红色的值从 0 到 255,然后绿色的值从 0 到 255,接着蓝色的值从 0 到 255,接着依次把这些值递减回 0,这样就可以一直变幻颜色了。
步骤5 创建百度智能云应用
我们去百度 AI 开放平台创建一个百度智能云应用。地址是:http://ai.baidu.com。打开后选择页面右上角的控制台。用百度账号登录即可,登陆后如下图所示。
选择左侧的“语音技术”。
在新出来的页面中选择“创建应用”。
填写好应用信息。我们需要用到语音识别和语音合成,这些已经帮我们勾选好了。
创建完成后记下页面中这个应用的 AppID、API Key 和 Secret Key。填入【切换至独立账户】指令中。
步骤6 设计外观
月球灯的主角当然是月球灯罩了。因为建模过程太复杂,我直接网上下载了一个模型,用 3D 打印机打印出来。我们将掌控板塞进去即可。
步骤7 测试运行
调试代码,观察效果。
评论