基于北斗定位的曲线路径动态车距测算方法与流程

文档序号:16913312发布日期:2019-02-19 18:46阅读:804来源:国知局
基于北斗定位的曲线路径动态车距测算方法与流程

本发明涉及一种车距测算方法,特别是一种基于北斗定位的曲线路径动态车距测算方法。



背景技术:

现行各种大型活动中,往往能看到车队的身影。在某些重要活动中,对于车辆行驶过程间距的保持,以及到达现场的时间间隔和顺序有着严格的要求。为了规范和秩序的管理,监控中心需要随时了解各个车辆动态的实时位置、顺序和间隔距离,前后车的距离测算的重要性就显现出来了。

但是往往行进路线并不是笔直的大道,简单地测量车辆当前位置坐标,并计算与终点的直线距离,并不能真实反映各个车辆的间距,不适用于对任务过程的精确监控和管理,如何根据实际路线测算出准确的距离就显得尤为重要。



技术实现要素:

本发明所要解决的技术问题是提供一种基于北斗定位的曲线路径动态车距测算方法,其能够更加准确反映两车之间行驶距离。

为解决上述技术问题,本发明所采用的技术方案是:

一种基于北斗定位的曲线路径动态车距测算方法,其特征在于包含以下步骤:

步骤一:对车辆行进路线进行设置;

步骤二:实时获取车辆当前位置坐标信息;

步骤三:保存各个车辆的轨迹信息;

步骤四:根据车辆坐标,对应确定行进路线上的最近坐标点;

步骤五:车辆关系判断;

步骤六:车辆轨迹距离计算。

进一步地,所述步骤一具体为规划实际任务起点、终点以及任务行进路线,基于起点获取初始化坐标点位数据,并设置任务行进距离为零。

进一步地,所述步骤二具体为通过北斗定位模块设备获取车辆点位。

进一步地,所述步骤三具体为用车辆编号作为key进行数据缓存,以便用于计算两次报位之间的行车距离,以任务的起点作为车辆的第一个坐标点数据进行缓存;

map<carid,lnglast+latlast+dis>

map表示缓存的任务车辆数据集合,carid作为key,表示每一条数据的识别主键,lnglast表示缓存的最新车辆点位经度数据,latlast表示缓存的最新车辆点位纬度数据,dis表示当前车辆基于起点已经行驶的距离;

dislng=constlng*|lngnow-lnglast|

lngnow表示最新获取上报车辆的经度,lnglast表示缓存中上一个车辆点的经度,constlng表示经度转成以米为单位的系数,dislng表示两次点位经度差值的绝对值;

dislat=constlat*|latnow-latlast|

latnow表示最新获取上报车辆的纬度,latlast表示缓存中上一个车辆点的纬度,constlat表示纬度转成以米为单位的系数,dislat表示两次点位纬度差值的绝对值

dispoi表示每次当前点位数据和缓存的最新数据点位之间的距离;

dis=dis+dispoi

lnglast=lngnow

latlast=latnow

将缓存的已行驶距离加上当前点位新增的行驶距离,同时更新缓存的最新点位数据。

进一步地,所述步骤五具体为判断两辆车辆之间是否为同起点车辆。

进一步地,所述步骤六具体为当两辆车辆为同起点车辆时,

disbe=disa-disb

disbe表示后车落后的距离,disa表示前车已经行驶的距离,disb表示后车已经行驶的距离,基于同起点的情况,只要获取行驶的里程差就能识别两车距离;

当两辆车辆为不同起点车辆时,

根据起点规划,选定第一个点为基准点,基准点出发车辆为基准车辆触发距离校验;

disoutlng=constlng*|lngnow-lngout|

disoutlat=constlat*|latnow-latout|

disout-threshold<0

lngout表示另一个起点的经度,disoutlng表示基准车辆距离另一个起点的经度距离;

latout表示另一个起点的纬度,disoutlat表示基准车辆距离另一个起点的纬度距离;

disout表示基准车辆距离另一个起点的实时距离;

threshold表示可以信任的阈值,当基准点车辆距离另一个起点的距离小于阈值,则可以认为基准车辆到达另一个起点,此时disout表示两个起点的距离;

disbe=disa-disb-disoutdisbe=disa-disb+disout

不同起点车辆的距离由领先车辆行驶的路程减去落后车辆行驶的路程加上或减去另一个起点的距离。

