市面上有大量单板计算机(single-board computers)可供选择,从超紧凑型便携式开发板(ultra-compact portable developer boards),到基本可以看作是有各种接口的微型计算机的强大系统,现在让我们深入了解一下:我们可以选择怎样的单板计算机,我们可以用单板计算机做些什么。
软件和硬件
过去几十年,开发软件变得越来越容易,为自己的项目定制软硬件成了一件传统意义上的巨大挑战。在微芯片上编程并非易事,往往还需要特殊设备。2012年单板计算机开始在市场站稳脚跟,定制这些硬件项目变得更容易也更便宜,一切都开始改变。 在这篇文章中,我们希望一窥单板计算机的世界,为你提供当前产品的概览,并为你在产品选择上提供一些建议。为了明确起见,我们可能应该首先解决“单板计算机”的定义:就本文而言,单板计算机是指那些用于传感器和执行器的模拟和数字I / O的系统,这些传感器和执行器在制造领域非常受欢迎。
开发板
开发板(Developer boards)是这样一类单板计算机,它们作为其他系统的控制器,要比当作独立系统运行更好。例如,一个Arduino开发板永远不会被用作家庭影院的视频解码器,而使用树莓派(Raspberry Pi)对LED灯带进行与运动有关的控制会显得多余。
一块典型的Arduino开发板
当谈到开发板时,Arduino是你的首选系统。要知道,Arduino不仅是一系列开发板,同时也是一个开放的硬件平台。基于Arduino的单板计算机,可以使用多种硬件,也有大量现成的软件项目、应用程序和廉价的Arduino复制品可用。 每个Arduino开发板的核心都是一个基于Atmel-AVR的微控制器,其功能与一个像样的计算器一般强大。根据不同的品牌和型号,你可以有许多端口来连接外部传感器和执行器,甚至可以连接像扬声器或是特制显示器这样的输出设备。 根据尺寸的不同,传感器和执行器可以通过排针连接,从而使匹配的带状线缆的连接变得尤为容易,或者通过较小型号的PCB中的针孔连接。在这两种情况下,强烈建议使用插脚板,连接线缆时要严格遵守规范。
大多数初学者都不会太在意可用的引脚和连接器数量,兼容性反而更重要。我们也强烈建议你使用兼容Arduino的设备,例如Arduino UNO或ELEGOO Uno R3。另一个选择是更小的Arduino Nano或与其兼容的第三方替代产品,例如特别小的Digispark Mini。 另一个重要因素是通信模块,默认情况下,Arduino必须通过USB连接。但是,如果你想在不连接PC的情况下独立使用一个USB,可以用移动电源或电池供电,并通过可选的Wi-Fi模块进行通信。一些开发板带有充电电路、Wi-Fi,甚至具备蓝牙兼容性。 传感器,执行器和输出选项
一旦定义了所有的独立输入和输出,我们就可以在软件中进行访问。从触摸传感器到电位器,从湿度传感器到近程传感器,甚至陀螺仪,各种传感器都可以使用。输出选项则包括LED,扬声器和显示器。还有更复杂的模块可用,并且大部分都可以从中国以便宜的价格买到。 访问那些更复杂的传感器或输出设备要通过所谓的程序库,这些程序库包含了与设备和传感器进行通信的那些例程。这不仅可以节省开发人员大量的开发工作,也有助于简化他们的项目。
效果
Arduino系列开发板适用于各种复杂层级的项目,包括家庭自动化,也可以包含进现有的智能家居环境中去。某些情况下,使用高度专业化的商用传感器可以为你节省许多资金。 初学者可以从一些文档丰富的项目中获益,这些项目旨在教授类C语言和适应IDE(集成开发环境)。即使你完全不懂这项技术,也可以在一个下午的时间获得巨大成功。例如,通过组合近程传感器和LED创建一个碰撞检测系统。你也可以用湿度传感器替换近程传感器,创建一个土壤水分含量指示器,这是全自动花盆项目的第一步。
类似于PC的单板计算机
不同于开发板,类似于PC的单板计算机(PC-like single-board computers)就像真正的计算机一样,因为这种单板计算机可以运行同带有图形用户界面的典型操作系统,并且理论上有潜力替代成熟的计算机。这类设备通常有数倍于开发板的性能。 这个领域最受欢迎且最重要的竞争者无疑是树莓派。第四代树莓派拥有四核Cortex A72 CPU、高达4GB的内存以及能够解码4K视频的GPU。因为支持USB、以太网和Wi-Fi,安装了microSD卡和Linux操作系统的树莓派,就可以像普通Linux PC一样运行。
完全无需作任何改造,单板计算机,比如树莓派,就可以用作网络存储设备或媒体服务器,另一个非常流行的领域是作旧游戏模拟器,像Arduino设备一样,你也可以可以连接各种传感器和执行器。 如今,单板计算机(有些是针对非常专门的应用领域的)的数量可能会造成很大混乱,比如Orange Pi、Banana Pi和华硕 Tinker Board。用户应该特别注意一款开发板的软件支持和社区规模。通常情况下,大型社区在解决驱动问题上会更有帮助。还有一类兼容X86的开发板,这就是一个很小的品类了。
题图来源:notebookcheck
声明:本站原创文章版权和编译文章的中文版权归专门网所有。转载本站作品用于非商业用途无需许可,但需注明出处为专门网,商业用途须取得本站书面授权许可。
|