热搜关键词: 信号与系统无刷电机ADSTCP/IP

pdf

从物联到万联:Node.js与树莓派万维物联网构建实战

  • 1星
  • 日期: 2022-05-04
  • 大小: 7.21MB
  • 所需积分:1分
  • 下载次数:2
  • favicon收藏
  • rep举报
  • free评论
标签: 物联网

物联网

本书是介绍万维物联网的入门教材。作者通过将树莓派作为物理设备网关,提出一种构建万物互联的可行方案——利用现有的万维网标准、HTTP  协议,以及HTML、CSS  和JavaScript  技术,让智能产品终端成为开放的万维网的一部分,最终形成物联网和万维网的结合体——万维物联网。本书分为两个部分,第1  章到第5  章是第I  部分,内容涵盖万维物联网基本概念、JavaScript  和Node.js  介绍,通过一个简单的例子来说明如何使用Node.js  的Web  框架与远程设备进行交互。第6  章到第10  章是第II  部分,详细介绍万维物联网技术栈中的各层架构及如何用现有的Web  技术实现各层架构,最终能够形成物理网聚合应用,能够快速创建复杂应用程序,整合各种设备和数据。本书涉猎的技术范围广泛,包括各种Web  和物联网协议、Web  标准及树莓派的原理与实践。适合之前没有丰富嵌入式开发经验,但希望探索物联网世界的Web  开发人员阅读,也适合作为一本初级教程指导树莓派开发者和Node.js  爱好者进行物联网开发实践。

第I  部分  物联网与万维物联网基础.........................  1

1  从物联网到万维物联网...............................................................  3

1.1 定义物联网  ......................................................................................................  4

1.2 进入万维物联网  ..............................................................................................  6

1.2.1 万维物联网场景:连接旅店  ..............................................................  6

1.2.2 对比物联网和万维物联网  ..................................................................  8

1.2.3 物联网简史  ........................................................................................  11

1.3 使用案例——为什么连接设备  .....................................................................  13

1.3.1 无线传感器网络和分布式传感  ........................................................  13

1.3.2 可穿戴和自我量化  ............................................................................  14

1.3.3 智能家居和建筑  ................................................................................  16

1.3.4 智能城市和能源网络  ........................................................................  16

1.3.5 智能制造与工业4.0  ..........................................................................  17

1.3.6 智能物流和供应链  ............................................................................  18

1.3.7 营销2.0  ..............................................................................................  19

1.4 万维物联网——增强版的物联网  .................................................................  21

1.4.1 更容易编程  ........................................................................................  22

1.4.2 开放和可扩展标准  ............................................................................  22

1.4.3 快速且易于部署、维护与集成  ........................................................  23

1.4.4 元素之间的松耦合  ............................................................................  23

1.4.5 广泛使用的安全和隐私机制  ............................................................  24

1.4.6 万维物联网的弊端  ............................................................................  25

1.5 总结  ................................................................................................................  26

2  你好,万维物联网...................................................................27

2.1 初识万维物联网设备  ....................................................................................  28

2.1.1 主角登场:树莓派  ............................................................................  29

2.2 练习1——在万维物联网上浏览一个设备  ..................................................  30

2.2.1 第1  部分——Web  作为用户界面  ....................................................  30

2.2.2 第2  部分——Web  作为API  .............................................................  34

2.2.3 小结  ....................................................................................................  39

2.3 练习2——从一个WoT  传感器中轮询数据  ................................................  40

2.3.1 第1  部分——轮询当前传感器读数.................................................  40

2.3.2 第2  部分——轮询和绘制传感器读数.............................................  41

2.3.3 第3  部分——实时更新数据.............................................................  42

2.3.4 小结  ....................................................................................................  44

2.4 练习3——作用于现实世界  ..........................................................................  44

2.4.1 第1  部分——使用一个表单来更新显示的文字.............................  44

2.4.2 第2  部分——创建你自己的表单来控制设备.................................  46

2.4.3 小结  ....................................................................................................  48

2.5 练习4——让别人知道你的设备存在  ..........................................................  49

2.5.1 小结  ....................................................................................................  52

2.6 练习5——创建你的第一个物理网聚合应用  ..............................................  53

2.6.1 小结  ....................................................................................................  55

2.7 总结  ................................................................................................................  55

3  Node.js  与万维物联网..............................................................57

3.1 JavaScript  崛起:从客户端到服务端到智能产品  .......................................  58

