一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种智能网关子设备数据快速查找的方法及装置与流程

2021-10-24 05:32:00 来源:中国专利 TAG:网关 智能 装置 快速查找 家庭


1.本发明涉及智能家庭网关领域,具体涉及一种智能网关子设备数据快速查找的方法及装置。


背景技术:

2.中国的智能家居行业兴起于九十年代的末期。随着人民的生活水平越来越高,以及一浪高过一浪的房地产热潮,中国的智能家居行业取得了更加迅猛的发展并日益渗透到平常百姓的生活当中。随着互联网向普通家庭生活不断扩展,消费电子、计算机、通讯一体化趋势日趋明显,现代智能家居由于其安全、方便、高效、快捷、智能化等特点在21世纪将成为现代社会和家庭的新时尚。当智能家庭网关将家庭中各种各样的家电通过家庭总线技术连接在一起时,就构成了功能强大、高度智能化的现代智能家居系统。
3.智能家庭网关具备智能家居控制枢纽及无线路由两大功能,一侧负责具体的安防报警、家电控制、用电信息采集以及通过无线方式与智能交互终端等产品进行数据交互,另一侧还具备有优良的无线性能、无线路由功能、网络安全性能和覆盖面积。手机、平板电脑等多种移动设备均可通过它轻松控制家庭中的电器和智能家居中枢设备。可以说,以智能家庭网关产品为代表的新一代家庭连接和控制中心的出现,宣告了智慧家庭新时代的到来。
4.智能家庭网关是家庭智能设备管理中心,负责管理所有智能子设备。随着智能家居系统的发展,接入智能家庭网关的设备也逐渐增加,如何对子设备进行数据查找成为了完善智能家居系统的新问题。以往的系统设计遇到数据插入,删除,查找等操作时,往往是采用遍历的方式查找,这种方式查找效率比较低。如果数据较长或接入设备较多,则会导致计算复杂度增加,降低系统性能。


技术实现要素:

