用Arduino全面打造物联网(txt+pdf+epub+mobi电子书下载)


发布时间:2021-03-05 23:47:05

点击下载

作者:孙骏荣,苏海永,夏毓彦

出版社:清华大学出版社

格式: AZW3, DOCX, EPUB, MOBI, PDF, TXT

用Arduino全面打造物联网

用Arduino全面打造物联网试读:

内容简介

本书以Arduino这个著名的开放式软硬件平台为工具,结合丰富的范例,系统全面地介绍了物联网的三大要素“物”“联”和“网”的产品开发和具体实现。书中涵盖了物联网的概念与技术,主控端、传感端、通信和联网等模块的硬件集成、软件开发和软硬件整合等。另外,云下载资源中还提供了范例程序、电路图等资源,以配合本书的学习和实践。

本书适合物联网产品开发从业者与技术人员使用,也可以用作高校学生学习硬件设计的实践教程。

PREFACE

物联网这个名词真是让人又爱又恨。这个名词绝对是这几年最常被人提出来讨论的议题之一,但是因为它所涉及的范围广,听得越多反而越不知道什么是物联网真正的应用所在。其实它早在我们生活周围了!智能手机,不!我们应该称之为智能终端,因为手机早已不只是手机,它可以让用户随时随地通过因特网得到所有想知道的信息,以及随时随地和朋友互动,这就是物联网的应用之一。我们把物联网细分成3部分:“物”,各种各样的设备,甚至包括人类都是其中一部分;“联”,将所有的物品通过有线或无线的方式连接在一起,彼此能够交换信息;“网”,将物物相连成网,这个网将成为应用与价值的所在。

笔者接触Arduino也快10年了,看着它开始在中国台湾落地萌芽,到现在百花齐放,每天都有人发表新的应用和新的想法,Arduino不再只是冷冰冰的硬件,而是实现大家心中梦想的最佳垫脚石。以Arduino来展开物联网的介绍,无疑是希望用最简单的东西让大家能够体验物联网的无所不及。本书篇幅有限,只能点出每种应用的关键与角色,书中有太多太多主题可以再单独深入研究下去。坦白地说,笔者也无法将每个技术或领域研究透彻,因此本书若有错误或引用不当之处,欢迎随时来信指教。

希望以此书抛砖引玉,吸引更多玩家一起悠游物联网的世界。Scott Sun2016夏

改编说明

本书以Arduino这个著名的开放式软硬件平台为工具,结合丰富的范例,系统全面地介绍了物联网的三大要素“物”“联”和“网”的产品开发和具体实现。书中涵盖了主控端、传感端、通信和联网等模块的硬件集成、软件开发和软硬件整合。Arduino设计平台的“开放”已不只是“软件开源”意义上的开放了,它的硬件设计也完全“开源”了——即硬件的设计电路也完全开放了,是一个彻头彻尾的开放式软硬件开发和设计的平台。

正因为这种开放性,本书既适合作为大专院校的学生学习硬件设计基础的实践课程专用书,也可以作为业界人士转向物联网产品开发的技术参考书。

除了开发或者实践用的Arduino硬件套件需要单独购买外,其他开发环境和工具软件可以从网站上下载完整版(如果是freeware)或者下载免费版。为了便于读者迅速搭建开发和测试的环境,我们把本书用到的这些软件在官网中的下载地址陈列于下。(1)Arduino IDE软件环境:https://www.arduino.cc/en/Main/Software。(2)Fritzing电路规划软件:http://fritzing.org/download/。(3)Wireshark网络分析器:https://www.wireshark.org/download.html。(4)Accessport串行通信软件:http://www.sudt.com/cn/ap/download.htm。

另外,本书一共提供了3个压缩文件供读者下载,以配合本书的学习和实践。下载网址为http://pan.baidu.com/s/1i43qtfB(注意区分字母的大小写及数字和字母),若有疑问,可发邮件至booksaga@126.com。(1)范例程序:所有范例程序及其配合运行的程序,都提供了源代码。(2)电路图:19个硬件设计电路图,可用开源的Fritzing电子设计自动化软件查看和修改。(3)参考文件(原厂只提供了繁体中文版):14个电子文件,包括一氧化碳传感器、无线传感开发系统、程序库、扩展板/模块和各种传感器等的使用手册或者使用说明书。

