终端设备的定位方法、装置、终端设备及存储介质与流程

文档序号:22334624发布日期:2020-09-25 18:07阅读:244来源:国知局
终端设备的定位方法、装置、终端设备及存储介质与流程

本申请涉及定位技术领域,具体涉及一种终端设备的定位方法、装置、终端设备及存储介质。



背景技术:

随着信息技术的高速发展,出现了越来越多可安装在终端设备上进行考勤打卡的应用程序。传统的考勤软件中通常采用办公地点考勤无线保真(wirelessfidelity,wifi)考勤两种方式。其中,办公地点考勤为添加考勤地点后,利过全球定位系统(globalpositioningsystem,gps)等定位到用户处于考勤地点范围内时,可进行考勤打卡,wifi考勤则是在终端设备连接设定的wifi后可进行考勤打卡。传统的考勤软件无法准确对用户进行定位,导致可能出现打了卡但是缺勤的情况,不利于团队的考勤管理。



技术实现要素:

本申请实施例公开了一种终端设备的定位方法、装置、终端设备及存储介质,能够准确对终端设备进行定位,提高签到考勤的准确性。

本申请实施例公开了一种终端设备的定位方法,包括:

当获取到定位请求时,获取终端设备在水平方向上的地理位置信息;

获取通过气压传感器采集的第一气压值;

获取目标楼层的第二气压值;

根据所述第一气压值与所述第二气压值确定所述终端设备与所述目标楼层之间的相对高度,并根据所述相对高度确定当前所处的楼层信息;

当所述地理位置信息及楼层信息满足设定的位置条件时,录入签到信息。

本申请实施例公开了一种终端设备的定位装置,包括:

水平位置获取模块,用于当获取到定位请求时,获取终端设备在水平方向上的地理位置信息;

第一气压获取模块,用于获取通过气压传感器采集的第一气压值;

第二气压获取模块,用于获取目标楼层的第二气压值;

楼层定位模块,用于根据所述第一气压值与所述第二气压值确定所述终端设备与所述目标楼层之间的相对高度,并根据所述相对高度确定当前所处的楼层信息;

录入模块,用于当所述地理位置信息及楼层信息满足设定的位置条件时,录入签到信息。

本申请实施例公开了一种终端设备,包括存储器及处理器,所述存储器中存储有计算机程序,所述计算机程序被所述处理器执行时,使得所述处理器实现如上所述的方法。

本申请实施例公开了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现如上所述的方法。

本申请实施例公开的终端设备的定位方法、装置、终端设备及存储介质,当获取到定位请求时,获取终端设备在水平方向上的地理位置信息,获取通过气压传感器采集的第一气压值,并获取目标楼层的第二气压值,再根据第一气压值与第二气压值确定终端设备与目标楼层之间的相对高度,并根据该相对高度确定当前所处的楼层信息,当地理位置信息及楼层信息满足设定的位置条件时,录入签到信息,除了对终端设备的水平位置进行定位外,还能够准确定位终端设备所处的楼层,可提高终端设备定位的准确性,提高了签到考勤的准确性,帮助团队进行更有效的考勤管理。

附图说明

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

图1为一个实施例中终端设备的定位方法的应用场景图;

图2为一个实施例中终端设备的定位方法的流程图;

图3a为一个实施例中设定考勤签到的位置条件的界面示意图;

图3b为一个实施例中显示签到信息的界面示意图;

图4为另一个实施例中终端设备的定位方法的流程图;

图5为另一个实施例中终端设备的定位方法的流程图;

图6a为一个实施例中按照考勤组别设定考勤签到的位置条件的界面示意图;

图6b为另一个实施例中按照考勤组别设定考勤签到的位置条件的界面示意图;

图7为一个实施例中终端设备的定位装置的框图;

图8为一个实施例中终端设备的结构框图。

具体实施方式

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

需要说明的是,本申请实施例及附图中的术语“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或设备固有的其它步骤或单元。

可以理解,本申请所使用的术语“第一”、“第二”等可在本文中用于描述各种元件,但这些元件不受这些术语限制。这些术语仅用于将第一个元件与另一个元件区分。举例来说,在不脱离本申请的范围的情况下,可以将第一气压值称为第二气压值,且类似地,可将第二气压值称为第一气压值。第一气压值和第二气压值两者都是气压值,但其不是同一气压值。

图1为一个实施例中终端设备的定位方法的应用场景图。如图1所示,用户携带终端设备110进入建筑120后,可进行考勤签到。终端设备110当获取到定位请求时,可获取在水平方向上的地理位置信息,并获取通过气压传感器采集的第一气压值。终端设备110可获取建筑120中的目标楼层的第二气压值,并根据第一气压值与第二气压值确定终端设备与目标楼层之间的相对高度。终端设备110可根据相对高度确定当前所处的楼层信息为建筑120的3楼123。当终端设备110在水平方向上的地理位置信息及当前所处的楼层信息满足设定的位置条件时,可录入签到信息,以实现考勤签到。

如图2所示,在一个实施例中,提供一种终端设备的定位方法,可应用于终端设备,可选地,该终端设备可以是手机、智能穿戴设备、平板电脑等设备,本申请实施例不做限定。其中,上述的终端设备的操作系统可包括但不限于android(安卓)操作系统、ios操作系统、symbian(塞班)操作系统、windows操作系统等,本申请实施例不做限定。该终端设备的定位方法,可包括以下步骤:

步骤210,当获取到定位请求时,获取终端设备在水平方向上的地理位置信息。

终端设备上可安装有用于考勤签到的应用程序,考勤签到的应用程序可用于帮助统计学校、公司等团体中的成员在特定时间段的出勤情况,例如可用于上班、下班的签到,外出的汇报、请假的汇报、加班的汇报等,还可用于上课、下课的签到等。在一些实施例中,当终端设备检测到考勤签到的应用程序被开启且运行在前台时,考勤签到的应用程序可生成定位请求。终端设备可获取运行在前台的考勤签到的应用程序发起的定位请求,并对终端设备当前的地理位置进行定位。其中,终端设备当前的地理位置可包括终端设备当前在水平方向上的地理位置信息及高度信息,可选地,高度信息可包括海拔高度、所处的楼层信息等。

在一些实施例中,用户可设置考勤签到的应用程序发起定位请求的时机,可选地,可设置考勤签到的应用程序发起定位请求的发起时刻,当终端设备的时间达到该发起时刻时,可自动启动考勤签到的应用程序并运行在后台,考勤签到的应用程序可发起定位请求。可选地,也可设置考勤签到的应用程序发起定位请求的无线网络,当终端设备检测到该无线网络并进行连接后,可自动启动考勤签到的应用程序并运行在后台,考勤签到的应用程序可发起定位请求。其中,触发发起定位请求的无线网络可以是wifi、蓝牙等,但不限于此。

终端设备可对当前在水平方向上的地理位置信息进行定位,终端设备在水平方向上的地理位置信息可至少包括终端设备当前的经纬度信息。终端设备进行定位的方式可包括但不限于gps定位、基于位置的服务(locationbasedservice,lbs)定位等方式。其中,gps定位技术是将gps接收机从卫星接收到的信号经过误差处理后得到gps接收机与卫星之间的距离,并对该距离进行坐标系统变换、地图投影变换等变换及计算,得到终端设备的经纬度信息。lbs定位技术可包括但不限于辅助全球卫星定位系统(assistedglobalpositioningsystem,agps)定位、cell-id(小区号)定位技术等。agps是利用基站配合gps进行定位,可通过设置在网络侧的定位服务器进行卫星扫描及定位运算等工作,以协助gps接收器完成测距和定位任务,得到终端设备的经纬度信息。cell-id定位技术可由终端设备通过无线网络上报当前所处的小区号(即基站的cell信息),从而得到终端设备的经纬度信息。

在一些实施例中,终端设备在水平方向上的地理位置信息还可包括在水平方向上的室内位置。终端设备可进行室内定位,可选地,室内定位的方式可包括但不限于码分多址(codedivisionmultipleaccess,cdma)定位、wifi定位、射频识别(radiofrequencyidentification,rfid)定位等方式。cdma定位技术采用客户端/服务器(client/server)的方式,可将agps定位和高级前向链路(advancedforwardlinktrilateration,aflt)三角定位法两种定位技术有机结合,得到终端设备当前所处的室内位置。wifi定位技术是由终端设备连接的wifi接入点利用接收信号强度指示(receivedsignalstrengthindication,rssi)、飞行时间等对终端设备当前所在的室内位置进行定位。rfid定位技术则是由终端设备扫描设置在室内不同位置的射频标签读写器,从而对终端设备当前所在的室内位置进行定位。可以理解地,终端设备获取水平方向上的地理位置信息的方式可不仅限于上述描述的几种定位方式,也可以是其它定位方向,本申请实施例不作限定。

步骤220,获取通过气压传感器采集的第一气压值。

终端设备上可设置有气压传感器,可实时获取气压传感器采集的第一气压值,该第一气压值可指的是终端设备的绝对压强。气压传感器采集的第一气压值可用于确定终端设备当前的海拔高度。可选地,终端设备可获取当前时刻气压传感器采集的第一气压值,以根据该当前时刻气压传感器采集的第一气压值计算终端设备当前的海拔高度。可选地,终端设备也可获取预设时长内气压传感器采集的多个第一气压值,例如获取3秒内、1分钟内等时长内气压传感器采集的多个第一气压值。可判断获取的多个第一气压值是否稳定,如多个第一气压值之间的差值是否小于差值阈值,若小于差值阈值,则确定第一气压值稳定。可剔除多个第一气压值中与其它第一气压值的差值大于或等于差值阈值的不稳定的第一气压值,并计算多个稳定的第一气压值的平均气压值,可根据该平均气压值计算终端设备当前的海拔高度。通过多个稳定的第一气压值计算终端设备当前的海拔高度,可使得计算得到的终端设备当前的海拔高度更为准确。

步骤230,获取目标楼层的第二气压值。

目标楼层可以是终端设备当前所处建筑中的任意一个楼层,也可以是预先选定的固定的楼层,例如,建筑的一楼等。目标楼层可设置有至少一个气压检测装置,气压检测装置可用于实时采集目标楼层的第二气压值,并将采集的目标楼层的第二气压值上传至服务器的气压数据库中。终端设备可访问服务器的气压数据库,并从气压数据库中获取目标楼层的第二气压值,第二气压值可用于计算目标楼层的海拔高度。可选地,获取目标楼层的第二气压值可以是获取目标楼层当前时刻的第二气压值,并根据目标楼层当前时刻的第二气压值得到目标楼层的海拔高度,也可以是获取预设时长内目标楼层的多个第二气压值,并根据该多个第二气压值得到目标楼层的海拔高度。具体如何得到目标楼层的海拔高度可参照上述关于计算终端设备当前的海拔高度的方式,在此不再赘述。

步骤240,根据第一气压值与第二气压值确定终端设备与目标楼层之间的相对高度,并根据相对高度确定当前所处的楼层信息。

终端设备可根据气压传感器采集的第一气压值计算当前的海拔高度,根据目标楼层的第二气压值计算目标楼层的海拔高度,并计算终端设备当前的海拔高度及目标楼层的海拔高度之间的差值,以得到相对高度。例如,终端设备当前的海拔高度为h1,目标楼层的海拔高度为h2,则终端设备与目标楼层之间的相对高度δh=h1-h2。可根据终端设备与目标楼层之间的相对高度计算终端设备与目标楼层之间相差的楼层数。作为一种具体实施方式,可获取建筑中每个楼层的高度信息,可选地,该高度信息可以是统一的高度信息,例如,建筑中每个楼层大概3米高。则终端设备与目标楼层之间相差的楼层数可为终端设备与目标楼层之间的相对高度与每个楼层的高度信息之间的比值,例如,相对高度为9米,每个楼层3米高,则终端设备与目标楼层之间相差的楼层数为3。

在一些实施例中,若终端设备与目标楼层之间的相对高度大于0,说明终端设备当前的海拔高度高于目标楼层的海拔高度,则终端设备当前所处的楼层信息可为目标楼层与终端设备和目标楼层之间相差的楼层数之和。若终端设备与目标楼层之间的相对高度小于0,说明终端设备当前的海拔高度低于目标楼层的海拔高度,则终端设备当前所处的楼层信息可为目标楼层与终端设备和目标楼层之间相差的楼层数之差。例如,目标楼层为3楼,每个楼层4米高,若终端设备与目标楼层之间的相对高度为6米,终端设备与目标楼层之间相差的楼层数为1.5层,则终端设备当前所处的楼层信息为4.5层,即第4层与第5层的中间;若终端设备与目标楼层之间的相对高度为-4米,终端设备与目标楼层之间相差的楼层数为1层,则终端设备当前所处的楼层信息为2层。

步骤250,当地理位置信息及楼层信息满足设定的位置条件时,录入签到信息。

终端设备的存储器中可存储有设定的位置条件,该设定的位置条件用于表征可成功进行考勤签到的位置范围。设定的位置条件可包括设定的水平位置范围及楼层范围。其中,水平位置范围可用于限定可成功进行考勤签到的区域范围,该区域范围可以是以考勤地点的位置为中心的预设范围区域,例如,以考勤地点的位置为中心的100米范围内、200米范围内等。楼层范围可用于限定可成功进行考勤签到的楼层范围,该楼层范围可以是以考勤地点所在楼层为基准的一定范围内的楼层,例如,以考勤地点所在楼层为基准的2层楼内、3层楼内等,在此不作限定。

在一些实施方式中,公司或学校等团队的管理员可先设定考勤签到的位置条件。图3a为一个实施例中设定考勤签到的位置条件的界面示意图。如图3a所示,可在考勤地点添加框302中添加一个或多个考勤地点,添加考勤地点可添加地点名称及楼层,如图3a中所示的“aa市bb科技大厦10楼”。可选地,也可直接在考勤地点添加框302输入公司名称,考勤签到的应用程序可将公司名称上传到地图服务器中查找得到该公司名称对应的考勤地点和楼层。管理员还可在区域范围选择框304中选择有效考勤的范围区域,如100米、200米等,可以楼层范围选择框306中选择楼层范围选择有效考勤的楼层范围,如2层、3层、1层等,在此不作限定。

当考勤签到的应用程序发起定位请求后,终端设备可获取设定的位置条件,并实时判断终端设备在水平方向上的地理位置信息及所处的楼层信息是否满足设定的位置条件。可判断终端设备在水平方向上的地理位置信息是否处于设定的水平位置范围内,并判断终端设备所处的楼层信息是否处于设定的楼层范围内,当终端设备在水平方向上的地理位置信息处于设定的水平位置范围内且所处的楼层信息处于设定的楼层范围内时,可确定满足可成功考勤签到的位置条件。

当终端设备在水平方向上的地理位置信息及所处的楼层信息满足设定的位置条件时,可获取签到信息,并将签到信息通过考勤签到的应用程序录入到考勤系统中。可选地,签到信息可至少包括签到时间、成功考勤签到时终端设备在水平方向上的地理位置信息及所处的楼层信息,其中签到时间可指的是确定终端设备在水平方向上的地理位置信息及所处的楼层信息满足可成功考勤签到的位置条件的时间。