本发明与现有技术相比,具有以下优点和效果:本发明的基于北斗定位的曲线路径动态车距测算方法解决了两点位置测距的偏差,进一步精确车辆间距,便于行车的管理与到达现场的秩序管理与安排,与现有技术不同,本发明不直接通过两车坐标进行距离计算,而是通过数据缓存更新形式实时保存每辆车的行车轨迹坐标和行驶距离,通过这些数据计算出两车车距,更加准确反映两车之间行驶距离,而非直线距离。

附图说明

图1是本发明的基于北斗定位的曲线路径动态车距测算方法的流程图。

具体实施方式

下面通过实施例并结合附图对本发明作进一步的详细说明,以下实施例是对本发明的解释而本发明并不局限于以下实施例。

如图1所示,本发明的基于北斗定位的曲线路径动态车距测算方法,包含以下步骤:

步骤一:对车辆行进路线进行设置;规划实际任务起点、终点以及任务行进路线,基于起点获取初始化坐标点位数据,并设置任务行进距离为零。

步骤二:实时获取车辆当前位置坐标信息;通过北斗定位模块设备获取车辆点位。

步骤三:保存各个车辆的轨迹信息;

用车辆编号作为key进行数据缓存,以便用于计算两次报位之间的行车距离,以任务的起点作为车辆的第一个坐标点数据进行缓存;

map<carid,lnglast+latlast+dis>

map表示缓存的任务车辆数据集合,carid作为key,表示每一条数据的识别主键,lnglast表示缓存的最新车辆点位经度数据,latlast表示缓存的最新车辆点位纬度数据,dis表示当前车辆基于起点已经行驶的距离;

dislng=constlng*|lngnow-lnglast|

lngnow表示最新获取上报车辆的经度,lnglast表示缓存中上一个车辆点的经度,constlng表示经度转成以米为单位的系数,dislng表示两次点位经度差值的绝对值;

dislat=constlat*|latnow-latlast|

latnow表示最新获取上报车辆的纬度,latlast表示缓存中上一个车辆点的纬度,constlat表示纬度转成以米为单位的系数,dislat表示两次点位纬度差值的绝对值

dispoi表示每次当前点位数据和缓存的最新数据点位之间的距离;

dis=dis+dispoi

lnglast=lngnow

latlast=latnow

将缓存的已行驶距离加上当前点位新增的行驶距离,同时更新缓存的最新点位数据。

步骤四:根据车辆坐标,对应确定行进路线上的最近坐标点;在进行两辆车辆的形式距离测算的时候,由于本发明采用的是行驶轨迹实时更新缓存的方式,这样理论上我们认为后车将要行驶的轨迹与前车一致,这样将后车当前的坐标对应到前车轨迹中缓存的最接近的点位,然后通过该点位计算与前车当前点位的行驶距离差;

步骤五:车辆关系判断;判断两辆车辆之间是否为同起点车辆。

步骤六:车辆轨迹距离计算。

当两辆车辆为同起点车辆时,

disbe=disa-disb

disbe表示后车落后的距离,disa表示前车已经行驶的距离,disb表示后车已经行驶的距离,基于同起点的情况,只要获取行驶的里程差就能识别两车距离;

当两辆车辆为不同起点车辆时,

根据起点规划,选定第一个点为基准点,基准点出发车辆为基准车辆触发距离校验;

disoutlng=constlng*|lngnow-lngout|

disoutlat=constlat*|latnow-latout|

disout-threshold<0

lngout表示另一个起点的经度,disoutlng表示基准车辆距离另一个起点的经度距离;

latout表示另一个起点的纬度,disoutlat表示基准车辆距离另一个起点的纬度距离;

disout表示基准车辆距离另一个起点的实时距离;

threshold表示可以信任的阈值,当基准点车辆距离另一个起点的距离小于阈值,则可以认为基准车辆到达另一个起点,此时disout表示两个起点的距离;

disbe=disa-disb-disoutdisbe=disa-disb+disout

不同起点车辆的距离由领先车辆行驶的路程减去落后车辆行驶的路程加上或减去另一个起点的距离。

本说明书中所描述的以上内容仅仅是对本发明所作的举例说明。本发明所属技术领域的技术人员可以对所描述的具体实施例做各种修改或补充或采用类似的方式替代,只要不偏离本发明说明书的内容或者超越本权利要求书所定义的范围,均应属于本发明的保护范围。

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