天猫精灵蓝牙mesh设备模型解析

简介: 本文根据《蓝牙mesh协议》,介绍与天猫精灵适配的蓝牙mesh设备在软件上的模型架构;希望通过该文章让初次接触蓝牙mesh的同学掌握蓝牙mesh设备的模型概念,理解蓝牙mesh设备模型与设备之间的关联。根据《蓝牙mesh协议》中定义,蓝牙mesh设备的模型架构主要分为Element(元素)、Model(模型)两部分;天猫精灵蓝牙mesh设备在这两部分的基础上增加属性概念(具体可参考《蓝牙mesh扩展协议》)。在创建一个适配于天猫精灵生态的蓝牙mesh设备时,我们先根据产品具体特性,抽象出产品具体属性,然后根据属性选择对应的Model,最后再根据设备特性确定Element。

一、蓝牙mesh设备模型概念介绍

1.1 产品属性
产品属性是一个类型产品具体要实现的功能抽象。
例:
一个灯要具备开关功能,则该设备需要具备“开关”属性。
一个风扇需要能支持控制左右摇头,则该设备需要具备“摇头”属性。
具体一个产品需要支持的基础属性可以参考相应品类的《产品规范》。

1.2 Model
根据《蓝牙mesh协议》定义,Model分为Server Model和Client Model;在天猫精灵蓝牙mesh设备上配置的Model均为Server Model,表示该设备具有特定的业务能力。
在《蓝牙mesh协议》中,将不同场景下的一系列相关操作定义为Model;可以认为Model就是对一系列特定属性的操作合集。
类似的,在天猫精灵生态中,根据产品抽象的属性,选择对应的Model。可以认为每个Model对应一个特定的业务。
《蓝牙mesh协议》中定义了Configuration Server Model和Health Server Model用于配置和管理蓝牙mesh网络。其中Configuration Server Model仅存在于设备的Primary Element(主元素)上,其他Element不需要添加该model;Health Server Model必须存在于设备的Primary Element上,其他Element则可以根据需要选择是否添加该模型。

1.3 Element
天猫精灵蓝牙mesh设备定义一个Element代表一个具有完整功能属性的设备;对于重复型设备(比如多位开关/插座),每个独立控制单元做为一个Element;对于复合型设备(比如风扇灯),不同Element控制设备上对应的设备属性(比如风扇和灯由2个不同的Element控制)。
根据《蓝牙mesh协议》定义,Element定义了mesh设备所支持的Model。每个Element上可以存在多个不同的Model,相同的Model也可以存在于一个设备不同的Element上。

1.4 天猫精灵蓝牙mesh设备Model
1.4.1 Configuration Server Model
如上文所述,该Model存在于设备Primary Element上。
1.4.2 Health Server Model
天猫精灵蓝牙mesh设备的Health Server Model主要用于上报心跳包,因此规定需要在Primary Element上添加该Model,其他Element上不用添加Health Server Model。
1.4.3 业务相关Model
除上述Configuration Server Model和Health Server Model之外,天猫精灵蓝牙mesh设备还使用了5种Model来实现设备具体功能。
• Generic OnOff Server Model
• Lightness Server Model
• CTL Server Model
• Scenes Server Model
• Vendor Server Model
当一个设备需要有一个开关属性时,则必须配置Generic Onoff Server Model。
Lightness Server Model、CTL Server Model、Scenes Server Model这3个model分别对应设备的亮度、色温、场景属性。
设备定义的其他属性均在Vendor Server Model中实现,具体看参考《蓝牙mesh扩展协议》。

二、模型范例

2.1 灯
2.1.1 属性分析
灯是目前天猫精灵生态中应用最广泛的产品品类,该类型产品包含各种不一样的灯具,常见的除了支持开关的普通灯外,还有调光灯、色温灯、彩灯、色温+彩色灯;部分灯具还会有场景模式要求;因此该类型设备需要用的属性分别是开关、亮度、色彩、色温、场景共5个属性。根据前面提到的天猫精灵蓝牙mesh设备支持的5种设备模型,此类设备需要支持的Model是Generic OnOff Server Model、Lightness Server Model、CTL Server Model、Scenes Server Model与Vendor Server Model。

2.1.2 设备模型
具体该品类设备模型如下表:
image.png

2.2 单孔插座
2.2.1 属性分析
单孔插座类型的产品需要具备最基础的开关功能,同时部分插座有定时开关的功能需求;因此此类设备需要支持的Model是Generic OnOff Server Model与Vendor Server Model。
2.2.2 设备模型
具体该品类设备模型如下表:
image.png

2.3 多位面板/多孔插座
2.3.1 属性分析
多位面板/插座功能属性于单孔插座一致,但需要支持更多的控制位/孔位;因此定义此类设备为多Element设备,每个Element需要支持的Model是Generic OnOff Server Model与Vendor Server Model。
2.3.2 设备模型
具体该品类设备模型如下表:
image.png
image.png

2.4 风扇灯
2.4.1 属性分析
风扇灯品类是一个复合型产品,灯和风扇都要有独立的开关控制;因此定义此类设备为多Element设备,不同Element分别对应风扇的属性操作和灯的属性操作。控制风扇的Element包括Generic OnOff Server Model用于控制风扇开关,以及Vendor Server Model用于控制风扇其他属性,如:风速、摇头、定时等。控制灯的Element参考本文1.1章节。
2.4.2 设备模型
具体该品类设备模型如下表:
image.png

