CN112020116B - 定位方法、设备、系统及存储介质 - Google Patents
定位方法、设备、系统及存储介质 Download PDFInfo
- Publication number
- CN112020116B CN112020116B CN201910465409.3A CN201910465409A CN112020116B CN 112020116 B CN112020116 B CN 112020116B CN 201910465409 A CN201910465409 A CN 201910465409A CN 112020116 B CN112020116 B CN 112020116B
- Authority
- CN
- China
- Prior art keywords
- message
- positioning signal
- received
- equipment
- information
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W40/00—Communication routing or communication path finding
- H04W40/02—Communication route or path selection, e.g. power-based or shortest path routing
- H04W40/023—Limited or focused flooding to selected areas of a network
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01S—RADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
- G01S5/00—Position-fixing by co-ordinating two or more direction or position line determinations; Position-fixing by co-ordinating two or more distance determinations
- G01S5/02—Position-fixing by co-ordinating two or more direction or position line determinations; Position-fixing by co-ordinating two or more distance determinations using radio waves
- G01S5/0252—Radio frequency fingerprinting
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01S—RADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
- G01S5/00—Position-fixing by co-ordinating two or more direction or position line determinations; Position-fixing by co-ordinating two or more distance determinations
- G01S5/02—Position-fixing by co-ordinating two or more direction or position line determinations; Position-fixing by co-ordinating two or more distance determinations using radio waves
- G01S5/0257—Hybrid positioning
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04B—TRANSMISSION
- H04B17/00—Monitoring; Testing
- H04B17/30—Monitoring; Testing of propagation channels
- H04B17/309—Measuring or estimating channel quality parameters
- H04B17/318—Received signal strength
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W64/00—Locating users or terminals or network equipment for network management purposes, e.g. mobility management
- H04W64/006—Locating users or terminals or network equipment for network management purposes, e.g. mobility management with additional information processing, e.g. for direction or speed determination
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D30/00—Reducing energy consumption in communication networks
- Y02D30/70—Reducing energy consumption in communication networks in wireless communication networks
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- General Physics & Mathematics (AREA)
- Radar, Positioning & Navigation (AREA)
- Remote Sensing (AREA)
- Quality & Reliability (AREA)
- Electromagnetism (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
本申请实施例提供一种定位方法、设备、系统及存储介质。在本申请实施例中,Mesh网络采用泛洪机制,Mesh网络中的节点设备接收被定位设备发出的定位信号,并通过不被转发的消息将接收到的定位信号的信息泛洪出去,基于此,这些节点设备之间可自主选择出具备上报资格的节点设备,并由具备上报资格的节点设备将各节点设备接收到的定位信号的信息上报给服务器,供服务器对被定位设备进行定位。一方面可降低被定位设备的功耗,另一方面可减少网络中传输的消息数量,有利于降低Mesh网络在定位过程中可能出现的广播风暴的概率,一定程度上解决了采用泛洪机制的Mesh网络面临的定位问题。
Description
技术领域
本申请涉及定位技术领域,尤其涉及一种定位方法、设备、系统及存储介质。
背景技术
蓝牙网状(Mesh)协议的发布催生了蓝牙Mesh网络。蓝牙Mesh网络是一种建立在蓝牙低功耗(Bluetooth Low Energy,BLE)标准上的Mesh网络。在蓝牙Mesh网络中,节点设备之间采用泛洪(flooding)机制进行通信,每个节点设备可以向其它节点设备发送数据,也可以接收其它节点设备发送的数据。
鉴于功耗低、安全可靠、组网灵活等优点,蓝牙Mesh网络被广泛应用。随着蓝牙Mesh网络的广泛应用,基于蓝牙Mesh网络的定位需求被提出。但是,现有定位方案都不太适合蓝牙Mesh网络,很容易引起广播风暴,因此有待提供一种适用于蓝牙Mesh网络的定位方法。
发明内容
本申请的多个方面提供一种定位方法、设备、系统及存储介质,用以实现基于泛洪机制的Mesh网络的定位,并降低网络出现广播风暴的概率。
本申请实施例提供一种定位方法,适于采用泛洪机制的Mesh网络中的节点设备,所述方法包括:若接收到被定位设备发出的定位信号,向周围节点设备泛洪第一消息,并在设定时间内接收周围节点设备泛洪的第一消息;所述第一消息携带有其发送者接收到的定位信号的信息,且所述第一消息不被转发;以及在根据自身接收到的定位信号的信息和接收到的第一消息中携带的定位信号的信息确定具备上报资格的情况下,将自身接收到的定位信号的信息和接收到的第一消息中携带的定位信号的信息上报给服务端设备,以供服务端设备对所述被定位设备进行定位。
本申请实施例还提供一种定位方法,适用于Mesh网络中的节点设备,所述方法包括:若接收到被定位设备发出的定位信号,向周围节点设备发送第一消息,并在设定时间内接收周围节点设备发送的第一消息;所述第一消息携带有其发送者接收到的定位信号的信息,且所述第一消息不被转发;以及在根据自身接收到的定位信号的信息和接收到的第一消息中携带的定位信号的信息确定具备上报资格的情况下,将自身接收到的定位信号的信息和接收到的第一消息中携带的定位信号的信息上报给服务端设备,以供服务端设备对所述被定位设备进行定位。
本申请实施例还提供一种定位方法,采用泛洪机制的Mesh网络中的节点设备,所述方法包括:若接收到被定位设备发出的定位信号,向周围节点设备泛洪第一消息,并在设定时间内接收周围节点设备泛洪的第一消息;所述第一消息携带有其发送者接收到的定位信号的RSSI,且所述第一消息不被转发;以及将接收到的第一消息中携带的定位信号的RSSI与自身接收到的定位信号的RSSI进行比较,并统计接收到的第一消息中,所携带的定位信号的RSSI小于自身接收到的定位信号的RSSI的第一消息的占比;若所述占比大于或等于设定的比例阈值,将自身接收到的定位信号的RSSI和接收到的第一消息中携带的定位信号的RSSI上报给服务端设备,以供服务端设备对所述被定位设备进行定位。
本申请实施例还提供一种定位方法,采用泛洪机制的Mesh网络中的节点设备,所述方法包括:若接收到被定位设备发出的定位信号,向周围节点设备泛洪第一消息,并在设定时间内接收周围节点设备泛洪的第一消息;所述第一消息携带有其发送者接收到的定位信号的RSSI,且所述第一消息不被转发;以及将接收到的第一消息中携带的定位信号的RSSI与自身接收到的定位信号的RSSI进行比较,并统计接收到的第一消息中,所携带的定位信号的RSSI小于自身接收到的定位信号的RSSI的第一消息的占比;若所述占比小于设定的比例阈值,丢弃接收到的第一消息,并终止所述设定时间的计时。
本申请实施例还提供一种节点设备,包括:存储器、处理器和通信组件;所述存储器,用于存储计算机程序;所述处理器,与所述存储器耦合,用于执行所述计算机程序,以用于:在所述通信组件接收到被定位设备发出的定位信号的情况下,通过所述通信组件向周围节点设备泛洪第一消息,并在设定时间内接收周围节点设备泛洪的第一消息;所述第一消息携带有其发送者接收到的定位信号的信息,且所述第一消息不被转发;以及在根据其所属节点设备接收到的定位信号的信息和接收到的第一消息中携带的定位信号的信息确定其所属节点设备具备上报资格的情况下,通过所述通信组件将其所属节点设备接收到的定位信号的信息和接收到的第一消息中携带的定位信号的信息上报给服务端设备,以供所述服务端设备对所述被定位设备进行定位。
本申请实施例还提供一种采用泛洪机制的Mesh网络,包括:多个节点设备和服务端设备;其中,所述多个节点设备之间相互连接,且所述服务端设备至少与所述多个节点设备中的一个节点设备直接通信连接;每个节点设备,用于在接收到被定位设备发出的定位信号的情况下,向周围节点设备泛洪第一消息,并在设定时间内接收周围节点设备泛洪的第一消息;所述第一消息携带有其发送者接收到的定位信号的信息,且所述第一消息不被转发;以及在根据自身接收到的定位信号的信息和接收到的第一消息中携带的定位信号的信息确定具备上报资格的情况下,将自身接收到的定位信号的信息和接收到的第一消息中携带的定位信号的信息上报给服务端设备,以供服务端设备对所述被定位设备进行定位。
本申请实施例还提供一种存储有计算机程序的计算机可读存储介质,当所述计算机程序被处理器执行时,致使所述处理器实现本申请提供的各种定位方法中的步骤。
在本申请实施例中,Mesh网络采用泛洪机制,Mesh网络中的节点设备接收被定位设备发出的定位信号,并通过不被转发的消息将接收到的定位信号的信息泛洪出去,基于此,这些节点设备之间可自主选择出具备上报资格的节点设备,并由具备上报资格的节点设备将各节点设备接收到的定位信号的信息上报给服务器,供服务器对被定位设备进行定位。一方面可降低被定位设备的功耗,另一方面可减少网络中传输的消息数量,有利于降低Mesh网络在定位过程中可能出现的广播风暴的概率,一定程度上解决了采用泛洪机制的Mesh网络面临的定位问题。
附图说明
此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1为本申请示例性实施例提供的一种采用泛洪机制的Mesh网络的结构示意图。
图2a为本申请示例性实施例提供的一种定位方法的流程示意图;
图2b为本申请示例性实施例提供的另一种定位方法的流程示意图;
图2c为本申请示例性实施例提供的又一种定位方法的流程示意图;
图2d为本申请示例性实施例提供的再一种定位方法的流程示意图;
图3为本申请示例性实施例提供的一种节点设备的结构示意图;
图4为本申请示例性实施例提供的另一种节点设备的结构示意图;
图5为本申请示例性实施例提供的又一种节点设备的结构示意图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合本申请具体实施例及相应的附图对本申请技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
针对现有蓝牙Mesh网络面临的定位问题,在本申请实施例中,Mesh网络采用泛洪机制,Mesh网络中的节点设备接收被定位设备发出的定位信号,并通过不被转发的消息将接收到的定位信号的信息泛洪出去,基于此,这些节点设备之间可自主选择出具备上报资格的节点设备,并由具备上报资格的节点设备将各节点设备接收到的定位信号的信息上报给服务器,供服务器对被定位设备进行定位。一方面可降低被定位设备的功耗,另一方面可减少网络中传输的消息数量,有利于降低Mesh网络在定位过程中可能出现的广播风暴的概率,一定程度上解决了采用泛洪机制的Mesh网络面临的定位问题。
以下结合附图,详细说明本申请各实施例提供的技术方案。
如图1所示,该Mesh网络包括:多个节点设备101和服务端设备102。本实施例中的多个是指两个或两个以上。另外,本实施例并不限定服务端设备102的数量,服务端设备102可以是一台,也可以是多台。
在本实施例中,不对节点设备101的实现形态进行限定,节点设备101可以是任何具有一定计算能力和通信能力的终端设备,例如可以是智能手机、智能音箱、平板电脑、笔记本电脑、台式电脑、智能照相机、智能摄像机、智能电视、穿戴设备、无线接入设备(AP)、路由器或网关设备等。不论节点设备101的实现形态如何,节点设备101一般会包括至少一个处理单元、至少一个存储器以及通信模块。处理单元和存储器的数量取决于节点设备101的配置和类型。存储器可以包括易失性的,例如RAM,也可以包括非易失性的,例如只读存储器(Read-Only Memory,ROM)、闪存等,或者也可以同时包括两种类型的。存储器内通常存储有操作系统(Operating System,OS)、一个或多个应用程序,也可以存储有程序数据等。除了处理单元、存储器和通信模块之外,节点设备101还包括一些基本配置,例如其它类型的网卡芯片、IO总线、音视频组件等。可选地,节点设备101还可以包括一些外围设备,例如键盘、鼠标、输入笔、打印机、显示器、电子屏幕等。这些外围设备在本领域中是众所周知的,在此不做赘述。
同理,在本实施例中,也不对服务端设备102的实现形态进行限定,服务端设备102可以是任何具有一定计算和通信能力,以及具有定位功能,可根据定位信号对被定位设备进行定位的服务器设备,例如可以是常规服务器、云服务器、云主机、虚拟中心或服务器阵列等。其中,服务器设备的构成主要包括处理器、硬盘、内存、系统总线等,和通用的计算机架构类似。
在本实施例中,多个节点设备101之间是对等的,彼此之间相互连接,每个节点设备101可以与其它节点设备101进行直接通信,既可以向其它节点设备101发送消息,也可以接收其它节点设备101发送的消息。多个节点设备101中至少有一个节点设备与服务端设备102直接通信连接,以便建立服务端设备102与各节点设备101之间的通信链路;相应地,服务端设备102至少与一个节点设备101直接通信连接,该通信连接可以是有线连接,也可以是无线连接。
在一可选实施方式中,服务端设备102部署在云端,则节点设备101可以通过WiFi、以太网、光纤、2/3/4G/5G等移动网络接入互联网(例如广域网或城域网),通过互联网与服务端设备102建立通信连接。除了部署在云端,服务端设备102也可以与节点设备101部署在一起。
在一些应用场景中,可能需要对Mesh网络中的某台或某几台设备进行定位。为便于描述和区分,将需要定位的设备称为被定位设备。如图1所示,被定位设备103是位于Mesh网络覆盖范围内,能与Mesh网络中的节点设备101进行通信的设备。可选地,被定位设备103可以是新进入Mesh网络中的设备,也可以是原本位于Mesh网络中的设备。
在本实施例中,被定位设备103可以对外发出定位信号,例如信标(beacon)信号;定位信号会被Mesh网络中的节点设备101接收,节点设备101将接收到的定位信号上报给服务端设备102,以供服务端设备102根据定位信号对被定位信号进行定位。其中,节点设备101采用泛洪机制,即会将接收到的消息从除了接收到该消息的端口之外的其它端口广播出去。对定位场景中的定位信号来说,各节点设备101均会采用泛洪机制,将接收到的定位信号广播出去,很容易产生广播风暴。
为了降低出现广播风暴的概率,在本实施例中,对任一节点设备101来说,若接收到被定位设备103发出的定位信号,则向周围节点设备101泛洪第一消息,并会在设定时间内接收周围节点设备101泛洪的第一消息。其中,泛洪第一消息是指采用泛洪机制,将第一消息广播出去。第一消息中携带有其发送者接收到的定位信号的信息。定位信号的信息可以是但不限于:定位信号的接收的信号强度指示(Received Signal StrengthIndication,RSSI)、定位信号的方位信息、定位信号的衰减值等任何能够用于对被定位设备进行定位的信息。
对任一节点设备来说,可将接收到的定位信号的信息携带在第一消息中泛洪出去。在本实施例中,第一消息虽然是被相应节点设备采用泛洪机制发送出去的,但是第一消息不被转发,即接收到第一消息的节点设备不会再将第一消息转发出去。也就是说,在本实施例中,任一节点设备101在接收到定位信号的情况下,不是直接向服务端设备102泛洪接收到的定位信号的信息,而是将接收到的定位信号的信息通知给与其直接通信连接的周围节点设备。
另外,对任一节点设备101来说,可以根据自身接收到的定位信号的信息和接收到的第一消息中携带的定位信号的信息确定是否具备上报资格,并在确定出具备上报资格的情况下,将自身接收到的定位信号的信息和接收到的第一消息中携带的定位信号的信息上报给服务端设备102,以供服务端设备102对被定位设备进行定位。其中,接收到的第一消息中携带的定位信号的信息,也就是发送第一消息的节点设备接收到的定位信号的信息。在该过程中,接收到定位信号的各节点设备101之间相互泛洪接收到的定位信号的信息,并可据此自主协商出具备上报资格的节点设备,由具备上报资格的节点设备向服务端设备102上报自身和周围节点设备接收到的定位信号的信息,而不是各节点设备分别采用泛洪机制将接收到的定位信号的信息发送给服务端设备102,这可以减少网络中传输的消息数量,有利于降低Mesh网络在定位过程中可能出现广播风暴的概率,一定程度上解决了采用泛洪机制的Mesh网络面临的定位问题。
对服务端设备102来说,可以接收具备上报资格的节点设备上报的其自身以及其周围节点设备接收到的定位信号的信息,结合具备上报资格的节点设备以及其周围节点设备的已知位置,根据具备上报资格的节点设备上报的其自身以及周围节点设备接收到的定位信号的信息,可确定出被定位设备的位置。
在一些可选实施例中,对任一节点设备101来说,在接收到被定位设备发送的定位信号的情况下,可以将自身接收到的定位信号的信息写入第一消息,并设置第一消息的生存时间(Time To Live,TTL)为0。其中,第一消息的TTL为0表示第一消息在网络传输过程中可以转发的最大跳数为0,即不被转发。之后,节点设备101可以采用泛洪机制,将TTL为0的第一消息发送给周围节点设备。
值得说明的是,除了通过设置第一消息的TTL为0,实现第一消息不被转发的目的之外,还可以通过第一消息中TTL字段之外的其它字段,例如预留字段或新增字段,设置预留字段或新增字段为指定值,例如1、3、7、255等,实现第一消息不被转发的目的。对各节点设备101来说,在泛洪第一消息之前,可以将第一消息中的预留字段或新增字段设置为指定值,然后防洪出去;若接收到其它节点设备泛洪的第一消息,则判断第一消息中的预留字段或新增字段是否为指定值,若是,则不转发第一消息,若否,会将第一消息转发出去。
在一些可选实施例中,定位信号的信息包含定位信号的RSSI。基于此,对任一节点设备来说,可以将自身接收到的定位信号的RSSI与接收到的第一消息中携带的定位信号的RSSI进行比较,并根据比较结果判断一消息占比是否大于或等于设定的比例阈值;若该消息占比大于或等于设定的比例阈值,确定具备上报资格;反之,若该消息占比小于设定的比例阈值,确定不具备上报资格。其中,消息占比是指接收到的第一消息中,所携带的定位信号的RSSI小于该节点设备接收到的定位信号的RSSI的第一消息的占比,该占比是指所携带的定位信号的RSSI小于该节点设备接收到的定位信号的RSSI的第一消息的数量与接收到的第一消息总数的比值。
值得说明的是,对任一节点设备101来说,可以通过统计在设定时间内接收到的第一消息的总数;其中,节点设备101统计出的第一消息的总数也是在设定时间内向该节点设备101发送第一消息的周围节点设备的总数。
值得说明的是,根据应用场景或应用需求的不同,上述比例阈值可以灵活设定。例如,上述比例阈值可以设置为0.8、0.9、095或1等。在一可选实施例中,上述比例阈值为1,则对任一节点设备101来说,其接收到的定位信号的RSSI要大于在设定时间内接收到的每个第一消息中携带的定位信号的RSSI,简单来说,一个节点设备接收到的定位信号的RSSI要大于其周围节点设备接收到的定位信号的RSSI,才具备上报资格;反之,不具备上报资格。
进一步,在上述比例阈值为1的情况下,一个节点设备可以采用但不限于以下几种实施方式来确定自身是否具备上报资格:
可选实施方式1:一个节点设备可以在设定时间内接收周围节点设备发送的第一消息;在设定时间结束后,将自身接收到的定位信号的RSSI和接收到的各个第一消息中携带的定位信号的RSSI进行比较;若自身接收到的定位信号的RSSI是最大的,即大于接收到的每个第一消息中携带的定位信号的RSSI,则确定具备上报资格,将自身接收到的定位信号的RSSI和接收到的各个第一消息中携带的定位信号的RSSI上报给服务端设备102。
可选实施方式2:一个节点设备可以在设定时间内接收周围节点设备发送的第一消息;每接收到一个第一消息,就将自身接收到的定位信号的RSSI与接收到的第一消息(这里的第一消息是最新接收到的第一消息)中携带的定位信号的RSSI进行比较;若自身接收到的定位信号的RSSI大于或等于接收到的第一消息中携带的定位信号的RSSI,则保存接收到的第一消息中携带的定位信号的RSSI,并等待接收下一个第一消息,直至设定时间计时结束,这种情况说明该节点设备接收到的定位信号的RSSI要大于其周围节点设备接收到的定位信号的RSSI,具备上报资格;若自身接收到的定位信号的RSSI小于接收到的第一消息中携带的定位信号的RSSI,则丢弃接收到的第一消息,并终止设定时间的计时,这种情况说明有其它节点设备接收到的定位信号的RSSI更大,该节点设备已经不具备上报资格,可以提前结束定位流程,节约资源。
进一步,无论采用上述何种方式,在确定出具备上报资格的情况下,具备上报资格的节点设备要将自身接收到的定位信号的信息和接收到的第一消息中携带的定位信号的信息上报给服务端设备,以供服务端设备据此对被定位设备进行定位。可选地,具备上报资格的节点设备可将自身接收到的定位信号的信息和接收到的第一消息中携带的定位信号的信息写入第二消息,设置第二消息的TTL,之后,向服务端设备泛洪第二消息,以供服务端设备对被定位设备进行定位。其中,第二消息的TTL的取值要保证第二消息能够成功到达服务端设备。
可选地,具备上报资格的节点设备可以将第二消息的TTL设置为默认值,或者设置为最大值。其中,默认值或最大值一般可以保证网络中的消息能够到达最远的节点设备。例如,对于一个7比特(bit)的TTL,最大值可以是127,相应地,默认值可以是32、64或127等不大于127的取值。
或者,
可选地,具备上报资格的节点设备可以根据自身与服务端设备之间的拓扑关系,设置第二消息的TTL。其中,结合点设备与服务端设备之间的拓扑关系,可以更加合理地设置第二消息的TTL,在保证第二消息成功到达服务端设备的情况下,可以将第二消息的TTL设置的尽量小,以降低第二消息在网络中被转发的跳数,节约节点设备的计算资源和带宽资源。
进一步,服务端设备与至少一个节点设备直接通信连接,可选地,具备上报资格的节点设备可能是与服务端设备直接通信连接的节点设备,也可能不是与服务端设备直接通信连接的节点设备。对具备上报资格的节点设备来说,可结合其与服务端设备之间的拓扑关系判断出自身是否与服务端设备直接通信连接;若与服务端设备直接通信连接,则可以设置第二消息的TTL为0;若自身未与服务端设备直接通信连接,确定从自身到服务端设备经过的最小跳数,设置第二消息的TTL为最小跳数。这样,第二消息可以以最小转发跳数成功到达服务端设备,节约节点设备的计算资源和带宽资源。
对服务端设备来说,在接收到具备上报资格的节点设备上报的第二消息后,可从第二消息中解析出接收到定位信号的各节点设备的信息以及各节点设备接收到的定位信号的RSSI;一方面根据解析出的接收到定位信号的各节点设备的信息,可以确定接收到定位信号的各节点设备在Mesh网络中的位置;另一方面根据各节点设备接收到的定位信号的RSSI,可以计算出被定位设备与各节点设备之间的距离;进而根据被定位设备与各节点设备之间的距离以及各节点设备在Mesh网络中的位置,可以计算出被定位设备的位置。其中,节点设备的信息可以是能够唯一标识节点设备的信息,例如可以是但不限于:节点设备的IP地址、MAC地址、名称或者节点设备在Mesh网络中的ID等。
为了说明本申请实施例的有益效果:假设整个Mesh网络包括m个节点设备,其中n个节点设备接收到被定位设备发出的定位设备信号;n、m是正整数,且n≤m。如果n个接收到定位信号的节点设备均通过可转发的消息向外泛洪接收到的定位信号的信息,每一个消息需要泛洪到m个节点,则整个定位过程中网络中要传输m*n个消息。如果采用本申请实施例中的方法,n个接收到定位信号的节点设备均通过不可转发的消息向外泛洪接收到的定位信号的信息,在该阶段中,网络中会存在n个消息;之后,由k个具备上报资格的节点设备分别通过另外一个消息将自身及周围节点设备接收到的定位信号的信息上报给服务端设备,在该阶段中,一个消息最多经过m跳即可达到服务端设备,这相当于网络中存在k*m个消息,则整个定位过程中网络中要传输n+k*m个消息。值得说明的是,具备上报资格的节点设备的数量一般不会太多,即k远小于n,正常情况下具备上报资格的节点设备一般是一个。由此可见,在本申请实施例中,被定位设备只发出定位信号,定位信号的上报由Mesh网络中的节点设备负责,可降低被定位设备的功耗,又减少了定位过程中网络中出现的消息数,解决了整个网络在定位过程中可能出现的广播风暴的问题。
需要说明的是,本实施例的Mesh网络,除了采用泛洪机制之外,并不限定使用的通信技术,可以根据部署需求灵活选择所使用的通信技术,从而形成不同通信方式下的Mesh网络。例如,在本实施例的Mesh网络中,可以采用ZigBee、蓝牙(Bluetooth)、红外、WiFi或NFC等通信技术。若本申请实施例的Mesh网络采用蓝牙通信技术,则节点设备之间会基于蓝牙协议进行通信,从而形成蓝牙Mesh网络。
另外,无论是采用哪种通信技术,本实施例的Mesh网络均可以部署在家庭、商场、办公楼、大型仓库、工厂等各种场景中。当然,根据场景不同,可以灵活选择与之适配的通信技术。在这些场景中,通常都会有定位需求。例如,在家庭环境中,可定位家庭用户的位置,从而根据家庭用户的指令,对家庭用户所在环境区域内的设备进行相应控制。又例如,在商场环境中,可定位顾客的位置,进而根据顾客的位置向顾客推送相应信息。可选地,可以将顾客需要或感兴趣的信息推送到顾客使用的手机等终端设备上,或者,也可以在顾客周围的商场提供的可互动的设备,例如显示屏、机器人等上显示顾客需要或者感兴趣的信息。又例如,在仓库或工厂环境中,可定位仓库或工厂人员的位置,向仓库或工厂人员推送作业任务,或者根据仓库或工厂人员的指令,对仓库或工厂人员所在环境区域内的设备进行相应控制。
其中,在上述各场景中可部署本实施例提供的Mesh网络,进而可基于所部署的Mesh网络实现相应场景中的定位。根据定位需求的不同,在定位出被定位设备的位置之后,还可以执行以下至少一种操作:根据被定位设备的位置,对被定位设备所在环境区域内的设备进行相应控制;和/或,根据被定位设备的位置,向被定位设备推送相关信息。
其中,根据被定位设备的位置,对被定位设备所在环境区域内的设备进行相应控制的一种可选实施方式包括:节点设备接收被定位设备或被定位设备的使用者发出的设备控制指令;将设备控制指令上报给服务端设备,以供服务端设备根据被定位设备的位置确定被定位设备所在环境区域内的设备信息并返回;根据服务端设备返回的被定位设备所在环境区域内的设备信息,对被定位设备所在环境区域内的设备进行相应控制。或者,据被定位设备的位置,对被定位设备所在环境区域内的设备进行相应控制的另一种可选实施方式包括:节点设备接收被定位设备或被定位设备的使用者发出的设备控制指令;根据服务端设备返回的被定位设备的位置,确定被定位设备所在环境区域内的设备信息;进而根据接收到的设备控制指令,对被定位设备所在环境区域内的设备进行相应控制。设备控制指令可以是开启设备的指令,例如开灯指令、打开空调的指令或打开电视的指令等;也可以是关闭设备的指令,例如关灯指令、关闭空调的指令或关闭电视的指令等;也可以是调节电视或音箱等音量的指令、调节空调温度的指令或者调节电灯亮度的指令等。
其中,根据被定位设备的位置,向被定位设备推送相关信息的一种可选实施方式包括:节点设备接收服务端设备发送的推送信息,将推送信息泛洪给被定位设备;其中,推送信息是服务端设备根据被定位设备的位置确定的。或者,根据被定位设备的位置,向被定位设备推送相关信息的一种可选实施方式包括:节点设备接收服务端设备返回的被定位设备的位置;根据被定位设备的位置,确定被定位设备需要或感兴趣的信息,将被定位设备需要或感兴趣的信息泛洪给被定位设备。
下面以部署在家庭和商场环境中的蓝牙Mesh网络为例,结合相应场景中的定位需求,对基于蓝牙Mesh网络的定位过程进行说明。
例如,在家庭环境中,可以部署多个蓝牙设备,例如蓝牙音箱、蓝牙开关、蓝牙冰箱、蓝牙灯泡、蓝牙探针以及蓝牙摄像头等,这些蓝牙设备彼此之间进行蓝牙连接可以形成家庭环境中的蓝牙Mesh网络。当然,家庭环境中的蓝牙Mesh网络还可以包括服务器,该服务器可以是某个家庭用户的手机,或者是蓝牙设备服务商提供的服务器等。
在家庭环境中,假设家庭用户携带一个可发射定位信号等设备,例如手机、平板电脑或手环等,如果家庭用户希望对其所在环境区域(例如主卧室、客厅或厨房)中的蓝牙开关进行控制,一方面可以通过其携带的设备(即被定位设备)发射定位信号,另一方面可以发出开关控制指令。可选地,开关控制指令可以是独立于定位信号的另一信号,例如可以是家庭用户发出的语音信号;或者,开关控制指令也可以携带在定位信号中一并发送。
家庭环境中的各个蓝牙设备可以接收该定位信号,对于接收到定位信号的蓝牙设备(例如蓝牙音箱、蓝牙冰箱、蓝牙灯泡和蓝牙探针)对外泛洪一个TTL=0的蓝牙消息,该蓝牙消息携带有定位信号的RSSI,并在一定时间(例如30s或1分钟)内接收周围蓝牙设备发送的蓝牙消息;若接收到蓝牙消息,解析出蓝牙消息中的RSSI,将解析出的RSSI与自身接收到的定位信号的RSSI进行比较,如果解析出的RSSI较弱,则记录该蓝牙消息,否则忽略该蓝牙消息,并且结束定位流程。
按照上面的内容,在接收到定位信号的蓝牙设备之间,可以协商出RSSI最强的蓝牙设备,例如蓝牙音箱;蓝牙音箱将其它蓝牙设备(例如蓝牙冰箱、蓝牙灯泡和蓝牙探针)接收到的定位信号的RSSI和自己接收到的定位信号的RSSI携带在另一蓝牙消息中一并发给服务器,服务器根据接收到定位信号的各蓝牙设备的位置以及各蓝牙设备接收到的定位信号的RSSI计算家庭用户所在的环境区域的位置。家庭用户所在的环境区域的位置也是其携带的可发射定位信号的设备的位置。
另外,蓝牙音箱或其它蓝牙设备还会将家庭成员发出的开关控制指令上报给服务器;服务器可确定家庭用户所在环境区域内的蓝牙开关的标识,将所确定出的蓝牙开关的标识返回给蓝牙音箱或其它蓝牙设备;然后,蓝牙音箱或其它蓝牙设备可根据接收到的开关控制指令,控制家庭成员所在环境区域内的蓝牙开关打开或关闭。由此可见,基于Mesh网络定位出家庭成员所在环境区域,例如在哪个房间,进而可根据家庭成员发出的设备控制指令为家庭成员提供特定的控制服务,例如家庭成员发出“开灯”的语音信号,就可以将其所在房间的灯打开,而不是将所有房间的灯都打开。
又例如,在商场中,可以部署多个蓝牙网关,这些蓝牙网关彼此之间进行蓝牙连接可以形成商场环境中的蓝牙Mesh网络。当然,商场环境中的蓝牙Mesh网络还可以包括服务器。
在商场环境中,进入商场的顾客一般携带有手机、平板电脑或手环等设备,这些设备可以可发射定位信号,例如beacon。商场环境中的各个蓝牙网关可以接收该定位信号,对于接收到定位信号的蓝牙网关对外泛洪一个TTL=0的蓝牙消息,该蓝牙消息携带有定位信号的RSSI,并在一定时间(例如30s或1分钟)内接收周围蓝牙网关发送的蓝牙消息;若接收到蓝牙消息,解析出蓝牙消息中的RSSI,将解析出的RSSI与自身接收到的定位信号的RSSI进行比较,如果解析出的RSSI较弱,则记录该蓝牙消息,否则忽略该蓝牙消息,并且结束定位流程。
按照上面描述的内容,在接收到定位信号的蓝牙网关之间,可以协商出RSSI最强的蓝牙网关,该蓝牙网关将其它蓝牙网关接收到的定位信号的RSSI和自己接收到的定位信号的RSSI携带在另一蓝牙消息中一并发给服务器,服务器根据各蓝牙网关接收到的定位信号的RSSI计算被定位设备的位置。进一步,服务器可根据被定位设备的位置,确定顾客可能需要或感兴趣的推送信息,例如可以是顾客所在店铺中打折商品的名称、打折力度、新上商品的名称、介绍等信息,将这些推送信息推送到顾客的手机、平板电脑或手环等设备上。或者,还可以将这些推送信息推送到商场提供的位于顾客附近的显示屏或语音播放设备等,显示或播报给顾客。
图2a为本申请示例性实施例提供的一种定位方法的流程示意图。该方法适用于采用泛洪机制的Mesh网络中的节点设备,该节点设备可以是Mesh网络中任一节点设备。如图2a所示,该方法包括:
21a、若接收到被定位设备发出的定位信号,向周围节点设备泛洪第一消息,并在设定时间内接收周围节点设备泛洪的第一消息;所述第一消息携带有其发送者接收到的定位信号的信息,且所述第一消息不被转发。
22a、在根据自身接收到的定位信号的信息和接收到的第一消息中携带的定位信号的信息确定具备上报资格的情况下,将自身接收到的定位信号的信息和接收到的第一消息中携带的定位信号的信息上报给服务端设备,以供服务端设备对所述被定位设备进行定位。
在本实施例中,对节点设备来说,在接收到被定位设备发出的定位信号的情况下,可将接收到的定位信号的信息携带在第一消息中泛洪出去。第一消息虽然是被节点设备采用泛洪机制发送出去的,但是第一消息不被转发,即接收到第一消息的节点设备不会再将第一消息转发出去。也就是说,在本实施例中,节点设备在接收到定位信号的情况下,不是直接向服务端设备泛洪接收到的定位信号的信息,而是将接收到的定位信号的信息通知给与其直接通信连接的周围节点设备。
另外,对节点设备来说,可以根据自身接收到的定位信号的信息和接收到的第一消息中携带的定位信号的信息确定是否具备上报资格,并在确定出具备上报资格的情况下,将自身接收到的定位信号的信息和接收到的第一消息中携带的定位信号的信息上报给服务端设备,以供服务端设备对被定位设备进行定位。其中,接收到的第一消息中携带的定位信号的信息,也就是发送第一消息的节点设备接收到的定位信号的信息。在该过程中,接收到定位信号的各节点设备之间相互泛洪接收到的定位信号的信息,并可据此自主协商出具备上报资格的节点设备,由具备上报资格的节点设备向服务端设备上报自身和周围节点设备接收到的定位信号的信息,而不是各节点设备分别采用泛洪机制将接收到的定位信号的信息发送给服务端设备,这可以减少网络中传输的消息数量,有利于降低Mesh网络在定位过程中可能出现广播风暴的概率,一定程度上解决了采用泛洪机制的Mesh网络面临的定位问题。
在一可选实施例中,节点设备在周围节点设备泛洪第一消息之前,还包括:将自身接收到的定位信号的信息写入第一消息,并设置第一消息的TTL为0。其中,第一消息的TTL为0表示第一消息在网络传输过程中可以转发的最大跳数为0,即不被转发。之后,节点设备101可以采用泛洪机制,将TTL为0的第一消息发送给周围节点设备。
在一可选实施例中,定位信号的信息包括定位信号的RSSI。基于此,节点设备在确定是否具备上报资格的过程中,可以将自身接收到的定位信号的RSSI与接收到的第一消息中携带的定位信号的RSSI进行比较,并根据比较结果判断一消息占比是否大于或等于设定的比例阈值;若该消息占比大于或等于设定的比例阈值,确定具备上报资格;反之,若该消息占比小于设定的比例阈值,确定不具备上报资格。其中,消息占比是指接收到的第一消息中,所携带的定位信号的RSSI小于该节点设备接收到的定位信号的RSSI的第一消息的占比,该占比是指所携带的定位信号的RSSI小于该节点设备接收到的定位信号的RSSI的第一消息的数量与接收到的第一消息总数的比值。
值得说明的是,根据应用场景或应用需求的不同,上述比例阈值可以灵活设定。例如,上述比例阈值可以设置为0.8、0.9、095或1等。在一可选实施例中,上述比例阈值为1,则对节点设备来说,其接收到的定位信号的RSSI要大于在设定时间内接收到的每个第一消息中携带的定位信号的RSSI,简单来说,一个节点设备接收到的定位信号的RSSI要大于其周围节点设备接收到的定位信号的RSSI,才具备上报资格;反之,不具备上报资格。
进一步,在上述比例阈值为1的情况下,节点设备可以采用但不限于以下几种实施方式来确定自身是否具备上报资格:
可选实施方式1:节点设备可以在设定时间内接收周围节点设备发送的第一消息;在设定时间结束后,将自身接收到的定位信号的RSSI和接收到的各个第一消息中携带的定位信号的RSSI进行比较;若自身接收到的定位信号的RSSI是最大的,即大于接收到的每个第一消息中携带的定位信号的RSSI,则确定具备上报资格,将自身接收到的定位信号的RSSI和接收到的各个第一消息中携带的定位信号的RSSI上报给服务端设备。
可选实施方式2:节点设备可以在设定时间内接收周围节点设备发送的第一消息;每接收到一个第一消息,就将自身接收到的定位信号的RSSI与接收到的第一消息(这里的第一消息是最新接收到的第一消息)中携带的定位信号的RSSI进行比较;若自身接收到的定位信号的RSSI大于或等于接收到的第一消息中携带的定位信号的RSSI,则保存接收到的第一消息中携带的定位信号的RSSI,并等待接收下一个第一消息,直至设定时间计时结束,这种情况说明该节点设备接收到的定位信号的RSSI要大于其周围节点设备接收到的定位信号的RSSI,具备上报资格;若自身接收到的定位信号的RSSI小于接收到的第一消息中携带的定位信号的RSSI,则丢弃接收到的第一消息,并终止设定时间的计时,这种情况说明有其它节点设备接收到的定位信号的RSSI更大,该节点设备已经不具备上报资格,可以提前结束定位流程,节约资源。
在一可选实施例中,在确定出具备上报资格的情况下,节点设备可将自身接收到的定位信号的信息和接收到的第一消息中携带的定位信号的信息写入第二消息,设置第二消息的TTL,之后,向服务端设备泛洪第二消息,以供服务端设备对被定位设备进行定位。其中,第二消息的TTL的取值要保证第二消息能够成功到达服务端设备。
可选地,节点设备可以根据自身与服务端设备之间的拓扑关系,设置第二消息的TTL。其中,结合点设备与服务端设备之间的拓扑关系,可以更加合理地设置第二消息的TTL,在保证第二消息成功到达服务端设备的情况下,可以将第二消息的TTL设置的尽量小,以降低第二消息在网络中被转发的跳数,节约节点设备的计算资源和带宽资源。
进一步,节点设备可结合其与服务端设备之间的拓扑关系判断出自身是否与服务端设备直接通信连接;若与服务端设备直接通信连接,则可以设置第二消息的TTL为0;若自身未与服务端设备直接通信连接,确定从自身到服务端设备经过的最小跳数,设置第二消息的TTL为最小跳数。这样,第二消息可以以最小转发跳数成功到达服务端设备,节约节点设备的计算资源和带宽资源。
进一步,根据应用场景和定位需求的不同,在定位出被定位设备的位置之后,还可以包括以下至少一种操作:根据被定位设备的位置,对被定位设备所在环境区域内的设备进行相应控制;和/或,根据被定位设备的位置,向被定位设备推送相关信息。
其中,根据被定位设备的位置,对被定位设备所在环境区域内的设备进行相应控制的一种可选实施方式包括:接收被定位设备或被定位设备的使用者发出的设备控制指令;将设备控制指令上报给服务端设备,以供服务端设备根据被定位设备的位置确定被定位设备所在环境区域内的设备信息并返回;根据服务端设备返回的被定位设备所在环境区域内的设备信息,对被定位设备所在环境区域内的设备进行相应控制。
其中,根据被定位设备的位置,向被定位设备推送相关信息的一种可选实施方式包括:接收服务端设备发送的推送信息,将推送信息泛洪给被定位设备;其中,推送信息是服务端设备根据被定位设备的位置确定的。
在一些实施例中,上述节点设备接收到的或发送出的第一消息中携带的定位信号的信息可以是定位信号的RSSI。基于此,节点设备可以将自身接收到的定位信号的RSSI与接收到的第一消息中携带的定位信号的RSSI进行比较,并统计接收到的第一消息中,所携带的定位信号的RSSI小于节点设备自身接收到的定位信号的RSSI的第一消息的占比;根据该占比确定自身是否具备上报资格。针对该定位方法,本申请下述示例性实施例从不同角度进行了详细描述。
图2b为本申请示例性实施例提供的另一种定位方法的流程示意图。该方法适用于采用泛洪机制的Mesh网络中的节点设备,该节点设备可以是Mesh网络中任一节点设备。如图2b所示,该方法包括:
21b、若接收到被定位设备发出的定位信号,向周围节点设备泛洪第一消息,并在设定时间内接收周围节点设备泛洪的第一消息;所述第一消息携带有其发送者接收到的定位信号的RSSI,且所述第一消息不被转发。
22b、将接收到的第一消息中携带的定位信号的RSSI与自身接收到的定位信号的RSSI进行比较,并统计接收到的第一消息中,所携带的定位信号的RSSI小于自身接收到的定位信号的RSSI的第一消息的占比。
23b、若所述占比大于或等于设定的比例阈值,将自身接收到的定位信号的RSSI和接收到的第一消息中携带的定位信号的RSSI上报给服务端设备,以供服务端设备对被定位设备进行定位。
图2c为本申请示例性实施例提供的又一种定位方法的流程示意图。该方法适用于采用泛洪机制的Mesh网络中的节点设备,该节点设备可以是Mesh网络中任一节点设备。如图2c所示,该方法包括:
21c、若接收到被定位设备发出的定位信号,向周围节点设备泛洪第一消息,并在设定时间内接收周围节点设备泛洪的第一消息;所述第一消息携带有其发送者接收到的定位信号的RSSI,且所述第一消息不被转发。
22c、将接收到的第一消息中携带的定位信号的RSSI与自身接收到的定位信号的RSSI进行比较,并统计接收到的第一消息中,所携带的定位信号的RSSI小于自身接收到的定位信号的RSSI的第一消息的占比。
23c、若所述占比小于设定的比例阈值,丢弃接收到的第一消息,并终止所述设定时间的计时。
在图2b所示实施例中,重点描述了节点设备具备上报资格的情况,即所述占比大于或等于设定的比例阈值的情况;在该情况下,节点设备可将自身接收到的定位信号的RSSI和接收到的第一消息中携带的定位信号的RSSI上报给服务端设备,这样服务端设备可根据具备上报资格的节点设备上报的其自身和其它节点设备接收到的定位信号的RSSI,结合该节点设备与其它节点设备的位置信息,对被定位设备进行定位。
在图2c所示实施例中,重点描述了节点设备不具备上报资格的情况,即所述占比小于设定的比例阈值的情况;在该情况下,节点设备可丢弃接收到的第一消息,并终止设定时间的计时,自身接收到的定位信号的RSSI会由具备上报资格的节点设备代为上报给服务端设备。
在图2b和图2c中,并不限定比例阈值的具体取值,可以根据应用需求灵活设定。例如,比例阈值可以是100%、80%、95%、0.98、1或0.90等等。关于比例阈值取值为1或100%的情况,其详细实施方式可参见前述实施例的描述,在此不再赘述。另外,图2b和图2c所示实施例中其它步骤的详细实施方式也可参见前述实施例,在此不再赘述。
综上可知,在采用泛洪机制的Mesh网络中,被定位设备发出定位信号,Mesh网络中的节点设备接收被定位设备发出的定位信号,并通过不被转发的消息将接收到的定位信号的信息泛洪出去,基于此,节点设备之间可自主选择出具备上报资格的节点设备,并由具备上报资格的节点设备将各节点设备接收到的定位信号的信息上报给服务器,供服务器对被定位设备进行定位。一方面可降低被定位设备的功耗,另一方面可减少网络中传输的消息数量,有利于降低Mesh网络在定位过程中可能出现的广播风暴的概率,一定程度上解决了采用泛洪机制的Mesh网络面临的定位问题。
在本申请上述系统实施例和方法实施例中,均以采用泛洪机制的Mesh网络为例对本申请技术方案进行了示例性说明。需要说明的是,本申请技术方案并不局限于采用泛洪机制的Mesh网络,对于采用其它通信机制的Mesh网络同样适用。为此,本申请示例性实施例还提供一种定位方法,该定位方法适用于任何Mesh网络中的节点设备,如图2d所示,该方法包括以下步骤:
21d、若接收到被定位设备发出的定位信号,向周围节点设备发送第一消息,并在设定时间内接收周围节点设备发送的第一消息;所述第一消息携带有其发送者接收到的定位信号的信息,且所述第一消息不被转发。
22d、在根据自身接收到的定位信号的信息和接收到的第一消息中携带的定位信号的信息确定具备上报资格的情况下,将自身接收到的定位信号的信息和接收到的第一消息中携带的定位信号的信息上报给服务端设备,以供服务端设备对被定位设备进行定位。
在本实施例中,处于Mesh网络中的被定位设备可以对外发出定位信号,例如信标(beacon)信号;定位信号会被Mesh网络中的节点设备接收,节点设备可将接收到的定位信号的信息发送出去,以便该定位信号的信息被传输至服务端设备,供服务端设备据此对被定位设备进行定位。
在本实施例中,并不限定Mesh网络采用的通信机制。无论Mesh网络采用何种通信机制,在对被定位设备进行定位过程中,Mesh网络中传输的消息数量难免会增多,为了减少Mesh网络中传输的消息数量,节约网络资源,在本实施例中,对任一节点设备来说,若接收到被定位设备发出的定位信号,则向周围节点设备发送一个不被转发的第一消息,并会在设定时间内接收周围节点发送的不被转发的第一消息。第一消息中携带有其发送者接收到的定位信号的信息。定位信号的信息可以是但不限于:定位信号的RSSI、定位信号的方位信息、定位信号的衰减值等任何能够用于对被定位设备进行定位的信息。
在本实施例中,对任一节点设备来说,可以根据自身接收到的定位信号的信息和接收到的第一消息中携带的定位信号的信息确定是否具备上报资格,并在确定出具备上报资格的情况下,将自身接收到的定位信号的信息和接收到的第一消息中携带的定位信号的信息上报给服务端设备,以供服务端设备对被定位设备进行定位。
在本实施例中,接收到定位信号的各节点设备之间相互发送第一消息,在第一消息中携带其接收到的定位信号的信息,并可据此自主协商出具备上报资格的节点设备,由具备上报资格的节点设备向服务端设备上报自身和周围节点设备接收到的定位信号的信息,而且用于自主协商的第一消息不被转发,即接收到第一消息的节点设备不会再将第一消息转发出去,一定程度上可以减少网络中传输的消息数量,有利于降低Mesh网络在定位过程中可能出现广播风暴的概率,解决了Mesh网络面临的定位问题。
在一些可选实施例中,定位信号的信息包含为定位信号的RSSI。基于此,对任一节点设备来说,可以将自身接收到的定位信号的RSSI与接收到的第一消息中携带的定位信号的RSSI进行比较,并根据比较结果统计接收到的第一消息中,所携带的定位信号的RSSI小于自身接收到的定位信号的RSSI的第一消息的占比;将该占比与预设的占比阈值进行比较;若该消息占比大于或等于设定的比例阈值,确定具备上报资格;反之,若该消息占比小于设定的比例阈值,确定不具备上报资格。
本实施例与前述实施例类似,关于相同或相似步骤的详细实施方式或描述,可参见前述实施例,在此不再赘述。
需要说明的是,在上述实施例及附图中的描述的一些流程中,包含了按照特定顺序出现的多个操作,但是应该清楚了解,这些操作可以不按照其在本文中出现的顺序来执行或并行执行,操作的序号如21a、22a等,仅仅是用于区分开各个不同的操作,序号本身不代表任何的执行顺序。另外,这些流程可以包括更多或更少的操作,并且这些操作可以按顺序执行或并行执行。需要说明的是,本文中的“第一”、“第二”等描述,是用于区分不同的消息、设备、模块等,不代表先后顺序,也不限定“第一”和“第二”是不同的类型。
图3为本申请示例性实施例提供的一种节点设备的结构示意图。如图3所示,该节点设备,包括:存储器31、处理器32以及通信组件33。
存储器31,用于存储计算机程序,并可被配置为存储其它各种数据以支持在节点设备上的操作。这些数据的示例包括用于在节点设备上操作的任何应用程序或方法的指令,联系人数据,电话簿数据,消息,图片,视频等。
存储器31可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(SRAM),电可擦除可编程只读存储器(EEPROM),可擦除可编程只读存储器(EPROM),可编程只读存储器(PROM),只读存储器(ROM),磁存储器,快闪存储器,磁盘或光盘。
处理器32,与存储器31耦合,用于执行存储器31中的计算机程序,以用于:在通信组件33接收到被定位设备发出的定位信号的情况下,通过通信组件33向周围节点设备泛洪第一消息,并在设定时间内接收周围节点设备泛洪的第一消息;所述第一消息携带有其发送者接收到的定位信号的信息,且所述第一消息不被转发;以及
在根据其所属节点设备接收到的定位信号的信息和接收到的第一消息中携带的定位信号的信息确定其所属节点设备具备上报资格的情况下,通过所述通信组件将其所属节点设备接收到的定位信号的信息和接收到的第一消息中携带的定位信号的信息上报给服务端设备,以供服务端设备对被定位设备进行定位。
在一可选实施例中,处理器32还用于:在通过通信组件33向周围节点设备泛洪第一消息之前,将其所属节点设备接收到的定位信号的信息写入第一消息,并设置第一消息的TTL为0。
在一可选实施例中,定位信号的信息包括定位信号的RSSI。基于此,处理器32在确定其所属节点设备具备上报资格时,具体用于:若接收到的第一消息中,所携带的定位信号的RSSI小于其所属节点设备接收到的定位信号的RSSI的第一消息的占比大于或等于设定的比例阈值,确定其所属节点设备具备上报资格。
可选地,上述设定的比例阈值为1。则处理器32还用于:每接收到一个第一消息,就将其所属节点设备接收到的定位信号的RSSI与接收到的第一消息中携带的定位信号的RSSI进行比较;若其所属节点设备接收到的定位信号的RSSI大于或等于接收到的第一消息中携带的定位信号的RSSI,则保存接收到的第一消息中携带的定位信号的RSSI,并等待接收下一个第一消息,直至所述设定时间计时结束;若其所属节点设备接收到的定位信号的RSSI小于接收到的第一消息中携带的定位信号的RSSI,则丢弃接收到的第一消息,并终止所述设定时间的计时。
在一可选实施例中,处理器32在上报给服务端设备时,具体用于:将其所属节点设备接收到的定位信号的信息和接收到的第一消息中携带的定位信号的信息写入第二消息,设置所述第二消息的TTL;通过所述通信组件向所述服务端设备泛洪所述第二消息,以供所述服务端设备对所述被定位设备进行定位。
进一步,处理器32在设置所述第二消息的TTL时,具体用于:根据其所属节点设备与服务端设备之间的拓扑关系,设置所述第二消息的TTL。
更进一步,处理器32具体用于:在其所属节点设备与服务端设备直接通信连接的情况下,设置第二消息的TTL为0;在其所属节点设备未与服务端设备直接通信连接的情况下,确定从其所属节点设备到服务端设备经过的最小跳数,设置第二消息的TTL为该最小跳数。
进一步,如图3所示,该节点设备还包括:显示器34、电源组件35、音频组件36等其它组件。图3中仅示意性给出部分组件,并不意味着节点设备仅包括3所示组件。另外,根据节点设备的实现形态的不同,图3中虚线框内的组件为可选组件,而非必选组件。
图4为本申请示例性实施例提供的另一种节点设备的结构示意图。如图4所示,该节点设备,包括:存储器41、处理器42以及通信组件43。
存储器41,用于存储计算机程序,并可被配置为存储其它各种数据以支持在节点设备上的操作。这些数据的示例包括用于在节点设备上操作的任何应用程序或方法的指令,联系人数据,电话簿数据,消息,图片,视频等。
存储器41可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(SRAM),电可擦除可编程只读存储器(EEPROM),可擦除可编程只读存储器(EPROM),可编程只读存储器(PROM),只读存储器(ROM),磁存储器,快闪存储器,磁盘或光盘。
处理器42,与存储器41耦合,用于执行存储器41中的计算机程序,以用于:在通信组件43接收到被定位设备发出的定位信号的情况下,通过通信组件43向周围节点设备泛洪第一消息,并在设定时间内接收周围节点设备泛洪的第一消息;第一消息携带有其发送者接收到的定位信号的RSSI,且第一消息不被转发;以及
将接收到的第一消息中携带的定位信号的RSSI与自身接收到的定位信号的RSSI进行比较,并统计接收到的第一消息中,所携带的定位信号的RSSI小于自身接收到的定位信号的RSSI的第一消息的占比;
若所述占比大于或等于设定的比例阈值,将自身接收到的定位信号的RSSI和接收到的第一消息中携带的定位信号的RSSI上报给服务端设备,以供服务端设备对被定位设备进行定位
可选地,处理器42还用于:若所述占比小于设定的比例阈值,丢弃接收到的第一消息,并终止设定时间的计时。
在一可选实施例中,处理器42还用于:在通过通信组件43向周围节点设备泛洪第一消息之前,将其所属节点设备接收到的定位信号的RSSI写入第一消息,并设置第一消息的TTL为0。
可选地,上述设定的比例阈值为1。则处理器42还用于:每接收到一个第一消息,就将其所属节点设备接收到的定位信号的RSSI与接收到的第一消息中携带的定位信号的RSSI进行比较;若其所属节点设备接收到的定位信号的RSSI大于或等于接收到的第一消息中携带的定位信号的RSSI,则保存接收到的第一消息中携带的定位信号的RSSI,并等待接收下一个第一消息,直至所述设定时间计时结束;若其所属节点设备接收到的定位信号的RSSI小于接收到的第一消息中携带的定位信号的RSSI,则丢弃接收到的第一消息,并终止所述设定时间的计时。
在一可选实施例中,处理器42在上报给服务端设备时,具体用于:将其所属节点设备接收到的定位信号的信息和接收到的第一消息中携带的定位信号的信息写入第二消息,设置所述第二消息的TTL;通过所述通信组件向所述服务端设备泛洪所述第二消息,以供所述服务端设备对所述被定位设备进行定位。
进一步,处理器42在设置所述第二消息的TTL时,具体用于:根据其所属节点设备与服务端设备之间的拓扑关系,设置所述第二消息的TTL。
更进一步,处理器42具体用于:在其所属节点设备与服务端设备直接通信连接的情况下,设置第二消息的TTL为0;在其所属节点设备未与服务端设备直接通信连接的情况下,确定从其所属节点设备到服务端设备经过的最小跳数,设置第二消息的TTL为该最小跳数。
进一步,如图4所示,该节点设备还包括:显示器44、电源组件45、音频组件46等其它组件。图4中仅示意性给出部分组件,并不意味着节点设备仅包括4所示组件。另外,根据节点设备的实现形态的不同,图4中虚线框内的组件为可选组件,而非必选组件。
其中,图3和图4所示实施例提供的节点设备,可应用于采用泛洪机制的Mesh网络中,与Mesh网络中的其它节点设备相互配合,可自主选择出具备上报资格的节点设备,并由具备上报资格的节点设备将各节点设备接收到的定位信号的信息上报给服务器,供服务器对被定位设备进行定位。一方面可降低被定位设备的功耗,另一方面可减少网络中传输的消息数量,有利于降低Mesh网络在定位过程中可能出现的广播风暴的概率,一定程度上解决了采用泛洪机制的Mesh网络面临的定位问题。
图5为本申请示例性实施例提供的另一种节点设备的结构示意图。如图5所示,该节点设备,包括:存储器51、处理器52以及通信组件53。
存储器51,用于存储计算机程序,并可被配置为存储其它各种数据以支持在节点设备上的操作。这些数据的示例包括用于在节点设备上操作的任何应用程序或方法的指令,联系人数据,电话簿数据,消息,图片,视频等。
存储器51可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(SRAM),电可擦除可编程只读存储器(EEPROM),可擦除可编程只读存储器(EPROM),可编程只读存储器(PROM),只读存储器(ROM),磁存储器,快闪存储器,磁盘或光盘。
处理器52,与存储器51耦合,用于执行存储器51中的计算机程序,以用于:在通信组件53接收到被定位设备发出的定位信号的情况下,通过通信组件53向周围节点设备发送第一消息,并在设定时间内接收周围节点设备发送的第一消息;第一消息携带有其发送者接收到的定位信号的信息,且第一消息不被转发;以及
在根据自身接收到的定位信号的信息和接收到的第一消息中携带的定位信号的信息确定具备上报资格的情况下,将自身接收到的定位信号的信息和接收到的第一消息中携带的定位信号的信息上报给服务端设备,以供服务端设备对被定位设备进行定位。
在一可选实施例中,处理器52还用于:在通过通信组件53向周围节点设备发送第一消息之前,将其所属节点设备接收到的定位信号的信息写入第一消息,并设置第一消息的TTL为0。
在一可选实施例中,定位信号的信息包括定位信号的RSSI。基于此,处理器52在确定其所属节点设备具备上报资格时,具体用于:将接收到的第一消息中携带的定位信号的RSSI与自身接收到的定位信号的RSSI进行比较,并统计接收到的第一消息中,所携带的定位信号的RSSI小于自身接收到的定位信号的RSSI的第一消息的占比;若所述占比大于或等于设定的比例阈值,确定具备上报资格。
进一步,处理器52还用于:若所述占比小于设定的比例阈值,确定不具备上报资格,则丢弃接收到的第一消息,并终止设定时间的计时。
可选地,上述设定的比例阈值为1。则处理器52还用于:每接收到一个第一消息,就将其所属节点设备接收到的定位信号的RSSI与接收到的第一消息中携带的定位信号的RSSI进行比较;若其所属节点设备接收到的定位信号的RSSI大于或等于接收到的第一消息中携带的定位信号的RSSI,则保存接收到的第一消息中携带的定位信号的RSSI,并等待接收下一个第一消息,直至设定时间计时结束;若其所属节点设备接收到的定位信号的RSSI小于接收到的第一消息中携带的定位信号的RSSI,则丢弃接收到的第一消息,并终止设定时间的计时。
在一可选实施例中,处理器52在上报给服务端设备时,具体用于:将其所属节点设备接收到的定位信号的信息和接收到的第一消息中携带的定位信号的信息写入第二消息,设置所述第二消息的TTL;通过通信组件53向服务端设备泛洪第二消息,以供服务端设备对被定位设备进行定位。
进一步,处理器52在设置第二消息的TTL时,具体用于:根据其所属节点设备与服务端设备之间的拓扑关系,设置第二消息的TTL。
更进一步,处理器52具体用于:在其所属节点设备与服务端设备直接通信连接的情况下,设置第二消息的TTL为0;在其所属节点设备未与服务端设备直接通信连接的情况下,确定从其所属节点设备到服务端设备经过的最小跳数,设置第二消息的TTL为该最小跳数。
进一步,如图5所示,该节点设备还包括:显示器54、电源组件55、音频组件56等其它组件。图5中仅示意性给出部分组件,并不意味着节点设备仅包括5所示组件。另外,根据节点设备的实现形态的不同,图5中虚线框内的组件为可选组件,而非必选组件。
图5所示实施例提供的节点设备,可应用于任何Mesh网络中,与Mesh网络中的其它节点设备相互配合,可自主选择出具备上报资格的节点设备,并由具备上报资格的节点设备将各节点设备接收到的定位信号的信息上报给服务器,供服务器对被定位设备进行定位。一方面可降低被定位设备的功耗,另一方面可减少网络中传输的消息数量,有利于降低Mesh网络在定位过程中可能出现的广播风暴的概率,一定程度上解决了Mesh网络面临的定位问题。
相应地,本申请实施例还提供一种存储有计算机程序的计算机可读存储介质,当计算机程序被处理器执行时,可致使处理器实现上述各个方法实施例中的各步骤。
上述图3-图5所示实施例中的通信组件被配置为便于通信组件所在设备和其他设备之间有线或无线方式的通信。通信组件所在设备可以接入基于通信标准的无线网络,如WiFi,2G或3G,或它们的组合。在一个示例性实施例中,通信组件经由广播信道接收来自外部广播管理系统的广播信号或广播相关信息。在一个示例性实施例中,所述通信组件还可以包括近场通信(NFC)模块,射频识别(RFID)技术,红外数据协会(IrDA)技术,超宽带(UWB)技术,蓝牙(BT)技术等。
上述图3-图5所示实施例中的显示器包括屏幕,其屏幕可以包括液晶显示器(LCD)和触摸面板(TP)。如果屏幕包括触摸面板,屏幕可以被实现为触摸屏,以接收来自用户的输入信号。触摸面板包括一个或多个触摸传感器以感测触摸、滑动和触摸面板上的手势。所述触摸传感器可以不仅感测触摸或滑动动作的边界,而且还检测与所述触摸或滑动操作相关的持续时间和压力。
上述图3-图5所示实施例中的电源组件,为电源组件所在设备的各种组件提供电力。电源组件可以包括电源管理系统,一个或多个电源,及其他与为电源组件所在设备生成、管理和分配电力相关联的组件。
上述图3-图5所示实施例中的音频组件,可被配置为输出和/或输入音频信号。例如,音频组件包括一个麦克风(MIC),当音频组件所在设备处于操作模式,如呼叫模式、记录模式和语音识别模式时,麦克风被配置为接收外部音频信号。所接收的音频信号可以被进一步存储在存储器或经由通信组件发送。在一些实施例中,音频组件还包括一个扬声器,用于输出音频信号。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
以上所述仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。
Claims (21)
1.一种定位方法,适于采用泛洪机制的Mesh网络中的节点设备,其特征在于,所述方法包括:
若接收到被定位设备发出的定位信号,向周围节点设备泛洪第一消息,并在设定时间内接收周围节点设备泛洪的第一消息;所述第一消息携带有其发送者接收到的定位信号的信息,且所述第一消息不被转发;以及
在根据自身接收到的定位信号的信息和接收到的第一消息中携带的定位信号的信息确定具备上报资格的情况下,将自身接收到的定位信号的信息和接收到的第一消息中携带的定位信号的信息上报给服务端设备,以供服务端设备对所述被定位设备进行定位;
其中,所述定位信号的信息包括定位信号的接收的信号强度指示RSSI;根据自身接收到的定位信号的信息和接收到的第一消息中携带的定位信号的信息确定具备上报资格,包括:若接收到的第一消息中,所携带的定位信号的RSSI小于自身接收到的定位信号的RSSI的第一消息的占比大于或等于设定的比例阈值,确定具备上报资格。
2.根据权利要求1所述的方法,其特征在于,在向周围节点设备泛洪第一消息之前,还包括:
将自身接收到的定位信号的信息写入第一消息,并设置所述第一消息的生存时间为0。
3.根据权利要求1所述的方法,其特征在于,所述设定的比例阈值为1,则所述方法还包括:
每接收到一个第一消息,就将自身接收到的定位信号的RSSI与接收到的第一消息中携带的定位信号的RSSI进行比较;
若自身接收到的定位信号的RSSI大于或等于接收到的第一消息中携带的定位信号的RSSI,则保存接收到的第一消息中携带的定位信号的RSSI,并等待接收下一个第一消息,直至所述设定时间计时结束;
若自身接收到的定位信号的RSSI小于接收到的第一消息中携带的定位信号的RSSI,则丢弃接收到的第一消息,并终止所述设定时间的计时。
4.根据权利要求1-3任一项所述的方法,其特征在于,将自身接收到的定位信号的信息和接收到的第一消息中携带的定位信号的信息上报给服务端设备,以供服务端设备对所述被定位设备进行定位,包括:
将自身接收到的定位信号的信息和接收到的第一消息中携带的定位信号的信息写入第二消息,设置所述第二消息的生存时间;
向所述服务端设备泛洪所述第二消息,以供所述服务端设备对所述被定位设备进行定位。
5.根据权利要求4所述的方法,其特征在于,设置所述第二消息的生存时间,包括:
根据自身与所述服务端设备之间的拓扑关系,设置所述第二消息的生存时间。
6.根据权利要求5所述的方法,其特征在于,根据自身与所述服务端设备之间的拓扑关系,设置所述第二消息的生存时间的取值,包括:
若自身与所述服务端设备直接通信连接,设置所述第二消息的生存时间为0;
若自身未与所述服务端设备直接通信连接,确定从自身到所述服务端设备经过的最小跳数,设置所述第二消息的生存时间为所述最小跳数。
7.根据权利要求1-3任一项所述的方法,其特征在于,还包括以下至少一种操作:
根据所述被定位设备的位置,对所述被定位设备所在环境区域内的设备进行相应控制;
根据所述被定位设备的位置,向所述被定位设备推送相关信息。
8.根据权利要求7所述的方法,其特征在于,根据所述被定位设备的位置,对所述被定位设备所在环境区域内的设备进行相应控制,包括:
接收所述被定位设备或所述被定位设备的使用者发出的设备控制指令;
将所述设备控制指令上报给所述服务端设备,以供所述服务端设备根据所述被定位设备的位置确定所述被定位设备所在环境区域内的设备信息并返回;
根据所述服务端设备返回的所述被定位设备所在环境区域内的设备信息,对所述被定位设备所在环境区域内的设备进行相应控制。
9.根据权利要求7所述的方法,其特征在于,根据所述被定位设备的位置,向所述被定位设备推送相关信息,包括:
接收所述服务端设备发送的推送信息,将所述推送信息泛洪给所述被定位设备;其中,所述推送信息是所述服务端设备根据所述被定位设备的位置确定的。
10.一种定位方法,适用于Mesh网络中的节点设备,其特征在于,所述方法包括:
若接收到被定位设备发出的定位信号,向周围节点设备发送第一消息,并在设定时间内接收周围节点设备发送的第一消息;所述第一消息携带有其发送者接收到的定位信号的信息,且所述第一消息不被转发;以及
在根据自身接收到的定位信号的信息和接收到的第一消息中携带的定位信号的信息确定具备上报资格的情况下,将自身接收到的定位信号的信息和接收到的第一消息中携带的定位信号的信息上报给服务端设备,以供服务端设备对所述被定位设备进行定位;
其中,所述定位信号的信息包括定位信号的接收的信号强度指示RSSI;根据自身接收到的定位信号的信息和接收到的第一消息中携带的定位信号的信息确定具备上报资格,包括:若接收到的第一消息中,所携带的定位信号的RSSI小于自身接收到的定位信号的RSSI的第一消息的占比大于或等于设定的比例阈值,确定具备上报资格。
11.一种定位方法,其特征在于,采用泛洪机制的Mesh网络中的节点设备,所述方法包括:
若接收到被定位设备发出的定位信号,向周围节点设备泛洪第一消息,并在设定时间内接收周围节点设备泛洪的第一消息;所述第一消息携带有其发送者接收到的定位信号的RSSI,且所述第一消息不被转发;以及
将接收到的第一消息中携带的定位信号的RSSI与自身接收到的定位信号的RSSI进行比较,并统计接收到的第一消息中,所携带的定位信号的RSSI小于自身接收到的定位信号的RSSI的第一消息的占比;
若所述占比大于或等于设定的比例阈值,将自身接收到的定位信号的RSSI和接收到的第一消息中携带的定位信号的RSSI上报给服务端设备,以供服务端设备对所述被定位设备进行定位。
12.一种定位方法,适用于采用泛洪机制的Mesh网络中的节点设备,其特征在于,所述方法包括:
若接收到被定位设备发出的定位信号,向周围节点设备泛洪第一消息,并在设定时间内接收周围节点设备泛洪的第一消息;所述第一消息携带有其发送者接收到的定位信号的RSSI,且所述第一消息不被转发;以及
将接收到的第一消息中携带的定位信号的RSSI与自身接收到的定位信号的RSSI进行比较,并统计接收到的第一消息中,所携带的定位信号的RSSI小于自身接收到的定位信号的RSSI的第一消息的占比;
若所述占比小于设定的比例阈值,丢弃接收到的第一消息,并终止所述设定时间的计时。
13.一种节点设备,其特征在于,包括:存储器、处理器和通信组件;
所述存储器,用于存储计算机程序;
所述处理器,与所述存储器耦合,用于执行所述计算机程序,以用于:
在所述通信组件接收到被定位设备发出的定位信号的情况下,通过所述通信组件向周围节点设备泛洪第一消息,并在设定时间内接收周围节点设备泛洪的第一消息;所述第一消息携带有其发送者接收到的定位信号的信息,且所述第一消息不被转发;以及
在根据其所属节点设备接收到的定位信号的信息和接收到的第一消息中携带的定位信号的信息确定其所属节点设备具备上报资格的情况下,通过所述通信组件将其所属节点设备接收到的定位信号的信息和接收到的第一消息中携带的定位信号的信息上报给服务端设备,以供所述服务端设备对所述被定位设备进行定位;
其中,所述定位信号的信息包括定位信号的接收的信号强度指示RSSI;根据自身接收到的定位信号的信息和接收到的第一消息中携带的定位信号的信息确定具备上报资格,包括:若接收到的第一消息中,所携带的定位信号的RSSI小于自身接收到的定位信号的RSSI的第一消息的占比大于或等于设定的比例阈值,确定具备上报资格。
14.根据权利要求13所述的节点设备,其特征在于,所述处理器还用于:将其所属节点设备接收到的定位信号的信息写入第一消息,并设置所述第一消息的生存时间为0。
15.根据权利要求13所述的节点设备,其特征在于,所述设定的比例阈值为1,则所述处理器还用于:
每接收到一个第一消息,就将其所属节点设备接收到的定位信号的RSSI与接收到的第一消息中携带的定位信号的RSSI进行比较;
若其所属节点设备接收到的定位信号的RSSI大于或等于接收到的第一消息中携带的定位信号的RSSI,则保存接收到的第一消息中携带的定位信号的RSSI,并等待接收下一个第一消息,直至所述设定时间计时结束;
若其所属节点设备接收到的定位信号的RSSI小于接收到的第一消息中携带的定位信号的RSSI,则丢弃接收到的第一消息,并终止所述设定时间的计时。
16.根据权利要求13-15任一项所述的节点设备,其特征在于,所述处理器在上报给服务端设备时,具体用于:
将其所属节点设备接收到的定位信号的信息和接收到的第一消息中携带的定位信号的信息写入第二消息,设置所述第二消息的生存时间;
通过所述通信组件向所述服务端设备泛洪所述第二消息,以供所述服务端设备对所述被定位设备进行定位。
17.根据权利要求16所述的节点设备,其特征在于,所述处理器在设置所述第二消息的生存时间时,具体用于:根据其所属节点设备与所述服务端设备之间的拓扑关系,设置所述第二消息的生存时间。
18.根据权利要求17所述的节点设备,其特征在于,所述处理器具体用于:在其所属节点设备与所述服务端设备直接通信连接的情况下,设置所述第二消息的生存时间为0;在其所属节点设备未与所述服务端设备直接通信连接的情况下,确定从其所属节点设备到所述服务端设备经过的最小跳数,设置所述第二消息的生存时间为所述最小跳数。
19.一种采用泛洪机制的网状Mesh网络,其特征在于,包括:多个节点设备和服务端设备;其中,所述多个节点设备之间相互连接,且所述服务端设备至少与所述多个节点设备中的一个节点设备直接通信连接;
每个节点设备,用于在接收到被定位设备发出的定位信号的情况下,向周围节点设备泛洪第一消息,并在设定时间内接收周围节点设备泛洪的第一消息;所述第一消息携带有其发送者接收到的定位信号的信息,且所述第一消息不被转发;以及
在根据自身接收到的定位信号的信息和接收到的第一消息中携带的定位信号的信息确定具备上报资格的情况下,将自身接收到的定位信号的信息和接收到的第一消息中携带的定位信号的信息上报给服务端设备,以供服务端设备对所述被定位设备进行定位;
其中,所述定位信号的信息包括定位信号的接收的信号强度指示RSSI;根据自身接收到的定位信号的信息和接收到的第一消息中携带的定位信号的信息确定具备上报资格,包括:若接收到的第一消息中,所携带的定位信号的RSSI小于自身接收到的定位信号的RSSI的第一消息的占比大于或等于设定的比例阈值,确定具备上报资格。
20.根据权利要求19所述的Mesh网络,其特征在于,所述Mesh网络为蓝牙Mesh网络,所述多个节点设备为接入所述蓝牙Mesh网络的多个蓝牙设备。
21.一种存储有计算机程序的计算机可读存储介质,其特征在于,当所述计算机程序被处理器执行时,致使所述处理器实现权利要求1-12任一项所述方法中的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910465409.3A CN112020116B (zh) | 2019-05-30 | 2019-05-30 | 定位方法、设备、系统及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910465409.3A CN112020116B (zh) | 2019-05-30 | 2019-05-30 | 定位方法、设备、系统及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112020116A CN112020116A (zh) | 2020-12-01 |
CN112020116B true CN112020116B (zh) | 2023-03-10 |
Family
ID=73500957
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910465409.3A Active CN112020116B (zh) | 2019-05-30 | 2019-05-30 | 定位方法、设备、系统及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112020116B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2023179241A1 (zh) * | 2022-03-25 | 2023-09-28 | 华为技术有限公司 | 一种定位方法和装置 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7593376B2 (en) * | 2005-12-07 | 2009-09-22 | Motorola, Inc. | Method and apparatus for broadcast in an ad hoc network using elected broadcast relay nodes |
US8194541B2 (en) * | 2009-05-29 | 2012-06-05 | Nokia Corporation | Method and apparatus for providing a collaborative reply over an ad-hoc mesh network |
CN101778472B (zh) * | 2010-02-05 | 2012-07-04 | 中国地质大学(武汉) | 一种无线传感器网络的分布式节点定位方法 |
CN109462887A (zh) * | 2018-12-19 | 2019-03-12 | 京信通信系统(中国)有限公司 | 基于蓝牙的定位方法、装置、计算机存储介质及设备 |
-
2019
- 2019-05-30 CN CN201910465409.3A patent/CN112020116B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN112020116A (zh) | 2020-12-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TW201947917A (zh) | 藍牙網狀網路及其配網方法、設備與儲存媒體 | |
US20220082676A1 (en) | Electronic device for performing ranging through ultra-wide band (uwb), and method for operating electronic device | |
US9204390B2 (en) | Energy-saving mobile node control method using wireless multi-interfaces | |
US10306437B2 (en) | Smart device grouping system, method and apparatus | |
EP3706472B1 (en) | Communication mode selection method for multimode iot device, iot device and storage medium | |
CN111050417B (zh) | 无线物联网设备控制方法及相关装置 | |
CN112350981B (zh) | 一种切换通信协议的方法、装置和系统 | |
GB2519179A (en) | Exchanging configuration information wirelessly | |
EP3678389A1 (en) | Paging message sending and receiving method and apparatus, base station, and user equipment | |
CN107667493B (zh) | 网状网络中信号发送/接收设备及方法 | |
KR20190047598A (ko) | 데이터를 전송하는 방법 및 장치 | |
CN112910744A (zh) | 智能设备控制方法及装置、存储介质及电子设备 | |
CN112020116B (zh) | 定位方法、设备、系统及存储介质 | |
US9973595B2 (en) | Neighbor aware network data link profiles | |
US8879422B2 (en) | Fairness provision via controlling a transmission opportunity window in a wireless mesh network | |
JP7279119B2 (ja) | 重要業績評価指標の階層的計算のためのシステム及び方法 | |
CN112820094B (zh) | 一种控制方法、设备、系统及存储介质 | |
KR102402853B1 (ko) | 스탠드얼론 자동실행 및 스탠드얼론 동시실행 서비스 제공 장치 및 그 방법 | |
CN112770271B (zh) | 基于信息广播的数据传输方法、装置、系统和存储介质 | |
US9955293B2 (en) | Systems and methods for device provisioning | |
CN113067757A (zh) | 信息发送和存储方法、装置和介质 | |
CN214799900U (zh) | Nfc交互平板和交互系统 | |
US12010618B2 (en) | Apparatus and method for promoting in-device coexistence between Wi-Fi and ultra-wide band communication | |
WO2024020886A1 (zh) | 信息监听、信息发送方法及装置、存储介质 | |
JP6894938B2 (ja) | 基地局、通信状況情報出力方法、および通信状況情報出力プログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |