2017年12月4日 星期一

[Micro:bit] Micro:bit Blockly PBL教材──主題6-2:植物澆灌(Plant Watering)@Ted Lee的土饅頭

Micro:bit Blockly PBL教材主題6-2:植物澆灌(Plant Watering)


Dec. 4, 2017
88x31.png[1]
No 品項 數量 單位 備註
1 Micro:bit主板 1  
2 Micro USB/USB傳輸線 1  
3 長釘子 2 用電線取代
4 香蕉/鱷魚夾 2  
5 MG90S伺服馬達 1 使用6的USB改裝電源線
6 USB改裝電源線 1  
7 冰棒棍 1  
8 吸管 1  
9 彩色杜邦雙頭線(公/公),20 cm 3  
10 橡皮筋 3  
11 膠帶 1  
12 1 自備
13 剪刀 1 自備
14 杯子 2 自備

参考資料
  1. 六種授權條款
  2. 感謝 香港課室(CLASSROOM)借用材料研發

[Micro:bit] Micro:bit Blockly PBL教材──主題7-1:植物監控(Plant Monitoring)@Ted Lee的土饅頭

Micro:bit Blockly PBL教材[1]

主題7-1:植物監控(Plant Monitoring)


FB2http://gg.gg/TedLeeMicrobitFB/

Line:ted2016.kpvs
Email:Lct4246@gmail.com
FB1http://gg.gg/TedLeeFB/

Dec. 4, 2017
88x31.png[1]

前言

小彼特在智慧植栽上的應用在網上共有兩篇實作:植物監控(Plant Monitoring)植物澆灌(Plant Watering)。我們試图用在地材料來實現這個主題。本單元即為前者的實際施測教學文章。後者的甞試請見此文

任務

