从智能手环、智能手表、VR、AR、MR、共享单车再到无人驾驶,物联网将会彻底颠覆我们的生活,正好读到一本《图解物联网》的书,里面用图文的方式把物联网以及相关技术做了个很透彻的解读,特此分享于你。
一、理解物联网
物联网的英语是Internet of Things,缩写为IoT,这里的“物”指的是我们身边一切能与网络相连的物品,并非万事万物,而是特指能够连接互联网的东西,如果衣服,手表,鞋子能够连上网,那就是IoT中所指的物,如果只是蚯蚓,泥土,空气,卫生纸,甚至我正在敲打的键盘(普通键盘),就不能算是物联网中的物。
随着宽带的普及,能搭载在机器上的超低功耗传感器投入市场,无线通信的进步等,都促使着除了PC,服务器和智能手机等传统连接互联网的设备以外,越来越多各种各样的“物”也开始连接物联网,以汽车、家用电器以及房屋为开端,近年,手表,眼睛等饰品也都连上了互联网。
我们一定想知道,为什么会有那么多设备要有联网的诉求,它们连上网了又会给用户带来哪些价值呢?
以前,人们通过让少数昂贵的工业机械通信,来实现对“物”的远程控制(也就是现在离散/流程工业中常用的控制系统),今后,人们将更多地以低廉的价格大量生产面向用户的机器,并让这些机器通信,也正因为应用了从这些“物”中获取的数据,各种各样的服务才如雨后春笋般涌现出来,此外,先进的感测技术的普及实现了人类对现实世界的掌握和预测,通过实时海量地搜集人、物、社会和环境数据,也有望进行新型社会基础设施的构建。
以下是一个智能家居的案例,可以根据人体状况自动控制环境。
以下是一个楼层环境监控的系统,提升以办公室为主的职场环境的舒适度。
二、物联网的技术架构
实现物联网时,物联网服务大体上发挥者两个作用。
- ***是把设备收到的数据保存到数据库,并对采集的数据进行分析。
- 第二是向设备发送指令和信息。
物联网大体上由设备、网络和网关、服务器等构成,如下图所示,下面将分别介绍。
三、设备-通向现实世界的接口
物联网设备五花八门,当其结构一般都如下图所示。物联网设备跟普通的机械产品一样,都包含用于检测用户操作和设备周边环境变化的输入设备,提示某些信息或者直接作用于环境的输出设备,以及作为设备的大脑来负责控制机器的微控制器等。
1、微控制器
MCU是一块控制机器的IC芯片。它能够编写程序,并根据描述的处理读取IO状态,或者向连接上的电路输出特定信号。与PC中的芯片不同之处是,它通常集成度更高,会同时包括CPU,内存和外围电路,如下图所示:
现在大部分电子产品都搭载有微控制器,近些年,32位的微控制器成本逐渐降低,已经开始取代传统的8位单片机了,特别是如今需要将设备接入到网络,对微控制器主板以及编程环境要求也逐渐降低,很多从来没有摸过硬件的开发者,通过连接一些标准的外围I/O设备,很容易做出很多物联网产品。
比如Arduino主板是一款可以让没有从事过电子仪器设计和制作的人也能马上着手开发的微控制器主板,有着超高的人气,利用其IDE开发环境,和可扩展的大量Shield,只需要花费几十块就能搭建出一个用于连接网络物联网小玩意。
谈到开源硬件,还有一个不得不提。那就是大名鼎鼎的树莓派,它搭载有高性能的ARM处理器,可以直接运行Linux操作系统,同时配有丰富的外设,USB,HDMI,活脱就是一台迷你PC的节奏,售价上要比Ardunio贵一些,但最近国内有很多山寨开发板,什么香蕉派,桔子派,功能详相近,成本更低,非常适合物联网新手学习。
为了狙击ARM在物联网领域的拓展,Intel也不甘示弱,推出了专门针对物联网的Edision开发板,集成了WiFi,蓝牙4.0等多种协议,还兼容Ardunio扩展,安装Python和Node.js和专用的XDK IoT Edison开发套件。
2、输入设备
为了让设备获取周边情况和用户操作等信息,必须在机器上实现传感器和按钮等元件(电子器件)。
举个例子,假设有台智能手机,那么这台手机都搭载了什么样的传感器呢?实际上它搭载了触摸屏、按钮、相机、加速度感知器、照相传感器等相当多的感测设备,这些传感设备能帮助我们更详细且精细地掌握周边情况,这在一定程度上决定着机器的性能,所以设备的开发过程中,传感器的选择是非常重要的一步,下表显示了具有代表性的传感器:
下表示意了可穿戴设备的典型传感器和特色传感器:
每种传感器根据其用途而内置有不同的检测元件,检测元件这种物质的电子特性会根据周围环境的变化而变化,如下图所示:
随着零件的小型化和高性能小型处理器的出现,市场上出现了具备先进能力的传感器,这类传感器能轻松地获取那些原来难以当成数据来处理的信息,这些传感器与其说是零件,不如说是狭义上的设备,或者说是多个因素复杂协作的系统。
比如RGB-D传感器,其实际上是相机的强化版,不仅能照相,还能测出传感器到物体的距离,其实现原理就是利用了两个镜头拍摄图像的差距来测算出所拍摄图像中的距离,模仿的也是人双眼测距的原理(否则我们看事物只能是二维了),这个技术已经比较成熟,近年来汽车上配备的辅助功能(如快追尾时自动减速等)也应用了类似的原理。
又比如定位,对于物联网也是至关重要的,无论是通过导航方便生活,还是监管水坝的储水量,或是守护濒危物种,又或者是优化运输路线,以及海洋上监测海啸,现在定位技术不仅有GPS、还有WIFI定位,指纹定位等等。
3、输出设备
物联网想要实现的不只是感测状态,将状态“可视化”,对人类和环境进行干涉,控制世界令其向目标状态发展才是其真实目的。
在需要向用户反馈某些信息时,显示器、喇叭、LED这些用于输出信息的设备就会发挥作用,物联网设备重在小型和简便,如何配置这些输出设备能让其高效地把信息传达给用户,无疑是设计阶段非常重要的课题。
还有一个方法是在设备上安装驱动器,让驱动器物理的作用于环境,驱动器是通过输入信号来实现控制的驱动装置的统称,例如具有代表性的伺候电机,它能够根据输入的电子信号把电机转动到任意的角度,这个方法和机器人技术有着密切的联系,与网络联动运行的设备是当今最受瞩目的领域之一。
四、网络和网关
有两种设备连接到网络的方式,一种是由设备本身直接连接全球网络,另一种是本地区域内使用网关来连接全球网络,如下图所示,近来“生活记录”型的设备越来越多,其结构更接近前面说的第二种方式,例如通过蓝牙把可穿戴设备和智能手机配对,通过智能手机向服务器发送数据。
1、网络
物联网设备和网关设备进行通信的方式有很多种,既有有线的也有无线的,每种方式各有利弊,有线的包括以太网、串行通信(一般指RS-232C)、USB等,无线的包括WIFI、蓝牙,2G/3G/4G,当然还有NB-IoT,诸如共享单车使用的其实是从运营商购买的SIM卡,三大运营商的网络制式如下:
那么NB-IoT是怎么回事?
从2G到3G再到4G,移动网速越来越快,但到了4G时代后,由于物联网的出现,移动通信网络的发展出现了分支:
可以看到,一边是大流量,一边是小数据,一边是移动宽带,一边是物联网时代,从2G到4G,移动通信网络都只是为了连接“人”而生,但随着万物互联时代的到来,移动通信网络需面向连接“物”而演进。
为此,3GPP在Release 13制定了NB-IoT标准来应对现阶段的物联网需求,在终端支持上也多了一个与NB-IoT对应的终端等级——cat-NB1,比较传统2/3/4G网络,物联网主要有三大特点:
***:懒,终端都很懒,大部分时间在睡觉,每天传送的数据量极低,且允许一定的传输延迟(比如,智能水表)。
第二:静止,并不是所有的终端都需要移动性,大量的物联网终端长期处于静止状态。
第三:上行为主,与“人”的连接不同,物联网的流量模型不再是以下行为主,可能是以上行为主。
这三大特点支撑了低速率和传输延迟上的技术“妥协”,从而实现覆盖增强、低功耗、低成本的蜂窝物联网,NB-IoT已经成为运营商最为倚重的物联网通信技术,是运营商实施物联网战略的核心技术。
2、网关
网关指的是能连接多台设备,并具备直接连接到互联网的功能的机器和软件,其把从设备接收到的数据转化成特定格式并发送给服务器,如下图所示,物联网使用的设备中,有3台设备不能直接连接到互联网,网关就负责把这些设备转发到互联网。
五、服务器
物联网服务大体可分为3个部分,分别称为前端部分、处理部分以及数据库部分。
1、接收数据
数据接收服务器负责接收从设备发送过来的数据,它在设备和系统之间起着桥梁作用,一般采用的协议包括http、WebSocket等,还有一种就是MQTT新型协议,物联网领域将其作为标准协议,其是一种能实现一对多通信(人们称之为发布或订阅)的协议,它由3种功能构成,分别是中介、发布者和订阅者,如下图所示:
像这样借助于中介的发布/订阅型通信,MQTT就能实现物联网服务与多台设备之间的通信,另外,MQTT还实现了轻量型协议,因此它还能在网路带宽低、可靠性低的环境下运行,又因为消息小,协议机制简单,所以在硬件资源受限条件下也能运行,可以说是为物联网量身定做的协议。
2、数据格式
数据要经过协议进行交换,而数据的格式也很重要,通过Web协议来使用的数据格式中,具有代表性的包括XML和JSON,如下图所示:
相对来讲,XML容易理解,而JSON字符少,数据量小,更适合使用移动线路等低速线路通信的情况,基于物联网服务处理这些格式时,要把文本数据转化成数值数据和二进制数据,为了更迅速的处理数据,就产生了一种新数据格式,它就是MessagePack,虽然其不方便人们直接阅读,但计算机却很容易处理。
3、处理和存储数据
处理服务器就是处理接收的数据的地方,这里可以归纳成以下四种:数据分析、数据加工、数据保存及向设备发出指令,如下图所示:
数据处理包括批处理和流处理,数据存储包括关系型数据库和NoSQL数据库,具体可参考当前大数据平台的主流技术,比如批处理有Hadoop MR,Spark等,流处理有Spark Stream,Storm等,NoSQL数据库包括KV数据库(如Redis),文档数据库(如MongoDB)等。
4、发送数据
发送服务器的目的在于向设备发送数据并控制设备,发送服务器可以采用前面介绍过的HTTP、WebSocket、MQTT协议和数据格式,下面是使用MQTT协议发送数据的示例:
首先设备作为订阅者,向MQTT中介进行订阅,然后,发送服务器则是发布者,同样向中介进行发布,这样一来,发送服务器只需要把确定的数据加在主题上发送就行了,发送服务器和设备都不需要知道彼此的地址,只要知道中介的地址,就能够实现通信,一旦订阅者断开,中介就会负责在断开时发送通知,并在重新连接时再次发送数据。
这里介绍一个示例,近年来盛行在农业领域导入ICT技术,以往,环境控制都是由农户手工测量大棚内的问题以及控制植物的生长状况,现在则把重点放在实现完全自动化,以提高生产率,采用各种传感器来测量和记录(相当于接收数据)温度、湿度、二氧化碳及光照等数据,然后把从环境中感测到的数据和设定的阈值比较(相当于数据处理),从而实现自动控制空调,自动注入二氧化碳(相当于发送数据)。
六、数据分析
光是采集传感器和设备发来的数据,那就只不过是将一堆庞大的数据聚在一起而已,很难直接应用这些数据,为了实现更好的服务,需要从采集到的数据中分析出有价值的信息,只有通过对数据的分析,才有可能掌握机器的运转情况,找出其中蕴含的趋势,提前检测出今后可能会发生的异常情况,这样才能把整个物联网服务从一个单纯的采集数据的行为升华到一项创造附加价值的服务。
根据分析目的来区分,大体可以分为3种:基于采集的“可视化”分析,基于统计分析和机器学习等高级分析技术的“发现”分析和“预测”分析,如下图所示:
读了物联网,你会发现大数据分析师的前景光明,以前我们仅仅分析人,未来将分析无穷无尽的物,这是时代赋予数据人的机遇,物联网越发展,数据分析的价值就越大,现在还仅仅是个开始。
七、物联网市场
物联网市场是有若干个市场形成,包括作为物的设备市场,掌管物与物之间联系的网络市场,还有运营管理类的平台市场,分析采集到的数据的分析处理市场,如下图所示:
从前面的讲述可以看到,物联网是个复杂系统,涉及很多参与方,无论是华为、百度、运营商、阿里巴巴等等,都在说自己在布局物联网,那么他们到底说的是不是同一回事呢?
华为:偏重设备操作和网络,提出“1+2+1”物联网解决方案,包括物联网操作系统(设备太多,类似于要打造Android操作系统统一标准)、网关、有线无线(比如NB-IoT)等
百度:偏重Pass,涉及平台、分析处理和服务应用,提出百度天宫,包括AI、Big Data、Cloud等
中国移动:偏重网络,NB-IoT、OneNet平台,物联网卡,5G等
阿里巴巴:除了网络啥都有,提出“1234”物联网战略,包括物联网操作系统,设备芯片,网关及PaaS赋能
腾讯:偏重Pass,涉及平台、分析处理和服务应用,提出QQ物联等
其他比如中兴通讯、大唐电信、联通、电信、京东、小米、科大讯飞等都在相关市场发力,任何一家参与方都希望基于自己擅长的领域向两端延伸,打造赋能平台,从而扩大在产业的影响力。
希望对你理解物联网有所帮助。