一种基于设备能力声明的动态适配方法及系统与流程

摘要: 本发明属于智能硬件通信,特别涉及一种基于设备能力声明的动态适配方法及系统。背景技术:1、当前健康设备和康复设备的接入方式,通常仍以具体型号为中心。每增加一个新型...
一种基于设备能力声明的动态适配方法及系统与流程

本发明属于智能硬件通信,特别涉及一种基于设备能力声明的动态适配方法及系统。

背景技术:

1、当前健康设备和康复设备的接入方式,通常仍以具体型号为中心。每增加一个新型号,终端侧往往需要重新固化对应的模式数、档位数、区域数、温度上限、功能开关和交互入口。对于odm/oem场景,一个应用程序往往要覆盖几十款甚至上百款设备,此类按型号硬编码的接入方式会带来明显的维护成本和版本膨胀问题。

2、现有协议多数仅描述底层命令编码、字段格式和响应报文,缺少统一的设备自描述机制。设备是否支持某一功能、某一参数的合法范围是多少,通常散落在产品说明书、excel清单、聊天记录或联调备注中,终端、平台、测试和厂商对同一设备能力范围的理解容易不一致。

3、在联调和验收环节,上述问题会进一步放大。测试人员通常需要人工阅读文档、人工编写测试用例、人工执行边界值测试,再人工判断结果是否符合预期。这种方式效率低、可重复性差,且很难在固件升级后快速确认能力是否发生回归。

4、此外,设备固件升级后,能力集合和参数边界可能发生变化。传统方案缺少自动比对升级前后能力差异并执行增量复验的机制,容易引入能力回归风险。

5、因此,需要一种新的技术方案,使设备能够在接入阶段主动输出机器可解析的能力声明,使终端、平台和测试工具围绕同一份能力声明协同工作,从而摆脱按型号硬编码和人工文档驱动联调的方式。

技术实现思路

1、为了解决上述问题,本技术目的在于提供一种基于设备能力声明的动态适配方法,实现在多设备接入场景下,建立一种由设备输出结构化能力声明、由终端执行动态适配和命令合法性校验、由平台和测试工具自动生成验收规则并执行联调复验的统一机制,以降低型号耦合、减少越界控制、提升接入效率并提高联调一致性。

2、为了实现上述目的,本发明的技术方案如下。

3、本发明不再以设备型号作为适配和控制的主要依据,而是以设备输出的能力声明作为统一输入。所述能力声明至少包括:设备标识信息、协议版本信息、产品族信息、传输能力信息、能力集合等用于描述设备支持的功能能力集合,以及用于描述各能力项对应的数量上限、数值范围、枚举集合、布尔开关或互斥约束的参数边界集合。

4、终端、平台和测试工具共享同一份能力声明。其中,终端负责构建功能入口和控制约束,平台负责生成接入规则和能力矩阵,测试工具负责自动生成测试用例、执行联调并生成验收结果。

5、本发明提供一种基于设备能力声明的动态适配方法,设备在注册、握手、查询或固件升级完成后,主动上报或响应返回能力声明。终端接收所述能力声明,并解析产品族、能力集合和参数边界集合。

6、终端根据能力集合确定应开放的功能模块。具体地,终端内部维护能力原子与用户交互组件的映射关系,根据能力集合中是否存在某项能力来独立挂载对应的交互组件,而不再以设备型号或产品族作为控制界面开放逻辑的判断依据。

7、终端根据参数边界集合,结合量纲映射规则执行物理单位与机器值的双向换算,生成各功能模块对应的用户交互界面渲染刻度、输入约束和命令参数合法区间。所述量纲映射规则包含将设备上报的机器值转换为面向用户的物理量的正向映射规则,以及将用户输入的物理量转换为机器值的反向映射规则。上述机器值可以是脉冲宽度调制占空比、模数转换采样整型值或离散整数档位,上述物理量可以是压力值、温度值。

8、当用户触发控制操作时,终端依据所述输入约束校验待下发参数。当参数处于合法边界内时,终端生成并下发对应控制指令;当参数超出合法边界时,终端执行拦截、裁剪、提示或拒绝发送。

