一种时间同步方法和同步系统的制作方法_3

文档序号:9648843阅读:来源:国知局
主控守时时钟模块430,根据子节点地址列表向所属子节点发送时间同步信号,还用于接收来自所所属子节点的反馈数据,根据反馈数据更新时间偏移量A t。
[0080]具体地,在本发明一实施例中,接口电路410包括上位机接口和授时源接口,其中,上位机接口为RS232、RS485或USB接口 ;授时源接口为是USART、RS485或者RJ45接口。
[0081]具体地,在本发明一实施例中,主控守时时钟模块430由高精度可读写实时时钟模块组成,在没有授时信号是能够维持精准的本地守时时间,在第一主控单元420通过接口电路410接收到标准时间后,第一主控单元420将用标准时间更新主控守时时钟模块430的本地守时时间。
[0082]具体地,在本发明一实施例中,第一存储模块440内存储了主控系统400所属子节点的地址编码和对应的时间偏移量,用于系统上电时的初始化,第一存储模块440的内容会定期更新。
[0083]具体地,在本发明一实施例中,第一无线收发模块450采用433MHz频段的无线收发模组,其接收和发送数据的频道和空中波特率均可由用户灵活设置。
[0084]图5为本发明一实施例提供的主控系统的时间同步流程图。如图5所示,主控系统的时间同步过程包括以下步骤:
[0085]步骤S510:主控系统400接收来自授时源的标准时间,根据标准时间校准自身的本地时间。
[0086]步骤S520:判断是否需要开启时间同步,如果需要,流程前进到步骤S530,否则返回步骤S510。
[0087]具体地,由于各个节点都有自身的守时时钟,所以不需要时刻都开启同步,因此,在实际应用时设定主控系统周期性(例如,每隔2小时)执行时间同步。
[0088]步骤S530:根据子节点地址表设定需要同步的子节点地址,记录下此时的时间戳tl,并发送时间同步信号,设定等待时间,如果在等待时间内没有收到子节点回复,则判定该子节点本次时间同步失败,根据子节点地址表设定下一个需要同步的子节点地址,继续执行步骤S530则流程返回至步骤S510 ;反之,流程前进到步骤S540。
[0089]具体地,主控系统的子节点为中继器或终端子钟。时间同步信号包括主控系统地址、子节点地址、同步时间tl和此子节点对应的时间偏移量At
[0090]步骤S540:接收子节点(中继器或者终端子钟)的反馈数据,接收完毕数据记录此时的时间戳t4。
[0091]步骤S550:解码接收的反馈数据并验证,判断解码出的子节点地址是否包含存储器中,如果是,则流程前进到步骤S560,反之,则流程返回至步骤S510。
[0092]步骤S560:将对应的子节点的时间偏移量Δ t更新为((t4_tl_2a) /2)。
[0093]图6为本发明一实施例提供的中继器的结构框图。如图6所示,中继器600包括第二主控单元610、中继守时时钟模块620、第二存储模块630、第二无线收发模块640,第二主控单元610电连接于中继守时时钟模块620、第二存储模块630和第二无线收发模块640。其中,中继守时时钟模块620,用于维持中继器的本地守时时间;第二存储模块630,用于存储中继器的所属子节点的子节点地址列表和对应的时间偏移量At,还用于存储中继器的所属父节点的父节点地址列表;第二无线收发模块640,用于中继器与所属子节点、中继器和所属父节点之间的通信;第二主控单元610,用于根据来自所属父节点的时间同步信号校准中继守时时钟模块620,向所属父节点发送反馈数据,还用于根据向所属子节点发送时间同步信号,根据来自所所属子节点的反馈数据更新时间偏移量A t。
[0094]具体地,在本发明一实施例中,中继守时时钟模块620由高精度可读写实时时钟模块组成,在没有授时信号是能够维持精准的本地守时时间,在第二主控单元610通过第二无线收发模块640接收到来自其所属父节点的时间同步信号后,第二主控单元610将更新中继守时时钟模块620的本地守时时间。
[0095]具体地,在本发明一实施例中,由于中继器既可以作为子节点接收来自其所属父节点(主控系统或其他中继器)的时间同步信号,又可以作为父节点向其所属子节点(终端时钟或其他中继器)发送时间同步信号,因此,第二存储模块630内存储了中继器的所属子节点的地址编码和对应的时间偏移量,还存储有中继器的所属父节点的地址,当中继器作为子节点接收时间同步信号时,只有时间同步信号中的父节点地址包含在第二存储模块630中时,中继器才会执行时间同步操作。
[0096]具体地,在本发明一实施例中,第二无线收发模块640采用433MHz频段的无线收发模组,其接收和发送数据的频道和空中波特率均可由用户灵活设置。
[0097]图7为本发明一实施例提供的中继器的时间同步流程图。如图7所示,中继器的时间同步过程包括以下步骤:
[0098]步骤S710:判断是否满足开始时间同步的条件,如果满足,则流程前进到步骤S720o
[0099]具体地,在本发明一实施例中,如果在上一次时间同步后未经过该中继器的所属父节点的时间同步,则不开启时间同步,反之,则开始执行时间同步。
[0100]步骤S720:设定需要同步的所属子节点地址,记录下此时的时间戳tl,并发送时间同步信号,设定等待时间,如果在等待时间内没有收到子节点回复,则判定该子节点本次时间同步失败,设定下一个子节点地址,重复步骤S720,;反之,流程前进到步骤S730。
[0101]具体地,中继器的子节点为其他中继器或终端子钟。时间同步信号包括中继器地址、子节点地址、同步时间tl和此子节点对应的时间偏移量At。
[0102]步骤S730:接收数据包,则记录时间戳t2,启动计数间隔为a的计时器。
[0103]步骤S740:解码数据,判断数据是来自子节点的反馈数据,还是来自所属父节点的时间同步信号,其中,如果是来自中继器的所属子节点的反馈数据,则将t2赋值给t4,流程前进到步骤S750 ;如果是来自父节点的时间同步信号,则流程前进到步骤S760。
[0104]步骤S750:将中继器的时间偏移量Δ t更新为((t4-tl_2a)/2),流程返回至步骤S710o
[0105]步骤S760:在计时器计时结束后第二次启动计时器,将中继器的本地时间更新为(tl+Δt+a)ο
[0106]步骤S770:在计时器第二次计时结束后,记录完成时间t3,同时向父节点发送包括子节点地址、完成时间t3和计数间隔a的反馈数据。
[0107]图8为本发明一实施例提供的终端时钟的结构框图。如图8所示,终端时钟800包括第三主控单元810、终端守时时钟模块820、第三存储模块830、第三无线收发模块840,第三主控单元810电连接于终端守时时钟模块820、第三存储模块830和第三无线收发模块840。其中,终端守时时钟模块820,用于维持终端时钟的本地守时时间;第三存储模块830,用于存储终端时钟的所属父节点的父节点地址列表;以及第三无线收发模块840,用于终端时钟和所属父节点之间的通信;以及第三主控单元810,用于根据来自所属父节点的时间同步信号校准终端守时时钟模块,向所属父节点发送反馈数据。
[0108]具体地,在本发明一实施例中,终端守时时钟模块820由高精度可读写实时时钟模块组成,在没有授时信号是能够维持精准的本地守时时间,在第三主控单元810通过第三无线收发模块840接收到来自其所属父节点的时间同步信号后,第三主控单元810将更新终端守时时钟模块820的本地守时时间。
[0109]具体地,在本发明一实施例中,第三无线收发模块840采用433MHz频段的无线收发模组,其接收和发送数据的频道和空中波特率均可由用户灵活设置。
[0110]具体地,在本发明一实施例中,终端时钟800为数显钟表,因此,终端时钟800还包括显示单元(图中为示出),用来数码显示终端时钟的时间。
[0111]具体地,在本发明一实施例中,终端时钟800为指针钟表,因此,终
当前第3页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1