嵌入式平台选择:树莓派 or BeagleBone Black(BBB)

标签: 树莓派 硬件 BBB BeagleBone Black 嵌入式 | 发表时间:2014-01-24 08:27 | 作者:小道空空
出处:http://www.geekfan.net

bbb_vs_pi_1

已经有很多文章比较过 Arduino、树莓派和BeagleBone Black(BBB),但本文的侧重点不同。我相信大家都会认为Arduino和另外两者明显属于不同的阵营,因为Arduino的用途完全不一样。我曾试图去寻找这样一篇文章但最终没有找到:它全面的比较树莓派和BBB的优缺点并分析各自的最佳适用领域。因此,我决定自己写一篇。
本文首先简要的介绍每个平台,然后从以下几方面深入的比较它们:

  • 概况
  • 拆箱
  • 初次使用
  • 接口
  • 处理器
  • 图形处理
  • 音频
  • 能耗
  • 可扩展性
  • 硬件易复制性
  • 社区

让我们开始吧!

树莓派简介

bbb_vs_pi_topofrpi 树莓派的正面

Arduino微控制器领域的开拓者,它开启了“制造者”革命;而了不起的 树莓派则真正开始了 微控制器革命。
对于公众来说,树莓派是第一个便宜(35美金)、易用的单片计算机。树莓派的创造者发现年长一代的学生出于需要对计算机技术都比较精通。但年轻一代的学生在这方面则逊色很多,他们对计算机技术的了解离他们所需要掌握的差很远。于是树莓派这个既便宜但性能又比较强大的微型计算机诞生了。它使得年轻一代的学生可以很方便的接触和深入学习计算机技术。
如果你想更多的了解树莓派,那么我推荐你去阅读官方的“ 关于”和“ 常见问题”网页。树莓派诞生的背后故事还是很鼓励人心和值得一读的。

BBB简介

BBB是易用微处理器领域的后来者。虽然它错过了推向市场的最佳时间,但它在产品的性能上得到了弥补。BBB继承了 BeagleBoard产品家族的血统:体积小、性能强大、可扩展性强(便于工程师和艺术家等开发自己的创新项目)。
BeagleBoard家族最初是为了给业余爱好者提供一个相对低价的开发平台而设计的。这个平台包含了一个强大的新的片上系统(System on Chip, SoC)设备。最初的BeagleBoard目前售价125美元;它的继任者BeagleBoard-xM售价145美元。虽然它们功能强大,但是其相对“昂贵”的价格却无法吸引人去大量的购买。BeagleBoard小组在BeagleBoard-xM之后开发了BeagleBone,后者本质上是前者的精简版。虽然BeagleBone起点不错,但是其89美金的售价还是无法吸引众多业余爱好者们。BeagleBoard小组最终在2012年下半年发布了BeagleBone的升级版——BeagleBone Black(BBB)。从下面这幅图中你会看出为什么BeagleBoard小组给它起了这个名字。
bbb_vs_pi_beaglebone-black-front

BBB的正面

BBB继承了BeagleBone的体积并增加了相当多的有用功能,因此它也变成一个各方面都更加优秀的产品。最不可思议的是它的售价——仅45美金!
如果你想更多的了解BeagleBone和BBB,你可以访问其 官方社区制造商的社区主页。这是深入了解这些平台复杂细节的最佳方式。这也使得你更好的评估究竟BBB适不适合你的项目。

那么究竟是选择树莓派还是BBB?

到现在为止,我们对这两个平台都有了初步的了解。接下来我将客观的从各个方面去比较这它们,你可以从这些比较中去选择适合自己开发需求的平台。如果你发现问题或者觉得我漏掉了某些方面,你可以在本文后面留言。记得文明留言就行。

概况
下面的表格总结了树莓派(Rev.B)和BBB(Rev.A5B)的各项规格参数。从这里我们可以快速了解各个平台的性能。这个表格只比较了两者发货时的版本。后续文章将深入比较其本身及支撑其发展的生态系统。
bbb_vs_pi_table

开箱
我当时购买的树莓派被包装在一个普通的白色纸箱中,没有任何标记和配件。现在的树莓派则被包装在一个相对漂亮的盒子中。
我的BBB则是 2013年参加TI实习生设计大赛时免费拿到的。它也被包装在一个专业的盒子中,并包含了一个mini-USB线和一张小的介绍卡。
获胜者:平手
bbb_vs_pi_unboxing