9、平台或测试工具基于协同分工机制读取同一份能力声明,并通过确定性边界算法生成命令可用性矩阵和参数边界测试用例。若为云端平台生成测试用例,平台则将打包后的测试任务下发至测试工具;测试工具依据所述测试用例自动向物理设备下发测试命令,并将设备实际响应与期望结果进行比对,生成联调验收报告或能力复验报告。

10、可选的,针对设备主动上报与终端或平台查询并发可能导致的冗余传输、状态冲突与广播风暴问题,本发明设计了一种基于版本协商与时间窗口防抖的能力声明防冲突上报机制。

11、具体地,设备端根据当前支持的能力集合和参数边界集合动态生成全局唯一的能力版本号或哈希值。在设备注册或重连时,终端与设备优先交换能力版本号,终端仅在本地缓存缺失或发现版本号不一致时,才向设备发起全量拉取请求。

12、设备端设有上报防抖时间窗口。若设备刚完成主动上报,在此时间窗口内若再次收到终端发来的全量查询指令,设备将识别为重复请求并予以忽略,或仅回复确认帧,从而避免全量数据的重复发送与信道拥塞。

13、主动上报与被动查询均携带事务令牌。若发生并发情形,终端接收到携带新令牌的主动上报数据后,自动取消其自身挂起的查询等待状态,实现双向状态收敛。

14、可选的,能力集合用于表达设备支持的功能类型。所述能力集合可包括但不限于:程控模式、手动区域选择、压力控制、加热控制、会话定时、通知桥接、媒体控制和设备查找。

15、终端内部不再维护静态的产品族功能映射表,而是维护能力原子与用户交互组件的映射引擎。终端在解析能力集合后,直接根据集合内是否存在某项能力来独立挂载对应的交互组件。当厂商推出全新形态的产品族时,只要其所需能力由已有的能力原子组合而成,终端无需进行应用程序版本升级即可直接识别、适配并渲染出完整的控制界面。能力声明中的产品族字段仅用作展示默认设备外形图标、加载特定主题资源或用于数据统计,不再作为决定设备控制界面开放逻辑的判断依据。

16、可选的,参数边界集合用于表达设备各功能项的支持范围。所述参数边界集合可包括但不限于:模式数量上限、压力档位上限、压力取值范围、区域数量、温控上限、最大闹钟数量以及各项能力的布尔开关。

17、为保证固件的轻量化,设备上报的参数边界集合通常为底层机器值,而终端面向用户的输入约束往往是浮点型物理量。因此,终端在生成输入约束时执行双向映射过程:

18、在正向渲染阶段,终端结合量纲映射规则对底层机器边界执行单位换算或线性缩放,转换为用户交互界面的物理展示刻度和可输入范围。

19、在反向校验阶段,终端截获用户输入的物理量,通过反向缩放函数转换为机器值,并利用本地缓存的能力声明进行多维度组合校验,所述多维度组合校验包括单变量数值越界校验、离散枚举集合白名单校验以及多变量互斥逻辑校验。

20、当反算出的机器值全部通过校验时,终端将其组装为控制指令下发;若发生精度溢出、计算越界或触发互斥规则,则在终端侧直接执行降级裁剪或拦截。通过该机制,既实现了防穿透保护,又将复杂的运算与校验决策从设备固件剥离,降低了底层硬件的计算开销。

21、可选的,本发明摒弃了终端本地存储海量预置指令的查表法,采用基于能力语义树的指令动态组装与序列化机制。

22、当用户在动态渲染的用户交互界面上完成操作且通过前置校验后,终端根据用户的交互意图在内存中实例化语义控制实体。终端依据当前设备的能力集合结构,将所述语义控制实体映射到设备的能力树结构上,根据能力集合对参数进行填充或剥离,确保生成的载荷结构与设备当前的能力声明一致。完成参数填充后,终端的协议编解码器根据能力声明中指定的协议版本规则将语义控制实体实时序列化为二进制字节流,计算校验和并结合当前会话的安全密钥进行加密,最终下发至物理传输链路。

23、可选的,本发明进一步将能力声明作为联调验收的统一事实来源。

24、平台收集各设备的能力声明,统一生成全局的命令可用性矩阵和测试用例集库,并将其下发给测试工具。测试工具在联网状态下从平台拉取用例集;在离线状态下通过本地通信接口直接读取设备的能力声明,并在本地即时生成用例并执行。

