Classroom Sensor Pack經典感測器套件組示範專案|奧斯丁國際有限公司 OURSTEAM Internationl
icon教學資源
2020/12/29

Classroom Sensor Pack經典感測器套件組示範專案

 
 
零件清單

1. Classroom Sensor Pack官方使用手冊
2. Basic:bit
3. LED*2 (紅、綠)
4. Potentiometer 電位器
5. PIR sensor 紅外線感測器
6. Soil Moisture 土壤溼度感測器
7. Servo 伺服馬達
8. Rainbow LED 全彩LED燈條
(每個感測器皆附一條專用連接線)


../../_images/sensor_pack_02.jpg
 
Basic:bit介紹

Basic:bit是micro:bit的基礎擴充板,內建蜂鳴器和三組GVS引腳(P0 / P1 / P2)。每組GVS引腳分別在micro:bit上導出IO埠、3V埠和GND埠。體積小且結構簡單,足夠完成98%的micro:bit應用。

特色
  • 體積輕巧,設計巧妙,能與micro:bit完美搭配。
  • 僅需要使用螺絲釘即可輕鬆與micro:bit連接並導出電源孔和IO埠。
  • 在micro:bit上導出P0、P1、P2、3V和GND埠。
  • 讓使用者僅透過上述的三個IO埠完成98%的micro:bit應用。
  • 在Basic:bit上就能開關蜂鳴器。

如何將basic:bit組裝到micro:bit?

請注意,若您的micro:bit為V2版本,請先將basic:bit背面的圓形防撞貼撕下後再進行安裝。


1.將basic:bit的正面貼合micro:bit的背面。


2.從micro:bit的正面鎖緊5個螺絲。順序:由Pin 0依序鎖至GND(由左至右),注意螺絲必須完全鎖緊不留縫隙。


完成圖


如何將感測器連接上basic:bit?

認識GVS:負極(GND)及正極(VCC)提供電子模組電流,另一個接口則是micro:bit的某一個腳位(P0或P1或P2)和電子模組溝通用的訊號接口(Signal),這三個接口的英文縮寫便是 GVS。

​而basic:bit上的S由Pin的數字替代,例如圖中的P1對照右側的GV1、P2對照右側的GV2、P0對照左側的GV0。
負極(GND)的連接線是黑色,正極(VCC)的連接線是紅色,訊號 (Signal)連接線會用黃色。請以此特性來為感測器接上basic:bit。
參數
  • 電壓:3.3V(由micro:bit供電)
  • IO埠:3
  • 尺寸:51.7毫米x 29.1毫米

內含組件
  • 1 x basic:bit
  • 7 x 螺絲(只需5個)
     


應用01 LED

材料
  • 1 x micro:bit
  • 1 x Basic:bit
  • 1 x Micro USB線
  • 1 x 紅色LED
  • 1 x 綠色LED

軟體平台
MicroSoft MakeCode

硬體連接



程式設計


程式連結:https://makecode.microbit.org/_MtcPRv2e39wu

結果
程式運行時,紅色及綠色LED燈會輪流閃爍。

 

應用02 智慧燈具Smart Light

在這個應用中,將使用人體紅外線感測器和LED燈來示範我們在某些公共廁所會看到的「廁所使用狀況顯示裝置」的應用原理。當偵測到有人在使用時,顯示裝置上的紅色LED燈會自動亮起、沒有偵測到人的時候,則是亮起綠色LED燈,依此幫助我們快速判斷可以使用哪幾間廁所。

材料
  • 1 x micro:bit
  • 1 x Basic:bit
  • 1 x Micro USB線
  • 1 x 紅色LED
  • 1 x 綠色LED
  • 1 x PIR sensor 紅外線感測器
硬體連接
請將P1連接紅燈(左上)、P2連接綠燈(左下)、P0連接紅外線感測器(右上)。



程式設計
先下載擴充積木:在menu中點選Advanced、再點選Extensions(下圖一),搜尋"Tinkercademy"並下載到編輯頁面中(下圖二)





在forever(重複執行)中,建立if~else判斷。接著從擴充積木:Tinkercademy中,拉出「偵測動作」的積木以及「切換LED開或關」的積木。利用if(如果)來判斷當連接在P0的紅外線感測器偵測到動作時,就將連接在P1的紅燈切換為打開、連接在P2的綠燈切換為關閉;else(否則)的話,將連接在P1的紅燈切換為關閉、連接在P2的綠燈切換為打開。