3.1.1 在智能产品中引入JavaScript  ..........................................................  59

3.2 Node.js  简介  ...................................................................................................  60

3.2.1 在电脑上安装Node.js  .......................................................................  61

3.2.2 用Node.js  写一个Web  服务器.........................................................  61

3.2.3 以JSON  格式返回传感器数据  .........................................................  63

3.3 Node.js  的模块化  ...........................................................................................  64

3.3.1 npm——Node  的包管理器  ................................................................  64

3.3.2 通过package.json  和npm  完全管理依赖  ........................................  65

3.3.3 你的第一个Node  模块  .....................................................................  67

3.4 理解Node.js  事件循环  ..................................................................................  68

3.4.1 多线程Web  服务器  ...........................................................................  68

3.4.2 单线程、非阻塞Web  服务器  ...........................................................  69

3.5 开始异步编程  ................................................................................................  71

3.5.1 匿名回调  ............................................................................................  72

3.5.2 具名回调  ............................................................................................  75

3.5.3 控制流库  ............................................................................................  76

3.6 总结和课外阅读  ............................................................................................  79

4  嵌入式系统入门......................................................................81

4.1 进入嵌入式设备的世界  ................................................................................  82

4.1.1 业余爱好者的设备与工业级设备  ....................................................  82

4.1.2 实时操作系统与Linux  ......................................................................  83

4.1.3 小结及超越树莓派  ............................................................................  85

4.2 建立你的第一台WoT  设备——树莓派  .......................................................  86

4.2.1 入手树莓派  ........................................................................................  86

4.2.2 选择你的树莓派  ................................................................................  88

4.2.3 购物清单  ............................................................................................  88

4.2.4 设置你的树莓派  ................................................................................  89

4.2.5 连接你的设备  ....................................................................................  94

4.3 安装Node.js  到树莓派  ..................................................................................  95

4.3.1 在树莓派上使用Git  和GitHub  ........................................................  97

4.3.2 小结  ....................................................................................................  97

4.4 连接传感器和执行器到树莓派  ....................................................................  98

4.4.1 理解GPIO  端口  .................................................................................  98

4.4.2 使用面包板连接电子元件  ................................................................  98

4.4.3 用Node.js  访问GPIO  .....................................................................  100

4.4.4 课外阅读  ..........................................................................................  105

4.5 总结  ..............................................................................................................  106

5  构建智能产品网络.................................................................  107

5.1 连接智能产品  ..............................................................................................  109

5.1.1 网络拓扑结构  ..................................................................................  109

5.1.2 网络分层模型  ...................................................................................111

5.2 智能产品的网络层协议  ..............................................................................  112

5.2.1 从空间的角度考虑  ..........................................................................  113

5.2.2 网络协议和IoT  ...............................................................................  113

5.2.3 IoT  个人局域网  ...............................................................................  118

5.2.4 IoT  广域网  .......................................................................................  122

5.2.5 网络层协议的选择  ..........................................................................  124

5.3 智能产品的应用层协议  ..............................................................................  127

5.3.1 ZigBee  和蓝牙的应用层  .................................................................  128

5.3.2 Apple  HomeKit  和Google  Weave  ...................................................  129

5.3.3 消息队列遥测传输  ..........................................................................  130

5.3.4 资源受限的应用协议  ......................................................................  133

5.3.5 应用层协议的选择  ..........................................................................  134

5.4 万维物联网架构  ..........................................................................................  134

5.4.1 第1  层:接入层  ..............................................................................  135

5.4.2 第2  层:发现层  ..............................................................................  136

5.4.3 第3  层:共享层  ..............................................................................  136

5.4.4 第4  层:整合层  ..............................................................................  136

5.4.5 为什么WoT  是重要的  ....................................................................  137

5.4.6 课外阅读  ..........................................................................................  137

5.5 总结  ..............................................................................................................  138

第II  部分  构建万维物联网.................................  139

6  接入层:智能产品的API.......................................................  141

6.1 设备、资源和Web  智能产品  .....................................................................  142

6.1.1 表述性状态转移  ..............................................................................  142

6.1.2 为什么需要一致的接口  ..................................................................  144

6.1.3 原则1  :可访问资源  .......................................................................  145

6.1.4 原则2  :通过表述来操作资源  .......................................................  149

6.1.5 原则3  :自描述信息  .......................................................................  151

