基于GPS数据点的计费方法和装置与流程

文档序号:11627983阅读:109来源:国知局
基于GPS数据点的计费方法和装置与流程

本发明涉及移动计费领域,尤其涉及一种基于gps数据点的计费方法和装置。



背景技术:

叫车服务系统作为方便乘客和司机两大群体的平台,合理的计费方式是该平台的基础。

现有的移动计费方法中采用实时上传gps数据点坐标的方式来计算两点之间的费用,然后再累加费用总和,得到从起点到终点的实际费用。然而,在实际计费的过程中,采用实时上传gps数据点,每两个gps数据点之间计费的方式,如果一段时间车速非常慢或者仅仅是车头转来转去,就会造成gps数据点上报和计算过于频繁,也不利于筛选无效的gps数据点。因此,现有的计费方法容易造成误点率比较高,且上传和计算过于频繁,服务器压力增大,效率低下。



技术实现要素:

针对现有技术容易造成误点率比较高,且上传和计算过于频繁,服务器压力增大,效率低下的缺陷,本发明提供一种基于gps数据点的计费方法和装置。

第一方面,本发明提供了一种基于gps数据点的计费方法,所述方法包括:

接收客户端发送的包含预设数量的gps数据点的数据包;

判断所述数据包是否有效,若是,则根据预设计费标准、费用总和以及所述数据包中的gps数据点计算得到当前的费用总和;

当客户端到达目的地后,将当前的费用总和发送至客户端。

优选地,所述判断所述数据包是否有效,包括:

获取所述数据包中第一个gps数据点对应的第一时间戳和上一个数据包中最后一个gps数据点对应第二时间戳;

判断所述第一时间戳和所述第二时间戳的大小,若所述第一时间戳大于所述第二时间戳,则当前数据包有效,否则当前数据包无效。

优选地,所述判断所述数据包是否有效,若是,则根据预设计费标准、费用总和以及所述数据包中的数据点计算得到当前的费用总和,还包括:

若所述数据包无效,则丢弃所述数据包。

优选地,所述根据预设计费标准、费用总和以及所述数据包中的数据点计算得到当前的费用总和,包括:

将上一个数据包中最后一个gps数据点添加至当前数据包中;

计算当前数据包中每两个相邻的gps数据点之间的距离;

根据每两个相邻的gps数据点之间的距离,计算得到若干个gps数据点的距离和;

根据预设计费标准、之前的费用总和以及所述距离和,计算得到当前的费用总和。

优选地,所述根据预设计费标准、之前的费用总和以及所述距离和,计算得到当前的费用总和,之后包括:

记录当前数据包中最后一个gps数据点、当前数据包中最后一个gps数据点对应的时间戳以及当前的费用总和;

丢弃当前数据包。

优选地,所述预设数量为10个。

第二方面,本发明提供了一种基于gps数据点的计费方法,所述方法包括:

接收预设数量的gps数据点,将所述预设数量的gps数据点存储于数据包中;

将所述数据包发送至服务器,以使所述服务器根据所述数据包计 算得到当前的费用总和;

当客户端到达目的地后,接收服务器发送的当前的费用总和。

优选地,所述预设数量为10个。

第三方面,本发明提供了一种基于gps数据点的计费装置,所述装置包括:

数据包接收模块,用于接收客户端发送的包含预设数量的gps数据点的数据包;

数据包处理模块,用于判断所述数据包是否有效,若是,则根据预设计费标准、费用总和以及所述数据包中的gps数据点计算得到当前的费用总和;

费用发送模块,用于当客户端到达目的地后,将当前的费用总和发送至客户端。

优选地,所述数据包处理模块包括:

时间戳获取单元,用于获取所述数据包中第一个gps数据点对应的第一时间戳和上一个数据包中最后一个gps数据点对应第二时间戳;

数据包判断单元,用于判断所述第一时间戳和所述第二时间戳的大小,若所述第一时间戳大于所述第二时间戳,则当前数据包有效,否则当前数据包无效。

优选地,所述数据包处理模块还包括:

数据包丢弃单元,用于当判断所述数据包无效时,丢弃所述数据包。

优选地,所述数据包处理模块还包括:

数据点添加单元,用于将上一个数据包中最后一个gps数据点添加至当前数据包中;

距离计算单元,用于计算当前数据包中每两个相邻的gps数据点之间的距离;