最后,祝大家顺利、迅速地成为物联网时代产品开发的专业人才。资深架构师 赵 军2016年10月

在线下载说明

本书范例程序、电路图、参考文件请至下面的网址下载(注意数字和字母大小写):http://pan.baidu.com/s/1i43qtfB。

其内容仅供合法持有本书的读者使用,未经授权不得抄袭、转载或任意散布。如果下载有问题,请联系电子邮箱booksaga@126.com,邮件主题为“用Arduino全面打造物联网下载”。CHAPTER 01浅谈物联网

物联网(Internet of Things, IoT)这个名词可以解释得很简单,物品能够连上网络就算是物联网。

英特尔(Intel)、IBM、微软、台积电、ARM、思科(CISCO)等这些国际知名的企业一致认定,物联网(Internet of Things)将是未来10到15年内会被持续关注且最重要的发展方向。

为什么他们会有这样的认识呢?

有什么样的预兆或趋势就这么认定一定要跟上物联网的浪潮呢?

曾经有一句顺口溜:雾里开花物联网。难道物联网不会是一个昙花一现的主题吗?

我们只需要了解一件事情就会明白:到2020年时,预计会有超过500亿的设备连接上网。这些设备可能是手持设备、家电、移动设备等。而那时候的世界人口也才接近80亿(根据联合国在2010年的估计)。也就是说可连上网的设备已经远远超过世界的人口总数。500亿这个数字还只是硬设备的预估而已,还没计算这些设备会带来的商机、生意模式和信息流的需求等。

回到现今,如果还没有听过物联网,我们会怀疑你的信息来源。如果还没想要加入物联网的行列,我们只能说真的太落伍了。赶紧跟着本书,一起了解并加入成为物联网的一员吧。1-1 物联网的起源与发展

物联网这个名词可以解释得很简单,物品能够连上网络就算是物联网。也可以解释得很复杂,这里就不说明很复杂的解释是什么样的了。物联网有很多的变形与应用,会让大家越来越搞不清楚方向,这也正是为什么会有那句顺口溜的原因,因为大家都在谈,但是越谈越不懂。直到2014年左右,人家说真相总是越辩越明,终于让大家看到了物联网的一些轮廓。未来究竟是怎么样的没有人说得清,不过大家的目标是一致的,就是物联网相关技术与应用的持续发展会给人类的生活带来越来越多的便利与进步。

物联网这个名词到底是怎样被提出来的呢?还是要看看起源才能循着脉络通往应用的大海。

大家应该还记得RFID(Radio Frequency IDentification)这项技术吧,即无线射频识别(见图1-1)。通过标签(Tag)与读写器(Card Reader)进行数据交换,用来识别物品的种类,最初的应用是想取代条形码(Barcode)来进一步提升物品识别的效率以及应用。而物联网的概念就是在RFID的技术下,由Auto-ID实验室所提出的,把所有物品通过无线识别技术与因特网连接起来,用以实现智能化的管理。举个例子来说,当你在超市想要购买一个哈密瓜时,只要通过手持设备扫描一下这个水果上的标签,手持设备就会自动通过网络连接到数据库,获得这个哈密瓜的所有信息,包含产地、肥料和运输的过程等,借此我们就可以决定是否要购买这个哈密瓜。标签上的编号虽然是独一无二的,但是因特网和后端数据库的连接使得我们只需要这个号码就可以知道很多“故事”。图1-1 RFID的应用与系统架构

因此,物联网早期的定义就是因特网(Internet)的延伸,有人将之视为每15年为一个周期的技术变革之一,从1980年的个人计算机(Personal Computer)到1995年的因特网,而2010年则是物联网的起源年,它将引领技术与应用的趋势。美国总统与中国总理都曾在重要的演讲中提到物联网,并将物联网定位成国家的重点发展方向之一。图1-2 IBM智慧地球的徽标