在一些实施例中,终端设备还可通过考勤签到的应用程序的界面输出签到信息,将签到信息进行显示,以使用户可以清楚地获知签到结果。图3b为一个实施例中显示签到信息的界面示意图。如图3b所示,可在界面中显示打卡时间及打卡地点,打卡时间即为上述的签到时间,打卡地点即为成功考勤签到时终端设备在水平方向上的地理位置信息及所处的楼层信息。可选地,还可设置有效的签到时间范围,如果终端设备的签到时间不满足该签到时间范围,则可在界面中进行提示,例如,早上上班的签到时间范围为8点30分以前,若晚于该签到时间范围,则可在界面中提示迟到,晚上下班的签到时间范围为5点30分以后,若早于该签到时间范围,则可在界面中提示早退等,在此不作限定。可以理解地,显示签到信息的方式并不仅局限于上述描述的方式,也可以是其它方式,在此不作限定。

在本申请实施例中,当获取到定位请求时,获取终端设备在水平方向上的地理位置信息,获取通过气压传感器采集的第一气压值,并获取目标楼层的第二气压值,再根据第一气压值与第二气压值确定终端设备与目标楼层之间的相对高度,并根据该相对高度确定当前所处的楼层信息,当地理位置信息及楼层信息满足设定的位置条件时,录入签到信息,除了对终端设备的水平位置进行定位外,还能够准确定位终端设备所处的楼层,可提高终端设备定位的准确性,提高了签到考勤的准确性,帮助团队进行更有效的考勤管理。

如图4所示,在一个实施例中,提供另一种终端设备的定位方法,可应用于上述的终端设备,该方法可包括以下步骤:

步骤402,当获取到定位请求时,获取终端设备在水平方向上的地理位置信息。

步骤404,获取通过气压传感器采集的第一气压值。

步骤402~404的描述可参照上述各实施例中的相关描述,在此不再一一赘述。

步骤406,获取通过温度传感器采集的温度原始数据。

终端设备的气压传感器采集的第一气压值为原始气压值,由于气压传感器采集的第一气压值会受到温度、气压传感器的结构组装、结构布局等的影响,导致采集的原始第一气压值的精度不能满足预期,因此可对气压传感器采集的原始第一气压值进行补偿较正,以提高第一气压值的准确性。

在一个实施例中,终端设备的存储器中可存储有补偿参数,补偿参数可包括温度补偿参数及压力补偿参数中的至少一种。终端设备中可设置有温度传感器,温度传感器可实时采集温度值,可获取温度传感器采集的温度原始数据。可选地,终端设备获取气压传感器采集的第一气压值后,可获取温度传感器同步采集的温度原始数据,第一气压值温度原始数据可为相同时刻采集的数据,可使较正的结果更为准确。

步骤408,根据温度补偿参数对温度原始数据进行补偿计算,得到温度补偿值。

可通过温度补偿公式中的温度补偿参数对温度原始数据进行补偿计算,以得到温度补偿值。可选地,存储器中可存储有一个或多个在不同条件下的温度补偿参数,利用一个或多个温度补偿参数对温度原始数据进行校正调整。在一个实施例中,以存储器中存储有3个温度补偿参数为例,温度补偿公式可如式(1)所示:

tlin=(adct-d0)*dtk1+(adct-d0)2*dtk2式(1);

其中,tlin表示温度补偿值,d0、dtk1、dtk2分别为3个温度补偿参数,温度补偿参数可理解为系统内自存的用于校准的微调参数,以对温度传感器采集的温度进行调整。

步骤410,根据温度补偿值及压力校准参数对第一气压值进行修正,得到修正后的第一气压值。

压力校准参数也可理解为压力补偿参数,可通过预设的气压补偿公式,根据计算得到的温度补偿值及压力校准参数对气压传感器采集的原始第一气压值进行补偿计算,以得到修正后的第一气压值。对原始第一气压值进行温度补偿及气压补偿,较正原始第一气压值,以得到准确的修正后的第一气压值。

在一个实施例中,以存储器中存储有11个压力校准参数为例,气压补偿公式可如式(2)所示:

pout=0+tk10*tlin+tk20*tlin2+tk30*tlin3

+adcp*(s+tk1s*tlin+tk2s*tlin2+tk3s*tlin3)式(2);

+adcp2*(nls+tknls*tlin)+adcp3*nls3

其中,tlin表示温度补偿值,0、tk10、tk20、tk30、s、tk1s、tk2s、tk3s、nls、tknls、nls分别为11个压力校准参数,adcp为气压传感器采集的原始第一气压值,pout为修正后的第一气压值。对原始第一气压值进行温度补偿,可减少终端设备所处环境的温度对第一气压值的影响,同时对第一气压值进行气压补偿,将温度补偿与气压补偿结合,提高修正后的第一气压值的准确性。

在一些实施例中,除了温度补偿和气压补偿外,还可对气压传感器进行漂移较正,降低第一气压值由传感器漂移带来的误差,提高准确性。

步骤412,获取目标楼层的第二气压值。

