01認識arduino
一、Arduino應用的作品展示
老師做了很多arduino應用的作品,如下
智能垃圾桶
電子打地鼠
機械手臂
視力保健機
雙人彈珠台
簡易保全系統
搖搖杯
雷射光打靶
...
這些都是透過小小的arduino板子來做控制的,這塊小小板子是不是很厲害啊!接下來的課程就是要透過SCRATCH寫程式來控制Arduino
二、認識Arduino (義大利文,讀成 阿追(台語)諾)
Arduino,是一個開放原始碼的單晶片微控制器,它使用了Atmel AVR單晶片(AVR 是 ATmel 這家公司設計的 8 位元晶片),採用了開放原始碼的軟硬體平台,建構於簡易輸出/輸入(simple I/O)介面板,並且具有使用類似Java、C語言的Processing/Wiring開發環境。
微電腦控制板就像是一個具有大腦和神經線,但是沒有感官和行動能力的物體。
也可以把它想像成一台小電腦(主機)
開發沿革:(取自維基百科)
Arduino的核心開發團隊成員包括:馬西莫·班齊(Massimo Banzi)(Italy)、大衛·奎提耶斯(David Cuartielles)(Spain)、湯姆·伊果(Tom Igor)(USA)、贊布羅塔·馬提諾(Gianluca Martino)(Italy)、大衛·梅利斯(David Mellis)(USA)和尼可拉斯·蘭比提(Nicholas Zambetti)。
Arduino創始人Massimo Banzi在TED大會的演講
據說馬西莫·班齊之前是義大利Ivrea一家高科技設計學校的老師。他的學生們經常抱怨找不到便宜好用的微控制器。2005年冬天,馬西莫·班齊跟大衛·奎提耶斯討論了這個問題。大衛·奎提耶斯是一個西班牙籍晶片工程師,當時在這所學校做存取學者。兩人決定設計自己的電路板,並引入了馬西莫·班齊的學生大衛·梅利斯為電路板設計編程語言。兩天以後,大衛·梅利斯就寫出了程式碼。又過了三天,電路板就完工了。這塊電路板被命名為Arduino。幾乎任何人,即使不懂電腦編程,也能用Arduino做出很酷的東西,比如對感測器作出回應,閃爍燈光,還能控制馬達。隨後馬西莫·班齊、大衛·奎提耶斯和大衛·梅利斯把設計圖放到了網上。保持設計的開放原始碼理念,因為版權法可以監管開源軟體,卻很難用在硬體上,他們決定採用創用CC許可。創用CC是為保護開放版權行為而出現的類似GPL的一種許可(license)。在創用CC許可下,任何人都被允許生產印刷電路板的複製品,還能重新設計,甚至銷售原設計的複製品。你不需要付版稅,甚至不用取得Arduino團隊的許可。然而,如果你重新發布了參照設計,你必須說明原始Arduino團隊的貢獻。如果你調整或改動了電路板,你的最新設計必須使用相同或類似的創用CC許可,以保證新版本的Arduino電路板也會一樣的自由和開放。唯一被保留的只有Arduino這個名字。它被註冊成了商標。如果有人想用這個名字賣電路板,那他們可能必須付一點商標費用給Arduino的核心開發團隊成員。
Arduino主板有許多種類:
Arduino UNO
Arduino MEGA 2560
Arduino Nano
Arduino Due
Arduino Yun
....
三、認識 Arduino UNO
資料取自Arduino Uno功能簡介(很好的一篇文章)
uno 義大利文是【一】的意思
這是絕大多數Arduino入門者第一塊擁有的控制板
原廠 Arduino Uno
大陸相容的 Arduino Uno (兩種板子皆使用Mega328P晶片,只是不同的封裝,相容板並非盜板,因為原廠開源且授權商業用途製造之故)
四、認識 LED燈
LED燈就是發光二極體,是一種能發光的半導體電子元件
現在的應用很多,如:電燈、車燈、手電筒燈、交通號誌
正負極
點亮LED燈
通路與斷路介紹:
通路:電路形成封閉迴路(電流可流通),電燈亮起來!
斷路:電路形成切斷的電路(電流無法流通),電燈不會亮!
五、認識 數位及類比
Q:何謂數位訊號?
A:簡單來說,數位訊號只有兩種狀態。高電位跟低電位或者說1(ON)跟0(OFF)(可看做電燈開關,不是ON,就是OFF )。舉凡像是電腦、手機等等的電子產品幾乎都是輸送數位訊號。
Q:何謂類比訊號?
A:類比訊號,簡單的說,就是除了數位訊號以外的訊號都叫作類比訊號。像是溫度的高低變化,聲音的大小變化等連續訊號都是類比訊號。類比訊號有很多種狀態,不像數位訊號只有兩種狀態
六、數位輸出控制
電腦的輸出設備:如螢幕、印表機,所以輸出就是電腦把資料丟出來給我看的動作
數位輸出就像利用開關來控制電燈亮滅一樣(將開關轉到ON的時侯燈亮,轉到OFF的時侯燈滅)
D0~D13,腳位編號為0到13,不過通常會寫為D0到D13表示為數位腳位(D代表Digital)
這些腳位用來當【輸出腳位】,輸出高電位5V與低電位0V的數位訊號,像點亮一顆LED燈,就是輸出高電位(5V)給這顆LED燈正極所在的腳位!
Arduino的每一個數位腳位(D0~D13)都可以用來做數位輸出控制,如打亮LED燈。
將LED燈的正極(長腳)將D13
將LED燈的負極(短腳)將GND (Ground 接地)
接下來,利用SCRATCH+Transformer來寫程式控制LED燈的亮、滅
啟動Transformer程式
安裝 Transformer程式
安裝完成後,桌面會有一個「Transformer」捷徑
利用USB線將Arduino Uno與電腦連接(可透過「裝置管理員」查得Arduino控制板使用哪一個連接埠,此例為COM3;若未抓到,記得要先安裝驅動程式)
點選「Transformer」捷徑來啟動Transformer程式
先選擇上圖的S2A(因為要利用Scratch2.0來寫控制Arduino的程式)
選擇正確的介面 (通常不會COM1),像此例是COM3
請勾「自動燒錄韌體」(若這塊Arduino板子是第一次使用Transformer,一定要打勾將Transformer的韌體燒錄進Arduino控制板內)
打勾「打開scratch檔」(等一下按「連線」後會自動打開Scratch程式)
最後點擊「連線」,出現「配對S2A成功」,則Transformer啟動完成(勿關閉Transformer視窗)
因剛剛有打勾「打開scratch檔」,因此會自動開啟Scratch2.0程式(離線版)
開啟Scratch後,點選「更多積木」,若s2a_fm出現綠燈,代表連線成功!!接下來可以開始寫程式來控制Arduino板子了!
若出現紅燈,代表連線失敗,通常是Arduino板子沒接好或選錯連接埠。