6.1.6 原则4  :超媒体作为应用程序状态引擎  .......................................  157

6.1.7 小结——Web  智能产品设计过程  ..................................................  160

6.2 超越REST  :实时万维物联网....................................................................  161

6.2.1 WoT  需要事件  .................................................................................  161

6.2.2 发布/  订阅  .......................................................................................  162

6.2.3 webhook——HTTP  回调  .................................................................  163

6.2.4 Comet——用hack  的方式让HTTP  支持实时Web  ......................  165

6.2.5 WebSocket  ........................................................................................  166

6.2.6 未来:从HTTP/1.1  到HTTP/2  ......................................................  170

6.3 总结  ..............................................................................................................  171

7  实现  Web  智能产品...............................................................  173

7.1 连接设备到Web  ..........................................................................................  174

7.2 直接集成模式——在设备上实现  REST  ....................................................  175

7.2.1 创建WoT  服务器  ............................................................................  175

7.2.2 资源设计  ..........................................................................................  177

7.2.3 表述设计  ..........................................................................................  184

7.2.4 接口设计  ..........................................................................................  187

7.2.5 通过WebSocket  实现pub/sub  接口  ...............................................  189

7.2.6 小结——直接集成模式...................................................................  192

7.3 网关集成模式——CoAP  .............................................................................  193

7.3.1 运行一个CoAP  服务器  ..................................................................  194

7.3.2 通过网关代理CoAP  .......................................................................  195

7.3.3 小结——网关集成模式...................................................................  197

7.4 云端集成模式——EVRYTHNG  的MQTT  ................................................  198

7.4.1 设置EVRYTHNG  账号  ..................................................................  200

7.4.2 创建MQTT  客户端应用程序  .........................................................  204

7.4.3 使用action  来控制智能插座  ..........................................................  206

7.4.4 创建一个简单的Web  控制应用  .....................................................  208

7.4.5 小结——云端集成模式...................................................................  211

7.5 总结  ..............................................................................................................  212

8  发现层:描述和发现Web  智能产品.........................................  213

8.1 可发现性问题  ..............................................................................................  214

8.2 发现智能产品  ..............................................................................................  216

8.2.1 网络发现(Network  discovery)  ......................................................  216

8.2.2 Web  上的资源发现  ..........................................................................  219

8.3 描述Web  智能产品  .....................................................................................  222

8.3.1 Web  智能产品模型简介  ..................................................................  224

8.3.2 元数据  ..............................................................................................  226

8.3.3 属性  ..................................................................................................  226

8.3.4 行为  ..................................................................................................  228

8.3.5 智能产品  ..........................................................................................  230

8.3.6 在树莓派上实现Web  智能产品模型  .............................................  231

8.3.7 小结——Web  智能产品模型  ..........................................................  237

8.4 语义化的Web  智能产品  .............................................................................  238

8.4.1 关联数据和RDFa  ............................................................................  238

8.4.2 约定的语义:schema.org  ................................................................  242

8.4.3 JSON-LD  ..........................................................................................  243

8.4.4 课外阅读  ..........................................................................................  245

8.5 总结  ..............................................................................................................  246

9  共享层:安全地分享Web  智能产品.........................................  247

9.1 保障智能产品安全性  ..................................................................................  248

9.1.1 加密基础  ..........................................................................................  250

9.1.2 Web  安全与TLS  :HTTPS  的S  .....................................................  251

9.1.3 在树莓派中启用TLS  以支持HTTPS  和WSS  ..............................  253

9.2 授权和访问控制  ..........................................................................................  258

9.2.1 通过  REST  和  API  token  进行访问控制  ........................................  258

9.2.2 OAuth  :一个Web  身份验证框架  ..................................................  261

9.3 社交化万维物联网  ......................................................................................  264

9.3.1 社交化万维物联网认证代理  ..........................................................  264

9.3.2 实现社交化万维物联网认证代理  ..................................................  267

9.4 课外阅读  ......................................................................................................  274

9.5 总结  ..............................................................................................................  276

10  整合层:物理网聚合应用.....................................................  277

10.1 构建一个简单的App——自动生成UI  ....................................................  278

10.1.1 Web  智能产品的通用用户界面  ....................................................  279

10.2 物理网聚合应用  ........................................................................................  286

10.2.1 使用Node-RED  工具创建物理网聚合应用  ................................  287

10.3 使用向导式工具来创建物理网聚合应用:IFTTT  .................................  293

