一种设备位置更新方法、装置、电子设备及存储介质与流程

文档序号:26050491发布日期:2021-07-27 15:25阅读:64来源:国知局
一种设备位置更新方法、装置、电子设备及存储介质与流程

本发明涉及监控技术领域,尤其涉及一种设备位置更新方法、装置、电子设备及存储介质。



背景技术:

gnss(globalnavigationsatellitesystem,全球导航卫星系统),是一种使用卫星对物体进行准确定位的技术,卫星定位可以用来引导飞机、船舶、车辆以及个人安全、准确地沿着选定的路线,准时到达目的地。

计算机地图,是一种电子地图,其是利用计算机技术,以数字方式存储和查阅的地图。一般的地图使用矢量式的存储方式,地图的比例可以放大、缩小或旋转而不影响显示效果。

gis(geographicinformationsystem,地理信息系统)是一种综合性学科,涉及到利用地理学与地图学以及遥感和计算机科学,用于输入、存储、查询、分析和显示地理数据的计算机系统。在一般的gis应用中,特别是涉及到设备或人员管理的gis系统中,都需要实时动态地在计算机地图上显示设备或人员的位置信息,在这个基础上再实施以一些优化和调度方案,由于设备或人员始终是在运动状态,因此需要gis系统支持设备位置的实时更新。在常规的gis系统中,通常是通过接口到后台对当前显示范围内进行查询,查询结果再通过一些动态图层或临时图层渲染到显示界面中。

常规的gnss设备监控方式通常是设备端按照一定的频率获取到gnss位置信息,通过接口上报到后台,后台接收到数据后,把当前设备的位置记录到数据库中。当有监控端进行查询是,监控端通过查询接口,指定查询的范围和类型,实现的接口将会到数据库中进行查询,并返回数据到监控端。这个过程一般按一定的刷新频率进行调用。

然而,常规的方法在设备和监控端较少时可以正常运作,但当监控端数量较多,或者是要求的刷新频率比较高时,将会对后台数据库的查询带来很大的压力。同时无法做到比较及时地反应出设备的动态位置。



技术实现要素:

本发明提供了一种设备位置更新方法、装置、电子设备及存储介质,用于解决当监控端数量较多,或者是要求的刷新频率比较高时,将会对后台数据库的查询带来很大的压力,同时无法做到比较及时地反应出设备的动态位置的技术问题。

本发明提供的一种设备位置更新方法,包括:

接收预设的设备端上报的实时设备信息;所述实时设备信息包括位置信息;

根据所述位置信息在预设监控列表中查询目标监控端;

将所述位置信息发送至所述目标监控端;所述目标监控端用于根据所述位置信息更新所述设备端的设备位置。

可选地,所述预设监控列表记录了多个监控端的监控范围;所述根据所述位置信息在预设监控列表中查询目标监控端的步骤,包括:

依次在每个所述监控范围内匹配所述位置信息;

当匹配成功时,将匹配成功的所述监控范围对应的监控端确定为目标监控端。

可选地,所述实时设备信息还包括所述设备端的标识信息;所述方法还包括:

当在每个所述监控范围内均匹配不到所述位置信息时,在预设监控设备列表中查询所述设备端的标识信息;

当在所述预设监控设备列表中查询到所述设备端的标识信息时,从所述预设监控设备列表中移除所述设备端的标识信息。

可选地,所述将所述位置信息发送至所述目标监控端的步骤,包括:

获取所述目标监控端的地址信息;

根据所述地址信息将所述位置信息发送至所述目标监控端。

可选地,所述接收预设的设备端上报的实时设备信息的步骤之前,还包括:

接收每个所述监控端的注册请求;

基于所述注册请求生成所述预设监控列表。

本发明还提供了一种设备位置更新装置,包括:

实时设备信息接收模块,用于接收预设的设备端上报的实时设备信息;所述实时设备信息包括位置信息;

查询模块,用于根据所述位置信息在预设监控列表中查询目标监控端;

发送模块,用于将所述位置信息发送至所述目标监控端;所述目标监控端用于根据所述位置信息更新所述设备端的设备位置。

可选地,所述预设监控列表记录了多个监控端的监控范围;所述查询模块,包括:

匹配子模块,用于依次在每个所述监控范围内匹配所述位置信息;

目标监控端确定子模块,用于当匹配成功时,将匹配成功的所述监控范围对应的监控端确定为目标监控端。

可选地,所述实时设备信息还包括所述设备端的标识信息;所述装置还包括:

标识信息查询子模块,用于当在每个所述监控范围内均匹配不到所述位置信息时,在预设监控设备列表中查询所述设备端的标识信息;

