mblock課程準備
程式寫作如果結合外部感應器,可以達成簡單的自動控制功能,進一步讓學生創作一些作品改善生活或是增加樂趣。
目前國中小常用的程式設計程式大概就是[Scratch],利用積木式拖拉來完成程式寫作。
對於國中小學生來說常見的外部感應器大概就是[Arduino]和[picboard]。
picboard:內建許多感應器,使用方便,但是功能上就有些限制。
Arduino:開放的架構,搭配多元的感應器,可以隨意發揮。
搭配外部感應器的[程式]也有很多,對於國中小學生來說常見的大概就是[S4A]、[mBlock]和[Webduino Blockly]
S4A:可以搭配[Arduino]和[picboard]來設計程式,但是限定了一些Arduino連接埠的功能。
mBlock:大陸深圳市創客工場科技有限公司基於開源Scaratch2.0研發出來的免費程式,除了搭配該公司的零件,也可以選擇一般市售的Arduino控制板使用。程式寫完之後,還可以轉換成Arduino程式語言直接上傳到Arduino控制板,離線執行程式。
Webduino Blockly:台灣慶奇科技公司寫的使用瀏覽器就能控制Arduino的程式,只要在Arduino板上加一片[Webduino Fly (雲端擴充板 )],就可以雲端控制了。
PS:mblock程式經過多次改版,有些可能會發生的問題,請先看連結說明 http://blog.ilc.edu.tw/blog/blog/868/post/93477/626547
—————————–
考量開放、多元、安裝簡便、學生學習容易、便宜等因素,以下課程採用Arduino Uno控制板搭配mBlock來教學。
注意:
mblock程式可能會發生的問題
http://blog.ilc.edu.tw/blog/blog/868/post/93477/626547
————————-
安裝mBlock
———————–
連結到mBlock網站( http://www.mblock.cc/software/mblock/mblock3/ )下載安裝檔,然後依照指示安裝即可(Win7到Win10都可以適用)。
MAC也可以使用,不過如果是大陸改良板子(請看下面圖片),就必須另外安裝驅動程式有點複雜。(MAC建議直接用原裝板子就可以直接用)
過程中會要求安裝[Adobe AIR],就按[確定]把它裝完。
PS:新版的mblock已經內含,不用再另外安裝[Adobe AIR]
——————————
安裝Arduino驅動程式
——————————-
PS:新版的mblock已經內含,不用再另外安裝此程式
打開mBlock程式,點選[連接],再點[安裝Arduino驅動],接著然後依照指示安裝即可。
——————————
如果想要將程式上傳到Arduino控制板,讓程式不需和電腦連線也能直接在Arduino控制板上執行,則需要再安裝Arduino IDE,請直接上官網(https://www.arduino.cc/en/Main/Software )下載安裝。
如果只想用USB連線使用,這個步驟可以省略。
——————————
注意:
標準的Arduino Uno控制板
只要完成上面安裝即可,但是現在市售的一些大陸改良板
大陸改良板用的USB連接晶片不同,使用時要另外安裝CH340系列的驅動程式(上網搜尋[CH341SER.EXE]安裝)。
PS:新版的mblock已經內含,不用再另外安裝此程式
————————–
上網搜尋[Arduino Uno控制板],價格從一百多到近千元都有,如何選擇?就看需求囉,加上一些零件只要幾百元就可以開始體驗電腦程式控制外部感應器了。
建議:2人一組(可以互補),一班大概15組,老師上課要多備一些材料,以供替換,可以準備20組,基本材料費大概7千元。
建議基本課程搭配零件(每一組)如下:
Arduino Uno控制板 一片
USB連接線(TYPE A to B)一條,一邊扁頭,一邊方頭。線稍微長一點,方便學生操作。
RGB三色LED一顆
(線性尺度式:電阻值的變化與旋轉角度或移動距離呈線性關係,此種電位器稱為 B 型電位器)
———————
杜邦線平均一條約2到3元,學生常常不小心將公頭弄斷掉,就無法使用了。將廢棄的網路線檢適當長度,兩頭剝去外皮露出銅線就可以了,一段網路線就有8條了。
——————–
初級班課程材料簡單,可以買這種整理盒分類裝好,上課時需要再發給學生,避免一次發太多,學生遺失。
買這種上下兩層的小塑膠盒,下層放Arduino板及線材,上層放麵包板及小零件,盒子上貼標籤,上課時一組拿一盒,換課程時˙再更換零件即可。
搭配實物投影機,學生在座位上就可以看到老師的接線示範
————————-
上課經驗分享:
1.上課時老師先講解題目,說明線路連接圖示,讓學生看執行結果的影片,再請同學接線,開始設計程式。接線圖可以用單槍投影在布幕上,讓學生參考。
2.必要時可以先講解可能會用的的積木指令。
3.數分鐘後,再講解示範程式,講解完,關閉布幕,讓同學自己練習架構程式。
示範程式僅供參考,同學可以練習用自己的方法(程式)做出一樣的效果。
4.數分鐘後,還是寫不出來的學生,就將程式用單槍投影在布幕上,讓學生參考(抄)。至少學生還是有做出來。
5.有些零件或線路原理課程內並未詳細介紹,可以讓學生自己去網路搜尋答案。
6.進度快的學生可以當小老師教同學,或是請他練習用不同方法做出結果。
7.老師可以直接下載示範程式,節省老師設計程式的時間。
————————-
mBlock程式也支援PicoBoard控制板,不過還要另外安裝配合的驅動程式。
這個已經內建麥克風、按鍵、可變電阻、光敏電阻等感應器,還有4個外接輸入插孔。
優點:內建感測器,方便使用,不用再接線
缺點:限制使用範圍,限制創意範圍,學生少了接線的一些基本電子電路實習。
PS:我的PicoBoard控制板接上電腦沒有反應,電腦找不到這片板子。(不知道是板子壞了?還是少了驅動程式?)
——————————–
感謝:
國華國中魏裕常、張俊傑老師、稻香國小邱文盛老師指導。
主要參考書籍:林信良老師的[用mBlock玩Arduino]
———————————-
Q:為什麼要推Arduino初級班課程為正式課程?
A:
1.程式寫作如果結合外部感應器,可以達成簡單的自動控制功能,進一步讓學生創作一些作品改善生活或是增加樂趣。課程內容適合小孩或初學者,完成初級班課程後,發揮創意再加上市面上的各種感應器,就可以創造各種有用、有趣的作品,讓資訊課不再只是[電腦課]。
2.教育機會均等:適合國小六年級以上學生,全年級都上一個學期課的型態,讓全校學生都能接受基礎的Maker資訊課,讓家裡沒有電腦、沒錢上社團、科學班的學生享有平等的受教權。
3.本系列課程使用Arduino Uno控制板搭配mBlock程式來教學,材料便宜(初級班基本材料費每校只要幾千元),程式安裝簡便,學生學習容易(簡單的電子零件,搭配積木式拖拉來完成程式寫作),有完整的教材教案提供老師教學(老師只要依照課程示範,學生創意無限)。
———————–
相關連結:
Arduino初級班課程目錄
http://blog.ilc.edu.tw/blog/blog/868/post/93477/605771
Arduino課程準備
http://blog.ilc.edu.tw/blog/blog/868/post/93477/599681
Arduino第一課(概論、連接)
http://blog.ilc.edu.tw/blog/blog/868/post/93477/599732
Arduino第二課(LED)
http://blog.ilc.edu.tw/blog/blog/868/post/93477/599733
Arduino第三課(用鍵盤控制LED)
http://blog.ilc.edu.tw/blog/blog/868/post/93477/600369
Arduino第四課(LED紅綠燈)
http://blog.ilc.edu.tw/blog/blog/868/post/93477/600422
Arduino第五課(pwm)
http://blog.ilc.edu.tw/blog/blog/868/post/93477/600854
Arduino第六課(RGB三色LED)
http://blog.ilc.edu.tw/blog/blog/868/post/93477/600855
Arduino第七課(蜂鳴器)
http://blog.ilc.edu.tw/blog/blog/868/post/93477/602388
Arduino第八課(按鍵)
http://blog.ilc.edu.tw/blog/blog/868/post/93477/602288
Arduino第九課(可變電阻)
http://blog.ilc.edu.tw/blog/blog/868/post/93477/602290
Arduino第十課(光敏電阻)
http://blog.ilc.edu.tw/blog/blog/868/post/93477/602291
Arduino第十一課(伺服馬達)
http://blog.ilc.edu.tw/blog/blog/868/post/93477/605139
Arduino第十二課(離線執行)
http://blog.ilc.edu.tw/blog/blog/868/post/93477/605798
———————————–
Arduino進階班課程目錄
Arduino第十三課(超音波感測器)
http://blog.ilc.edu.tw/blog/blog/868/post/93477/620602
Arduino第十四課(搖桿)
http://blog.ilc.edu.tw/blog/blog/868/post/93477/620718
Arduino第十五課(人體紅外線感測器)
http://blog.ilc.edu.tw/blog/blog/868/post/93477/620975
Arduino第十六課(主動式紅外線感測器)
http://blog.ilc.edu.tw/blog/blog/868/post/93477/621311
Arduino第十七課(繼電器)
http://blog.ilc.edu.tw/blog/blog/868/post/93477/622442
Arduino第二十課(電腦裡的馬達)
http://blog.ilc.edu.tw/blog/blog/868/post/93477/614292