程式連結:https://makecode.microbit.org/_7LY8tLLvtR7T

結果
※當人體紅外線感測器偵測到有人,亮起紅燈。


※當人體紅外線感測器沒有偵測到人,亮起綠燈。
 

應用03 特雷門琴Electro-Theremin



材料
  • 1 x micro:bit
  • 1 x Basic:bit
  • 1 x Micro USB線
  • 1 xPotentiometer 電位器
硬體連接
將電位器連接到P1,確保黃線連接到basic:bit上的1、紅線連接到
basic:bit上的V、黑線連接到basic:bit上的G



程式設計

利用「Variables」建立一個變數:「sound」來記錄電位器的讀取數值。
(電位器的操作:逆時針方向旋轉到底可以取得最小值,而順時針方向旋轉則可以取得最大值。)

電位器的類比訊號讀取值介於0~1023之間,micro:bit內建的tone從最低音的Low C到最高音的HighB,其數字範圍(聲音的頻率)介於131(Low C)~988(HighB)。
因此我們利用「Math」中的「map對應」將電位器其類比訊號的值轉換到tone的131~988之間的數。
接著再使用「Music」中的「ring tone (Hz)~」,並將變數「sound」拖曳進去,如此一來,我們轉動電位器的旋轉鈕時,就會發出介於Low C~HighB之間的聲音(包含滑音)。




補充說明:如何得知micro:bit內建的tone其最低音(131)和最高音(988)的數值?
請參考下方兩張圖,利用「Music」中的「play tone ~for 1 beat」,我們可以透過滑鼠點按最左及最右端的鋼琴,來得知其對應的聲音頻率數值。





程式連結:https://makecode.microbit.org/_UAw4TUFPo5d7
 

應用04 植栽監控裝置Plant Monitoring Device

在本應用中,我們將示範如何使用連接了濕度感測器的Micro:bit來製作植栽監控裝置,並利用Micro:bit V2其內建蜂鳴器的優勢來發出聲音,作為提醒澆水的警報器。



材料
  • 1 x micro:bit
  • 1 x Basic:bit
  • 1 x Micro USB線
  • 1 xSoil Moisture 土壤溼度感測器
硬體連接
將濕度感測器連接到P1,確保黃線連接到basic:bit上的1、紅線連接到
basic:bit上的V、黑線連接到basic:bit上的G


程式設計

首先,在forever(重複執行)中,建立show number(顯示數字),利用它來顯示連接在P1腳位的土壤濕度感測器所偵測到的數值(介於0~1023之間)。



將此程式下載到micro:bit後即可把土壤濕度計插入盆栽中。請將土壤乾、濕程度的數字記錄下來,並重複幾次這些步驟,看看加多少水對這個植物是適當的(找出臨界值)。
請注意:要將土壤濕度感測器插入土壤中進行偵測時,只有感測器上的金屬部分能夠接觸到水。

當找到臨界值之後,接下來我們要透過下方程式來製作一個提醒澆水的警報器。




程式連結:https://makecode.microbit.org/_Msh6v35sb90E

結果
將程式下載到Micro:bit中,找一株綠色植物,將濕度感測器插入土壤中觀察。當水量不足時,micro:bit V2會發出警報,提醒您植物口渴了,請幫它澆水;當植物的水分充足時,則micro:bit V2會顯示顯示笑臉圖案,來告訴您它目前不需澆水,是不是很有趣!(如果您使用的是micro:bit V1.5,它本身雖然不帶有蜂鳴器,但可以利用basic:bit的板載蜂鳴器來發出聲音)
 

 
應用05 害羞機器人 Shy Robot

在這個範例中我們要組裝一個害羞的機器人,透過micro:bit V2的蜂鳴器(如果是micro:bit V1.5則可以透過basic:bit的板載蜂鳴器)、土壤濕度感測器、人體紅外線感測器及電位器來打造在三種條件狀況下,機器人將透過音樂來表示其極度害羞的反應。

材料
  • 1 x micro:bit
  • 1 x Basic:bit
  • 1 x Micro USB線
  • 1 xSoil Moisture 土壤溼度感測器
  • 1 xPIR sensor 紅外線感測器
  • 1 xPotentiometer 電位器
硬體連接
將濕度感測器連接到P1、人體紅外線感測器連接到P2、電位器連接到P0(basic:bit右側的開關需切換到P0的位置)。確保黃線連接到basic:bit上的數字1/2/0(依照各腳位數字不同)、紅線連接到basic:bit上的V、黑線連接到basic:bit上的G。


 