請先看玩耍影片,再依照小彼特接腳图(pinout diagram)
與接線图
將下列套件包的材料接妥,NTD 1,234(未稅、未邮)[2]。
接KSB034、OLED、土壤溼度感測器時,請以元件上標示的腳位接線。例如:土壤溼度感測器的S腳接至KSB034的P1腳。(學會看元件上的接腳標示是接對線的第一步!

No 品項 數量 單位
1
Micro:bit主板
1
2
Micro USBUSB傳輸線
1
3
KSB034 micro:bit Basic Extension Board
1
4
OLEDOrganic Light Emitting Diodes,有機發光二極体)
1
5
土壤溼度感測器(Moisture sensor
1
6
蜂鳴器(buzzer
1
7
彩色杜邦雙頭線(母/母)20 cm
3
8
彩色杜邦雙頭線(公/母)20 cm
6
9
麵包板
1
10
收納盒
1
11
USB5V電源接頭
1

3 KSB034
我們找的4和5的元件都是Arduino用的,一來价格較便宜,二來隨手可得。至於吃5V電源問題,我們自製10使用雙電源共地法(3.3V與5V共存,但記得接地準位要接在一起)輕鬆破解它。
4 OLED
土壤溼度感測器
11 自製USB 5V杜邦電源線

解說

當土壤溼度感測器的測值小於預設的門檻植50時,在OLED和小彼特的5×5LED奌矩陣上同時顯示感測到的溼度數值;否則,在OLED上輸出植物溼度良好訊息。
本單元使用台灣在地能取得的材料來實現Tinkercademy的原廠教材。匯入原廠擴充積木(extension blocks)套件(package)





,依套件式教學法知识個別拆解(knowledge decomposition)本單元整個知识图譜為:植物監控=蜂鳴器+OLED+土壤溼度感測器。
  1. 蜂鳴器:由橘色的音樂積木抽屜(Code Drawer)
    拉出單音(tone)積木後,我們就會看到即時模擬器跳出的參考接線图。此图預設是將P0接腳接到耳機的TRS端子(Tip-Ring-Sleeve connector)[4],我們改成將小彼特的P0腳接到蜂鳴器的正極(長腳)、GND腳接到蜂鳴器的負極(短腳)。
  2. OLED:從紫色的OLED擴充積木抽屜中拉出OLED初始畫面大小設定與在它上面顯示字串的積木。
  3. 土壤溼度感測器:

    從螢光綠的Tinkercademy擴充積木抽屜拉出取用接在小彼特P1腳上土壤感測器的讀數、秀在小彼特的板載LED上,並依門檻值顯示相関訊息到OLED上。
完整程式如下,參考程式hex檔下載請按我

  1. OLED.init(64, 128)
  2. basic.forever(() => {
  3.     basic.showNumber(tinkercademy.MoistureSensor(AnalogPin.P1))
  4.     if (tinkercademy.MoistureSensor(AnalogPin.P1) < 50) {
  5.         OLED.showString("Moisture level is:")
  6.         OLED.showNumber(tinkercademy.MoistureSensor(AnalogPin.P1))
  7.         OLED.showString("Water your plant!")
  8.         music.playTone(247, music.beat(BeatFraction.Whole))
  9.     } else {
  10.         OLED.showString("Your plant is in good condition")
  11.     }
  12. })
註:本單元實作成功時,當土壤溼度一有變化,便會在OLED上流暢顯示。若OLED未有畫面跑出時,系統會呈現龜速執行的異常現象。


硬体教學

做電路實驗時,一般會以直接(hardwired)或麵包板接線來測試功能是否正確。待測試完成後,我們可用洞洞板來焊接成電路板自己洗電路板
之後若有大量製造的需求,我們可送請廠商幫忙製作PCB(Printed Circuit Board,印刷電路)
當然,如果生意做很大的話,開成專用的ASIC(Application-Specific Integrated Circuit,特殊應用積体電路)是再方便也不过的了!


教學經驗分享

在實際教學上,教學者需要修練最高段的教學忍功心法不先告訴學員要不要拆解、如何拆解,就誏他們親身去經歷,之後再經驗分享。這時通常我們會有機會聽到讚嘆声:原來还有這招喔!老蘇,你偷藏步(台語)
筆者在教Arduino藍牙自走車時曾遇过一位學員,請大家先接左輪測試馬達,會動之後再測右輪。最後再測藍牙模組。
這位老兄完全沒在鳥我,蒙著頭就狂接線,接完不會動後就舉手求援。幫忙查幾條線並指出錯誤後,就請他依線路图重新再一條一條接線对照。
不到五分鐘後,他又舉手說車不會動。筆者和其分享:電路很笨滴,通常要每條路都打通了它才會正常工作。就請他再多看幾遍,自己查完線後再找旁邊的同學協助。
过了一會,他又舉手,嘴裡还一直mur mur說:那就不會動啊!
筆者再重頭一條一條線清查,还是發線有接錯的地方。再指出錯接處後,仍是老招:自己再重新查線。
隔週一上課,此生又立刻舉手說他查了上百次線,車还是不會動。這次筆者就給他一個选擇題:全部拆線,一個模組接完、測試成功後再接另一個模組、再測試…再接…再測試…;或者,在他那堆違章建築的線路裡,先查左輪接線、測試,再查右輪接線、測試,再查藍牙模組接線、測試。
聽完筆者的建議後,他決定打掉重練,但…虛心接受,決心不改:还是一卡車的線唏哩呼嚕地猛接,接完後又再舉手說車不動。
這次筆者狠下心來,請他自理,不再幫忙查線。
就這樣过了兩節課,車子依然是屍体一部。
最後一堂課時,他眼看就要開天窗了,就用一股屎臉不時的瞄著筆者瞧。筆者已是吃了銔鉈鐵了心,說好不幫查線就不幫。
結果,他眼巴巴的看到求助無門,只好再孤注一擲地查最後一次線。而就在他東摸摸、西碰碰,這裡指指、那裡指指時,突然天雷一聲響:輪子轉起來了!──筆者在旁故做鎮靜,心裡OS:終於~。教學之路果然漫長!

後記:本例為真實案例改編,離高段忍功教學法尚有一大段距離。也以此自勉,再接再勵:不教,比教还難也。雖曰未教,學已在其中矣!(這其中有很深的教育哲學,也就是教之也~)[5]

教學活動設計

  1. 若您照著我們給的接線图一一接妥測試後會發現OLED會有「凍顯」的狀況。請利用我們特製的USB5V杜邦電源線,使用雙電源共地法(即此接頭的正極接至OLED及壤溼度感測器的正極,接頭的負極和其他接線的GND連在一起)再重測之。
  2. 本單元成功的以在地材料實現了植物監控,目前監控的參數只有土壤溼度一項。試著查閱相關資料,實作出某些植物的多項監控數植,誏植物們頭好壯壯啰!

和108課綱的对照

  • 學習表現:生k-IV-1 能了解科技本質、科技系統與設計製作的基本概念。
  • 學習內容:生N-IV-2 科技的系統。

参考資料
  1. 本PBL教材皆採:任務解說(含筆者多年教學經驗分享)、教學活動設計三大段的寫作架構撰文。
  2. 六種授權條款
  3. 感謝香港課室(CLASSROOM)借用材料研發。
  4. Make Code之所以指示我們用耳機來聽聲音是有其用意的。小彼特的設計理念是希望達成編程普及縮短數位落差,故而以有限的硬体來達成無限的(編程)創意(吾人喚之為限制型創意)。也就是說想聽小彼特唱歌怎麼辦?耳機,足矣!
  5. https://www.facebook.com/groups/1958667900816453/permalink/2287728424577064/