而今天物联网的范畴则已经大大超越了最初的想法,IBM公司提出了智慧星球(Smart Planet,见图1-2)的概念。所谓智慧,是指通过全面的感知和信息的传递,让我们可以借助这些数据分析出更好的模式或更好的效率,进而带给人类更智慧的生活。

许多公司包含IBM又再将这个概念收敛到所谓的智慧城市(Smart City),希望智慧这样的概念能够先从城市完善,再慢慢扩展到更大的范围(见图1-3)。图1-3 施耐德电器提出的智慧城市领域(图片来源:www2.schneider-electric.com)

另外,还有一个很重要的题目也是在物联网的潮流下被提出来的,就是工业4.0(Industry 4.0)。工业4.0其实不只是包含了物联网的概念,还纳入了大数据(Big Data)、云(Cloud)。回顾工业的发展史(见图1-4),从蒸汽机的发明让机器取代人工进行生产,那时是工业1.0的时代。当时代越来越进步,机器和人的分工和流水线生产让我们可以大量生产,我们将这个时代定义为工业2.0。工业3.0则开始导入自动化控制器、IT系统等,这个时代的第一台可编程逻辑控制器(PLC)在1969年由Modicon公司推出。

凭借信息物理系统(Cyber Physical Systems, CPS)的发展,工厂内结合了计算机运算的能力以及传感器与输出设备的集成控制系统,它不只是单机运行的概念,利用网络拓扑结合无线感测网络的通信技术,将整个信息流加上时间与空间的多维度延伸,让生产线的自动化、适应性、效率和质量等都可以大幅提升。2011年德国工业展第一次推出此概念后,德国政府立刻视为重大政策并强力扶持其发展。工业4.0有什么好?试想一下,厂区内的所有设备及机械手臂都有传感器随时监控其能耗状态、马达运转功耗。所有信息全部通过网络上传到中央管理系统。管理阶层能立即从手持设备了解整个工厂运行的效率,并适时提出调整。所有设备的状态也持续被记录且推演出异常状态的评估系统,若观察到设备开始有不正常的趋势,工程师可以提前安排检修,或提早通知原厂安排检查,就不会在发生故障时才做后续的安排,这样能够大大提高设备运行和维护的效率。工业4.0的时代正式来临。图1-4 工业革命的演进(图片来源:DFKI)

另一个结合大数据的应用是生产线上所有的生产过程全部可以通过传感器记录并传送到数据中心机房存储,每一个产品都有分别的记录和最终检查的结果,因此我们可以通过这些数据导出最适合的生产参数。同样的概念在当前智能农业的作物养殖上也被广泛应用。1-2 新时代新思维

物联网的发展带动了很多意想不到的产业,让整个产业思维也开始进行调整。在物联网络中,每个节点应该是低成本却又充满弹性的,这让整个微控制器产业大幅发展,后面的章节我们会谈到。不过,更让人意想不到的是创客(Maker)时代的来临,因为硬件成本逐步下降,让更多人有机会用更简单的方式接触到硬件,加上开放源码的风气,逐渐形成了一个生态系统。大家都可以发挥自己的创意推出令人意想不到的产品,各个国家或地区现在都有年度的创客博览会(见图1-5),大家有兴趣的话可以亲临现场了解一下。像各种各样的3D打印机或无人机等都在这些自造者中不断地被讨论,不断有更新的应用推出。图1-5 一年一度各地举办的创客博览会

像是无人机,以前还处在学术研究计划或是军事用途中,这两年已经有玩家创作出自己的飞行器,小到手掌大小,大至可以运送货物,世界知名的大疆四轴飞行器(见图1-6)已经在全球各地造成轰动,让空拍成为一股风潮。图1-6 大疆Phantom 3

