货运定位方法、装置及系统与流程

文档序号:30797119发布日期:2022-07-19 20:34阅读:100来源:国知局
货运定位方法、装置及系统与流程

1.本发明涉及定位技术,尤其涉及一种货运定位方法、装置及系统。


背景技术:

2.在物流领域,尤其是卡车货运领域,时效性和安全性是重中之重,平台方为了能够及时了解到货物的运输时效,关注司机的人身安全以及车辆安全,就需要获取相关的定位信息,并依据定位信息完成对应的决策。目前获取定位信息的方式有两种,一种是在车辆上加装定位装置及信息通信装置,由车辆上传定位信息,但是这种方式需要支出对应的设备费用和通信费用,必然对司机或承运方造成额外的负担;另一种是直接利用司机的手机或其他通讯设备上的app来上传定位信息,其无需增加额外的花费,简单方便;但是这种方式下,由于app在后台存在时间过长,占用内存过多,消耗电量过大等原因,都会造成app被操作系统(如安卓或ios)关闭或杀死,使app无法正常运行,进而也就无法上传定位信息。因此,如何避免这个情况的出现就成了亟待解决的问题。


技术实现要素:

3.本发明实施例提供一种货运定位方法、装置及系统,在保障能够获取司机端上传的有效定位数据、信息的同时,降低了司机端处通讯设备的内存占用、节省电量。
4.本发明实施例的第一方面,提供一种货运定位方法,包括:
5.s1、平台服务器接收到司机端上传的订单开始执行信息及定位数据后,根据定位数据和订单信息得到运输路径;对运输路径进行分段,根据分段情况依次确定每个分段的起始时间点、预测路况、预测时长及每个分段的抵达时间点,根据每个分段的抵达时间点得到第一上传时间表及第一监控时间表,并向司机端发送第一上传时间表;
6.s2、当在第一监控时间段内未接收到司机端上传的定位数据,则对司机端进行电话呼叫;
7.当在第一监控时间段内接收到司机端上传的定位数据,且定位数据在电子围栏内,则将该订单标记为执行完毕;
8.当第一监控时间段内接收到司机端上传的定位数据,且司机端的位置处在同一分段中的次数达到m次,则删除第一监控时间表,向司机端发送删除第一上传时间表的指令,执行s3;
9.s3、根据基础里程确定上传里程,执行s5;
10.s4、根据基础里程和调整里程确定上传里程;
11.s5、根据定位数据和上传里程确定运输路径上对应路程的当前路况,并根据当前路况得到第二上传时间点和第二监控时间段,将第二上传时间点发送给司机端;
12.s6、当在第二监控时间段内未接收到司机端上传的定位数据,则对司机端进行电话呼叫,在接收到司机端上传的定位数据后执行s3;
13.当在第二监控时间段内接收到司机端上传的定位数据,且定位数据在电子围栏
内,则将该订单标记为执行完毕;
14.当在第二监控时间段内接收到司机端上传的定位数据,且定位数据不在电子围栏内,则根据定位数据得到调整里程,执行s4。
15.进一步的,所述s1、s2、s6还包括:
16.s1、平台服务器接收到司机端上传的订单开始执行信息及定位数据后,根据定位数据和订单信息得到运输路径,向司机端发送建立呼入唤醒任务调度的指令;对运输路径进行分段,根据分段情况依次确定每个分段的起始时间点、预测路况、预测时长及每个分段的抵达时间点,根据每个分段的抵达时间点得到第一上传时间表及第一监控时间表,并向司机端发送第一上传时间表;
17.s2、当在第一监控时间段内未接收到司机端上传的定位数据,则对司机端进行电话呼叫;
18.当在第一监控时间段内接收到司机端上传的定位数据,且定位数据在电子围栏内,则将该订单标记为执行完毕,向司机端发送删除呼入唤醒任务调度的指令;
19.当第一监控时间段内接收到司机端上传的定位数据,且司机端的位置处在同一分段中的次数达到m次,则删除第一监控时间表,向司机端发送删除第一上传时间表的指令,执行s3;
20.s6、当在第二监控时间段内未接收到司机端上传的定位数据,则对司机端进行电话呼叫,在接收到司机端上传的定位数据后执行s3;
21.当在第二监控时间段内接收到司机端上传的定位数据,且定位数据在电子围栏内,则将该订单标记为执行完毕,向司机端发送删除呼入唤醒任务调度的指令;
22.当在第二监控时间段内接收到司机端上传的定位数据,且定位数据不在电子围栏内,则根据定位数据得到调整里程,执行s4。
23.进一步的,所述调整里程=(当前行驶距离-轨迹行驶距离)
×
剩余路程比值。
24.进一步的,所述分段的预测路况通过以下步骤获得,包括:
25.将分段的历史综合路况和当前路况进行结合得到预测路况,其中,
[0026][0027]
n表示分段编号的数值;
[0028]
f(n)表示分段编号的数值为n的分段的预测路况;
[0029]
f(an)表示分段编号的数值为n的分段的历史综合路况;
[0030]
f(bn)表示分段编号的数值为n的分段的当前路况。
[0031]
本发明实施例的第二方面,提供一种货运定位方法,包括:
[0032]
当确定开始执行订单中的任务时,获取定位数据,向平台服务器上传订单开始执行信息及定位数据,存储定位数据;
[0033]
当有电话呼入时,启动上传定位数据的应用程序,由该应用程序获取定位数据后,向平台服务器上传定位数据并更新存储的定位数据;
[0034]
当接收到第一上传时间表后,若当前时点达到第一上传时间表中的第一上传时间点时,则获取定位数据后,向平台服务器上传定位数据;
[0035]
当接收到删除第一上传时间表指令后,删除第一上传时间表;
[0036]
当接收到第二上传时间点后,当前时点达到第二上传时间点时,则获取定位数据后,向平台服务器上传定位数据。
[0037]
本发明实施例的第三方面,提供一种货运定位装置,包括:
[0038]
接收单元:用于接收司机端上传的订单开始执行信息及定位数据;在接收到定位数据后,将定位数据的相关信息发送到存储单元;在接收到订单开始执行信息后,向第一时间表单元发送启动信息;
[0039]
存储单元:用于存储定位数据的相关信息、订单信息及基础里程;
[0040]
第一时间表单元:用于在接收到启动信息后,根据获取存储单元中的定位数据和订单信息得到运输路径;对运输路径进行分段,根据分段情况依次确定每个分段的起始时间点、预测路况、预测时长及每个分段的抵达时间点,根据每个分段的抵达时间点得到第一上传时间表及第一监控时间表,向第一监控单元发送第一监控时间表,向发送单元发送第一上传时间表;
[0041]
第一监控单元:用于在收到第一监控时间表后,根据第一监控时间表内的第一监控时间段及从存储单元获取的定位数据的相关信息进行判断;当在第一监控时间段内未接收到司机端上传的定位数据,则向呼叫单元发送呼叫信息;当在第一监控时间段内接收到司机端上传的定位数据,且定位数据在电子围栏内,则将存储单元中的该订单标记为执行完毕;当第一监控时间段内接收到司机端上传的定位数据,且司机端的位置处在同一分段中的次数达到m次,则删除第一监控时间表,向发送单元发送删除第一上传时间表指令,并向第一上传里程单元发送计算指令;
[0042]
第一上传里程单元:用于在接收到计算指令后,根据基础里程确定上传里程,向第二时间点单元发送启动指令,并将上传里程发送到存储单元;
[0043]
第二上传里程单元:用于在接收到计算指令和调整里程后,根据基础里程和调整里程确定上传里程,向第二时间点单元发送启动指令,向存储单元发送上传里程;
[0044]
第二时间点单元:用于在接收到启动信息后,根据获取存储单元中的定位数据和上传里程确定运输路径上对应路程的当前路况,并根据当前路况得到第二上传时间点和第二监控时间段,向第二监控单元发送第二监控时间表,向发送单元发送第二上传时间点;
[0045]
第二监控单元:在收到第二监控时间表后,根据第二监控时间表内的第二监控时间段及从存储单元获取的定位数据的相关信息进行判断;当在第二监控时间段内未接收到司机端上传的定位数据,则向呼叫单元发送呼叫信息,在接收到司机端上传的定位数据向第一上传里程单元发送计算指令;当在第二监控时间段内接收到司机端上传的定位数据,且定位数据在电子围栏内,则将该订单标记为执行完毕;当在第二监控时间段内接收到司机端上传的定位数据,且定位数据不在电子围栏内,则根据定位数据得到调整里程,并向第二上传里程单元发送计算指令和调整里程。
[0046]
发送单元;用于将接收的信息或指令发送给司机端;
[0047]
呼叫单元:用于在收到呼叫信息事对司机端进行电话呼叫。
[0048]
本发明实施例的第四方面,提供一种货运定位装置,包括:
[0049]
订单执行单元,当确定开始执行订单中的任务时,获取定位数据,向平台服务器上传订单开始执行信息及定位数据,存储定位数据;
[0050]
唤醒单元,当有电话呼入时,启动上传定位数据的应用程序,由该应用程序获取定位数据后,向平台服务器上传定位数据并更新存储的定位数据;
[0051]
第一定位单元,当接收到第一上传时间表后,若当前时点达到第一上传时间表中的第一上传时间点时,则获取定位数据后,向平台服务器上传定位数据;
[0052]
删除单元,当接收到删除第一上传时间表指令后,删除第一上传时间表;
[0053]
第二定位单元,当接收到第二上传时间点后,当前时点达到第二上传时间点时,则获取定位数据后,向平台服务器上传定位数据。
[0054]
本发明实施例的第五方面,提供一种货运定位系统,包括:至少一台平台服务器,至少一个司机端;
[0055]
所述平台服务器,用于接收到司机端上传的订单开始执行信息及定位数据后,根据定位数据和订单信息得到运输路径,向司机端发送建立呼入唤醒任务调度的指令;用于对运输路径进行分段,根据分段情况依次确定每个分段的起始时间点、预测路况、预测时长及每个分段的抵达时间点,根据每个分段的抵达时间点得到第一上传时间表及第一监控时间表,并向司机端发送第一上传时间表;用于当在第一监控时间段内未接收到司机端上传的定位数据,则对司机端进行电话呼叫;用于当在第一监控时间段内接收到司机端上传的定位数据,且定位数据在电子围栏内,则将该订单标记为执行完毕,向司机端发送删除呼入唤醒任务调度的指令;用于当第一监控时间段内接收到司机端上传的定位数据,且司机端的位置处在同一分段中的次数达到m次,则删除第一监控时间表,向司机端发送删除第一上传时间表的指令,并根据基础里程确定上传里程;用于根据基础里程确定上传里程;用于根据基础里程和调整里程确定上传里程;用于根据定位数据和上传里程确定运输路径上对应路程的当前路况,并根据当前路况得到第二上传时间点和第二监控时间段,将第二上传时间点发送给司机端;用于当在第二监控时间段内未接收到司机端上传的定位数据,则对司机端进行电话呼叫,在接收到司机端上传的定位数据后根据基础里程确定上传里程;用于当在第二监控时间段内接收到司机端上传的定位数据,且定位数据在电子围栏内,则将该订单标记为执行完毕,向司机端发送删除呼入唤醒任务调度的指令;用于当在第二监控时间段内接收到司机端上传的定位数据,且定位数据不在电子围栏内,则根据定位数据得到调整里程,并根据基础里程和调整里程确定上传里程;
[0056]
所述司机端,用于当确定开始执行订单中的任务时,获取定位数据,向平台服务器上传订单开始执行信息及定位数据,存储定位数据;用于当有电话呼入时,启动上传定位数据的应用程序,由该应用程序获取定位数据后,向平台服务器上传定位数据并更新存储的定位数据;用于当接收到第一上传时间表后,若当前时点达到第一上传时间表中的第一上传时间点时,则获取定位数据后,向平台服务器上传定位数据;用于当接收到删除第一上传时间表指令后,删除第一上传时间表;用于当接收到第二上传时间点后,当前时点达到第二上传时间点时,则获取定位数据后,向平台服务器上传定位数据。
[0057]
本发明实施例的第六方面,提供一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机指令,所述计算机指令用于使所述计算机执行上述第一方面中任意一项所述的货运定位的方法。
[0058]
本发明实施例的第七方面,提供一种电子设备,包括:至少一个处理器;以及与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器
执行的计算机程序,所述计算机程序被所述至少一个处理器执行,以使所述至少一个处理器执行上述第一方面中任意一项所述的货运定位的方法。
[0059]
本发明提供的一种货运定位方法、装置及系统,具有两种生成监控时间表和监控时间段的方式,在获得第一上传时间表及第一监控时间表的过程中主要是将路径分段,然后分别统计每个分运输路径的上传时长,进而得到第一上传时间表及第一监控时间表。得到第二上传时间和第二监控时间表的过程中主要是获取相关的实时行驶里程进行相应的调整。即第一上传时间表及第一监控时间表是基于历史进行预测,第二上传时间和第二监控时间表是基于实际行驶里程进行调整,使得本发明提供的方案既能进行提前预测,又能在出现突发情况使提前预测无法实现时根据实际路程情况进行调整,实用性较高。
[0060]
本发明提供的技术方案,司机端无需按照单位时间上传定位数据,使得后台程序不用持续工作,减少了司机端的电量消耗、减少定位数据获取和上传的数量、减少通讯设备负担,降低数据处理资源的需求。并且司机端处的程序后台运行期间只需要结合定位上传时间表和时效情况来获取定位数据并上传,减少内存的占用。不仅能够保证应用程序顺利运行,还能保证获取足够反应出时效性和安全性的定位数据。
附图说明
[0061]
图1为货运定位方法的第一种实施方式的流程图;
[0062]
图2为货运定位方法的第二种实施方式的流程图;
[0063]
图3为货运定位装置的第一种实施方式的流程图;
[0064]
图4为货运定位装置的第二种实施方式的流程图。
具体实施方式
[0065]
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0066]
本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。
[0067]
应当理解,在本发明的各种实施例中,各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。
[0068]
应当理解,在本发明中,“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
[0069]
应当理解,在本发明中,“多个”是指两个或两个以上。“和/或”仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,和/或b,可以表示:单独存在a,同时存在
a和b,单独存在b这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。“包含a、b和c”、“包含a、b、c”是指a、b、c三者都包含,“包含a、b或c”是指包含a、b、c三者之一,“包含a、b和/或c”是指包含a、b、c三者中任1个或任2个或3个。
[0070]
应当理解,在本发明中,“与a对应的b”、“与a相对应的b”、“a与b相对应”或者“b与a相对应”,表示b与a相关联,根据a可以确定b。根据a确定b并不意味着仅仅根据a确定b,还可以根据a和/或其他信息确定b。a与b的匹配,是a与b的相似度大于或等于预设的阈值。
[0071]
取决于语境,如在此所使用的“若”可以被解释成为“在
……
时”或“当
……
时”或“响应于确定”或“响应于检测”。
[0072]
下面以具体地实施例对本发明的技术方案进行详细说明。下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例不再赘述。
[0073]
本发明提供一种货运定位方法,如图1所示,包括:
[0074]
s1、平台服务器接收到司机端上传的订单开始执行信息及定位数据后,根据定位数据和订单信息得到运输路径;对运输路径进行分段,根据分段情况依次确定每个分段的起始时间点、预测路况、预测时长及每个分段的抵达时间点,根据每个分段的抵达时间点得到第一上传时间表及第一监控时间表,并向司机端发送第一上传时间表;
[0075]
s2、当在第一监控时间段内未接收到司机端上传的定位数据,则对司机端进行电话呼叫;
[0076]
当在第一监控时间段内接收到司机端上传的定位数据,且定位数据在电子围栏内,则将该订单标记为执行完毕;
[0077]
当第一监控时间段内接收到司机端上传的定位数据,且司机端的位置处在同一分段中的次数达到m次,则删除第一监控时间表,向司机端发送删除第一上传时间表的指令,执行s3;
[0078]
s3、根据基础里程确定上传里程,执行s5;
[0079]
s4、根据基础里程和调整里程确定上传里程;
[0080]
s5、根据定位数据和上传里程确定运输路径上对应路程的当前路况,并根据当前路况得到第二上传时间点和第二监控时间段,将第二上传时间点发送给司机端;
[0081]
s6、当在第二监控时间段内未接收到司机端上传的定位数据,则对司机端进行电话呼叫,在接收到司机端上传的定位数据后执行s3;
[0082]
当在第二监控时间段内接收到司机端上传的定位数据,且定位数据在电子围栏内,则将该订单标记为执行完毕;
[0083]
当在第二监控时间段内接收到司机端上传的定位数据,且定位数据不在电子围栏内,则根据定位数据得到调整里程,执行s4。
[0084]
下面对以上步骤进行进一步说明。
[0085]
步骤s1中,平台服务器接收到司机端上传的订单开始执行信息及定位数据后,根据定位数据和订单信息得到运输路径,具体为,
[0086]
平台服务器在接收到司机端中的应用程序(或app)上传的订单开始执行信息及定位数据后,可以利用定位数据和订单中的信息得到运输路径,如将定位数据在地图上对应的点作为起点,将订单中的卸货地的地址在地图上对应的点作为终点,进而将最短的行驶线路作为运输路径;亦或是结合途中多个中转点找出最短的行驶线路作为运输路径;亦或
是发货方或承运方指定的路径,等等;由于这里可以利用现有方法来处理,因此不做具体限定。
[0087]
需要说明的是,司机端可以是手机或通讯设备等,其具有获取自身定位数据的功能,数据处理功能等,并可以安装应用程序(或app)。订单信息是平台服务器中已经存储好的,在承运方承接订单时就已经生成,其中包含了装货地,卸货地,装货时间,卸货时间,等用于完成订单所需的信息。而订单开始执行信息是承运方发送给平服务器,表示该订单已经开始执行运输的信息。
[0088]
对运输路径进行分段,根据分段情况依次确定每个分段的起始时间点、预测路况、预测时长及每个分段的抵达时间点,根据每个分段的抵达时间点得到第一上传时间表及第一监控时间表,并向司机端发送第一上传时间表;
[0089]
步骤s1中,对运输路径进行分段,具体为,
[0090]
由于已经得到了运输路径,因此也就可以得到这条路径的总里程,这样可以从这条路径的起点开始,按照固定数值的里程(如10km或15km,等等)对这条路径进行分段;当然这里还可以利用其他方法对这条路径进行分段,如对运输路径中的城市公路按照每5km一段进行分段,对运输路径中的高速公路按照每20km一段进行分段,等等。
[0091]
步骤s1中,根据分段情况依次确定每个分段的起始时间点、预测路况、预测时长及每个分段的抵达时间点,具体为,
[0092]
由于已经对运输路径完成了分段,也就获得了运输路径中各个分段的起点和终点,加之车辆在这些分段中也是依次行驶通过的,是存在顺序的,因此可以对这些分段按从运输路径起点向终点的方向进行排序,在排序后,按照顺序依次确定每个分段的起始时间点、预测路况、预测时长及每个分段的抵达时间点。
[0093]
这里示例性的进行说明,假设在获得的一条总长100km的运输路径后,将该运输路径分为了10段,即分段1至分段10,每段10km,车辆实际当中也需要从分段1至分段10依次通过。这里需要对分段进行运输路径起点向终点的方向进行编号,分段编号的数值为从1开始的整数。
[0094]
这里需要先得到分段1(即第一个分段)的起始时间点、预测路况和预测时长,分段1的起始时间点(即时间点1)其实就是这条运输路径的起始时间点,其可以是司机端获取定位数据的时间点或平台服务器接收到定位数据的时间点,等等;
[0095]
而分段1的预测路况则需要根据分段1的路径及分段1的起始时间点来得到,由于分段1的路径是确定的,这里可以利用历史数据来获取分段1的路径在时间点1对应的历史综合路况作为预测路况,还可以将分段1的路径在时间点1对应的当前路况作为预测路况,亦或是将分段1的路径在时间点1对应的历史综合路况和当前路况进行结合作为预测路况。
[0096]
而分段1的预测时长为根据分段1的里程和分段1的预测路况得到的车辆行驶完分段1这段路程的所用时长。实际当中根据路况和道路里程得到行驶所用时长的技术很多,这里就不再详细介绍了。
[0097]
在得到分段1的预测时长后,只需要将分段1的起始时间点(即时间点1)与分段1的预测时长相加,就得到了分段1的抵达时间点,其也是分段2的起始时间点(即时间点2)。在得到了分段2的起始时间点后,按上面的过程就可以得到分段2的预测路况,进而得到分段2的预测时长,将分段2的起始时间点与分段2的预测时长相加,就得到了分段2的抵达时间
点;
[0098]
重复上面的过程,就可以得到分段3的起始时间点、分段3的预测路况、分段3的预测时长、分段3的抵达时间点;直到得到这条运输路径上分段10(即最后一个分段)的起始时间点、预测路况、预测时长及抵达时间点为止。
[0099]
由于得到了每个分段的抵达时间点,这里可以用每个分段的抵达时间点作为第一上传时间点,并建立第一上传时间表,即第一上传时间表中包含了多个第一上传时间点,在得到第一上传时间表后就可以把其发送给司机端了。
[0100]
另外,由于存在司机端中用来上传定位信息的应用程序(或app)被操作系统杀死的情况,平台服务器不可能持续的等待司机端上传定位数据,因此需要确定一个监控时间段,如上传时间点之后的某个时长作为监控时间段,如从上传时间点到上传时间点之后的30秒或上传时间点之后的2分钟这段时间,等等,这个时间段的时长数值可以由人为提前设定。这样也可以得到每个分段对应的监控时间段,这些监控时间段及其对应的具体时间点的集合就可以作为监控时间表,在对应的监控时间段内,平台服务器可以监控是否收到对应的定位数据。即通过对第一上传时间表中多个第一上传时间点添加设定时长(如固定时长等),得到多个第一监控时间段及对应的时间点,并利用多个第一监控时间段及对应的时间点组成第一监控时间表。
[0101]
下面对获取历史综合路况的方法进行介绍,
[0102]
一般来说,路况会利用数值来表示,如道路拥堵指数,该数值越大,道路越拥堵,车辆行驶完这段路程的用时越长,该数值越小道路越畅通,车辆行驶完这段路程的用时越短;
[0103]
首先,这里需要获取到某分段路径在历史上对应时间点的历史路况数据,此处以分段1进行说明,例如,若时间点1是2020年11月26日的9:00,那么可以获取分段1的路径在2020年11月25日的9:00的历史路况(即分段1的历史路况1)、在2020年11月24日的9:00分段1的历史路况(即分段1的历史路况2)、在2019年10月2日的9:00分段1的历史路况(即分段1的历史路况3),等等;
[0104]
之后需要确定这个分段的路径下各个历史路况的第一概率,并对各个历史路况的第一概率进行归一化,得到这个分段的路径下各个历史路况的第二概率,将这个分段的路径各个历史路况的数值与各自的第二概率相乘后再求和得到这个分段路径在其起始时间点的历史综合路况。
[0105]
关于历史路况的第一概率,可以利用下面的公式进行计算,
[0106][0107]
其中,f(x)表示某个历史路况x的第一概率,如分段1的历史路况1的第一概率,等等。
[0108]
t
x
表示历史路况x在时间维度上对应的数值,该数值随历史路况x所在日期与分段的起始时间点所在日期之间天数的差值增加而提高,例如t
x
为分段1的历史路况1所在日期与分段1的起始时间点所在日期之间天数的差值;当然t
x
的数值还可以利用其他方法获得,如人为设定等,只要能满足前述对t
x
的设定要求即可。
[0109]cx
表示历史路况x在周期维度上对应的数值,周期可以是星期,月,季度,年等周期;该数值随历史路况x所在周期与分段的起始时间点所在周期之间的周期差值增加而减小;该数值可以人为设置,如历史路况x与分段的起始时间点在一个周期内,则c
x
为0.9,如
历史路况x与对应时间点相差一个周期则c
x
为0.8,相差两个个周期则c
x
的为0.7;该数值也可以直接利用历史数据得到,如其中,d0表示分段的起始时间点所在日期,d
x
表示历史路况x所在日期。
[0110]
在得到了这个分段的路径下各个历史路况的第一概率后,需要将这些历史路况的第一概率进行归一化,进而得到这个分段的路径下各个历史路况的第二概率,以保证这个分段的路径下各个历史路况的第二概率之和等于1。
[0111]
此后,将这个分段的路径下各个历史路况的数值与各自的第二概率相乘后再求和得到这个分段路径在其起始时间点的历史综合路况。
[0112]
例如,一共获取了分段1的3个历史路况;具体的,分段1的历史路况1的数值为30,分段1的历史路况1的第二概率为0.55;分段1的历史路况2的数值为21,分段1的历史路况2的第二概率为0.43;分段1的历史路况3的数值为60,分段1的历史路况3的第二概率为0.02;那么分段1在其起始时间点的历史综合路况=30
×
0.55+21
×
0.43+60
×
0.02=26.73。
[0113]
下面对将历史综合路况和当前路况进行结合得到预测路况的方法进行介绍。
[0114]
某个路段在某个时间点的当前路况可以利用现有技术直接获取,这里就不在介绍了。
[0115]
此处需要做的是将历史综合路况和当前路况进行结合进而得到预测路况。
[0116]
具体可以按下列公式计算
[0117][0118]
其中,f(n)表示分段编号的数值为n的分段的预测路况;
[0119]
n表示分段编号的数值,如计算的是分段1的预测路况的话,那么n=1,如果计算的是分段10的预测路况的话,那么n=10;
[0120]
f(an)表示分段编号的数值为n的分段的历史综合路况;
[0121]
f(bn)表示分段编号的数值为n的分段的当前路况。
[0122]
步骤s2中,当在第一监控时间段内未接收到司机端上传的定位数据,则对司机端进行电话呼叫;具体为,
[0123]
由于此前已经确定了第一监控时间段,如果在第一监控时间段内未接收到司机端上传的定位数据,则认为司机端上用于上传定位信息的app已被操作系统杀死,因此对司机端进行电话呼叫;
[0124]
需要说明的是,可以在司机端上设置任务调度,如安卓系统上的jobscheduler,当有电话呼入(无需接通电话)时,可以自动打开设定的app,这个app可以设置为在启动时会自动获取定位数据并上传定位数据。这样当对司机端进行电话呼叫时,就可以获取司机端当前的定位数据。而且无需电话被接通即可挂断,减小对司机的影响。另外,电话呼叫还可以采用人工语音的方式,即使在电话接通后,也可以告之司机及时打开app。
[0125]
步骤s2中,当在第一监控时间段内接收到司机端上传的定位数据,且定位数据在电子围栏内,则将该订单标记为执行完毕;具体为,
[0126]
首先说明一下电子围栏,电子围栏是用来判定车辆是否抵达卸货地所用的技术,如以卸货地址为中心,以设定距离为半径(如5km或15km,等等),当车辆(或其定位数据)位
于这一区域内时,则判定车辆抵达,可以准备后续工作。
[0127]
因此当在第一监控时间段内接收到司机端上传的定位数据,且定位数据在电子围栏内,则将该订单标记为执行完毕。
[0128]
步骤s2中,当第一监控时间段内接收到司机端上传的定位数据,且司机端的位置处在同一分段中的次数达到m(m为大于等于3的整数)次,则删除第一监控时间表,向司机端发送删除第一上传时间表的指令,执行s3;具体为,
[0129]
由于平台服务器在收到司机端的定位数据后会存储相应的位置信息,这些位置信息均可以在地图或运输路径上得到展现;而此前各个分段的起点和终点同样可以在地图或运输路径上得到展现,因此在第一监控时间段内接收到司机端上传的定位数据后,可以判断在完成这个订单的过程中,司机端的位置处在同一分段中的次数是否达到m次(此过程可利用现有技术完成),若是则平台服务器就删除第一监控时间表,无需再按照第一监控时间表中的第一监控时间段来监控定位数据的上传,同时,平台服务器还向司机端发送删除第一上传时间表的指令,司机端在接收到这个指令后,删除第一上传时间表,之后也无需按照第一上传时间表中的第一上传时间点来获取定位数据和上传定位数据了。
[0130]
步骤s3中,根据基础里程确定上传里程,执行s5;具体为,
[0131]
此处基础里程是一个定值,其可以提前由人为设定,如10km,或是直接使用之前分段时所用的里程数值、等等。这里需要将基础里程赋值给上传里程,即上传里程=基础里程;并在确定上传里程后执行s5。至于基础里程和上传里程的作用后面会说到。
[0132]
步骤s4中,根据基础里程和调整里程确定上传里程;具体为,
[0133]
此处调整里程是一个变化值,其数值的确定方式在后面会说到。这里需要将基础里程与调整里程的和赋值给上传里程,即上传里程=基础里程+调整里程;在确定上传里程后按步骤顺序执行s5即可。
[0134]
步骤s5中,根据定位数据和上传里程确定运输路径上对应路程的当前路况,具体为,
[0135]
由于此前司机端上传了自己当前的定位数据,这里就可以其得知司机端当前所处的位置(也可以说是司机或车辆的当前位置),而这个位置也处在运输路径上,因此可以从这个位置出发,沿着行驶方向,确定接下来上传里程(如10km)所对应的这段路程;在确定了这段路程后,其对应的当前路况的信息也是可以依靠现有技术得到的。
[0136]
步骤s5中,根据当前路况得到第二上传时间点和第二监控时间段,将第二上传时间点发送给司机端;具体为,
[0137]
通过当前路况可以利用现有技术得到车辆行驶完成这段路程的行驶时长,因此可以利用车辆位于这段路程起点对应的时间点(如接收到定位数据的时间点或司机端获取到定位数据的时间点,等等)加上车辆行驶完成这段路程的行驶时长得到第二上传时间点。
[0138]
另外,由于存在上传定位信息的应用程序(或app)被操作系统杀死的情况,平台服务器不可能持续的等待司机端上传定位数据,因此需要确定一个监控时间段(即第二监控时间段),如上传时间点之后的某个时长作为监控时间段,如上传时间点之后的30秒或上传时间点之后的2分钟,等等,这个时长的数值可以由人为提前设定。
[0139]
需要说明的是,这里的路况、第二上传时间点、第二监控时间段等都是根据司机端最新上传的定位数据的相关信息得到的,也就是说,每一次路况、第二上传时间点、第二监
控时间段等信息的确定,都会结合车辆的实际行驶情况和最新的路况来确定。
[0140]
在确定了第二上传时间点之后,就可以将这个时间点发送给司机端了,之后执行s6;而司机端在接收到这个第二上传时间点后,就可以在实际时间到达这个时间点时,获取定位数据并将定位数据上传给平台服务器。
[0141]
步骤s6中,当在第二监控时间段内未接收到司机端上传的定位数据,则对司机端进行电话呼叫,在接收到司机端上传的定位数据后执行s3;具体为,
[0142]
由于在s5中已经确定了第二监控时间段,如果在第二监控时间段内未接收到司机端上传的定位数据,则认为司机端上用于上传定位信息的app已被操作系统杀死,因此对司机端进行电话呼叫,并在接收到司机端上传的定位数据后执行s3;
[0143]
需要说明的是,可以在司机端上设置任务调度,如安卓系统上的jobscheduler,当有电话呼入(无需接通电话)时,可以自动打开设定的app,这个app可以设置为在启动时会自动获取定位数据并上传定位数据。这样当对司机端进行电话呼叫时,就可以获取司机端当前的定位数据。而且无需电话被接通即可挂断,减小对司机的影响。另外,电话呼叫还可以采用人工语音的方式,即使在电话接通后,也可以告之司机及时打开app。
[0144]
步骤s6中,当在第二监控时间段内接收到司机端上传的定位数据,且定位数据在电子围栏内,则将该订单标记为执行完毕;具体为,
[0145]
首先说明一下电子围栏,电子围栏是用来判定车辆是否抵达卸货地所用的技术,如以卸货地址为中心,以设定距离为半径(如5km或15km,等等),当车辆(或其定位数据)位于这一区域内时,则判定车辆抵达,可以准备后续工作。
[0146]
因此当在监控时间段内接收到司机端上传的定位数据,且定位数据在电子围栏内,则将该订单标记为执行完毕。
[0147]
步骤s6中,当在第二监控时间段内接收到司机端上传的定位数据,且定位数据不在电子围栏内,则根据定位数据和历史数据得到调整里程,执行s4;具体为,
[0148]
当在第二监控时间段内接收到司机端上传的定位数据,且定位数据不在电子围栏内,说明当前车辆还在行驶途中,因此可以根据定位数据和历史数据得到调整里程,之后执行s4。
[0149]
这里对根据定位数据和历史数据得到调整里程做进一步详细说明,此步骤的目的是根据定位数据判断车辆的行驶情况和时效情况,决定调整里程的大小,从而调整上传里程和上传时间点,进而影响司机端获取并上传定位数据的数量和频率。
[0150]
这里由于得到了司机端当前的定位数据,就可以得到车辆在这条运输路径上的当前行驶里程;之后结合这条运输路径的总行驶里程还能得到剩余行驶里程,进而得到剩余路程比值(即剩余行驶里程除以总行驶里程);
[0151]
除此以外,平台数据库还可以从历史数据中获取完成这条运输线路用时最长的轨迹;另外,利用车辆目前的行驶用时,通过比较,可以确定在目前的行驶用时下轨迹中对应的轨迹行驶里程;如根据订单开始执行的时间点和司机端最新上传定位数据的时间点之间的差值,得到车辆目前的行驶用时,根据这个行驶用时得到在用时最长的轨迹中,处在这个行驶用时下所走过的距离,这个距离也就是轨迹行驶里程。
[0152]
在确定了当前行驶里程、轨迹行驶里程和剩余路程比值后,就可以根据下面这个公式得到调整里程。
[0153]
调整里程=(当前行驶距离-轨迹行驶距离)
×
剩余路程比值=(当前行驶距离-轨迹行驶距离)
×
(剩余行驶里程/总行驶里程)
[0154]
需要说明的是,若当前行驶里程减去轨迹行驶里程的差值较大,则说明时效情况较好,则可以通过增加调整里程和结合实时的路况来调节上传时间点,减少司机端获取定位数据和上传定位数据的次数,进而减少app对司机端电量的消耗,降低被操作系统杀死的概率。另外,其还可以在整个行程接近结束时,逐步减少对调整里程的依赖,进而确保及时跟进时效情况,为后续决策和工作准备提供足够数据支撑。
[0155]
本发明提供一种货运定位方法,优选的,包括:
[0156]
s1、平台服务器接收到司机端上传的订单开始执行信息及定位数据后,根据定位数据和订单信息得到运输路径,向司机端发送建立呼入唤醒任务调度的指令;对运输路径进行分段,根据分段情况依次确定每个分段的起始时间点、预测路况、预测时长及每个分段的抵达时间点,根据每个分段的抵达时间点得到第一上传时间表及第一监控时间表,并向司机端发送第一上传时间表;
[0157]
s2、当在第一监控时间段内未接收到司机端上传的定位数据,则对司机端进行电话呼叫;
[0158]
当在第一监控时间段内接收到司机端上传的定位数据,且定位数据在电子围栏内,则将该订单标记为执行完毕,向司机端发送删除呼入唤醒任务调度的指令;
[0159]
当第一监控时间段内接收到司机端上传的定位数据,且司机端的位置处在同一分段中的次数达到m(m为大于等于3的整数)次,则删除第一监控时间表,向司机端发送删除第一上传时间表的指令,执行s3;
[0160]
s3、根据基础里程确定上传里程,执行s5;
[0161]
s4、根据基础里程和调整里程确定上传里程;
[0162]
s5、根据定位数据和上传里程确定运输路径上对应路程的当前路况,并根据当前路况得到第二上传时间点和第二监控时间段,将第二上传时间点发送给司机端;
[0163]
s6、当在第二监控时间段内未接收到司机端上传的定位数据,则对司机端进行电话呼叫,在接收到司机端上传的定位数据后执行s3;
[0164]
当在第二监控时间段内接收到司机端上传的定位数据,且定位数据在电子围栏内,则将该订单标记为执行完毕,向司机端发送删除呼入唤醒任务调度的指令;
[0165]
当在第二监控时间段内接收到司机端上传的定位数据,且定位数据不在电子围栏内,则根据定位数据得到调整里程,执行s4。
[0166]
其中,在步骤s1中加入了,向司机端发送建立呼入唤醒任务调度的指令,在步骤,在步骤s2和s6中加入了,司机端发送删除呼入唤醒任务调度的指令;这样调整后,司机端可以在接收到建立呼入唤醒任务调度的指令后,再利用jobscheduler等方式建立电话呼入时可以自动打开设定的app任务调度,在接收到删除呼入唤醒任务调度的指令后,再删除此前建立的电话呼入时可以自动打开设定的app任务调度,这样做可以在每次订单开始执行时建立任务调度,在每次订单结束执行时删除任务调度,进而有效确保任务调度能够有效运行,也进一步提高用户的体验,降低系统自身的内容占用。
[0167]
本发明实施例还提供一种货运定位方法,如图2所示,包括:
[0168]
当确定开始执行订单中的任务时,获取定位数据,向平台服务器上传订单开始执
行信息及定位数据,存储定位数据;
[0169]
当有电话呼入时,启动上传定位数据的应用程序,由该应用程序获取定位数据后,向平台服务器上传定位数据并更新存储的定位数据;
[0170]
当接收到第一上传时间表后,若当前时点达到第一上传时间表中的第一上传时间点时,则获取定位数据后,向平台服务器上传定位数据;
[0171]
当接收到删除第一上传时间表指令后,删除第一上传时间表;
[0172]
当接收到第二上传时间点后,当前时点达到第二上传时间点时,则获取定位数据后,向平台服务器上传定位数据。
[0173]
其中,当确定开始执行订单中的任务时,由应用程序获取定位数据,向平台服务器上传订单开始执行信息及定位数据,存储定位数据;具体为,
[0174]
如果操作司机端的用户在确定开始执行订单中的任务时,例如用户点击了app中开始执行订单的按钮等,则app可以获取当前的定位数据,并在获取到定位数据后,存储这个定位数据,并将订单开始执行的信息及这个定位数据上传到平台服务器。
[0175]
其中,当有电话呼入时,启动应用程序,由该应用程序获取定位数据后,向平台服务器上传定位数据并更新存储的定位数据;具体为,
[0176]
当有电话呼入时,则司机端可以启动这个app,并由这个app获取当前的定位数据,并在获取到定位数据后,存储这个定位数据,并将订单开始执行的信息及这个定位数据上传到平台服务器。
[0177]
其中,当接收到第一上传时间表后,若当前时点达到第一上传时间表中的第一上传时间点时,则获取定位数据后,向平台服务器上传定位数据;具体为,
[0178]
当司机端接收到第一上传时间表后,可以按照第一上传时间表中的第一上传时间点,判断当前时点是否到达第一上传时间点,当到达第一上传时间点,司机端可以获取定位数据后,向平台服务器上传定位数据。
[0179]
当接收到删除第一上传时间表指令后,删除第一上传时间表;具体为,
[0180]
当司机端接收到删除第一上传时间表指令后,则删除存储的第一上传时间表,这样就不用再判断当前时点是否到达第一上传时间点了。
[0181]
当接收到第二上传时间点后,当前时点达到第二上传时间点时,则获取定位数据后,向平台服务器上传定位数据;具体为,
[0182]
当司机端接收到第二上传时间点后,判断当前时点是否到达第二上传时间点,当到达第二上传时间点,司机端可以获取定位数据后,向平台服务器上传定位数据。
[0183]
本发明还提供一种货运定位装置,用于实施图1中的货运定位方法,如图3所示,包括:
[0184]
接收单元:用于接收司机端上传的订单开始执行信息及定位数据;在接收到定位数据后,将定位数据的相关信息发送到存储单元;在接收到订单开始执行信息后,向第一时间表单元发送启动信息。
[0185]
存储单元:用于存储定位数据的相关信息、订单信息及基础里程。
[0186]
需要说明的是,存储单元中存储的定位数据的相关信息可以包括定位数据及接收到定位数据的时间,发送定位数据的司机端等相关信息;另外当接收到定位数据的相关信息或上传里程时,可以采用更新数据的方式存储最新的定位数据的相关信息或上传里程。
[0187]
第一时间表单元:用于在接收到启动信息后,根据获取存储单元中的定位数据和订单信息得到运输路径;对运输路径进行分段,根据分段情况依次确定每个分段的起始时间点、预测路况、预测时长及每个分段的抵达时间点,根据每个分段的抵达时间点得到第一上传时间表及第一监控时间表,向第一监控单元发送第一监控时间表,向发送单元发送第一上传时间表;
[0188]
第一监控单元:用于在收到第一监控时间表后,根据第一监控时间表内的第一监控时间段及从存储单元获取的定位数据的相关信息进行判断;
[0189]
当在第一监控时间段内未接收到司机端上传的定位数据,则向呼叫单元发送呼叫信息;
[0190]
当在第一监控时间段内接收到司机端上传的定位数据,且定位数据在电子围栏内,则将存储单元中的该订单标记为执行完毕;
[0191]
当第一监控时间段内接收到司机端上传的定位数据,且司机端的位置处在同一分段中的次数达到m次,则删除第一监控时间表,向发送单元发送删除第一上传时间表指令,并向第一上传里程单元发送计算指令;
[0192]
第一上传里程单元:用于在接收到计算指令后,根据基础里程确定上传里程,向第二时间点单元发送启动指令,并将上传里程发送到存储单元;
[0193]
第二上传里程单元:用于在接收到计算指令和调整里程后,根据基础里程和调整里程确定上传里程,向第二时间点单元发送启动指令,向存储单元发送上传里程;
[0194]
第二时间点单元:用于在接收到启动信息后,根据获取存储单元中的定位数据和上传里程确定运输路径上对应路程的当前路况,并根据当前路况得到第二上传时间点和第二监控时间段,向第二监控单元发送第二监控时间表,向发送单元发送第二上传时间点;
[0195]
第二监控单元:在收到第二监控时间表后,根据第二监控时间表内的第二监控时间段及从存储单元获取的定位数据的相关信息进行判断;
[0196]
当在第二监控时间段内未接收到司机端上传的定位数据,则向呼叫单元发送呼叫信息,在接收到司机端上传的定位数据向第一上传里程单元发送计算指令;
[0197]
当在第二监控时间段内接收到司机端上传的定位数据,且定位数据在电子围栏内,则将该订单标记为执行完毕;
[0198]
当在第二监控时间段内接收到司机端上传的定位数据,且定位数据不在电子围栏内,则根据定位数据得到调整里程,并向第二上传里程单元发送计算指令和调整里程。
[0199]
发送单元;用于将接收的信息或指令发送给司机端。其中,信息或指令,包括;第一上传时间表,删除第一上传时间表指令,第二上传时间点,等。
[0200]
呼叫单元:用于在收到呼叫信息事对司机端进行电话呼叫。
[0201]
本发明还提供一种货运定位装置,用于实施图2中的货运定位方法,如图4所示,包括:
[0202]
订单执行单元,当确定开始执行订单中的任务时,获取定位数据,向平台服务器上传订单开始执行信息及定位数据,存储定位数据;
[0203]
唤醒单元,当有电话呼入时,启动上传定位数据的应用程序,由该应用程序获取定位数据后,向平台服务器上传定位数据并更新存储的定位数据;
[0204]
第一定位单元,当接收到第一上传时间表后,若当前时点达到第一上传时间表中
的第一上传时间点时,则获取定位数据后,向平台服务器上传定位数据;
[0205]
删除单元,当接收到删除第一上传时间表指令后,删除第一上传时间表;
[0206]
第二定位单元,当接收到第二上传时间点后,当前时点达到第二上传时间点时,则获取定位数据后,向平台服务器上传定位数据。
[0207]
本发明还提供一种货运定位系统,包括至少一台平台服务器,至少一个司机端;
[0208]
所述平台服务器,用于接收到司机端上传的订单开始执行信息及定位数据后,根据定位数据和订单信息得到运输路径,向司机端发送建立呼入唤醒任务调度的指令;用于对运输路径进行分段,根据分段情况依次确定每个分段的起始时间点、预测路况、预测时长及每个分段的抵达时间点,根据每个分段的抵达时间点得到第一上传时间表及第一监控时间表,并向司机端发送第一上传时间表;用于当在第一监控时间段内未接收到司机端上传的定位数据,则对司机端进行电话呼叫;用于当在第一监控时间段内接收到司机端上传的定位数据,且定位数据在电子围栏内,则将该订单标记为执行完毕,向司机端发送删除呼入唤醒任务调度的指令;用于当第一监控时间段内接收到司机端上传的定位数据,且司机端的位置处在同一分段中的次数达到m次,则删除第一监控时间表,向司机端发送删除第一上传时间表的指令,并根据基础里程确定上传里程;用于根据基础里程确定上传里程;用于根据基础里程和调整里程确定上传里程;用于根据定位数据和上传里程确定运输路径上对应路程的当前路况,并根据当前路况得到第二上传时间点和第二监控时间段,将第二上传时间点发送给司机端;用于当在第二监控时间段内未接收到司机端上传的定位数据,则对司机端进行电话呼叫,在接收到司机端上传的定位数据后根据基础里程确定上传里程;用于当在第二监控时间段内接收到司机端上传的定位数据,且定位数据在电子围栏内,则将该订单标记为执行完毕,向司机端发送删除呼入唤醒任务调度的指令;用于当在第二监控时间段内接收到司机端上传的定位数据,且定位数据不在电子围栏内,则根据定位数据得到调整里程,并根据基础里程和调整里程确定上传里程。
[0209]
所述司机端,用于当确定开始执行订单中的任务时,获取定位数据,向平台服务器上传订单开始执行信息及定位数据,存储定位数据;用于当有电话呼入时,启动上传定位数据的应用程序,由该应用程序获取定位数据后,向平台服务器上传定位数据并更新存储的定位数据;用于当接收到第一上传时间表后,若当前时点达到第一上传时间表中的第一上传时间点时,则获取定位数据后,向平台服务器上传定位数据;用于当接收到删除第一上传时间表指令后,删除第一上传时间表;用于当接收到第二上传时间点后,当前时点达到第二上传时间点时,则获取定位数据后,向平台服务器上传定位数据。
[0210]
根据本技术实施例,还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机指令,所述计算机指令用于使所述计算机执行上述方法实施例中的货运定位的方法。
[0211]
根据本技术实施例,还提供了一种电子设备,包括:至少一个处理器;以及与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的计算机程序,所述计算机程序被所述至少一个处理器执行,以使所述至少一个处理器执行上述方法实施例中的货运定位的方法。
[0212]
显然,本领域的技术人员应该明白,上述的本技术的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成
的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本技术不限制于任何特定的硬件和软件结合。
[0213]
以上所述仅为本技术的优选实施例而已,并不用于限制本技术,对于本领域的技术人员来说,本技术可以有各种更改和变化。凡在本技术的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本技术的保护范围之内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1