初次使用
初次使用树莓派是比较费力的。它没有提供USB线,所以你必须自己买一个。此外,树莓派没有预装操作系统。你必须自己下载操作系统、烧录到SD卡中、然后用SD卡来启动它。
初次使用BBB则容易的多。你通过自带的USB线将它连接到电脑上之后它就自动启动起来了。虽然你可能需要安装驱动程序,但与树莓派相比,这要容易的多。
获胜者:BBB

总花费
这项比较会有点主观,因为每个人的实际情况不一样。如果你已经有了SD卡、USB线、HDMI线和键盘,那么树莓派不会给你带来额外的花费。
对于BBB来说,你不需要去购买额外的配件。但如果你想扩展它的功能,那你也许需要去购买MicroSD卡和micro-HDMI线。
此外,因为树莓派有两个USB口,你可能不需要一个USB HUB就可以顺利工作。但对于BBB,你可能需要购买一个USB HUB来同时使用键盘和鼠标(如果你用的不是无线键盘和鼠标的话)。
对我来说,BBB要比树莓派便宜些。但这部分需要考虑的因素很多,所有这里由你自己来决定哪个平台的总花费更低些。
获胜者:平手

接口
BBB总计有92个不同的接口(46个引脚)。虽然某些接口被预留了,但是大部分的接口可以通过重新配置来使用。下面是手册中列出的一些可能的接口:

  • 3 I2C buses
  • CAN bus
  • SPI bus
  • 4 timers
  • 5 serial ports
  • 65 GPIO pins
  • 8 PWM outputs
  • 7 analog inputs (1.8V max 12 bit A/D converters)

这些接口的存在使得BBB变得非常强大。我不知道还有哪个如此便宜的平台在这样的体积下还能提供如此丰富的接口。这些接口使得开发众多的BBB应用变得非常现实。
树莓派则只有26个引脚。这些引脚可以提供如下所示的接口:

  • 8 GPIO pins
  • 1 UART interface
  • 1 SPI bus
  • 1 I2C bus

这些不多的接口对于基于I2C、SPI或者UART的项目来说足够用了。树莓派的真正魅力在另一方面,我们稍后讨论它。
获胜者:BBB(毫无疑问)

处理器
处理器也许是决定平台运行速度的唯一重要因素。BBB的处理器运行速度为1GHz;树莓派则为700MHz。
为了方便进一步比较两者的性能,我们假设 树莓派的处理器被超频到和AM3359一样的频率。
接着比较处理器的架构。树莓派的处理器采用的是老的ARMv6指令集,而BBB的处理器采用的是当前嵌入式系统中最流行的ARMv7指令集。
采用当今广泛使用的指令集的处理器可以被更多的软件支持。例如,一些操作系统已经不支持在ARMv6指令集上运行,例如, Ubuntu在2012年4月放弃了对ARMv6指令集的支持
ARMv7相对与ARMv6指令集的另一个优势在于,使用ARMv7的处理器的实际性能更加强劲。ARMv7相对与ARMv6的优势还有很多,比如一些显著的改进:实现了超标量架构、包含了SIMD操作指令、改进了分支预测算法从而极大的提高了某些性能。
具体的讲,即使BBB和树莓派的处理器工作在同一频率,前者的运行速度也几乎是后者的两倍。( 数据来源1:ARM A8运行速度为2000MIPS/MHz; 数据来源2:ARM 11运行速度为1250MIPS/MHz)
获胜者:BBB

图形处理
树莓派在图形处理方面表现非常突出。由于集成了Videocore视频处理器,树莓派可以解码1080P的视频流、渲染OpenGL和甚至于运行Minecraft。除了令人印象深刻的图形处理,树莓派还提供了全尺寸的HDMI接口和用于低质量的混合视频输出接口。
上述这些都是BBB无法与之媲美的。BBB虽然有内嵌的图形处理能力,但是其性能有限,从而不支持1080P。它也提供了一个micro-HDMI视频接口用于连接显示器或电视。虽然通过一些插件板可以扩展其性能,但还是无法和树莓派的Videocore系统相提并论。
获胜者:树莓派

