2015年5月21日 星期四

學S4A與Arduino的國中小老師器材採買建議

學S4A與Arduino的國中小老師器材採買建議


最省最基礎基本要求,就能把基本的輸出輸入學習完畢,

方案一:我喜歡的,全部用模組,不用麵包板和電子零件,市價約在800左右,不考慮報帳問題約500可買到

  1. UNO主板(有原版1000、相容版280~150)。
  2. 感測器V5擴充板(怕接錯有彩色版的250、也有防呆插座版的,感測器受限較不建議)。
  3. 杜邦彩虹排線(雙母頭一條40Pin,可依需求撕開,做色彩管理,學生容易上手)。
  4. RGB LED模組,可學數位及類比輸出。
  5. 按鈕模組可學數位輸入。
  6. 超音波(U-016,SR-04不能用S4A),或紅外線避障感測器(四線有A0的)可學類比輸入,但故障折損率比較高。
方案二:對電路接線有障礙的人,約在600左右可搞定

  1. UNO主板(有原版1000、相容版280~150)。
  2. motoduino在2016農曆年過後,即將出的S4A感測器擴充板第二代(一定要第二代),接腳完全符合S4A規範,上面還有常用的感測器和輸出元件,完全免再買其他的感測器和排線等,就能完成基礎的輸出入學習,也有接腳可以擴充方便專案製作;S4A能用,mblock和其他的就都能用了,價格約在380左右。
※要注意UNO板的選擇,如果你用Chrome book的話,儘量不要用相容板,因為Chrome book目前並無相容板的驅動CH340;Chrome Book玩Arduino的話請參考Webduino的網站。


以下圖片均取自露天及淘寶網站


UNO板












UNO感測器擴充板
















RGB LED 共陰極






S4A感測器學習板V2




































杜邦彩虹排線雙邊母頭





RGB LED 共陰極
RGB LED 共陰極












RGB LED 共陽極













按鈕模組



























各式紅外線模組

============================================================

其他

想讓裝置動起來


舵機(轉動角度)
連續旋轉伺服機(兩個即可做車子)
L298N+直流馬達或減速直流馬達
車體+萬向輪+電池盒
吳志文老師研發的車體第二代
貴貴的mbot


想用無線控制或手機APP控制


HC-06藍芽模組
電腦端適配器
改藍芽鮑率用USB2TTL模組


想控制交流大電或隔離電路


繼電器、SSR繼電器
MOS可控制直流迴路的功率輸出


做主題擴充模組


常見又便宜的有
光線、電位計、聲音、震動、磁性、瓦斯、酒精、彎曲...請自己查露天網路


想自製感測器或練習電路的


麵包板、麵包板線、長排針、一堆電子零件...


想讓Arduino上雲端


參考Webduino買Arduino FLY或馬克1號

2015年5月18日 星期一

給初學者的建議-arduino控制板的挑選

給初學者的建議-arduino控制板的挑選

◎本文僅針對國中小的教育

使用UNO+感應器擴充板:


  1. 大部分坊間的書籍、網路上的範例多是採取此板子。
  2. 圖形化程式語言S4A、mblock、Webduino、Ardublock、Arduino C....皆能使用。
  3. 台灣地區露天網路購物可以買到,常見網路賣家個人覺得BUYIC、微控科技、iCshop服務都不錯,近來有許多賣家把價格殺得更低了,NOVA良興及光華商場裡的店面也有鋪貨,原廠大約1000台幣,山寨的(商標一模一樣,會有觸犯商標法的疑慮)大約280左右,用起來個人覺得其實都差不多,相容板大約再110~150左右甚至價格更低。
  4. 原廠、山寨,個人五年教學下來覺得用起來都一樣,標準的驅動程式都含在Arduino IDE裡面,只要至原廠網站下載安裝即可。但相容版用的USB晶片不同,所以要另外下載對岸CH340系列的驅動程式,Google一下就會找到。
  5. 如果你用的是Chrome book,然後要是用USB連接,建議使用原廠或山寨的板子,他能使用Webduino控制,宜蘭研習會已經確認過,至於CH340的板子,由於原廠並無開發Chrome的Driver因此恐怕無法使用,但是Webdino可用藍芽來溝通,目前測試中,有許有機會可用,此外,如果你有買webduno的WIFI擴充板,應該都是可用的。

