作者:与子同袍
首发:物联网前沿技术观察
童鞋们,要学习物联网,记住这句话就够了: CNTMD。
这句骂人话,既可以用来表达对物联网专业课程设置的不满,也可以用来掌握物联网的精髓。
此话怎讲?
CNTMD = Cloud云计算+Network网络+Thing物+Model模型+Data数据
当然,这么多每个都深入学不过来,可以在其中选几块深入学习,比如CNM,CTM,TMD,NTM等。
Cloud: 云计算
物联网是从现场的物到云端的端到端的解决方案。因此云端很重要。
云计算先学会Linux的使用,然后在阿里云或AWS上开账号,边用边学。
比如阿里云的ECS虚拟机、VPC网络服务、云盾、云盘等常规服务,AWS的EC2虚拟机、VPC虚拟专用网络、CloudWatch云监控、EBS弹性块存储、IAM权限管理等。
AWS的RDS关系数据库服务、NoSQL数据库服务、S3存储、Lambda函数等其他服务,也可以学习使用下。
要是这个基础会用了,再可以继续学习云服务商的物联网解决方案。
比如AWS的物联网“四书”:
AWS 物联网“四书”
这四个产品里,重点学习AWS IoT和AWS IoT Greengrass即可。要学的话,得先学前面这个,因为后者是基于前者的。
大家可以买个树莓派4,把AWS IoT的Device SDK(有Java,C,C++,Python, NodeJS五种语言的SDK)和Greengrass移植上去。然后按照官方文档走通基本的例子。
当然,要学习这个得知道点MQTT协议。
Network:网络
网络包括两部分,网络通信和计算网络协议。
前者包括GPRS,4G, WI-FI, 蓝牙, NB-IoT, Lora等。这些东西的学习都需要根据相应的硬件通讯模块厂商的文档和程序来学习实践最好,不然不动手实践很难理解。
后者则主要掌握计算机网络的七层协议。每一层的典型协议都要把原理掌握。然后重点掌握四层和七层协议,也就是TCP,HTTP。
学习过程中要学习Richard Stevens的《TCP/IP详解》第一卷的动手实证精神,用软件(wireshark+tcpdump)抓包,然后用wireshark可视化分析每一帧。
由于安全传输的要求,不管是HTTPS还是MQTTS,都需要TLS协议。因此TLS协议原理也要掌握。
另外,由于不管是物联网云平台还是边缘计算,接口通常都是用的RESTful API,因此RESTful接口的调用和开发也要掌握。
Thing:物
物联网的物有很多种。但不管是PLC,传感器,机器人,运动控制器,空调,都需要掌握最基础的SPI、RS-232/RS-485串口通讯,TCP客户端服务端通信,Modbus, OPC UA。
更深入下去,可以学习工业现场总线的标准(如CAN总线等)和行业标准。
当然现在随着硬件性能提升,有的PLC工控设备自带RESTful API,那么也可以通过调用RESTful接口方式进行通讯。
Model:模型
物联网的模型比较多,最重要的是OSI的7层模型,操作系统分层模型、虚拟机模型,面向对象模型,软件需求模型,状态机模型,数据库关系代数模型,微服务模型(在物联网边缘计算和云计算都很重要),PLC运行模型,边缘计算架构模型(如EdgeX Foundry),云计算架构模型(其实把AWS的主要服务使用一下,就基本可以明白了),工业互联网架构模型(如IIC架构),PAAS架构模型(比如CloudFoundry),OPC UA统一架构模型,物联网安全模型,API网关模型,业务模型(UML、BPM、用例、DDD、Togaf、EA)等。
Data:数据
数据包括数据采集,数据传输,数据存储,数据分析,数据展示。
数据采集在物里面讲了。
数据传输:MQTT协议、MQTT代理服务器的安装部署配置监控、JSON和主流二进制序列化框架。
数据存储:SQL基础,数据库理论,Nosql(DynamoDB、MongoDB),Hadoop/ Hbase,Redis。
数据分析:学点CEP流处理和聚合的基础,可以先用Esper这个工业互联网上常用的流计算引擎上手。
数据展示:GIS如Web地图API调用和OGC标准、Threejs、Dashboard、Web组态、SVG、Highcharts,echarts。
推荐阅读:
- 【笨办法学物联网】之一: 物联网工程专业四年里应该学习哪些实用技能傍身?
- 【笨办法学物联网】之二: 物联网工程专业到底培养的是什么人才?物联网全栈工程师
- 【笨办法学物联网】之三:物联网工程专业10步学习法
- 【笨办法学物联网】之四:99个物联网动手实践项目
- 【笨办法学物联网】之五:软硬件学习环境准备
更多物联网,边缘计算相关技术干货请关注我的专栏物联网前沿技术观察
申请加入物联网技术研讨大佬微信群,请加微信号:iot1999。