音频
在音频方面其实没有太多要比较的。BBB提供了可以用作音频输出的micro-HDMI接口;树莓派则提供了micro-HDMI和3.5mm的音频插口。所以树莓派要略胜一筹。
需要指出的是,现在市场上已经可以买到支持3.5mm音频输入和输出的BBB插件板。但因为它不是BBB的默认配置,所以我认为在这个类别中树莓派获胜。
获胜者:树莓派

功耗
说实话,这方面能找到的可靠数据少之又少。 BBB的参考手册提供了一些数据;但是对于树莓派来说,很多人给出的数据差别很大,所以我也不确定哪些较为真实。其中显得最为可靠的数据表明树莓派的功耗比BBB要低一些。
如果你有关于树莓派或BBB更为可靠的功耗数据,请在后面的评论中留言。
获胜者:树莓派(基于不是很可靠的数据得出的结论)

可扩展性
我必须承认,当我一开始写这篇文章的时候,我认为BBB在可扩展性方面必胜无疑。这时因为当时我在设计自己的BBB插件板,而我已经知道有大量的BBB插件板存在。但当时我对树莓派的插件板数量并没有概念。需要指出的是,这里的插件板指的是可以增加BBB或树莓派功能的板子,而不是指数据线等各种附件。
首先我们看看BBB的插件板情况。在 CircuitCo的官方网站上,我看到如下比较吸引我的插件板:

  • Breadboard、prototype和breakout插件板——这三种可以使得你很容易测试新加入BeagleBone的部件;
  • DVI插件板——允许你把BBB连接到具有DVI接口的显示器;
  • VGA插件板——允许你把BBB连接到具有VGA接口的显示器;
  • HDMI插件板——允许你把BBB连接到具有HDMI接口的设备。这个插件板最初是为BeagleBone设计的;但如果你不喜欢BBB提供的Micro-HDMI接口,你也可以把HDMI插件板用到BBB上;
  • LCD插件板——有几个不同的LCD插件板可选。通过它们你可以很容易的在BeagleBone上增加LCD显示屏;
  • 照相机插件板——为BBB增加一个3.1MP像素的照相机。配合LCD插件板,你可以拥有自己的手持照相机;
  • 音频插件板——包含了3.5mm的音频输出和输入接口;
  • 电机插件板——包含的TI电机驱动可以驱动8个直流电机;
  • 电源插件板——如果你需要经常移动你的开发板,那么你可能会用到它;

上述的列表并没有包含所有的插件板。列出的这些只是我认为会被广泛用到的。此外,还有其它一些更为专业的插件板,如 ROV(在 OpenROV项目中用于控制水下机器人传输实时流媒体)和 Ninja(用于几乎使得一切变得自动化的 Ninja平台中)。
看完上述的BBB插件板列表,你可以会问树莓派在这方面怎么和BBB竞争。我当时也这样问自己。事实上,树莓派的插件板特别稀少,而且没有一个好的“官方”列表来总结目前已知的树莓派插件板。
我找到的大多数树莓派插件板不是“breakout”板就是原型板。这些板子虽然有一定的用途,但并不具备一些杀手级的特点,而且也不专属于树莓派。
Cooking Hacks设计了一款“专属于”树莓派的插件板,如下图所示。通过这个插件,很多Arduino的扩展部件可以直接用于树莓派。
bbb_vs_pi_lrg

获胜者:BBB(PS:如果你计划购买树莓派但又打算使用Arduino的插件板,那么你或许应该直接购买Arduino)

硬件易复制性
这个类别对于本文的大多数读者来说可能并不重要。但对于技术用户或那些想最大化精简项目设计中用到的硬件的人来说却至关重要。树莓派和BBB都严重依赖于开源社区,让我们看看究竟哪一个平台更加开放些。
树莓派很不幸是基于私有的处理器平台。这意味着你无法获得其详细的数据,除非通过以下方法:

  • 与Broadcom签订一个非公开的协议
  • 向Broadcom提供一份商业计划
  • 承诺批量购买这些处理器