ARDUINO UNO標準板、山寨板,最沒問題的板子,即使Chrome book也能以Webduino來使用,圖片取自:露天、淘寶網站





















ARDUINO UNO 相容板(CH340通訊晶片),宜蘭、其他地方很多老師用這片,我也用,圖片取自:露天、淘寶網站

 慧手科技(motoduino)生產的motoduino U1板,內建馬達控制晶片提供大電流輸出,玩馬達無須再購置L298N模組

感測器擴充板:


  1. 為方便感測器連接所設計,因為現在的感測器及元件大部分都有模組化,接線有一定的規則,五年下來,最後我都採用模組教學,國小部分不使用麵包版,以減少學生挫折和設備的損壞率。
  2. 只要使用彩色杜邦排線(雙母頭)即可連接一般市售感測器,也有做工比較精緻,採色彩管理分類插座,或是做成防呆插座的特殊板,適合完全搞不清楚正負極、年紀比較小的學生。
  3. 我個人不喜歡防呆的插座,因為會被感測器綁死,除非你有轉接排線,不然如果感測器沒有做房呆插座的你就不能用了,而且也不能延長,做作品時不方便。我比較建議彩色版的。
  4. 一般單色感測器擴充板大約100~150元左右,而彩色板的大約250~350元左右。現在都是第五代了。


ARDUINO UNO感應器擴充板(單色版),圖片取自露天、淘寶網站



ARDUINO UNO感應器擴充板(彩色版),圖片取自露天、淘寶網站我個人喜歡使用上面這塊,學生比較不會接錯,也養成色彩管理,習慣電線顏色含意










圖片取自慧手科技網站

(motoduino)生產的感測器擴充板,數位接腳採彩色杜邦插座,類比接腳使用電話線插座,感測器可以配合自家生產的感測器模組,由於線路插座防呆,因此不會有接錯線的困擾,但相對的使用感測器受限所生產的項目,但也可購買轉接用的杜邦線外接一般市售感測器。

S4A 感測器學習板(V2)  目前初學硬體最推薦組合!!!

  1. 最近與范老師和motoduino討論,請慧手科技開發了第二代的S4A感測器擴充板,因為第一代的感測器擴充板並不完全符合S4A的腳位,新的感測器板V2內建基礎的輸出入感測器和LED,有點類似Picoboard的學習板,但兼具輸出入。
  2. 最重要的是完全符合S4A的腳位,S4A是限制最嚴格的,所以只要S4A能用,mblock、S2A、其他任何程式語言就能用,好處是害怕感測器要接線的老師,用這片一片搞定,105年5月也已經正式上市。
  3. 售價露天將訂在台幣360(未稅)左右,對於剛開始接觸的國中小同學來說,可謂是物美價廉,而且板子特別將接腳拉出來,要做專題時外接感測器也方便,真是進可攻退可守。
  4. 所以Arduino$150+這片360,就可以搞定所有基礎的輸出入學習專案,不用再買感測器、排線...,應該是剛入門的最佳組合,非常建議喔。





圖片取自慧手科技網站

專題也可使用NANO+感應器擴充板:

  1. 體積小,可縮小製作成品的體積。
  2. 輸出無保護電阻,練習時LED必須串接保護電阻。
  3. 可使用感應器擴充板連接感應器類似UNO大小。
  4. 可使用PICOBOARD擴充板(符合S4A腳位)學習感應器基本功能。
  5. mblock已經有支援了。


ARDUINO NANO,圖片取自:露天、淘寶網站

NANO感測器擴充板:也是為了方便連接市售感測器所設計,用起來感覺像UNO一樣


ARDUINO NANO感應器擴充板,圖片取自:露天、淘寶網站


(特殊)NANO感測器學習板,做成類似PICOBOARD功能的感測器學習板,還多加了LED及RGB_LED可以直接看到數位與類比輸出,還把接腳擴充出來可以外接感測器,完全符合S4A1.4所有腳位的學習板,曾經是本人最喜歡的板子,無奈沒有跟著S4A1.6改版,因此使用1.6時會有兩個腳位不同,即使如此,在105年4月之前,他仍然是市售所有感測器學習板中,最符合S4A的學習板,超推薦,但是比較不好買,價格也稍高,但在motoduino s4a學習板V2出現後,建議各位不用再考慮這塊了。
























