10890| 2
|
[M10教程] 基于行空板的校园语音导航装置 |
基于行空板的校园语音导航装置项目介绍语音识别技术是一种能让计算机理解和执行人类的语音指令的技术,它可以帮助机器“听懂”人类的语言。语音识别为我们和机器的交互提供了一种新的方式,比如语音导航,当你对麦克风说出要去的地方,智能设备就能显示出前往的路线。本项目我们就来用集成了语音识别技术的语音识别模块,制作一个校园语音导航装置,通过说话快速找到要去的校园地标。 1 项目功能本项目将制作一个校园语音导航装置,模仿生活中的语音助手工作过程,实现语音唤醒装置,并使用设置好的语音命令,控制行空板屏幕显示语音命令中地点的路线指示。 任务一:语音唤醒装置。通过语音命令唤醒装置,让装置进入工作状态。 任务二:语音控制显示路线。设置指定地点语音命令,控制行空板显示语音命令以及对应路线指示。 2 硬件清单3 软件清单Mind+编程软件(下载地址:https://www.mindplus.cc) 任务一:唤醒装置和生活中我们见到的语音助手一样,要控制装置,必须先唤醒装置。如何唤醒呢?接下来我们就来一起看看吧。 1 连接硬件首先,将语音识别模块通过4P白色胶线连接到行空板IIC接口上。 注意1:将语音识别模块上的接口开关拨到IIC接口,喇叭开关拨到SPK1内置喇叭上。 注意2:语音识别模块的介绍,参见附录。 然后,将行空板通过USB线连接到电脑上,等待行空板屏幕亮起,并显示行空板LOGO,表示连接成功。同时,语音识别模块响起欢迎语音。 2 准备软件按照下面步骤,设置Mind+软件编程方式为 Python图形化编程,并完成行空板的加载和连接。 3 编写程序编写程序,通过语音命令唤醒装置开始识别命令,并在行空板上显示唤醒信息。 先加载语音识别模块操作相关指令。点击“扩展”,选择“用户库”,在搜索框中输入“语音识别”,点击加载“Gravity语音识别&合成模块”。 由于语音识别模块扩展库属于用户库,需要使用到“pinpong初始化”库完成模块的引脚初始化。“pinpong初始化”库位于“扩展库”的“pinpong库”分类下,按下图查找并点击加载。 接下来,就可以按照“初始化语音识别模块 → 识别并保存结果 → 判断识别结果是否为唤醒词”的流程编写程序。 这里需要说明的是,在唤醒词ID指令中,唤醒词有三个选项,我们先使用固定关键词“小爱同学”完成装置的唤醒。 当然,为了更加方便直观的看到装置已被唤醒,可以添加适当文字提醒。完整示例代码如下: 4 运行程序点击运行按钮,运行程序,终端显示模块的初始化过程。 程序运行后,行空板显示“叫我小爱同学”(唤醒词提示),对着语音识别模块的麦克风说出“小爱同学”,语音识别模块亮起蓝色灯,响起提示语,行空板屏幕显示“已唤醒”。 5 小试牛刀刚才是使用固定唤醒词唤醒装置的,能不能自己给装置起个“名字”,用来唤醒装置呢? 我们可以用语音控制模块学习自定义唤醒词,然后修改程序就可以用自己定义的唤醒词唤醒装置了。 提示1:控制模块学习自定义唤醒词步骤如下: (1)唤醒模块。对准板载麦克风说出“小智你好”或“小爱同学”(固定唤醒词),模块响起回应词,蓝色指示灯亮起,唤醒成功。 (2)学习唤醒词。说出“学习唤醒词”,然后根据模块语音提示说出要学习的唤醒词三遍,如“小麦”。 (3)如果提示“学习模板超过上限”表示已学习过自定义唤醒词,此时需要删除已学习唤醒词。说出“我要删除”,模块询问“你要删除的是唤醒词还是命令词”,然后说出“删除唤醒词”,删除完毕。重新学习唤醒词。 任务二:语音控制显示路线通过唤醒,装置已经可以开始识别其它命令词了。现在我们可以设置语音命令,控制行空板屏幕显示对应位置的线路。 1 学习自定义命令词首先,先来根据学校的地点确定要使用的命令词和学习顺序,可以用表格记录这些信息(如下表)。
接下来,按照下面的步骤控制语音识别模块学习自定义命令词: (2)删除已学习命令词。说出“我要删除”,模块询问“你要删除的是唤醒词还是命令词”,然后说出“删除命令词”,删除完毕。 2 编写程序编写程序,识别自定义命令词,控制显示对应地点的路线指示图片。 自定义命令词的识别需要使用 学习的命令词的第几个自定义ID,依照次序分别选择两个自定义命令,分别对应“教学楼”和“食堂”路线,并在行空板屏幕上显示对应文字和图片。示例代码如下。 注意:行空板上显示的图片需要提前放入程序文件夹中(放入方法如下图)。 最后,为了使装置更加完整,可以在开始和唤醒时加入对应的背景图片进行显示。完整示例程序如下: 3 运行程序点击运行按钮,运行程序。行空板显示唤醒词提示语和校园背景,对着语音识别模块麦克风说出自定义唤醒词,语音识别模块响起唤醒成功提示语,行空板屏幕显示“已唤醒”和当前位置提示。 4 小试牛刀请尝试为你的装置设置一个彩蛋,语音控制模块学习一个你自己的语音命令词,用来让屏幕显示制作人或其它你想显示的图片(使用素材图片或者自己上网搜索)。 提示:补充示例代码如下。 附录 语音识别模块介绍本项目使用的语音识别模块支持I2C和UART两种通讯方式,采用双麦克风收音。自带训练好的语音识别模型库,使用的时候程序会自动处理语音并在模型库中进行匹配,你可以用内置的语音命令控制,也可以学习自定义的命令。同时,模块也自带喇叭,能通过播放对应的语音给予及时的识别反馈,实现不用编程只通过说话即可完成对模块的设置。 下图标出了模块使用时需要注意的部分: 模块通电后,电源指示灯常亮红色;模块成功唤醒后,唤醒指示灯亮起蓝色灯,等待到达休眠时间(可用程序设置),蓝色灯自动熄灭。 另外,模块可识别命令分为唤醒词和命令词。唤醒词是指唤醒模块进入工作状态的命令,固定唤醒词有两个:“小智你好”和“小爱同学”,可自定义一个唤醒词。 命令词包含学习词、自定义命令词和固定命令词。其中,学习词可用于控制模块学习自定义的命令,常用的学习词如下表:
对于自定义命令词,模块支持自定义17个;模块学习自定义命令次时需要先说出唤醒词,再说出“学习命令词”,然后根据语音提示说出学习命令词完成对应命令词的学习。需要强调的是,不管是识别还是学习命令,模块都需要先被唤醒,才能正常工作。 |
2.47 MB, 下载次数: 2232
© 2013-2024 Comsenz Inc. Powered by Discuz! X3.4 Licensed