终端设备接收到发起的定位请求后,可通过连接的无线网络访问气压数据库,该数据库中可存储有终端设备当前所处建筑的至少一个楼层的实时气压数据。作为一种实施方式,建筑的每个楼层可分别设置有气压检测装置,气压采集装置可实时对所属楼层的气压值进行采集,并上传至气压数据库中存储,气压数据库中存储的各个楼层的实时气压数据即为对应的气压检测装置上传的气压值。终端设备与所处建筑中的无线网络建立通信连接后,即可访问气压数据库,以获取目标楼层的第二气压值。可选地,目标楼层可以是建筑中随机的一个楼层,也可以预设的固定楼层,在此不作限定。

在一个实施例中,当终端设备处于建筑中的不同楼层时,可分别连接具有不同标识信息的无线网络,目标楼层可以是与终端设备连接的无线网络对应的楼层。可将无线网络所属的楼层作为目标楼层,并从气压数据库中获取与目标楼层对应的实时气压数据。可根据目标楼层对应的实时气压数据确定目标楼层当前的第二气压值。可选地,可从目标楼层对应的实时气压数据中获取最近时刻的气压值作为目标楼层当前的第二气压值。可选地,也可从目标楼层对应的实时气压数据中获取距离当前时刻最近的预设数量的气压值,并将预设数量的气压值的平均值作为目标楼层当前的第二气压值等,获取目标楼层当前的第二气压值也可以是其它方式,在此不作限定。通过连接的无线网络获取目标楼层的第二气压值,可保证数据获取的实时性,提高终端设备的楼层定位的准确性及实时性。

在一些实施例中,目标楼层也可是一定时间段内气压值最稳定的楼层。可从气压数据库中获取各个楼层的实时气压数据,并根据各个楼层的实时气压数据确定一定时间段内气压值稳定的楼层,可将该气压值稳定的楼层作为目标楼层。可检测各个楼层的实时气压数据在一定时间段内气压值的波动幅度,并将波动幅度最小的气压值确定为稳定的气压值,目标楼层即为波动幅度最小的气压值对应的楼层。可根据目标楼层在一定时间段内的气压值确定目标楼层当前的第二气压值,目标楼层当前的第二气压值可以是一定时间段内的气压值的平均值,也可以是一定时间内出现次数最多的气压值等,但不限于此。选取气压值最稳定的楼层作为目标楼层,可提高终端设备的楼层定位的准确性。

进一步地,为了方便进行计算且保证定位的准确性,目标楼层可以是小于考勤地点所属楼层的楼层,可先确定建筑中小于考勤地点所属楼层的楼层,并从建筑中小于考勤地点所属楼层的楼层中选取目标楼层,选取目标楼层的方式可参照上述的描述,例如选取一定时间段内气压值最稳定的楼层作为目标楼层,或是选取近期连接过的无线网络对应的楼层等。

步骤414,根据修正后的第一气压值与第二气压值确定终端设备与目标楼层之间的相对高度,并根据相对高度确定当前所处的楼层信息。

终端设备可根据修正后的第一气压值计算终端设备对应的第一高度值,该第一高度值即为终端设备当前所处的海拔高度。可根据目标楼层当前的第二气压值计算目标楼层对应的第二高度值,该第二高度值即为目标楼层对应的海拔高度。可计算第一高度值与第二高度值之间的差值,得到终端设备与目标楼层之间的相对高度。

在一个实施例中,计算终端设备与目标楼层之间的相对高度的公式可如下列式(3)~式(5)所示:

δh=h1-h2式(5);

其中,p0为海平面气压值,p1为修正后的第一气压值,h1为终端设备的第一高度值,p2为目标楼层的第二气压值,h2为目标楼层的第二高度值,δh为终端设备与目标楼层之间的相对高度。

终端设备可根据与目标楼层之间的相对高度及每个楼层的高度信息确定当前所处的楼层信息。可选地,每个楼层的高度信息可相同,则终端设备当前所处的楼层信息可为相对高度与每个楼层的高度信息之间的比值。在一些实施例中,建筑中的每个楼层的高度信息可不同,可预先对每个楼层的高度信息进行测算。

在步骤402之前,可包括:获取分别设置在各个楼层的气压检测装置上传的各个楼层的气压值,并根据各个楼层的气压值计算每两个相邻楼层之间的气压差值,并根据每两个相邻楼层之间的气压差值确定每个楼层的高度信息。可获取每个楼层与上一楼层分别对应的气压值,并计算每个楼层与上一楼层之间的气压差值,再将气压差值换算为高度值,从而得到每个楼层的高度信息。作为一种实施方式,也可分别根据各个楼层的气压值,计算各个楼层对应的海拔高度,并计算每个楼层与上一楼层的海拔高度差值,可将与上一楼层的海拔高度差值的绝对值作为对应楼层的高度信息。

在一些实施例中,对各个楼层的高度信息进行测算后,在进行定位时,可获取目标楼层与考勤地点所属楼层之间的各个楼层的高度信息,并在计算得到终端设备与目标楼层之间的相对高度后,根据该相对高度及目标楼层与考勤地点所属楼层之间的各个楼层的高度信息确定终端设备所处的楼层信息。举例说明,目标楼层为1楼,考勤地点所属楼层为11楼,1楼的高度为5m,2楼至4楼的高度均为4米,若终端设备与目标楼层之间的相对高度为10米,则可确定终端设备所处的楼层信息为3楼。

步骤416,当地理位置信息及楼层信息满足设定的位置条件时,录入签到信息。

