对多路监听器进行数据时间同步的方法和系统的制作方法

文档序号:8006407阅读:319来源:国知局
对多路监听器进行数据时间同步的方法和系统的制作方法
【专利摘要】本发明实施例提供了一种对多路监听器进行数据时间同步的方法和系统。该方法主要包括:同步器分别利用同步协议和每个监听器进行数据时间同步,确定每个监听器对应的初始同步时间戳;同步器接收到某个监听器发送过来的数据帧后,根据数据帧中携带的时间戳和某个监听器对应的初始同步时间戳,计算出数据帧的同步时间戳;同步器将同步时间戳设置到数据帧中,将设置了同步时间戳的数据帧发送出去。本发明实施例通过同步器分别利用同步协议和每个监听器进行数据时间同步,可以将多路监听器的数据时间精准映射到一个时间轴上,实现多路监听器精准数据时间同步,从而达到准确区分多路监听器数据先后顺序的目的。
【专利说明】对多路监听器进行数据时间同步的方法和系统

【技术领域】
[0001] 本发明涉及通信【技术领域】,尤其涉及一种对多路监听器进行数据时间同步的方法 和系统。

【背景技术】
[0002] ETC (Electronic Toll Collection,电子不停车收费系统)系统是目前国际上主 要研究和推广的自动电子收费系统,适用于高速公路以及交通繁忙的桥梁隧道环境下的车 辆收费解决方案。OBU (On-Board Unit,车载单元)是ETC系统的标准配件,用于安装在车 辆的前挡风玻璃上,当车辆通过ETC车道时,OBU与RSU (Roadside Unit,路侧单元)等设 备通讯,不需停车即可完成ETC收费。从而提高汽车通行速度,有效解决交通堵塞问题。这 种收费系统其收费通道的通行能力是人工收费通道的5到10倍。
[0003] 由于ETC系统是通过5. 8GHZ无线信号进行交易操作的,为了方便调试需要仪器来 监听上述5. 8GHZ无线信号,如果仪器使用宽带接收方式监听数据,可以同时收到上行和下 行链路的无线信号,但接收效果远不如使用窄带接收方式监听数据的效果。但如果使用窄 带接收方式必须需要多个监听器同时工作,所以就出现一个数据时间同步的问题。
[0004] 目前,现有技术中的第一种多路监听器进行数据时间同步的方法为:直接使用电 脑的操作系统时间作为数据时间同步方法。使用电脑的操作系统时间,上位机在收到数据 后直接使用操作系统的时间作为数据时间,这种方法的优点是方便实现,业内大部分监听 器都使用这种方式同步多监听器的数据时间。
[0005] 上述第一种多路监听器进行数据时间同步的方法的缺点为:数据的时间戳为上位 机的操作系统收到数据的时间,而并非监听器收到的时间,在短时间点多帧数据并发的情 况下,操作系统无法分辨出数据的先后。
[0006] 该方法正常情况下的数据误差示意图如图1所示,监听数据的上位机显示时间与 实际时间的差值为ΛΤ1,ΛΤ2,其值为10线路通讯的时间以及上位机所在操作系统上层程 序响应10事件的时间,其中10线路通讯的时间是固定值,上位机所在操作系统上层程序响 应10事件的时间会受操作系统任务调度的影响,是个随机的值,该值范围跟上位机操作系 统任务调度机制密切相关,例如WINDOWS下是0?20毫秒。
[0007] 两个监听器向上位机发数据的时间间隔很小的数据误差示意图如图2所示,上位 机在操作系统上层程序响应10事件时两帧数据都存在于10缓冲区里,如果直接使用操作 系统的接收数据的时间计算,那么得到的两个监听器的数据时间是一样的,无法区分先后。


【发明内容】

