阿里云物联网平台 Alink 协议简介 | 学习笔记

简介: 快速学习 阿里云物联网平台 Alink 协议简介

开发者学堂课程【物联网平台开发全栈教程阿里云物联网平台 Alink 协议简介学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/562/detail/7695


阿里云物联网平台 Alink 协议简介


内容介绍

一、基于 Ainki 协议开发

二、物模型

三、设备属性上报

四、设备属性下行


一、基于 Ainki 协议开发

1. Ainki 协议

Ainki 协议其实是设备动态云端开发的,比如说开发业务逻辑的。前端开发的,后台开发的等等,所有的人员围绕阿里云 IoT 服务器遵守的同一个协议标准。之后以某一格式登上了数据。经过平台简单处理之后,就会成为一个标准的 API 或者一个标准的数据放在平台上,就可以直接把它转发到数据库里那么后端开发,业务逻辑开发的,可以直接通过 api 来调用一台设备全部的数据。这样的就接拢设备的开发或云端开发两个工种之间他们的协同问题,极大地提高了物联网系统开发的效率。

物联网平台为设备端开发提供了 SDK,这些 SDK 已封装了设备端与云端的交互协议。您可以直接使用设备端SDK来进行开发。如果嵌入式环境复杂,已提供的设备端 SDK 不能满足您的需求,自行封装 Alink 协议数据,建立设备与云端的通信。

Alink 协议是针对物联网开发领域设计的一种数据交换规范,数据格式是 JSON,用于设备端和云端的双向通信,更便捷地实现和规范了设备端和云端之间的业务数据交互。

以下为您介绍 Alink 协议下,设备的上线流程和数据上下行原理。

2.上线流程

设备在物联网平台的上线流程,可以按照设备类型,分为直连设备与子设备的接入流程。主要包括:设备注册、激活上线和数据上报三个流程。

直连设备接入有两种方式:

1.使用一机一密方式提前烧录设备证书(ProductKeyDeviceNameDeviceSecret),注册设备,上线,然后上报数据。

2.使用一型一密动态注册提前烧录产品证书(ProductKey ProductSecret),注册设备, 上线,然后上报数据。

子设备接入流程通过网关发起,具体接入方式有两种:

1.使用一机一密提前烧录设备证书(ProductKeyDeviceName DeviceSecret),子设备上报设备证书给网关,网关添加拓扑关系,复用网关的通道上报数据。

2.使用动态注册方式提前烧录 ProductKey,子设备上报 ProductKey DeviceName 给网关,物联网平台校验DeviceName 成功后,下发 DeviceSecret。子设备将获得的设备证书信息上报网关,网关添加拓扑关系,通过网关的通道上报数据。

image.png

3.设备上班属性或事件

image.png

I:使用透传格式的 Topic,设备上报透传数据。

Ii:云端通过脚本先对设备上报的数据进行解析。调用脚本中的 rawDataToProtocal 方法将设备上报的数据转化为 lo平台标准数据格式(Alink JSON 格式)

4.设备服务调用或属性设置

image.png

服务器想设置设备的属性,有一个开关是通过模拟设备发送开关是开还是关,其实想控制开关。那肯定是点了鼠标说想控制这个开关是开还是关,或者说云服务反映过几个简单的联动,经过计算,说好一个数值达标了,比如说温度超过了20度。需要管理参观,经过联动之后发一个信息,发给设备之后,如果说他想要返回结果,才会返回。如果说这个场合是小硬件就没有返回结果,因为它就是简单的开关。


二、物模型

1.  概述:

物模型指将物理空间中的实体数字化,并在云端构建该实体的数据模型。在物联网平台中,定义物模型即定义产品功能。完成功能定义后,系统将自动生成该产品的物模型。物模型描述产品是什么,能做什么,可以对外提供哪些服务。

物模型,简称 TSL,即 Thing Specification Language。是一个 JSON 格式的文件。它是物理空间中的实体,如传感器、车载装置、楼宇、工厂等在云端的数字化表示,从属性、服务和事件三个维度,分别描述了该实体是什么,能做什么,可以对外提供哪些信息。定义了这三个维度,即完成了产品功能的定义。

物模型将产品功能类型分为三类:属性、服务、和事件。定义了这三类功能,即完成了物模型的定义。

