Matter协议

Matter协议

  • Matter协议简介
    • 跨平台能力
    • 本地通信能力
  • Matter数据模型
    • Node(节点)
    • Endpoint(端点)
    • Cluster(功能组)
    • Attribute(属性)
    • Command(命令)
  • 设备数据交互
    • 同步控制
    • 异步控制
    • 参考链接

Matter协议简介

Matter 是由 CSA 连接标准联盟 (Connectivity Standards Alliance) 发起,多家行业领先公司联合推出的智能家居互联协议。

于现有的IOT物联网通信相比,Matter最大的特点是拥有跨平台能力以及本地通信能力

跨平台能力

在 Matter 推出之前,每家设备厂商生产的智能家居设备只能通过自己的 App 控制,无法和其他生态设备互联。但通过 Matter 协议,所有支持 Matter 的 App 和硬件设备均可轻松无缝互联,协同工作

目前,华为、小米、亚马逊、苹果、谷歌和三星等公司均已宣布支持 Matter。这意味着我们日常生活中常见的智能设备控制终端(如 iOS/安卓手机、语音助手、智能音箱等)均将支持 Matter 协议。用户甚至不需要单独的 Matter 设备 App,就可直接控制 Matter 设备。
Matter协议_第1张图片

本地通信能力

Matter协议支持多种通信方式,比如WiFi、蓝牙、Zigbee、Thread(802.15.4)等。
设备之间的通信无需通过APP或者云服务器设备之间进行绑定后,本地局域网内就可以做到设备之间的控制,比如开关控制一个灯泡。当然也可以通过APP和云服务器进行远程控制。

Matter数据模型

Matter协议_第2张图片

Node(节点)

一个设备就是一个节点,每个节点可以有不同的功能、角色(服务端:灯泡、客户端:开关)。

Endpoint(端点)

每个设备都有不同的子模块,如上图的灯有两种子模块(两种灯泡),可调光(Dimmable Light )和开关灯(On/Off Light),每个子模块就是一个端点,也可以想象成一个虚拟设备,每个节点可以拥有多个端点。

其中,每个节点的第一个端点 Endpoint 0 用于提供一些适用于整个节点的服务,因此需要保留,比如固件版本、制造商等。

Cluster(功能组)

个人理解类似蓝牙的uuid,Cluster代表端点拥有的功能。

以上图为例:Dimmable Light (Endpoint 1) 中有 2 个 Cluster:On/Off Cluster:打开或关闭设备,控制灯泡的开关。
Level Control Cluster:配置设备电平,调节灯泡的亮度。

此外,Cluster还可以分为服务端(server)客户端(client),每个Cluster均有自己的服务端以及对应的客户端。
服务端提供设备的功能,比如开关。
客户端对服务端相应的功能进行控制,比如手机APP控制。
Matter协议_第3张图片

Attribute(属性)

Attribute 表示可以读取或写入的内容,类似于一个key,作为具体功能的标识。
以上图为例:
On/Off Cluster 包含一个 OnOff Attribute,代表设备实际打开或关闭的状态。
Level Control Cluster 包含一个 CurrentLevel Attribute,代表设备的电平等级。

Attribute 既可以长期有效,也可以在设备重启之后失效;读写权限也可设置为“只读”或“可读可写”。

Matter 规范中的 Attribute 支持丰富的数据类型:包括典型值、布尔值、整数(有符号/无符号)、浮点数、枚举数、字符串,甚至集合(列表或数据结构)。

Command(命令)

Command 代表具体的控制命令。每条 Command 可以有自己的参数。
以上图为例:
On/Off Cluster 中的 On,Off,Toggle(切换开关)Command。
Level Control Cluster 中的 MoveToLevel(设置电平) Command。

设备数据交互

Matter设备之间的数据交互,其实是Cluster 服务器和客户端之间的通信。终端用户可以配置家中的 Matter 设备,使其与一个或多个设备进行交互。
配置Matter设备的方式即是设备绑定。绑定代表一种持久的连接关系,为一个端点与其他一个或多个端点提供安全的数据交互。用户可以(通过 Matter 手机 App)将来自不同厂商的不同设备绑定。

同步控制

同步控制相当于Cluster 客户端向Cluster 服务端发送Command命令,服务端收到后反馈结果。

以上述开关为例,开关作为绑定 Cluster 服务器,用户通过手机 APP 中的绑定 Cluster 客户端来发送绑定指令。能够提供绑定服务的绑定开关收到绑定指令后,会主动和灯泡建立一个安全的通信链路,之后用户对开关的任何操作(开或关)就会同步反映至灯泡上。

异步控制

异步控制通过订阅-发布的方式,Cluster 客户端订阅Cluster 服务端的Attribute 或 Event,成功后Cluster 客户端就可以接收来自Cluster 服务端的数据。
注:Event也是 Cluster 的一部分。

参考链接

https://zhuanlan.zhihu.com/p/451354647

学习笔记,有问题欢迎指出

你可能感兴趣的:(嵌入式,物联网,iot)