5.基于此,本发明提供了一种智能网关子设备数据快速查找的方法及装置,可以提高智能家庭网关中子设备的数据查找速度,从而提高整个系统的效率。
6.根据本技术的一些实施例的第一方面,提供了一种智能网关子设备数据快速查找的方法,该方法包括如下步骤:
7.获取子设备的唯一码;
8.根据所述唯一码,通过预设的数据查找转换函数,对所述唯一码计算得到一输出值;
9.根据所述输出值,确定目标链表数据结构数组,其中,该目标链表数据结构数组包括多个链表数据结构体,每个链表数据结构存储有不同子设备的唯一码;
10.遍历所述目标链表数据结构数组中的每个所述链表数据结构体,确定是否有所述链表数据结构体存储有该唯一码。
11.进一步地,如果有所述链表数据结构体存储有该唯一码,还包括:
12.更新该子设备为在线状态。
13.进一步地,如果没有所述链表数据结构体存储有该唯一码,则还包括:
14.在该目标链表数据结构数组的链表数据尾插入一新的所述链表数据结构体;
15.将该唯一码存储于该新的所述链表数据结构体。
16.进一步地,将该唯一码存储于该新的所述链表数据结构体后,还包括:
17.记录子设备唯一码总数。
18.进一步地,如需删除所查找的子设备,还包括:
19.遍历所述链表数据结构数组中的每个所述链表数据结构体,确定是否有所述链表数据结构体存储有该唯一码;
20.如果有,则删除子设备唯一码所在的链表数据结构体的节点;
21.如果没有与所述唯一码一致的数值,则指示所述子设备不存在。
22.进一步地,所述数据查找转换函数,其特征在于:
23.所述函数为一整形函数,该整形函数用于将输入的所述唯一码转换为一整型值,该整型值的最大值与所述链表数据结构数组个数相对应。
24.进一步地,所述查找转换函数为:
25.f(x)=(a

1)*|sin(x%180*pi)|,其中pi=3.1415926,a为所创建的链表数据结构数组个数。
26.进一步地,还包括如下步骤:
27.获取控制终端的控制信息;
28.将子设备信息发送给所述控制终端,所述设备信息包括子设备的唯一码,以使得所述控制终端根据所述唯一码控制子设备。
29.根据本技术的一些实施例的第二方面,提供了一种数据快速查找的装置,包括:
30.数据获取模块,用于获取子设备的唯一码;
31.函数计算模块,用于根据所述唯一码,通过预设的数据查找转换函数,对所述唯一码计算得到一输出值;
32.目标数组确定模块,用于根据所述输出值,确定目标链表数据结构数组,其中,该目标链表数据结构数组包括多个链表数据结构体,每个链表数据结构存储有不同子设备的唯一码;
33.遍历查找模块,用于遍历所述目标链表数据结构数组中的每个所述链表数据结构体,确定是否有所述链表数据结构体存储有该唯一码。
34.根据本技术的一些实施例的第三方面,提供了一种智能网关设备,包括:
35.至少一个存储器和至少一个处理器;
36.所述存储器,用于存储一个或多个程序;
37.当所述一个或多个程序被所述至少一个处理器执行,使得所述至少一个处理器实现如第一方面所述的一种智能网关子设备数据快速查找的方法的步骤。
38.本技术提供的一种智能网关子设备数据快速查找的方法及装置,通过在智能网关设备中创建多个链表数据结构数组,在每一个数组内包括多个用于链表数据结构体,每个链表数据结构体用于存储包括子设备唯一码在内的相关数据信息,并根据该子设备的唯一码调用数据查找转换函数确定对应链表数据结构数组,并遍历该数组内的链表数据结构体
数值,即可实现对该子设备的快速查找,进而可实现对子设备的数据插入以及数据删除等操作。通过本技术提供的方法及装置,大大降低了智能网关设备的计算复杂度,提高了智能网关设备查找子设备信息的效率,提升了系统稳定性。
39.为了更清楚地说明本技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
附图说明
40.图1为本发明提供的一种智能网关子设备数据快速查找的方法的步骤图;
41.图2为本发明适用环境的子设备与智能网关示意图;
42.图3为本发明提供的一种智能网关子设备数据快速查找的方法的存储结构示意图;
43.图4为本发明提供的数据查找转换函数的波形图。
44.图5为本发明提供的一种智能网关子设备数据快速查找的装置的模块示意图。
具体实施方式
45.为使本技术的目的、技术方案和优点更加清楚,下面将结合附图对本技术实施例方式作进一步地详细描述。
46.应当明确,所描述的实施例仅仅是本技术实施例一部分实施例,而不是全部的实施例。基于本技术实施例中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其它实施例,都属于本技术实施例保护的范围。
47.在本技术实施例使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本技术实施例。在本技术实施例和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
48.下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本技术相一致的所有实施方式。相反,它们仅是如所附权利要求书中所详述的、本技术的一些方面相一致的装置和方法的例子。在本技术的描述中,需要理解的是,术语“第一”、“第二”、“第三”等仅用于区别类似的人体,而不必用于描述特定的顺序或先后次序,也不能理解为指示或暗示相对重要性。对于本领域的普通技术人员而言,可以根据具体情况理解上述术语在本技术中的具体含义。
49.此外,在本技术的描述中,除非另有说明,“多个”是指两个或两个以上。“和/或”,描述关联人体的关联关系,表示可以存在三种关系,例如,a和/或b,可以表示:单独存在a,同时存在a和b,单独存在b这三种情况。字符“/”一般表示前后关联人体是一种“或”的关系。
50.请参阅图1,图1为本发明提供的一种智能网关子设备数据快速查找的方法的步骤图,在图1中,当子设备上电并接入相应智能网关后,智能网关设备执行如下的步骤:
51.在步骤s101中,获取子设备的唯一码。
52.其中,该子设备与智能网关的关系如图2所示,图2为子设备与智能网关的关系示
意图,其中智能冰箱100、智能空调300代表子设备,子设备接入智能网关设备200,通过智能网关设备200转换协议连接到公共网络internet。该智能网关是实现地址转换或者协议转换的通讯设备,具体可以是wifi路由器、bt网关及内置bt网关的电子设备、zigbee网关及内置zigbee网关的电子设备等。在一个优选的实施例中,也可以是支持zigbee、蓝牙、蓝牙mesh等多种协议的多模网关。
53.这里的子设备与对应网关之间定义协议,并可以被网关发现并获取该子设备的设备证书。在一个实施例中,所述智能网关为智能家庭网关,所述子设备可以为能够与智能家庭网关进行交互的智能家电,如智能空调300、智能冰箱100等。
54.所述唯一码为子设备的入网标记,由子设备端管理人员进行权限管理操作。在一些实施例中,唯一码可以为设备名称或者设备的专用代码。
55.在步骤s102中,根据唯一码,通过预设的数据查找转换函数,对所述唯一码计算得到一输出值。
56.智能网关预设有数据查找转换函数,将唯一码作为输入数据调用该函数,并得到一个输出值。
57.在步骤s103中,根据所述输出值,确定目标链表数据结构数组。
58.智能网关定义有链表数据结构体,在智能网关上电后,创建已定义的链表数据结构体,同时创建多个链表数据结构体的数组,初始化数组内链表数据结构体的数值。该数据查找转换函数得到的输出值,对应其中一特定数组的表头序号,确定表头序号与该输出值相一致的链表数据结构体数组为目标数组。其中,该目标链表数据结构数组包括多个链表数据结构体,每个链表数据结构存储有不同子设备的唯一码。
59.在步骤s104中,遍历所述链表数据结构数组中的每个所述链表数据结构体,确定是否有所述链表数据结构体存储有该唯一码。
60.在确定目标数组之后,遍历目标数组所包含的多个链表数据结构体内是否存储有与该唯一码相一致的数值。从而实现对该智能网关下子设备的查找。
61.本技术提供的一种智能网关子设备数据快速查找的方法,通过创建多个链表数据结构数组,存储子设备包括唯一码在内的相关数据信息,根据该子设备的唯一码调用数据确定转换函数确定对应链表数据结构数组,并遍历该数组内的链表数据结构体数值,即可实现对该子设备的快速查找。通过本技术提供的方法,大大降低了系统的计算复杂度,提高了数据查找的效率,提升了系统稳定性。
62.在一个具体的例子中,如果遍历目标链表数据结构数组中的每个链表数据结构体,确定存在链表数据结构体存储有该唯一码,则更新该子设备为在线状态;如不存在,则在该目标链表数据结构数组的链表数据尾插入一新的所述链表数据结构体,并将该唯一码存储于该新的所述链表数据结构体。在一个优选的实施例中,将该唯一码存储于该新的所述链表数据结构体后,并更新记录子设备唯一码总数。
63.采用尾插法对链表数据进行插入可以保证链表数据结构的头结点永远固定不变,使得遍历时是按照与插入数据相同的顺序进行,保证了系统的稳定性。
64.在一个具体的例子中,还可以通过本技术提供的一种智能网关子设备数据快速查找的方法来进行子设备的数据删除。通过遍历所述链表数据结构数组中的每个所述链表数据结构体,确定是否有所述链表数据结构体存储有该唯一码,如果有,则删除子设备唯一码
所在的链表数据结构体的节点,如果没有与所述唯一码一致的数值,则指示所述子设备不存在。
65.在一个具体的例子中,该数据查找转换函数为一整形函数,将子设备唯一码输入后,经转换,返回一整型值,该整型值在所创建链表数据结构数组个数内。
66.在一个优选实施例中,该数据查找转换函数为:
67.f(x)=(a

1)*|sin(x%180*pi)|
68.其中pi=3.1415926,a为所创建的链表数据结构数组个数。
69.具体请参阅图3,图3为本发明提供的一种智能网关子设备数据快速查找的方法的存储结构示意图。在数据存储空间定义链表结构数据体,同时创建array[a]个链表数据结构体的数组,每个链表数据结构数组都对应0