距离和计算单元,用于根据每两个相邻的gps数据点之间的距离, 计算得到若干个gps数据点的距离和;

费用总和计算单元,用于根据预设计费标准、之前的费用总和以及所述距离和,计算得到当前的费用总和。

优选地,所述数据包处理模块还包括:

数据记录单元,用于记录当前数据包中最后一个gps数据点、当前数据包中最后一个gps数据点对应的时间戳以及当前的费用总和;

数据包丢弃单元,用于丢弃当前数据包。

优选地,所述预设数量为10个。

第四方面,本发明提供了一种基于gps数据点的计费装置,所述装置包括:

数据点存储模块,用于接收预设数量的gps数据点,将所述预设数量的gps数据点存储于数据包中;

数据包发送模块,用于将所述数据包发送至服务器,以使所述服务器根据所述数据包计算得到当前的费用总和;

费用接收模块,用于当客户端到达目的地后,接收服务器发送的当前的费用总和。

优选地,所述预设数量为10个。

由上述技术方案可知,本发明提供一种基于gps数据点的计费方法和装置,通过将多个gps数据点采用一个数据包上传至服务器,大大降低上传频率,提高上传效率,并且以数据包为单位判断是否为有效的gps数据点,提高判断误点率的效率,同时以数据包为单位计算全程费用,大大减小服务器的计算压力,提高计算效率。

附图说明

为了更清楚地说明本公开实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本公开的一些实施例,对于本领域 普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些图获得其他的附图。

图1是本公开一实施例提供的一种基于gps数据点的计费方法的流程示意图;

图2是本公开另一实施例提供的一种基于gps数据点的计费方法的流程示意图;

图3是本公开另一实施例提供的一种基于gps数据点的计费装置的结构示意图;

图4是本公开另一实施例提供的一种基于gps数据点的计费装置的结构示意图。

具体实施方式

下面将结合本公开实施例中的附图,对本公开实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本公开中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本公开保护的范围。

以下对本公开实施例中提及的部分词语进行举例说明。

本公开实施例中提及的客户端是指呼叫服务方,如交通工具叫车服务中的乘客,或提供服务方,如交通工具叫车服务中的司机,所使用的移动终端或个人计算机(personalcomputer,简称pc)等设备。例如智能手机、个人数码助理(pda)、平板电脑、笔记本电脑、车载电脑(carputer)、掌上游戏机、智能眼镜、智能手表、可穿戴设备、虚拟显示设备或显示增强设备(如googleglass、oculusrift、hololens、gearvr)等。

本公开实施例中提及的有效的gps数据点是指如果后一个gps数据点的时间比前一个gps数据点的时间晚,则判定第二个gps数据点是有效的;否则就是无效的gps数据点。

本公开实施例中提及的误点率是指无效的gps数据点占总的gps数据点的比例,或无效的数据包占总数据包的比例。当检测到一个数据包中有一个gps数据点无效时,则该数据包中的所有gps数据点均认为无效。

如图1所示,本公开一实施例提供了一种基于gps数据点的计费方法的流程示意图,该方法包括如下步骤:

s101、接收客户端发送的包含预设数量的gps数据点的数据包;

s102、判断所述数据包是否有效,若是,则根据预设计费标准、费用总和以及所述数据包中的gps数据点计算得到当前的费用总和;

s103、当客户端到达目的地后,将当前的费用总和发送至客户端。

本实施例提供的方法通过将多个gps数据点采用一个数据包上传至服务器,大大降低上传频率,提高上传效率,并且以数据包为单位判断是否为有效,提高判断误点率的效率,同时以数据包为单位计算全程费用,大大减小服务器的计算压力,提高计算效率。

作为本实施例的优选方案,s102包括:

s1021、获取所述数据包中第一个gps数据点对应的第一时间戳和上一个数据包中最后一个gps数据点对应第二时间戳;

s1022、判断所述第一时间戳和所述第二时间戳的大小,若所述第一时间戳大于所述第二时间戳,则当前数据包有效,否则当前数据包无效。

以数据包为单位进行有效性判断,只需要判断后一个数据包的第一个gps数据点和前一个数据包的最后一个gps数据点的时间戳,如果后一个数据包的第一个gps数据点的时间比前一个数据包的最后一个gps数据点的时间早,那说明整个后数据包都是无效的点,都应该舍弃。这样就大大提高了筛选有效的gps数据点的效率。

