-
Arduino
編輯
Arduino是一款便捷靈活、方便上手的開源電子原型平臺。包含硬件(各類型號的Arduino板)和軟件(Arduino IDE)。由一個歐洲開發團隊於2005年冬季開發。其成員包括Massimo Banzi、David Cuartielles、Tom Igoe、Gianluca Martino、David Mellis和Nicholas Zambetti等。
它構建於開放原始碼simple I/O介面版,而且具備使用相似Java、C語言的Processing/Wiring開發環境。主要包含兩個主要的部分:硬件部分是能夠用來作電路鏈接的Arduino電路板;另一個則是Arduino IDE,你的計算機中的程序開發環境。你只要在IDE中編寫程序代碼,將程序上傳到Arduino電路板後,程序便會告訴Arduino電路板要作些什麼了。
Arduino能經過各類各樣的傳感器來感知環境,經過控制燈光、馬達和其餘的裝置來反饋、影響環境。板子上的微控制器能夠經過Arduino的編程語言來編寫程序,編譯成二進制文件,燒錄進微控制器。對Arduino的編程是經過 Arduino編程語言 (基於 Wiring)和Arduino開發環境(基於 Processing)來實現的。基於Arduino的項目,能夠只包含Arduino,也能夠包含Arduino和其餘一些在PC上運行的軟件,他們之間進行通訊 (好比 Flash,
Processing, MaxMSP)來實現。[1]
發展歷程
編輯
Massimo Banzi以前是
意大利Ivrea一家高科技設計學校的老師。他的學生們常常抱怨找不到便宜好用的微控制器。 2005年冬天, Massimo Banzi跟David Cuartielles討論了這個問題。 David Cuartielles是一個西班牙籍晶片工程師,當時在這所學校作訪問學者。兩人決定設計本身的電路板,並引入了Banzi的學生David Mellis爲電路板設計編程語言。兩天之後,David Mellis就寫出了程式碼。又過了三天,電路板就完工了。Massimo Banzi喜歡去一家名叫di Re Arduino的酒吧,該酒吧是以1000年前意大利國王Arduin的名字命名的。爲了記念這個地方,他將這塊電路板命名爲Arduino。
隨後Banzi、Cuartielles和Mellis把設計圖放到了網上。版權法能夠監管開源軟件,卻很難用在硬件上,爲了保持設計的開放源碼理念,他們決定採用Creative Commons(CC)的受權方式公開硬件設計圖。在這樣的受權下.任何人均可以生產電路板的複製品,甚至還能從新設計和銷售原設計的複製品。人們不須要支付任何費用,甚至不用取得Arduino團隊的許可。然而,若是從新發布了引用設計,就必須聲明原始Arduino團隊的貢獻。若是修改了電路板,則最新設計必須使用相同或相似的Creative Commons(CC)的受權方式,以保證新版本的Arduino電路板也會同樣是自由和開放的。惟一被保留的只有Arduino這個名字,它被註冊成了商標,在沒有官方受權的狀況下不能使用它。
平臺特色
編輯-
跨平臺
Arduino IDE能夠在Windows、Macintosh OS X、Linux三大主流操做系統上運行,而其餘的大多數控制器只能在Windows上開發。
-
簡單清晰
Arduino IDE基於processing IDE開發。對於初學者來講,極易掌握,同時有着足夠的靈活性。Arduino語言基於wiring語言開發,是對 avr-gcc庫的二次封裝,不須要太多的單片機基礎、編程基礎,簡單學習後,你也能夠快速的進行開發。
-
開放性
Arduino的硬件原理圖、電路圖、IDE軟件及核心庫文件都是開源的,在開源協議範圍內裏能夠任意修改原始設計及相應代碼。
-
發展迅速
Arduino不只僅是全球最流行的開源硬件,也是一個優秀的硬件開發平臺,更是硬件開發的趨勢。Arduino簡單的開發方式使得開發者更關注創意與實現,更快的完成本身的項目開發,大大節約了學習的成本,縮短了開發的週期。
由於Arduino的種種優點,愈來愈多的專業硬件開發者已經或開始使用Arduino來開發他們的項目、產品;愈來愈多的軟件開發者使用Arduino進入硬件、物聯網等開發領域;大學裏,自動化、軟件,甚至藝術專業,也紛紛開展了Arduino相關課程。[3]
功能
編輯
能夠快速使用Arduino與Adobe Flash, Processing, Max/MSP, Pure Data, SuperCollider等軟件結合,做出互動做品。 Arduino可使用現有的
電子元件例如開關或者傳感器或者其餘控制器件、
LED、步進馬達或其餘輸出裝置。 Arduino也能夠獨立運行,並與軟件進行交互,例如: Macromedia Flash, Processing, Max/MSP, Pure Data, VVVV或其餘互動軟件。 Arduino的IDE界面基於開放源代碼,能夠免費下載使用,開發出更多使人驚豔的互動做品。[4-5]
硬件組成
編輯主板
Arduino Uno
Arduino Nano
Arduino LilyPad
Arduino Mega 2560
Arduino Ethernet
Arduino Due
Arduino Leonardo
擴展板
Arduino的擴展板不少,如
Arduino Ethernet Shield
Arduino WiFi Shield
Arduino Wireless SD Shield
Arduino USB Host Shield
Arduino Motor Shield
Arduino Wireless Proto Shield
Arduino Proto Shield
版權與付費
編輯
爲了保持設計的開放源碼理念,由於版權法能夠監管開源軟件,卻很難用在硬件上,Arduino決定採用Creative Commons許可。 Creative Commons(CC)是爲保護開放版權行爲而出現的相似GPL的一種許可(license)。在Creative Commons許可下,任何人都被容許生產電路板的複製品,還能從新設計,甚至銷售原設計的複製品。你不須要付版稅,甚至不用取得Arduino團隊的許可。然而,若是你從新發布了引用設計,你必須說明原始Arduino團隊的貢獻。若是你調整或改動了電路板,你的最新設計必須使用相同或相似的 Creative Commons許可,以保證新版本的Arduino電路板也會同樣的自由和開放。惟一被保留的只有Arduino這個名字。它被註冊成了商標。若是有人想用這個名字賣電路板,那他們必須付一點商標費用給Arduino的核心開發團隊成員。[8-11]