01 基本雛型

(2019/05/01)

此為5/3到文山國小的上課講義,也是web:bit做智能屋的雛型

一、以下是我在micro:bit智能屋的測試項目

    • 環境系統

    • (1)天黑請開燈的系統:光敏電阻(P1)、LED燈(P8)

    • (2)天熱請開電扇系統:溫度感應器(主板內建的)、繼電器(P12)、電扇

    • 安全防護系統

      • (3)入侵警報1:超音波測距感應器HC-SR04:Trig(P13);Echo(P14);

    • (4)入侵警報2:霍爾感應器 (P2)

    • (5)火災探測警報:火焰感應器 (P3)

    • 各式控制

      • (6)利用聲音控制LED燈:麥克風(P4)

      • (7)利用按鍵控制燈或繼電器:按鍵(主板內建的)

      • (8)遠端控制:利用另一塊micro:bit主板來當遙控器 (中控系統)

        • 用A鍵選號碼,按B鍵發射號碼出去、按A+B鍵顯示號碼

          • 編號1:主板顯示溫度,按主板A、B鍵可設定啟動繼電器的溫度,現場溫度大於等於這溫度時,會啟動繼電器

          • 編號2:主板顯示亮度

          • 編號3:主板顯示距離

          • 編號4:主板顯示火焰感應器的值

          • 編號5:主板顯示麥克風的值,按主板A、B鍵可設定啟動麥克風的音量,現場音量大於等於這音量時,會啟動相關設備

          • 編號6:主板播放一首音樂

          • 編號7:按主板A鍵點亮LED燈、按主板B鍵關閉LED燈

          • 編號8:按主板A鍵打開繼電器、按主板B鍵關閉繼電器

          • 編號9:按主板A鍵點亮燈條、按主板B鍵關閉LED燈條

    • 顯示系統

      • (9)顯示各項資訊:顯示器,主板內建的5x5LED屏幕

    • 音樂系統

      • (10)發出警報聲或音樂聲:蜂鳴器(P0)

二、在Web:bit環境下的測試

  • 由於Web:bit教育版腳位的使用,尚未成熟,目前正在研發中,所以很多功能僅先做【模擬】

  • Web:bit內含ESP32的晶片,其強項在網路的應用(物聯網的應用)

  • 環境系統

    • (1)天黑請開燈的系統:利用內建的光敏感應器(左上、右上)來測亮度 (最大值為1000(最亮),最小值為0(最暗))

      • 天黑時(亮度小於50),屏幕顯示笑臉(模擬成開燈)

    • (2)天熱請開電扇系統:利用內建的溫度感應器來測溫度

      • 天熱時(溫度於30度),屏幕顯示笑臉(模擬成開電扇或啟動繼電器)

    • (3)空氣差請開空氣淨化器(或關窗):利用氣象資訊取得AQI值

      • 空氣差時(AQI值大於50度),屏幕顯示笑臉(模擬成開空氣淨化器或關閉窗戶)

  • 控制系統

    • (4)中控系統(web:bit板子控制另一塊web:bit)

      • 由中控的web:bit板子控制另一塊web:bit板子

        • 按中控板子的A鍵,另一塊板子屏幕顯示笑臉

        • 按中控板子的B鍵,另一塊板子屏幕顯示哭臉

        • 按中控板子的A+B鍵,另一塊板子播放一段音樂

        • 以下程式利用廣播來傳送訊號,如果在同一個程式來執行,還有更簡單的方式來處理。

      • 由中控的web:bit板子顯示另一塊web:bit板子上的溫度

        • 方法一:兩塊板子在同一個程式下執行

          • 方法二:兩塊板子不在同一個程式下執行(透過廣播)

    • (5)中控系統(由手機去控制web:bit)

      • 透過LINE去控制web:bit

        • 在LINE上打【笑臉】兩字,則web:bit屏幕上會出現【笑臉】圖示 (模擬成開燈)

        • 在LINE上打【哭臉】兩字,則web:bit屏幕上會出現【哭臉】圖示 (模擬成開燈)

        • 在LINE上打【關燈】兩字,則web:bit屏幕上沒有顯示圖案 (模擬成關燈)

        • 參考資料:使用LINE的聊天控制

  • 安全防護系統

    • (6)入侵警報:利用按鍵A來模擬擬入侵

      • 當有人入侵時(被按下A鍵),屏幕會顯示X,並且蜂鳴器發出警報聲;當按下B鍵,解除警報

    • (7)入侵回報:當有人入侵時,會傳LINE告知

      • 當有人入侵時(被按下A鍵),會傳LINE告知

      • 參考資料:LINE Notify (需要LINE的帳號及密碼)

        • 除了回報訊息外,也可夾帶一些數據給LINE (如上例的溫度)