資料介紹
描述
當我第一次注意到LEGO MINDSTORMS 語音挑戰(zhàn)賽時,我真的很想?yún)⒓樱褂?Alexa 語音驅(qū)動技能和 MINDSTORMS EV3 來激活 LEGO 是多么有趣!我的第一個想法是,這應該是一項孩子們會喜歡的有趣活動(并希望也能從中學習)。由于一個項目的目標是充分利用語音交互,而且我有一些朋友的孩子很難學習乘法表,所以一個想法誕生了:將這個項目的技能部分集中在學習數(shù)學乘法表上!
下一個問題是該項目的 LEGO MINDSTORMS 部分應該是什么樣子?我的第一個想法是一場拔河比賽,兩輛由正確的數(shù)學測驗答案提供動力的汽車朝相反的方向行駛,直到獲勝者被命名。不,不好,我想要一款只允許一個孩子練習數(shù)學技能的游戲,所以我想到了一輛 LEGO MINDSTORMS 動力卡車,它會在每個正確答案的情況下駛向?qū)W生。假設正確回答了足夠多的問題,卡車就會送出獎品!當然,每個孩子都是獨一無二的,因此我作為該項目的一部分創(chuàng)建的 Mindstorms 數(shù)學技能允許調(diào)整默認值,即問題數(shù)量和難度級別,這讓我面臨更多語音交互挑戰(zhàn),但結(jié)果很好。我還設法調(diào)整了獎品,
我想要的這項技能的一個附加功能是“視覺效果”。
Mindstorms Math -修改意圖和隨機響應演示用戶可以更改默認設置以使學生工作更多(或更少)以獲得獎品。
創(chuàng)建您自己的項目版本在本文檔的下一部分中,我將討論我用于創(chuàng)建此技能的過程。希望我包含足夠的信息,以便您可以創(chuàng)建自己版本的 Mindstorms 數(shù)學技能和 Prize Truck Alexa 小工具。
構(gòu)建技能對于這個項目,我首先構(gòu)建了 Alexa 技能,我將確切的 LEGO 設計留到以后使用(盡管我有一個粗略的想法,我真正想使用 EV3 的是兩個電機,沒有傳感器)。我首先瀏覽了 hackster.io設置和任務 1 到 4(在此處找到)。這些教程非常好,它們引導我完成了從將 Alexa Gadgets Toolkit 和相關演示任務代碼閃爍到 EV3 智能程序塊,到指導我逐步向任務的 Alexa 技能部分添加功能的步驟。如果您完成這些教程,您會發(fā)現(xiàn)設置獎品卡車是一個簡單的過程。
設置和任務 1 到 4 的基本部分 通過對任務 Python 代碼進行一些注釋,我可以僅使用以下部分來證明 EV3 可以滿足我的要求:LEGO MINDSTORMS EV3 智能積木、MINDSTORMS 大型電機(和電源線) 、microSD 或 microSDHC 卡(2GB 至 32GB)、電腦芯片適配器、USB 無線適配器(我使用的是 TP-Link Nano 適配器)、6 節(jié) 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 中,如果用戶沒有使用有效數(shù)字回答,技能可以使用以下語句“記住”(然后重新詢問)該問題: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 將以不同方式強調(diào)單詞:您可以使用 Alexa Skills Kit語音合成標記語言
responseString = `Alright!`;
找到更多強調(diào)語音的方法。 - 斷開連接工作:hackster.io 任務代碼需要通過藍牙連接 EV3 才能運行,如果 Alexa 找不到 EV3 Brick,示例技能就會退出。然而,即使磚塊不可用,我也讓這段代碼工作,這是通過檢查有效的“endpointId”在幾個地方完成的。因為這項技能是斷開連接的,所以即使在 Echo Auto 上,學生也可以更輕松地在車上玩/練習數(shù)學!
- Supports Graphics and Different Devices:這個技能有多個代碼路徑,因為除了EV3之外,我支持屏幕設備(Echo Show),純文本屏幕設備(Fire HD)和無屏幕設備(Echo Dot)。
為您自己設置 Alexa 技能:要添加 Mindstorms 數(shù)學技能,請按照任務 3中所述登錄到您的 Alexa 開發(fā)者控制臺。您會注意到大部分操作發(fā)生在 index.js 中但是您需要復制我附加到該項目的所有文件 model.json、common.js、datasource.json、index.js、latest.json、package.json 和 util.js。Datasource.json 用于將信息發(fā)送到 lastest.json 中設計的 APL 屏幕除了將文件復制到您的 Alexa 開發(fā)者控制臺之外,您還需要將此技能注冊為 Alexa 小工具,如任務 1 中所述。作為此過程的一部分,您將轉(zhuǎn)到“接口”屏幕以啟用您的技能以打開“自定義接口控制器”。對于此技能,因為我們正在啟用 Echo Show 設備和 APL,您還需要打開 Alexa Presentation Language,并檢查支持的所有屏幕,請參見下圖。
您可能想要調(diào)整 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 發(fā)送到您的 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 收到的指令告訴它該做什么。我們發(fā)送以下類型的指令:
- '搖動' - 用于移動驅(qū)動電機
- '獎品' - 用于使獎品馬達送出獎品
- 'prizeNONE' - 當我們不希望獎品電機運行時使用。
- 對于這些指令中的每一個,Alexa 技能傳遞方向(“向前”或“向后”)、持續(xù)時間(運行電機的時間)和速度(運行電機的 100% 的百分比)。(請注意,您可能需要根據(jù)您的構(gòu)建與我的匹配程度來更改速度或持續(xù)時間)
配對和取消配對 Prize Truck Alexa Gadget任務 1 中的說明描述了如何取消配對設備。如果您想在 Echo Dot 和新的 Echo Show 之間切換,這將是必需的 :-)。我必須在這個過程的早期這樣做,以提醒自己,除了所描述的取消配對方法之外的另一種方法是打開 EV3 程序塊的 SSH 終端并運行命令sudo python3 mission-01/mission-01.py --clear
(系統(tǒng)將提示您輸入密碼和默認設置密碼是制造商)。現(xiàn)在,如果您只需運行 mindstorms-math.py 代碼,它就會將磚塊置于新設備的配對模式。如果你想切換回來并再次與你的 Echo dot 配對,我發(fā)現(xiàn)你需要使用 Alexa 應用程序忘記之前的藍牙設備。
構(gòu)建此項目的樂高技術(shù)部分 現(xiàn)在來一些額外的樂趣:樂高積木!為了記錄如何使用這個項目,我找到了一個名為 Studio 的簡潔程序,由 BrickLink Corporation 開發(fā)。它是免費的,可以在這里https://www.bricklink.com/v3/studio/download.page順便說一下,在做這個項目的時候,我了解到去年 11 月,樂高集團收購了 BrickLink Ltd,這是世界上最大的在線社區(qū)成人 LEGO 粉絲,所以讓我覺得將來可能會支持工作室軟件。
安裝 BrickLink Studio 后,您將能夠使用文件 -> 導入來導入 PrizeTruckFullBuildFinal.io 模型。另一個區(qū)別是工作室設計中所示的傳送帶沒有皮帶,但該部件通常作為一個完整的單元出售(技術(shù)零件 92715C01)。
。
在接近項目截止日期時,我偶然在翻箱倒柜中找到了一套 Technics Racer。我將較大的輪子用于備用輪子設計,我認為它看起來更好一些,因此我為該設計包含了另一個 Studio 設計模型文件……這是帶有較大輪子的獎品卡車:
最后的想法感謝您檢查這個 Alexa LEGO MINDSTORMS 語音挑戰(zhàn)項目。我喜歡邊玩邊學,并鼓勵您嘗試使用 LEGO MINDSTORMS 創(chuàng)建支持 Alexa 的小工具,這很有趣!
?
- 由Alexa控制的臺燈構(gòu)建
- 儀器手套開源構(gòu)建
- 蛋打開源構(gòu)建
- Nerf Alexa家庭防御炮塔開源構(gòu)建
- Alexa自動保姆開源項目
- 由Mindstorms EV3和Alexa提供支持的LEGO Target Practice
- 由Alexa控制的Lego Mindstorms EV3機器人
- 適用于Amazon Alexa的游戲Speed Tap開源
- 使用LEGO MINDSTORMS EV3 Amazon Alexa構(gòu)建的Shelly解決方案
- 烘干機狀態(tài)響應的Alexa技能開源分享
- 構(gòu)建自己的alexa控制的圣誕樹 1次下載
- Alexa EV3糖果機開源分享
- 松下的視頻對講機被黑以啟用Alexa
- 3.1.5 math文件匯總 12次下載
- C28x Fixed-Point Math Library 14次下載
- PyTorch神經(jīng)網(wǎng)絡模型構(gòu)建過程 276次閱讀
- 交換芯片的構(gòu)建方式 336次閱讀
- 網(wǎng)絡適配器沒有啟用TCP/IP服務怎么解決 1.4w次閱讀
- 清華等開源「工具學習基準」ToolBench,微調(diào)模型ToolLLaMA性能超越ChatGPT 481次閱讀
- 使用Splashtop在Windows10上啟用遠程桌面 825次閱讀
- 前沿開源技術(shù)領域的開源大數(shù)據(jù)一一解讀 1006次閱讀
- 尋找開源硬件成功的觸發(fā)器 636次閱讀
- RT-Thread 4.1.0的CMake構(gòu)建教程 3129次閱讀
- 如何使用STM32制作啟用BLE的智能燈泡 2514次閱讀
- 構(gòu)建開源芯片生態(tài)需要什么要的 4327次閱讀
- 微雪電子ROC-RK3308主板CC-Amazon Alexa簡介 1282次閱讀
- 冷王公司卡車混合制冷系統(tǒng),環(huán)保可節(jié)約運輸成本 2971次閱讀
- NASA的開源軟件是什么?NASA的開源軟件的詳細分析 7188次閱讀
- Jenkins詳細安裝與構(gòu)建部署使用教程 1702次閱讀
- 特斯拉推出電動卡車_特斯拉電動卡車性能如何 1520次閱讀
下載排行
本周
- 1山景DSP芯片AP8248A2數(shù)據(jù)手冊
- 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開發(fā)指南
- 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數(shù)字電路基礎pdf(下載)
- 未知 | 13750次下載 | 免費
- 7電子制作實例集錦 下載
- 未知 | 8113次下載 | 免費
- 8《LED驅(qū)動電路設計》 溫德爾著
- 0.00 MB | 6656次下載 | 免費
總榜
- 1matlab軟件下載入口
- 未知 | 935054次下載 | 免費
- 2protel99se軟件下載(可英文版轉(zhuǎn)中文版)
- 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次下載 | 免費
評論
查看更多