?作者:經(jīng)力
【嵌牛導(dǎo)讀】:本文將介紹三大主流開源硬件Arduino、BeagleBone、Raspberry Pi,并對(duì)它們做簡(jiǎn)單比較分析。
【嵌牛鼻子】:開源硬件;Arduino;BeagleBone;Raspberry Pi
【嵌牛提問】:主流的開源硬件有哪些?
【嵌牛正文】:
? ? ? ? 自總理提出“大眾創(chuàng)業(yè),萬(wàn)眾創(chuàng)新”之后,創(chuàng)客(maker)一詞很快就流行起來(lái)。創(chuàng)客的內(nèi)含很豐富,其中就包括一群熱衷于“硬件再發(fā)明”的科技達(dá)人。開源硬件則是創(chuàng)客們發(fā)揮創(chuàng)造力的利器!
? ? ? ? 開源硬件協(xié)會(huì)(Open Source Hardware Association)這樣定義開源硬件:開源硬件是可以通過公開渠道獲得的硬件設(shè)計(jì),任何人可以對(duì)已有的設(shè)計(jì)進(jìn)行學(xué)習(xí),修改,發(fā)布,制作和銷售。同開源軟件一樣,開源硬件也是開源文化的一部分。目前,主流的開源硬件有Arduino、BeagleBone以及Raspberry?Pi等。
? ? ? ? 下文將分別對(duì)這三大開源硬件做介紹。首先,Arduino是一款便捷靈活、方便上手的開源電子原型臺(tái),包含硬件(各種型號(hào)的Arduino板)和軟件(Arduino IDE)兩部分,由一個(gè)歐洲開發(fā)團(tuán)隊(duì)于2005年冬季開發(fā)。
? ? ? ? Arduino使用Atmel公司的一款微處理器作為主芯片,具有體積小、價(jià)格實(shí)惠等特性。不僅如此,Arduino在設(shè)計(jì)之初就考慮到了與不同的外設(shè)進(jìn)行交互,在與現(xiàn)有的電子元件例如傳感器或者其他控制器件、LED、步進(jìn)馬達(dá)等連接時(shí),幾乎不需要增加支持電路。當(dāng)然,Arduino也可以獨(dú)立運(yùn)行,并與軟件進(jìn)行交互。同時(shí),Arduino IDE基于processing IDE開發(fā),靈活且簡(jiǎn)單。開發(fā)語(yǔ)言“Arduino語(yǔ)言”基于wiring語(yǔ)言開發(fā),是對(duì)avr-gcc庫(kù)的二次封裝,不要求開發(fā)者有太多的編程基礎(chǔ),可以說Arduino對(duì)初學(xué)者非常友好。
? ? ? ? Beagle板實(shí)際是由TI支持的一個(gè)以教育為目的的開源項(xiàng)目。其發(fā)布的四款板子的硬件都是由TI的工程師Gerald Coley一人設(shè)計(jì)。BbeagleBone就是其中一款板子,主芯片采用了TI的基于Cortex-A8的SOC:AM335x。板載DDR內(nèi)存、emmc存儲(chǔ)芯片,還帶有USB以及以太網(wǎng)接口,其性能完全稱得上一個(gè)微型計(jì)算機(jī)。與其他兩款開源硬件相比,BeagleBone的運(yùn)轉(zhuǎn)速度幾乎是Raspberry Pi的兩倍,是Arduino的40倍。當(dāng)然,代價(jià)就是BbeagleBone的價(jià)格是Arduino的十倍還多(具體價(jià)格隨著型號(hào)不同而不同)。
? ? ? ? BeagleBone基于Linux系統(tǒng),可以支持程序并行運(yùn)行,也支持使用多語(yǔ)言編程。BeagleBone有著性能強(qiáng)、價(jià)格相對(duì)較低、硬件擴(kuò)展性強(qiáng)等特點(diǎn),是為喜愛嵌入式Linux的玩家量身打造的產(chǎn)品。開發(fā)難度要比Arduino大一些,不太適合初學(xué)者。
? ? ? ? Raspberry Pi(樹莓派)是一款針對(duì)電腦業(yè)余愛好者、教師、學(xué)生以及小型企業(yè)等用戶的迷你電腦。與BeagleBone類似的是,Raspberry Pi也是基于Linux系統(tǒng),并采用ARM架構(gòu)處理器作為主芯片,也提供了USB與以太網(wǎng)接口。相較而言,再價(jià)格上與性能上,有Arduino < Raspberry?Pi < BeagleBone。Raspberry Pi比較“中庸”,是個(gè)性價(jià)比不錯(cuò)的選擇。不過需要注意的是,Raspberry Pi沒有板載存儲(chǔ)芯片,僅留有SD卡座,因而運(yùn)行Raspberry Pi需要提供SD卡(新版樹莓派僅支持micro SD),這會(huì)額外增加5%到10%的成本。
? ? ? ? Raspberry Pi尤其適合于需要支持用戶界面的場(chǎng)合,因?yàn)樗鼡碛幸粋€(gè)HDMI輸出。HDMI接口意味著我們可以將Raspberry Pi直接接入到電視或其他顯示屏上,從而以低成本構(gòu)建web瀏覽設(shè)備來(lái)支持與用戶的交互。換句話說,Raspberry Pi可以看成一臺(tái)功能相對(duì)完備的電腦,盡管性能不高。
? ? ? ? 最后做個(gè)總結(jié),Arduino是一個(gè)擴(kuò)展性很好的平臺(tái),便于與各種設(shè)備交互。對(duì)于初學(xué)者來(lái)說,在進(jìn)行一些小型項(xiàng)目時(shí),它是絕佳的選擇。Raspberry Pi則適用于需要用戶界面和需要網(wǎng)絡(luò)支持的項(xiàng)目,其性價(jià)比較高。BeagleBone擁有Arduino良好的可擴(kuò)展性,兼具強(qiáng)大的性能和Linux靈活的開發(fā)環(huán)境,因而適用于需要擴(kuò)展外設(shè),且功能較為復(fù)雜的項(xiàng)目。