确定距离的方法及站点与流程

文档序号:12280402阅读:495来源:国知局
确定距离的方法及站点与流程

本发明涉及通信领域,更具体地,涉及一种确定距离的方法及站点。



背景技术:

随着智慧城市的逐渐兴起,越来越多的设备需要采集数据,并通过通讯链路将采集到的数据上传至服务器。进一步地,运营商的服务器可以对上传的数据进行分析,从而能够为各个设备提供更好的服务或更有效的管理。为了方便运营和维护,服务器需要确定各个设备的位置。

传统的用于确定位置的方式包括如GPS、北斗等的定位系统,这些传统的定位系统可以用于确定设备与服务器之间的距离,然而这些传统的定位系统不仅会增加成本与功耗,并且在室内或地下室等区域的效果欠佳。因此,急需一种新的定位的方式来确定距离。



技术实现要素:

考虑到上述问题而提出了本发明。本发明提供了一种确定距离的方法及站点,通过两个站点之间的交互,方便地确定两个站点之间的距离,该方法简单易实现。

第一方面,提供了一种确定距离的方法,包括:

第一站点确定与第二站点之间的时钟偏差;

所述第一站点获取所述第二站点与所述第一站点之间的延迟时间;

所述第一站点根据所述时钟偏差以及所述延迟时间,确定所述第一站点与所述第二站点之间的距离。

示例性地,在一种可能的实现方式中,确定所述第一站点与所述第二站点之间的距离,包括:

在第一时刻向所述第二站点发送测试报文;

在第二时刻接收所述第二站点发送的针对所述测试报文的应答报文;

根据所述时钟偏差、所述第一时刻、所述第二时刻以及所述延迟时间,确定所述第一站点与所述第二站点之间的距离。

示例性地,在又一种可能的实现方式中,根据所述时钟偏差、所述第一时刻、所述第二时刻以及所述延迟时间,确定所述第一站点与所述第二站点之间的距离,包括:

根据所述时钟偏差、所述第一时刻、所述第二时刻以及所述延迟时间确定传输时长;

确定所述第一站点与所述第二站点之间的距离为传输时长与光速的乘积除以2。

示例性地,在又一种可能的实现方式中,根据所述时钟偏差、所述第一时刻、所述第二时刻以及所述延迟时间确定传输时长,包括:

确定所述传输时长为:所述第二时刻与所述第一时刻之间的时长减去所述延迟时间与所述时钟偏差之积。

示例性地,在又一种可能的实现方式中,所述确定与第二站点之间的时钟偏差,包括:

在第三时刻接收所述第二站点发送的第一报文,所述第一报文携带第一时间戳,所述第一时间戳用于表示所述第一报文在所述第二站点处的发送时刻;

在第四时刻接收所述第二站点发送的第二报文,所述第二报文携带第二时间戳,所述第二时间戳用于表示所述第二报文在所述第二站点处的发送时刻;

根据所述第三时刻、所述第四时刻、所述第一时间戳以及所述第二时间戳,确定所述时钟偏差。

示例性地,在又一种可能的实现方式中,确定所述时钟偏差为:所述第二时间戳与所述第一时间戳之差,与,所述第四时刻与所述第三时刻之差,两者的比值。

例如,可以表示为:时钟偏差=(第二时间戳-第一时间戳)/(第四时刻-第三时刻)。

第二方面,提供了一种站点,该站点为第一站点,包括:

第一确定模块,用于确定与第二站点之间的时钟偏差;

获取模块,还用于获取与所述第二站点之间的延迟时间;

第二确定模块,用于根据所述第一确定模块确定的所述时钟偏差以及所述获取模块获取的所述延迟时间,确定所述第一站点与所述第二站点之间的距离。

该站点可以用于实现前述第一方面或者第一方面的任一实现方式所述的确定距离的方法。

第三方面,提供了一种计算机芯片,该计算机芯片包括处理器,当该处理器执行代码时,能够实现前述第一方面或者第一方面的任一实现方式所述的确定距离的方法。

这样,本发明实施例中的第一站点可以通过与第二站点之间的交互,方便地确定两个站点之间的距离,该方法简单容易实现。