相关文章
|
11月前
|
机器学习/深度学习 人工智能 算法
DeepSeek技术报告解析:为什么DeepSeek-R1 可以用低成本训练出高效的模型
DeepSeek-R1 通过创新的训练策略实现了显著的成本降低,同时保持了卓越的模型性能。本文将详细分析其核心训练方法。
1234 11
DeepSeek技术报告解析:为什么DeepSeek-R1 可以用低成本训练出高效的模型
|
10月前
|
监控 Shell Linux
Android调试终极指南:ADB安装+多设备连接+ANR日志抓取全流程解析,覆盖环境变量配置/多设备调试/ANR日志分析全流程,附Win/Mac/Linux三平台解决方案
ADB(Android Debug Bridge)是安卓开发中的重要工具,用于连接电脑与安卓设备,实现文件传输、应用管理、日志抓取等功能。本文介绍了 ADB 的基本概念、安装配置及常用命令。包括:1) 基本命令如 `adb version` 和 `adb devices`;2) 权限操作如 `adb root` 和 `adb shell`;3) APK 操作如安装、卸载应用;4) 文件传输如 `adb push` 和 `adb pull`;5) 日志记录如 `adb logcat`;6) 系统信息获取如屏幕截图和录屏。通过这些功能,用户可高效调试和管理安卓设备。
|
自然语言处理
高效团队的秘密:7大团队效能模型解析
3分钟了解7大团队效能模型,有效提升团队绩效。
1302 7
高效团队的秘密:7大团队效能模型解析
|
11月前
|
人工智能 自然语言处理 算法
DeepSeek模型的突破:性能超越R1满血版的关键技术解析
上海AI实验室周伯文团队的最新研究显示,7B版本的DeepSeek模型在性能上超越了R1满血版。该成果强调了计算最优Test-Time Scaling的重要性,并提出了一种创新的“弱到强”优化监督机制的研究思路,区别于传统的“从强到弱”策略。这一方法不仅提升了模型性能,还为未来AI研究提供了新方向。
1551 9
|
机器学习/深度学习 人工智能 PyTorch
Transformer模型变长序列优化:解析PyTorch上的FlashAttention2与xFormers
本文探讨了Transformer模型中变长输入序列的优化策略,旨在解决深度学习中常见的计算效率问题。文章首先介绍了批处理变长输入的技术挑战,特别是填充方法导致的资源浪费。随后,提出了多种优化技术,包括动态填充、PyTorch NestedTensors、FlashAttention2和XFormers的memory_efficient_attention。这些技术通过减少冗余计算、优化内存管理和改进计算模式,显著提升了模型的性能。实验结果显示,使用FlashAttention2和无填充策略的组合可以将步骤时间减少至323毫秒,相比未优化版本提升了约2.5倍。
661 3
Transformer模型变长序列优化:解析PyTorch上的FlashAttention2与xFormers
|
网络协议 安全 网络安全
探索网络模型与协议:从OSI到HTTPs的原理解析
OSI七层网络模型和TCP/IP四层模型是理解和设计计算机网络的框架。OSI模型包括物理层、数据链路层、网络层、传输层、会话层、表示层和应用层,而TCP/IP模型则简化为链路层、网络层、传输层和 HTTPS协议基于HTTP并通过TLS/SSL加密数据,确保安全传输。其连接过程涉及TCP三次握手、SSL证书验证、对称密钥交换等步骤,以保障通信的安全性和完整性。数字信封技术使用非对称加密和数字证书确保数据的机密性和身份认证。 浏览器通过Https访问网站的过程包括输入网址、DNS解析、建立TCP连接、发送HTTPS请求、接收响应、验证证书和解析网页内容等步骤,确保用户与服务器之间的安全通信。
815 3
|
网络协议 安全 文件存储
动态DNS(DDNS)技术在当前网络环境中日益重要,它允许使用动态IP地址的设备通过固定域名访问
动态DNS(DDNS)技术在当前网络环境中日益重要,它允许使用动态IP地址的设备通过固定域名访问,即使IP地址变化,也能通过DDNS服务保持连接。适用于家庭网络远程访问设备及企业临时或移动设备管理,提供便捷性和灵活性。示例代码展示了如何使用Python实现基本的DDNS更新。尽管存在服务可靠性和安全性挑战,DDNS仍极大提升了网络资源的利用效率。
1877 6
|
机器学习/深度学习 人工智能 自然语言处理
探索深度学习与自然语言处理的前沿技术:Transformer模型的深度解析
探索深度学习与自然语言处理的前沿技术:Transformer模型的深度解析
633 1
|
存储 网络协议 安全
30 道初级网络工程师面试题,涵盖 OSI 模型、TCP/IP 协议栈、IP 地址、子网掩码、VLAN、STP、DHCP、DNS、防火墙、NAT、VPN 等基础知识和技术,帮助小白们充分准备面试,顺利踏入职场
本文精选了 30 道初级网络工程师面试题,涵盖 OSI 模型、TCP/IP 协议栈、IP 地址、子网掩码、VLAN、STP、DHCP、DNS、防火墙、NAT、VPN 等基础知识和技术,帮助小白们充分准备面试,顺利踏入职场。
1844 2
|
存储 安全 Linux
Golang的GMP调度模型与源码解析
【11月更文挑战第11天】GMP 调度模型是 Go 语言运行时系统的核心部分,用于高效管理和调度大量协程(goroutine)。它通过少量的操作系统线程(M)和逻辑处理器(P)来调度大量的轻量级协程(G),从而实现高性能的并发处理。GMP 模型通过本地队列和全局队列来减少锁竞争,提高调度效率。在 Go 源码中,`runtime.h` 文件定义了关键数据结构,`schedule()` 和 `findrunnable()` 函数实现了核心调度逻辑。通过深入研究 GMP 模型,可以更好地理解 Go 语言的并发机制。
583 1

热门文章

最新文章

推荐镜像

更多
  • DNS