移除子模块,用于当在所述预设监控设备列表中查询到所述设备端的标识信息时,从所述预设监控设备列表中移除所述设备端的标识信息。

本发明还提供了一种电子设备,所述设备包括处理器以及存储器:

所述存储器用于存储程序代码,并将所述程序代码传输给所述处理器;

所述处理器用于根据所述程序代码中的指令执行如上任一项所述的设备位置更新方法。

本发明还提供了一种计算机可读存储介质,所述计算机可读存储介质用于存储程序代码,所述程序代码用于执行如上任一项所述的设备位置更新方法。

从以上技术方案可以看出,本发明具有以下优点:本发明提供了一种设备位置更新方法,并具体公开了:接收预设的设备端上报的实时设备信息;实时设备信息包括位置信息;根据位置信息在预设监控列表中查询目标监控端;将位置信息发送至目标监控端;目标监控端用于根据位置信息更新设备端的设备位置。

本发明在获取设备端信息进行位置更新时,不直接对数据库进行查询所要的设备的位置信息,而是通过在预先设置的监控列表中匹配设备端对应的目标监控端,将上报实时设备信息的设备端的位置信息直接发送至相应的目标监控端进行设备位置更新。在本发明中,监控端无需按照指定的频率对后台服务端进行轮询,降低了网络和服务器的开销。同时,后台服务端可以通过预设的监控列表,以最短的时间把设备的位置信息发送到监控端,降低了延迟,避免对数据库进行轮询造成的资源浪费和延时。

附图说明

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

图1为本发明实施例提供的一种设备位置更新方法的步骤流程图;

图2为本发明另一实施例提供的一种设备位置更新方法的步骤流程图;

图3a为本发明实施例提供的一种设备端实时设备信息首次上报流程图;

图3b为本发明实施例提供的一种设备位置更新方法的流程图;

图4为本发明实施例提供的一种设备位置更新装置的结构框图。

具体实施方式

本发明实施例提供了一种设备位置更新方法、装置、电子设备及存储介质,用于解决当监控端数量较多,或者是要求的刷新频率比较高时,将会对后台数据库的查询带来很大的压力,同时无法做到比较及时地反应出设备的动态位置的技术问题。

为使得本发明的发明目的、特征、优点能够更加的明显和易懂,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,下面所描述的实施例仅仅是本发明一部分实施例,而非全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。

请参阅图1,图1为本发明实施例提供的一种设备位置更新方法的步骤流程图。

本发明提供的一种设备位置更新方法,具体可以包括以下步骤:

步骤101,接收预设的设备端上报的实时设备信息;实时设备信息包括位置信息;

在本发明实施例中,设备端软件运行在安卓平台或wince平台,主要是通过串口或蓝牙等方法与gnss板卡连接,通过板卡返回数据解析出当前设备端的实时设备信息;并将其上发至后台服务端。其中,设备端的实时设备信息包括当前设备端位置的经纬度坐标等位置信息。

步骤102,根据位置信息在预设监控列表中查询目标监控端;

在本发明实施例中,可以预先在后台服务器存储多个监控端对应的监控范围。后台服务端在接收到设备端上传的实时设备信息后,可以在预设的监控列表中查询目标监控端,确定设备端处于哪一个监控端的监控范围。

在本发明实施例中,监控端用于显示所监控的设备端的状态和位置信息,监控端启动后,用户将会定位至需要显示的范围,成为视口。监控端可以通过特定的协议与后台服务端通讯,将当前的监控范围注册到后台服务端中。同时,监控端将会开启推送信息接收端口,接收自后台服务器推送的设备端的实时设备信息,根据接收到实时设备信息,监控端可以将当前显示界面中的设备端或人员信息进行更新,调整位置或调整状态。

步骤103,将位置信息发送至目标监控端;目标监控端用于根据位置信息更新设备端的设备位置。

在本发明实施例中,后台服务器在确定了目标监控端后,可以将相应的设备端的实时设备信息发送至该目标监控端。目标监控端可以根据所接收到设备端的位置信息更新设备端的设备位置后向用户显示设备端的最新位置。

本发明在获取设备端信息进行位置更新时,不直接对数据库进行查询所要的设备的位置信息,而是通过在预先设置的监控列表中匹配设备端对应的目标监控端,将上报实时设备信息的设备端的位置信息直接发送至相应的目标监控端进行设备位置更新。在本发明中,监控端无需按照指定的频率对后台服务端进行轮询,降低了网络和服务器的开销。同时,后台服务端可以通过预设的监控列表,以最短的时间把设备的位置信息发送到监控端,降低了延迟,避免对数据库进行轮询造成的资源浪费和延时。