约定好属性,事件,服务。可以添加各种。

1)属性:这里一般用于描述设备运行时的状态,如环境监测设备所读取的当前环境温度等。属性支持 GET SET 请求方式。应用系统可发起对属性的读取和设置请求。

2)服务:是设备可被外部调用的能力或方法.可设置输入参数和输出参数。相比于属性,服务可通过—条指令实现更复杂的业务逻辑,如执行某项特定的任务。

3)事件:是设备运行时的事件。事件一般包含需要被外部感知和处理的通知信息,可包含多个输出参数。如,某项任务完成的信息,或者设备发生故障或告警时的温度等。事件可以被订阅和推送。

2.  格式

物模型以 JSON 格式表达,简称为 TSL(Thing Specification Language)。本文提供物模型的JSON字段说明.您可以在产品的功能定义页面,单击查看物模型,查看 JSON 格式的 TSL


三、设备属性上报

如果产品定义了物模型,设备可以上报属性和事件信息,服务端可以下发设置属性和调用服务指令。

设备的数据上报方式有两种:ICA 标准数据格式(Alink JSON)和透传/自定义。两者二选一,推荐您使用 Alink JSON 方式。

1. ICA 标准数据格式(Alink JSON):

设备按照物联网平台定义的标准数据格式生成数据,然后上报数据。

(1)上行(透传)

Topic/sys/{productKey}/{deviceName}/thing/model/up_raw

REPLY Topic/sys/{productKey}/{deviceName}/thing/model/up_raw_reply

(2)上行(非透传)

Topic/sys/{productKey}/{deviceName}/thing/event/property/post

REPLY Topic/sys/{productKey}/{deviceName}/thing/event/property/post_reply

2. 透传/自定义:

设备上报原始数据如二进制数据流,阿里云物联网平台会运行您在控制台提交的数据解析脚本,将原始数据转成标准数据格式后,再进行业务处理。而云端返回的是标准 Alink JSON 格式,返回结果经数据解析后,再推送给设备。

3. 属性上报遵循格式

{

"id": "123",

"version": "1.0",

"sys":{

"ack":0

},

"params": {

"Power": {

"value": "on",

"time": 1524448722000

},

"WF": {

"value": 23.6,

"time": 1524448722000}

},

"method": "thing.event.property.post"//此方法最重要

}

4. 服务器响应数据格式

{

"id": "123",

"code": 200,

"data": {}

}


四、设备属性下行

1. 下行(透传)

Topic/sys/{productKey}/{deviceName}/thing/model/down_raw

REPLY Topic/sys/{productKey}/{deviceName}/thing/model/down_raw_re

2. 下行(非透传)

Topic/sys/{productKey}/{deviceName}/thing/service/property/set

REPLYTopic/sys/{productKey}/{deviceName}/thing/service/property/set_reply