10.3.1 将入侵者警报推送到  Google  电子表格上  ..................................  294

10.3.2 使用自建通道发送请求  ................................................................  296

10.3.3 将入侵警报信息从Twitter  推送到Google  电子表格  .................  297

10.4 课外阅读  ....................................................................................................  299

10.4.1 从简单的聚合应用到大数据聚合应用  ........................................  299

10.4.2 更好的用户体验  ............................................................................  300

10.5 总结  ............................................................................................................  300

附录A  Arduino、BeagleBone、Intel  Edison  与WoT.............  301

推荐帖子 最新更新时间:2022-05-27 08:28

三极管漏电流问题,请教~~~
本帖最后由 hit09 于 2014-11-5 19:55 编辑 大家遇到这种问题没,GPIO控制三极管基极,当出现低电平(<0.3V)集电极上串联的LED灯仍然是亮的,属于微微的亮,只有一个很小的亮点,但是肉眼可以识别的。电路如图示:如下两种图实际测试结果为发光二极管都有个亮点,此时该支路电流<0.05mA.后来单独做了个电路,5V上串联68K电阻和LED灯,结果灯依然会有个亮点,此时测试该
hit09 模拟电子
免费申请TI 样片,晒单赢好礼!
活动详情>>免费申请TI 样片,晒单赢好礼! 活动时间:11月20日-12月31日 如何参与 1、免费样片申请:点击活动页面任意样片,成功申请3类以上芯片,即有机会获奖。2、申请成功样片后,以“【晒样片】+自拟”为标题,在TI 技术论坛发帖。3、帖子内容包括:本页面截图并圈出所申请的样片类型,申请样片的订单及物流信息、并晒出收到货样片型号,格式不限,内容须原创。 评奖设置 1、根据大家申
EEWORLD社区 TI技术论坛
【视频】深入了解:Soc FPGA嵌入式软件之全芯片调试
引言:一般而言,arm 和 fpga的交叉调试,可能会花掉整个项目60-70%的调试时间,所以我们应该了解如何调试,这对整个项目来说非常重要,让我们来一起了解一下Altera SOC的全芯片调试,感受一下由此给我们的开发和调试带来的便利性 $('flv_AHI').innerHTML=(AC_FL_RunContent('width', '500', 'height', '375', '
chenzhufly Altera SoC
[GD32E231 DIY大赛] 05. 自动喂鱼机器人之PWM篇
[GD32E231 DIY大赛] 05. 自动喂鱼机器人之PWM篇 1.舵机基本工作原理 一般机器人控制都离不开舵机控制,这里先简单讲解一下舵机的基本工作原理: 一般而言,舵机的基准信号都是周期为20ms,宽度为1.5ms。这个基准信号定义的位置为中间位置。其中间位置的脉冲宽度是一定的,那就是1.5ms。 我是参考: https://blog.csdn.net/weixin_38075
传媒学子 GD32 MCU
物联网有关校园智能产品分析-外加芯片方案
  炎炎夏日,让我想起太阳当空照、花儿对我笑、小鸟说:zaozaozao,我去上学了(小编只记得个大概)。学校,一个成长的必经之路。回想起自己,还是有时烦恼有时愁,当然少不了开心快乐的时光。  言归正传,现在物联网快速的崛起,生活物品也是往智能化时代快速的前进。说说校园方面的智能产品:校讯通(由于运营商的不同,称法不一),简单点就是考勤有源(有电池)卡片。一个能检测学生是否进校、迟到的考勤智能机器
hzeeng RF/无线
这些电源问答让人哭笑不得
管管在刷网页的过程中发现了一些很正经的电源问题和不正经又正确的回答,让人觉得苦笑不得,整理来这里博大家一笑。 1.问:手机边充电边用有什么危害吗?    答:有,会受到充电线长度限制。 2.问:用 iPad 的充电器给 iPhone 充电有什么后果?    答:把 iPhone 的电充满。 3.问:充电时的手机真能电死人吗?    答:如果一定要电死人,那多半是
okhxyyo 模拟与混合信号

评论

登录/注册

意见反馈

求资源

回顶部
查找数据手册?

EEWorld Datasheet 技术支持

热门活动

相关视频

可能感兴趣器件

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版 版权声明

北京市海淀区知春路23号集成电路设计园量子银座1305 电话:(010)82350740 邮编:100191

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2022 EEWORLD.com.cn, Inc. All rights reserved
×