制作坊SingleYork手把手教你用Micro bit DIY一款多功能语音小车 专区

SingleYork手把手教你用Micro bit DIY一款多功能语音小车

SingleYork2018-12-27 4657人围观

故事背景

这款《多功能语音小车》,是笔者参加庆科跟阿里云联合举办的《万物有声机器人大赛》的作品,采用亚博智能的Micro bit智能小车套件为载体,搭载了庆科MXPVT-VBS7100语音套件,接入了阿里云平台,用户可以通过语音指令,让Micro bit执行相关的动作,比如:

通过ASR指令开灯、关灯之类的动作;
通过ASR指令,语音让小车前进、后退、左转、右转指定步数;
或者让小车进入自动循迹模式,秒变成一款自动循迹小车等;
也可以通过红外遥控远程打开AI开关,让小车播放云端音乐,讲故事等。

该项目主要定位在青少年编程教学:

将庆科的这款语音套件与micro bit结合起来,通过在编程中增加语音互动,来增加青少年学习编程的乐趣。
通过自己组装、改装小车,DIY小车轨道,改装电路等,提高青少年的动手能力、想象能力、创造能力;
通过边学习,边娱乐的方式,让初学者在不知不觉中,轻松掌握更多的专业知识,提高编程能力;
编程、娱乐相结合,闲暇时间还可以用来听音乐、听故事,让更多的青少年远离游戏、爱上编程。

物品清单

名称 数量
Micro bit智能小车套件 1
MXPVT-VBS7100语音套件 1
5V继电器模块 1
纸皮 若干
胶枪 1
电胶布 1

制作步骤

DIY一条属于自己的迷宫式轨道,主要制作过程是先将纸皮裁剪好,然后用热熔胶枪将纸皮连接好,最后可以用电胶布做一个循迹用的轨道。


小车上所用的继电器为5V的继电器,输入三个端子,分别为DC+、DC-、IN,其中DC+和DC-为电源端子,这里为了兼容Micro bit的接口,用了3.3V供电(实际上,3.3V也是可以正常驱动的,另外输入端这边用了一个光耦做信号隔离,可以防止用错电压烧坏Micro bit的IO口),IN为信号输入接口;输出端也是三个端子,分别为NO、NC、COM,其中COM为公共端,与NO组成一对常开触点,与NC组成一对常闭触点。

继电器接线端子详细说明如下图所示:

小车与庆科的板子通过TTL的串口进行双向通信,小车上的TTL接口如下图所示:

庆科的MXPVT-VBS7100语音套件上的TTL接口如下图所示:

庆科的MXPVT-VBS7100语音套件整体连接示意图如下所示:


至此,所有的硬件连接就完成了,接下来我们看下整个项目的软件流程图:

从上图中,我们可以看到,笔者将软件大致分为了三个功能,即小车的三种玩法:循迹模式、口令模式和休闲模式。



其中,循迹模式,主要是小车在自行设计的轨道上按照黑线一直往前跑:

口令模式,则是通过ASR语音指令,让小车在迷宫式的轨道上,前进、后退、左转、右转指定步数,从起点顺利跑到终点,每条ASR指令完成都有语音返回提示,人机交互性更好:

休闲模式有两种玩法:

一是简单的ASR语音指令,让小车执行简单的动作,比如开灯、关灯之类,且每条ASR指令完成都有语音返回提示,人机交互性更好。

另一种玩法是通过一个遥控器的上、下键来控制一个继电器的开合,从而实现对AI按键的控制,使得操作员可以不用每次都去按语音套件上的AI按键,同样能实现远距离AI互动。

通过这些互动玩法,可以培养编程者的动手能力、思考能力、解决问题的能力等,从而提高编程者的编程能力。

编程方式主要采用的是积木编程,串口通信的地方,用JavaScript环境单独编写了一些函数来处理作为补充。由于代码比较长,就不再这里全部帖出来了,特意添加了附件,供大家下载,有兴趣的小伙伴们可以自行下载打开查阅。

好了,限于篇幅,关于这个小制作就简单介绍到这里了,有疑问的小伙们可以留言或者在问答区提问,笔者一有空便会给大家解决心中的疑惑……最后,上传一张这次比赛的获奖图片吧,虽然只是一个三等奖,但是对于我这个刚基础Micro bit的菜鸟来说,已经很满足了,毕竟比赛的结果不是最重要的,重要的是通过这次比赛,学会了不少新技能……

附件

5c24535beed93.rar     下载
16 +1

评论

这位技术小姐姐不得了,为什么你们都这么优秀,还长得好看,还声音好听,文采还这么好(● ̄(エ) ̄●)

#1 2018-12-29 15:43 0 回复

我要给这届水军差评

2018-12-29 18:020

……我是小哥哥……

2018-12-29 17:220

哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈嗝

2018-12-29 18:050

不行,我笑会儿先

2019-09-11 18:240

想知道这个语音模块是什么工作原理,在人说出语音指令以后,语音模块是会通过阿里云平台识别吗?识别以后通过串口发送信息至micro:bit吗?发送的信息是什么呢?有没有协议,协议是自己自定义的吗

#2 2018-12-27 16:08 0 回复

ASR指令是可以自己定义的呢,最多可以定义255条……可以根据指令编号来做出不同的动作……

2018-12-27 16:380

最后一张图的大卡片上面的数字亮了

#3 2018-12-27 16:29 0 回复

给你666╮( ̄▽ ̄)╭

#4 2018-12-27 12:20 0 回复

( ̄▽ ̄)点赞点赞

#5 2018-12-27 16:00 0 回复

大神大神,程序好长呀(´;ω;`)

#6 2018-12-27 16:03 0 回复

程序是有点长呢,是个完整的项目……

2018-12-27 16:380

希望SingleYork大大有空可以给我解答(´・_・`)

#7 2018-12-27 16:10 0 回复

压缩包好像是坏的。

#8 2018-12-28 08:46 0 回复

压缩包只是名字是乱的,但是下载后解压程序还是能打开的,但是我打开后有个错误的提示,好像是某个变量未定义

2018-12-28 09:010

我用IE下载,显示文件已损坏~~~(*/ω\*)

2018-12-28 09:140

我用的是360浏览器,或许可以换一个浏览器Σ(゚д゚;)

2018-12-28 14:390

通过阿里云会觉得有点延迟,如果小车跑远了喊他也听不到吧

#9 2018-12-28 16:29 0 回复

是的,现在庆科的这个套件暂时不支持远距离识别,还有环境噪音没有过滤,后面会越来越好的……

2018-12-29 08:250

哇。简直大放异彩,学习学习。

#10 2018-12-29 11:27 0 回复

这套件那里有买

#11 2019-03-22 10:54 0 回复

目前庆科的这个应该市面上还没卖,但是有别的离线的语音模块,能离线,也能联网,不同套餐……https://item.taobao.com/item.htm?id=544425230757

2019-03-22 17:140