请参阅图2,图2为本发明另一实施例提供的一种设备位置更新方法的步骤流程图。具体可以包括以下步骤:

步骤201,接收预设的设备端上报的实时设备信息;实时设备信息包括位置信息;

在本发明实施例中,设备端软件运行在安卓平台或wince平台,主要是通过串口或蓝牙等方法与gnss板卡连接,通过板卡返回数据解析出当前设备端的实时设备信息;其中,设备端的实时设备信息包括当前设备端位置的经纬度坐标等位置信息;并将其上发至后台服务端。

步骤202,依次在每个监控范围内匹配位置信息;

步骤203,当匹配成功时,将匹配成功的监控范围对应的监控端确定为目标监控端;

在本发明实施例中,在获取到设备端的位置信息后,可以在预设的监控列表中查询设备端所对应的目标监控端,以进行设备端与目标监控端之间的信息交互。在实际应用中,预设监控列表中可以记录多个监控端的监控范围,后台服务端可以在获取到设备端当前的位置信息后,获取监控列表中每个监控端的监控范围,通过遍历每一个监控范围,将设备端的位置信息与每一个监控范围做对比,来找到位置信息处于哪一个监控端的监控范围之内,以确定该监控端为该设备端当前对应的目标监控端。

在本发明实施例中,为了实现上述操作,在接收预设的设备端上报的实时设备信息的步骤之前,还可以包括以下步骤:

接收每个监控端的注册请求;基于注册请求生成预设监控列表。

在具体实现中,后台服务端可以启动注册功能,在收到监控端发送的携带有“注册监控”协议的注册请求时,使用内存映射技术建立索引,将索引关系保存在监控列表中。

在一个示例中,索引关键字可以为monitorid,索引项为视口范围和接口推送端口,因此该数据结构可以为:

structmonitorinfo监控端信息

{

rectrectview;监控范围

intport;推送端口

listdevid;范围内设备列表

timeonlinetime;最后上线时间

}

进一步地,实时设备信息还包括设备端的标识信息,在本发明实施例中,当在每个监控范围内均匹配不到位置信息时,还可以包括以下步骤:

在预设监控设备列表中查询设备端的标识信息;

当在预设监控设备列表中查询到设备端的标识信息时,从预设监控设备列表中移除设备端的标识信息。

在实际应用中,后台服务端可以获取监控端当前监控的设备端的标识信息,生成监控设备列表。后台服务端在接收到设备端上报的实时设备信息后,如果能够在预设监控列表中匹配到该设备端的目标监控端,则可以将设备端的标识信息添加进监控设备列表中。如果设备端的位置信息不在所有监控端的监控范围内,则需要先判断设备端是否为被监控设备,具体可以通过在监控设备列表中进行标识信息查询来确定。当监控设备列表中存在该设备端的标识信息时,表征该设备端为被监控设备,但不处于被监控状态,此时可以将该设备端的标识信息从监控设备列表中移除。

步骤204,将位置信息发送至目标监控端;目标监控端用于根据位置信息更新设备端的设备位置。

在一个示例中,将位置信息发送至目标监控端的过程,可以通过以下步骤实现:

获取目标监控端的地址信息;根据地址信息将位置信息发送至目标监控端。

在具体实现中,监控端在后台服务端注册时,不仅可以将相应的监控范围保存在后台服务端中,还可将自身的地址信息、推送端口、范围内设备列表和最后上线时间保存到后台服务端中。后台服务端在需要推送设备端的实时设备信息时,可以通过所记录的目标监控端的推送端口和地址信息进行数据传输。使得目标监控端可以基于接收到的设备端的位置信息对设备端进行位置更新。

此外,后台服务端可以在设备端下线时,使用链表记录监控到的当前设备的信息。

进一步地,在本发明实施例中,为了保证目标监控端电子地图显示设备位置的正确性,在将位置信息更新到电子地图上之前,可以进行地图图层的叠加分析,如果位置有飘移到非可到达图层,比如建筑内部、水面等,则可以对数据进行飘移修正,使得设备端的位置不处于上述非可到达图层之上。

在本发明实施例中,由于设备端和监控端都存在因为网络异常而导致断链的可能,因此,后台服务端可以对设备端和监控端进行心跳监控。后台服务端可以根据设备端和监控端的心跳时间,记录最后上线时间,通过设定阈值t,在超时未接到心跳包时,强制设备端或监控端下线。