附图说明

通过结合附图对本发明实施例进行更详细的描述,本发明的上述以及其它目的、特征和优势将变得更加明显。附图用来提供对本发明实施例的进一步理解,并且构成说明书的一部分,与本发明实施例一起用于解释本发明,并不构成对本发明的限制。在附图中,相同的参考标号通常代表相同部件或步骤。

图1是本发明实施例的确定距离的方法的示意性流程图;

图2是本发明实施例的确定时钟偏差的方法的示意性流程图;

图3是本发明实施例的用于确定时钟偏差的示意图;

图4是本发明实施例的用于确定距离的示意图;

图5是本发明实施例的站点的一个示意性框图;

图6是本发明实施例的站点的另一个示意性框图。

具体实施方式

为了使得本发明的目的、技术方案和优点更为明显,下面将参照附图详细描述根据本发明的示例实施例。显然,所描述的实施例仅仅是本发明的一部分实施例,而不是本发明的全部实施例,应理解,本发明不受这里描述的示例实施例的限制。基于本发明中描述的本发明实施例,本领域技术人员在没有付出创造性劳动的情况下所得到的所有其它实施例都应落入本发明的保护范围之内。

应注意,本发明实施例中的站点可以是服务器或设备,举例来说,第一站点可以是服务器,第二站点可以是另一服务器或设备;或者,第一站点可以是设备,第二站点可以是另一设备或服务器。作为一种实现方式,第一站点可以为前述的服务器,第二站点可以为前述的设备。本发明实施例中的站点均具有时钟以及时钟计数器(Counter),其中,时钟具有振荡频率;另外,本发明实施例中的站点能够在发送的报文中插入发送时间戳(即始终计数器的值),且能够获取接收到的报文中的发送时间戳。

为方便描述,本发明后续的实施例中将第一站点表示为站点A,将第二站点表示为站点B。站点A与站点B之间具有双向的通讯链路,也就是说,站点A与站点B之间可以进行信息交互。另外,这里将站点A的振荡频率表示为fsA,将站点B的振荡频率表示为fsB。以下实施例将详尽地描述站点A如何确定站点A与站点B之间的距离。

图1为本发明实施例的确定距离的方法的一个示意性流程图,该方法由站点A执行,可以用于确定站点A与站点B之间的距离,该方法包括:

S101,站点A确定与站点B之间的时钟偏差。

这里的时钟偏差也可以称为时间频率偏差,表示为β。假设站点A的振荡频率表示为fsA,站点B的振荡频率表示为fsB,则满足:fsA=β×fsB

具体地,如图2所示,S101可以包括:

S1011,站点A在第三时刻接收站点B发送的第一报文,所述第一报文携带第一时间戳,所述第一时间戳用于表示所述第一报文在站点B处的发送时刻。

S1012,站点A在第四时刻接收站点B发送的第二报文,所述第二报文携带第二时间戳,所述第二时间戳用于表示所述第二报文在站点B处的发送时刻。

S1013,站点A根据所述第三时刻、所述第四时刻、所述第一时间戳以及所述第二时间戳,确定所述时钟偏差。

其中,可以将第一时间戳表示为t0,将第二时间戳表示为t1,将第三时刻表示为t2,将第四时刻表示为t3。一般地,满足t0<t2,t1<t3,t0<t1。

参照图3,横向的箭头表示时间轴,从t0指向t2的箭头表示第一报文的发送,从t1指向t3的箭头表示第二报文的发送。

具体地,在S1011中,站点A接收站点B发送的第一报文,测量接收该第一报文时的接收时间戳,记为t2,并读取第一报文中所携带的发送时间戳t0。在S1011中,站点A接收站点B发送的第二报文,测量接收该第二报文时的接收时间戳,记为t3,并读取第二报文中所携带的发送时间戳t1。

进一步地,在S1013中,站点A可以确定所述时钟偏差为:所述第二时间戳与所述第一时间戳之差,与,所述第四时刻与所述第三时刻之差,两者的比值。也即:时钟偏差=(第二时间戳-第一时间戳)/(第四时刻-第三时刻)。或者,可以表示为:β=(t1-t0)/(t3-t2)。

