Skip to content

活動

簡易門戶警報器

中等級數 | MakeCode, Python | LED 螢幕, 指南針, 按鈕 | 磁性, 選擇, 關係運算符

步驟1:製作

這是什麼?

有人來過你的房間嗎? 使用micro:bit,電池組和磁鐵,您可以發出警報,以提醒您有偷偷摸摸的窺探者...

介紹

編程指引

運作方式

  • 在此專案中,您將製作一個開門警報器,其作用類似於家庭安全系統中的實際門傳感器。
  • 您的micro:bit具有內建的compass sensor,稱為磁力計。 您可以使用它來測量地球的磁場,以作為指南針-或感應到離家更近的磁場強度!
  • 將磁鐵固定在門的角落,然後將在門框上有著開門警報器程式的micro:bit靠近它,像影片中一樣。
  • 該程式使用 micro:bit 的指南針(磁力計)輸入感應器和一個永久迴圈來持續測量磁場強度。
  • 它使用selection,因此當它低於一定水平(閾值)時,它會在LED顯示螢幕上顯示憤怒的表情。 這意味著當門打開時,磁鐵從micro:bit上移開了-因此可能有人在您的房間裡!
  • 按下按鍵 A 來顯示目前的磁力讀數。 透過門打開和關閉時獲取讀數,使用此值來確定使用哪個threshold數。 我們在範例中使用了200,但這取決於您的磁鐵強度以及附近是否有其他磁場。 上面的編程影片向您展示瞭如何執行此操作。
  • 按按鈕A清除生氣的臉,並reset警報。

你需要的東西

  • 一個micro:bit
  • MakeCode 線上編碼編輯器
  • 電池組
  • 磁鐵
  • 將磁鐵,micro:bit和電池組固定到門和門框的某種方式

步驟2:編碼

1# Python uses nanoteslas to measure magnetism.
2# Experiment with different numbers depending on the
3# strength of your magnet, which you can read by 
4# pressing button A.
5
6from microbit import *
7
8while True:
9    if button_a.was_pressed():
10        display.scroll(compass.get_field_strength())
11    if compass.get_field_strength() < 200000:
12        display.show(Image.ANGRY)

步驟3:進階

  • 添加揚聲器和聲音警報
  • 使用一個變數來測量您的門戶被打開的次數 - 您將會需要添加一個程式碼來感測門戶是否被打開關閉
  • 創建一個計時器以測量門被打開多長時間