ARDUINO NANO PICOBOARD感應器學習板,圖片取自:露天、淘寶網站

2015年5月13日 星期三

專題-S4A-燈光調色盤-PWM輸出與類比輸入的練習

專題-S4A-燈光調色盤-PWM輸出與類比輸入的練習


利用S4A偵測旋轉電位計或滑動電位計模組輸入,在RGB全彩LED模組上輸出想要的顏色。


教學目標:

1.         了解Arduino如何使用基礎類比輸入與類比輸出
2.         了解基礎電路運作原理
3.         了解RGB全彩LED與電位計模組使用方式
4.         能使用Scratch程式設定讀取類比輸入、PWM輸出至RGB全彩LED
5.         能使用Scratch程式做多媒體輸出與控制流程進行
6.         能運用上述學習天馬行空產生多元的創意
7.          能克服困難將創意展現製作出自己的作品

設計理念:

學習Arduino所需要的電路基礎常識,這些常識國小五年級其實就已經具備,這裡,我們運用簡單的模組(初步組裝即可)或電路(進階電路DIY),讓學生知道開放式硬體的電路部分其實很簡單,利用簡易的硬體加上千變萬化的程式設計,就能讓自己的創意無限延伸,創gk4ru4sxu3su04造出屬於自己的獨特作品,成為小小發明家。

主題架構:


材料:(本教案使用預設為粗體設備)


1.      Arduino開放式硬體,建議預先上傳好S4A韌體
2.      感測器擴充板V4V5均可使用,有擴充板接線比較簡單,無擴充板也能使用
3.      旋轉電位計(0~1023)、滑動電位計模組均可使用
4.      RGB全彩LED共陰模組(0-255),共陽極也行(數值要取255補數)
5.    雙母頭杜邦彩虹排線

電路連接:


電位計模組電路連接說明:

電位計模組為類比輸入,因此其訊號輸出(OUT)要接到ArduinoA0~A5輸入端(本案例三個輸入接在A0A1A2),使用擴充板則接在A0~A5S端,S代表信號的意思,連接腳位如下:
電位計1   Arduino
=======    ======
OUT  ←→ S(A0)
VCC  ←→ V
GND  ←→ G
電位計2   Arduino
=======    ======
OUT  ←→ S(A1)
VCC  ←→ V
GND  ←→ G
電位計3   Arduino
=======    ======
OUT  ←→ S(A2)
VCC  ←→ V
GND  ←→ G

RGB全彩LED連接電路說明:

RGB全彩LED模組有分共陽或共陰,接線和控制方法各有不同,本例以比較直覺之共陰極模組為主,除了“-”即為接地GND外,另三隻接腳分別為三原色的控制訊號,這次我們使用PWM控制,所以我們把它分別接至擴充板上的S5S6S9,也就是Arduino板上的D5D6D9,連接腳位如下:
   RGB模組     Arduino
   =======       =======
    - (GND)   ←→ G(GND)
    R(RED)   ←→ S5(D5)
    G(GREEN) ←→ S6(D6)
    B(BLUE)  ←→ S9(D9)

模組測試、程式撰寫與說明


電位計測試:

本專題將電位計輸入接在ArduinoA0A1A2類比輸入接腳,因此在S4A中請觀察sensor board上的Analog0Analog1Analog2欄位的值,當我們將連接在A0的電位計逆時針旋轉到最左邊時,Analog0的値為0,當順時針旋轉到最右邊時,Analog0的値為1023,任意旋轉時,Analog0的値為0~1023之間,同樣的方法測試另兩個電位計,會得到一樣的結果,Sensor Board的顯示如下圖。

因為電位計模組將0~5V切分成1024份以數位方式來模擬類比輸入,所以數值1相當於0.00488V的電壓,我們可以用一個小程式來轉換顯示目前的輸入電壓,程式如下圖:
  

我們可以寫一小段程式來轉換電位計類比輸入(0~1023),將它變成音階輸出(50~84),因此靠著轉動電位計我們可以達到不同的音樂音階輸出,範例如下。