n个链表数据结构体。
[0070]
如图4所示,图4为本发明提供的数据查找转换函数的波形图。其中,x为输入数据,也即子设备的唯一码,x%180指示预测所有值都分布在0~180
°
内,再通过正弦函数得到[0...1]之间的绝对值。该数据查找转换函数的输出值都是在[0...(a

1)]范围内的整型值id,a

1是这个f(x)函数返回最大值。该整型值即为链表数据结构体数组的序号,根据该整型值查找到p=array[id]的链表数据结构。p为存储子设备唯一码链表数据结构的表头。
[0071]
在一个具体实施例中,还可以通过本技术提供的一种智能网关子设备数据快速查找的方法来实现智能网关与控制终端的交互。智能网关先获取控制终端所发送的对子设备的控制信息,通过本技术所述方法查找在网关内注册的子设备并将相应子设备信息发送给控制终端,所述设备信息包括子设备的唯一码,以使得控制终端根据唯一码控制子设备。
[0072]
其中,该终端可以是智能手机,在其他的例子中,该终端还可以是其他的具有4g或5g通信能力的移动终端(例如平板电脑)、可穿戴设备(例如智能手表、运动手环、智能眼镜)、智能车载设备等。
[0073]
如图5所示,图5为本发明提供的,与上述的一种智能网关子设备数据快速查找的方法相对应,本技术实施例还提供一种智能网关子设备数据快速查找的装置,该装置400包括:
[0074]
数据获取模块401,用于获取子设备的唯一码;
[0075]
函数计算模块402,根据所述唯一码,通过预设的数据查找转换函数,对所述唯一码计算得到一输出值;
[0076]
目标数组确定模块403,用于根据所述输出值,确定目标链表数据结构数组,其中,该目标链表数据结构数组包括多个链表数据结构体,每个链表数据结构存储有不同子设备的唯一码;
[0077]
遍历查找模块404,用于遍历所述链表数据结构数组中的每个所述链表数据结构体,确定是否有所述链表数据结构体存储有该唯一码。
[0078]
在一个可选的实施例中,如果有所述链表数据结构体存储有该唯一码,则遍历查找模块404还包括,更新该子设备为在线状态。
[0079]
在一个可选的实施例中,如果没有所述链表数据结构体存储有该唯一码,则遍历查找模块404还包括,在该目标链表数据结构数组的链表数据尾插入一新的所述链表数据结构体;将该唯一码存储于该新的所述链表数据结构体。
[0080]
在一个可选的实施例中,将该唯一码存储于该新的所述链表数据结构体后,遍历
查找模块404还包括,记录子设备唯一码总数。
[0081]
在一个可选的实施例中,如需删除所查找的子设备,则遍历查找模块404还包括删除单元,用于在遍历所述链表数据结构数组中的每个所述链表数据结构体后,确定是否有所述链表数据结构体存储有该唯一码;如果有,则删除子设备唯一码所在的链表数据结构体的节点;如果没有与所述唯一码一致的数值,则指示所述子设备不存在。
[0082]
在一个可选的实施例中,所述数据查找转换函数为一整形函数;将所述唯一码输入后,经转换,返回一整型值,所述整型值在所创建链表数据结构数组个数内。
[0083]
在一个可选的实施例中,所述查找转换函数为:
[0084]
f(x)=(a

1)*|sin(x%180*pi)|,其中pi=3.1415926,a为所创建的链表数据结构数组个数。
[0085]
在一个可选的实施例中,该装置400还包括控制终端交互单元,用于获取控制终端的控制信息;将子设备信息发送给所述控制终端,设备信息包括子设备的唯一码,以使得控制终端根据唯一码控制子设备。
[0086]
其中,该终端可以是智能手机,在其他的例子中,该终端还可以是其他的具有4g或5g通信能力的移动终端(例如平板电脑)、可穿戴设备(例如智能手表、运动手环、智能眼镜)、智能车载设备等。
[0087]
与上述的一种智能网关子设备数据快速查找的方法相对应,本技术实施例还提供一种智能网关设备,包括:
[0088]
至少一个存储器和至少一个处理器;
[0089]
所述存储器,用于存储一个或多个程序;
[0090]
当所述一个或多个程序被所述至少一个处理器执行,使得所述至少一个处理器实现如上述任一项实施例中,执行智能网关子设备数据快速查找的方法的步骤。
[0091]
该智能网关是实现地址转换或者协议转换的通讯设备,具体可以是wifi路由器、bt网关及内置bt网关的电子设备、zigbee网关及内置zigbee网关的电子设备等。在一个优选的实施例中,也可以是支持zigbee、蓝牙、蓝牙mesh等多种协议的多模网关。
[0092]
本技术提供的一种智能网关子设备数据快速查找的方法及装置,通过在智能网关设备中创建多个链表数据结构数组,在每一个数组内包括多个用于链表数据结构体,每个链表数据结构体用于存储包括子设备唯一码在内的相关数据信息,并根据该子设备的唯一码调用数据查找转换函数确定对应链表数据结构数组,并遍历该数组内的链表数据结构体数值,即可实现对该子设备的快速查找,进而可实现对子设备的数据插入以及数据删除等操作。通过本技术提供的方法及装置,大大降低了智能网关设备的计算复杂度,提高了智能网关设备查找子设备信息的效率,提升了系统稳定性。
[0093]
应当理解的是,本技术实施例并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本技术实施例的范围仅由所附的权利要求来限制。
[0094]
以上所述实施例仅表达了本技术实施例的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本技术实施例构思的前提下,还可以做出若干变形和改进,这些都属于本技术实施例的保护范围。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献

  • 日榜
  • 周榜
  • 月榜