在本发明实施例中,可以采用动态图层技术,设定一个底图的brush,用于渲染地图背景等相关信息;同时设定一个动态图层brush,用于接收到设备位置更新时,刷新动态图层;减少因设备位置变更而刷新带来的整个地图不断闪烁。

在本发明实施例中,为了应对多设备端的实时上报,后台服务端可以开启多线程支持,根据不同数量的设备,设置线程数据值s,使用s组线程对数据进行处理。

本发明在获取设备端信息进行位置更新时,不直接对数据库进行查询所要的设备的位置信息,而是通过在预先设置的监控列表中匹配设备端对应的目标监控端,将上报实时设备信息的设备端的位置信息直接发送至相应的目标监控端进行设备位置更新。在本发明中,监控端无需按照指定的频率对后台服务端进行轮询,降低了网络和服务器的开销。同时,后台服务端可以通过预设的监控列表,以最短的时间把设备的位置信息发送到监控端,降低了延迟,避免对数据库进行轮询造成的资源浪费和延时。

为便于理解,以下通过具体示例对本发明实施例进行说明。

请参阅图3a和图3b,图3a为本发明实施例提供的一种设备端实时设备信息首次上报流程图;图3b为本发明实施例提供的一种设备位置更新方法的流程图。

如图3a所示,设备端首次上线时,首先将实时设备信息上报到后台服务端,后台接收到数据后,将当前设备端的位置记录到数据库中,当有监控端进行查询时,监控端通过查询接口,指定查询的范围和类型,后台服务端根据监控端的查询要求将设备端的数据推送到监控端,并将设备端的信息添加到监控设备列表中,监控端进入对设备端的监控流程。

如图3b所示,在监控过程中,后台服务端实时或定时获取设备端的实时设备信息,遍历监控列表来判断设备端的位置信息是否在某一个监控端的监控范围之内,若是,则进行地图图层的叠加分析,根据分析结果进行适当的飘移修正后将设备端的位置信息推送到对应的监控端,并实时或定时跳转至接收设备端上报实时设备信息的步骤。若设备端的位置信息不处于任何一个监控端的监控范围内,则通过查询监控设备列表判断设备端是否被监控,若是,则判定设备端离线,发出离线通知;若设备端不被监控,则对其他设备端的信息进行处理。

请参阅图4,图4为本发明实施例提供的一种设备位置更新装置的结构框图。

本发明实施例提供了一种设备位置更新装置,包括:

实时设备信息接收模块401,用于接收预设的设备端上报的实时设备信息;实时设备信息包括位置信息;

查询模块402,用于根据位置信息在预设监控列表中查询目标监控端;

发送模块403,用于将位置信息发送至目标监控端;目标监控端用于根据位置信息更新设备端的设备位置。

在本发明实施例中,预设监控列表记录了多个监控端的监控范围;查询模块402,包括:

匹配子模块,用于依次在每个监控范围内匹配位置信息;

目标监控端确定子模块,用于当匹配成功时,将匹配成功的监控范围对应的监控端确定为目标监控端。

在本发明实施例中,实时设备信息还包括设备端的标识信息;装置还包括:

标识信息查询子模块,用于当在每个监控范围内均匹配不到位置信息时,在预设监控设备列表中查询设备端的标识信息;

移除子模块,用于当在预设监控设备列表中查询到设备端的标识信息时,从预设监控设备列表中移除设备端的标识信息。

在本发明实施例中,发送模块403,包括:

地址信息获取子模块,用于获取目标监控端的地址信息;

发送子模块,用于根据地址信息将位置信息发送至目标监控端。

在本发明实施例中,装置,还包括:

注册模块,用于接收每个监控端的注册请求;

监控列表生成模块,用于基于注册请求生成预设监控列表。

本发明实施例还提供了一种电子设备,设备包括处理器以及存储器:

存储器用于存储程序代码,并将程序代码传输给处理器;

处理器用于根据程序代码中的指令执行本发明任一实施例的设备位置更新方法。

本发明实施例还提供了一种计算机可读存储介质,计算机可读存储介质用于存储程序代码,程序代码用于执行本发明任一实施例的设备位置更新方法。

所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。

本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。

本领域内的技术人员应明白,本发明实施例的实施例可提供为方法、装置、或计算机程序产品。因此,本发明实施例可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。

本发明实施例是参照根据本发明实施例的方法、终端设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理终端设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理终端设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理终端设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理终端设备上,使得在计算机或其他可编程终端设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程终端设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

尽管已描述了本发明实施例的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明实施例范围的所有变更和修改。

最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者终端设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者终端设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者终端设备中还存在另外的相同要素。

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

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