资料介绍
描述
当我第一次注意到LEGO MINDSTORMS 语音挑战赛时,我真的很想参加,使用 Alexa 语音驱动技能和 MINDSTORMS EV3 来激活 LEGO 是多么有趣!我的第一个想法是,这应该是一项孩子们会喜欢的有趣活动(并希望也能从中学习)。由于一个项目的目标是充分利用语音交互,而且我有一些朋友的孩子很难学习乘法表,所以一个想法诞生了:将这个项目的技能部分集中在学习数学乘法表上!
下一个问题是该项目的 LEGO MINDSTORMS 部分应该是什么样子?我的第一个想法是一场拔河比赛,两辆由正确的数学测验答案提供动力的汽车朝相反的方向行驶,直到获胜者被命名。不,不好,我想要一款只允许一个孩子练习数学技能的游戏,所以我想到了一辆 LEGO MINDSTORMS 动力卡车,它会在每个正确答案的情况下驶向学生。假设正确回答了足够多的问题,卡车就会送出奖品!当然,每个孩子都是独一无二的,因此我作为该项目的一部分创建的 Mindstorms 数学技能允许调整默认值,即问题数量和难度级别,这让我面临更多语音交互挑战,但结果很好。我还设法调整了奖品,
我想要的这项技能的一个附加功能是“视觉效果”。
Mindstorms Math -修改意图和随机响应演示用户可以更改默认设置以使学生工作更多(或更少)以获得奖品。
创建您自己的项目版本在本文档的下一部分中,我将讨论我用于创建此技能的过程。希望我包含足够的信息,以便您可以创建自己版本的 Mindstorms 数学技能和 Prize Truck Alexa 小工具。
构建技能对于这个项目,我首先构建了 Alexa 技能,我将确切的 LEGO 设计留到以后使用(尽管我有一个粗略的想法,我真正想使用 EV3 的是两个电机,没有传感器)。我首先浏览了 hackster.io设置和任务 1 到 4(在此处找到)。这些教程非常好,它们引导我完成了从将 Alexa Gadgets Toolkit 和相关演示任务代码闪烁到 EV3 智能程序块,到指导我逐步向任务的 Alexa 技能部分添加功能的步骤。如果您完成这些教程,您会发现设置奖品卡车是一个简单的过程。
设置和任务 1 到 4 的基本部分 通过对任务 Python 代码进行一些注释,我可以仅使用以下部分来证明 EV3 可以满足我的要求:LEGO MINDSTORMS EV3 智能积木、MINDSTORMS 大型电机(和电源线) 、microSD 或 microSDHC 卡(2GB 至 32GB)、电脑芯片适配器、USB 无线适配器(我使用的是 TP-Link Nano 适配器)、6 节 AA 电池(最好是可充电电池,我使用的是 TENAVOLTS 品牌,它们对我来说效果很好) . 在完成任务时,您必须注释掉或删除对您没有的任何电机或传感器的引用,否则 Python 代码将失败。如果您在任务 1 到 4 期间遇到困难,请不要忘记使用有用的讨论板. 您还可以通过查看我的另一个基于 Alexa/EV3 的项目Bobblehead Bobbler获得一些提示。
Alexa Skill - Mindstorms Math在玩 LEGO 之前,我专注于我的 Alexa Skill。我修改了 Mission-04 Node.js 代码,但确保支持有趣的游戏和修改默认值功能所需的语音命令和 IntentHandlers。我知道我可以在所有游戏玩法完成后重新添加 EV3 指令。我牢记,因为这是一款孩子们会想玩的游戏,所以我想支持慢速反应、重复提问的能力,甚至是“我不知道”的回答。好消息,我想我做到了,关键是使用Session Attributes。请注意,在代码中我有以下语句:Util.putSessionAttribute(handlerInput, 'lastQuestion', question);
这存储了用户被问到的最后一个问题......然后在 AnswerIntentHandler 中,如果用户没有使用有效数字回答,技能可以使用以下语句“记住”(然后重新询问)该问题:var lastQuestion = "Sorry, I didn't get that, " + attributesManager.getSessionAttributes().lastQuestion;
Mindstorms Math Alexa 技能的其他特点:
- FallBack:我添加了AMAZON.FallbackIntent(Alexa Skill Kit 的一部分),这样当孩子在错误的时间做出愚蠢的回答时,我们可以提示他们再试一次,而不仅仅是失败。
-
不同的回应:注意
randomAwesome()
和randomWrong()
方法。这些通过用随机短语(和声音)响应来增加技能。因此,不要总是只回应“正确!” 当给出正确答案时,我会在“太棒了!”、“正确!”、“是!!”之间随机切换。和“一路走好!”。 -
响应中的声音:我通常会用短促的“Bling”声音来响应,但四分之一的人会用卡车加速的声音来响应,只是有点额外的随机乐趣。这是将声音添加到响应的行:您可以在Alexa Skills Kit 声音库中找到超过 2500 个声音片段的列表(甚至播放)
responseString = "Correct
";
-
回应中的情感:为了获得更多多样性和更愉快的体验,我还使用了情感功能。当代码如下所示时,Alexa 将以不同方式强调单词:您可以使用 Alexa Skills Kit语音合成标记语言
responseString = `Alright!`;
找到更多强调语音的方法。 - 断开连接工作:hackster.io 任务代码需要通过蓝牙连接 EV3 才能运行,如果 Alexa 找不到 EV3 Brick,示例技能就会退出。然而,即使砖块不可用,我也让这段代码工作,这是通过检查有效的“endpointId”在几个地方完成的。因为这项技能是断开连接的,所以即使在 Echo Auto 上,学生也可以更轻松地在车上玩/练习数学!
- Supports Graphics and Different Devices:这个技能有多个代码路径,因为除了EV3之外,我支持屏幕设备(Echo Show),纯文本屏幕设备(Fire HD)和无屏幕设备(Echo Dot)。
为您自己设置 Alexa 技能:要添加 Mindstorms 数学技能,请按照任务 3中所述登录到您的 Alexa 开发者控制台。您会注意到大部分操作发生在 index.js 中但是您需要复制我附加到该项目的所有文件 model.json、common.js、datasource.json、index.js、latest.json、package.json 和 util.js。Datasource.json 用于将信息发送到 lastest.json 中设计的 APL 屏幕除了将文件复制到您的 Alexa 开发者控制台之外,您还需要将此技能注册为 Alexa 小工具,如任务 1 中所述。作为此过程的一部分,您将转到“接口”屏幕以启用您的技能以打开“自定义接口控制器”。对于此技能,因为我们正在启用 Echo Show 设备和 APL,您还需要打开 Alexa Presentation Language,并检查支持的所有屏幕,请参见下图。
您可能想要调整 index.js 文件中的一些默认值。例如,您可能想问 10 个以上的问题或只需要 8 个正确答案即可获得奖品。这些默认值很容易在 index.js 文件的顶部附近找到
设置此项目的 MINDSTORMS EV3 部分:
- 按照 hackster.io LEGO Voice Challenge设置说明在您的 EV3 程序块上启用 Alexa 工具包。这个过程的一个很好的特点是软件都位于您的 microSD 芯片上,因此不会有意外地在 Mindstorms brick 上闪烁坏软件或损坏软件的风险。
-
在设置部分,您下载了一个名为 alexa-gadgets-mindstorms-2019.nnn....zip 的文件。对于 Mindstorms Math 项目,我只是将 mindstorms-math.py 附加到该项目,您需要编辑 mindstorms-math.ini 文件,因为它必须包含您唯一的 amazonId 和 alexaGadgetSecret(如 Mission 4 教程中所述). 使用 Visual Studio Code 将 mindstorms-math.py 和 mindstorms-math.ini 发送到您的 EV3 程序块。这个过程与任务 4中描述的相同,除了我的文件是 mindstorms-math.py和 mindstorms-math.ini如果您熟悉任务代码,这个 Python 文件是相似的,但是 mindstorms-math.py 处理“摇动”和“奖励”指令。我添加的一个小功能是当 EV3(最终)连接到您的 Echo 设备时,
self.sound.speak('Alexa connected', espeak_opts='-a 200 -s 130', volume=100, play_type=0)
导致 EV3 程序块本身以老式计算机语音说话。如果您的 Echo 设备关闭或分离,积木将再次说出消息。
EV3 从 Alexa skill 收到的指令告诉它该做什么。我们发送以下类型的指令:
- '摇动' - 用于移动驱动电机
- '奖品' - 用于使奖品马达送出奖品
- 'prizeNONE' - 当我们不希望奖品电机运行时使用。
- 对于这些指令中的每一个,Alexa 技能传递方向(“向前”或“向后”)、持续时间(运行电机的时间)和速度(运行电机的 100% 的百分比)。(请注意,您可能需要根据您的构建与我的匹配程度来更改速度或持续时间)
配对和取消配对 Prize Truck Alexa Gadget任务 1 中的说明描述了如何取消配对设备。如果您想在 Echo Dot 和新的 Echo Show 之间切换,这将是必需的 :-)。我必须在这个过程的早期这样做,以提醒自己,除了所描述的取消配对方法之外的另一种方法是打开 EV3 程序块的 SSH 终端并运行命令sudo python3 mission-01/mission-01.py --clear
(系统将提示您输入密码和默认设置密码是制造商)。现在,如果您只需运行 mindstorms-math.py 代码,它就会将砖块置于新设备的配对模式。如果你想切换回来并再次与你的 Echo dot 配对,我发现你需要使用 Alexa 应用程序忘记之前的蓝牙设备。
构建此项目的乐高技术部分 现在来一些额外的乐趣:乐高积木!为了记录如何使用这个项目,我找到了一个名为 Studio 的简洁程序,由 BrickLink Corporation 开发。它是免费的,可以在这里https://www.bricklink.com/v3/studio/download.page顺便说一下,在做这个项目的时候,我了解到去年 11 月,乐高集团收购了 BrickLink Ltd,这是世界上最大的在线社区成人 LEGO 粉丝,所以让我觉得将来可能会支持工作室软件。
安装 BrickLink Studio 后,您将能够使用文件 -> 导入来导入 PrizeTruckFullBuildFinal.io 模型。另一个区别是工作室设计中所示的传送带没有皮带,但该部件通常作为一个完整的单元出售(技术零件 92715C01)。
。
在接近项目截止日期时,我偶然在翻箱倒柜中找到了一套 Technics Racer。我将较大的轮子用于备用轮子设计,我认为它看起来更好一些,因此我为该设计包含了另一个 Studio 设计模型文件……这是带有较大轮子的奖品卡车:
最后的想法感谢您检查这个 Alexa LEGO MINDSTORMS 语音挑战项目。我喜欢边玩边学,并鼓励您尝试使用 LEGO MINDSTORMS 创建支持 Alexa 的小工具,这很有趣!
- 由Alexa控制的台灯构建
- 仪器手套开源构建
- 蛋打开源构建
- Nerf Alexa家庭防御炮塔开源构建
- Alexa自动保姆开源项目
- 由Mindstorms EV3和Alexa提供支持的LEGO Target Practice
- 由Alexa控制的Lego Mindstorms EV3机器人
- 适用于Amazon Alexa的游戏Speed Tap开源
- 使用LEGO MINDSTORMS EV3 Amazon Alexa构建的Shelly解决方案
- 烘干机状态响应的Alexa技能开源分享
- 构建自己的alexa控制的圣诞树 1次下载
- Alexa EV3糖果机开源分享
- 松下的视频对讲机被黑以启用Alexa
- 3.1.5 math文件汇总 12次下载
- C28x Fixed-Point Math Library 14次下载
- PyTorch神经网络模型构建过程 276次阅读
- 交换芯片的构建方式 336次阅读
- 网络适配器没有启用TCP/IP服务怎么解决 1.4w次阅读
- 清华等开源「工具学习基准」ToolBench,微调模型ToolLLaMA性能超越ChatGPT 481次阅读
- 使用Splashtop在Windows10上启用远程桌面 825次阅读
- 前沿开源技术领域的开源大数据一一解读 1006次阅读
- 寻找开源硬件成功的触发器 636次阅读
- RT-Thread 4.1.0的CMake构建教程 3129次阅读
- 如何使用STM32制作启用BLE的智能灯泡 2514次阅读
- 构建开源芯片生态需要什么要的 4327次阅读
- 微雪电子ROC-RK3308主板CC-Amazon Alexa简介 1282次阅读
- 冷王公司卡车混合制冷系统,环保可节约运输成本 2971次阅读
- NASA的开源软件是什么?NASA的开源软件的详细分析 7188次阅读
- Jenkins详细安装与构建部署使用教程 1702次阅读
- 特斯拉推出电动卡车_特斯拉电动卡车性能如何 1520次阅读
下载排行
本周
- 1山景DSP芯片AP8248A2数据手册
- 1.06 MB | 532次下载 | 免费
- 2RK3399完整板原理图(支持平板,盒子VR)
- 3.28 MB | 339次下载 | 免费
- 3TC358743XBG评估板参考手册
- 1.36 MB | 330次下载 | 免费
- 4DFM软件使用教程
- 0.84 MB | 295次下载 | 免费
- 5元宇宙深度解析—未来的未来-风口还是泡沫
- 6.40 MB | 227次下载 | 免费
- 6迪文DGUS开发指南
- 31.67 MB | 194次下载 | 免费
- 7元宇宙底层硬件系列报告
- 13.42 MB | 182次下载 | 免费
- 8FP5207XR-G1中文应用手册
- 1.09 MB | 178次下载 | 免费
本月
- 1OrCAD10.5下载OrCAD10.5中文版软件
- 0.00 MB | 234315次下载 | 免费
- 2555集成电路应用800例(新编版)
- 0.00 MB | 33566次下载 | 免费
- 3接口电路图大全
- 未知 | 30323次下载 | 免费
- 4开关电源设计实例指南
- 未知 | 21549次下载 | 免费
- 5电气工程师手册免费下载(新编第二版pdf电子书)
- 0.00 MB | 15349次下载 | 免费
- 6数字电路基础pdf(下载)
- 未知 | 13750次下载 | 免费
- 7电子制作实例集锦 下载
- 未知 | 8113次下载 | 免费
- 8《LED驱动电路设计》 温德尔著
- 0.00 MB | 6656次下载 | 免费
总榜
- 1matlab软件下载入口
- 未知 | 935054次下载 | 免费
- 2protel99se软件下载(可英文版转中文版)
- 78.1 MB | 537798次下载 | 免费
- 3MATLAB 7.1 下载 (含软件介绍)
- 未知 | 420027次下载 | 免费
- 4OrCAD10.5下载OrCAD10.5中文版软件
- 0.00 MB | 234315次下载 | 免费
- 5Altium DXP2002下载入口
- 未知 | 233046次下载 | 免费
- 6电路仿真软件multisim 10.0免费下载
- 340992 | 191187次下载 | 免费
- 7十天学会AVR单片机与C语言视频教程 下载
- 158M | 183279次下载 | 免费
- 8proe5.0野火版下载(中文版免费下载)
- 未知 | 138040次下载 | 免费
评论
查看更多