作家
登录

基于JavaScript语言的快速物联网开发架构

作者: 来源: 2017-07-18 16:55:24 阅读 我要评论

【技巧沙龙】AI开辟者拭魅战营-7分钟打造1个定制技能。7月22号,我们等你一路!


随 JavaScript 说话的风行,及物联网范畴的崛起,我们能看到它们浇忧⒛可能性,同时也发明它特别合适于物联网开辟。是以,在这篇文┞仿里,笔者将重要大年夜以下三个方面进话旧绍:

  1. 典范的物联网架构,及多种说话带来的问题;
  2. 只应用 JavaScript 说话的物联网架构;
  3. 详解基于 JavaScript 说话的物联网不合层级构造。

那么,先让我们看看典范的物联网架构是如何的吧。

典范的物联网架构

我们甚至还可以认为,物联网只是对互联网的扩大。与传统的 C/S 架构比拟,它多了一个“数据采集层”,我们称之为传感器层、硬件层等。数据的产出不再只是用户,还来自于各种各样的联网设备。物联网不再局限于应用 HTTP 协定来传输数据,它还会应用 CoAP(受限制的应用协定)、MQTT(消息队列遥测传输)协定。

物联网的四个层级

当前的物联网应用,所要做的就是控制和数据处理。指令,由用户到终端一层一层往下下达,直到硬件端由设备去履行。而数据,就是一层一层往上上报,直至被可视化。

是以,与互联网的架构比拟(如图 1、图 2 所示),起点与终点不一样了:指令的终点与数据的起点,变成了硬件层,而非最后的用户层。

图 1 互联网架构

图 2 典范的物联网架构


硬件层汕9依υ?控制器经由过程直连的方法,采集各种各样的数据,比如温度、湿度等。而受限于微控制器的成本、情况前提等身分,它可能无法直接连接到互联网。是以,须要连接到一些额外的联网设备才能实现。

而这些联网设备,会负粜ウ理来自各个硬件设备的数据,并将其上传至办事器。同时,它会供给一个无线(如蓝牙、红外、ZigBee)接口作为数据的人口。是以,这一层级须要有更好的数据处理才能,并且它应当要可以快速开辟。因为这些设备重要做的是调和工作,我们习惯于将其称为“调和层”。

应用多种说话的物联网

多年以前,笔者曾做过一个并不复杂的物联网体系:

  1. 应用 Python 里的 Django 作为 Web 办事框架,Django REST Framework 创建 RESTful API;
  2. 为了应用手机作为控制器,还用 Java 写一个 Android 应用;
  3. 应用 Raspberry Pi 作为硬件端的调和层,用于连接收集,并传誓┞菲握旌旗灯号给硬件;
  4. 在硬件端应用 Arduino 作为控制器,写起代码特别简单;
  5. 还应用了 ZigBee 模块 XBee 及 I2C 作为连接不合 Arduino 模块的介质;
  6. 最后,还需在网页上做一个图表来显示及时数据。

为此,我们须要应用 Python、Java、javascript、C、Arduino 五种说话。而如不雅我们要写响应的 iOS 应用,还要用到 Objective-C。对于其他物联网项目来说,也多是如斯,这的确是一场灾害。

别的,诸如 Electron、NW.js 如许的框架,可以闪开辟者直接应用 WebView + Node.js 模块开辟物联网桌面应用。它可以加快 UI 界面的开辟,并轻松地美化 UI 界面。

硬件层

在做如许的物联网项目之前,我们须要找莅临个不合类型的工程师:一个硬件工程师设计电路图,一个懂硬件的嵌入式工程师,一个写办事端应用的工程师,一个写 Web 前端的工程师,以及对应的 Android 和 ios 工程师。

我们只须要一个运行嵌入式 linux 体系的开辟板,就可以完成如许的工作。与此同时,主流的 ARM 开辟板都供给响应的 Linux 移植,是以在这个层级,我们也只须要存眷于营业的实现。

小结

且不推敲体系本身的协作,要找到这么多的工程师就不是一件轻易的事。而如不雅我们可以只应用一种说话,将大年夜大年夜地改良开辟效力、开辟人员的难题。JavaScript 说话下的物联网架构

JavaScript 说话在比来几年迈特别风行,它风行起来竽暌剐很多个原因,如:

  1. 应用 WebView 开辟 UI 效力更高,也是以使得 WebView 到处可见;
  2. 基于事宜驱动的编程模型;
  3. JavaScript 轻易上手(这是长处,也是缺点);
  4. 也是以,React、Unity 等框架供给了更多的可能性,可以闪开辟者用 JavaScript 开辟游戏、VR 应用等等。

那么,只应用 JavaScript,我们可以设计出如何的物联网体系呢?

基于纯 JavaScript 的物联网架构


荣幸的是,Samsung 公司推出的开源物网框架 IoT.js,只须要 64KB RAM、200 KB ROM。在将来,或许它能解决一些制造成本汕9依υ?题。

调和层

如上所述,几年前要想寻找一门能完成一个包含客户端、办事端的体系的说话可谓相本地艰苦。而跟着客户端(浏览器、移动设备)机能的晋升、Node.js 的出现,如许的说话就浮现了出来,即 JavaScript。它不仅可以让我们只用一门说话来降低开辟成本,还能实现快速地开辟出如许的一个体系。那么,剩下的问题就是,在不合的层级,若何选用合适的框架来实现快速开辟。

如图 3 所示,我们可以看到不合层级的可选用 JavaScript 筹划。在此之中,有些纯粹只是为了证实 JavaScript 是可行的;有一些则可以在开辟效力与运行速度上达到最好的均衡。选用这些筹划,可以让我们实现更快速的 JavaScript 物联网应用开辟。

图 3 基于纯 JavaScript 的物联网参考架构


  推荐阅读

  数据可视化的7个好处

【技巧沙龙】AI开辟者拭魅战营-7分钟打造1个定制技能。7月22号,我们等你一路!数据可视化是指以饼状图等图形的方法展示数据。这赞助用户可以或许更快地辨认模式。交互式可视化可以或许让决定计划者深刻>>>详细阅读


本文标题:基于JavaScript语言的快速物联网开发架构

地址:http://www.17bianji.com/lsqh/36279.html

关键词: 探索发现

乐购科技部分新闻及文章转载自互联网,供读者交流和学习,若有涉及作者版权等问题请及时与我们联系,以便更正、删除或按规定办理。感谢所有提供资讯的网站,欢迎各类媒体与乐购科技进行文章共享合作。

网友点评
自媒体专栏

评论

热度

精彩导读
栏目ID=71的表不存在(操作类型=0)