回顧Arduino的起源:最初的原型 4/10/2014 http://www.makezine.com.tw/make2599131456/arduino8 [url=][/url] 3月29日是Arduino節,是全世界讚頌這個微控制器及因其而生的電子專題的節日。現在使用Arduino的產品從熱鬧街道的櫥窗展示,到許多取得廣大成果的Kickstarter專案,我們看到各種超乎我們能記憶範圍的成品。 然而,這麼高泛用性的平臺最初就如同這張照片一般,是極為不起眼的東西。這個原型似乎這樣叫著:「如果你有需要解決的問題,那就自己想方法!」誰能想像得到它竟然會有今日的發展呢?如果你想深入了解Arduino的原點及Arduino團隊如何克服各種困難並建立了它今日的地位,請閱讀這篇IEEE在2011年的報導。 Arduino今年滿十歲了呢。 [hr]red[/hr] |
Arduino 起源
Massimo Banzi 之前是義大利 Ivrea 一家高科技設計學校的老師,他的學生們經常抱怨找不到便宜好用的微處理機控制器。西元2005年, Massimo Banzi 跟David Cuartielles 討論了這個問題,David Cuartielles 是一個西班牙籍晶片工程師,當時是這所學校的訪問學者。兩人討論之後,決定自己設計電路板,並引入了Banzi 的學生 David Mellis 為電路板設計開發用的語言。兩天以後,David Mellis 就寫出了程式碼。又過了幾天,電路板就完工了。於是他們將這塊電路板命名為『Arduino』。
當初Arduino設計的觀點,就是希望針對『不懂電腦語言的族群』,也能用 Arduino 做出很酷的東西,例如:對感測器作出回應、閃爍燈光、控制馬達…等等。
隨後Banzi,Cuartielles,和Mellis把設計圖放到了網際網路上。他們保持設計的開放源碼(Open Source)理念,因為版權法可以監管開放原始碼軟體,卻很難用在硬體上,他們決定採用創用CC許可([url=file:///D:/%E6%B0%B8%E5%BF%A0%E7%A0%94%E7%A9%B6/%E9%9B%BB%E5%AD%90%E6%9B%B8/arduino%20%E7%B3%BB%E5%88%97/POV/POVV2.doc#_ENREF_6]Creative_Commons, 2013[/url])。
創用CC([url=file:///D:/%E6%B0%B8%E5%BF%A0%E7%A0%94%E7%A9%B6/%E9%9B%BB%E5%AD%90%E6%9B%B8/arduino%20%E7%B3%BB%E5%88%97/POV/POVV2.doc#_ENREF_6]Creative_Commons, 2013[/url])是為保護開放版權行為而出現的類似GPL[url=file:///D:/%E6%B0%B8%E5%BF%A0%E7%A0%94%E7%A9%B6/%E9%9B%BB%E5%AD%90%E6%9B%B8/arduino%20%E7%B3%BB%E5%88%97/POV/POVV2.doc#_ftn1][1][/url]的一種許可(license),來自於自由軟體[url=file:///D:/%E6%B0%B8%E5%BF%A0%E7%A0%94%E7%A9%B6/%E9%9B%BB%E5%AD%90%E6%9B%B8/arduino%20%E7%B3%BB%E5%88%97/POV/POVV2.doc#_ftn2][2][/url]基金會 (Free Software Foundation) 的 GNU 通用公共授權條款 (GNU GPL):在創用CC許可下,任何人都被允許生產電路板的複製品,且還能重新設計,甚至銷售原設計的複製品。你還不需要付版稅,甚至不用取得 Arduino 團隊的許可。
然而,如果你重新散佈了引用設計,你必須在其產品中註解說明原始Arduino 團隊的貢獻。如果你調整或改動了電路板,你的最新設計必須使用相同或類似的創用CC許可,以保證新版本的Arduino電路板也會一樣的自由和開放。
唯一被保留的只有Arduino這個名字:『Arduino』已被註冊成了商標[url=file:///D:/%E6%B0%B8%E5%BF%A0%E7%A0%94%E7%A9%B6/%E9%9B%BB%E5%AD%90%E6%9B%B8/arduino%20%E7%B3%BB%E5%88%97/POV/POVV2.doc#_ftn3][3][/url]『Arduino®』。如果有人想用這個名字賣電路板,那他們可能必須付一點商標費用給 『Arduino®』 ([url=file:///D:/%E6%B0%B8%E5%BF%A0%E7%A0%94%E7%A9%B6/%E9%9B%BB%E5%AD%90%E6%9B%B8/arduino%20%E7%B3%BB%E5%88%97/POV/POVV2.doc#_ENREF_2]Arduino, 2013[/url])的核心開發團隊成員。
『Arduino®』的核心開發團隊成員包括:Massimo Banzi,David Cuartielles,Tom Igoe,Gianluca Martino,David Mellis 和 Nicholas Zambetti。([url=file:///D:/%E6%B0%B8%E5%BF%A0%E7%A0%94%E7%A9%B6/%E9%9B%BB%E5%AD%90%E6%9B%B8/arduino%20%E7%B3%BB%E5%88%97/POV/POVV2.doc#_ENREF_2]Arduino, 2013[/url]),若讀者有任何不懂Arduino的地方,都可以訪問Arduino官方網站:http://www.arduino.cc/
『Arduino®』,是一個開放原始碼的單晶片控制器,它使用了Atmel AVR單晶片 ([url=file:///D:/%E6%B0%B8%E5%BF%A0%E7%A0%94%E7%A9%B6/%E9%9B%BB%E5%AD%90%E6%9B%B8/arduino%20%E7%B3%BB%E5%88%97/POV/POVV2.doc#_ENREF_3]Atmel_Corporation, 2013[/url]),採用了基於開放原始碼的軟硬體平台,構建於開放原始碼 Simple I/O 介面版,並且具有使用類似Java,C 語言的Processing[url=file:///D:/%E6%B0%B8%E5%BF%A0%E7%A0%94%E7%A9%B6/%E9%9B%BB%E5%AD%90%E6%9B%B8/arduino%20%E7%B3%BB%E5%88%97/POV/POVV2.doc#_ftn4][4][/url]/Wiring開發環境([url=file:///D:/%E6%B0%B8%E5%BF%A0%E7%A0%94%E7%A9%B6/%E9%9B%BB%E5%AD%90%E6%9B%B8/arduino%20%E7%B3%BB%E5%88%97/POV/POVV2.doc#_ENREF_16]B. F. a. C. Reas, 2013[/url]; [url=file:///D:/%E6%B0%B8%E5%BF%A0%E7%A0%94%E7%A9%B6/%E9%9B%BB%E5%AD%90%E6%9B%B8/arduino%20%E7%B3%BB%E5%88%97/POV/POVV2.doc#_ENREF_17]C. Reas & Fry, 2007[/url], [url=file:///D:/%E6%B0%B8%E5%BF%A0%E7%A0%94%E7%A9%B6/%E9%9B%BB%E5%AD%90%E6%9B%B8/arduino%20%E7%B3%BB%E5%88%97/POV/POVV2.doc#_ENREF_18]2010[/url])。Processing由MIT媒體實驗室美學與計算小組(Aesthetics & Computation Group)的Ben Fry(http://benfry.com/)和Casey Reas發明,Processing已經有許多的Open Source的社群所提倡,對資訊科技的發展是一個非常大的貢獻。
讓您可以快速使用 Arduino 語言作出互動作品,Arduino可以使用開發完成的電子元件:例如Switch、感測器、其他控制器件、LED、步進馬達、其他輸出裝置…等。Arduino開發IDE介面基於開放原始碼,可以讓您免費下載使用,開發出更多令人驚豔的互動作品([url=file:///D:/%E6%B0%B8%E5%BF%A0%E7%A0%94%E7%A9%B6/%E9%9B%BB%E5%AD%90%E6%9B%B8/arduino%20%E7%B3%BB%E5%88%97/POV/POVV2.doc#_ENREF_4]Banzi, 2009[/url]) 。
Arduino特色
l 開放原始碼的電路圖設計,程式開發介面
l http://www.arduino.cc/免費下載,也可依需求自己修改!!
l Arduino 可使用ISCP線上燒入器,自我將新的IC晶片燒入「bootloader」 (http://arduino.cc/en/Hacking/Bootloader?from=Main.Bootloader) 。
l 可依據官方電路圖(http://www.arduino.cc/),簡化Arduino模組,完成獨立運作的微處理機控制模組
l 感測器可簡單連接各式各樣的電子元件 (紅外線,超音波,熱敏電阻,光敏電阻,伺服馬達,…等)
l 支援多樣的互動程式程式開發工具
l 使用低價格的微處理控制器(ATMEGA8-16)
l USB介面,不需外接電源。另外有提供9VDC輸入
l 應用方面,利用Arduino,突破以往只能使用滑鼠,鍵盤,CCD等輸入的裝置的互動內容,可以更簡單地達成單人或多人遊戲互動
Arduino硬體-Duemilanove
Arduino Duemilanove 使用AVR Mega168為微處理晶片,是一件功能完備的單晶片開發板,Duemilanove特色為:(a).開放原始碼的電路圖設計,(b).程序開發免費下載,(c).提供原始碼可提供使用者修改,(d).使用低價格的微處理控制器(ATmega168),(e).採用USB供電,不需外接電源,(f).可以使用外部9VDC輸入,(g).支持ISP直接線上燒錄,(h).可使用bootloader燒入ATmega8或ATmega168單晶片。
系統規格
l 主要溝通介面:USB
l 核心: ATMEGA328
l 自動判斷並選擇供電方式(USB/外部供電)
l 控制器核心:ATmega328
l 控制電壓:5V
l 建議輸入電(recommended):7-12 V
l 最大輸入電壓 (limits):6-20 V
l 數位 I/O Pins:14 (of which 6 provide PWM output)
l 類比輸入Pins:6組
l DC Current per I/O Pin:40 mA
l DC Current for 3.3V Pin:50 mA
l Flash Memory:32 KB (of which 2 KB used by bootloader)
l SRAM:2 KB
l EEPROM:1 KB
l Clock Speed:16 MHz
具有bootloader[url=file:///D:/%E6%B0%B8%E5%BF%A0%E7%A0%94%E7%A9%B6/%E9%9B%BB%E5%AD%90%E6%9B%B8/arduino%20%E7%B3%BB%E5%88%97/POV/POVV2.doc#_ftn5][5][/url]能夠燒入程式而不需經過其他外部電路。此版本設計了『自動回復保險絲[url=file:///D:/%E6%B0%B8%E5%BF%A0%E7%A0%94%E7%A9%B6/%E9%9B%BB%E5%AD%90%E6%9B%B8/arduino%20%E7%B3%BB%E5%88%97/POV/POVV2.doc#_ftn6][6][/url]』,在Arduino開發板搭載太多的設備或電路短路時能有效保護Arduino開發板的USB通訊埠,同時也保護了您的電腦,並且故障排除後能自動恢復正常。
圖 1 Arduino Duemilanove 開發板外觀圖
Arduino硬體-UNO
UNO的處理器核心是ATmega328,使用 ATMega 8U2 來當作USB-對序列通訊,並多了一組ICSP給MEGA8U2使用:未來使用者可以自行撰寫內部的程式~ 也因為捨棄FTDI USB晶片~ Arduino開發板需要多一顆穩壓IC來提供3.3V的電源。
Arduino UNO是Arduino USB介面系列的最新版本,作為Arduino平臺的參考標準範本: 同時具有14路數位輸入/輸出口(其中6路可作為PWM輸出),6路模擬輸入, 一個16MHz晶體振盪器,一個USB口,一個電源插座,一個ICSP header和一個重定按鈕。
UNO目前已經發佈到第三版,與前兩版相比有以下新的特點: (a).在AREF處增加了兩個管腳SDA和SCL,(b).支援I2C介面,(c).增加IOREF和一個預留管腳,將來擴展板將能相容5V和3.3V核心板,(d).改進了Reset重置的電路設計,(e).USB介面晶片由ATmega16U2替代了ATmega8U2。
系統規格
l 控制器核心:ATmega328
l 控制電壓:5V
l 建議輸入電(recommended):7-12 V
l 最大輸入電壓 (limits):6-20 V
l 數位 I/O Pins:14 (of which 6 provide PWM output)
l 類比輸入Pins:6組
l DC Current per I/O Pin:40 mA
l DC Current for 3.3V Pin:50 mA
l Flash Memory:32 KB (of which 0.5 KB used by bootloader)
l SRAM:2 KB
l EEPROM:1 KB
l Clock Speed:16 MHz
圖 2 Arduino UNO開發板外觀圖
Arduino硬體-Mega 2560
可以說是Arduino巨大版: Arduino Mega2560 REV3是Arduino官方最新推出的MEGA版本。功能與MEGA1280幾乎是一模一樣,主要的不同在於Flash容量從128KB提升到256KB,比原來的Atmega1280大。
Arduino Mega2560是一塊以ATmega2560為核心的微控制器開發板,本身具有54組數位I/O input/output端(其中14組可做PWM輸出),16組模擬比輸入端,4組UART(hardware serial ports),使用 16 MHz crystal oscillator。由於具有bootloader,因此能夠通過USB直接下載程式而不需經過其他外部燒入器。供電部份可選擇由USB直接提供電源,或者使用AC-to-DC adapter及電池作為外部供電。
由於開放原代碼,以及使用Java概念(跨平臺)的C語言開發環境,讓Arduino的周邊模組以及應用迅速的成長。而吸引Artist使用Arduino的主要原因是可以快速使用Arduino語言與Flash或Processing…等軟體通訊,作出多媒體互動作品。Arduino開發IDE介面基於開放原代碼原則,可以讓您免費下載使用於專題製作、學校教學、電機控制、互動作品等等。
電源設計
Arduino Mega2560的供電系統有兩種選擇,USB直接供電或外部供電。電源供應的選擇將會自動切換。外部供電可選擇AC-to-DC adapter 或者電池,此控制板的極限電壓範圍為6V~12V,但倘若提供的電壓小於6V,I/O口有可能無法提供到5V的電壓,因此會出現不穩定;倘若提供的電壓大於12V,穩壓裝置則會有可能發生過熱保護,更有可能損壞 Arduino MEGA2560。因此建議的操作供電為6.5~12V,推薦電源為7.5V或9V。
系統規格
l 控制器核心:ATmega2560
l 控制電壓:5V
l 建議輸入電(recommended):7-12 V
l 最大輸入電壓 (limits):6-20 V
l 數位 I/O Pins:54 (of which 14 provide PWM output)
l UART:4組
l 類比輸入Pins:16組
l DC Current per I/O Pin:40 mA
l DC Current for 3.3V Pin:50 mA
l Flash Memory:256 KB of which 8 KB used by bootloader
l SRAM:8 KB
l EEPROM:4 KB
l Clock Speed:16 MHz
圖 3 Arduino Mega2560開發板外觀圖
[url=file:///D:/%E6%B0%B8%E5%BF%A0%E7%A0%94%E7%A9%B6/%E9%9B%BB%E5%AD%90%E6%9B%B8/arduino%20%E7%B3%BB%E5%88%97/POV/POVV2.doc#_ftnref1][1] GNU 通用公眾授權條款(英語:GNU General Public License,簡稱GNU GPL或GPL),是一個廣泛被使用的自由軟體授權條款,最初由理察·斯托曼為GNU計劃而撰寫。
[url=file:///D:/%E6%B0%B8%E5%BF%A0%E7%A0%94%E7%A9%B6/%E9%9B%BB%E5%AD%90%E6%9B%B8/arduino%20%E7%B3%BB%E5%88%97/POV/POVV2.doc#_ftnref2][2][/url] 「自由軟體」指尊重使用者及社群自由的軟體。簡單來說使用者可以自由運行、複製、發佈、學習、修改及改良軟體。他們有操控軟體用途的權利。
[url=file:///D:/%E6%B0%B8%E5%BF%A0%E7%A0%94%E7%A9%B6/%E9%9B%BB%E5%AD%90%E6%9B%B8/arduino%20%E7%B3%BB%E5%88%97/POV/POVV2.doc#_ftnref3][3][/url] 商標註冊人享有商標的專用權,也有權許可他人使用商標以獲取報酬。各國對商標權的保護期限長短不一,但期滿之後,只要另外繳付費用,即可對商標予以續展,次數不限。
[url=file:///D:/%E6%B0%B8%E5%BF%A0%E7%A0%94%E7%A9%B6/%E9%9B%BB%E5%AD%90%E6%9B%B8/arduino%20%E7%B3%BB%E5%88%97/POV/POVV2.doc#_ftnref4][4][/url] Processing 是一個Open Source的程式語言及開發環境,提供給那些想要對影像、動畫、聲音進行程式處理的工作者。此外,學生、藝術家、設計師、建築師、研究員以及有興趣的人,也可以用來學習,開發原型及製作
[url=file:///D:/%E6%B0%B8%E5%BF%A0%E7%A0%94%E7%A9%B6/%E9%9B%BB%E5%AD%90%E6%9B%B8/arduino%20%E7%B3%BB%E5%88%97/POV/POVV2.doc#_ftnref5][5][/url] 啟動程式(boot loader)位於電腦或其他計算機應用上,是指引導操作系統啟動的程式。
[url=file:///D:/%E6%B0%B8%E5%BF%A0%E7%A0%94%E7%A9%B6/%E9%9B%BB%E5%AD%90%E6%9B%B8/arduino%20%E7%B3%BB%E5%88%97/POV/POVV2.doc#_ftnref6][6][/url]自恢復保險絲是一種過流電子保護元件,採用高分子有機聚合物在高壓、高溫,硫化反應的條件下,攙加導電粒子材料後,經過特殊的生產方法製造而成。Ps. PPTC(PolyerPositiveTemperature Coefficent)也叫自恢復保險絲。嚴格意義講:PPTC不是自恢復保險絲,ResettableFuse才是自恢復保險絲。
歡迎光臨 終身學習:智慧電子(物聯網)含金融證卷 (http://finance.freebbs.tw/) | Powered by Discuz! 5.0.0 |