你所说的这些只是不同角度概括,并不是哪一种技术都能归到物联网的每个层。也觉得没有必要去强调属于那一层。
物模型是云平台为物联网产品定义的数据模型,用于描述产品的功能。将产品抽象成数据的集合,方便云端进行控制。
物模型从 属性 、 服务 和 事件 三个维度,分别描述了该实体是什么、能做什么、可以对外提供哪些信息。定义了物模型的这三个维度,即完成了产品功能的定义。
TSL 格式是一个 JSON 格式的文件,完整的 TSL 格式可以参考: 阿里云物模型 。
嵌入式端开发固件往往只需要关注少数几个参数,可以在产品的 功能定义 页面,单击 物模型TSL , 精简物模型 里面查看。
需要关注的有 "properties","events","services",在 JSON 格式里,这三者都是数组,分别存储了该物模型的数据,事件和服务,在 C-SDK 里也就分别是 IOT_Linkkit_Report() 上报属性, IOT_Linkkit_TriggerEvent() 触发事件和注册为 ITE_SERVICE_REQUEST 的回调函数。
在上报属性时,只需要关注 "identifier" 名称对应的值(字符串),此时表示该属性在产品下的唯一标识。例如一个精简物模型属性为:
则上报的数据只需要为 {"count":10} 即可,需满足 JSON 字符串的格式,字符串内有一个名称/值对,名称为 "count"(物模型里 "identifier" 的值),值对为 10(满足物模型里数据类型为 int 的要求)。
触发事件需要关注 "identifier" 名称对应的值(字符串),表示该事件在产品下的唯一标识;还需要关注 "outputData",表示上报事件的输出值。一个精简物模型例子如下:
"outputData" 数组的使用与属性上报一致,这里就不介绍了。
服务调用需要同时关注 "identifier","inputData" 和 "outputData" 这三个名称,分别表示该服务在产品下的唯一标识,服务的输入参数,服务的输出参数。与函数调用有输入值和输出值类似,服务调用也有这些特征。
物模型数据校验方式目前有两种, 弱校验 和 免校验 。
也就是说,弱校验针对产品设备的上报数据,只要 idetifier 是一致的,且 dataType 字段满足要求,就接收该数据,并且在其他云端产品流转。
为什么云端可以设置和获取接入设备的属性呢?为什么接入设备可以上报事件给云端呢?又为什么云端可以调用接入设备提供的服务呢?这就是这一小节解释的内容。
物模型基于 MQTT 协议,MQTT 协议的介绍不在此处展开。
云端定义了一系列的 Topic,在设备接入云端时,C-SDK 向 MQTT broker 订阅了一些的 Topic,而云端需要与设备交互时,就向 MQTT broker 发布相应的 Topic,这样就完成了交互过程。同理,云端也会订阅一些 Topic,设备可以向这些 Topic 发布消息。
接入设备端订阅发布的 Topic 列表如下:
其中 ${productKey} 会替换为实际的产品名,${deviceName} 会替换为实际的设备名,${tsleventidentifier} 是事件的标识符,${tslserviceidentifier} 是服务的标识符,最大限度地保证了 Topic 的唯一性。
这些 Topic 的作用在后面用时序来描述。
物联网和互联网主要有三个方面的不同:1、物联网的覆盖范围要远大于互联网。互联网的产生是为了人通过网络交换信息,其服务的主体是人。而物联网是为物而生,主要为了管理物,让物自主的交换信息,间接服务于人类。
2、互联网用户通过端系统的服务器、台式机、笔记本和移动终端访问互联网资源,发送或接收电子邮件;写博客或读博客;通过网络电话通信;在网上买卖股票,定机票、酒店。而物联网中的传感器结点需要通过无线传感器网络的汇聚结点接入互联网。
3、物联网涉及的技术范围更广。物联网运用的技术主要包括无线技术、互联网、智能芯片技术、软件技术,几乎涵盖了信息通信技术的所有领域。而互联网只是物联网的一个技术方向。互联网只能是一种虚拟的交流,而物联网实现的就是实物之间的交流。
1、体系架构不同
从体系架构来看物联网通常被划分为感知层、网络层和应用层三个层次,在有些划分中也将物联网划分为四层或五层,增加了实体层及平台层,但不管是哪一种架构体系划分,感知层都是必不可少。而在互联网的体系架构中是没有感知层的。
物联网需要通过遍布各地的来感知并采集用户或工业数据,互联网不需要这个过程,互联网是只包含两层,网络层将各个计算通过网络连接起来,而应用层主要是通过系统支撑起各种应用。
2、作用不同
互联网着重信息的互联互通和共享,解决的是人与人的信息沟通问题;物联网则是通过人与人、人与物、物与物的相联,解决的是信息化的智能管理和决策控制问题。
3、发展的驱动力不同
互联网发展的驱动力是个人,因为互联网的开放性和人人参与的理念,互联网的生产者和消费者在很大程度上是重叠的,极大地激发了以个人为核心的创造力。
而物联网的驱动力必须是来自企业,因为物联网的应用都是针对实物的,而且涉及的技术种类比较多,在把握用户的需求以及实现应用的多样性方面有一定的难度。
物联网分为的三层分别是网络层、应用层、感知层:
1、网络层由各种私有网络、互联网、有线和无线通信网、网络管理系统和云计算平台等组成,相当于人的神经中枢和大脑,负责传递和处理感知层获取的信息。
2、应用层是物联网和用户(包括人、组织和其他系统)的接口,它与行业需求结合,实现物联网的智能应用。
3、感知层由各种传感器以及传感器网关构成,包括二氧化碳浓度传感器、温度传感器、湿度传感器、二维码标签、RFID标签和读写器、摄像头、GPS等感知终端。
物联网相关技术
1、地址资源
物联网的实现需要给每个物体分配唯一的标识或地址。最早的可定址性想法是基于RFID标签和电子产品唯一编码来实现的。
另一个来自语义网的想法是,用现有的命名协议,如统一资源标志符来访问所有物品(不仅限于电子产品,智能设备和带有RFID标签的物品)。这些物品本身不能交谈,但通过这种方式它们可以被其他节点访问,例如一个强大的中央服务器。
2、人工智能
自主控制也并不依赖于网络架构。但目前的研究趋势是将自主控制和物联网结合在一起在未来物联网可能是一个非决定性的、开放的网络,其中自组织的或智能的实体和虚拟物品能够和环境交互并基于它们各自的目的自主运行。
一股来说,构建物联网体系结构模型,应该遵循以下原则(或者说评价标准) : (1)多样性原则。物联网体系结构应根据物联网服务类型和结点的不同,分别设计多种类型的体系结构,不能也没有必要建立统一的标准体系结构。 (2)时空性原则。物联网尚在发展之中,其体系结构应满足物联网在时间、空间和能源方面的需求,可以集成不同的通信、传输和信息处理技术,应用于不同的领域。 (3)互联性原则。物联网体系结构需要平滑地与互联网实现互联互通,试图另行设计一套互联通信协议及其描述语言将是不现实的。 (4)互 *** 作性原则。对于不同的物联网系统,可以按照约定的规则互相访问、执行任务和共享资源。 (5)扩展性原则。对于物联网体系结构,应该具有一定的扩展性,以便最大限度地利用现有的网络通信基础设施,保护已投资利益。 (6)安全性原则。物联网系统可以保证信息的私密性,具有访问控制和抗攻击能力,具备相当好的健壮性和可靠性。物物互联之后,物联网的安全性将比计算机互联网的安全性更为重要,因此物联网的体系结构应具有防御大范围网络攻击的能力。讯维欢迎分享,转载请注明来源:内存溢出
评论列表(0条)