相关实践学习
钉钉群中如何接收IoT温控器数据告警通知
本实验主要介绍如何将温控器设备以MQTT协议接入IoT物联网平台,通过云产品流转到函数计算FC,调用钉钉群机器人API,实时推送温湿度消息到钉钉群。
阿里云AIoT物联网开发实战
本课程将由物联网专家带你熟悉阿里云AIoT物联网领域全套云产品,7天轻松搭建基于Arduino的端到端物联网场景应用。 开始学习前,请先开通下方两个云产品,让学习更流畅: IoT物联网平台:https://iot.console.aliyun.com/ LinkWAN物联网络管理平台:https://linkwan.console.aliyun.com/service-open
相关文章
|
7天前
|
存储 边缘计算 物联网
阿里云物联网平台:推动万物互联的智能化解决方案
随着物联网技术的快速发展,阿里云物联网平台为企业提供了一体化的解决方案,包括设备接入、数据管理和智能应用等核心功能。平台支持海量设备接入、实时数据采集与存储、边缘计算,并具备大规模设备管理、高安全性和开放生态等优势。广泛应用于智能制造、智慧城市和智能家居等领域,助力企业实现数字化转型。
56 5
|
2月前
|
物联网 C# 智能硬件
智能家居新篇章:WPF与物联网的智慧碰撞——通过MQTT协议连接与控制智能设备,打造现代科技生活的完美体验
【8月更文挑战第31天】物联网(IoT)技术的发展使智能家居设备成为现代家庭的一部分。通过物联网,家用电器和传感器可以互联互通,实现远程控制和状态监测等功能。本文将探讨如何在Windows Presentation Foundation(WPF)应用中集成物联网技术,通过具体示例代码展示其实现过程。文章首先介绍了MQTT协议及其在智能家居中的应用,并详细描述了使用Wi-Fi连接方式的原因。随后,通过安装Paho MQTT客户端库并创建MQTT客户端实例,演示了如何编写一个简单的WPF应用程序来控制智能灯泡。
75 0
|
2月前
|
物联网 网络性能优化 Python
"掌握MQTT协议,开启物联网通信新篇章——揭秘轻量级消息传输背后的力量!"
【8月更文挑战第21天】MQTT是一种轻量级的消息传输协议,以其低功耗、低带宽的特点在物联网和移动应用领域广泛应用。基于发布/订阅模型,MQTT支持三种服务质量级别,非常适合受限网络环境。本文详细阐述了MQTT的工作原理及特点,并提供了使用Python `paho-mqtt`库实现的发布与订阅示例代码,帮助读者快速掌握MQTT的应用技巧。
62 0
|
3月前
|
存储 运维 监控
阿里云物联网平台的优势
【7月更文挑战第19天】阿里云物联网平台的优势
66 1
|
3月前
|
供应链 网络协议 安全
物联网协议包含哪些协议?
物联网协议是物联网生态系统中不可或缺的组成部分,它们负责处理和协调物联网设备之间的通信。
64 3
|
22天前
|
存储 安全 物联网
未来触手可及:区块链技术、物联网与虚拟现实的融合趋势
【9月更文挑战第34天】本文将探讨当前最具变革性的三大技术——区块链、物联网(IoT)和虚拟现实(VR)——如何独立及联合塑造我们的未来。我们将深入分析每种技术的内在工作机制、发展趋势,以及它们如何相互交织创造出新的应用场景,进而推动社会进步和经济发展。
|
21天前
|
供应链 物联网 区块链
未来技术的浪潮之下——区块链、物联网与虚拟现实的融合与发展
【9月更文挑战第35天】在技术不断进步的今天,新兴技术如区块链、物联网和虚拟现实正在改变我们的生活方式。本文将深入探讨这些技术的发展趋势,以及它们如何在不同领域中应用,从而带来创新和便利。我们将通过具体的例子来展示这些技术如何相互融合,共同推动社会向前发展。
|
2天前
|
存储 供应链 物联网
探索未来:区块链、物联网与虚拟现实技术的融合与创新
【10月更文挑战第15天】本文深入探讨了新兴技术如区块链、物联网(IoT)和虚拟现实(VR)的发展趋势及其在现代社会的应用。通过分析这些技术的独特属性和它们如何相互补充,我们揭示了一个由高度互联、智能化和沉浸式体验定义的未来图景。文章不仅讨论了这些技术当前的挑战,还展望了它们在未来可能带来的转变,旨在为读者提供对这些令人兴奋的技术趋势的全面理解。
|
2天前
|
安全 物联网 区块链
未来已来:探索区块链技术、物联网与虚拟现实的融合趋势
【10月更文挑战第15天】 在数字化浪潮中,区块链、物联网(IoT)和虚拟现实(VR)技术正引领着一场革命。本文将深入探讨这三种技术的发展趋势和相互融合的潜力,以及它们如何共同塑造我们的未来。我们将从基本概念入手,逐步揭示这些技术如何影响经济、社会和日常生活,同时提供具体应用场景以展示其变革力量。
|
4天前
|
传感器 监控 物联网
新技术趋势与应用在科技日新月异的今天,新兴技术如物联网、虚拟现实等正以前所未有的速度改变着我们的生活。本文将深入探讨这些技术的发展趋势和应用场景,揭示它们如何塑造未来。
本文聚焦于物联网和虚拟现实等新兴技术的发展动态及其广泛应用。通过分析当前技术进展、实际应用案例以及未来发展的可能性,本文揭示了这些技术如何深刻影响各行各业,并对未来的趋势进行了展望。

相关产品

  • 物联网平台