Skip to content

活動

燈光警報

進階 | MakeCode, Python | LED 螢幕, 光感應器, 無線電, 聲音 | 感應器, 燈光, 能源, 迭代, 通訊, 選擇, 關係運算符

步驟1:製作

它是什麼?

廣播遙控警報器,若有人打開燈–或打開抽屜或包包時您會知道。

micro:bit露出憤怒的表情,發出廣播電波,以及發出光源

運作方式

  • 類似於Sunlight sensor project,它使用micro:bit的LED作為light sensor顯示螢幕上有多少光。
  • 使用loop,傳感器程式每10秒鐘發送一次radio訊息以表明是否亮起或恆暗。 透過使用選擇來發送訊息,如果光測量值大於 50,將發送「lights on」訊息;如果小於50,則發送「lights off」訊息。 您可能需要依據您周遭的環境照明條件來更改這些值。
  • 按下輸入按鈕 A在 LED顯示螢幕輸出上顯示亮度,這將幫助您設置您的鬧鐘,因此您可以將50更改為最適合您環境的數字。
  • 警報程式會在收到訊息時作出反應。 如果消息等於'light off'then則將清除LED顯示螢幕,但是如果等於'lights on' then 它顯示生氣的臉並播放'BADDY'警報聲音
  • 確保您的傳感器和警報使用相同的廣播組別– 0到255之間的任何數字。

你需要的東西

  • 2個 micro:bit,至少一個電池座組
  • 需要保持安全的珍貴物品
  • 選配式耳機,蜂鳴器或有源揚聲器以發出警報

步驟2:編碼

傳感器/發送器:

1from microbit import *
2import radio
3radio.config(group=5)
4radio.on()
5
6while True:
7    if button_a.was_pressed():
8        display.scroll(display.read_light_level())
9    if display.read_light_level() > 50:
10        radio.send('lights on')
11    else:
12        radio.send('lights off')
13    sleep(10000)
14

警報/接收器:

1from microbit import *
2import music
3import radio
4radio.config(group=5)
5radio.on()
6
7while True:
8    message = radio.receive()
9    if message:
10        if message == 'lights off':
11            display.clear()
12        elif message == 'lights on':
13            display.show(Image.ANGRY)
14            music.play(music.BADDY)
15

步驟3:進階

  • 將其與Tilt alarm project結合使用,以檢測何時移動了東西或燈光是否點亮。
  • 用另一種方式使警報起作用,以便在有人關閉燈時將其關閉。
  • 對其進行調整以監視能源使用情況:使用變數來追蹤燈保持恆亮的秒數,或者僅在燈打開時間過長時才觸發警報。