IOT学习笔记(一):初步了解IOT

IOT学习笔记(一):初步介绍

  • 1.背景说明
  • 2.物联网技术体系
    • 2.1应用层
      • 2.1.1 3D视图
      • 2.1.2 2.5D视图
    • 2.2 平台层
      • 2.2.1 巨头平台
      • 2.2.1 开源平台
    • 2.3网络层
    • 2.4感知层

1.背景说明

        初次接触物联网还是5年前,那时候还是移动互联网的时代,物联网根本看不上眼;转眼5年过去,当初的当红炸子鸡已经变的不是那么热情了,如同寒武纪物种大爆发后的上万年优胜劣汰的演变,已经是物竞天择,适者生存的时代了,移动互联网也慢慢褪去了热情,回归到理性。
        而这时候,反观物联网,人工智能,大数据慢慢的占据主要市场,成为一片新的蓝海,越来越多的机会在这些领域涌现;越来越多的人才,资本的进入,相信在不远的未来,也会像移动互联网那样生机勃勃,充满机会。

2.物联网技术体系

先上一张图,对物联网整体有个认识。
IOT学习笔记(一):初步了解IOT_第1张图片
物联网大致分为四层,从上到下依次是:应用层,平台层,网络层和感知层,网络层和感知层更多会和硬件关联性大,显示层和用户最直接交互,那么平台层就是人和硬件连接的纽带,一个好的平台层可以抹掉人和物的差异,这也就是物联网的妙处,最后物还是要为人服务,接下来就简单说下这四层的关系。

2.1应用层

       如果你是做互联网出身的,那么对应用层应该很熟悉,这层就是面向用户的,这里的用户一般指ToB用户,例如商场中的监控室,经理等,但不局限,也可以是ToC用户,主要就是提供一个可视化的界面,让用户可以查看状态,实现一些交互操作行为;
       因为这层主要是UI展示和客户的实际想法,所以并没有特别成熟的产品可供使用;这里需要注意的是,传统的交互多以平面交互为主,这种已经有很多现成控件可供使用,也可以让前端开发人员定制开发,难度都不大;但是近些年流行起2.5D/3D交互,做的好效果确实惊艳,但是因为刚开始,整个问题还比较多,例如建模的性能问题,成本问题,小一些的项目根本无法承受少则十几万,多则上百万的研发费用;

2.1.1 3D视图

       3D建模国内有一些先行者,精耕物联网领域,也已经有一些沉淀,具有代表性的如:
(1)优诺ThingJS(http://www.thingjs.com),但需要说明的是他们使用的底层技术也是国外开源方案Threejs,这个方案也是很多页游使用的方案;优诺的优势在于使用这个平台在物联网垂直领域做了很多优化,实现了很多控件,在优诺平台上做二次开发,可以省去不是时间成本,但笔者让一个10年经验的前端开发者接入这个平台建模,给出的回答也是非常耗时,建模成本过高;
优诺除了提供平台工具外,也可以代工开发,咨询后发现收费略高,这也是一般项目对3D望而却步的原因;
因为不能放视频,所以截个图大家看看效果,需要视频的可以私信我,文件略大;

(2)blend4web(https://www.blend4web.com),国外针对三位小场景开源框架,因为时间原因,没有深入研究;
(3)threejs(https://threejs.org/),前端3D建模框架,开源,不是针对物联网的,所以建模需要从头做,不适合无经验开发者和小公司;

2.1.2 2.5D视图

说完了3D,聊聊退而求其次的方案2.5D,其实这么说不太公平,2.5在很多方面还是要优于3D的,没有最好的技术方案,只有最合适的技术方案;
2.5D在性能和成本控制上要优于3D很多;目前国内2.5D建模方案提供商很多,这里举几个我调研过的,仅供参考。
(1)易景空间(https://www.esmap.cn),深圳的一家公司,提供在线地图编辑器,室内/室外地图整体解决方案,室内定位解决方案,地图私有/共有云部署等;收费是按照平米收,费用基本是3D建模的十分之一或者更低;
放一张效果图,直观感受下;
IOT学习笔记(一):初步了解IOT_第2张图片
在这里还要说明下,受限于前端设备的性能,尤其是手机端,上3D基本不可能,所以在移动端2.5是首选,建模做的好,效果上其实差不了太多。
(2)百度地图/腾讯地图/高德地图,这些地图厂家也做地图类的定制方案,但是积极性不高,还有外包给三方做的,就不详细说明了;

除了以上说的需要建模的展示外,其他显示控件有不少大平台提供了现成控件供开发者使用,例如阿里云平台的http://datav.aliyun.com ;里面有不少淘宝天猫等积累的控件,还有一些开发者开发的,也提供工具自己组合。

2.2 平台层

       平台层其实算是整个物联网的一个核心,如果把感知层比作手脚,鼻子,眼镜,网络层比作神经系统,那平台层绝对是大脑,负责数据收集,处理和反馈。

2.2.1 巨头平台

       目前物联网平台层也是各个巨头投入的重点,带头的包括阿里云物联网平台,中移物联网,华为物联网等,其中以阿里云最大,据不可靠数据,接入的物联网设备已经40亿+了。
       除了这些巨头的平台,大部分公司现在更愿意自己开发平台层,其中的原因很多,包括数据安全,协议不同,可选设备有局限等,举个例子,你想接入阿里云的网联网平台,那你的设备必须刷阿里云的sdk,这个对设备选择就产生了局限,而且很多阿里云生态企业也是一边支持阿里云的设备,一边搭建自己的平台,两边协议和产品批次还有差异,兼容和数据处理都是问题。

2.2.1 开源平台

       除了大平台,还有哪些物联网开源平台可供选择呢?
下面这片文章整理了目前市面上90%以上的开源平台,可供大家参考:https://www.freebuf.com/articles/paper/194382.html
       这里面如何选择,首先第一语言,我肯定java优先,非java的排除,第二,github的star,目前物联网平台star都不多,但是ThingsBoard是java中最多的,所以ThingsBoard就成为了我的首选。
https://thingsboard.io/docs/user-guide/install/docker/
https://github.com/thingsboard/thingsboard
这是thingsboard的官网和github地址,下一篇就开始做开发环境的搭建。

2.3网络层

       网络层连接硬件传感器和平台,是数据回传的通道;这里依赖各种网络,例如wifi,移动网络,局域网等,也依赖于一些硬件设备,例如网关(很多传感器是没有网络传输能力的,需要经由网关进行中转)。
       传输最为重要的就是传输协议了,物联网现有的传输协议非常多,常用的包括Larawan,NB-IOT,modbus-rtu等,后续专门一篇来说明这些协议吧。

2.4感知层

各种硬件传感器,温度湿度传感器,烟雾传感器等等。

物联网技术的初步说明先写这么多,欢迎批评指正。

你可能感兴趣的:(物联网)