ESP8266 (NodeMCU) 與 App Inventor的語音辨識和開關控制~ 3 hr AIoT的建議課程

本文是利用Arduino系列的NodeMCU Lua (Esp8266) wifi 模組來製作簡單的App Inventor 手機程式,並用按鈕(Button)和語音辨識的方式來控制LED或電燈開關。 更令人興奮的是硬體材料費不到 NT200 !! 以下整理3 hr上課內容給各位參考,以搭配您的課程需要。

This image has an empty alt attribute; its file name is 1112.jpg
(for 3 hr in class only)
This image has an empty alt attribute; its file name is image-15-1024x768.png
成果展示 (智慧語音小禮盒)

1. 步驟說明

課程規劃如下 :

  1. 第一小時 : AIoT、Arduino與App Inventor 簡介與程式環境設定
  2. 第二小時 : 快速瀏覽Arduino程式並進入App Inventor開發
  3. 第三小時 : App Inventor程式編輯與上傳自己製作的App

第一小時課程 : AIoT介紹

AIoT 即AI (Artificial Intelligence)+ IoT (Internet of Things) 的簡稱,指人工智慧技術(AI)與物聯網(IoT)在實際應用中的落地融合 。本課程是將AIoT實際應用在智慧家庭(Smart Home)的情境中,如下圖

智慧家庭應用系列

以下影帶看完後,會對智慧家庭的應用有很清楚的概念

AI (人工智慧)則是現今科技界的響叮噹的學習標的,目前應用在生活中常見的AI應用 包括影像辨識 (人臉辨識)和語音辨識,本課程以語音辨識的開發應用作為主題之一。

相關圖片
人臉辨識案例

以上學習體驗可參考微軟(Microsoft face API)人臉辨識A應用網站

至於語音辨識的應用,我們是連結google 雲端的免費語音服務系統,結合App Invemtor的程式去開發自己的功能。

常用的google 雲端語音服務
「google voice recognition api」的圖片搜尋結果
google 語音服務與程式開發的介面 vs 本文最上方的系統架構圖

Arduino 簡介

發展至今約10年的時間,已是現今所有領域的研究者、開發者和學習者的最常用工具之一,可以快速地開發物聯網、感測器、馬達控制、生醫訊號等等。 本文選用的是Arduino + Wifi 的非常廣泛的ESP8266系列之NodeMCU控制器。

Arduino Board
標準Arduino UNO板
「nodemcu」的圖片搜尋結果
NodeMCU (Esp8266)晶片控制器

Arduino 環境 安裝與設定,請參考前一篇文章,但是本次課程僅3Hr 所以學習目標先放在App Inventor的編輯與製作。既然時間有限,我們採用倒吃甘蔗的作法,先體驗一下程式執

第二小時課程 : 安裝與設定

  1. 接上LED與確認NodeMCU連上電腦 : 請用雙母頭的杜邦線,一端接在NodeMCU的G (接地)角,另一端接在D1 腳位。LED接角要特別注意長腳接(D1),短腳接 (G)
LED長腳接(D1),短腳接 (G) ; 我們省略了電阻串接在長腳端

上述接線仔細檢查無誤後,取出 micro USB傳輸線,一端接上電腦,一端接上NodeMCU控制器。

2. 燒錄Arduino程式 : 這個步驟這裡先不做,開課必須先將程式燒錄進去Arduino。 燒錄方法可參考

3. 設定 NodeMCU wifi : 這個步驟這裡先不做我們的目的是讓每位學員的NodeMCU都能正確連上自己的手機熱點。開課前須先將每一個NodeMCU設定好wifi 的內容,包括欲連線的SSID和密碼。詳細動作可參閱

4. 安卓手機程式APK(安裝執行檔, 下載連結),或用以下QR code得到網址並下載

下載後請打開手機的外部應用程式安裝的權限,進行安裝。成功後會得到以下畫面。

手機App 截圖

5. 連線使用 : 當手機熱點打開後(熱點設定需同前面步驟3. ),按下APP的 “掃瞄”按鈕,若是在 “遠端IP”有出現另一組 192.168.xx.xx 的IP,那麼代表設定都正確,NodeMCU連上你自己的手機熱點了。

6. 操作說明 : 按下 “廚房燈開”, “廚房燈關” 等按鈕,會看到LED亮或滅。此外,按下”語音辨識”按鈕後,說出與上面 “廚房燈開”, “廚房燈關” 等按鈕一樣的文字,也可達到同樣的效果。

第三小時課程 : App Inventor程式講解

  1. 註冊google
  2. 進入App Inventor 2 編輯環境 。 文字閱讀不如看影帶教學,可參考 YouTube “MIT App Inventor 入門教學 – 按鈕文字及安裝執行” 。
  3. 如何手機安裝MIT AI2 Companion程式 ,進行編譯與APK製作,可參考YouTube “手機安裝MIT AI2 Companion程式
  4. 下載並匯入範例專案。
點選右上角的全部下載符號
再到自己的硬碟選取剛剛下載的 .aia檔案並匯入

5. 程式編輯、編譯與打包apk的體驗

5-1. 畫面編排練習 – 底圖更新和應用程式名稱修改

設計自己的背景圖片並更換,同時,選擇 “標題”修改App的名稱

5-2. 修改好後,準備編譯你的程式 :

選擇,連線 – AI Companion
畫面會出現QR code,準備用手機的App來掃描

打開手機的 “MIT AI2 Companion” app應用程式

相關圖片
選取 “scan QR code” ,並進入程式編譯與載入手機的階段

5-3. 程式設計練習 – 修改按鈕、語音辨識命令更動

更改上述按鈕的名稱與語音辨識指令,例如改成 “客廳開燈”
進入 “程式設計”,修改圖示圈選的對應文字

重複 5-2動作,編譯體的程式看看結果如何 ?

5-4. 製作一個新的開關按鈕 (這部分依據時間保留是否進行)

首先修改畫面新增按鈕

在畫面編排中,先安插新的一行,以便放入新的按鈕功能

進入程式設計,複製積木 ,然後修改傳送到Arduino程式的命令

進入Arduino程式,新增對應的程式碼,並燒入新的程式

以上動作,Happy Ending ~ 。

Leave a Reply

Your email address will not be published. Required fields are marked *