RGB全彩LED測試:

本例中因為要使用PWM控制全彩LED,因此將R(紅色)G(綠色)B()三隻接腳分別接在D5D6D9,每一支接腳單獨控制一個顏色,由於S4APWM輸出可以從0~255一共有256種變化,因此三隻接腳即可變化出全彩1677萬色(256*256*256),我們先來測試單一顏色,確認一下程式輸出與各接腳亮燈是否正常。
首先,拿出三個“analog 9 value 255 ”積木,將接腳全部改成5用來控制紅色,並將值分別改成2551280,然後分別雙擊點選積木,會發現模組紅燈全亮、半亮、不亮,因此可以知道“值”就是輸出的功力(PWM,脈波頻寬調變),可以控制燈的亮度。
   

測試完畢之後,記得點選“analog 5 value 0”積木,將紅燈關掉,以免測試其他顏色時混到色,接下來請以同樣方法依序測試綠燈(D6)和藍燈(D9),以確認你的三個顏色分別都能正常運作。

※如果你的顏色和接腳搭配錯誤,則以實際發生的情形來做設計即可,因為對岸製造的模組品質不一,有時接腳標示會錯誤,有時零件品質有問題某個燈不亮也是常有的事、還有線材接觸不良也會發生,可以交叉測試一下就會知道問題出在哪裡。

燈光調色盤程式製作

首先我們要將Analog 0旋轉電位計的輸入(0~1023)轉化成控制D5PWM輸出範圍(0~255),因此要做一點簡單運算,於是將Analog 0的值除以1023再乘上255,然後因為PWM輸出訊號得用整數,因此再將結果四捨五入即可,將得到的結果放進點亮D5不斷地做PWM輸出,程式如下圖:

當我們按下綠旗執行後,只要旋轉A0上面的旋轉電位計,就能調整紅燈的亮度,同時為了能將亮度數值顯示在螢幕上,我們增加一個紅燈變數“紅燈R

然後我們將剛剛運算的結果先放在這個變數中,然後再以這個變數輸出PWM,所以程式修改成下圖:

這時,再次旋轉A0上面的旋轉電位計,除了能調整紅燈的亮度,還能顯示紅燈R的亮度數值在螢幕上,如圖。

接下來產生“綠燈G”和“藍燈B”的變數,同時將整個程式複製成三份,分別修改第二隻程式使用變數“綠燈G”、“value of sensor Analog 1”、“analog 6 value 綠燈G”、以及第三隻程式改成使用變數“藍燈B”、“value of sensor Analog 2”、“analog 9 value藍燈B”,程式如下圖:



恭喜你,完成這樣就完成本次燈光調色盤專案,你可以參考網路上的RGB配色表,分別調整三個電位計所代表的三原色,自由調配出想要的顏色了!

教學影片



2015年5月6日 星期三

專案設計發想表格

專案設計發想表格


我們在發展專題時,因為資源有限,因此要在有限資源裡安排腳位與感測器,這時候心智圖和九宮格思考法很好用;而雙向細目表則可以用來排列組合強迫創意的產生

一開始得用九宮格創意思考法鼓勵創意的產生,第一次可以發想題目,在周邊延伸出它的特色說明


第二次可以挑選針對某個特定的特色,發展更詳細的說明,因此九宮格可以用上很多層



創意產生之後可以利用這個:使用S4A和1片Arduino時,安排資源分配,將表格放在A4紙中心,讓孩子長出枝葉


這是motoduino的擴充板專用的資源分配表



2015年5月4日 星期一

PICOBOARD感測器基礎用法

PICOBOARD感測器基礎用法


第二章 基礎篇 Scratchboard的能耐-認識Scratchboard上的5種感測器
學習目標:
2-1按鍵感測器的運用
2-2聲音感測器的運用
2-3光線感測器的運用
2-4滑桿感測器的運用
2-5電阻感測器的運用

課程實作
注意事項,在開始使用所有感測器之前,你應該將感測器板連接驅動完成,否則會造成SCRATCH程式抓不到偵測值而當掉。

2-1按鍵感測器的運用:


按鈕感測器位置
2-1-1



觀察按壓按鈕感測器後ScratchBoard監視器的變化,當按下按鈕時,顯示為True,按下按鈕時,顯示為false,如下圖
2-1-2



