本发明涉及时间同步领域,特别涉及一种离线模式下的设备时间同步方法。
背景技术:
随着物联网技术的快速发展,越来越多的信息传感终端设备根据实际需求被铺设在各种应用场景,然而,某些特殊应用场景存在网络设备铺设成本大且铺设难度高等问题,针对这些特殊的应用场景需要在对应的应用场景中铺设离线终端设备来满足本地业务的正常运行。
置于特殊应用场景下的离线终端设备长期处于网络差,甚至无网络的状态下使用,离线终端设备在特殊应用场景使用一段时间后容易出现时间比当地时间慢的情况,进而引发系列的时间紊乱问题。比如,离线终端设备获取的数据对应的时间印记不准,导致后期数据统计分析出现错乱。
现有技术cn106249584a提供一种时间同步方法,提出了一种适用于在无法通过正常授时系统完成时间同步时依旧进行时间同步的方案,该方案的解决思路是借助和可正常授时的平台a进行网路通信以实现时间同步,现有技术cn107809295a提供一种跨平台时间同步装置及方法,提出了一种解决在没有卫星授时信号情况下不同运动平台间的高精度时间统一的方案,该方案的解决思路依旧是通过多个平台之间彼此进行通信的方式实现时间同步,在这两个方案中平台都是需要具有网络通信功能的,其应用场景依旧是需要铺设网路设备的,无法解决无网络的场景的离线设备的时间同步。
技术实现要素:
本发明的目的在于提供一种离线模式下的设备时间同步方法,该设备时间同步方法借助离线数据交互的方式实现离线终端设备的时间同步,特别适用于无网络或网络信号差的应用场景中的离线终端设备的时间同步。
为实现以上目的,本技术方案提供一种离线模式下的设备时间同步方法,包括以下步骤:移动终端生成时间数据包,并转换时间数据包为二维码图像,其中时间数据包包括标识符、设备标识、当前系统时间以及延时阈值时间;离线终端设备识别二维码图像,并解析二维码图像得到时间数据包;离线终端设备基于设备标识校正该二维码图像对应的移动终端是否合法,若合法,离线终端设备获取当前系统时间以及延时阈值时间,计算真实校准时间,并以真实校准时间同步离线终端设备的时间。
相较现有技术,本技术方案具有以下特点和有益效果:
本方案不依赖网络通信即可实现离线终端设备的时间同步,特别适用于没有铺设网络设备或者网络设备信号极弱的应用场景,不需要额外对应用场景铺设成本高昂的网络设备。比如该方案可用于解决不方便铺设网线的电梯内的梯控时间变慢的问题,没有网络信号或网络信号弱的地下室的门禁或巡更打点时间不准确的问题,没有网络信号或网络信号弱的隧道、山林、海底、地铁的巡查时间不准确的问题。
在本方案中,移动终端将时间数据打包成时间数据包,时间数据包以二维码图像的形式展示,离线终端设备上的二维码读头扫描二维码图像以获取时间数据包,并可基于时间数据包更新内置的时钟以实现时间同步,本方案借助二维码作为载体离线传输时间包数据,实现移动终端和离线终端设备之间的传输过程不需要网络通信的效果。
且在本方案中自定义时间数据包的数据内容,数据内容至少包括标识符、设备标识、当前系统时间以及延时阈值时间,离线终端设备通过设备标识多次验证二维码是否来自同一合法的移动终端,以确保离线终端设备的时间不会被不法人士恶意篡改。
附图说明
图1是根据本发明的一实施例的一种离线模式下的设备时间同步方法的方法流程示意图。
图2是根据本发明的一实施例的一种离线模式下的设备时间同步方法的法方法的运行框架示意图。
图中:10-移动终端,11-二维码图像,20-离线终端设备,21-二维码读头,30-适用场地。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员所获得的所有其他实施例,都属于本发明保护的范围。
可以理解的是,术语“一”应理解为“至少一”或“一个或多个”,即在一个实施例中,一个元件的数量可以为一个,而在另外的实施例中,该元件的数量可以为多个,术语“一”不能理解为对数量的限制。
以下,首先对本申请涉及的部分用语进行说明:
移动终端10,指的是时间同步且具有显示数据功能的设备,可以是移动手机、掌上电脑、平板电脑、移动互联网设备、可穿戴设备等。移动终端10内置数据处理芯片将移动终端系统时间处理成可显示的二维码图像11,并显示生成的二维码图像11。
离线终端设备20,指的是可读取二维码图像且处于离线状态的设备,可以是安置在特定场景的打卡设备、门禁设备等。离线终端设备20上装设二维码读头21,且离线终端设备20内置数据处理芯片以解析二维码图像并更新时钟单元的时间。
适用场地30,指的是安放设置离线终端设备20的场地。本方案的适用场地30特指网络信号差或者无网络信号的场所。可以是不安设网络设备的场地,也可以是网络设备的网络信号差的场地。例如,不方便铺设网线的电梯、信号极差的地下室、没有铺设网络设备的隧道,地铁,山林,海底、地下管道等。
在本方案中,离线终端设备20置于适用场地30中离线使用,可以是安置在不方便铺设网线的电梯内的梯控器、安置在无信号地下室的打卡设备、安置在隧道、地铁、山林、海底、地下管道的巡检设备。
由于离线终端设备20长期处于网络信号差甚至无网络信号的适用场地30中使用,离线终端设备20内的时钟单元的时间会变慢,进而出现各种数据时间不准确的问题,比如出现“电梯内二维码离线梯控时间变慢”“地下室内的门禁刷卡或者巡更打点时间不准确”“隧道(地铁、山林、海底)巡查时间不准确”等诸多问题。传统的方式(比如现有技术的cn106249584a以及cn107809295a)需要联网离线终端设备进行时间的同步,无法在本方案的适用场地30中实现。
针对以上情况,本方案提供一种离线模式下的设备时间同步方法,图1是本方案的设备时间同步方法的运行示意图。如图1所示,离线终端设备20置于适用场地30内使用,移动终端10的显示界面显示包括时间数据包的二维码图像11,离线终端设备20的二维码读头21识别二维码图像11后获取其内的时间数据包,并基于时间数据包的时间数据更新时钟单元的时间,适用场地30可不设置网络设备。
如图1所示,提供了本方案的一种离线模式下的设备时间同步方法的流程步骤示意图,具体的,该离线模式下的设备时间同步方法包括以下步骤:
移动终端10生成时间数据包,并转换时间数据包为二维码图像11,其中时间数据包包括标识符、设备标识、当前系统时间以及延时阈值时间;
离线终端设备20识别二维码图像11,并解析二维码图像11得到时间数据包;
离线终端设备20基于设备标识校正该二维码图像11对应的移动终端10是否合法,若合法,离线终端设备20获取当前系统时间以及延时阈值时间,计算得到真实校准时间,并以真实校准时间同步离线终端设备10的时间。
在本方案中,离线终端设备20和移动终端10之间通过二维码识别技术实现离线的数据传输,并不依赖于网络通信的方式,可特别适用于网络信号差、甚至无网络信号的适用场地30。
移动终端10的内置系统时间在有网络信号时被联网同步校正,基于时间连续递进的特殊属性,在移动终端10进入无网络信号或者网络信号差的适用场地30的短时间区间内,依旧可保证移动终端10的内置系统时间是准确的,进而可利用进入适用场地30的移动终端10的系统时间更新离线终端设备20的时间。
具体的,“移动终端10生成时间数据包”包括步骤:移动终端10获取更新时间指令,并提取移动终端10内置的当前系统时间,将当前系统时间、识别符、当前系统时间、延时阈值时间组装成协议报文,处理协议报文得到时间数据包。为了便于后续对协议报文进行处理,在本方案中,协议报文以json格式存在。
时间数据包中的标识符用于标识当前协议报文的内容为时间同步功能,离线终端设备20可通过标识符触发时间同步功能。
时间数据包中的设备标识用于标识移动终端10的身份,设备标识为对应移动终端10的设备唯一码,离线终端设备20基于设备唯一码后,判断该移动终端10的身份是否合法。这样使得仅合法的移动终端10才具有权限同步离线终端设备20的时间,以确保离线终端设备20的时间不会被不法人士或者不法的移动终端10任意篡改。
在一些实施例中,多个或多种移动终端10均有权限更新离线终端设备20的时间,为了降低离线终端设备20的运算压力。设定设备标识包括固定码以及唯一码,其中固定码的内容固定,对应表示该移动终端10为合法终端,唯一码对应不同的移动终端10以区分不同的移动终端10;离线终端设备20读取固定码即可确定该移动终端10是否合法。且以固定码以及唯一码设置设备标识的方式也具有如下好处:在不变更离线终端设备20的设置的前提下,变更合法的移动终端10;若需要赋予某移动终端10合法权限时,仅需要在其设备标识内添加固定码即可。若需要剥夺某移动终端10的合法权限时,仅需要去除其设备标识内的固定码即可。
时间数据包中的当前系统时间用于标识当前移动终端10的内置系统时间。移动终端10内设置移动终端时钟单元,当前系统时间取自该移动终端时钟单元,且移动终端时钟单元内的内置系统时间在联网状态时被更新同步。
时间数据包中的延时阈值时间用于校正调整离线终端设备20的时间,其中延时阈值时间为当前系统时间和真实校准时间之间的差值,其中真实校准时间对应离线终端设备20识别获取时间包数据的时刻。移动终端10展示的二维码图像11和二维码图像11被离线终端设备20读取的时刻具有一定的时间差值,该时间差值可能由很多外部因素导致,比如人为手持设备的角度以及对准情况、外部的光线问题,本方案用自设置的延时阈值时间对这段时间差值进行校准,这样的话,可保证离线终端设备20被更新的时间与真实校准时间是一致的。
“移动终端10获取更新时间指令,并提取移动终端10内置的当前系统时间”中,获取更新时间指令的形式包括:获取二维码显示界面被打开的指令,但此方式不作为唯一的限制。对应的用户操作为:用户打开移动终端10的二维码显示界面,移动终端10获取更新时间指令。
提取移动终端10内置的当前系统时间包括:间隔时间段自动从移动终端时钟单元中提取内置的系统时间作为当前系统时间,每次获取新的当前系统时间时生成对应新的二维码图像11。示例性的,移动终端10的运行后台每隔1s获取一次内置的系统时间作为当前系统时间,并刷新二维码图像11。
为了提高离线终端设备20的时间精准性,避免移动终端10传输的时间数据包在传输过程中被截取篡改,本方案可对时间数据包进行加密处理。对应的,此时,“移动终端10生成时间数据包”包括步骤:加密时间数据包。“解析二维码图像11”包括步骤:解密时间数据包。
具体的,在本方案的实施例中,协议报文通过对称加密算法加密生成密文,密文通过二维码算法生成对应的二维码图像11。对应的,离线终端设备10解析二维码图像11得到密文,利用对称解密算法解密密文得到协议报文。当然,还可以对应设置其他加密解密协议算法。
在本方案的实施例中,“离线终端设备20识别二维码图像11”包括:离线终端设备20的二维码读头21获取二维码图像11,并识别二维码图像11。对应的用户操作为:将移动终端10的二维码图像11对准二维码读头21。
在一些更具体的实施例中,“离线终端设备20的二维码读头21获取二维码图像11”包括:当二维码读头21和二维码图像11之间的距离小于设定阈值时,二维码读头21被触发自动获取二维码图像11。在本方案中,设定移动终端10生成的二维码图像11距离离线终端设备20的二维码读头21小于10公分之内时,二维码读头21被触发以自动获取二维码图像11。
二维码读头21自带在设定距离阈值内自动触发的功能,当二维码图像11靠近后,离线终端设备20检测到二维码图像11靠近,自动亮起识别二维码图像11的补光灯并进行二维码图像11的读取。
“离线终端设备20基于设备标识校正该二维码图像11对应的移动终端10是否合法”之前包括:获取识别符,基于标识符识别时间数据包是否为时间同步功能,若是的话,则继续执行后续步骤。具体的,时间数据包以协议报文的形式被获取,基于标识符可判断该协议报文是否对应时间同步功能。
“离线终端设备20基于设备标识校正该二维码图像11对应的移动终端10是否合法”中包括:获取设备标识,基于设备标识识别移动终端10是否合法。
在一些实施例中,为了防止不法人士通过拍照获取的二维码图像11用于更新离线终端设备20的时间,本方案设定以下条件:离线终端设备20需要连续多次读取二维码图像11,并且判断二维码图像11对应的当前系统时间是否有变化,若有变化,则利用二维码图像11对应的时间包数据计算真实校准时间,并以真实校准时间更新离线终端设备20的时间。而若无变化,则判定可能存在不合法的时间同步任务,不执行离线终端设备20的时间更新。
对应的,包括步骤方法:离线终端设备20识别获取多次二维码图像11并进行设备标识的校验,若多次设备标识均对应同一移动终端,且多次二维码图像11对应的当前系统时间有变化,则执行后续步骤。这样的方式不仅可避免单次设备标识出现偏差而导致的时间误更新,也可避免截图的二维码图像11误更新离线终端设备20的情况。
“离线终端设备20获取当前系统时间以及延时阈值时间,计算真实校准时间并以真实校准时间同步离线终端设备10的时间”包括:真实校准时间等于当前系统时间和延时阈值时间的总和值,利用真实校准时间校准更新离线终端设备20的时间。延时阈值时间根据实际需求进行设定,延时阈值的范围可以是0-400ms之间,真实时间=获取时间+延时阈值。
离线终端设备20内置离线终端设备时钟单元,离线终端设备时钟单元内设置离线终端设备20的时间,获取延时阈值时间后以程序指令更新离线终端设备时钟单元内的时间,这里的程序指令指的是指定的时间设置操作,一般系统或者驱动提供设置更新时间的api接口进行修改离线终端设备20的时间。
以下,本方案以“无网络信号的山林巡检打卡机的离线时间更新”为示例说明离线模式下的设备时间同步方法。
此时,移动终端10为巡检人员的手持设备,适用场地30为无网络信号的山林,离线终端设备20为离线模式的打卡机。
移动终端10在有网络信号的地区联网更新内置的系统时间,巡检人员手持移动终端10进入山林并抵达离线终端设备20所在位置。随后巡检人员打开移动终端10的二维码展示界面,移动终端10生成对应当前系统时间(2020/12/1218:05:02)的二维码图像11,二维码图像11对准离线终端设备20的二维码读头21,此时设定的延时阈值时间为200ms,离线终端设备20获取当前系统时间以及延时阈值时间,累加得到真实校准时间(2020/12/1218:05:04)以真实校准时间更新校准离线终端设备20的时间,实现离线终端设备20的时间同步。
图2是根据本发明的一实施例的一种离线模式下的设备时间同步方法的法方法的运行框架示意图,如图2所示,移动终端10在获取更新时间指令后调取当前系统时间,并基于当前系统时间生成时间数据包,二维码图像11被离线终端设备20读取并解析后,得到当前系统时间以及延时阈值时间,计算得到真实校准时间,并以真实校准时间更新离线终端设备的时间。本发明不局限于上述最佳实施方式,任何人在本发明的启示下都可得出其他各种形式的产品,但不论在其形状或结构上作任何变化,凡是具有与本申请相同或相近似的技术方案,均落在本发明的保护范围之内。
1.一种离线模式下的设备时间同步方法,其特征在于,包括以下步骤:
移动终端(10)生成时间数据包,并转换时间数据包为二维码图像(11),其中时间数据包包括标识符、设备标识、当前系统时间以及延时阈值时间;
离线终端设备(20)识别二维码图像(11),并解析二维码图像(11)得到时间数据包;
离线终端设备(20)基于设备标识校正该二维码图像(11)对应的移动终端(10)是否合法,若合法,离线终端设备(20)获取当前系统时间以及延时阈值时间,计算得到真实校准时间,并以真实校准时间同步离线终端设备(20)的时间。
2.根据权利要求1所述的离线模式下的设备时间同步方法,其特征在于,移动终端(10)获取更新时间指令,并提取移动终端(10)内置的当前系统时间,将当前系统时间、识别符、当前系统时间、延时阈值时间组装成协议报文,处理协议报文得到时间数据包。
3.根据权利要求2所述的离线模式下的设备时间同步方法,其特征在于,间隔时间段自动从移动终端(10)的移动终端时钟单元中提取内置的系统时间作为当前系统时间。
4.根据权利要求2所述的离线模式下的设备时间同步方法,其特征在于,协议报文通过对称加密算法加密生成密文,密文通过二维码算法生成对应的二维码图像(11),离线终端设备(20)解析二维码图像(11)得到密文,利用对称解密算法解密密文得到协议报文。
5.根据权利要求1所述的离线模式下的设备时间同步方法,其特征在于,标识符标识时间数据包的内容为时间同步功能,设备标识标识移动终端的身份,当前系统时间用于标识当前移动终端的内置系统时间,延时阈值时间用于调整离线终端设备的时间,延时阈值时间为当前系统时间和真实校准时间之间的时间差值。
6.根据权利要求5所述的离线模式下的设备时间同步方法,其特征在于,设备标识包括固定码以及唯一码,其中固定码的内容固定用于标识合法终端,唯一码用于区分不同的移动终端(10)。
7.根据权利要求1所述的离线模式下的设备时间同步方法,其特征在于,离线终端设备(20)的二维码读头(21)获取二维码图像(11),并识别二维码图像(11)。
8.根据权利要求1所述的离线模式下的设备时间同步方法,其特征在于,当二维码读头(21)和二维码图像(11)之间的距离小于设定阈值时,二维码读头(21)被触发自动获取二维码图像(11)。
9.根据权利要求1所述的离线模式下的设备时间同步方法,其特征在于,离线终端设备(20)识别获取多次二维码图像(11)并进行设备标识的校验,若多次设备标识均对应同一移动终端(10),且多次二维码图像(11)对应的当前系统时间有变化,则执行后续步骤。
10.根据权利要求1所述的离线模式下的设备时间同步方法,其特征在于,离线终端设备(20)置于未设置网络设备的适用场地(30)使用。
技术总结