我应该选择 Arduino 还是 Raspberry Pi?

目前还没有读者喜欢这篇文章。
Raspberry Pi or Arduino?

Opensource.com。已修改。CC BY-SA 4.0。原始图片来自 Adafruit 和 Wikipedia。

我花了很多时间参加会议和 Maker Faire 等活动,并且与人合著了一本关于 Raspberry Pi 的书,我花了很多时间与人们谈论小型电子产品和开源硬件。我听到的最常见的问题可能是:“我应该选择 Raspberry Pi 还是 Arduino?”

根据提问者的不同,我几乎总是建议购买 Raspberry Pi,而不仅仅是为了推销一两本书。通常,提出这个问题的人们甚至没有意识到这两种设备是不同的。这不像“我应该买 Mac 还是 PC?”或者“我应该尝试 Ubuntu 还是 Fedora?”,它们具有相对相同的终点和更精细的区别。Raspberry Pi 是一台计算机。Arduino 是一款微控制器。如果你从零开始,不知道该做什么,你至少可以将 SD 卡和显示器插入 Pi 并拥有一台计算机。你可以使用 Kodi(前身为 XMBC)刷写卡,并在几分钟内拥有一个可用的媒体中心。这是一条快速获得完成项目满足感的途径,并且有很大的成长空间。

提出这个问题的人们通常也不是为自己问,而是问:“我应该为孩子购买这些设备中的哪一个?” 因此,如果你是一个在圣诞节早晨打开盒子的孩子,它并不完全是一套乐高积木,附带一本说明书,只需一两个小时就能完成一件作品。这里有一个学习曲线,再说一次,如果你有一个 Pi,至少你可以相当快地启动并运行一台计算机,玩一会儿,然后从那里弄清楚下一步该做什么。如果你有一个 Arduino,你得到的只是一个漂亮的蓝色板子,却不知道该怎么用。

当然,让一个九岁的孩子来证明我的整个理论是错误的。

Arduino 呢?

你可以想象,在写这本书的过程中,我的房子变成了一个小型无线电小屋。到处都是电线、按钮、LED 和被肢解的 Game Boy。(这种情况已经持续了好几年了。)然而,我的孩子们显然完全没有注意到这一点,并且对这一切几乎不感兴趣,除非我特别要求他们检查某些东西。

但是他们似乎对软件很感兴趣,并且一直在玩一个儿童级别的应用程序创建器,所以我给大一点的孩子买了 SparkFun 发明家套件。墨菲定律就是这样,就在这时,她宣布她不知道长大后要做什么,但她知道不会成为程序员,因为她不擅长编程。

六周后,借助那个基于 Arduino 的发明家套件,她的 STEAM 科技展览项目成为了一个 Arduino 项目。

据我所知,Raspberry Pi 只是家里另一台电脑,而且家里有很多电脑。它碰巧很小,所以这很酷。但它只是一台普通的电脑。而且比所有其他电脑都慢得多。Arduino 却是一个。一个需要解决的难题。需要解锁的秘密。最重要的是,当你意识到你创造了你开始时根本不知道如何制作的东西时,会获得巨大的满足感。

我将她喜欢构建硬件和软件的大部分功劳归功于那个发明家套件。它的手册从我们大多数人开始的地方开始——让 LED 闪烁。然后你学习什么是电位器以及如何使其工作。然后是更多的 LED、传感器、电机等等。她了解到她可以通过借鉴他人的例子来创建代码,这比从头开始容易得多,而从头开始正是让她产生了“我不擅长编程”的印象的原因。这是一次非常有益的经历,让她意识到她可以创造更大的东西。

或者,Raspberry Pi 呢?

那么,是 Arduino 吗?

不,不一定。当然,Raspberry Pi 不仅仅是“只”是一台小型、较慢的计算机。如果真是这样,我们就无法为它写一整本书的项目了!有些项目(和人)更适合其中一种设备。因此,关于“我应该选择哪一个?”的建议更加细致入微。

我认为最好的入门方法是选择一个项目,或者如果你真的不知道从哪里开始,可以选择像我为女儿买的那样的套件。Maker Shed 销售一些 Raspberry Pi 套件。Adafruit 有一个专门为 年轻工程师 准备的套件专区。如果价格是一个因素,而且你是一位精明的购物者,有时你可以以低于套件的价格购买这些套件中的零件。但是那样你就没有套件的指南了。这些网站也都会定期促销,所以请加入他们的邮件列表并留意一下。

你还可以通过找到你想做的项目并获取零件来创建你自己的“套件”。Instructables 是一个寻找项目的好地方,许多其他网站也是如此。但是,当你找到你认为你想构建的东西时,请通读说明。它们看起来完整且易于遵循吗?众包的想法很棒,但并非所有优秀的构建者也都是优秀的撰稿人!你不会想因为说明书缺少有用的细节而最终对一个半成品项目感到沮丧。

构建指南

那么,你可能想转向种类繁多的书籍来寻找你的入门项目。对于 Raspberry Pi,我(当然!)会从我自己的书 Raspberry Pi Hacks 开始。不过,还有很多其他的书,而且专门针对最新版本 Raspberry Pi 2 的书也开始出现。但是,你不应该在新的 Pi 上构建旧书或在线项目时遇到问题。