練習一,一般用法,設定小貓在按壓按鈕時變胖,我們利用「偵測器(按下按鈕)」、「如果否則」並包覆「重複執行」,讓電腦一直重複偵測是否有按下按鈕,如果有按下按鈕,就將魚眼特效設定為100,否則為0,程式(程式2-1A)如下
2-1-3


點選綠旗開始執行,執行結果如下
2-1-4


2-1-5


練習二,按壓按鈕瞬間動作,設定小貓在按下按鈕瞬間變胖,我們利用「如果」迴圈並包覆「重複執行」,讓電腦一直重複偵測是否有按下按鈕,當按鈕狀態由未按下的false→改變成按下的true時,就廣播變胖特效,在廣播程式中為了讓變胖特效被看見,因此使用了等待0.5秒,而使用廣播才不會將程式拖慢導致偵測出現空窗期,程式(2-1B)如下:
2-1B


練習三,放開按鈕瞬間動作
如果是要按鈕放掉時才產生動作,則只要修改顛倒將偵測器按下按鈕偵測器按下按鈕不成立互換即可。
2-1C


2-2聲音感測器的運用


聲音感測器位置
2-2-1


觀察聲音感測器在ScratchBoard監視器的變化,你會發現在聲音的欄位,數字一直跳動,聲音感測值上下限在0-100之間,而聲音越大聲,數字就越大。
2-2-2


練習一,無段用法,我們將聲音的感測值直接放進鬼的特效設定中,因為鬼特效變化的範圍恰好也是0(存在)-100(隱形透明),因此不用額外做調整,並記得設定重複執行,同時為避免程式執行太快,人類眼睛無法捕捉變化,因此迴圈中增加一個0.1秒等待時間(非必要,視情況而定),讓聲音偵測及畫面顯示慢下來,程式如圖
2-2-3


點選綠旗執行後發現,聲音越大,小貓越透明,當聲音到達100時,小貓會消失
2-2-4


2-2-5


練習二,哨兵值用法,選定一個值,在大於、小於或等於此數值時產生動作。我們設定當聲音感測器的值大於50的時候,就讓小貓說請安靜點,小於50的時候,就說你們很乖,由於感測器值本身是一個橢圓形的數值積木,因此必須加上六角形的判斷積木才能放置在控制程式中做為判斷,同時別忘記要隨時判斷的程式,都要加上重複執行,如果怕變動太快,就要加上等待時間,程式如圖
2-2-6


點綠旗後執行結果如圖
2-2-7


2-2-8


練習三,多重範圍選擇,將聲音偵測的結果,切割成多個部分,範例中我們將聲音的偵測值分為三部分,如果在100~67,我們設定小貓的高度停在Y座標=100的位置,如果在66-34,我們設定小貓的高度停在Y座標=0的位置,如果在33-0,我們設定小貓的高度停在Y座標=-100的位置,如下圖
2-2-9


當點選綠旗執行時,聲音的數值一定會落在其中一個區間中,因此小貓的高度會在三個位置中變動,如圖
2-2-10



2-2-11


2-2-12


2-3光線感測器的運用


光線感測器位置
2-3-1


觀察光線的變化對比ScratchBoard監視器上光線偵測器的變化,當光線強時數字變大,當光線弱時,數字變小,可以使用手電筒或開關電燈測試,如下圖
2-3-2


練習一,設計一個會隨著光線無段變化的舞台背景
我們先點選舞台,並在背景選擇匯入一張圖片,並將舊的空白背景刪除。
2-3-3


撰寫舞台背景程式,使用外觀積木裡的亮度特效設定,將光線的偵測值置入,做為亮度的設定值,並設定重複執行,讓程式不斷偵測光線的亮度,然後調整舞台背景所呈現的亮度。程式如2-3-4
2-3-4


執行後你會發現,當光線亮度比較亮時,舞台畫面有些過亮過白,然後光線暗時,舞台背景還是很亮,如圖
2-3-5


2-3-6


我們必須做一點調整,讓光線的值所產生的舞台背景亮度比較適合現場的情況,因此我們使用運算積木,將光線的偵測值預先減掉50,再放進外觀的亮度設定中,如此一來現場的光線和舞台的亮度就會比較吻合了。程式如2-3-7
2-3-7