S102,站点A获取站点B与站点A之间的延迟时间。

其中,站点B与站点A之间的延迟时间是指:站点B接收到站点A发送的消息(或报文)的时刻与站点B发送响应的时刻之间的时长。本发明实施例中,将延迟时间表示为d。并且,延迟时间对于站点A和站点B均是已知的。

本发明实施例中,延迟时间可以预先保存在站点A中,也就是说,站点A可以从其存储区域(例如存储器)中获取该延迟时间。

应注意,S102可以在S101之前或之后执行,也可以与S101同时执行,本发明对此不限定。

S103,站点A根据所述时钟偏差以及所述延迟时间,确定站点A与站点B之间的距离。

具体地,在S103中,站点A在第一时刻向站点B发送测试报文,随后在第二时刻接收站点B发送的应答报文,且该应答报文是针对该测试报文的,或者说,该应答报文是与该测试报文对应的。进一步地,站点A可以根据时钟偏差、第一时刻、第二时刻以及延迟时间,确定站点A与站点B之前的距离。

这里,可以将第一时刻表示为t4,将第二时刻表示为t5。

参照图4,站点A在本地时钟为t4时发送测试报文,站点B接收该测试报文,且站点B测量接收该测试报文的时间为t6,随后,站点B在本地时钟记到t7=t6+d时,发送应答报文。站点A接收该应答报文,且站点A测量接收该应答报文的时间为t5。一般地,t4<t6<t7<t5。

可选地,站点A可以根据时钟偏差、第一时刻、第二时刻以及延迟时间,确定传输时长;并根据所述传输时长与光速确定站点A与站点B之间的距离。其中,传输时长可以理解为信号在站点A与站点B之间的往返传输的时间长度。

其中,可以确定传输时长为:第二时刻与第一时刻之间的时长减去延迟时间与时钟偏差之积。若将传输时长表示为rtt,则rtt=t5-t4-d×β。

进一步地,可以确定站点A与站点B之间的距离为传输时长与光速的乘积除以2。若将站点A与站点B之间的距离表示为s,将光速表示为c,则根据传输时长与光速确定站点A与站点B之间的距离可以包括:确定距离s为s=rtt×c/2。

基于以上的描述,本发明实施例中确定距离的方法的流程可以表示为:

S1,站点B在t0时刻发送第一报文,该第一报文携带有发送时间戳t0。

S2,站点A接收第一报文,测量接收时间戳为t2,并获取第一报文携带的发送时间戳t0。

S3,站点B在t1时刻发送第二报文,该第二报文携带有发送时间戳t1。

S4,站点A接收第二报文,测量接收时间戳为t3,并获取第二报文携带的发送时间戳t1。

S5,站点A确定时钟偏差β=(t1-t0)/(t3-t2)。

S6,站点A在本地的时钟计数器为t4时发送测试报文。

S7,站点B接收测试报文,并测量接收该测试报文的时刻为t6。

S8,站点B在本地的时钟计数器为t7=t6+d时,发送应答报文。

S9,站点A接收应答报文,并测量接收该应答报文的时刻为t5。

S10,站点A计算传输时长rtt=t5-t4-d×β。

S11,站点A计算站点A与站点B之间的距离s=rtt×c/2。

这样,本发明实施例中的站点A可以通过与站点B之间的交互,方便地确定两个站点之间的距离,无需通过复杂的定位系统实现,该方法简单容易实现,且该方法无需增加额外的成本与功耗。

图5是本发明实施例的站点的一个示意性框图。图5所示的站点50可以为前述实施例中的第一站点,即,该站点包括第一确定模块501、获取模块502和第二确定模块503。

第一确定模块501用于确定与站点B之间的时钟偏差。获取模块502用于获取与站点B之间的延迟时间。第二确定模块503用于根据第一确定模块501确定的所述时钟偏差以及获取模块502获取的所述延迟时间,确定站点A与站点B之间的距离。

可选地,如图6所示,站点50还可以进一步包括发送模块504和接收模块505。

