快速解答
在連接馬達、輪子或底盤之前,先用積木程式教導 micro:bit 的內建輸入與輸出。舉辦一個簡短的工作坊,讓每位學習者針對每個感測器撰寫、下載並測試一個程式,然後將兩個輸入結合成一個反應。這個順序能建立機器人所需的除錯習慣,讓建構階段變成組裝,而不是故障排除。
大多數機器人工作坊都在同一個點上失敗:機器人組裝好了,電池組也連接了,但什麼都不動,因為沒有人練習過閱讀程式。micro:bit 對此是一個很好的解決方案,因為它的按鈕、LED 矩陣和感測器無需任何額外硬體即可運作。你可以僅在主機板上教授 micro bit 程式設計基礎,等到邏輯熟悉後再加入馬達。
這個工作坊計畫按順序進行,從單一輸出到兩個輸入協同運作。每個步驟都包含最常讓初學者卡住的錯誤,這樣你就可以留意它,而不是在完成建置後才發現。
第一次課程前要準備什麼
每位學習者或每組需要一個 micro:bit、一台開啟積木編輯器的電腦或平板電腦,以及每塊板子一條 USB 傳輸線。請事先決定學習者要透過傳輸線下載檔案,還是透過藍牙配對,因為在課程中切換方法所花費的時間比節省的時間還多。列印或顯示積木類別,讓初學者不用搜尋就能找到 Input、Basic 和 Logic。
保持第一次課程除了電路板本身之外不使用其他硬體。馬達、輪子和電池組會引入電源和接線變數,從而隱藏編碼錯誤。只會閃爍的電路板比可能還有鬆動導線的底盤更容易除錯。
- 為每個 micro:bit 標上名稱或編號,以免下載的檔案混淆。
- 事先測試每條 USB 傳輸線;僅充電用的傳輸線無法傳輸程式。
步驟 1:故意讓一個輸出發生
從 LED 網格開始。要求學習者在程式啟動時顯示一個圖示,然後將其變更為另一個不同的圖示。目標還不是創造力,而是確認編輯、下載和執行的循環能夠從頭到尾正常運作。一旦學習者看到自己的圖示出現,該工具就不再顯得抽象。
這裡常見的錯誤是跳過下載步驟,並假設電路板會自行更新。讓每位學習者在執行前指向電路板,並說出他們預期會看到的內容。如果電路板顯示舊圖示,表示檔案未傳輸成功。
- 檢查點:每位學習者都能變更圖示,並在自己的電路板上看到變更。
步驟 2:新增按鈕作為輸入
現在將事件連接到動作。按下一個按鈕應觸發特定圖示,按下另一個按鈕則應觸發不同的圖示。這就是 micro:bit 積木編碼的價值所在:積木以視覺方式呈現因果結構,讓學習者看到事件是包圍動作,而不是與動作並列。
要注意的錯誤是將顯示積木放在按鈕事件之外,這會導致圖示立即出現,而不是在按下時出現。請學習者描述圖示應在何時出現,然後檢查他們的積木是否符合該描述。
- 檢查點:按下每個按鈕會產生不同且可預測的結果。
步驟 3:儲存值並變更它
引入一個變數作為計數器。每次按下按鈕就加一,數字會顯示在網格上。這是 micro:bit 初學者的概念性躍進:開發板現在能在按壓之間記住東西。變數名稱要簡短且有意義,例如 score 或 count,讓積木讀起來像句子。
常見的錯誤是在事件內部重設變數,這會每次按壓時清除計數,讓顯示卡在一。如果數字從不增加,請尋找 set 積木,那裡應該要用 change 積木。
- 檢查點:數字會隨著每次按壓增加,並在按壓之間保持不變。
步驟 4:用條件組合兩個輸入
將按鈕與第二個輸入配對,例如搖晃電路板或光線感應讀數。使用條件判斷,讓動作只在兩者皆為真時發生。這反映了真實的機器人邏輯:碰撞感測器加上計時器,或光線讀數加上按鈕,決定機器下一步的動作。
這裡的錯誤是分別測試兩個輸入,並假設它們會結合。學習者必須同時觸發兩者,才能證明條件有效。如果只靠一個輸入就觸發動件,表示條件實際上並未包覆該動作。
- 檢查點:動作僅在兩個輸入同時啟用時觸發。
步驟 5:建立感知-思考-行動迴圈
現在將您一直使用的模式正式化:讀取輸入、根據條件做出決定、然後產生輸出。讓學習者將這個三部分組成的迴圈寫在紙上,並將每個區塊對應到一個部分。為模式命名可以讓轉換到馬達的過程變得容易許多,因為馬達只是另一種輸出。
常見的錯誤是將迴圈視為一次性序列,而不是會重複執行的程序。如果電路板只反應一次然後忽略後續輸入,程式就需要持續檢查,而不是只執行一次序列。
- 檢查點:電路板會持續回應重複的輸入,而不僅僅是第一次。
步驟 6:僅在邏輯運作正常後才添加馬達
一旦學習者能預測程式的行為,就可以引入移動。刻意讓第一個馬達程式保持簡單:一個方向、一個持續時間、一次停止。編碼已經熟悉,因此注意力轉向接線和電源,這才是真正的新變數所在。
常見的錯誤是在同一次嘗試中同時更改程式碼和接線。如果機器人行為異常,您將無法知道是哪個更改造成的。一次更改一項,測試,然後再更改下一項。
- 檢查點:在添加第二個行為之前,機器人必須完全按照程式的指示移動。
工作坊流程一覽
- 先輸出: 在LED網格上顯示一個圖示,並確認下載與執行循環正常運作。 如果舊圖示仍然顯示,表示檔案未傳輸成功。
- 再輸入: 每次按鈕按下時觸發不同的圖示。 如果圖示在未按壓的情況下出現,則顯示區塊位於事件之外。
- 第三個記憶體: 使用變數來計算按壓次數並顯示數字。 如果計數保持為一,則設定區塊正在重置它。
- 第四個條件: 在觸發動作之前,需要同時輸入兩個值。 同時測試兩個輸入,而不是逐一測試。
- 第五個迴圈: 寫出感知-思考-行動模式,並將區塊對應到每個部分。 如果只反應一次,則程式不會重複執行。
- 馬達持續時間: 在程式碼可預測後,加入一個移動行為。 變更程式碼或接線,切勿同時變更兩者。
適合此工作坊的產品
- 我的機器寵物:程式設計變色龍: 它配備了顏色感測器、紅外線感測器和RGB LED,可以透過三種獨特的遊玩模式進行編碼和程式設計,包括一種使用彩色動作卡來為寵物編程的編碼模式。這是學習方塊編碼基礎之後的實用下一步,因為相同的「感知-思考-行動」模式會透過感測器和彩色輸出呈現,而不是單純的LED網格。
- Gecko Run:7顆替換彈珠組: 這是一包適用於Gecko Run彈珠軌道系統的7顆金屬替換彈珠,建議年齡為8歲以上。如果您的活動空間也設有彈珠軌道站,備用彈珠可以防止零件滾到家具下方時導致活動中斷。
在進行建構步驟之前先執行編碼步驟,您的研討會就不會變成故障排除環節。能夠預測程式行為的學習者,其除錯機器人的速度遠快於同時學習邏輯與接線的學習者。





