本文是利用Arduino系列的NodeMCU Lua (Esp8266) wifi 模組來製作簡單的App Inventor 手機程式,並用按鈕(Button)和語音辨識的方式來控制LED或電燈開關。 更令人興奮的是硬體材料費不到 NT200 !! 以下整理3 hr上課內容給各位參考,以搭配您的課程需要。
1. 步驟說明
課程規劃如下 :
- 第一小時 : AIoT、Arduino與App Inventor 簡介與程式環境設定
- 第二小時 : 快速瀏覽Arduino程式並進入App Inventor開發
- 第三小時 : 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的程式去開發自己的功能。
Arduino 簡介
發展至今約10年的時間,已是現今所有領域的研究者、開發者和學習者的最常用工具之一,可以快速地開發物聯網、感測器、馬達控制、生醫訊號等等。 本文選用的是Arduino + Wifi 的非常廣泛的ESP8266系列之NodeMCU控制器。
Arduino 環境 安裝與設定,請參考前一篇文章,但是本次課程僅3Hr 所以學習目標先放在App Inventor的編輯與製作。既然時間有限,我們採用倒吃甘蔗的作法,先體驗一下程式執
第二小時課程 : 安裝與設定
- 接上LED與確認NodeMCU連上電腦 : 請用雙母頭的杜邦線,一端接在NodeMCU的G (接地)角,另一端接在D1 腳位。LED接角要特別注意長腳接(D1),短腳接 (G)
上述接線仔細檢查無誤後,取出 micro USB傳輸線,一端接上電腦,一端接上NodeMCU控制器。
2. 燒錄Arduino程式 : 這個步驟這裡先不做,開課必須先將程式燒錄進去Arduino。 燒錄方法可參考
3. 設定 NodeMCU wifi : 這個步驟這裡先不做,我們的目的是讓每位學員的NodeMCU都能正確連上自己的手機熱點。開課前須先將每一個NodeMCU設定好wifi 的內容,包括欲連線的SSID和密碼。詳細動作可參閱。
4. 安卓手機程式APK(安裝執行檔, 下載連結),或用以下QR code得到網址並下載
下載後請打開手機的外部應用程式安裝的權限,進行安裝。成功後會得到以下畫面。
5. 連線使用 : 當手機熱點打開後(熱點設定需同前面步驟3. ),按下APP的 “掃瞄”按鈕,若是在 “遠端IP”有出現另一組 192.168.xx.xx 的IP,那麼代表設定都正確,NodeMCU連上你自己的手機熱點了。
6. 操作說明 : 按下 “廚房燈開”, “廚房燈關” 等按鈕,會看到LED亮或滅。此外,按下”語音辨識”按鈕後,說出與上面 “廚房燈開”, “廚房燈關” 等按鈕一樣的文字,也可達到同樣的效果。
第三小時課程 : App Inventor程式講解
- 註冊google
- 進入App Inventor 2 編輯環境 。 文字閱讀不如看影帶教學,可參考 YouTube “MIT App Inventor 入門教學 – 按鈕文字及安裝執行” 。
- 如何手機安裝MIT AI2 Companion程式 ,進行編譯與APK製作,可參考YouTube “手機安裝MIT AI2 Companion程式“
- 下載並匯入範例專案。
5. 程式編輯、編譯與打包apk的體驗
5-1. 畫面編排練習 – 底圖更新和應用程式名稱修改
5-2. 修改好後,準備編譯你的程式 :
打開手機的 “MIT AI2 Companion” app應用程式
5-3. 程式設計練習 – 修改按鈕、語音辨識命令更動
重複 5-2動作,編譯體的程式看看結果如何 ?
5-4. 製作一個新的開關按鈕 (這部分依據時間保留是否進行)
首先修改畫面新增按鈕
進入程式設計,複製積木 ,然後修改傳送到Arduino程式的命令
進入Arduino程式,新增對應的程式碼,並燒入新的程式
以上動作,Happy Ending ~ 。