步骤416的描述可参照上述各实施例中的相关描述,在此不再一一赘述。

在本申请实施例中,获取气压传感器采集的第一气压值后,还对第一气压值进行温度补偿及气压补偿等补偿较正,提高终端设备在海拔高度上定位的准确性,可进一步提高定位的楼层信息的准确性。

如图5所示,在一个实施例中,提供另一种终端设备的定位方法,可包括以下步骤:

步骤502,当获取到定位请求时,获取终端设备在水平方向上的地理位置信息。

步骤520的描述可参照上述各实施例中的相关描述,在此不再一一赘述。

步骤504,判断地理位置信息是否处于设定的位置条件中的水平位置范围,若是,则执行步骤506,若否,则执行步骤502。

终端设备获取在水平方向上的地理位置信息后,可判断该地理位置信息是否处于设定的位置条件中的水平位置范围,若处于水平位置范围内,则可说明终端设备处于考勤签到对应的有效的区域范围内,则可进一步获取终端设备所处的楼层信息,以完成考勤签到。若终端设备的地理位置信息不处于设定的水平位置范围内,则可说明终端设备还未处于考勤签到对应的有效的区域范围内,则可先不获取终端设备所处的楼层信息,并实时获取终端设备在水平方向上的地理位置信息,直至地理位置信息处于水平位置范围内后,再获取终端设备所处的楼层信息。不同时获取终端设备在水平方向上的地理位置信息及所处的楼层信息,可降低功耗及计算量。

步骤506,获取通过重力传感器检测的重力加速度。

终端设备上可设置有重力传感器,重力传感器可用于检测终端设备的重力加速度。当终端设备在水平方向上的地理位置信息处于设定的水平位置范围内后,可获取通过重力传感器检测的重力加速度,并判断重力加速度是否大于速度阈值。若重力加速度大于速度阈值,可说明终端设备的用户正处于上楼状态,则获取终端设备所处的楼层信息。若重力加速度不大于速度阈值,可说明终端设备的用户并没有处于上楼状态,可先不获取终端设备所处的楼层信息,可降低定位的功耗及计算量。

进一步地,还可将重力加速度与终端设备连接的无线网络结合判断用户是否正处于上楼状态。可选地,当终端设备与楼梯间、电梯间等上楼通道的无线网络连接时,且重力加速度大于速度阈值,则可确定终端设备的用户正处于上楼状态。可选地,若是终端设备扫描到不同楼层的无线网络,扫描到的不同楼层的无线网络的信号强度发生变化,且重力加速度大于速度阈值,则可确定终端设备的用户正处于上楼状态。可提高上楼状态判定的准确度。

步骤508,当重力加速度大于速度阈值时,获取通过气压传感器采集的第一气压值。

步骤510,获取通过温度传感器采集的温度原始数据。

步骤512,根据温度补偿参数对温度原始数据进行补偿计算,得到温度补偿值。

步骤514,根据温度补偿值及压力校准参数对第一气压值进行修正,得到修正后的第一气压值。

步骤516,获取目标楼层的第二气压值。

步骤518,根据修正后的第一气压值与第二气压值确定终端设备与目标楼层之间的相对高度,并根据相对高度确定当前所处的楼层信息。

步骤508~518的描述可参照上述各实施例中的相关描述,在此不再一一赘述。

步骤520,当楼层信息处于设定的位置条件中的楼层范围内时,获取签到信息,并将签到信息录入到考勤系统中,并在录入成功后显示签到信息。

在一些实施例中,同一公司或学校的团体中可分别设置多个考勤组别,每个考勤组别可分别对应不同的考勤规则,如可对应不同的考勤时间范围及位置条件。例如,同一公司在不同楼层设置在办公室,则可针对相应的楼层范围进行考勤签到。在步骤504之前,终端设备接收到考勤签到应用程序发起的定位请求后,可获取终端设备的用户标识信息。可选地,用户标识信息可包括但不限于用户姓名、手机号码、身份证号、工号、学生号等可用于唯一标识用户身份的信息。可根据该用户标识信息确定终端设备对应的考勤组别,并获取考勤组别对应的设定的位置条件,再将终端设备水平方向上的地理位置信息与获取的位置条件中的水平位置范围进行比对,并在获取终端设备的楼层信息后,与获取的位置条件中的楼层范围进行比对。

图6a为一个实施例中按照考勤组别设定考勤签到的位置条件的界面示意图。如图6a所示,考勤组别为a组,可在考勤地点添加框602中添加a组对应的一个或多个考勤地点,如图6a中所示的“aa市bb科技大厦10楼”,并选定水平位置范围为100米,楼层范围为2层,即设定的位置条件为以aa市bb科技大厦为中心的100米范围内,且在10楼的2层楼范围内。

图6b为另一个实施例中按照考勤组别设定考勤签到的位置条件的界面示意图。如图6b所示,考勤组别为b组,可在考勤地点添加框604中添加b组对应的一个或多个考勤地点,如图6b中所示的“aa市bb科技大厦8楼”,并选定水平位置范围为100米,楼层范围为2层,即设定的位置条件为以aa市bb科技大厦为中心的100米范围内,且在8楼的2层楼范围内。