进一步地,s102还包括:

s1023、将上一个数据包中最后一个gps数据点添加至当前数据包中;

s1024、计算当前数据包中每两个相邻的gps数据点之间的距离;

s1025、根据每两个相邻的gps数据点之间的距离,计算得到若干个gps数据点的距离和;

s1026、根据预设计费标准、之前的费用总和以及所述距离和,计算得到当前的费用总和。

保留上一个数据包中最后一个gps数据点,是为了计算两个数据包之间的距离。

更进一步地,s102还包括:

s1027、若所述数据包无效,则丢弃所述数据包。

如果数据包无效,则说明该数据包中的数据点是无效的,无需保留来耗费空间,因此可丢弃。

具体地,s102还包括:

s1028、记录当前数据包中最后一个gps数据点、当前数据包中最后一个gps数据点对应的时间戳以及当前的费用总和;

s1029、丢弃当前数据包。

保留最后一个gps数据点是用于计算两个数据包之间的距离;保留第二时间戳是用于判断后一个数据包的有效性;保留当前的费用总和是为了得到最终的费用总和;丢弃当前数据包可为服务器节省资源和空间。

具体地,所述预设数量为10个。

将10秒作为上传周期,不仅能够避免数据包频繁上传,而且不会发生由于一个数据点错误而造成的丢弃整个数据包中的数据点的问题。

举例来说,假设智能手机的gps是每秒向卫星发送一次定位请求,也就是每秒产生一个gps数据点信息,每隔10秒上传一个数据包,这样10秒就会产生10个gps数据点信息,包括x坐标和y坐标。智能手机将10个gps数据点信息压缩至一个数据包中,并上传至服务器。

服务器以数据包为单位,首先根据一定条件筛选有效的gps数据 点,然后进行费用计算,并将费用计算结果反馈至智能手机。

相对于传统的实时上传gps数据点的方式,本实施例的手机端有一定的存储或者计时功能,可以每隔10秒将一定数量的gps数据点打包一起上传,这样可以减少手机和服务器的交互,同时减少服务器端的压力,提高性能。

需要说明的是,在筛选有效的gps数据点的时候,假设有一个时间段网络堵塞,或者司机师傅行驶到一个地方网络不好,或者手机端突然出问题,导致手机可以正常记时,但是无法跟服务器端通信,过一段时间网络好的时候又上传了新的数据包,这样就有可能后上传的数据包,其实是老数据,以10秒为上传周期,假设每秒产生一个gps数据点,如果采用在服务器端每两个gps数据点之间判断是否有效的话,需要判断9次,然后筛掉10个gps数据点。如果采用这种打包上传数据点,打包筛选有效的gps数据点的方法,只需要判断后一个数据包的第一个gps数据点和前一个数据包的最后一个gps数据点的时间戳,如果后一个数据包的第一个gps数据点的时间比前一个数据包的最后一个gps数据点的时间早,那说明整个后数据包都是无效的点,都应该舍弃。这样就大大提高了筛选有效的gps数据点的效率。

本实施例提供的距离计算方法本质是数据包内每两个gps点计算距离费,然后将各个数据包中的gps数据点费用累加。前一个数据包计算完后,存储最后一个gps点的位置信息,然后合并到后一个数据包再次进行两点之间距离计费,直到到达目的地为止。

具体来说,以10秒为上传周期,假设每秒产生一个gps数据点,则每个数据包中包含10个gps数据点。当服务器接收到有效的数据包后,首先将上一个数据包中最后一个gps数据点加入当前数据包中,则当前数据包中包含了11个gps数据点;然后计算这11个gps数据点中相邻点的距离,并累加得到当前数据包的距离和;接着根据预设计费标准计算当前数据包的距离产生的费用,其中,计费标准可采用单位计价方式或分段计价方式,根据具体情况采用不同的计价方式; 最后将当前数据包的距离产生的费用累加至总费用。

每一次数据包费用计算后,可只保留最后一个gps数据点、第二时间戳和当前的费用总和,可丢弃当前数据包。保留最后一个gps数据点是用于计算两个数据包之间的距离;保留第二时间戳是用于判断后一个数据包的有效性;保留当前的费用总和是为了得到最终的费用总和;丢弃当前数据包可为服务器节省资源和空间。