亚马逊(Amazon)公司以及许多物流业者更是开始评估使用无人机送货(见图1-7),让送货可以更加便捷。与通信技术结合,亚马逊公司开始考虑怎么样直接将货物送到收货人的手上,即使他不在家。这一切看似不相关,实际上都跟物联网的发展有着密不可分的关系。图1-7 Amazon的无人送货机

另外一个值得注意的是商业模式的改变,物联网时代数据就是金钱,如何收集大量的数据并且分析出有价值的结果将是未来各大公司研究的目标。有一句话说:“羊毛出在狗身上,猪来买单”,说的就是这个道理。微软公司、IBM公司都开始建立自己的大数据仓库,并且广纳硬件厂商合作结盟,未来单打独斗的人是最吃亏的。物联网时代最重要的三个商业模式(节录自《数字时代》杂志的第247期):(1)可销售的数据

厂商可能以极低的价钱或免费提供硬件平台,重点是整个数据流的建立及后端数据的存储。之后可以把这些数据再销售给其他公司,例如,前面提到的农业,最终的价值在于整个作物的养殖参数而非硬件。(2)产品与服务的打包

最近很有名的几个电动车厂商(例如,Tesla和gogoro)都不只是产品的提供者,还是整体服务方案的提供者,让用户可以无后顾之忧地使用他们的产品。(3)产品共享

谁说一定要拥有才能使用,越来越多的硬件设备是靠租用或用户按照使用量付费的,比如YouBike。

最后,必须提一下,安全性一直都是物联网时代下的一个课题,更多的数据被收集,表示人们所拥有的隐私也越来越少。数据在如此大规模的通信网络中传输,如何确保其安全性?所有的设备都可以连上网络,意味着每个人都有机会和设备通信,无论目的是好是坏。

眼光放远,我们还是要赞叹物联网时代的来临,它会给整个人类文明带来一个全新的视野,就算有困难、有障碍,相信物联网(见图1-8)的巨轮也会一一克服。图1-8 物联网示意图(图片来源:www.comsoc.org)1-3 关于本书

本书的介绍流程首先以物联网中数量最多的感知节点开始,从系统化的观点了解一个节点所需要的基本组成,也就是感测(或称为传感)、计算与通信。接着再往上一层,介绍点与点之间如何连接,从一对一、一对多到多对多的网络架构。后半段则以实际的应用来介绍物联网中的无限可能性。本书的架构是由点至线再到面,希望能利用实际的硬件与应用的介绍让大家轻松了解物联网,也能够学习到大家公认的未来10年最热门的知识。CHAPTER 02全面感知的联网节点

点是构成平面最重要也是最基本的单位。它的结构看似简单,却必须担负起、承、转、结尾等不同的角色。凭借数以百计、数以千计的点,可以变化出无穷无尽的网络世界。2-1 基础节点的组成

在物联网的世界中,最基本也是最重要的莫过于担负起感测重任的节点(Node)了,这些节点必须要有能力进行物理世界的感知。例如温度、压力、酸碱度等,在不同场合的应用中,我们需要不同的物理信号,也由于这些节点在整个物联网架构中算是第一线接触到物理外部世界的节点,因此我们也称之为终端节点(End Node)。

因为物理世界中有太多太多种的信号与测量方式,所以在每个节点当中都要有一个核心,也就是这个节点的脑袋,来协助我们进行信号的初步处理与转换。我们希望感测的信号能够先转换成另一种稳定的信号后,再经过通信往其他端点或更上一层的节点进行传送,因此这个核心要有能力及时进行信号转换与处理,必要时还需要有足够的空间进行数据暂存的操作。

通常节点所要负责的事情都是每一时间间隔会持续重复的事件,举例:(1)读取温度传感器的数据。(2)转换读取到的信号并提供内部计算。(3)暂时存储到一空间等待特定时间进行传递。(4)通过某一方式将数据往另一节点发送。图2-1 中断节点的应用程序流程

所以我们会利用程序的编写来完成这个固定的流程,并且让它可以在节点内重复无止境地执行。当然,也会有例外的时候,就是突发事件,专业的说法为中断。中断的意思就是在这个固定的流程中,在不特定的时间插入另一事件让节点进行处理,例如节点收到别的端点传输过来的数据,而这些数据必须在这个节点进行判断与分析(见图2-1)。