[0008] 本发明的实施例提供了一种对多路监听器进行数据时间同步的方法和系统,以实 现对多路监听器进行有效的数据时间同步。
[0009] -种对多路监听器进行数据时间同步的方法,包括:
[0010] 同步器分别利用同步协议和每个监听器进行数据时间同步,确定每个监听器对应 的初始同步时间戳;
[0011] 所述同步器接收到某个监听器发送过来的数据帧后,根据所述数据帧中携带的时 间戳和所述某个监听器对应的初始同步时间戳,计算出所述数据帧的同步时间戳;
[0012] 所述同步器将所述同步时间戳设置到所述数据帧中,将设置了所述同步时间戳的 数据帧发送出去。
[0013] 所述的同步器分别利用同步协议和每个监听器进行数据时间同步,确定每个监听 器对应的初始同步时间戳,包括:
[0014] 所述的同步器接收到上位机发送的同步监控设备命令后,开启每个监听器的同步 设置标识,并按照设定的时间间隔利用同步协议向每个监听器发送携带帧序号的同步请求 帧;
[0015] 所述监听器接收到所述同步请求帧后,向所述同步器发送同步响应帧,所述同步 响应帧的帧序号和所述同步请求帧的帧序号相同;
[0016] 所述同步器根据所述同步响应帧中携带的时间戳、帧序号和设定的时间修正值计 算出发送所述同步响应帧的所述监听器对应的初始同步时间戳,关闭所述监听器的同步设 置标识。
[0017] 所述的监听器接收到所述同步请求帧后,向所述上位机发送同步响应帧,所述同 步响应帧的帧序号和再次接收到的同步请求帧的帧序号相同,包括:
[0018] 所述监听器接收到所述同步请求帧后,停止进行数据监听过程,在设定的时间间 隔内再次接收到同步器发送的同步请求帧后,向所述同步器发送同步响应帧,所述同步响 应帧的帧序号和最后接收到的同步请求帧的帧序号相同。
[0019] 所述的同步器根据所述同步响应帧中携带的时间戳、帧序号和设定的时间修正值 计算出所述监听器对应的初始同步时间戳,包括:
[0020] 所述的同步器确定所述的初始同步时间戳的计算公式为:
[0021] 同步响应巾贞中携带的时间戳-同步响应巾贞中携带的巾贞序号ΧΤ-ΔΤ
[0022] 所述T为所述同步器向同一个监听器发送同步请求帧的时间间隔,所述ΛT为设 定的所述监听器对应的时间修正值。
[0023] 所述的根据所述数据帧中携带的时间戳和所述某个监听器对应的初始同步时间 戳,计算出所述数据帧的同步时间戳,包括:
[0024] 所述的同步器确定所述数据帧的同步时间戳的计算公式为:
[0025] 所述数据帧中携带的时间戳-所述某个监听器对应的初始同步时间戳。
[0026] 所述的方法还包括:
[0027] 所述的同步器在确定了所有监听器的初始同步时间戳后向所述上位机发送同步 监控设备响应,关闭所有监听器的同步设置标识;
[0028]或者;
[0029] 所述的同步器在开启了所有监听器的同步设置标识之后,超过了设定时间还没有 确定所有监听器的初始同步时间戳,则向所述上位机发送同步监控设备响应,关闭所有监 听器的同步设置标识。
[0030] 一种对多路监听器进行数据时间同步的系统,包括:同步器和多个监听器,
[0031]所述的同步器,用于分别利用同步协议和每个监听器进行数据时间同步,确定每 个监听器对应的初始同步时间戳;接收到某个监听器发送过来的数据帧后,根据所述数据 帧中携带的时间戳和所述某个监听器对应的初始同步时间戳,计算出所述数据帧的同步时 间戳;将所述同步时间戳设置到所述数据帧中,将设置了所述同步时间戳的数据帧发送出 去;
[0032] 所述的监听器,用于利用同步协议和同步器进行数据时间同步,向同步器发送监 听得到的数据帧。
[0033] 所述的系统还包括上位机,
[0034] 所述的上位机,用于向同步器发送同步监控设备命令,
[0035] 所述的同步器,用于接收到上位机发送的同步监控设备命令后,开启每个监听器 的同步设置标识,并按照设定的时间间隔利用同步协议向每个监听器发送携带帧序号的同 步请求巾贞;
[0036] 所述的监听器,用于接收到所述同步请求帧后,向所述同步器发送同步响应帧,所 述同步响应帧的帧序号和所述同步请求帧的帧序号相同;
[0037] 所述的同步器,用于根据所述同步响应帧中携带的时间戳、帧序号和设定的时间 修正值计算出所述监听器对应的初始同步时间戳,关闭所述监听器的同步设置标识。
[0038] 所述的监听器,具体用于接收到所述同步请求帧后,停止进行数据监听过程,在设 定的时间间隔内再次接收到同步器发送的同步请求帧后,向所述同步器发送同步响应帧, 所述同步响应帧的帧序号和最后接收到的同步请求帧的帧序号相同。
[0039] 所述的同步器,具体用于确定初始同步时间戳的计算公式为:
[0040] 同步响应巾贞中携带的时间戳-同步响应巾贞中携带的巾贞序号ΧΤ-ΔΤ
[0041] 所述T为所述同步器向同一个监听器发送同步请求帧的时间间隔,所述ΛT为设 定的所述监听器对应的时间修正值。
[0042] 所述的同步器,具体用于确定所述数据帧的同步时间戳的计算公式为:
[0043] 所述数据帧中携带的时间戳-所述某个监听器对应的初始同步时间戳。
[0044] 所述的同步器,具体用于在确定了所有监听器的初始同步时间戳后向所述上位机 发送同步监控设备响应,关闭所有监听器的同步设置标识;
[0045]或者;
[0046] 在开启了所有监听器的同步设置标识之后,超过了设定时间还没有确定所有监听 器的初始同步时间戳,则向所述上位机发送同步监控设备响应,关闭所有监听器的同步设 置标识。
[0047] 由上述本发明的实施例提供的技术方案可以看出,本发明实施例通过同步器分别 利用同步协议和每个监听器进行数据时间同步,可以将多路监听器的数据时间精准映射到 一个时间轴上,实现多路监听器精准数据时间同步,从而达到准确区分多路监听器数据先 后顺序的目的,给ETC应用中5. 8GHz空中信号数据监听提供精准的数据序列。

【专利附图】

【附图说明】
[0048] 为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述中所需要使用 的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本 领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他 的附图。
[0049] 图1为现有技术中一种直接使用电脑的操作系统时间作为数据时间同步方法的 正常情况下缺陷分析示意图;
[0050] 图2为现有技术中一种直接使用电脑的操作系统时间作为数据时间同步方法的 两个监听器向上位机发数据的时间间隔很小的数据误差示意图;
[0051] 图3为本发明实施例一提供的一种对多路监听器进行数据时间同步的方法的原 理示意图;
[0052] 图4为本发明实施例一提供的一种对多路监听器进行数据时间同步的方法的处 理流程示意图;
[0053] 图5为本发明实施例一提供的一种上位机、同步器和监听器之间的协议时序流程 示意图;
[0054] 图6为本发明实施例二提供的一种对多路监听器进行数据时间同步的系统的结 构示意图。

【具体实施方式】
[0055] 为便于对本发明实施例的理解,下面将结合附图以几个具体实施例为例做进一步 的解释说明,且各个实施例并不构成对本发明实施例的限定。
[0056] 实施例一
[0057] 本发明实施例的应用背景是在ETC系统应用的时候(半双工的通讯应用),在多个 商家联合兼容测试的时候,使用监听器监听空中信号,找出数据冲突帧。而在监听多个信道 的数据时,使用1台监听器的性能有限,要使用多个监听器进行,但多个监听器同时进行监 听就会出现时间同步问题(无论是芯片还是晶体振荡器都会导致)。而在时间同步的时候需 要的精度很高,而在ETC系统应用中要完全监测并准确将多路设备的监听帧准确排序,要 求时间同步精准在100微秒内(准确的实际时间,将所有的硬件导致的时间误差考虑进去 的)。
[0058] 本发明实施例通过同步协议在同步器和各个监听器之间进行精准数据时间同步, 该实施例提供了一种对多路监听器进行数据时间同步的方法的原理示意图如图3所示,具 体处理流程如图4所示,包括如下的处理步骤:
[0059] 步骤S410、同步器接收到上位机发送的同步监控设备命令。
[0060] 在同步器上使用无操作系统的单片机程序,目的在于排除操作系统任务调度对同 步协议数据时间间隔的影响。
[0061] 同步器完成初始化处理后,开启接收处理上位机命令功能模块,使用中断的方式 接收上位机发送的同步监控设备命令。
[0062] 在本发明实施例中,上位机只做发送同步监控设备命令,接收监听数据的操作,不 对数据进行同步处理。
[0063] 步骤S420、同步器分别利用同步协议依次向每个监听器发送携带帧序号的同步请 求帧。
[0064] 所述的同步器接收到上位机发送的上述同步监控设备命令后,依次开启每个监听 器的同步设置标识,并按照设定的时间间隔利用同步协议依次向每个监听器发送携带帧序 号的同步请求帧,同步器发送的同步请求帧中携带的帧序号依次递增,当帧号递增到255 后,将帧号再重新从1开始递增。
[0065]上述同步器可以在打开了所有监听器的同步设置标识后,再向各个监听器发送携 带帧序号的同步请求帧;也可以在打开了一个监听器的同步设置标识后,便向该监听器发 送携带帧序号的同步请求帧。
[0066] 如,上述同步器打开监听器1的同步设置标识,利用同步协议向监听器1发送帧 序号为1的同步请求帧;接着打开监听器2的同步设置标识,利用同步协议向监听器1发送 帧序号为2的同步请求帧。同步器重复进行上述处理过程,一直带打开所有监听器的同步 设置标识,利用同步协议向所有监听器发送同步请求帧。监听器的标号可以根据同步器通 讯线路上设备IO号来确定。
[0067] 上述设定的时间间隔可以为20ms,同步器在向一个监听器发送了第一个同步请求 帧后,间隔20ms后再向该监听器发送了第二个同步请求帧,直到接收到该监听器发送的同 步响应帧。
[0068]步骤S430、同步器根据监听器返回的同步响应帧中携带的时间戳和帧序号,以及 设定的时间修正值计算出所述监听器对应的初始同步时间戳。
[0069]所述监听器接收到所述同步请求帧后,向所述上位机发送同步响应帧,所述同步 响应帧的帧序号和再次接收到的同步请求帧的帧序号相同。
[0070] 在实际应用中,上述监听器可以在接收到两个同步请求帧后,才向上位机发送同 步响应帧。具体处理过程为:所述监听器接收到所述同步请求帧后,停止进行数据监听过 程,进入等待第二个同步请求帧的步骤。如果在设定的时间间隔(比如1秒)内,没有接收到 第二个同步请求帧,则重新开启监听功能,退出同步过程。如果在设定的时间间隔(比如1 秒)内收到第二个同步请求帧,那么向监听器发生同步响应帧,所述同步响应帧的帧序号和 再次接收到的同步请求帧(即第二个同步请求帧)的帧序号相同。并重新开启监听器功能, 退出同步过程。接收到两个同步请求帧后才发送同步响应帧的目的在于,减少监听空中信 号的功能对时钟的影响
[0071] 所述同步器根据所述同步响应帧中携带的时间戳和帧序号,以及设定的时间修正 值计算出所述监听器对应的初始同步时间戳,关闭所述监听器的同步设置标识,从而完成 和上述监听器进行数据时间同步的过程。
[0072]所述的初始同步时间戳的计算公式为:
[0073] 同步响应巾贞中携带的时间戳-同步响应巾贞中携带的巾贞序号ΧΤ-ΔΤ
[0074] 所述T为同步器向同一个监听器发送同步请求帧的时间间隔,比如为20毫秒,所 述ΛΤ为设定的所述监听器对应的时间修正值。上述时间修正值和监听器的硬件相关,可 以用示波器等工具测量出来。上述时间修正值是因为通讯的时候通讯数据的字长度会导致 处理时间各不一样,从而导致每个监听数据帧的时间戳与真实的时间有偏差,这个时间修 正值就是排除监听数据帧字长度影响的时间值。上述时间修正值跟处理器的处理速度直接 相关,所以这个是硬件相关的值。测量过程主要包括:使用示波器等仪器测试处理器的一些 基本参数的,根据该基本参数和监听到的数据的长度,就可以计算出时间修正值来,虽然有 也存在误差,但要比没有时间修正值的要精准很多。而在etc应用中,如果没有这个时间修 正值,时间最多偏差3毫秒,这个比精度要求100微秒的值要高好多个数量级。
[0075] 所述的同步器在确定了所有监听器的初始同步时间戳后向所述上位机发送同步 监控设备响应,关闭所有监听器的同步设置标识;
[0076]或者;
[0077] 所述的同步器在开启了所有监听器的同步设置标识之后,超过了设定时间(比如1 秒)还没有确定所有监听器的初始同步时间戳,则向所述上位机发送同步监控设备响应,关 闭所有监听器的同步设置标识。
[0078] 步骤S440、同步器根据监听器发送的数据帧中携带的时间戳和所述某个监听器对 应的初始同步时间戳,计算出所述数据帧的同步时间戳,将携带了同步时间戳的数据帧发 送给上位机。
[0079] 同步器在完成了和所有监听器之间的数据时间同步的过程后,接收到监听器通过 同步协议发送的监听到的数据帧后,便可以根据监听器发送的数据帧中携带的时间戳和所 述某个监听器对应的初始同步时间戳,计算出所述数据帧的同步时间戳。上述数据帧可以 为ETC应用中5.8GHz空中信号数据。
[0080] 所述数据帧的同步时间戳的计算公式为:所述数据帧中携带的时间戳-所述某个 监听器对应的初始同步时间戳。
[0081] 然后,同步器将上述数据帧的同步时间戳设置到上述数据帧中,替换掉上述数据 帧中原来携带的数据戳,将携带了同步时间戳的数据帧发送给上位机。
[0082] 该实施例提供的一种同步器和监听器之间的同步协议中的链路协议帧的格式如 下述表1所示:
[0083]表1
[0084]