25、测试用例的生成采用确定性边界值用例生成算法。对于参数边界集合中的连续型数值边界,算法提取合法下边界值、合法上边界值、合法典型值、非法下界越界值和非法上界越界值作为测试向量。对于离散型枚举集合,算法生成合法枚举值的全遍历集合以及至少一个未定义的变异值作为非法测试向量。算法在生成测试向量的同时绑定协议级的期望响应模型:对于合法测试向量,期望响应为确认响应;对于非法测试向量,期望响应为拒绝响应或参数越界错误码。

26、测试工具根据测试向量自动向设备下发测试命令,将设备的实际物理响应与期望响应模型进行比对,输出客观、可审计的自动化验收报告。

27、可选的,在设备固件升级完成后,设备重新上报升级后的能力声明。平台或测试工具读取升级前和升级后的能力声明,比对能力集合和参数边界差异,针对新增能力生成新增测试项,针对变更边界生成增量边界测试用例,针对被删除能力验证相关命令是否已被禁用,并输出能力变更信息和复验结果。

28、为实现上述方法,本发明还提供一种基于设备能力声明的动态适配系统,包括健康设备、智能终端、云端平台和测试设备。

29、健康设备通过蓝牙、wifi或通用串行总线等通信网络与智能终端或测试设备建立直接连接,并通过智能终端的网络代理或直接通过wifi与云端平台建立直接或间接的广域网连接。健康设备作为能力的物理载体,负责在连接建立、握手查询或固件升级后,将包含能力集合和参数边界集合的结构化能力声明通过底层通信链路输出。

30、智能终端向下与健康设备建立直接控制连接,向上通过超文本传输安全协议或安全websocket协议与云端平台建立双向数据同步连接。智能终端接收设备上报的能力声明,执行本地动态适配逻辑以生成动态控制模块与交互入口,在下发控制命令前执行参数边界合法性校验,并将设备的运行状态与能力快照上报至云端平台。

31、云端平台与智能终端和测试设备保持广域网连接。云端平台作为能力声明的全局事实中心,接收并持久化各设备上报的能力声明,在固件升级后执行新旧能力声明的差异比对,向测试设备下发基于能力差异生成的增量验收规则和命令可用性矩阵。

32、测试设备在研发联调或产线验收阶段,向下通过蓝牙、通用串行总线等与健康设备建立直接测试连接,向上与云端平台同步测试规则。测试设备读取设备直接输出的能力声明或从云端平台拉取命令矩阵,根据能力边界自动生成合规与越界测试用例,自动向设备注入测试命令,比对设备的物理响应与期望结果,最终生成并上报联调验收报告。

33、在逻辑层面,所述系统进一步划分为以下功能模块:能力声明输出模块,部署于健康设备,用于由设备输出结构化能力声明;能力解析模块,部署于智能终端与测试设备,用于解析能力集合和参数边界集合;动态适配模块,部署于智能终端,用于基于解析结果生成功能入口和控制约束;命令校验模块,部署于智能终端,用于在下发前校验控制参数合法性;接入验收模块,部署于云端平台或测试设备,用于生成命令矩阵和测试用例;联调执行模块,部署于测试设备,用于自动执行测试并输出验收报告;复验模块,部署于云端平台或测试设备,用于在固件升级后执行能力差异比对和增量复验。

34、与现有技术相比,本技术的有益效果:

35、1. 将按型号适配转化为按能力适配,终端无需为每个设备型号维护静态映射表,降低终端与设备型号之间的耦合。

36、2. 使设备能力和边界以机器可读方式表达为结构化数据,终端、平台和测试工具可直接解析和消费,减少人工解释和口径不一致问题。

37、3. 使终端控制逻辑、平台接入规则和测试验收规则围绕同一事实来源协同工作,多角色共享同一份能力声明,消除信息孤岛。

38、4. 通过对控制指令参数的前置合法性校验,在指令下发至设备之前即完成越界识别和拦截,减少越界控制和异常下发风险。

39、5. 通过能力声明自动生成联调验收规则和边界测试用例,无需人工编写测试用例,显著降低人工联调成本。

40、6. 通过固件升级后的能力复验机制,自动比对升级前后能力差异并执行增量测试,降低能力回归风险。

41、7. 适合在多设备、快迭代、odm/oem场景下规模化使用,新设备接入时无需终端版本升级即可完成适配。