整理一下一个完整终端节点可能会有的组成部分,大致可以分成核心、输入和输出两大块,不过每一块细分下去还有很多重点需要仔细去评估与讨论。更不要忘记最重要的系统电源,要是没有电源,即使我们接了再多的组件在节点中也都是无用的。

从图2-2可以看到有很多的系统组件规格是我们在设计一个节点时需要思考评估的,该怎么选择才能够符合我们的需求以及满足实际应用时的需要呢?答案接近不可能!因为我们总是希望马儿跑又要马儿不吃草,能够在一个节点中实现的功能,我们总希望能全部一次到位。但是实际应用中,现场的变化与条件限制往往会让我们当初的设计遇到很大的阻碍。目前最好的方式就是采用模块化的设计,先以基本的单位组成进行现场实验,再根据实验的结果调整组件的规格与搭配。最终才可以找到适合的优化设计。图2-2 节点的系统组件示例

现在是一个创客的时代,我们可以一步一步地实现规划中的物联网节点设计,也可以踏在巨人的肩膀上,利用众人的智慧与经验累积,修改现成的系统来满足自己的需要。下一章节我们将要介绍许许多多可以轻易获取的开发版,让我们可以快速地进入物联网的世界,建立属于自己的架构。2-2 控制核心的选择

一个好的系统设计,必定是从核心的规格确定开始第一步。而核心的选择绝对不是越贵越好,而是必须因地制宜,根据不同的应用场合来进行选择。举例来说,英特尔(Intel)公司或超威(AMD)公司的CPU几乎占据了个人计算机的所有市场,针对台式机或笔记本电脑,甚至是服务器的用户,他们会推出不同等级的CPU来满足这些用户的需要。台式机的用户通常会考虑大量的运算及复杂的图形显示,因此CPU运算的性能越高越好,而笔记本电脑的用户因为多半是以移动性为主要考虑因素,因此如何省电以延长使用的时间,就是这类电脑所用的CPU必须考虑的。

这里我们还是以为数最多的终端节点来进行系统设计。在早期笔者会建议直接以X86或RISC(Reduced Instruction Set Computing,精简指令集计算)来进行最初的分类,但是对于如今的技术演进而言,两者的差异已经不太明显。可以看到的是,X86目前以英特尔为主要厂商,但几乎是一家独大的场面;而RISC则以ARM为核心,通过技术的授权与合作,已可以看到许许多多知名的厂商,例如德州仪器(Texas Instruments,TI)、意法半导体(STMicroelectronics)和Atmel等。

这里需要注意的是,一般“标准”的X86处理器,还需要搭配其他芯片与内存,甚至外部存储器,才能构成一个完整的系统,因此在所谓物联网中的终端节点设计上并不会将X86作为第一考虑。但是这里的终端节点不包含智能手机等较高端的设备。在节点设计的考虑下,体积与成本将大大影响硬件的选择。

那么何谓不标准的X86呢?因为英特尔也嗅到物联网中的强大商机,在2013年推出的Quark系列的SoC(System on Chip),主要的对手就是以ARM为主的产品线。从图2-3中可以看到,Quark Soc只需要外接简单的几颗芯片,就可以拥有系统所需要的基本功能。图2-3 以Intel Quark SoC为核心的Galileo开发板(图片来源:Intel)

好了,在这里我们就先不考虑X86的系统架构了,其实英特尔公司主要是把自己产品线的应用定位在网关(Gateway)的解决方案上,而并非是终端上,所以我们就以RISC为第一个分岔点的选择。既然我们已经往前跨出了一步,那么下一步又该怎么选择呢?其实从这里开始就因人而异了,既可以从成本区分,也可以从外围接口的支持来进行区分。但是,现代设备一定是以轻、薄、短、小、便宜等因素来进行选择的,毕竟外观有时候还是比功能重要许多的。下面将介绍所谓的微控制器(Microcontroller)。