在本申请实施例中,当终端设备的水平位置处于设定的水平位置范围内时,且终端设备的用户处于上楼状态时,再对终端设备的楼层信息进行定位,可减少定位时的计算量及产生的功耗。且针对不同的考勤组别,可设定不同的考勤规则,提高了团队的考勤管理的灵活性,可更加准确地判定员工的签到考勤状诚,帮助团队进行更有效的考勤管理。

如图7所示,在一个实施例中,提供一种终端设备的定位装置700,可应用上述的终端设备。终端设备的定位装置700,可包括水平位置获取模块710、第一气压获取模块720、第二气压获取模块730、楼层定位模块740及录入模块750。

水平位置获取模块710,用于当获取到定位请求时,获取终端设备在水平方向上的地理位置信息。

第一气压获取模块720,用于获取通过气压传感器采集的第一气压值。

第二气压获取模块730,用于获取目标楼层的第二气压值。

楼层定位模块740,用于根据第一气压值与第二气压值确定终端设备与目标楼层之间的相对高度,并根据相对高度确定当前所处的楼层信息。

录入模块750,用于当地理位置信息及楼层信息满足设定的位置条件时,录入签到信息。

在本申请实施例中,当获取到定位请求时,获取终端设备在水平方向上的地理位置信息,获取通过气压传感器采集的第一气压值,并获取目标楼层的第二气压值,再根据第一气压值与第二气压值确定终端设备与目标楼层之间的相对高度,并根据该相对高度确定当前所处的楼层信息,当地理位置信息及楼层信息满足设定的位置条件时,录入签到信息,除了对终端设备的水平位置进行定位外,还能够准确定位终端设备所处的楼层,可提高终端设备定位的准确性,提高了签到考勤的准确性,帮助团队进行更有效的考勤管理。

在一个实施例中,上述终端设备的定位装置700,除了包括水平位置获取模块710、第一气压获取模块720、第二气压获取模块730、楼层定位模块740及录入模块750,还包括温度获取模块、温度补偿模块及气压修正模块。

温度获取模块,用于获取通过温度传感器采集的温度原始数据。

温度补偿模块,用于根据温度补偿参数对温度原始数据进行补偿计算,得到温度补偿值。

气压修正模块,用于根据温度补偿值及压力校准参数对第一气压值进行修正,得到修正后的第一气压值。

在一个实施例中,第二气压获取模块730,包括访问单元、气压获取单元及气压确定单元。

访问单元,用于通过连接的无线网络访问气压数据库,气压数据库中存储有终端设备当前所处建筑的至少一个楼层的实时气压数据。

气压获取单元,用于将无线网络所属的楼层作为目标楼层,并从气压数据库中获取与目标楼层对应的实时气压数据。

气压确定单元,用于根据目标楼层对应的实时气压数据确定目标楼层当前的第二气压值。

在一个实施例中,气压获取单元,还用于根据实时气压数据确定一定时间段内气压值稳定的楼层,并将气压值稳定的楼层作为目标楼层。

气压确定单元,还用于根据目标楼层在一定时间段内的气压值确定目标楼层当前的第二气压值。

楼层定位模块740,还用于根据修正后的第一气压值与第二气压值确定终端设备与目标楼层之间的相对高度,并根据相对高度确定当前所处的楼层信息。

在一个实施例中,楼层定位模块740,包括第一高度计算单元、第二高度计算单元、相对高度计算单元及楼层确定单元。

第一高度计算单元,用于根据修正后的第一气压值计算终端设备对应的第一高度值。

第二高度计算单元,用于根据第二气压值计算目标楼层对应的第二高度值。

相对高度计算单元,用于计算第一高度值与第二高度值之间的差值,得到终端设备与目标楼层之间的相对高度。

楼层确定单元,用于根据相对高度及每个楼层的高度信息确定当前所处的楼层信息。

在一个实施例中,上述终端设备的定位装置700,还包括高度测算模块,用于获取分别设置在各个楼层的气压检测装置上传的各个楼层的气压值,根据各个楼层的气压值计算每两个相邻楼层之间的气压差值,并根据每两个相邻楼层之间的气压差值确定每个楼层的高度信息。

在本申请实施例中,获取气压传感器采集的第一气压值后,还对第一气压值进行温度补偿及气压补偿等补偿较正,提高终端设备在海拔高度上定位的准确性,可进一步提高定位的楼层信息的准确性。

在一个实施例中,上述终端设备的定位装置700,除了包括水平位置获取模块710、第一气压获取模块720、第二气压获取模块730、楼层定位模块740、录入模块750、温度获取模块、温度补偿模块、气压修正模块及高度测算模块,包括

水平位置判断模块,用于判断地理位置信息是否处于设定的位置条件中的水平位置范围。

加速度获取模块,用于若地理位置信息处于水平位置范围内,则获取通过重力传感器检测的重力加速度。

第一气压获取模块720,还用于当重力加速度大于速度阈值时,获取通过气压传感器采集的第一气压值。

在一个实施例中,录入模块750,还用于当楼层信息处于设定的位置条件中的楼层范围内时,获取签到信息,签到信息至少包括签到时间和地理位置信息及楼层信息,将签到信息录入到考勤系统中,并在录入成功后显示签到信息。

