2016年7月20日 星期三

Arduino第二堂課:元件

  寫程式是一件很無趣的事。尤其,當自己要去抓那種重複100次,可能會發生一次的錯誤。這其實不離譜,做工程師的,常常會聽到這種話:「你的程式突然當掉了,重新開又好了。而且,我沒辦法再重複製一次給你看。」真的,程式的路上是常常遇到鬼的。

  雖然說,做一個工程師很無奈;但是,對孩子來說,看到車子會走了,或是,看到燈光一閃一閃亮晶晶,還真的是很令人興奮的。

  要看到一閃一閃亮晶晶,如果,就只是靠人家已經做好的板子來實現,那也很無趣。不如,趁孩子在熱身,我們開始跟他們介紹元件:常用的電阻、電池跟LED。但是,在介紹元件之前,最先要認識的是:三用電錶。

三用電錶:
  三用? 其實,時代真的進步得很快,早就超過三用了。但是,也叫習慣了,要說稱它為萬用電錶,又太誇張了點吧。

  電錶第一個要認識的,是「電壓」的檔位。我們讓孩子,試著自己量一下,三號電池,跟一號電池,哪一個電壓比較高。每個小孩都是說:大的呀。自己量了一次,很快的他們也就學會怎麼看電池,也學會什麼是正電壓,什麼是地(ground)。

  第二個要量的,是有點困難解說的,發光二極體。但是,很快他們也學會如何切到二極體量測的檔位,並且,知道二極體是有方向性的。一邊是正,一邊是負。而且,要讓它亮是要超過一個電壓的。(說實在的,我不想解釋V-I曲線。對小學生來說,是有點太難了。)

  第三個要量的,是電阻。

  最後,5V加上電阻,加上二極體,在麵包板上串起來。就看到燈亮了起來。走到這一步,孩子們是還不用用到電腦喔。但是,已經是呼聲連連了~




2016年7月10日 星期日

安裝軟體mBlock及Arduino IDE


  原本是要先講說基本的元件。但是,因為本週要上的課,要先安裝軟體。所以,還是先把軟體安裝給寫一寫。

  為了讓初學者,可以很快的進到由人控制機械的世界,透過圖形化的介面,是比一行一行的程式,來得人性化多了。mBlock就是其中之一。

  下載mBlock安裝程式,請到下列網頁:
http://mblock.cc/download/
自行選擇是Windows版本,或是Mac版本囉。目前最新版本為3.3.1版。
安裝過程中,若有需要,會再安裝Adobe AIR。這東西是……也不用搞這麼清楚啦。反正就順著安裝步驟,安裝程式需要什麼就給什麼。(信用卡號除外啦)

  另一個要安裝的,是Arduino IDE。請到下列網頁,下載並安裝。
http://www.arduino.cc/en/main/software
同樣的,請自行選擇是Windows版本,或是Mac版本囉。目前最新版本為1.6.9版。
 
  有了實驗板,有了開發程式,那麼接下來,就看程式設計師想玩什麼花樣囉~

2016年7月9日 星期六

Arduino上手第一課:和孩子談目標

  這個應該已經是人性了,如果,我們跟孩子談目標,通常是試著由說服的手段,達到指使的目的;相反的,孩子跟我們談目標,通常是在反抗我們的要求。最常見的對話,是這樣。
  我:「今天下午,我們來把客廳清理乾淨。」(這是目標設定。)
  孩子:「為什麼? 那些都是妹妹的,為什麼我也要一起做。」(這是逃離被設定的目標。)

  Arduino上手第一課,卻是要跟孩子溝通,接下來會發生什麼事。這目的,是為了引起孩子較長期的學習或是工作熱情;只是,第一次跟孩子談,卻是在工作到一半,接到老婆的電話:「老公,孩子的同學再一個小時,就會到我們家了喔。你會回家吧?」
我:「沒問題。」
過一個小時,老婆又來電話:「老公,你到家了嗎?孩子的同學,再10分鐘就到了喔。」
我:「喔,好呀。」(到就到,有什麼好大驚小怪的嗎?孩子的同學來,是需要我在家奉茶嗎?)
老婆:「呀,你不是說要教他們Arduino嗎?」
(汗~~ 我有說是今天嗎? )

  ======== 以上前言,以下就是正文了 ==========

  桌上擺上了Arduino UNO的板子,以一些週邊小元件;然後是mBot。孩子們對於看得到,摸得到的東西,總是比較有興趣。至於,沒辦法透過嘴巴講的東西,就在正式的軟體課開始,再來操作吧。

  我告訴孩子們,整個課程會有三個階段,能做到哪裏,看自己有多想要做。

  第一階段,我們要玩的是Arduino UNO的板子。(註一)
這個階段,我們會學會基本的程式,了解元件。然而,沒解說的是,我們會經過mBlock的過程,接到Arduino IDE。(註二)

  第二階段,我們要玩的是寫程式控制車車。(註三)
這個階段,會透過某些輸入:如超音波或是紅外線,來影響輸出:如馬達控制。
在做自走車的階段,孩子是可以進行某些競賽,來豐富學習過程的。

  第三階段,我就期望是個團隊的專案。透過3~4個主要的功能,共同完成一個有意思的產品。第一部份,是對感應器的更精準控制。第二部份,是針對馬達控制的加強。第三部份,是整合控制。第四部份,是透過3D印表機,設計機構。

  因為是第一次和孩子們介紹,孩子們也沒準備電腦。因此,接下來要介紹的,就是最基本的電子學及電子元件介紹囉。有待下文分曉囉。


(註一) 市面上Arduino的板子很多,整理分析如下。無意廣告、意者自洽。
關於Arduino UNO的板子,可以參考原廠資訊。
https://www.arduino.cc/en/Main/ArduinoBoardUno
在露天,也是找得到有人在賣。可參考下連結。
http://goods.ruten.com.tw/item/show?21207140700363
Arduino相容的板子很多,在露天,鍵入Arduino UNO,就可以找到很多。
個人是買了這一塊(非廣告),主因是價位便宜,又有基本的實驗用元件。但是,這些板子cost down到這個價位,真的能讓自己很放心嗎? 我只能不斷的要求孩子要洗手。
http://goods.ruten.com.tw/item/show?21537634288537
另一個綜合的選擇,是旗標出的FLAG'S 創客‧自造者工作坊 10+ 實驗(「Arduino 超入門: 創客‧自造者的原力」書+實驗套件) 一次買足,書跟實驗板。
http://www.flag.com.tw/book/5105.asp?bokno=F6789A#download

(註二) 關於mBlock,是透過圖形化的介面(Scratch),來連接Arduino的設備。請參閱其網http://www.mblock.cc/
目前透過圖形化介面,來連接控制Arduino的軟體,也有數家在開發。唯個人是因碁峰出版社,有出了一本書「用mBlock玩Arduino」,可以很快的入門。
透過圖形化介面,是讓孩子比較快接受這個起步的階段。一旦喜歡上他們在進行的工作,就會為了效率自然轉到Arduino IDE。

(註三)市面上關於Arduino的自走車,也是五花八門。
目前預計要使用的是mBot。http://www.gmii.net/products/550b04a45eb0342b3c000033