程式設計
先下載擴充積木:在menu中點選Advanced、再點選Extensions(下圖一),搜尋"Tinkercademy"並下載到編輯頁面中(下圖二)


程式設計
 
在forever(重複執行)中,「if~else if」判斷。我們設定機器人只對三種情況做出反應:
  • 第一個條件:當有人觸摸連接在P1的土壤濕度感測器,會依據偵測到的濕度發出不同的聲音。
  • 第二個條件:當連接在P2的人體紅外線感測器檢測到有人在前方移動,便會發出兩拍高音C。
  • 第三個條件:當有人轉動連接在P0的電位器,會依據電位器轉動的位置不同而發出不同的聲音。


程式連結:https://makecode.microbit.org/_YtzWYd0toLsR

結果
​您已經完成害羞機器人所需要的零件的組裝,接下來您只需將它放入任何足以容納這些零件的盒子中,依您的想法為害羞機器人做造型,但要小心不要嚇到,因為害羞機器人偵測到您的時候就會發出聲音!

 
 
 
應用06 測謊儀Lie Detector

在這項應用中,利用土壤溼度感測器就能製作一個簡單的測謊儀,透過測量我們皮膚的導電率來運作。當測試者感到緊張時,人體皮膚的導電率會增加,而濕度感測器可以吸收這些水分,讓我們判斷測試者是否說謊。

材料
  • 1 x micro:bit
  • 1 x Basic:bit
  • 1 x Micro USB線
  • 1 xSoil Moisture 土壤溼度感測器
     
硬體連接
將濕度感測器連接到P1,確保黃線連接到basic:bit上的1、紅線連接到basic:bit上的V、黑線連接到basic:bit上的G。




程式設計

※此程式內容較多,您可以搭配下圖中的註解以理解相關積木的功能。


程式分為兩部分:左邊的on start(在開始時執行)、右邊的forever(重複執行)。
在on start(在開始時執行)的部分,透過測試者將手放在土壤溼度感測器30秒,來求得其導電率的標準差。
而forever(重複執行)的部分則是透過測試者將手放在土壤溼度感測器2.5秒(repeat 5 times x 500ms=2.5秒),依其測量出的導電率來判斷是否大於或等於平均數+標準差的值。如果為大於或等於,代表測試者說謊;若小於,則代表測試者是誠實的。




程式連結:https://makecode.microbit.org/_ExAJKfbbCetp

結果

將手指放到濕度感測器的金屬板上,您可以使用橡皮筋或膠帶幫助測量。程式開始執行時請保持平靜並等待30秒的時間以讓其透過記錄皮膚的導電率計算出平均值與標準差,標準差的數值會顯示在micro:bit的leds上。


等待micro:bit顯示完標準差後,詢問測試者問題,接下來只需2.5秒的時間就能測量出測試者是否說謊。當測試者說謊,micro:bit會顯示X圖案(如下圖);而測試者是誠實的,micro:bit則會顯示打勾圖案。

 

應用07 轉吧轉吧七彩霓虹燈

設計讓每個燈泡都依照彩虹的顏色順序顯示不同的顏色,並搭配micro:bit的按鍵來改變燈泡顏色的流轉方向及關閉燈泡。

材料
  • 1 x micro:bit
  • 1 x Basic:bit
  • 1 x Micro USB線
  • 1 xRainbow LED 全彩LED燈條
硬體連接
將LED燈條連接到P1,確保黃線連接到basic:bit上的1、紅線連接到basic:bit上的V、黑線連接到basic:bit上的G。




程式設計

在on start(在開始時執行),利用"set strip to Neopixel at pin P1 with ~ leds"來
設定燈條接到P1腳位,並且這個燈條有10顆燈(燈泡數量要設定對),設定好後這個燈條會指定到變數_strip,之後藉由控制"strip"這個變數,便能控制整個燈條。

接著再以"strip show rainbow from 1 to 360"積木讓燈上的10顆燈每顆顯示不同的顏色,顏色變化是依據彩虹的色相變化排列。



接下來要透過設計A、B鍵讓每個燈泡都依照彩虹的顏色順序顯示不同的顏色,當按下A鍵,燈泡會依照順序輪流變換顏色100次;按下B鍵則反方向變換顏色100次;按下A+B的按鍵則所有燈泡都熄滅(顯示黑色=關閉燈泡)。