練習二,哨兵值用法,選定一個值,在大於、小於或等於此數值時觸發某個事件,本例中,我們讓光線大於80時,小貓會說早安,否則就閉嘴。所以我們使用如果否則來控制流程,並不斷的重複偵測。
2-3-8


當光線值大於80時,小貓會說早安
2-3-9


當光線值小於80時,小貓不說話
2-3-10


練習三,多重範圍選擇,將光線偵測的結果,切割成多個部分,按照光線偵測值的落點,範例中我們將光線的偵測值分為三部分,如果在100~67,我們設定小貓因為太陽太大,快被蒸發而求救,如果在66-34,我們設定小貓抱怨太陽太熱,如果在33-0,我們設定小貓最舒服自在
2-3-11


執行之後,光線很強時,小貓快要消失,且說要被蒸發了
2-3-12

執行之後,光線中等時,小貓消失一半,抱怨太陽太大
2-3-13


執行之後,光線很暗時,小貓最舒適
2-3-14


2-4滑桿感測器的運用


滑桿感測器的位置
2-4-1


觀察移動滑桿時ScratchBoard監視器上滑桿偵測器的數字變化,數字會從0-100變化
練習一,無段用法,我們來做一個塔防遊戲的炮台,讓滑桿可以控制炮口轉動的方向。
首先,新增一個巫師角色,並設定其造型中心在背部與魔術棒同一高度的位置, 以利巫師轉向時看起來比較自然,並將巫師位置置放於左側中間,我們假定巫師棒的位置向右。
2-4-2


設定外觀的『面向』積木,將滑桿偵測值置入,並設定重複執行,如程式2-4-3
2-4-3


因為滑桿的偵測值是0-100,與角色的轉向方位不同,因此我們要將偵測值做一點調整,我們先用100將它減去,目的是為了讓角色旋轉方向反轉,並和滑桿移動方向配合,然後將結果乘上1.75倍,這是目測並調整出來的值,讓主角旋轉的角度控制在右方,0-180度位置。程式如2-4-4
2-4-4


點選綠旗後執行結果如下,當我們滑動滑桿時,巫師會拿著魔術棒在右邊180度的範圍內旋轉
2-4-5

2-4-6

2-4-7


2-5電阻感測器的運用

電阻感測器的位置
2-5-1

一共有四個電阻感測器可以任意使用,我們將鱷魚夾線連接在電阻感測器D的插孔,然後觀察ScratchBoard監視器上電阻感測器D的數字變化,你會發現當鱷魚夾分開時,D的數值停留在100
2-5-2


2-5-3


當鱷魚夾互碰時,D的數值則停留在0
2-5-4


2-5-5


有趣的是,鱷魚夾果中間接上含有水分,或是會導電的東西的話
例如把鱷魚夾夾在2B鉛筆畫的兩端
如圖2-5-6

你會發現電阻感應D的數字竟然會變化,本例D的值約95
如圖2-5-7


例如把鱷魚夾夾在檸檬皮的兩端
如圖2-5-8

你會發現電阻感應D的數字停留在約79
如圖2-5-9


把鱷魚夾夾在檸檬比較多水分的果肉而且靠近一點的話
如圖2-5-10

你會發現電阻感應D的數字變得更小,本例約為71
如圖2-5-11


如果把鱷魚夾夾在水杯的兩端
如圖2-5-12


你會發現電阻感應D的數字停留在約71
如圖2-5-13

如果把水杯擠些檸檬汁下去,把檸檬也丟進去
如圖2-5-14

你會發現電阻感應D的數字縮小到46
如圖2-5-15



是不是很有趣?你可以多多做一些嘗試,你會發現原來越會導電的東西,在這裡的數字越小,而越不會導電的東西,在這裡的數字越大,有沒有想起國小自然課物體的導電性實驗、還有水溶液酸鹼性導電的實驗呢?有沒有想到一些有趣的應用呢?人體其實也會導電的哦,你可以試試用兩隻手分別握住鱷魚夾兩端,你會發現數字跳動,而且如果雙手是潮濕的效果更明顯,所以手如果濕濕的,最好不要按電燈開關,以免容易觸電啦!