一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种时间同步方法、装置及存储介质与流程

2021-11-03 14:40:00 来源:中国专利 TAG:


1.本发明涉及电力线通信技术领域,具体涉及一种时间同步方法、装置及存储介质。


背景技术:

2.随着电力物联网的建设开展,电力线通信(power line communication,plc)的使用场景从之前的电表通信单元扩展至物联网通信单元。在电力物联网场景中,plc网络中的设备需要同时录播如电流电压等电气量波形数据,国内工频交流电频率为50hz,一个交流电周波为20ms,这要求plc网络中参与数据采集的设备支持时间同步,且时间同步的精度确保同一台区不同节点同一时间采集的电能质量数据是同一周波的,从而避免出现电流质量的判断错误。
3.已有技术中,例如国家电网颁布的《低压电力线宽带载波通信互联互通技术规范》的数据链路层通信协议部分的技术规范中对于plc网络中的头端节点和尾端节点的时间同步实现方法和尾端节点的时间准确性并没有明确规定,只要满足必要的时序规定即可。因此,当前的plc网络中,plc头端的中央协调器(central coordinator,cco)、plc尾端的代理协调器(proxy coordinator,pco)以及站点(station,sta)之间的时间同步精度各个厂家实现的方法和准确性有差别,部分产品同步准确度差。plc网络越大,同步时间越长,plc网络层数越多,误差增多,甚至达到毫秒级。因此,如何解决不同厂家的产品时间同步准确性差的问题,使得plc网络中的各个节点能够保持时间精准同步从而避免同步采集的数据周波体现不一致是一个亟待解决的问题。


技术实现要素:

4.本技术实施例提供一种时间同步方法,能够实现plc网络中不同节点之间的时间精准同步,从而保证plc网络中的各个节点能够保持时间精准同步,避免同步采集的数据周波体现不一致情况的产生。
5.为了达到上述目的,本技术提供如下技术方案:
6.本技术第一方面提供一种时间同步方法,该方法应用于plc网络。该plc网络包括头端节点和与头端节点连接的至少一个尾端节点。该头端节点可以是cco,该至少一个尾端节点可以包括一个或多个pco,或者一个或多个sta。头端节点和尾端节点均具备检测电压过零点的功能,具体的可以通过分别在头端节点和尾端节点中添加电压过零检测电路实现对于电压过零点的检测。在该方法中,头端节点根据基准时间生成电压过零点的数据,该电压过零点的数据包括电压过零点的过零点时间,头端节点将该电压过零点的数据发送至尾端节点,使得尾端节点可以根据该过零点时间确定该尾端节点的电压过零点的过零点时间。具体而言,该时间同步方法包括:头端节点根据基准时间生成电压过零点的数据,电压过零点的数据包括电压过零点的过零点时间,基准时间可以是指协调世界时,协调世界时又称为世界统一时间、世界标准时间或国际协调时间,是当前时刻的准确时间。头端节点根据基准时间生成电压过零点的数据是一个持续的过程,即头端节点会根据基准时间,在每
一个电压过零点产生时,均生成对应的数据。本技术可以根据plc网络的规模确定第一定时时间。第一定时时间可以是1ms的倍数。例如,在国内50hz的交流电频率的条件下,第一定时时间可以设置为200次过零电压。当第一定时时间到达时,头端节点向尾端节点发送第一信息,第一信息可以是中央信标,第一信息包括第一过零点的时间戳,第一过零点的时间戳是电压过零点的过零点时间中与第一定时时间的时间间隔最小的过零点时。即第一过零点是距离第一定时时间最近的过零点时间。第一信息可以是中央信标,即头端节点可以通过中央信标在第一定时时间到达时向尾端节点发送最邻近电压过零点的时间戳。尾端节点可以是与头端节点相邻的pco,也可以是与头端节点相邻的sta。尾端节点也在过零电压检测电路的驱动下持续生成每一个电压过零点的过零点时间。尾端节点在接收到头端节点发送的第一信息后,会将第一过零点的时间戳从第一信息中取出,然后根据第一过零点的时间戳确定本端生成的第二过零点的过零点时间。
7.由以上第一方面可知,头端节点通过定时向尾端节点发送最邻近电压过零点的时间戳,使得尾端节点在接收到该最邻近电压过零点的时间戳后,对本地生成的电压过零点的过零点时间进行校正,从而使得plc网络中的不同节点可以基于电压点零点产生的一致性以及周期性,实现不同节点之间的时间精准同步,从而保证plc网络中的各个节点能够保持时间精准同步,避免同步采集的数据周波体现不一致情况的产生。
8.结合上述第一方面,在第一方面第一种可能的实现方式中,第二过零点是与第一过零点相同的电压过零点,尾端节点在接收到第一信息后,立即将本端已经生成的第一过零点的过零点时间修改为接收到的第一信息中包含的第一过零点的过零点时间,在后续的电压过零点产生时,基于该已经更新的第一过零点的过零点时间,生成每个电压过零点的过零点时间。
9.由上述第一方面第一种可能的实现方式可知,头端节点通过定时向尾端节点发送最邻近电压过零点的时间戳,使得尾端节点在接收到该最邻近电压过零点的时间戳后,立即对本地生成的最邻近电压过零点的过零点时间进行校正,从而使得plc网络中的不同节点可以基于电压点零点产生的一致性以及周期性,及时的实现不同节点之间的时间精准同步,保证了plc网络中的节点实现时间精准同步的效率。
10.结合上述第一方面或第一方面第一种可能的实现方式,在第一方面第二种可能的实现方式中,在头端节点和尾端节点中使用的晶振质量不高的情况下,头端节点和尾端节点之间除了过零点时间存在误差之外,还可能会存在过零点计数值的误检的情况。因此,头端节点根据基准时间生成的电压过零点的数据还可以包括电压过零点的过零点计数值,尾端节点可以根据头端节点生成的电压过零点的过零点计数值,确定该尾端节点生成的电压过零点的过零点计数值。具体而言,头端节点向尾端节点发送第一信息中还可以包括第一过零点的过零点计数值。尾端节点在接收到头端节点发送的第一信息后,会从第一信息中提取出第一过零点的时间戳和过零点计数值,然后根据第一过零点的时间戳和过零点计数值确定第二过零点的过零点时间和过零点计数值。
11.由以上第一方面第二种可能的实现方式可知,头端节点可以通过在向尾端节点发送的第一信息中携带第一过零点的过零点计数值的方式,实现在头端节点和尾端节点中使用的晶振质量不高的情况下,尾端节点对生成的第二过零点的过零点计数值的校正,进步一地提升plc网络中不同节点之间时间精准同步的准确性。
12.结合上述第一方面第二种可能的实现方式,在第一方面第三种可能的实现方式中,当第二过零点与第一过零点相同时,第二过零点的过零点计数值与第一过零点的过零点计数值相同。即当第二过零点是与第一过零点相同的电压过零点时,尾端节点会将本端已经生成的第一过零点的过零点计数值修改为接收到的第一信息中包含的第一过零点的过零点计数值。
13.结合上述第一方面、第一方面第一种至第三种中任意一种可能的实现方式,在第一方面第四种可能的实现方式中,本地时间是指尾端节点的设备本地所记录的当前时间,该本地时间与基准时间可能存在偏差,尾端节点可以根据第一过零点的时间戳实现对本地时间的校准。
14.由以上第一方面第四种可能的实现方式可知,尾端节点还可以根据头端节点发送的电压过零点的时间戳对本地时间进行校准,从而可以使得尾端节点的本地时间能够与基准时间保持精准同步。
15.结合上述第一方面、第一方面第一种至第四种中任意一种可能的实现方式,在第一方面第五种可能的实现方式中,头端节点还可以连接一个或多个终端设备,终端设备和头端节点之间可以是通过通用异步收发传输器uart串口连接。头端节点根据基准时间生成电压过零点的数据,该电压过零点的数据包括电压过零点的过零点时间,头端节点将该电压过零点的数据发送至与之连接的终端设备,使得终端设备可以根据该过零点时间确定该终端设备的电压过零点的过零点时间。具体而言,头端节点根据基准时间生成电压过零点的数据之后,当第二定时时间到达时,头端节点向终端设备发送第二信息,头端节点可以是通过该uart串口向第一终端设备发送第二信息。第二定时时间可以与第一定时时间相同,也可以与第一定时时间不同。第二信息包括第三过零点的时间戳,该第三过零点是距离第二定时时间最近的最邻近电压过零点。终端设备在接收到第二信息后,根据第二信息中携带的第三过零点的时间戳确定第四过零点的过零点时间。
16.由以上第一方面第五种可能实现的方式可知,当plc网络中的头端节点还连接有终端设备时,头端节点通过定时向其连接的终端设备发送最邻近电压过零点的时间戳,使得终端设备在接收到该最邻近电压过零点的时间戳后,对本地生成的电压过零点的过零点时间进行校正,从而实现与头端节点之间的时间精准同步,保证plc网络中的各个节点以及其所连接的终端设备均能够保持时间精准同步,避免同步采集的数据周波体现不一致情况的产生。
17.结合上述第一方面第五种可能的实现方式,在第一方面第六种可能的实现方式中,头端节点根据基准时间生成的电压过零点的数据还包括电压过零点的过零点计数值。头端节点向与其连接的终端设备发送的第二信息除了包括第三过零点的时间戳,还包括第三过零点的过零点计数值。终端设备根据第三过零点的过零点计数值确定所述第四过零点的过零点计数值。第四过零点可以是与第三过零点相同的电压过零点,也可以是与第三过零点不同的电压过零点,例如,第四过零点是在第三过零点之后产生的第n个电压过零点。若第四过零点是与第三过零点相同的电压过零点,则终端设备在接收到第二信息后,立即将本端已经生成的第三过零点的过零点时间修改为接收到的第二信息中包含的第三过零点的过零点时间。若第四过零点是与第三过零点不相同的电压过零点,例如第四过零点是第三过零点之后的第n个电压过零点,第一终端设备可以在接收到第二信息后,当第四过零
点产生时,若第三过零点的时间戳为t3,生成第四过零点的时间为t3 an,其中,a是每两个相邻的电压过零点的过零点时间之间的时间间隔。
18.由以上第一方面第六种可能的实现方式可知,当头端节点和终端设备没有共用一个晶振,或者使用的晶振质量不高时,头端节点可以通过在向终端设备发送的第二信息中携带第三过零点的过零点计数值的方式,实现终端设备对生成的第四过零点的过零点计数值的校正,进一步提升时间精准同步的准确性。
19.结合上述第一方面第五种或第六种可能的实现方式,在第一方面第七种可能的实现方式中,第三过零点的时间戳还用于终端设备对本地时间进行校准。具体的,终端设备的本地时间是指终端设备的设备本地所记录的当前时间,该本地时间与基准时间可能存在偏差,终端设备可以根据第三过零点的时间戳实现对本地时间的校准。
20.结合上述第一方面、第一方面第一种至第七种中任意一种可能的实现方式,在第一方面第八种可能的实现方式中,头端节点根据基准时间生成电压过零点的数据之前,还包括:头端节点获取基准时间。头端节点可以是从上游设备,例如,管理节点或是gps、北斗等时钟源获取基准时间。头端节点可以周期性地或定时地从上游设备获取基准时间。
21.由以上第一方面第八种可能的实现方式可知,头端节点可以周期性地或定时地获取基准时间,然后基于基准时间生成电压过零点的数据,实现与尾端节点之间的时间精准同步,从而可以保证plc网络中的不同节点的时间都能与基准时间保持对齐。
22.本技术第二方面提供一种时间同步方法,该方法应用于plc网络,该plc网络包括头端节点和与头端节点连接的至少一个尾端节点。该头端节点可以是cco,该至少一个尾端节点可以包括一个或多个pco,或者一个或多个sta。头端节点和尾端节点均具备检测电压过零点的功能,具体的可以通过分别在头端节点和尾端节点中添加电压过零检测电路实现对于电压过零点的检测。在该方法中,头端节点根据基准时间生成电压过零点的过零点时间,第一尾端节点接收头端节点发送的电压过零点的时间,使得第一尾端节点可以根据该过零点时间确定该尾端节点的电压过零点的过零点时间。具体而言,该第一尾端节点接收头端节点在第一定时时间到达时发送的第一信息,第一信息包括第一过零点的时间戳,第一过零点的时间戳是头端节点根据基准时间生成的电压过零点的过零点时间中,在第一定时时间达到时的最邻近电压过零点的过零点时间。第一信息可以是中央信标,即头端节点可以通过中央信标在第一定时时间到达时向第一尾端节点发送最邻近电压过零点的时间戳。第一尾端节点也在过零电压检测电路的驱动下持续生成每一个电压过零点的过零点时间。第一在接收到头端节点发送的第一信息后,会将第一过零点的时间戳从第一信息中取出,然后根据第一过零点的时间戳确定本端生成的第二过零点的过零点时间。
23.由以上第二方面可知,头端节点通过定时向尾端节点发送最邻近电压过零点的时间戳,使得尾端节点在接收到该最邻近电压过零点的时间戳后,对本地生成的电压过零点的过零点时间进行校正,从而使得plc网络中的不同节点可以基于电压点零点产生的一致性以及周期性,实现不同节点之间的时间精准同步,从而保证plc网络中的各个节点能够保持时间精准同步,避免同步采集的数据周波体现不一致情况的产生。
24.结合上述第二方面,在第二方面第一种可能的实现方式中,当第一过零点和第二过零点相同时,第二过零点的过零点时间与第一过零点的时间戳相同。具体而言,第二过零点是与第一过零点相同的电压过零点,尾端节点在接收到第一信息后,立即将本端已经生
成的第一过零点的过零点时间修改为接收到的第一信息中包含的第一过零点的过零点时间,在后续的电压过零点产生时,基于该已经更新的第一过零点的过零点时间,生成每个电压过零点的过零点时间。
25.由上述第二方面第一种可能的实现方式可知,头端节点通过定时向第一尾端节点发送最邻近电压过零点的时间戳,使得第一尾端节点在接收到该最邻近电压过零点的时间戳后,立即对本地生成的最邻近电压过零点的过零点时间进行校正,从而使得plc网络中的不同节点可以基于电压点零点产生的一致性以及周期性,及时的实现不同节点之间的时间精准同步,保证了plc网络中的节点实现时间精准同步的效率。
26.结合上述第二方面或第二方面第一种可能的实现方式,在第二方面第二种可能的实现方式中,在头端节点和第一尾端节点中使用的晶振质量不高的情况下,头端节点和第一尾端节点之间除了过零点时间存在误差之外,还可能会存在过零点计数值的误检的情况下。因此,头端节点根据基准时间生成的电压过零点的数据还可以包括电压过零点的过零点计数值。具体而言,第一信息中还包括第一过零点的过零点计数值,第一尾端节点在接收头端节点在第一定时时间到达时发送的第一信息之后,会从第一信息中提取出第一过零点的时间戳和过零点计数值,然后根据第一过零点的时间戳和过零点计数值确定第二过零点的过零点时间和过零点计数值。
27.由以上第二方面第二种可能的实现方式可知,头端节点可以通过在向第一尾端节点发送的第一信息中携带第一过零点的过零点计数值的方式,实现在头端节点和第一尾端节点中使用的晶振质量不高的情况下,第一尾端节点对生成的第二过零点的过零点计数值的校正,进步一地提升plc网络中不同节点之间时间精准同步的准确性。
28.结合上述第二方面第二种可能的实现方式,在第二方面第三种可能的实现方式中,当第二过零点与第一过零点相同时,第二过零点的过零点计数值与第一过零点的过零点计数值相同。具体的,当第二过零点是与第一过零点相同的电压过零点时,尾端节点会将本端已经生成的第一过零点的过零点计数值修改为接收到的第一信息中包含的第一过零点的过零点计数值。
29.结合上述第二方面、第二方面第一种至第三种中任意一种可能的实现方式,在第二方面第四种可能的实现方式中,第一尾端节点接收头端节点在第一定时时间到达时发送的第一信息之后,还包括:尾端节点根据第一过零点的时间戳对本地时间进行校准。具体的,本地时间是指尾端节点的设备本地所记录的当前时间,该本地时间与基准时间可能存在偏差,尾端节点可以根据第一过零点的时间戳实现对本地时间的校准。
30.由以上第二方面第四种可能的实现方式可知,第一尾端节点还可以根据头端节点发送的电压过零点的时间戳对本地时间进行校准,从而可以使得第一尾端节点的本地时间能够与基准时间保持精准同步。
31.结合上述第二方面、第二方面第一种至第四种中任意一种可能的实现方式,在第二方面第五种可能的实现方式中,第一尾端节点与一个或多个终端设备连接。第一尾端节点和终端设备之间可以是通过通用异步收发传输器uart串口连接。第一尾端节点在实现与头端节点之间的时间精准同步之后,会根据第二过零点的时间戳生成电压过零点的过零点时间,第一尾端节点将该电压过零点的数据发送至与之连接的终端设备,使得终端设备可以根据该过零点时间确定该终端设备的电压过零点的过零点时间。具体而言,第一尾端节
点根据第一过零点的时间戳,确定第二过零点的过零点时间之后,还包括:第一尾端节点根据第二过零点的过零点时间生成电压过零点的数据,电压过零点的数据包括电压过零点的过零点时间;当第二定时时间到达时,第一尾端节点向所述终端设备发送第二信息,第二信息包括第三过零点的时间戳,第三过零点的时间戳是第一尾端节点根据第二过零点的过零点时间生成的电压过零点的过零点时间中,与第二定时时间的时间间隔最小的过零点时间,即第三过零点是距离第二定时时间的最邻近电压过零点。终端设备根据第三过零点的时间戳确定第四过零点的过零点时间。
32.由以上第二方面第五种可能实现的方式可知,当plc网络中的尾端节点还连接有终端设备时,可以使得plc网络中的尾端节点所连接的终端设备也可以基于电压点零点产生的一致性以及周期性,实现与尾端节点之间的时间精准同步,从而保证plc网络中的各个节点以及其所连接的终端设备均能够保持时间精准同步,避免同步采集的数据周波体现不一致情况的产生。
33.结合上述第二方面第五种可能的实现方式,在第二方面第六种可能的实现方式中,电压过零点的数据还包括电压过零点的过零点计数值,第二信息还包括第三过零点的过零点计数值,终端设备根据第三过零点的过零点计数值确定第四过零点的过零点计数值。
34.结合上述第二方面第五种或第六种可能的实现方式,在第二方面第七种可能的实现方式中,终端设备根据第三过零点的时间戳对本地时间进行校准。
35.结合上述第二方面第五种可能的实现方式,在第二方面第八种可能的实现方式中,第一尾端节点还连接有第二尾端节点。第一尾端节点在实现与头端节点之间的时间精准同步之后,会根据第二过零点的时间戳生成电压过零点的数据。第一尾端节点将该电压过零点的数据发送至与之连接的第二尾端节点,使得第二尾端节点可以根据该过零点时间确定该第二尾端节点的电压过零点的过零点时间。具体而言,第一尾端节点根据第二过零点的过零点时间生成电压过零点的数据之后,当第三定时时间到达时,第一尾端节点向第二尾端节点发送第三信息。第三定时时间可以与第一定时时间和第二定时时间中的至少一个相同,也可以是与第一定时时间和第二定时时间均不相同。第三信息包括第五过零点的时间戳,第五过零点的时间戳是第一尾端节点根据第二过零点的过零点时间生成的电压过零点的过零点时间中,与第三定时时间的时间间隔最小的过零点时间,即第五过零点是距离第三定时时间最近产生的最邻近电压过零点。第二尾端节点根据第五过零点的时间戳确定第六过零点的过零点时间。
36.结合上述第二方面第八种可能的实现方式,在第二方面第九种可能的实现方式中,第一尾端节点在与头端节点实现时间精准同步之后,生成的电压过零点的数据还包括电压过零点的过零点计数值。在第一尾端节点和第二尾端节点中使用的晶振质量不高的情况下,第一尾端节点向第二尾端节点发送的第三信息还包括第五过零点的过零点计数值,第五过零点的过零点计数值用于第二尾端节点确定第六过零点的过零点计数值。
37.本技术第三方面提供一种时间同步方法,该方法应用于plc网络,该plc网络包括头端节点和与头端节点连接的至少一个尾端节点,头端节点和至少一个尾端节点中的至少一个节点与至少一个终端设备连接。该头端节点可以是cco,该至少一个尾端节点可以包括一个或多个pco,或者一个或多个sta。头端节点和尾端节点均具备检测电压过零点的功能,
具体的可以通过分别在头端节点和尾端节点中添加电压过零检测电路实现对于电压过零点的检测。在该方法中,头端节点或尾端节点生成电压过零点的数据,该电压过零点的数据包括电压过零点的过零点时间,头端节点或尾端节点将该电压过零点的数据发送至与之相连的终端设备,使得终端设备可以根据该过零点时间确定该终端设备的电压过零点的过零点时间。具体而言,该方法包括:终端设备接收第一节点在第一定时时间到达时发送的第一信息,第一信息包括第一过零点的时间戳,第一过零点的时间戳是第一节点生成的电压过零点的过零点时间中与第一定时时间的时间间隔最小的过零点时间;终端设备根据第一过零点的时间戳,确定第二过零点的时间戳。
38.由以上第三方面可知,当plc网络中的头端节点或尾端节点连接有终端设备时,头端节点或尾端节点通过定时向其连接的终端设备发送最邻近电压过零点的时间戳,使得终端设备在接收到该最邻近电压过零点的时间戳后,对本地生成的电压过零点的过零点时间进行校正,从而实现与头端节点或尾端节点之间的时间精准同步,从而保证plc网络中的各个节点以及其所连接的终端设备均能够保持时间精准同步,避免同步采集的数据周波体现不一致情况的产生。
39.结合上述第三方面,在第三方面第一种可能的实现方式中,当第一节点为头端节点时,电压过零点的过零点时间是第一节点根据基准时间生成的。具体的,头端节点根据基准时间生成电压过零点的数据,该电压过零点的数据包括电压过零点的过零点时间,头端节点将该电压过零点的数据发送至与其连接的终端设备,使得终端设备可以根据该过零点时间确定该终端设备的电压过零点的过零点时间。从而实现头端节点与终端设备之间的时间精准同步。
40.结合上述第三方面,在第三方面第二种可能的实现方式中,当第一节点为尾端节点时,电压过零点的过零点时间是第一节点根据第三过零点的时间戳生成的,第三过零点的时间戳是第二节点在第二定时时间到达时向第一节点发送的,第三过零点的时间戳是第二节点生成的电压过零点的时间戳中与第二定时时间的时间间隔最小的过零点时间。具体的,尾端节点在与头端节点实现时间精准同步之后生成电压过零点的数据,该电压过零点的数据包括电压过零点的过零点时间,尾端节点将该电压过零点的数据发送至与其连接的终端设备,使得终端设备可以根据该过零点时间确定该终端设备的电压过零点的过零点时间。从而实现尾端节点与终端设备之间的时间精准同步。
41.结合上述第三方面、第三方面第一种至第二种中任意一种可能的实现方式,在第三方面第三种可能的实现方式中,第一信息还包括第一过零点的过零点计数值,该方法还包括:终端设备根据第一过零点的过零点计数值,确定第二过零点的过零点计数值。
42.结合上述第三方面、第三方面第一种至第三种中任意一种可能的实现方式,在第三方面第四种可能的实现方式中,终端设备接收第一节点在第一定时时间到达时发送的第一信息之后,还包括:终端设备根据第一过零点的时间戳,校准本地时间。
43.本技术第四方面提供一种网络设备,该网络设备应用于plc网络,该网络设备为头端节点,该plc网络还包括与头端节点连接的至少一个尾端节点,该网络设备包括:生成单元,用于根据基准时间生成电压过零点的数据,电压过零点的数据包括电压过零点的过零点时间;发送单元,用于在第一定时时间到达时,向尾端节点发送第一信息,第一信息包括第一过零点的时间戳,第一过零点的时间戳是生成单元生成的电压过零点的过零点时间中
与第一定时时间的时间间隔最小的过零点时间,第一过零点的时间戳用于尾端节点确定第二过零点的过零点时间。
44.结合上述第四方面,在第四方面第一种可能的实现方式中,当第二过零点与第一过零点相同时,第二过零点的过零点时间与第一过零点的时间戳相同。
45.结合上述第四方面或第四方面第一种可能的实现方式,在第四方面第二种可能的实现方式中,电压过零点的数据还包括电压过零点的过零点计数值,第一信息还包括第一过零点的过零点计数值,第一过零点的过零点计数值用于尾端节点确定所述第二过零点的过零点计数值。
46.结合上述第四方面第二种可能的实现方式,在第四方面第三种可能的实现方式中,当第二过零点与第一过零点相同时,第二过零点的过零点计数值与第一过零点的过零点计数值相同。
47.结合上述第四方面、第四方面第一种至第三种中任意一种可能的实现方式,在第四方面第四种可能的实现方式中,第一过零点的时间戳还用于尾端节点对本地时间进行校准。
48.结合上述第四方面、第四方面第一种至第四种中任意一种可能的实现方式,在第四方面第五种可能的实现方式中,网络设备与终端设备连接,发送单元,还用于在生成单元根据基准时间生成电压过零点的数据之后,当第二定时时间到达时,向终端设备发送第二信息,第二信息包括第三过零点的时间戳,第三过零点的时间戳是电压过零点的过零点时间中与第二定时时间的时间间隔最小的过零点时间,第三过零点的时间戳用于终端设备确定第四过零点的过零点时间。
49.结合上述第四方面第五种可能的实现方式,在第四方面第六种可能的实现方式中,电压过零点的数据还包括电压过零点的过零点计数值,第二信息还包括第三过零点的过零点计数值,第三过零点的过零点计数值用于终端设备确定第四过零点的过零点计数值。
50.结合上述第四方面第五种或第六种可能的实现方式,在第四方面第七种可能的实现方式中,第三过零点的时间戳还用于终端设备对本地时间进行校准。
51.结合上述第四方面、第四方面第一种至第七种中任意一种可能的实现方式,在第四方面第八种可能的实现方式中,网络设备还包括:获取单元,用于在生成单元根据所述基准时间生成所述电压过零点的数据之前,获取所述基准时间。
52.本技术第五方面提供一种网络设备,其特征在于,该网络设备应用于plc网络,网络设备为第一尾端节点,plc网络还包括与第一尾端节点连接的头端节点,网络设备包括:接收单元,用于接收头端节点在第一定时时间到达时发送的第一信息,第一信息包括第一过零点的时间戳,第一过零点的时间戳是头端节点根据基准时间生成的电压过零点的过零点时间中,与第一定时时间的间隔时间最小的过零点时间;确定单元,用于根据接收单元接收的第一信息中的第一过零点的时间戳,确定第二过零点的过零点时间。
53.结合上述第五方面,在第五方面第一种可能的实现方式中,当第一过零点和第二过零点相同时,第二过零点的过零点时间与第一过零点的时间戳相同。
54.结合上述第五方面或第五方面第一种可能的实现方式,在第五方面第二种可能的实现方式中,第一信息中还包括第一过零点的过零点计数值,确定单元,还用于在接收单元
接收头端节点在第一定时时间到达时发送的第一信息之后,根据第一过零点的过零点计数值确定第二过零点的过零点计数值。
55.结合上述第五方面第二种可能的实现方式,在第五方面第三种可能的实现方式中,当第二过零点与第一过零点相同时,第二过零点的过零点计数值与第一过零点的过零点计数值相同。
56.结合上述第五方面、第五方面第一种至第三种中任意一种可能的实现方式,在第五方面第四种可能的实现方式中,网络设备还包括:校准单元,用于在接收单元接收头端节点在第一定时时间到达时发送的第一信息之后,根据第一过零点的时间戳对本地时间进行校准。
57.结合上述第五方面、第五方面第一种至第四种中任意一种可能的实现方式,在第五方面第五种可能的实现方式中,第一尾端节点与终端设备连接,网络设备还包括:生成单元,用于在确定单元根据第一过零点的时间戳确定第二过零点的过零点时间之后,根据第二过零点的过零点时间生成电压过零点的数据,电压过零点的数据包括电压过零点的过零点时间;发送单元,用于在第二定时时间到达时,向终端设备发送第二信息,第二信息包括第三过零点的时间戳,第三过零点的时间戳是生成单元生成的电压过零点的过零点时间中与第二定时时间的时间间隔最小的过零点时间,第三过零点的时间戳用于终端设备确定第四过零点的过零点时间。
58.结合上述第五方面第五种可能的实现方式,在第五方面第六种可能的实现方式中,电压过零点的数据还包括电压过零点的过零点计数值,第二信息还包括第三过零点的过零点计数值,第三过零点的过零点计数值用于终端设备确定第四过零点的过零点计数值。
59.结合上述第五方面第五种或第六种可能的实现方式,在第五方面第七种可能的实现方式中,第三过零点的时间戳还用于终端设备对本地时间进行校准。
60.结合上述第五方面第五种可能的实现方式,在第五方面第八种可能的实现方式中,发送单元,还用于在第三定时时间到达时,向第二尾端节点发送第三信息,第三信息包括第五过零点的时间戳,第五过零点的时间戳是生成单元生成的电压过零点的过零点时间中,与第三定时时间的时间间隔最小的过零点时间,第五过零点的时间戳用于第二尾端节点确定第六过零点的过零点时间。
61.结合上述第五方面第八种可能的实现方式,在第五方面第九种可能的实现方式中,所述电压过零点的数据还包括电压过零点的过零点计数值,第三信息还包括第五过零点的过零点计数值,第五过零点的过零点计数值用于第二尾端节点确定第六过零点的过零点计数值。
62.本技术第六方面提供一种终端设备,该终端设备应用于plc网络,plc网络包括头端节点和与头端节点连接的至少一个尾端节点,头端节点和该至少一个尾端节点中的至少一个节点与至少一个终端设备连接,该终端设备包括:接收单元,用于接收第一节点在第一定时时间到达时发送的第一信息,第一信息包括第一过零点的时间戳,第一过零点的时间戳是第一节点生成的电压过零点的过零点时间中与第一定时时间的时间间隔最小的过零点时间;确定单元,用于根据接收单元接收的所述第一信息中的第一过零点的时间戳,确定第二过零点的时间戳。
63.结合上述第六方面,在第六方面第一种可能的实现方式中,当第一节点为头端节点时,电压过零点的过零点时间是第一节点根据基准时间生成的。
64.结合上述第六方面,在第六方面第二种可能的实现方式中,当第一节点为尾端节点时,电压过零点的过零点时间是第一节点根据第三过零点的时间戳生成的,第三过零点的时间戳是第二节点在第二定时时间到达时向第一节点发送的,第三过零点的时间戳是第二节点生成的电压过零点的时间戳中与第二定时时间的时间间隔最小的过零点时间。
65.结合上述第六方面、第六方面第一种至第二种中任意一种可能的实现方式,在第六方面第三种可能的实现方式中,第一信息还包括第一过零点的过零点计数值,确定单元,还用于根据第一过零点的过零点计数值,确定第二过零点的过零点计数值。
66.结合上述第六方面、第六方面第一种至第三种中任意一种可能的实现方式,在第六方面第四种可能的实现方式中,终端设备还包括:校准单元,用于在接收单元接收第一节点在第一定时时间到达时发送的所述第一信息之后,根据第一过零点的时间戳,校准本地时间。
67.本技术第七方面提供一种网络设备,该网络设备包括处理器和存储器。存储器用于存储计算机可读指令(或者称之为计算机程序),处理器用于读取所述计算机可读指令以实现前述有关头端节点的方面及其任意实现方式提供的方法。
68.在一些实现方式下,该网络设备还包括收发器,用于接收和发送数据。
69.本技术第八方面提供一种网络设备,该网络设备包括处理器和存储器。存储器用于存储计算机可读指令(或者称之为计算机程序),处理器用于读取所述计算机可读指令以实现前述有关尾端节点的方面及其任意实现方式提供的方法。
70.在一些实现方式下,该网络设备还包括收发器,用于接收和发送数据。
71.本技术第九方面提供一种终端设备,该终端设备包括处理器和存储器。存储器用于存储计算机可读指令(或者称之为计算机程序),处理器用于读取所述计算机可读指令以实现前述有关终端设备的方面及其任意实现方式提供的方法。
72.在一些实现方式下,该终端设备还包括收发器,用于接收和发送数据。
73.本技术第十方面提供一种装置,该装置具有实现上述第一方面或第一方面任一种可能的实现方式中头端节点行为的功能,其包括用于执行上述第一方面或第一方面任一种可能的实现方式所描述的步骤或功能相对应的部件(means)。所述步骤或功能可以通过软件实现,或硬件(如电路)实现,或者通过硬件和软件结合来实现。
74.在一种可能的设计中,上述装置包括一个或多个处理器和通信单元。所述一个或多个处理器被配置为支持所述装置执行上述方法中头端节点相应的功能。所述通信单元用于支持所述装置与其他设备通信,实现接收和/或发送功能。
75.可选的,所述装置还可以包括一个或多个存储器,所述存储器用于与处理器耦合,其保存装置必要的程序指令和/或数据。所述一个或多个存储器可以和处理器集成在一起,也可以与处理器分离设置。本技术并不限定。
76.所述装置可以为plc模块等,所述通信单元可以是收发器,或收发电路。可选的,所述收发器也可以为输入/输出电路或者接口。
77.所述装置还可以为芯片系统。所述通信单元可以为芯片系统的输入/输出电路或者接口。
78.另一个可能的设计中,上述装置,包括收发器、处理器和存储器。该处理器用于控制收发器或输入/输出电路收发信号,该存储器用于存储计算机程序,该处理器用于运行该存储器中的计算机程序,使得该装置执行第一方面或第一方面中任一种可能实现方式中头端节点完成的方法。
79.本技术第十一方面提供一种装置,该装置具有实现上述第二方面或第二方面任一种可能的实现方式中尾端节点行为的功能,其包括用于执行上述第二方面或第二方面任一种可能的实现方式中所描述的步骤或功能相对应的部件(means)。所述步骤或功能可以通过软件实现,或硬件(如电路)实现,或者通过硬件和软件结合来实现。
80.在一种可能的设计中,上述装置包括一个或多个处理器和通信单元。所述一个或多个处理器被配置为支持所述装置执行上述方法中尾端节点相应的功能。所述通信单元用于支持所述装置与其他设备通信,实现接收和/或发送功能。
81.可选的,所述装置还可以包括一个或多个存储器,所述存储器用于与处理器耦合,其保存网络设备必要的程序指令和/或数据。所述一个或多个存储器可以和处理器集成在一起,也可以与处理器分离设置。本技术并不限定。
82.所述装置可以为plc模块,所述通信单元可以是收发器,或收发电路。可选的,所述收发器也可以为输入/输出电路或者接口。
83.所述装置还可以为芯片系统。所述通信单元可以为芯片系统的输入/输出电路或者接口。
84.另一个可能的设计中,上述装置,包括收发器、处理器和存储器。该处理器用于控制收发器或输入/输出电路收发信号,该存储器用于存储计算机程序,该处理器用于运行存储器中的计算机程序,使得该装置执行第二方面或第二方面中任一种可能实现方式中尾端节点完成的方法。
85.本技术第第十二方面提供一种plc通信系统,该系统包括上述的头端节点和上述的与该头端节点连接的至少一个尾端节点。
86.结合第十二方面,在第十二方面第一种可能的实现方式中,该plc通信系统还包括上述的至少一个终端设备。
87.本技术第十三方面提供一种计算机可读存储介质,用于存储计算机程序,该计算机程序包括用于执行第一方面至第一方面中任一种可能实现方式中有关头端节点的方法的指令。
88.本技术第十四方面提供一种计算机可读存储介质,用于存储计算机程序,该计算机程序包括用于执行第二方面至第二方面中任一种可能实现方式中有关尾端节点的方法的指令。
89.本技术第十五方面提供一种计算机可读存储介质,用于存储计算机程序,该计算机程序包括用于执行第三方面至第三方面中任一种可能实现方式中有关终端设备的方法的指令。
90.本技术第十六方面提供一种计算机程序产品,所述计算机程序产品包括:计算机程序代码,当所述计算机程序代码在计算机上运行时,使得计算机执行上述第一方面至第一方面中任一种可能实现方式中有关头端节点的方法。
91.本技术第十七方面提供一种计算机程序产品,所述计算机程序产品包括:计算机
程序代码,当所述计算机程序代码在计算机上运行时,使得计算机执行上述第二方面至第二方面中任一种可能实现方式中有关尾端节点的方法。
92.本技术第十八方面提供一种计算机程序产品,所述计算机程序产品包括:计算机程序代码,当所述计算机程序代码在计算机上运行时,使得计算机执行上述第三方面至第三方面中任一种可能实现方式中有关终端设备的方法。
93.其中,第四方面、第七方面、第十方面、第十三方面、第十六方面中任一种实现方式所带来的技术效果可参见第一方面中不同实现方式所带来的技术效果,此处不再赘述。
94.其中,第五方面、第八方面、第十一方面、第十四方面、第十七方面中任一种实现方式所带来的技术效果可参见第二方面中不同实现方式所带来的技术效果,此处不再赘述。
95.其中,第六方面、第九方面、第十五方面、第十八方面中任一种实现方式所带来的技术效果可参见第三方面中不同实现方式所带来的技术效果,此处不再赘述。
96.本技术实施例采用一种时间同步方法,头端节点通过定时向尾端节点发送最邻近电压过零点的时间戳,使得尾端节点在接收到该最邻近电压过零点的时间戳后,对本地生成的电压过零点的过零点时间进行校正,从而使得plc网络中的不同节点可以基于电压点零点产生的一致性以及周期性,实现不同节点之间的时间精准同步,从而保证plc网络中的各个节点能够保持时间精准同步,避免同步采集的数据周波体现不一致情况的产生。
附图说明
97.图1是本技术实施例提供的电力通信系统的结构示意图;
98.图2是本技术实施例提供的时间同步方法的一个实施例示意图;
99.图3是本技术实施例提供的时间同步方法的另一个实施例示意图;
100.图4是本技术实施例提供的网络设备的结构示意图;
101.图5是本技术实施例提供的网络设备的另一种结构示意图;
102.图6是本技术实施例提供的网络设备的另一种结构示意图;
103.图7是本技术实施例提供的plc装置的结构示意图;
104.图8是本技术实施例提供的终端设备的结构示意图;
105.图9是本技术实施例提供的终端设备的另一种结构示意图。
具体实施方式
106.为了使本发明的目的、技术方案及优点更加清楚明白,下面结合附图,对本技术的实施例进行描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。本领域普通技术人员可知,随着新应用场景的出现,本发明实施例提供的技术方案对于类似的技术问题,同样适用。
107.本技术的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的实施例能够以除了在这里图示或描述的内容以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或模块的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或模块,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或
模块。在本技术中出现的对步骤进行的命名或者编号,并不意味着必须按照命名或者编号所指示的时间/逻辑先后顺序执行方法流程中的步骤,已经命名或者编号的流程步骤可以根据要实现的技术目的变更执行次序,只要能达到相同或者相类似的技术效果即可。本技术中所出现的模块的划分,是一种逻辑上的划分,实际应用中实现时可以有另外的划分方式,例如多个模块可以结合成或集成在另一个系统中,或一些特征可以忽略,或不执行,另外,所显示的或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,模块之间的间接耦合或通信连接可以是电性或其他类似的形式,本技术中均不作限定。并且,作为分离部件说明的模块或子模块可以是也可以不是物理上的分离,可以是也可以不是物理模块,或者可以分布到多个电路模块中,可以根据实际的需要选择其中的部分或全部模块来实现本技术方案的目的。
108.电力线通信(power line communication,plc)是一种利用高压电力线(35kv及以上电压等级)、中压电力线(10-30kv电压等级)或低压配电线(380/220kv用户线)作为信息传输媒介进行信息传输的一种特殊通信方式。该技术将载有信息的高频信号加载到电力线上,用电力线进行数据传输,通过专用的电力线调制/解调器将高频信号从电力线上分离下来,从而实现通信的目的。
109.图1为本技术实施例提供的一种电力通信系统的结构示意图。
110.如图1所示,电力系统包括管理节点10、一个或多个plc网络20、以及一个或多个终端设备30。本技术实施例中的管理节点10用于获取其所连接的一个或多个plc网络20内的数据,从而实现对电力通信系统的运行控制和管理。管理节点10可以是指配电变压器检测终端(distribution transformer supervisory terminal unit,ttu),也可以是电商的管理服务器。管理节点10可以通过plc网络20与终端设备30连接,从而获取终端设备30的数据信息。
111.每个plc网络20包含一个头端节点40和与头端节点40通过电气线连接的一个或多个尾端节点50,如图1中示出的一种简单的plc网络的结构。可以理解的是,在实际应用的过程中,plc网络20中还可以包含其他数量的尾端节点50,且尾端节点50可以通过一级或多级连接,本技术实施例对此不作限定。plc网络20中的头端节点40可以是中央协调器(central coordinator,cco),多个尾端节点可以包含一个或多个级联的代理协调器(proxy coordinator,pco),或者,一个或多个站点(station,sta),即尾端节点50可以是pco,也可以是sta。在plc网络20中,有些sta可以和cco直连,有些sta和cco无法直接连接,两者之间通过一个或多个级联的pco进行连接,cco和sta之间所有的消息均由该一个或多个级联的pco转发。当尾端节点50为sta时,sta与至少一个终端设备相连。头端节点40或尾端节点50均可以与至少一个终端设备30连接,头端节点40或尾端节点50也可以不连接终端设备30,本技术实施例对此不作限定。
112.基于图1中的plc网络,本技术实施例提供的时间同步方法的一个实施例示意图,如图2所示。
113.参阅图2,本技术实施例提供的时间同步方法的一个实施例,可以包括:
114.201、头端节点根据基准时间生成电压过零点的数据,该电压过零点的数据包括电压过零点的过零点时间。
115.本技术实施例中的头端节点和尾端节点均具备检测电压过零点的功能。具体的,
本技术实施例中可以通过分别在头端节点和尾端节点中添加电压过零检测电路实现对于电压过零点的检测。电压过零检测电路在每一次的电压过零时输出信号,从而驱动头端节点或尾端节点在每一次的电压过零点产生时生成该电压过零点的过零点时间。
116.电压过零是指正负直流,如脉冲电压,或者正负幅度的交流电,从正到负或者从负到政,必须通过零点,该过零点被称为电压过零点。电压过零点与线路中的负载无关,电压只会随着输电距离加长而降低电压值,但是其相位、频率都不会发生变化,由于线路负载所呈现的感性或者容性都不会影响线路中电压过零点的产生。因此,在同一相线的任何位置进行电压过零点的检测,同一电压过零点将会同时产生。电压过零检测电路是当前成熟的低成本电路设计,用于实现对线路中电压过零点的检测,此处不做赘述。日常生活中,我们使用的交流电的频率一般为50hz或60hz,例如,中国和欧洲使用50hz的交流电。以单相电的电压过零检测电路对50hz的交流电的电压过零点进行检测为例,50hz的交流电每秒钟会产生100次的电压过零点,即同一相位的电压每10ms经过一次零电压,因此电压过零检测电路每10ms产生一次脉冲信号,从而触发对电压过零点相关数据的检测。
117.可选地,除了电压过零点的过零点时间之外,过零检测电路还可以驱动头端节点或尾端节点在每一次的电压过零点产生时,进行电压过零点的计数。具体的,以国内50hz的交流电频率为例,线路中每10ms将产生一次零电压,即产生了一次电压过零点,头端节点或尾端节点在每一次的电压过零点产生时,会生成对应的电压过零点的数据。需要说明的是,对于单相交流电而言,头端节点或尾端节点生成的电压过零点的数据包括该单相对应的电压过零点的数据;对于三项交流电而言,头端节点或尾端节点生成的电压过零点的数据包括三相中每一相对应的电压过零点的数据。
118.本技术实施例中的基准时间可以是指协调世界时,协调世界时又称为世界统一时间、世界标准时间或国际协调时间,是当前时刻的准确时间。可选地,本技术实施例中,头端节点可以是从上游设备,例如,管理节点或是gps、北斗等时钟源获取基准时间。
119.本技术实施例中,头端节点根据基准时间生成电压过零点的数据,电压过零点的数据包括电压过零点的过零点时间。本技术实施例中,头端节点根据基准时间生成电压过零点的数据是一个持续的过程,即头端节点会根据基准时间,在每一个电压过零点产生时,均生成对应的数据。
120.可选地,本技术实施例中,头端节点根据基准时间生成的电压过零点的数据中还可以包含与电压过零点相关的其他信息,例如,电压过零点的过零计数值。
121.可选地,本技术实施例中,头端节点可以周期性的获取基准时间,并在每次获取基准时间后,基于新获取的基准时间生成电压过零点的过零点时间。
122.202、当第一定时时间到达时,头端节点向尾端节点发送第一信息,第一信息包括第一过零点的时间戳,第一过零点的时间戳是电压过零点的过零点时间中与第一定时时间的时间间隔最小的过零点时间。
123.本技术实施例中的第一定时时间可以是根据plc网络的规模进行确定的。第一定时时间可以是1ms的倍数,例如,在国内50hz的交流电频率的条件下,第一定时时间可以设置为200次过零电压,即第一定时时间的周期为2s。
124.本技术实施例中,在头端节点根据基准时间生成电压过零点的数据之后,当第一定时时间到达时,头端节点向尾端节点发送第一信息,第一信息包括第一过零点的时间戳,
第一过零点的时间戳是头端节点根据基准时间生成的电压过零点的过零点时间中与第一定时时间的时间间隔最小的过零点时间。即头端节点根据基准时间生成了一个或多个电压过零点对应的过零点时间,该第一过零点为距离第一定时时间到达时间最近的电压过零点,当第一定时时间到达时头端节点将最近产生的一次电压过零点的过零点时间戳发送给尾端节点。
125.本技术实施例中,第一信息可以是中央信标,即头端节点通过中央信标的方式向尾端节点发送第一过零点的时间戳。
126.203、尾端节点根据第一过零点的时间戳确定第二过零点的过零点时间。
127.本技术实施例中的尾端节点可以是与头端节点相邻的pco,也可以是与头端节点相邻的sta,本技术实施例对此不做限定。本技术实施例中,尾端节点在接收到头端节点发送的第一信息后,会将第一过零点的时间戳从第一信息中取出,然后根据第一过零点的时间戳确定第二过零点的过零点时间。
128.可选地,本技术实施例中,在头端节点和尾端节点中使用的晶振质量不高,可能会存在过零点计数值的误检的情况下,头端节点向尾端节点发送第一信息中还可以包括第一过零点的过零点计数值。尾端节点在接收到头端节点发送的第一信息后,会从第一信息中提取出第一过零点的时间戳和过零点计数值,然后根据第一过零点的时间戳确定第二过零点的过零点时间和过零点计数值。
129.本技术实施例中,尾端节点也在过零电压检测电路的驱动下持续生成每一个电压过零点的过零点时间。第二过零点可以是与第一过零点相同的电压过零点,也可以是与第一过零点不同的电压过零点,例如第二过零点是在第一过零点之后产生的第n个电压过零点。尾端节点根据第一过零点的时间戳确定第二过零点的过零点时间的具体方式可以是:
130.若第二过零点是与第一过零点相同的电压过零点,则尾端节点在接收到第一信息后,立即将本端已经生成的第一过零点的过零点时间t1修改为接收到的第一信息中包含的第一过零点的过零点时间t1,在后续的电压过零点产生时,基于该已经更新的第一过零点的过零点时间t1,生成每个电压过零点的过零点时间。
131.可选地,若第一信息中还包含第一过零点的过零点计数值m1,则当第二过零点是与第一过零点相同的电压过零点时,尾端节点除了将本端已经生成的第一过零点的过零点时间t1修改为接收到的第一信息中包含的第一过零点的过零点时间t1之外,还会将本端已经生成的第一过零点的过零点计数值m1修改为接收到的第一信息中包含的第一过零点的过零点计数值m1,在后续的电压过零点产生时,基于该已经更新的第一过零点的过零点计数值m1,每生成一个电压过零点时,计数值 1。
132.若第二过零点是与第一过零点不相同的电压过零点,例如第二过零点是第一过零点之后的第n个电压过零点,尾端节点可以在接收到第一信息后,当第二过零点产生时,若第一过零点的时间戳为t1,则生成第二过零点的过零点时间为t1 an,在后续的电压过零点产生时,基于该第二过零点的过零点时间t1 an,生成每个电压过零点的过零点时间。其中,a是每两个相邻的电压过零点的过零点时间之间的时间间隔。
133.以交流电频率50hz为例,每10ms产生一次电压过零点,即每两个相邻的电压过零点的过零点时间之间的时间间隔是相同的,该相邻两个电压过零点的过零点时间之间的时间间隔a=10ms。当n=1时,第二过零点是在第一过零点之后产生的第一个电压过零点,此
时,尾端节点生成第二过零点的过零点时间为t1 10ms;若n=3,则第二过零点是在第一过零点之后产生的第三个过零点,第二过零点和第一过零点之间的产生时间间隔为30ms,当第二过零点产生时,尾端节点生成第二过零点的过零点时间为t1 30ms。需要说明的是,上述以交流电频率为50hz的情况对第二过零点的具体确定方式进行了介绍,对于交流电频率不等于50hz(例如,交流电频率为60hz)的场景同样适用,本技术实施例对于交流电的频率范围不作限定。
134.可选地,若第一信息中还包含第一过零点的过零点计数值m1,则当第二过零点是在第一过零点后产生的第n个电压过零点时,若第一过零点的过零点计数值为m1,则尾端节点除了在第二过零点产生时,生成第二过零点的过零点时间为t1 an,还生成第二过零点的过零计数值为m1 n。在后续的电压过零点产生时,基于该第二过零点的过零点计数值m1 n,每生成一个电压过零点时,计数值 1。
135.本技术实施例中头端节点通过定时向尾端节点发送最邻近电压过零点的时间戳,使得尾端节点在接收到该最邻近电压过零点的时间戳后,对本地生成的电压过零点的过零点时间进行校正,从而使得plc网络中的不同节点可以基于电压点零点产生的一致性以及周期性,实现不同节点之间的时间精准同步,从而保证plc网络中的各个节点能够保持时间精准同步,避免同步采集的数据周波体现不一致情况的产生。
136.上述对本技术实施例中,plc网络的头端节点和与之相邻的尾端节点之间的时间同步方法进行了介绍。当上述实施例中的尾端节点是pco时,若该pco还存在与其连接的下一级尾端节点,则该pco还需要与其连接的下一级尾端节点实现时间精准同步。在一些应用中,头端节点或尾端节点还有可能连接有终端设备,则头端节点或尾端节点与其相连的终端设备之间也需要实现时间精准同步,本技术实施例接下来将对此进行具体的介绍。
137.图3为本技术实施例提供的时间同步方法的另一个实施例示意图。
138.参阅图3,本技术实施例提供的时间同步方法的另一个实施例,可以包括:
139.301、头端节点根据基准时间生成电压过零点的数据,该电压过零点的数据包括电压过零点的过零点时间。
140.本技术实施例可以参阅图2中的步骤201进行理解,此处不再赘述。
141.302、当第一定时时间到达时,头端节点向第一尾端节点发送第一信息,第一信息包括第一过零点的时间戳,第一过零点的时间戳是电压过零点的过零点时间中与第一定时时间的时间间隔最小的过零点时间。
142.本技术实施例可以参阅图2中的步骤202进行理解,此处不再赘述。
143.303、第一尾端节点根据第一过零点的时间戳确定第二过零点的过零点时间。
144.本技术实施例可以参阅图2中的步骤203进行理解,此处不再赘述。
145.304、第一尾端节点根据第一过零点的时间戳对本地时间进行校准。
146.本技术实施例中,第一尾端节点在接收到头端节点发送的第一信息之后,还可以根据第一过零点的时间戳对本地时间进行校准。
147.本技术实施例中,第一尾端节点的本地时间是指第一尾端节点的设备本地所记录的当前时间,该本地时间与基准时间可能存在偏差,因此,第一尾端节点还可以根据第一过零点的时间戳对本地时间进行校准。
148.具体的,第一尾端节点根据第一过零点的时间戳对本地时间进行校准的方式可以
是:第一尾端节点在接收到投点节点发送的第一信息,并将第一过零点的时间戳提取出来之后,立即根据第一过零点的时间戳对本地时间进行更新,从而实现对本地时间的校准。
149.需要说明的是,本技术实施例步骤304是一个可选的步骤。
150.305、当第二定时时间到达时,头端节点向第一终端设备发送第二信息,第二信息包括第三过零点的时间戳,第三过零点的时间戳是头端节点生成的电压过零点的过零点时间中与第二定时时间的时间间隔最小的过零点时间。
151.本技术实施例中,第二定时时间可以与第一定时时间相同,也可以与第一定时时间不同。即:头端节点在根据基准时间生成电压过零点的数据之后,可以是同时分别向第一尾端节点和第一终端设备发送对应的信息,也可以是先后向第一尾端节点和第一终端设备发送对应的信息,且第一定时时间的周期可以比第二定时时间的周期长,也可以比第二定时时间的周期短,本技术实施例对此均不作限定。例如,第一定时时间设置为200次过零电压,即第一定时时间的周期为2s,第二定时时间设置为100次过零电压,即第二定时时间的周期为1s。
152.本技术实施例中,在头端节点根据基准时间生成电压过零点的数据之后,当第二定时时间到达时,头端节点向与其连接的第一终端设备发送第二信息,第二信息中包括第三过零点的时间戳,第三过零点的时间戳是电压过零点的过零点时间中与第二定时时间的时间间隔最小的过零点时间,即第三过零点为距离第二定时时间到达时间最近的电压过零点,当第二定时时间到达时,头端节点将最近产生的一次电压过零点的过零点时间戳发送给第一终端设备。
153.需要说明的是,本技术实施例中,第一终端设备可以是指与头端节点连接的一个或多个终端设备中的任意一个。第一终端设备和头端节点之间可以是通过通用异步收发传输器(universal asynchronous receiver/rransmitter,uart)串口连接。头端节点可以是通过该uart串口向第一终端设备发送第二信息。
154.306、第一终端设备根据第三过零点的时间戳确定第四过零点的过零点时间。
155.本技术实施例中,第一终端设备在接收到头端节点发送的第二信息之后,根据第二信息中包含的第三过零点的时间戳确定第四过零点的过零点时间。
156.可选地,头端节点和第一终端设备可以采用相同的晶振,例如,共用一个电压过零检测电路,也可以采用不同的晶振,当头端节点和第一终端设备分别采用了不同的晶振时,头端节点向第一终端设备发送第二信息中还可以包含第三过零点的过零点计数值。
157.本技术实施例中,第一终端设备也在电压过零检测电路的驱动下持续生成电压过零点的过零点时间。第四过零点可以是与第三过零点相同的电压过零点,也可以是与第三过零点不同的电压过零点,例如,第四过零点是在第三过零点之后产生的第n个电压过零点。第一终端设备根据第三过零点的时间戳确定第四过零点的过零点时间的具体方式可以是:
158.若第四过零点是与第三过零点相同的电压过零点,则第一终端设备在接收到第二信息后,立即将本端已经生成的第三过零点的过零点时间t3修改为接收到的第二信息中包含的第三过零点的过零点时间t3,在后续的电压过零点产生时,基于该已经更新的第三过零点的过零点时间t3,生成每个电压过零点的过零点时间。
159.可选地,若第二信息中还包含第三过零点的过零点计数值m3,则当第四过零点是
与第三过零点相同的电压过零点时,第一终端设备除了将本端已经生成的第三过零点的过零点时间t3修改为接收到的第二信息中包含的第三过零点的过零点时间t3之外,还会将本端已经生成的第三过零点的过零点计数值m3修改为接收到的第二信息中包含的第三过零点的过零点计数值m3,在后续的电压过零点产生时,基于该已经更新的第三过零点的过零点计数值m3,每生成一个电压过零点时,计数值 1。
160.若第四过零点是与第三过零点不相同的电压过零点,例如第四过零点是第三过零点之后的第n个电压过零点,第一终端设备可以在接收到第二信息后,当第四过零点产生时,若第三过零点的时间戳为t3,生成第四过零点的过零点时间为t3 an,在后续的电压过零点产生时,基于该第四过零点的过零点时间t3 an,生成每个电压过零点的过零点时间。其中,a是每两个相邻的电压过零点的过零点时间之间的时间间隔。
161.可选地,若第二信息中还包含第三过零点的过零点计数值m3,则当第四过零点是在第三过零点后产生的第n个电压过零点时,第一终端设备除了在第四过零点产生时,生成第四过零点的时间为t3 an,还生成第四过零点的过零计数值为m3 n。在后续的电压过零点产生时,基于该第四过零点的过零点计数值m3,每生成一个电压过零点时,计数值 1。
162.需要说明的是,此处也可以参阅图2步骤203中,尾端节点根据第一过零点的时间戳和过零点计数值确定第二过零点的时间戳和过零点计数值的方法进行理解。
163.307、当第三定时时间到达时,第一尾端节点向第二尾端节点发送第三信息,第三信息包括第五过零点的时间戳,第五过零点的时间戳是第一尾端节点基于第二过零点的过零点时间生成的电压过零点的过零点时间中与第三定时时间的时间间隔最小的过零点时间。
164.本技术实施例中,第一尾端节点在根据第一过零点的时间戳确定第二过零点的过零点时间之后,会基于第二过零点的过零点时间生成后续的电压过零点的数据,该电压过零点的数据包括电压过零点的过零点时间。可选地,该电压过零点的数据还可以包括电压过零点的过零点计数值。
165.需要说明的是,本技术实施例中的第一尾端节点是pco,第一尾端节点还连接了第二尾端节点,因此,第一尾端节点还需要向第二尾端节点发送第三信息,以使第二尾端节点完成时间精准同步。第三信息包括第五过零点的时间戳,第五过零点的时间戳是电压过零点的过零点时间中与第三定时时间的时间间隔最小的过零点时间。即该第五过零点为距离第三定时时间到达时间最近的电压过零点,当第三定时时间到达时将最近产生的一次电压过零点的过零点时间戳发送给第二尾端节点。第三信息可以是代理信标,即第一尾端节点通过代理信标的方式向第二尾端节点发送第五过零点的时间戳。
166.本技术实施例中,第三定时时间可以是根据plc网络的规模进行确定。第三定时时间可以是1ms的倍数。本技术实施例中的第三定时时间可以是与第一定时时间和第二定时时间中的至少一个相同,也可以是与第一定时时间或第二定时时间均不相同,本技术实施例对此不作限定。
167.308、第二尾端节点根据第五过零点的时间戳确定第六过零点的过零点时间。
168.本技术实施例中,第二尾端节点在接收到第一尾端节点发送的第三信息后,根据其中的第五过零点的时间戳确定第六过零点的过零点时间。
169.可选地,本技术实施例中,在第一尾端节点和第二尾端节点中使用的晶振质量不
高,可能会存在过零点计数值的误检的情况下,第一尾端节点向第二尾端节点发送第三信息中还可以包括第五过零点的过零点计数值。
170.本技术实施例中,第二尾端节点根据第五过零点的时间戳和过零点计数值确定第六过零点的时间戳和过零点计数值的方式,在原理上与图2的步骤203中尾端节点根据第一过零点的时间戳确定第二过零点的过零点时间的方式相同,可以参阅图2中的步骤203进行理解,此处不再赘述。
171.309、第二尾端节点根据第五过零点的时间戳对本地时间进行校准。
172.本技术实施例可以参阅步骤304中第一尾端节点根据第一过零点的时间戳对本地时间的校准进行理解,此处不再赘述。
173.需要说明的是,本技术实施例步骤309是一个可选的步骤。
174.310、当第四定时时间到达时,第一尾端节点向第二终端设备发送第四信息,第四信息包括第七过零点的时间戳,第七过零点的时间戳是第一尾端节点基于第二过零点的过零点时间生成的电压过零点的过零点时间中与第四定时时间的时间间隔最小的过零点时间。
175.本技术实施例中,第二终端设备可以是指与第一尾端节点连接的一个或多个终端设备中的任意一个。第二终端设备和第一尾端节点之间可以是通过uart串口连接。第一尾端节点可以是通过该uart串口向第二终端设备发送第四信息。
176.本技术实施例中,第四定时时间可以与第一定时时间、第二定时时间和第三定时时间中的至少一个相同,也可以与第一定时时间、第二定时时间和第三定时时间均不相同,本技术实施例对此不作限定。
177.本技术实施例中,第一尾端节点和第二终端设备之间的时间同步方法可以参阅步骤305中头端节点与第一终端设备之间的时间同步方法进行理解,此处不再赘述。
178.311、第二终端设备根据第七过零点的时间戳确定第八过零点的过零点时间。
179.本技术实施例中,第二终端设备在接收到第一尾端节点发送的第四信息之后,根据第四信息中包含的第七过零点的时间戳确定第八过零点的过零点时间。
180.可选地,第一尾端节点和第二终端设备可以采用相同的晶振,例如,共用一个电压过零检测电路,也可以采用不同的晶振,当第一尾端节点和第二终端设备分别采用了不同的晶振时,第一尾端节点向第二终端设备发送第四信息中还可以包含第七过零点的过零点计数值。
181.本技术实施例中,第二终端设备根据第七过零点的时间戳和过零点计数值确定第八过零点的时间戳和过零点计数值的方式,与步骤306中第一终端设备根据第三过零点的时间戳和过零点计数值确定第四过零点的过零点时间和过零点计数值的方法在原理上是相同的,可以参阅步骤306进行理解,此处不再赘述。
182.需要说明的是,本技术实施例中的第二尾端节点可以是pco,也可以是sta。若第二尾端节点是pco,则第二尾端节点还可以连接第三尾端节点,以此类推,均可以采用前述步骤中相同的方式完成尾端节点之间的时间同步。当第二尾端节点也连接有相应的第三终端设备时,其之间的时间同步方法与第一尾端节点和第二终端设备之间的同步方法相同。
183.需要说明的是,本技术实施例对步骤302-步骤303和步骤305-步骤306之间的先后顺序不作限定。本技术实施例对步骤307-步骤308和步骤310-步骤311之间的先后顺序不作
限定。
184.需要说明的是,本技术实施例中的第一尾端节点可以是pco,也可以是sta。若第一尾端节点的类型是sta时,第一尾端节点不会连接下一级的尾端节点,则步骤307-步骤308不存在。
185.需要说明的是,若头端节点或尾端节点没有连接终端设备时,头端节点或尾端节点与终端设备之间的时间同步方案是可选的方案。
186.本技术实施例中头端节点基于基准时间生成电压过零点的数据,然后通过定时向尾端节点和相连的终端设备发送最邻近电压过零点的时间戳,使得头端节点所连接的设备在接收到该最邻近电压过零点的时间戳后,均可以对本地生成的电压过零点的过零点时间进行校正,从而使得plc网络中的不同节点和终端设备均可以基于电压点零点产生的一致性以及周期性,实现不同节点之间的时间精准同步,保证了plc网络中的各个节点能够保持时间精准同步,避免同步采集的数据周波体现不一致情况的产生。
187.上述对本技术实施例提供的时间同步方法进行了介绍,接下来将对本技术实施例中的plc网络中的网络设备进行介绍,首先请参阅图4。
188.上述主要从各个节点之间交互的角度对本技术实施例提供的方案进行了介绍。可以理解的是,上述头端节点、尾端节点或终端设备为了实现上述功能,其包含了执行各个功能相应的硬件结构和/或软件模块。本领域技术人员应该很容易意识到,结合本文中所公开的实施例描述的各示例的模块及算法步骤,本技术能够以硬件或硬件和计算机软件的结合形式来实现。某个功能究竟以硬件还是计算机软件驱动硬件的方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本技术的范围。
189.从硬件结构上来描述,头端节点或尾端节点可以由一个实体设备实现,也可以由多个实体设备共同实现,还可以是一个实体设备内的一个逻辑功能模块,本技术实施例对此不作具体限定。
190.例如,上述图1至图3中的头端节点或尾端节点中的任意一个均可以通过图4中的网络设备400来实现。网络设备400应用于plc网络,所述plc网络包括头端节点和与所述头端节点连接的至少一个尾端节点。网络设备400可以是上述图1-图3中的头端节点,或者网络设备400也可以是上述图1-图3中的任意一个尾端节点。该网络设备400包括处理器410,存储器420与收发器430。收发器430,用于与其他设备或通信网络通信。
191.处理器410可以是一个通用中央处理器(central processing unit,cpu),微处理器,特定应用集成电路(application-specific integrated circuit,服务器ic),或一个或多个用于控制本技术方案程序执行的集成电路。
192.存储器420可以是只读存储器(read-only memory,rom)或可存储静态信息和指令的其他类型的静态存储设备,随机存取存储器(random access memory,ram)或者可存储信息和指令的其他类型的动态存储设备,也可以是电可擦可编程只读存储器(electrically er服务器able programmable read-only memory,eeprom)、只读光盘(compact disc read-only memory,cd-rom)或其他光盘存储、光碟存储(包括压缩光碟、激光碟、光碟、数字通用光碟、蓝光光碟等)、磁盘存储介质或者其他磁存储设备、或者能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于
此。存储器420可以是独立存在,通过与处理器410相连接。存储器420也可以和处理器410集成在一起。
193.其中,存储器420用于存储执行本技术方案的计算机执行指令,并由处理器410来控制执行。处理器410用于执行存储器420中存储的计算机执行指令,从而实现本技术实施例提供的时间同步方法。
194.具体地,当网络设备400为图1-图3中的头端节点时,处理器410用于:
195.根据基准时间生成电压过零点的数据,所述电压过零点的数据包括电压过零点的过零点时间;当第一定时时间到达时,向所述尾端节点发送第一信息,所述第一信息包括第一过零点的时间戳,所述第一过零点的时间戳是所述电压过零点的过零点时间中与所述第一定时时间的时间间隔最小的过零点时间,所述第一过零点的时间戳用于所述尾端节点确定第二过零点的过零点时间。具体实现请参见图2所示实施例中步骤201-步骤203,以及图3所示实施例中步骤301-步骤303的详细描述,此处不再赘述。
196.具体地,当网络设备400为图1-图3中的尾端节点时,处理器410用于:
197.接收所述头端节点在第一定时时间到达时发送的第一信息,所述第一信息包括第一过零点的时间戳,所述第一过零点的时间戳是所述头端节点根据基准时间生成的电压过零点的过零点时间中,与所述第一定时时间的间隔时间最小的过零点时间;根据所述第一过零点的时间戳,确定第二过零点的过零点时间。具体实现请参见图2所示实施例中步骤201-步骤203,以及图3所示实施例中步骤301-步骤303的详细描述,此处不再赘述。
198.可选的,本技术实施例中的计算机执行指令也可以称之为应用程序代码,本技术实施例对此不作具体限定。
199.本技术实施例可以根据上述方法示例对网络设备进行功能模块的划分,例如,可以对应各个功能划分各个功能模块,也可以将两个或两个以上的功能集成在一个处理模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。需要说明的是,本技术实施例中对模块的划分是示意性的,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。
200.比如,以采用集成的方式划分各个功能模块的情况下,图5示出了一种网络设备的结构示意图。该网络设备500对应于图1-图3实施例中的头端节点。
201.参阅图5,本技术实施例提供的网络设备500,应用于plc网络,所述网络设备为上述图1-图3中的头端节点,所述plc网络还包括与所述网络设备连接的至少一个尾端节点,该网络设备500可以包括:
202.生成单元501,用于根据基准时间生成电压过零点的数据,所述电压过零点的数据包括电压过零点的过零点时间。具体实现方式请参见图2所示实施例中步骤201的详细描述,以及图3所示实施例中步骤301的详细描述,此处不再赘述。
203.发送单元502,用于在第一定时时间到达时,向所述尾端节点发送第一信息,所述第一信息包括第一过零点的时间戳,所述第一过零点的时间戳是所述生成单元501生成的所述电压过零点的过零点时间中与所述第一定时时间的时间间隔最小的过零点时间,所述第一过零点的时间戳用于所述尾端节点确定第二过零点的过零点时间。具体实现方式请参见图2所示实施例中步骤202-步骤203的详细描述,以及图3所示实施例中步骤302-步骤303的详细描述,此处不再赘述。
204.本技术实施例的网络设备通过定时向尾端节点发送最邻近电压过零点的时间戳,使得尾端节点在接收到该最邻近电压过零点的时间戳后,对本地生成的电压过零点的过零点时间进行校正,从而使得plc网络中的不同节点可以基于电压点零点产生的一致性以及周期性,实现不同节点之间的时间精准同步,从而保证plc网络中的各个节点能够保持时间精准同步,避免同步采集的数据周波体现不一致情况的产生。
205.可选地,作为一个实施例,当所述第二过零点与所述第一过零点相同时,所述第二过零点的过零点时间与所述第一过零点的时间戳相同。具体实现方式请参见图2所示实施例中步骤203的详细描述,以及图3所示实施例中步骤303的详细描述,此处不再赘述。
206.可选地,作为一个实施例,所述电压过零点的数据还包括电压过零点的过零点计数值,所述第一信息还包括所述第一过零点的过零点计数值,所述第一过零点的过零点计数值用于所述尾端节点确定所述第二过零点的过零点计数值。具体实现方式请参见图2所示实施例中步骤203的详细描述,以及图3所示实施例中步骤303的详细描述,此处不再赘述。
207.可选地,作为一个实施例,当所述第二过零点与所述第一过零点相同时,所述第二过零点的过零点计数值与所述第一过零点的过零点计数值相同。具体实现方式请参见图2所示实施例中步骤203的详细描述,以及图3所示实施例中步骤303的详细描述,此处不再赘述。
208.可选地,作为一个实施例,所述第一过零点的时间戳还用于所述尾端节点对本地时间进行校准。具体实现方式请参见图3所示实施例中步骤304的详细描述,此处不再赘述。
209.可选地,作为一个实施例,所述网络设备500与终端设备连接,所述发送单元,还用于在所述生成单元501根据所述基准时间生成所述电压过零点的数据之后,当第二定时时间到达时,向所述终端设备发送第二信息,所述第二信息包括第三过零点的时间戳,所述第三过零点的时间戳是所述电压过零点的过零点时间中与所述第二定时时间的时间间隔最小的过零点时间,所述第三过零点的时间戳用于所述终端设备确定第四过零点的过零点时间。具体实现方式请参见图3所示实施例中步骤305-步骤306的详细描述,此处不再赘述。
210.可选地,作为一个实施例,所述电压过零点的数据还包括电压过零点的过零点计数值,所述第二信息还包括所述第三过零点的过零点计数值,所述第三过零点的过零点计数值用于所述终端设备确定所述第四过零点的过零点计数值。具体实现方式请参见图3所示实施例中步骤306的详细描述,此处不再赘述。
211.可选地,作为一个实施例,所述第三过零点的时间戳还用于所述终端设备对本地时间进行校准。
212.可选地,作为一个实施例,所述网络设备500还包括:获取单元503,用于在所述生成单元501根据所述基准时间生成所述电压过零点的数据之前,获取所述基准时间。具体实现方式请参见图2所示实施例中步骤201的详细描述或请参见图3所示实施例中步骤301的详细描述,此处不再赘述。
213.应理解,上述实施例中的生成单元501和获取单元503可以由处理器或处理器相关电路组件实现,上述实施例中的发送单元502可以由收发器或收发器相关电路组件实现。
214.此外,所述生成单元501、发送单元502以及获取单元503可以为软件功能单元,即通过软件实现上面所描述的这些单元的动能步骤,在这种情况下,这些软件单元可以是存
储在图4所示实施例中的存储器420中的软件代码,当处理器410读取存储器420中的软件代码时,执行图4所示实施例中处理器的功能。具体参见图4中的处理器410的详细描述,这里不再赘述。
215.图6示出了本技术实施例提供的另一种网络设备600的结构示意图。该网络设备600对应于图1-图3实施例中的尾端节点、第一尾端节点或第二尾端节点。
216.参阅图6,本技术实施例提供的网络设备600,该网络设备600应用于plc网络,plc网络还包括与网络设备600连接的头端节点,网络设备600可以包括:
217.接收单元601,用于接收所述头端节点在第一定时时间到达时发送的第一信息,所述第一信息包括第一过零点的时间戳,所述第一过零点的时间戳是所述头端节点根据基准时间生成的电压过零点的过零点时间中,与所述第一定时时间的间隔时间最小的过零点时间。具体实现方式请参见图2所示实施例中的步骤201-步骤202中的描述,以及图3所示实施例中步骤301-步骤302中的详细描述,此处不再赘述。
218.确定单元602,用于根据所述接收单元601接收的所述第一信息中的第一过零点的时间戳,确定第二过零点的过零点时间。具体实现方式请参见图3所示实施例中步骤203的详细描述,以及图3所示实施例中步骤303的详细描述,此处不再赘述。
219.可选地,作为一个实施例,当所述第一过零点和所述第二过零点相同时,所述第二过零点的过零点时间与所述第一过零点的时间戳相同。具体实现方式请参见图2所示实施例中步骤203的详细描述,以及图3所示实施例中步骤303的详细描述,此处不再赘述。
220.可选地,作为一个实施例,所述第一信息中还包括所述第一过零点的过零点计数值,所述确定单元602,还用于在所述接收单元601接收所述头端节点在第一定时时间到达时发送的第一信息之后,根据所述第一过零点的过零点计数值确定所述第二过零点的过零点计数值。具体实现方式请参见图2所示实施例中步骤203的详细描述,以及图3所示实施例中步骤303的详细描述,此处不再赘述。
221.可选地,作为一个实施例,当所述第二过零点与所述第一过零点相同时,所述第二过零点的过零点计数值与所述第一过零点的过零点计数值相同。具体实现方式请参见图2所示实施例中步骤203的详细描述,以及图3所示实施例中步骤303的详细描述,此处不再赘述。
222.可选地,作为一个实施例,所述网络设备600还包括:校准单元603,用于在所述接收单元601接收所述头端节点在第一定时时间到达时发送的第一信息之后,根据所述第一过零点的时间戳对本地时间进行校准。具体实现方式请参见图3所示实施例中步骤304的详细描述,此处不再赘述。
223.可选地,作为一个实施例,所述第一尾端节点与终端设备连接,所述网络设备600还包括:生成单元604,用于在所述确定单元602根据所述第一过零点的时间戳确定所述第二过零点的过零点时间之后,根据所述第二过零点的过零点时间生成电压过零点的数据,所述电压过零点的数据包括电压过零点的过零点时间;发送单元605,用于在第二定时时间到达时,向所述终端设备发送第二信息,所述第二信息包括第三过零点的时间戳,所述第三过零点的时间戳是所述生成单元604生成的所述电压过零点的过零点时间中与所述第二定时时间的时间间隔最小的过零点时间,所述第三过零点的时间戳用于所述终端设备确定第四过零点的过零点时间。具体实现方式请参见图3所示实施例中步骤310-步骤311的详细描
述,此处不再赘述。
224.可选地,作为一个实施例,所述电压过零点的数据还包括电压过零点的过零点计数值,所述第二信息还包括所述第三过零点的过零点计数值,所述第三过零点的过零点计数值用于所述终端设备确定所述第四过零点的过零点计数值。具体实现方式请参见图3所示实施例中步骤311的详细描述,此处不再赘述。
225.可选地,作为一个实施例,所述第三过零点的时间戳还用于所述终端设备对本地时间进行校准。
226.可选地,作为一个实施例,所述发送单元605,还用于在第三定时时间到达时,向第二尾端节点发送第三信息,所述第三信息包括第五过零点的时间戳,所述第五过零点的时间戳是所述生成单元604生成的所述电压过零点的过零点时间中,与所述第三定时时间的时间间隔最小的过零点时间,所述第五过零点的时间戳用于所述第二尾端节点确定第六过零点的过零点时间。具体实现方式请参见图3所示实施例中步骤307-步骤308的详细描述,此处不再赘述。
227.可选地,作为一个实施例,所述第三信息还包括所述第五过零点的过零点计数值,所述第五过零点的过零点计数值用于所述第二尾端节点确定所述第六过零点的过零点计数值。具体实现方式请参见图3所示实施例中步骤308的详细描述,此处不再赘述。
228.应理解,上述实施例中的确定单元602、校准单元603和生成单元604可以由处理器或处理器相关电路组件实现,上述实施例中的接收单元601和发送单元605可以由收发器或收发器相关电路组件实现。
229.此外,所述接收单元601、确定单元602、校准单元603、生成单元604和发送单元605可以为软件功能单元,即通过软件实现上面所描述的这些单元的动能步骤,在这种情况下,这些软件单元可以是存储在图4所示实施例中的存储器420中的软件代码,当处理器410读取存储器420中的软件代码时,执行图4所示实施例中处理器的功能。具体参见图4中的处理器410的详细描述,这里不再赘述。
230.本技术实施例还提供一种plc装置,如图7所示。该plc装置70包括:发送器701a、接收器701b、处理器702、存储器703和总线系统704;
231.其中,存储器703,用于存放程序。具体地,程序可以包括程序代码,程序代码包括计算机操作指令。存储器703可能为随机存取存储器(random access memory,ram),也可能为非易失性存储器(non-volatile memory),例如至少一个磁盘存储器。图中仅示出了一个存储器,当然,存储器也可以根据需要,设置为多个。存储器703也可以是处理器702中的存储器。
232.存储器703存储了如下的元素,可执行模块或者数据结构,或者它们的子集,或者它们的扩展集:
233.操作指令:包括各种操作指令,用于实现各种操作。
234.操作系统:包括各种系统程序,用于实现各种基础业务或者处理基于硬件的任务。
235.处理器702控制plc装置70的操作,处理器702可以是中央处理单元(central processing unit,cpu)。具体的应用中,plc装置70的各个组件通过总线系统704耦合在一起,其中总线系统704除包括数据总线之外,还可以包括电源总线、控制总线和状态信号总线等。但是为了清楚说明起见,在图中将各种总线都标为总线系统704。为便于表示,图7中
仅是示意性画出。
236.上述本技术实施例揭示的方法可以应用于处理器702中,或者由处理器702实现。
237.处理器702可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器702中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器702可以是通用处理器、数字信号处理器(dsp)、专用集成电路(asic)、现场可编程门阵列(fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本技术实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本技术实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器703,处理器702读取存储器703中的信息,结合其硬件执行以上头端节点或尾端节点所执行的方法步骤。
238.在一些实现方式中,所述处理器702用于读取所述存储器703中的信息以实现前述有关头端节点的方面及其任意实现方式提供的方法。具体地,处理器702用于执行上述实施例中生成单元501、获取单元503执行的操作。
239.对应地,发送器701a、接收器701b,分别用于发送和接收数据。具体地,发送器701a,用于执行上述实施例中发送单元502执行的操作。
240.在另一些实现方式中,所述处理器702还可以用于读取所述存储器703中的信息以实现前述有尾端节点的方面及其任意实现方式提供的方法。具体地,处理器702用于执行上述实施例中确定单元602、校准单元603、生成单元604执行的操作。
241.对应地,发送器701a和接收器701b,分别用于发送和接收数据。具体地,发送器701a,用于执行上述实施例中发送单元605执行的操作,接收器701b,用于执行上述实施例中接收单元601执行的操作。
242.可选地,当本技术实施例中通过在头端节点或尾端节点中添加电压过零检测电路实现对于电压过零点的检测时,该电压过零检测电路可以位于处理器702的内部,也可以是位于plc装置中处理器702的外部,本技术实施例对电压过零检测电路的位置不作具体的限定。
243.本技术实施例的plc装置70可对应于本技术实施例的时间同步方法中的头端节点或尾端节点,并且plc装置70中的各个模块的操作和/或功能分别为了实现图1至图3中与头端节点有关的各个方法的相应流程,或者plc装置70中的各个模块的操作和/或功能分别为了实现图1至图3中与尾端节点有关的各个方法的相应流程,为了简洁,在此不再赘述。
244.如图8所示,本技术实施例还提供一种终端设备80。该终端设备80应用于plc网络,所述plc网络包括头端节点和与所述头端节点连接的至少一个尾端节点。终端设备80可以是上述图1-图3中的终端设备。该终端设备80包括处理器810,存储器820与收发器830,其中,存储器820中存储指令或程序,处理器810用于执行存储器820中存储的指令或程序。收发器830,用于与其他设备或通信网络通信。
245.处理器810可以是一个通用中央处理器(central processing unit,cpu),微处理器,特定应用集成电路(application-specific integrated circuit,服务器ic),或一个
或多个用于控制本技术方案程序执行的集成电路。
246.存储器820可以是只读存储器(read-only memory,rom)或可存储静态信息和指令的其他类型的静态存储设备,随机存取存储器(random access memory,ram)或者可存储信息和指令的其他类型的动态存储设备,也可以是电可擦可编程只读存储器(electrically er服务器able programmable read-only memory,eeprom)、只读光盘(compact disc read-only memory,cd-rom)或其他光盘存储、光碟存储(包括压缩光碟、激光碟、光碟、数字通用光碟、蓝光光碟等)、磁盘存储介质或者其他磁存储设备、或者能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。存储器820可以是独立存在,通过与处理器810相连接。存储器820也可以和处理器810集成在一起。
247.其中,存储器820用于存储执行本技术方案的计算机执行指令,并由处理器810来控制执行。处理器810用于执行存储器820中存储的计算机执行指令,从而实现本技术实施例提供的时间同步方法。
248.具体地,处理器810用于:
249.接收第一节点在第一定时时间到达时发送的第一信息,所述第一信息包括第一过零点的时间戳,所述第一过零点的时间戳是所述第一节点生成的电压过零点的过零点时间中与所述第一定时时间的时间间隔最小的过零点时间;根据所述第一过零点的时间戳,确定第二过零点的时间戳。具体实现请参见图3所示实施例中步骤305-步骤306,以及步骤310-步骤311的详细描述,此处不再赘述。
250.可选的,本技术实施例中的计算机执行指令也可以称之为应用程序代码,本技术实施例对此不作具体限定。
251.本技术实施例可以根据上述方法示例对终端设备进行功能模块的划分,例如,可以对应各个功能划分各个功能模块,也可以将两个或两个以上的功能集成在一个处理模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。需要说明的是,本技术实施例中对模块的划分是示意性的,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。
252.比如,以采用集成的方式划分各个功能模块的情况下,图9示出了一种终端设备的结构示意图。该终端设备90对应于图1-图3实施例中的终端设备、第一终端设备或第二终端设备。
253.参阅图9,本技术实施例提供的终端设备90,可以包括:
254.接收单元901,用于接收第一节点在第一定时时间到达时发送的第一信息,所述第一信息包括第一过零点的时间戳,所述第一过零点的时间戳是所述第一节点生成的电压过零点的过零点时间中与所述第一定时时间的时间间隔最小的过零点时间。具体实现方式请参见图3所示实施例中步骤305或步骤310的详细描述,此处不再赘述。
255.确定单元902,用于根据所述接收单元901接收的所述信息中的所述第一过零点的时间戳,确定第二过零点的时间戳。具体实现方式请参见图3所示实施例中步骤306或步骤311的详细描述,此处不再赘述。
256.可选地,作为一个实施例,当所述第一节点为所述头端节点时,所述电压过零点的过零点时间是所述第一节点根据基准时间生成的。具体实现方式请参见图2所示实施例中
步骤201中的详细描述,以及图3所示实施例中步骤301中的详细描述,此处不再赘述。
257.可选地,作为一个实施例,当所述第一节点为所述尾端节点时,所述电压过零点的过零点时间是所述第一节点根据第三过零点的时间戳生成的,所述第三过零点的时间戳是第二节点在第二定时时间到达时向所述第一节点发送的,所述第三过零点的时间戳是所述第二节点生成的电压过零点的时间戳中与所述第二定时时间的时间间隔最小的过零点时间。具体实现方式请参见图3所示实施例中步骤310的详细描述,此处不再赘述。
258.可选地,作为一个实施例,所述第一信息还包括所述第一过零点的过零点计数值,所述确定单元902,还用于根据所述第一过零点的过零点计数值,确定所述第二过零点的过零点计数值。具体实现方式请参见图2所示实施例中步骤306中的详细描述,以及图3所示实施例中步骤311中的详细描述,此处不再赘述。
259.可选地,作为一个实施例,所述终端设备90还包括:校准单元903,用于在所述接收单元接收所述第一节点在所述第一定时时间到达时发送的所述第一信息之后,根据所述第一过零点的时间戳,校准本地时间。具体实现方式请参见图3所示实施例中步骤304以及步骤309中的详细描述,此处不再赘述。
260.应理解,上述实施例中的确定单元902和校准单元903可以由处理器或处理器相关电路组件实现,上述实施例中的接收单元901可以由收发器或收发器相关电路组件实现。
261.此外,所述确定单元902、校准单元903和接收单元901可以为软件功能单元,即通过软件实现上面所描述的这些单元的动能步骤,在这种情况下,这些软件单元可以是存储在图8所示实施例中的存储器820中的软件代码,当处理器810读取存储器820中的软件代码时,执行图8所示实施例中处理器的功能。具体参见图8中的处理器810的详细描述,这里不再赘述。
262.可选的,本技术实施例提供了一种芯片系统,该芯片系统包括处理器,用于支持头端节点实现上述时间同步方法。在一种可能的设计中,该芯片系统还包括存储器。该存储器,用于保存头端节点必要的程序指令和数据。该芯片系统,可以由芯片构成,也可以包含芯片和其他分立器件,例如,调制和编解码的phy、数模转换模块等,本技术实施例对此不作具体限定。需要说明的是,该存储器可以位于芯片系统之外,芯片系统处理器与该芯片外的存储设备交互,执行头端节点的同步方法,具体实现过程,请参考图2所示实施例中步骤201-步骤202的详细描述,以及图3所示实施例中步骤301、步骤302以及步骤305中的详细描述,此处不再赘述。
263.可选的,本技术实施例提供了一种芯片系统,该芯片系统包括处理器,用于支持尾端节点实现上述时间同步方法。在一种可能的设计中,该芯片系统还包括存储器。该存储器,用于保存尾端节点必要的程序指令和数据。该芯片系统,可以由芯片构成,也可以包含芯片和其他分立器件,例如,调制和编解码的phy、数模转换模块等,本技术实施例对此不作具体限定。需要说明的是,该存储器可以位于芯片系统之外,芯片系统处理器与该芯片外的存储设备交互,执行尾端节点的同步方法,具体实现过程,请参考图2所示实施例中步骤203的详细描述,以及图3所示实施例中步骤303、步骤304、步骤307以及步骤310中的详细描述,此处不再赘述。
264.可选的,本技术实施例提供了一种芯片系统,该芯片系统包括处理器,用于支持终端设备实现上述时间同步方法。在一种可能的设计中,该芯片系统还包括存储器。该存储
器,用于保存终端设备必要的程序指令和数据。该芯片系统,可以由芯片构成,也可以包含芯片和其他分立器件,例如,调制和编解码的phy、数模转换模块等,本技术实施例对此不作具体限定。需要说明的是,该存储器可以位于芯片系统之外,芯片系统处理器与该芯片外的存储设备交互,执行尾端节点的同步方法,具体实现过程,请参考图3所示实施例中步骤306以及311中的详细描述,此处不再赘述。
265.本技术还提供一种plc通信系统,其包括前述的头端节点、一个或多个与头端节点连接的尾端节点。可选地,该plc通信系统还可以包含一个或多个前述的终端设备。其中,本实施例中的头端节点,尾端节点,以及终端设备可以是上述图1-9中描述的头端节点,尾端节点,以及终端设备。
266.在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。
267.该计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本技术实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(dsl))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存储的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,dvd)、或者半导体介质(例如固态硬盘solid state disk(ssd))等。
268.需要说明的是,当处理器为通用处理器、dsp、asic、fpga或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件时,存储器(存储模块)集成在处理器中。
269.应理解,在本技术的各种实施例中,上述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本技术实施例的实施过程构成任何限定。
270.本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本技术的范围。
271.所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
272.在本技术所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
273.所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本技术的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本技术各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(read-only memory,rom)、随机存取存储器(random access memory,ram)、磁碟或者光盘等各种可以存储程序代码的介质。
274.以上对本技术实施例所提供的时间同步方法、装置及存储介质进行了详细介绍,本文中应用了具体个例对本技术的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本技术的方法及其核心思想;同时,对于本领域的一般技术人员,依据本技术的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本技术的限制。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献