這裡主要使用的積木為:"strip rotate pixels by 1",它讓燈泡可以循環偏移,再搭配"strip show"來刷新顯示才能看出燈泡變換的狀態,pause(暫停)可依照個人觀察燈泡偏移的需求來調整,如果希望燈條可以慢速流轉顏色,請將pause(暫停)的秒數調高。



程式連結:https://makecode.microbit.org/_Ttt1UKaVcLYM

結果

設計讓每個燈泡都依照彩虹的顏色順序顯示不同的顏色,當按下A鍵,燈泡會依照順序輪流變換顏色100次;按下B鍵則反方向變換顏色100次;按下A+B的按鍵則所有燈泡都熄滅(顯示黑色=關閉燈泡)。請留意:當按下A+B鍵因變數_strip已被定義為黑色(=關閉燈泡),因此再去按A鍵或B鍵是無法亮燈的。可以透過micro:bit背面的reset鍵重新啟動程式,再次體驗。
 


應用08 請保持安靜

在這個應用我們將學習如何透過伺服馬達搭配安靜舉牌,利用micro:bit V2其新增MEMS麥克風的優勢,製作一個能自動判斷環境聲音大小,進而適時舉起安靜舉牌的有趣實作。此應用引用自劉正吉老師著作_<microbit V2 與感測器的小探險>,書籍連結請點此

材料
  • 1 x micro:bit
  • 1 x Basic:bit
  • 1 x Micro USB線
  • 1 x Servo 伺服馬達
  • 1 x自製安靜舉牌
硬體連接
伺服馬達搭配三個不同擺臂,方便依據狀況使用合適的擺臂。此專案我們以零件包中最小的擺臂來應用。馬達軸心的外緣有齒輪,擺臂軸心的內緣也有齒輪,將兩者的齒輪密合、壓緊。(如需要的話,可用附上的螺絲旋緊)。



將伺服馬達連接到P1,因伺服馬達本身已帶線,依照先前介紹過的GVS接線方式,將棕色線(GND)接G;紅色線(VCC)接V;澄色線(Signal)接1。


程式設計
在開始之前,我們先透過下方程式來了解馬達轉動範圍及轉動方向。控制伺服馬達的積木在Pins內。分別將A鍵寫入"servo write pin P1 to 0"使伺服馬達轉動到0度、將B鍵寫入"servo write pin P1 to 90"使伺服馬達轉動到90度、將A+B鍵寫入"servo write pin P1 to 180"使伺服馬達轉動到180度。請留意此伺服馬達的轉動範圍是0~180度,角度設定請勿超過此範圍,以避免損壞伺服馬達。


程式連結:https://makecode.microbit.org/_Lew4ovUbFJkk

伺服馬達轉動範圍 結果檢視
如下圖,測試按下A鍵(轉到0度)、B鍵(轉到90度)及A+B鍵(轉到180度)。測試看看伺服馬達擺臂的轉動是否跟程式設定的一樣。請同時觀察一下,馬達轉動方向。
我們可以觀察出:小角度轉到大角度時,轉動方向是逆時針;大角度轉到小角度時,轉動方向是順時針。



接下來請依照圖片中的指示,準備相關的材料:


請依照圖片中的指示,將伺服馬達與安靜舉牌連接上,並安裝到一個穩固的底座上。


接著我們要來設計「請保持安靜」的專題程式,在on start(在開始時執行),利用"set loud sound threshold to ~"來設定當micro:bit感測聲音的臨界值。這邊假設臨界值是128(可以透過Basic積木中的show number以及Input積木中的spund level來感測您環境中的聲音數值,以找出合適的臨界值),利用"on loud sound"使當環境中的聲音達臨界值時,透過"servo write pin P1 to 90"使伺服馬達轉動到90度以舉起"安靜"圖卡。當圖卡被舉起5秒之後,透過"servo write pin P1 to 0"讓伺服馬達轉動到0度,"安靜"圖卡就會被放下。



程式連結:https://makecode.microbit.org/_iwc9c0XryTMX

結果

假設我們將「請保持安靜」實作放在圖書館,當圖書館出現超過標準的噪音時,micro:bit藉由驅動伺服馬達以舉起安靜舉牌,提醒各位保持安靜


 
 
logo
iconiconiconiconicon
icon  電話:04-2375-3535
icon  傳真:04-2256-9949
icon  統編:90386785
icon  E-mail:service@oursteam.com.tw
icon  LINE ID:@oursteam
Inspire every child to create