【权利要求】
1. 一种对多路监听器进行数据时间同步的方法,其特征在于,包括: 同步器分别利用同步协议和每个监听器进行数据时间同步,确定每个监听器对应的初 始同步时间戳; 所述同步器接收到某个监听器发送过来的数据帧后,根据所述数据帧中携带的时间戳 和所述某个监听器对应的初始同步时间戳,计算出所述数据帧的同步时间戳; 所述同步器将所述同步时间戳设置到所述数据帧中,将设置了所述同步时间戳的数据 帧发送出去。
2. 根据权利要求1所述的对多路监听器进行数据时间同步的方法,其特征在于,所述 的同步器分别利用同步协议和每个监听器进行数据时间同步,确定每个监听器对应的初始 同步时间戳,包括: 所述的同步器接收到上位机发送的同步监控设备命令后,开启每个监听器的同步设置 标识,并按照设定的时间间隔利用同步协议向每个监听器发送携带帧序号的同步请求帧; 所述监听器接收到所述同步请求帧后,向所述同步器发送同步响应帧,所述同步响应 帧的帧序号和所述同步请求帧的帧序号相同; 所述同步器根据所述同步响应帧中携带的时间戳、帧序号和设定的时间修正值计算出 发送所述同步响应帧的所述监听器对应的初始同步时间戳,关闭所述监听器的同步设置标 识。
3. 根据权利要求2所述的对多路监听器进行数据时间同步的方法,其特征在于,所述 的监听器接收到所述同步请求帧后,向所述上位机发送同步响应帧,所述同步响应帧的帧 序号和再次接收到的同步请求帧的帧序号相同,包括: 所述监听器接收到所述同步请求帧后,停止进行数据监听过程,在设定的时间间隔内 再次接收到同步器发送的同步请求帧后,向所述同步器发送同步响应帧,所述同步响应帧 的帧序号和最后接收到的同步请求帧的帧序号相同。
4. 根据权利要求2所述的对多路监听器进行数据时间同步的方法,其特征在于,所述 的同步器根据所述同步响应帧中携带的时间戳、帧序号和设定的时间修正值计算出所述监 听器对应的初始同步时间戳,包括: 所述的同步器确定所述的初始同步时间戳的计算公式为: 同步响应巾贞中携带的时间戳-同步响应巾贞中携带的巾贞序号XT-AT 所述T为所述同步器向同一个监听器发送同步请求帧的时间间隔,所述AT为设定的 所述监听器对应的时间修正值。
5. 根据权利要求1或2或3或4所述的对多路监听器进行数据时间同步的方法,其 特征在于,所述的根据所述数据帧中携带的时间戳和所述某个监听器对应的初始同步时间 戳,计算出所述数据帧的同步时间戳,包括: 所述的同步器确定所述数据帧的同步时间戳的计算公式为: 所述数据帧中携带的时间戳_所述某个监听器对应的初始同步时间戳。
6. 根据权利要求5所述的对多路监听器进行数据时间同步的方法,其特征在于,所述 的方法还包括: 所述的同步器在确定了所有监听器的初始同步时间戳后向所述上位机发送同步监控 设备响应,关闭所有监听器的同步设置标识; 或者; 所述的同步器在开启了所有监听器的同步设置标识之后,超过了设定时间还没有确定 所有监听器的初始同步时间戳,则向所述上位机发送同步监控设备响应,关闭所有监听器 的同步设置标识。
7. -种对多路监听器进行数据时间同步的系统,其特征在于,包括:同步器和多个监 听器, 所述的同步器,用于分别利用同步协议和每个监听器进行数据时间同步,确定每个监 听器对应的初始同步时间戳;接收到某个监听器发送过来的数据帧后,根据所述数据帧中 携带的时间戳和所述某个监听器对应的初始同步时间戳,计算出所述数据帧的同步时间 戳;将所述同步时间戳设置到所述数据帧中,将设置了所述同步时间戳的数据帧发送出 去; 所述的监听器,用于利用同步协议和同步器进行数据时间同步,向同步器发送监听得 到的数据帧。
8. 根据权利要求7所述的对多路监听器进行数据时间同步的系统,其特征在于,所述 的系统还包括上位机, 所述的上位机,用于向同步器发送同步监控设备命令, 所述的同步器,用于接收到上位机发送的同步监控设备命令后,开启每个监听器的同 步设置标识,并按照设定的时间间隔利用同步协议向每个监听器发送携带帧序号的同步请 求帧; 所述的监听器,用于接收到所述同步请求帧后,向所述同步器发送同步响应帧,所述同 步响应帧的帧序号和所述同步请求帧的帧序号相同; 所述的同步器,用于根据所述同步响应帧中携带的时间戳、帧序号和设定的时间修正 值计算出所述监听器对应的初始同步时间戳,关闭所述监听器的同步设置标识。
9. 根据权利要求8所述的对多路监听器进行数据时间同步的系统,其特征在于,所述 的监听器,具体用于接收到所述同步请求帧后,停止进行数据监听过程,在设定的时间间隔 内再次接收到同步器发送的同步请求帧后,向所述同步器发送同步响应帧,所述同步响应 帧的帧序号和最后接收到的同步请求帧的帧序号相同。
10. 根据权利要求7所述的对多路监听器进行数据时间同步的系统,其特征在于: 所述的同步器,具体用于确定初始同步时间戳的计算公式为: 同步响应巾贞中携带的时间戳-同步响应巾贞中携带的巾贞序号XT-AT 所述T为所述同步器向同一个监听器发送同步请求帧的时间间隔,所述AT为设定的 所述监听器对应的时间修正值。
11. 根据权利要求7或8或9或10所述的对多路监听器进行数据时间同步的系统,其 特征在于: 所述的同步器,具体用于确定所述数据帧的同步时间戳的计算公式为: 所述数据帧中携带的时间戳_所述某个监听器对应的初始同步时间戳。
12. 根据权利要求11所述的对多路监听器进行数据时间同步的系统,其特征在于: 所述的同步器,具体用于在确定了所有监听器的初始同步时间戳后向所述上位机发送 同步监控设备响应,关闭所有监听器的同步设置标识; 或者; 在开启了所有监听器的同步设置标识之后,超过了设定时间还没有确定所有监听器的 初始同步时间戳,则向所述上位机发送同步监控设备响应,关闭所有监听器的同步设置标 识。
【文档编号】H04B17/00GK104426646SQ201310395694
【公开日】2015年3月18日 申请日期:2013年9月3日 优先权日:2013年9月3日
【发明者】李镇城, 王波 申请人:航天信息股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1