月度归档:2015年05月

三大主流开源硬件对比:如何选择平台

对于初学者来说,我们推荐Arduino。它拥有庞大的社区用户、大量的示例项目和教程,并且可以轻松地与其他外部设备连接。对于初学者来说,学习使用Arduino的方法有许多。

这块板的设计初衷,就是方便与不同的传感器进行交互,而且不需要设计其他电路,所以你不需要太多电路相关的支持,就能轻松上手。如果还没有尝试过这玩意,不妨试一试(价格并不贵),相信可以得到有趣的经验。

Arduino Uno是一款令人赞赏的工具,除了拥有开源的微控制器,软件开发环境也是免费的。

Raspberry Pi只有信用卡大小,可以直接插入到电视中。许多传统电脑上的功能,例如文字处理、电子表格和游戏,都可以在Raspberry Pi中运行。

价格低廉,硬件扩展性强,BeagleBone是为喜爱嵌入式Linux系统的玩家量身打造的产品。BeagleBone还可以当做BeagleBoard或Beagleboard-xM的外接USB或网络扩展模块。

如果开发的产品需要保证尺寸较小,我们推荐Arduino。这三款平台的尺寸相似,不过Raspberry Pi的SD储存卡会让它看起来更大。Arduino的款式躲让,但让Arduino区别于其他平台的特性在于,它拥有特别的微处理器,以及一些软件。它使用Atmel公司的一款微处理器嵌入式系统,体积小,价格实惠。对于那些需要尺寸非常小巧的项目来说,你可以花费1到2美元购买Atmel的这些芯片,并使用Arduino Bootloader(一个赋予Arduino基本功能的程序),安装后,你就又拥有了一个Arduino。

各种尺寸的Arduino

BeagleBone旁边是它的大哥BeagleBoard

BeagleBoard有一个更大,性能更强的版本——BeagleBoard。如果你需要更强的扩展性,那么BeagleBoard是一个不错的选择。

Arduino Uno、BeagleBone 和 Raspberry Pi,后两者都有网络接口

如果你的项目需要连接网络,我们比较推荐BeagleBone或Raspberry Pi。这两款都是真正的Linux电脑。他们都内建以太网接口和USB,便于用来连接网络。通过USB接口,你可以连接一个无线模块,那样就可以无需网线就能接入网络。另外,Linux系统拥有很多内置组件,提供高级的网络特性。

只需将USB WiFi设备连接到BeagleBone或Raspberry Pi上,Linux系统即可支持这些外接设备

Arduino支持外设,叫做“shields”,它虽然拥有连接网络的能力,但其网络功能十分有限。如果花时间去购买扩展,其实与直接购买功能比较完善的高阶电路板一样。

如果你的项目需要接入外部感应设备,我们推荐Arduino和BeagleBone。Arduino相对于其他设备,更容易连接外部感应器。不同版本的Arduino使用的电压不同(3.3V 或者 5V),这样就可以轻易的连接到不同的外部设备。而BeagleBone只能连接3.3V的外部设备,并在某些情况下,还需要加入电阻或者其他外部电路才能连接外部设备。Arduino和BeagleBone都有模拟数字信号接口,这让你轻松的连接输出不同电压的设备。BeagleBone拥有更高的模拟数字信号的分辨率,这对于某些项目来说是最好的选择。

就如上面所说的,你必须注意你将要连接的设备,包括小型的感应器,是否拥有叫做I2C或者SPI的数字接口。这三款平台都支持这些外接设备,所以通信方面不成问题。

对于需要电池供电的项目,我们推荐Arduino。Arduino功耗是最低地。如果按照每瓦的性能来比较,BeagleBone的能耗是最高的。但是Arduino拥有更广泛的空间,因为他可以和很多不同的输入电压的设备一起工作。这样就要求Arduino需要使用不同型号的电池,并且就算电池没电也能继续运转。

如果需要支持用户界面,我推荐使用Raspberry Pi。Raspberry Pi独树一帜,因为它拥有一个HDMI输出。这意味着,你可以接入键鼠和直接接入到你的电视。在这点看来,你拥有了一台功能全备的电脑,并且拥有用户操作界面。这样使得Raspberry Pi可以用于在需要与用户交互的项目中,以低成本构建web浏览设备。事实上,只是出于娱乐性质,我们把Arduino开发工具安装在Raspberry Pi上,并在Raspberry Pi写以一个简单程序并下载到Aruduino上。它并非是一台高性能的电脑,但是它确实是一台电脑。

总结

Arduino是一个扩展性很好的平台,便于与各种设备交互。对于初学者来说,在进行一些小型项目时,它是绝佳的选择。Raspberry Pi适合用于需要用户界面和需要网络支持的项目,其性价比较高。

BeagleBone拥有Arduino良好的可扩展性,兼具Raspberry Pi快速处理器和Linux灵活的开发环境。所以,如果你想做与水培花园类似的项目,我们推荐BeagleBone。因为它的输入输功能完善,并便于接入网络,所以我们可以通过Web端监测它回传的数据。

所有这3种设备是我们数字化项目的基石。当然,还有其他平台可用,例如,我们使用Sun SPOTs监测我们的番茄花园,这三种设备已基本能满足我们所需,除非你需要更高级的功能。