在一个实施例中,上述终端设备的定位装置700,还包括条件获取模块。

条件获取模块,用于获取终端设备的用户标识信息,根据用户标识信息确定终端设备对应的考勤组别,并获取考勤组别对应的设定的位置条件。

在本申请实施例中,当终端设备的水平位置处于设定的水平位置范围内时,且终端设备的用户处于上楼状态时,再对终端设备的楼层信息进行定位,可减少定位时的计算量及产生的功耗。且针对不同的考勤组别,可设定不同的考勤规则,提高了团队的考勤管理的灵活性,可更加准确地判定员工的签到考勤状诚,帮助团队进行更有效的考勤管理。

图8为一个实施例中终端设备的结构框图。如图8所示,终端设备800可以包括一个或多个如下部件:处理器810、与处理器810耦合的存储器820,其中存储器820可存储有一个或多个应用程序,一个或多个应用程序可以被配置为由一个或多个处理器810执行时实现如上述各实施例描述的方法。

处理器810可以包括一个或者多个处理核。处理器810利用各种接口和线路连接整个终端设备800内的各个部分,通过运行或执行存储在存储器820内的指令、程序、代码集或指令集,以及调用存储在存储器820内的数据,执行终端设备800的各种功能和处理数据。可选地,处理器810可以采用数字信号处理(digitalsignalprocessing,dsp)、现场可编程门阵列(field-programmablegatearray,fpga)、可编程逻辑阵列(programmablelogicarray,pla)中的至少一种硬件形式来实现。处理器810可集成中央处理器(centralprocessingunit,cpu)、图像处理器(graphicsprocessingunit,gpu)和调制解调器等中的一种或几种的组合。其中,cpu主要处理操作系统、用户界面和应用程序等;gpu用于负责显示内容的渲染和绘制;调制解调器用于处理无线通信。可以理解的是,上述调制解调器也可以不集成到处理器810中,单独通过一块通信芯片进行实现。

存储器820可以包括随机存储器(randomaccessmemory,ram),也可以包括只读存储器(read-onlymemory,rom)。存储器820可用于存储指令、程序、代码、代码集或指令集。存储器820可包括存储程序区和存储数据区,其中,存储程序区可存储用于实现操作系统的指令、用于实现至少一个功能的指令(比如触控功能、声音播放功能、图像播放功能等)、用于实现上述各个方法实施例的指令等。存储数据区还可以存储终端设备800在使用中所创建的数据等。

可以理解地,终端设备800可包括比上述结构框图中更多或更少的结构元件,例如,包括gps模块、电源模块、物理按键、wifi模块、扬声器、蓝牙模块、传感器等,还可在此不进行限定。

本申请实施例公开一种计算机可读存储介质,其存储计算机程序,其中,该计算机程序被处理器执行时实现如上述实施例描述的方法。

本申请实施例公开一种计算机程序产品,该计算机程序产品包括存储了计算机程序的非瞬时性计算机可读存储介质,且该计算机程序可被处理器执行时实现如上述各实施例描述的方法。

本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一非易失性计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、rom等。

如此处所使用的对存储器、存储、数据库或其它介质的任何引用可包括非易失性和/或易失性存储器。合适的非易失性存储器可包括rom、可编程rom(programmablerom,prom)、可擦除prom(erasableprom,eprom)、电可擦除prom(electricallyerasableprom,eeprom)或闪存。易失性存储器可包括随机存取存储器(randomaccessmemory,ram),它用作外部高速缓冲存储器。作为说明而非局限,ram以多种形式可得,诸如静态ram(staticram,sram)、动态ram(dynamicrandomaccessmemory,dram)、同步dram(synchronousdram,sdram)、双倍数据率sdram(doubledataratesdram,ddrsdram)、增强型sdram(enhancedsynchronousdram,esdram)、同步链路dram(synchlinkdram,sldram)、存储器总线直接ram(rambusdram,rdram)及直接存储器总线动态ram(directrambusdram,drdram)。

应理解,说明书通篇中提到的“一个实施例”或“一实施例”意味着与实施例有关的特定特征、结构或特性包括在本申请的至少一个实施例中。因此,在整个说明书各处出现的“在一个实施例中”或“在一实施例中”未必一定指相同的实施例。此外,这些特定特征、结构或特性可以以任意适合的方式结合在一个或多个实施例中。本领域技术人员也应该知悉,说明书中所描述的实施例均属于可选实施例,所涉及的动作和模块并不一定是本申请所必须的。

在本申请的各种实施例中,应理解,上述各过程的序号的大小并不意味着执行顺序的必然先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。

上述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物单元,即可位于一个地方,或者也可以分布到多个网络单元上。可根据实际的需要选择其中的部分或全部单元来实现本实施例方案的目的。

另外,在本申请各实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。

上述集成的单元若以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可获取的存储器中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或者部分,可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储器中,包括若干请求用以使得一台计算机设备(可以为个人计算机、服务器或者网络设备等,具体可以是计算机设备中的处理器)执行本申请的各个实施例上述方法的部分或全部步骤。

以上对本申请实施例公开的一种终端设备的定位方法、装置、终端设备及存储介质进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想。同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。

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