什么是微控制器呢?跟刚才讨论的处理器有什么不一样?刚才谈到的都是处理器,那有没有微处理器(Microprocessor)呢?微控制器(Microcontroller)跟微处理器(Microprocessor)的差异又在哪里?是否有太多问号从脑袋当中跑了出来呢?别担心,我们会很简单地介绍两者的差异,以及为什么我们要利用微控制器来当作物联网的系统核心。

前面提到处理器就像人的大脑一般,还是需要手脚五官等来进行数据的收集与反应的动作。而控制器集成了处理器部分的输入和输出功能在同一颗芯片上,借此节省所需要的电路与提高使用的方便性。因此我们可以说: 微处理器(Microprocessor, MPU)=中央处理单元(CPU) 微控制器(Microcontroller, MCU)=MPU+内存+周边I/O

其中的内存还分成FLASH、SRAM、EEPROM等,而周边I/O更是包罗万象,例如定时器(Timer)、时钟(Clock)、通信接口(UART/USART)、ADC(Analog to Digital Converter)转换器、DAC(Digital to Analog Converter)转换器、基本输入输出等。这些不同的功能集成在一起就会让微控制器有不同的体积大小,如28针脚的封装、64或100针脚的封装,如图2-4、图2-5所示。图2-4 Atmel ATMEGA328的两种针脚配置图2-5 微控制器的组成(参考来源:www.mikroe.com)

其实,现在还有另一个很热门的就是所谓的片上系统(System on Chip, SOC)芯片,它的组成更为复杂,可能包含一个微处理器或微控制器,再加上其他系统芯片,也有可能是多核的,也就是不止一个微控制器包含在里面。由于技术的发展,片上系统芯片已经可以像一台计算机一样应用了。目前许多智能设备都是使用所谓的片上系统芯片作为主要系统核心的。硬件厂商也多半会针对特定应用设计出来不同的片上系统芯片来满足特定需求。

说这些就是为了将目前常见的几种核心种类介绍给大家知道,下面列举几个这几年比较热门的开发板,其核心等级也有所不同,让大家思考看看适合用在哪些应用当中。

Intel Galileo

前面提到了英特尔针对智能设备的普及,研发出一款低端的片上系统芯片:Quark。为了满足创客的需要,推出了Galileo的开发板,2014年底推出了第二代,如图2-6所示。其实Quark的主要内部处理器也就是早期的Pentium CPU,是以386、486作为计算机等级区别的那个年代的Pentium处理器核心。它支持标准的网络、USB以及miniSD卡,特别的是还要支持mini PCI express。不过,身为一台计算机,没有显示接口是它的小小缺憾。它可以支持Linux操作系统,也有支持Arduino的开发环境。顺便提一下,英特尔在Galileo之后又推出了一款Edison(如图2-7所示),其芯片大小接近一张SD卡的体积,不过因为太小了,开发时多半需要连接到另一块载板上。英特尔公司喊出的口号是:What will you make?希望能以在高端处理器的知名度打入目前火红的创客时代。图2-6 英特尔所推出的Galileo 2(图片来源:arduino.cc)图2-7 英特尔所推出的Edison(图片来源:arduino.cc)

Raspberry Pi series

Raspberry Pi(树莓派,见图2-8)可以说是继Arduino之后最火红的运算平台了。什么是树莓派绝对是大家不可以不知道的,它是由英国的树莓派基金会所发起,目标在于以低价硬件及自由软件让计算机教育普及化。从2012年推出到现在,已经发展了好几个版本,除了接口上的变化外,它能够搭载标准的Linux操作系统并且支持HDMI的输出一直是它的特色。到了第2代甚至连Windows 10都能够支持,可见其硬件处理器规格之强大。虽然它的硬件并未完全开放让大家自行生产,但是价位与体积足以吸引众多的玩家加入。图2-8 树莓派的外观

BeagleBone series