虽然从网络可以搜到一些关于 如何访问BCM2835寄存器的资料,但据我所知,关于处理器引脚的详细资料却无法搜到。作为对比,BBB使用的处理器的详细介绍和用户手册均可以从 TI的相应产品页面上找到,而且处理器的最低购买数量也没有任何限制。
除了处理器,树莓派基金会还和 RSFarnell集团签订了独家生产协议,这意味着其电路原理图是严格保密的。
如果你想设计自己的树莓派衍生品或者想知道树莓派的各个部件是如何连接在一起的,那么Eben提供了 树莓派Rev.B版本的电路图。但你还是需要向Broadcom承诺批量购买处理器。
相比较而言,BBB的所有资料,包括布局、电路图和参考文档都可以从 BBB的wiki页面找到——那里包含了制造BBB所需的一切资料。
获胜者:BBB

社区
尽管我尽了最大努力,我还是无法找到每个平台社区大小的可靠数据。但因为树莓派截止2013年4月已售出一百万套,所以我认为树莓派要更加流行。媒体关于树莓派的报道也更多些。
这些考虑对于不熟悉Linux系统或者电子设计的人来说是非常有意义的。平台使用的人越多,意味着你可以搜的相关帮助和信息就越多。
Google深度搜索显示虽然BBB的变得越来越流行,但与树莓派相关的网页流量仍然是BBB的13倍之多。
获胜者:树莓派

总结

我们已经详细的比较了树莓派和BBB的各方面特性,下面将总结每个平台的适用领域。

BBB更加适用的领域
连接大量传感器的项目——BBB提供的众多接口可以很好的满足这方面的需求;
需要高速处理能力但对体积也严格要求的项目——例如,那个包含了 33个树莓派节点的集群项目如果使用BBB,那么花费会更低、而且性能会更强;
打算商用的项目——树莓派的封闭性使得你构建自己需要的最小系统变得很难;而基于开源的BBB,你可以很容易构建自己的最小系统;
嵌入式系统学习平台——虽然树莓派在嵌入式学习领域已经根深蒂固,但我认为BBB更适合用于嵌入式系统学习;
仅仅需要其“运行”的项目——BBB“即买即用”的特性(不需要自己去安装系统)可以为你节省很多时间。

树莓派更加适用的领域
多媒体项目——树莓派具有强大的图形处理能力并提供了丰富的多媒体接口;
社区驱动的项目——如果你的项目比较依赖社区的帮助,那么你应该选择具有活跃社区的树莓派;如果你不需要太多的社区帮助,那么你应该选择BBB,因为很多基于树莓派的项目可以很容易的移植到BBB上;
具备图形界面的学习平台——因为BBB在视频方面的处理能力不及树莓派,所以如果你打算在Linux图形界面下学习嵌入式开发,你可以选择树莓派。

两者均适用的领域
网络连接相关的项目——如果你的项目是向服务器更新数据或将其用作服务器,那么两个平台任选其一即可;
只想玩玩嵌入式系统——两个平台均可。

我希望此文可以对那些在购买树莓派还是BBB之间犹豫的人提供一些帮助。如果你还是无法确定但你又是“土豪”的话,我建议你两者都买。每个平台都用自己的特长,你可以用它们做不同的项目。

嵌入式平台选择:树莓派 or BeagleBone Black(BBB),首发于 极客范 - GeekFan.net

相关 [嵌入式 平台 选择] 推荐:

嵌入式平台选择:树莓派 or BeagleBone Black(BBB)

- - 极客范 - GeekFan.net
已经有很多文章比较过 Arduino、树莓派和BeagleBone Black(BBB),但本文的侧重点不同. 我相信大家都会认为Arduino和另外两者明显属于不同的阵营,因为Arduino的用途完全不一样. 我曾试图去寻找这样一篇文章但最终没有找到:它全面的比较树莓派和BBB的优缺点并分析各自的最佳适用领域.

IoT平台的概念、企业格局及平台选择

- - 雷锋网
据IDC预测,到2025年全球将有416亿部物联网联网设备. 随着物联网技术的发展,行业人士的关注焦点从云端扩展到边缘,同时5G、人工智能和边缘计算成为近两年物联网技术发展中的关键驱动力. IoT平台,作为物联网产业链中承上启下的一环,其具体情况又是怎样的. 我们知道一个完整的IoT系统的组件不仅需要硬件(如传感器或定位设施),也需要软件,此外还要有连接技术和用户界面等,为了使以上这几部分都能很好地发挥作用,需要一种方式让用户与IoT系统进行交互,IoT平台就是连接IoT系统中所有内容的支持软件.

