发明名称 一种基于GIS的动态定位调度指挥方法和系统
摘要 本发明涉及一种集卫星定位、数字地图、GIS为一体的动态定位调度指挥智能导航方法和系统,适用于车队实时定位指挥调度。包括:预先设定动态定位调度指挥所需参数;根据GPS定位信息与GIS地理信息系统进行道路匹配算法处理;将每个车队设置为一个类;0~T分钟内,每隔X秒计算该车队将分别到达的位置;判断车队是否偏离预先指定的路径;判断是否有其它车队在其安全车距值L0内;冲突时,发出警报信息;判断车队行进的平均速度是否低于设定的车速值V0,若是转入备选路径;判断车队是否抵达终点,若是则在类中被清除;直至所有车队的类操作完成。因此使用本发明能够实现对多个车队实时定位、监控、并且能够对冲突报警,实现智能化的指挥调度功能。
申请公布号 CN102129772B 申请公布日期 2013.07.31
申请号 CN201110049326.X 申请日期 2011.02.23
申请人 福建省视通光电网络有限公司 发明人 谢永强;戴莎军
分类号 G08G1/00(2006.01)I;G08G1/09(2006.01)I;G08G1/123(2006.01)I 主分类号 G08G1/00(2006.01)I
代理机构 厦门市诚得知识产权代理事务所(普通合伙) 35209 代理人 方惠春
主权项 一种基于GIS的动态定位调度指挥方法,其特征在于,包括下述步骤:步骤S1、预先设定动态定位调度指挥所需参数,包括起点和终点位置、车队信息、车速信息、车距信息和人员信息;步骤S2、获取GPS定位信息,并根据GIS地理信息系统进行道路匹配算法处理,算出当前位置的地理坐标值;步骤S3、判断车队当前位置是否与GIS地理信息系统中设定的终点位置匹配,如果是,则不再进行道路匹配算法处理,结束流程,否则执行步骤S4;步骤S4、每个车队设置为一个类,其中维护一个属于它的路径列表以及备选路径;步骤S5、从起点开始,依据GPS测得并匹配后的坐标数据判断,接下来的0~T分钟内,每隔X秒计算,该车队将分别到达的位置,其算法如下:其中,[Ax,Ay],为前一节点A的坐标,[Bx,By],为后一节点B的坐标,[Cx,Cy],为更后一节点C的坐标,[Pnow_x,Pow_y],为当前GPS测得并匹配后的坐标值,[vx,vy],为X秒内的平均速度:计算[vx,vy],由此计算到达节点B需要的时间t0; <mrow> <msub> <mi>t</mi> <mn>0</mn> </msub> <mo>=</mo> <mfrac> <msqrt> <msup> <mrow> <mo>(</mo> <msub> <mi>P</mi> <mrow> <mi>now</mi> <mo>_</mo> <mi>x</mi> </mrow> </msub> <mo>-</mo> <msub> <mi>B</mi> <mi>x</mi> </msub> <mo>)</mo> </mrow> <mn>2</mn> </msup> <mo>+</mo> <msup> <mrow> <mo>(</mo> <msub> <mi>P</mi> <mrow> <mi>now</mi> <mo>_</mo> <mi>y</mi> </mrow> </msub> <mo>-</mo> <msub> <mi>B</mi> <mi>y</mi> </msub> <mo>)</mo> </mrow> <mn>2</mn> </msup> </msqrt> <msqrt> <msup> <msub> <mi>v</mi> <mi>x</mi> </msub> <mn>2</mn> </msup> <mo>+</mo> <msup> <msub> <mi>v</mi> <mi>y</mi> </msub> <mn>2</mn> </msup> </msqrt> </mfrac> <mo>;</mo> </mrow>预测t秒后车队的坐标位置[Pt_x,Pt_y]:当t≤t0时,Pt_x=Ax+vxt且Pt_y=Ay+vyt;当t>t0时,Pt_x=Bx+Vx(t‑t0)且Pt_y=By+Vy(t‑t0);则 <mrow> <msub> <mi>V</mi> <mi>x</mi> </msub> <mo>=</mo> <msqrt> <msup> <msub> <mi>v</mi> <mi>x</mi> </msub> <mn>2</mn> </msup> <mo>+</mo> <msup> <msub> <mi>v</mi> <mi>y</mi> </msub> <mn>2</mn> </msup> </msqrt> <mfrac> <mrow> <msub> <mi>C</mi> <mi>x</mi> </msub> <mo>-</mo> <msub> <mi>B</mi> <mi>x</mi> </msub> </mrow> <msqrt> <msup> <mrow> <mo>(</mo> <msub> <mi>C</mi> <mi>x</mi> </msub> <mo>-</mo> <msub> <mi>B</mi> <mi>x</mi> </msub> <mo>)</mo> </mrow> <mn>2</mn> </msup> <mo>+</mo> <msup> <mrow> <mo>(</mo> <msub> <mi>C</mi> <mi>y</mi> </msub> <mo>-</mo> <msub> <mi>B</mi> <mi>y</mi> </msub> <mo>)</mo> </mrow> <mn>2</mn> </msup> </msqrt> </mfrac> <mo>,</mo> </mrow> <mrow> <msub> <mi>V</mi> <mi>y</mi> </msub> <mo>=</mo> <msqrt> <msup> <msub> <mi>v</mi> <mi>x</mi> </msub> <mn>2</mn> </msup> <mo>+</mo> <msup> <msub> <mi>v</mi> <mi>y</mi> </msub> <mn>2</mn> </msup> </msqrt> <mfrac> <mrow> <msub> <mi>C</mi> <mi>y</mi> </msub> <mo>-</mo> <msub> <mi>B</mi> <mi>y</mi> </msub> </mrow> <msqrt> <msup> <mrow> <mo>(</mo> <msub> <mi>C</mi> <mi>x</mi> </msub> <mo>-</mo> <msub> <mi>B</mi> <mi>x</mi> </msub> <mo>)</mo> </mrow> <mn>2</mn> </msup> <mo>+</mo> <msup> <mrow> <mo>(</mo> <msub> <mi>C</mi> <mi>y</mi> </msub> <mo>-</mo> <msub> <mi>B</mi> <mi>y</mi> </msub> <mo>)</mo> </mrow> <mn>2</mn> </msup> </msqrt> </mfrac> <mo>.</mo> </mrow>步骤S6、计算车队是否偏离预先指定的路径,其算法为:如果当前车队坐标与其前后节点A,B间距均大于Y0米,此时表明车队没有处于各节点位置,计算其是否偏离指定路径:[Ax,Ay],为前一节点A的坐标,[Bx,By],为后一节点B的坐标,[Pnow_x,Pnow_y],为当前GPS测得并匹配后的坐标值,M,为预先指定的常量, <mrow> <msub> <mi>k</mi> <mn>0</mn> </msub> <mo>=</mo> <mfrac> <mrow> <msub> <mi>B</mi> <mi>y</mi> </msub> <mo>-</mo> <msub> <mi>A</mi> <mi>y</mi> </msub> </mrow> <mrow> <msub> <mi>B</mi> <mi>x</mi> </msub> <mo>-</mo> <msub> <mi>A</mi> <mi>x</mi> </msub> </mrow> </mfrac> <mo>,</mo> </mrow>b0=By‑k0Bx, <mrow> <msub> <mi>b</mi> <mn>1</mn> </msub> <mo>=</mo> <msub> <mi>P</mi> <mrow> <mi>now</mi> <mo>_</mo> <mi>y</mi> </mrow> </msub> <mo>+</mo> <mfrac> <mn>1</mn> <msub> <mi>k</mi> <mn>0</mn> </msub> </mfrac> <msub> <mi>P</mi> <mrow> <mi>now</mi> <mo>_</mo> <mi>x</mi> </mrow> </msub> <mo>;</mo> </mrow> <mrow> <msub> <mi>x</mi> <mi>m</mi> </msub> <mo>=</mo> <mfrac> <mrow> <msub> <mi>b</mi> <mn>1</mn> </msub> <mo>-</mo> <msub> <mi>b</mi> <mn>0</mn> </msub> </mrow> <mrow> <msub> <mi>k</mi> <mn>0</mn> </msub> <mo>+</mo> <mn>1</mn> <mo>/</mo> <msub> <mi>k</mi> <mn>0</mn> </msub> </mrow> </mfrac> <mo>,</mo> </mrow> <mrow> <msub> <mi>y</mi> <mi>m</mi> </msub> <mo>=</mo> <mfrac> <mrow> <msup> <msub> <mi>k</mi> <mn>0</mn> </msub> <mn>2</mn> </msup> <msub> <mi>b</mi> <mn>1</mn> </msub> <mo>+</mo> <msub> <mi>b</mi> <mn>0</mn> </msub> </mrow> <mrow> <msup> <msub> <mi>k</mi> <mn>0</mn> </msub> <mn>2</mn> </msup> <mo>+</mo> <mn>1</mn> </mrow> </mfrac> <mo>;</mo> </mrow> <mrow> <mi>d</mi> <mo>=</mo> <msqrt> <msup> <mrow> <mo>(</mo> <msub> <mi>P</mi> <mrow> <mi>now</mi> <mo>_</mo> <mi>x</mi> </mrow> </msub> <mo>-</mo> <msub> <mi>x</mi> <mi>m</mi> </msub> <mo>)</mo> </mrow> <mn>2</mn> </msup> <mo>+</mo> <msup> <mrow> <mo>(</mo> <msub> <mi>P</mi> <mrow> <mi>now</mi> <mo>_</mo> <mi>y</mi> </mrow> </msub> <mo>-</mo> <msub> <mi>y</mi> <mi>m</mi> </msub> <mo>)</mo> </mrow> <mn>2</mn> </msup> </msqrt> <mo>;</mo> </mrow>当d≥M时,判定为偏离指定路径,执行步骤S6a:发出报警信息;当d<M时,判定为未偏离指定路径,继续执行步骤S7;步骤S7、设定属于该车队的安全车距值L0;并判断是否有其它车队在其安全车距值L0内;和检查两车队是否冲突同时进行,对于车队Q1和Q2,判断其是否有可能冲突,若冲突,则执行步骤S6a:发出报警信息;若不冲突,继续执行步骤S8;判断情况如下:情况I:比较车队Q1和Q2的前后节点是否一致,若无共同节点,不冲突;情况II:若起始节点相同,终止节点不同,不冲突;情况III:若终止节点相同,起始节点不同,计算到达终止节点的时间t0,若车队Q1和Q2计算出的t0>X秒,不冲突;若t0≤X秒,冲突;情况IV:若Q1的起始节点与Q2的终止节点相同,计算Q2到达终止节点的时间t0,若t0>X,不冲突;当t0≤X时,计算Q1与Q2的距离L,当L>L0,不冲突;当L≤L0,冲突;情况V:若Q1和Q2的起始节点与终止节点均相同,计算Q1与Q2的距离L,当L>L0,不冲突;当L≤L0,冲突;步骤S8、判断车队行进的平均速度是否低于设定的车速值V0,若是转入备选路径,计算车队的近X秒的平均速度V,若V<V0,则执行步骤S8a,检查下一节点B是否处于备选路径的序列中,若是,将当前路径中节点B后面的节点替换为备选路径中节点B后面的节点,否则重新选择其他备选路径;若V≥V0,则继续执行步骤S9;步骤S9、判断车队是否已经抵达终点,若车队与终点的距离小于给定值S0,认为车队已抵达终点,执行步骤S10;否则返回执行步骤S5;步骤S10、将此车队从类中清除;步骤S11、判断是否完成所有车队的类操作,若是,则结束流程,否则继续返回步骤S5对每个车队完成相应类操作,直至所有车队的类操作完成,结束流 程。
地址 362000 福建省泉州市鲤城区泰华路1号