作为一个实施例,发送模块504可以用于在第一时刻向站点B发送测试报文。接收模块505可以用于在第二时刻接收站点B发送的针对所述测试报文的应答报文。第二确定模块503用于根据所述时钟偏差、所述第一时刻、所述第二时刻以及所述延迟时间,确定站点A与站点B之间的距离。

具体地,第二确定模块503可以用于根据所述时钟偏差、所述第一时刻、所述第二时刻以及所述延迟时间确定传输时长;并确定站点A与站点B之间的距离为传输时长与光速的乘积除以2。

其中,可以确定所述传输时长为:所述第二时刻与所述第一时刻之间的时长减去所述延迟时间与所述时钟偏差之积。

作为另一个实施例,接收模块505,用于在第三时刻接收站点B发送的第一报文,所述第一报文携带第一时间戳,所述第一时间戳用于表示所述第一报文在站点B处的发送时刻。接收模块505,还用于在第四时刻接收站点B点发送的第二报文,所述第二报文携带第二时间戳,所述第二时间戳用于表示所述第二报文在站点B处的发送时刻。进而第一确定模块501可以具体用于根据所述第三时刻、所述第四时刻、所述第一时间戳以及所述第二时间戳,确定所述时钟偏差。

其中,确定所述时钟偏差为:所述第二时间戳与所述第一时间戳之差,与,所述第四时刻与所述第三时刻之差,两者的比值。

可理解,站点50能够实现前述方法实施例中由第一站点实现的方法,为避免重复,这里不再赘述。

另外,第一站点也可以包括至少一个处理器和存储器,处理器与存储器通过总线系统等进行连接通信。其中,存储器用于存储指令,处理器可以用于执行存储器所存储的指令,且处理器执行该指令时可以实现前述由第一站点实现的确定距离的方法。

处理器可以是中央处理单元(Central Processing Unit,CPU)或者具有数据处理能力和/或指令执行能力的其它形式的处理单元,并且可以控制该第一站点中的其它组件以执行期望的功能。

存储器可以是易失性存储器和/或非易失性存储器。所述易失性存储器例如可以包括随机存取存储器(RAM)和/或高速缓冲存储器(cache)等。所述非易失性存储器例如可以包括只读存储器(ROM)、硬盘、闪存等。

存储器可以存储一个或多个程序指令,处理器可以运行所述程序指令,以实现上述由第一站点执行的确定距离的方法。

尽管这里已经参考附图描述了示例实施例,应理解上述示例实施例仅仅是示例性的,并且不意图将本发明的范围限制于此。本领域普通技术人员可以在其中进行各种改变和修改,而不偏离本发明的范围和精神。所有这些改变和修改意在被包括在所附权利要求所要求的本发明的范围之内。

本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。

在本申请所提供的几个实施例中,应该理解到,所揭露的设备和方法,可以通过其它的方式实现。例如,以上所描述的设备实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个设备,或一些特征可以忽略,或不执行。

在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。

类似地,应当理解,为了精简本发明并帮助理解各个发明方面中的一个或多个,在对本发明的示例性实施例的描述中,本发明的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该本发明的方法解释成反映如下意图:即所要求保护的本发明要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如相应的权利要求书所反映的那样,其发明点在于可以用少于某个公开的单个实施例的所有特征的特征来解决相应的技术问题。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本发明的单独实施例。

本领域的技术人员可以理解,除了特征之间相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的替代特征来代替。

此外,本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。例如,在权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。

本发明的各个部件实施例可以以硬件实现,或者以在一个或者多个处理器上运行的软件模块实现,或者以它们的组合实现。本领域的技术人员应当理解,可以在实践中使用微处理器或者数字信号处理器(DSP)来实现根据本发明实施例的物品分析设备中的一些模块的一些或者全部功能。本发明还可以实现为用于执行这里所描述的方法的一部分或者全部的装置程序(例如,计算机程序和计算机程序产品)。这样的实现本发明的程序可以存储在计算机可读介质上,或者可以具有一个或者多个信号的形式。这样的信号可以从因特网网站上下载得到,或者在载体信号上提供,或者以任何其他形式提供。

以上所述,仅为本发明的具体实施方式或对具体实施方式的说明,本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。本发明的保护范围应以权利要求的保护范围为准。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1