图像识别VPU——易用的嵌入式AI支持深度学习平台介绍-桐烨科技-踏上文明的征程-51CTO博客

- -
公司玩了大半年的嵌入式AI平台,现在产品进入量产模式,也接触了很多嵌入式方案,有了一些心得体会,本人不才,在这里介绍一下一款简单易用的嵌入式AI方案——Movidius Myriad 2 VPU(MA2450) 和 Myriad X VPU(MA2485). 这里本人重点提示:简单易用的嵌入式AI.

如何选择适合的存储平台

- - 操作系统 - ITeye博客
原文: http://10495845.blog.51cto.com/10485845/1721926. 存储世界着实让人目不暇接,选择使用哪个存储平台(更不用说选择哪个厂商)确实是个难题. 先让我们看看几种主要的存储技术. 1.直接连接存储(DAS). 这可以从字面上来理解:直接连接到服务器, 这是最早的磁盘和主机相互连接的方式.

为什么腾讯 QQ 的大数据平台选择了这款数据库?

- - IT瘾-tuicool
来源:大数据DT(ID:hzdashuju). 00 为什么QQ要选择InfluxDB. 从2016年起,笔者在腾讯公司负责QQ后台的海量服务分布式组件的架构设计和研发工作,如微服务开发框架、名字路由、名字服务、配置中心等,做了大量分布式架构、高性能架构、海量服务、过载保护、柔性可用、负载均衡、容灾、水平扩展等方面的工作,以公共组件的形式支撑来自QQ后台和其他BG海量服务的海量流量.

为Phonegap Android平台增加websocket支持,使默认成为socket.io首选通道选择

- - BlogJava-首页技术区
     摘要: 构建一个在市面上常见浏览器上都可以正常运行的聊天应用,保证在IE6+,Firefox,Chrome,Safari,Opear,IOS,Android等可以正常运转,根据具体环境自动选择最佳的通信通道. 嗯,既然是跨浏览器平台,那自然选择socket.io了. 它也是本文的重心,最终目的也是让socket.io 客户端版本在Phonegap包装的Android Apk程序中可以使用Websocket协议.

嵌入式Linux 无限光明的未来

- Shan - LinuxEden开源社区-Linux伊甸园
嵌入式Linux是将Linux操作系统进行裁剪修改,使之能嵌入到计算机系统上运行的一种操作系统. 嵌入式Linux既继承了Internet上无限的开放源代码资源,又具有嵌入式操作系统的特性,被广泛应用在移动电话、个人数字助理. 阅读全文 | 邮件推荐 | 评论回复.

嵌入式Web服务器暴露企业机密

- anamewing 喵呜 - Solidot
联网的扫描仪、打印机、VoIP系统等设备使用的嵌入式服务器都有可能暴露企业机密. 安全公司Zscaler Labs的副总裁Michael Sutton将在下月举行的Black Hat USA 2011会议上演示他的发现. Sutton利用Amazon EC2云计算资源持续扫描大块地址段,探测出任何嵌入式Web服务器.

嵌入式Linux冷启动一秒进入QT

- 王雪松 - Solidot
一位嵌入式系统开发者在博客上演示了在一台嵌入式Linux设备上冷启动载入一个QT应用程序,整个过程仅仅只需一秒钟. 冷启动中用的组件包括了UBoot(2009-01),Linux kernel(2.6.31-rc7)和Qt Embedded Open Source 4.6.2. 他还公开了一份幻灯片文档,介绍了修改方法,如何减少启动时间.

Neo4j 推出基于 Python 的嵌入式图数据存储

- wang - python.cn(jobs, news)
Neo4j很早就在说,会推出一个嵌入在Python中的图数据库模块,让Python可以通过图数据库的API操作本地文件以存储图结构的数据(类似于很多支持SQLite的类库). 而今天Neo4j终于在官方博客上兑现了其承诺,并为自己的多次跳票表示抱歉. 目前最新版本在CPython2.7.2  Windows和Linux下都经过测试,在Python2.6版本下也可以正常工作.