对于 Arduino,我最喜欢的书之一是 Arduino 和 LEGO 项目,因为你可以将房子里最有趣的两个玩具放在一起!我也喜欢 Simon Monk 写的任何东西,所以对此我可能会推荐 30 个 Arduino 邪恶天才项目

当你在考虑你想构建什么时,也请思考以下几个问题

  • 这是给孩子用的吗?不仅要考虑孩子的年龄、经验和耐心,还要考虑你自己。你愿意花多少时间与孩子一起做项目?
  • 你是否需要某些部件,而这些部件对于其中一个比另一个更容易获得?庞大的 Arduino 社区已经为你能想到的几乎任何东西创建了扩展板(执行特定角色的附加部件)。Raspberry Pi 社区也在不断壮大,但你可能会发现,对于给定的项目,更容易找到特定于其中一个的部件。
  • 你是否需要或想要 Raspberry Pi 的任何/所有内置优点,例如 HDMI 和 USB 端口?
  • 你的最终目标是什么?你希望学习编程吗?你想玩一会儿设备,然后再重新利用它吗?(Arduino 擅长一次做一件事,但如果你决定继续进行更复杂的项目而又不想购买新板,它不太擅长多功能。)

你可能会在选择项目的过程中回答其中一些问题,所以在你进行的过程中请记住最后一个问题。它们都是廉价的板子,但如果你想在将来重复使用它,你需要在你计划时考虑多个项目。最后呢?也许你会觉得你需要它们两个!事实上,通过像 AlaMode 这样的项目,你可以将它们一起使用。

祝你好运,构建愉快!