BeagleBone也是另一块类似于树莓派的高端微型开发板,它的版本利用PCB板子的颜色来区分,因此图2-9中的版本为BeagleBone Black,其搭载的Cortex-A8性能相当好,可以协助用户开发相当多的应用,例如与网络摄像机搭配进行图像处理等。图2-9 BeagleBone Black

Udoo

Udoo(见图2-10)是一块多种需求一次满足的开发板,直接在板子上内建了两个核心,一个是基于ARM的高端核心,另一个则是Arduino Due的微控制器。因此用户可以直接将Linux安装在高端核心后,再与另一个核心进行沟通与程序加载。整个开发板就像是一台计算机加上Arduino的开发板。图2-10 Udoo外观2-3 介绍Arduino

在前面几个开发板的介绍中,是不是都看到了一个名称:Arduino。Arduino(见图2-11)也是一块开发板,它的基础版核心虽然只是八位的微控制器,但是它可以说是引领这一个创客时代来临最重要的推手之一。它第一个完全开放了硬件电路的原始文件,让所有有兴趣的人可以直接下载并找厂商生产,完全不用收取任何费用,当然这是指个人用途而不是以营利为目的的时候。此外,Arduino的开发环境也是完全免费的,可以直接在网络上下载,只需要解压缩后就可以使用,不需要另外安装,也不需要额外的下载通信线,开发板与计算机之间只需要一根USB线就可以提供电源及用于程序下载。图2-11 早期的Arduino没有USB接口

Arduino是在2005年由意大利的团队所开发出来的,其宗旨是希望非电子电机专业的人都可以轻易地踏入程序开发与硬件使用的世界,所以他们称Arduino为物理运算平台,希望使用它的人都可以轻松将自己脑袋里的想法转化成现实,希望通过Arduino能够让更多的人对电子电路不再那么陌生和害怕,这样的理念让数字艺术、互动艺术的创作家们也都开始使用Arduino。

Arduino的发展超过了十个年头,已有数以万计的专题基于Arduino开发出来,也有近百个硬件开发板跟Arduino可以挂上点关系。更不用说物联网时代了,不管是机器对机器、设备对设备还是人对设备等的应用,大家都尝试用Arduino来实现。

因此本书将会以Arduino作为整个物联网当中的“拱心石”,从Arduino架构起的物联节点直到整个网络,大家通过本书可以轻松地实现物联网中的任何一个应用。

在开始之前还是要了解一下Arduino的相关硬件与开发环境,之后会再针对各个功能进行详细的介绍。

Arduino在2005年推出后,开始广为人知的版本是Arduino NG,这里的NG可不是NO GOOD的意思!而此时Arduino开发板上的微控制器是Atmel公司所推出的ATMEGA 8,这可是Arduino最关键的部分,也是Arduino持续不变的部分,后续的几代也都沿用了Atmel公司的ATMEGA系列,无论是8位还是32位。NG之后不久就进行了一些小升级,从ATMEGA 8升级到ATMEGA 168,名称也改为NG+。再过不久又进行了核心的变化,由168升级到328,之后就是更多人知道的Arduino UNO(见图2-12),比较多的人知道UNO的原因是在这个时候Arduino已经打开了所谓创客的市场与知名度,甚至在近期的Arduino Leonardo(见图2-13)也没有UNO这么出名,就算核心采用了更好的ATMEGA32u4。在这条主线不断更新的同时,也出现了一些特殊的板子,例如Arduino Nano(见图2-14)、Arduino Pro Mini和Arduino MEGA(见图2-15)等。在Arduino官网上,Leonardo已经被官方退休(retired)了。图2-12 Arduino UNO (ATMEGA328)图2-13 Arduino Leonardo (ATMEGA32U4)图2-14 Arduino Nano (ATMEGA328)图2-15 Arduino MEGA (ATMEGA2560)

下面整理了这几个开发板的微处理器的差异,可以看到大部分差异都是FLASH、EEPROM等的大小不同。

试读结束[说明:试读内容隐藏了图片]

下载完整电子书


相关推荐

最新文章


© 2020 txtepub下载