如图2所示,本公开一实施例提供了一种基于gps数据点的计费方法的流程示意图,该方法包括如下步骤:

s201、接收预设数量的gps数据点,将所述预设数量的gps数据点存储于数据包中;

s202、将所述数据包发送至服务器,以使所述服务器根据所述数据包计算得到当前的费用总和;

s203、当客户端到达目的地后,接收服务器发送的当前的费用总和。

本实施例提供的方法通过将多个gps数据点采用一个数据包上传至服务器,大大降低上传频率,提高上传效率,并且以数据包为单位判断是否为有效,提高判断误点率的效率,同时以数据包为单位计算全程费用,大大减小服务器的计算压力,提高计算效率。

作为本实施例的优选方案,所述预设数量为10个。

将10秒作为上传周期,不仅能够避免数据包频繁上传,而且不会发生由于一个数据点错误而造成的丢弃整个数据包中的数据点的问题。

如图3所示,本公开一实施例提供了一种基于gps数据点的计费装置的结构示意图,该装置包括:

数据包接收模块31,用于接收客户端发送的包含预设数量的gps数据点的数据包;

数据包处理模块32,用于判断所述数据包是否有效,若是,则根据预设计费标准、费用总和以及所述数据包中的gps数据点计算得到 当前的费用总和;

费用发送模块33,用于当客户端到达目的地后,将当前的费用总和发送至客户端。

本实施例提供的装置通过将多个gps数据点采用一个数据包上传至服务器,大大降低上传频率,提高上传效率,并且以数据包为单位判断是否为有效,提高判断误点率的效率,同时以数据包为单位计算全程费用,大大减小服务器的计算压力,提高计算效率。

作为本实施例的优选方案,所述数据包处理模块32包括:

时间戳获取单元,用于获取所述数据包中第一个gps数据点对应的第一时间戳和上一个数据包中最后一个gps数据点对应第二时间戳;

数据包判断单元,用于判断所述第一时间戳和所述第二时间戳的大小,若所述第一时间戳大于所述第二时间戳,则当前数据包有效,否则当前数据包无效。

具体地,所述数据包处理模块32还包括:

数据包丢弃单元,用于当判断所述数据包无效时,丢弃所述数据包。

进一步地,所述数据包处理模块32还包括:

数据点添加单元,用于将上一个数据包中最后一个gps数据点添加至当前数据包中;

距离计算单元,用于计算当前数据包中每两个相邻的gps数据点之间的距离;

距离和计算单元,用于根据每两个相邻的gps数据点之间的距离,计算得到若干个gps数据点的距离和;

费用总和计算单元,用于根据预设计费标准、之前的费用总和以及所述距离和,计算得到当前的费用总和。

更进一步地,所述数据包处理模块32还包括:

数据记录单元,用于记录当前数据包中最后一个gps数据点、当 前数据包中最后一个gps数据点对应的时间戳以及当前的费用总和;

数据包丢弃单元,用于丢弃当前数据包。

举例来说,所述预设数量为10个。

如图4所示,本公开一实施例提供了一种基于gps数据点的计费装置的结构示意图,该装置包括:

数据点存储模块41,用于接收预设数量的gps数据点,将所述预设数量的gps数据点存储于数据包中;

数据包发送模块42,用于将所述数据包发送至服务器,以使所述服务器根据所述数据包计算得到当前的费用总和;

费用接收模块43,用于当客户端到达目的地后,接收服务器发送的当前的费用总和。

本实施例提供的装置通过将多个gps数据点采用一个数据包上传至服务器,大大降低上传频率,提高上传效率,并且以数据包为单位判断是否为有效,提高判断误点率的效率,同时以数据包为单位计算全程费用,大大减小服务器的计算压力,提高计算效率。

作为本实施例的优选方案,所述预设数量为10个。

本领域普通技术人员可以理解:实现上述方法实施例的全部或者部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储在计算机可读取的存储介质中,该程序在执行时,执行包括上述方法实施例的步骤。

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

以上实施例仅用以说明本公开的技术方案,而非对其限制;尽管参照前述实施例对本公开进行了详细的说明,本领域的普通技术人员应当理解;其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不 使相应技术方案的本质脱离本公开各实施例技术方案的精神和范围。

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