User profile image.
Ruth Suehle 是 Red Hat 开源和标准团队的社区领导经理。她是《Raspberry Pi Hacks》(O'Reilly,2013 年 12 月)的合著者,也是 GeekMom 的高级编辑,GeekMom 是一个为那些在极客和育儿中找到乐趣的人们提供的网站。

21 条评论

或者 ODroid ...

两者都买 - 这是最好的答案。

回复 作者:Jeff Kabanuk (未验证)

很棒的文章。

我告诉人们,在他们心中有一个项目之前,它们都不会真正对他们有用。

一旦他们对他们想要实现的目标有了一些想法,那么他们可以将 Arduino 视为他们将编写的程序的真实世界表示,而 Pi 则是将运行该程序并完成他们可能想到的其他事情的完整计算机。这取决于他们是否想要处理 Pi 可以做的所有其他事情的能力[或有时是负担],或者他们是否想要 Arduino 的专注和相对简单性。

“... Arduino 的相对简单性。” 也许吧。我们将它们用作基于模糊逻辑的控制器,我们在 Matlab 中开发模糊算法,并将完成的微代码下载到目标 Arduino 板中。我想也可以用 Raspi 来实现,但怀疑板载操作系统(不是实时操作系统)可能会妨碍。当您考虑到 Raspi 解决方案可能根本无法工作时,也许 Arduino 解决方案相对简单。

回复 作者:sethkenlon

我不确定 RasPi 的性能是否足以满足您的应用。话虽如此,Raspberry Pi 中有几种硬实时操作系统的选择,具体取决于您想要 Debian 基础还是 RedHat 基础。

如果您想要比两者都更强大的东西,您可以尝试 Parallella。它比 Pi 贵一点,但如果您可以并行化您的算法,您将在与 Pi 相同的外形尺寸(和功耗因子)中获得 i7 单核的强大功能。

回复 作者:Tom Curl (未验证)

好文章!我喜欢 raspi,因为它将整个编程环境都放在设备上。我个人不那样使用它,但对于人们学习来说,这是一种很好的方式。

这是一篇很棒的文章,因为这两种设备各有优缺点,例如速度、内存或功耗。

将 Raspberry Pi 归类为开源硬件有点误导。硬件本身不是开源的。我无法也可能永远无法获得 Raspberry Pi 2 原理图,据我所知,仍然无法获得 Raspberry Pi B+ 原理图。

它是一台不错的小型计算机。你写了一篇好文章。但对于我们中的一些人来说,这是 Pi 的一个相当大的问题。而且我发现 Pi 基金会对开源的态度令人不安,因为他们懒得开源他们自己的硬件。

看看 CHIP:https://www.kickstarter.com/projects/1598272670/chip-the-worlds-first-9-computer/description

我认为这归结于你想做什么。如果你想控制诸如 LED 和马达之类的负载组件,并从传感器和电位器读取数据,那么 Arduino 绝对是不二之选。如果你想学习软件编程,并且可能控制一些 LED,那么 Raspberry Pi 是理想的选择。<a href="https://codeduino.com/information-and-news/hardware/arduino-vs-raspberry-pi/">此页面</a> 对它们进行了比较,并表明 Raspberry Pi 无法进行模拟输入,因此无法连接传感器或电位器输入。但是,你始终可以将 Raspberry Pi 连接到 Arduino,从而获得两全其美的效果。

曾使用过这两个平台做过工作项目。
Atmel AT 系列具有非常酷的接口,而 GNU g++ ... 工具链为你的硬件导向型工作/娱乐工作提供了稳定的平台。Raspberry Pi 在脚本语言方面简直是小菜一碟......让我深入研究了 Python。
期待通过 I2C 将两者结合起来。

另一个值得关注的出色开发板是 ESP-12,它的售价不到 5 美元,但比 Arduino 功能强大得多,它具有 32 位 80 MHz MC、4MB 闪存、96 KB RAM 和集成的 WiFi。对于开发,你可以在 Arduino IDE、Lua 和 NodeMCU 以及 MicroPython 之间进行选择。唯一的缺点是 ESP8266 是 3.3v 而不是 5v,因此你需要小心连接到它的设备。

我拥有各种各样的 Arduino 和 Raspberry Pi,但我最新的最爱是 Sparkfun 的 freeSoc2。它是一个微控制器,具有 32 位处理器、硬件浮点,最重要的是,它具有大量的软件可配置模拟和数字硬件,这是任何项目的基本构建块。去看看吧,它可能成为你下一本书的基础,并且非常有趣。

我认为这篇文章真的离题了。
本质上,作者是在说“如果你的孩子像你一样懒惰且缺乏动力,那就给他们买一个 Raspberry Pi,并假装它只是一台廉价 PC”。结果将是一个孩子拥有一台电脑,但它会给他们带来令人失望的桌面体验,并让他们怀疑为什么他们要在可以使用 PC、Mac 或平板电脑时还要使用它。尤其是当他们尝试使用他们习惯的特定于平台的应用程序时。

将 Pi 用作简单的 PC 对 Pi 和孩子都是一种损害。

就我个人而言,每当有人问我这个问题时,我总是说“两个都买”。它们足够便宜,你无需选择,也不应该选择。接下来,重要的是要理解并传达这些不是消费电器。它们不是即插即用型的设备。它们是用于修补、学习和解决问题的。如果这个人对此不感兴趣,那就省下你的钱,让他们回去浪费他们的头脑玩 Candy Crush 和刷 Facebook 吧。

对于那些确实想学习、修补、探索和控制周围世界的人来说,这两种设备都是进入嵌入式计算和电子世界的神奇、低成本、低门槛的入口。而且它们绝不是竞争性的。它们是互补的。如果它们是竞争性的,就不会每隔一周就有一个 Kickstarter 在销售 Pi/Arduino 集成的下一个重大事件。这就像说你的皮卡车和你的旅行拖车是竞争性的。事实是,它们在一起会更好,即使它们可以单独使用。

至于开箱即用的满足感。我认为,将 Arduino 连接到你的电脑,加载一个演示程序,然后瞧,你就让某样东西闪烁或移动或任何东西,这会更有成就感。插入 Raspberry Pi 并看到桌面操作系统启动,这与启动任何其他计算机一样令人兴奋。并不是说你不能用 Pi 做令人兴奋的事情,你可以。但最有成就感的任务不会在你插入它的几分钟内发生。回报将在时间和努力之后到来。

总的来说,这些都是很棒的设备,对业余爱好者、修补匠、教育工作者、学生和其他人产生了不可估量的影响。为什么要只选择一个呢?

这里有人认为应该告诉人们 Beagle Bone Black 吗?1Ghz CPU、512 MB、2 个 RTU、96 个 GPIO 引脚(没错,96 -> 4 X 24)、Debian OS(当前版本)、HDMI 输出。而这些都是已经存在一段时间的规格。这是概要:http://beagleboard.org/support/bone101

Beaglebone 是很棒的开发板!只是它们碰巧不是这篇文章的主题。 :-)

回复 ,作者是 Joe Almeida (未验证)

购买 Odroid-c1,性价比更高。

很棒的文章!我使用 Arduino 是因为它的低功耗。
Radio Shack 的参考让我想起了我成长的家。 :-)

最好的,
Mayur

PSOC 5LP 或 PSOC CY8CKIT-044 都是很棒的开发板,而且它们比 PI 或 Arduino 更容易使用。它们还附带免费的软件用于开发。它们还可以与 Arduino 扩展板接口。

感谢这篇关于这两个选项的精彩的真实世界文章。作为一个非常聪明的 8 岁男孩的家长,他对 minecraft、scratch 和 meccanoid 机器人技术非常感兴趣,我发现自己在亚马逊上关注了 LilBits 系列玩具。

阅读了一两篇评论后,我意识到这些是很棒的小套件,但价格却极其离谱。所以我开始考虑,也许我可以找到类似的东西,而没有“创业炒作”和由此导致的价格炒作。

这是我读到的第二篇文章。第一篇也很有信息量。但你的文章给了我认为是选择的最佳工具...“找到一个项目,看看哪个选择最能完成该项目...” 多么好的看待方式!

我的一部分非常懒惰,想花 250 美元购买 LilBits 套件并一劳永逸。但我的一部分不想奖励发明者意识到我的懒惰。感谢你撰写了关于这个主题的精彩文章,尽管 Tachyon 有不同看法。

© . All rights reserved.