CN115021853A - 一种基于pid的主从设备间的时钟同步方法 - Google Patents
一种基于pid的主从设备间的时钟同步方法 Download PDFInfo
- Publication number
- CN115021853A CN115021853A CN202210651805.7A CN202210651805A CN115021853A CN 115021853 A CN115021853 A CN 115021853A CN 202210651805 A CN202210651805 A CN 202210651805A CN 115021853 A CN115021853 A CN 115021853A
- Authority
- CN
- China
- Prior art keywords
- clock
- slave
- master
- frequency
- voltage
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 25
- 230000001360 synchronised effect Effects 0.000 claims abstract description 13
- 239000013078 crystal Substances 0.000 claims description 40
- 230000004044 response Effects 0.000 claims description 9
- 238000010586 diagram Methods 0.000 description 8
- 230000008569 process Effects 0.000 description 6
- 238000004422 calculation algorithm Methods 0.000 description 5
- 238000004590 computer program Methods 0.000 description 5
- 230000006870 function Effects 0.000 description 5
- 238000012986 modification Methods 0.000 description 5
- 230000004048 modification Effects 0.000 description 5
- 238000004364 calculation method Methods 0.000 description 3
- 238000004519 manufacturing process Methods 0.000 description 2
- 230000002159 abnormal effect Effects 0.000 description 1
- 230000004075 alteration Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000007812 deficiency Effects 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 230000003203 everyday effect Effects 0.000 description 1
- 238000002474 experimental method Methods 0.000 description 1
- 238000003672 processing method Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04J—MULTIPLEX COMMUNICATION
- H04J3/00—Time-division multiplex systems
- H04J3/02—Details
- H04J3/06—Synchronising arrangements
- H04J3/0635—Clock or time synchronisation in a network
- H04J3/0638—Clock or time synchronisation among nodes; Internode synchronisation
- H04J3/0658—Clock or time synchronisation among packet nodes
- H04J3/0661—Clock or time synchronisation among packet nodes using timestamps
- H04J3/0667—Bidirectional timestamps, e.g. NTP or PTP for compensation of clock drift and for compensation of propagation delays
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Synchronisation In Digital Transmission Systems (AREA)
Abstract
本发明公开一种基于PID的主从设备间的同步方法,包括如下步骤:采用1588v2协议计算出第m次确定从时钟与主时钟之间的基准时钟偏差E(m);从设备初始化后,根据下一次的基准时钟偏差和第1次的基准时钟偏差的差值计算出从设备与主设备的当前时刻下的当前次的时钟偏差;按相应公式计算出当前时刻下第k次用于调节PWM占空比的调节控制量u(k),根据调节控制量u(k)调整第k次所对应的当前时刻下的PWM信号的占空比,从而调节从设备的从时钟的频率,使得从时钟的频率与主时钟的频率保持同步。本发明能够很好地在主从设备间进行时钟同步,同步精度误差小。
Description
技术领域
本发明涉及时钟同步技术领域,具体涉及一种基于PID的主从设备间的时钟同步方法。
背景技术
对于音频***来说,通常会存在多台设备,每天设备上均安装有用于产生时钟的晶振,但因为生产晶振工艺或所处工作环境等问题,晶振频率或多或少都存在频率误差,通常或多或少存在±20ppm的频率误差。特别是对于长时间的音频传输中,因存在时钟不同步而导致设备之间出现延时,进而会导致整个音频***同步性能越来越差,从而导致设备间无法同步播放音频,随着同步误差不断积累,甚至会出现杂音、爆音或其他音频异常播放问题,为此需要较好的时钟同步方法。
现有音频***中的时钟同步处理,通常是在主设备(例如作为声音源端的话筒)向从设备(例如作为播放音源的设备功放音响)提供时钟,该时钟用晶振产生,该时钟作为播放音频用的音频时钟。但这样的时钟依然完全取决于晶振,仍然存在不同设备之间的音频时钟不同步的问题,为此需要能够提供更好的时钟同步处理方法。
发明内容
针对现有技术的不足,本发明的目的提供一种基于PID的主从设备间的同步方法,其能够解决背景技术描述到的现有技术存在的问题。
实现本发明的目的的技术方案为:一种基于PID的主从设备间的同步方法,包括有且仅有一台主设备和若干台从设备,主设备安装有主时钟,每台从设备安装有从时钟,包括如下步骤:
步骤1:按公式①计算出从设备与主设备之间采用1588v2协议确定从时钟与主时钟之间的时钟偏差E(m),E(m)表示采用1588v2协议计算出第m次确定从时钟与主时钟之间的基准时钟偏差:
E(m)=[(t2-t1)+(t3-t4)]/2 ------①
式中,t1表示从设备向主设备发送同步请求的发送时刻,t2表示主设备接收到同步请求的接收时刻,t3表示向从设备发送的同步请求回应报文的发送时刻,同步请求回应报文携带有t2和t3,t4表示从设备接收到同步请求回应报文的接收时刻;
步骤2:从设备初始化后,按公式②计算出从设备与主设备的当前时刻下的第k次时钟偏差e(k):
e(k)=E(k+1)-E(1) ------②
式中,E(1)和E(k+1)也即是公式①中m分别取1和k+1时的基准时钟偏差的取值;
步骤3:按公式③计算出当前时刻下第k次用于调节PWM占空比的调节控制量u(k):
式中,K1、K2和K3为权重系数,为常数,
根据调节控制量u(k)调整第k次所对应的当前时刻下的PWM信号的占空比,从而调节从设备的从时钟的频率,使得从时钟的频率与主时钟的频率保持同步,从而实现主从设备间的时钟同步,
其中,调节控制量u(k)输入从设备的压控晶振,以调节压控晶振输出的频率,压紧晶振输出的频率作为从时钟的频率。
进一步地,时刻t1和t4是从时钟根据从设备内压控晶振输出的频率计数得到的计数值,时刻t2和t3是主时钟根据主设备内压控晶振输出的频率计数得到的计数值。
进一步地,所述时刻t1和t4是从时钟根据从设备内压控晶振输出的频率计数得到的计数值,时刻t2和t3是主时钟根据主设备内压控晶振输出的频率计数得到的计数值,其具体实现包括:
主时钟输出P%占空比的PWM信号,P为正整数,PWM信号经滤波器转换为电压信号,电压信号输入给压控晶振以控制压控晶振的输出频率MCLK,该输出频率MCLK进行计数得到的计数值作为主时钟和从时钟的时间戳,该时间戳对应t2和t3,
从时钟输出P%占空比的PWM信号,PWM信号经滤波器转换为电压信号,电压信号输入给压控晶振以控制压控晶振的输出频率MCLK,该输出频率MCLK进行计数得到的计数值作为从时钟的时间戳,该时间戳对应t1和t4。
进一步地,P=50。
本发明的有益效果为:本发明采用1588v2协议交互准确计算主从时钟偏差,且采用PID控制算法根据偏差计算控制量校准压控晶振频率实现高精度同步,能够很好地在主从设备间进行时钟同步,同步精度误差小于10us(微妙),基于该同步时钟而应用到音频***中,采用音频分析仪分析音频***下的音频同步播放的失真率稳定在0.005%左右,能够满足高要求下的同步播放。
附图说明
图1为本发明较佳实施例的流程示意图。
具体实施方式
为了使本申请的目的、技术方案和优点更加清楚,下面结合附图对本申请具体实施例作进一步的详细描述。可以理解的是,此处所描述的具体实施例仅仅用于解释本申请,而非对本申请的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本申请相关的部分而非全部内容。在更加详细地讨论示例性实施例之前应当提到的是,一些示例性实施例被描述成作为流程图描绘的处理或方法。虽然流程图将各项操作(或步骤)描述成顺序的处理,但是其中的许多操作可以被并行地、并发地或者同时实施。此外,各项操作的顺序可以被重新安排。当其操作完成时所述处理可以被终止,但是还可以具有未包括在附图中的附加步骤。所述处理可以对应于方法、函数、规程、子例程、子程序等等。
如图1所示,一种基于PID的主从设备间的同步方法,包括有且仅有一台主设备,若干台从设备,主设备安装有主时钟,每台从设备安装有从时钟,包括如下步骤:
步骤1:从设备与主设备之间采用1588v2协议确定从时钟与主时钟之间的时钟偏差E(m),E(m)表示采用1588v2协议第m次确定从时钟与主时钟之间的基准时钟偏差,基准时钟偏差E(m)按公式①计算得到:
E(m)=[(t2-t1)+(t3-t4)]/2 ------①
式中,t1表示从设备向主设备发送同步请求的发送时刻,t2表示主设备接收到同步请求的接收时刻,t3表示向从设备发送的同步请求回应报文的发送时刻,同步请求回应报文携带有t2和t3,t4表示从设备接收到同步请求回应报文的接收时刻。
其中,时刻t1至t4各自的时间值是按步骤S1得到的计数值,其中,时刻t1和t4是从时钟根据从设备内压控晶振输出的频率计数得到的计数值,时刻t2和t3是主时钟根据主设备内压控晶振输出的频率计数得到的计数值:
步骤S1:主时钟输出P%占空比的PWM信号,P为正整数,例如,50%占空比的PWM信号,PWM信号经滤波器转换为电压信号,电压信号输入给压控晶振以控制压控晶振的输出频率MCLK,该输出频率MCLK进行计数得到的计数值作为主时钟的时间戳,该时间戳对应t2和t3,
从时钟输出的PWM信号经滤波器转换的电压信号输入给从设备上的压控晶振以控制压控晶振的输出频率MCLK,从设备输出的频率MCLK的计数值作为从时钟的时间戳,
从时钟输出P%占空比的PWM信号,PWM信号经滤波器转换为电压信号,电压信号输入给压控晶振以控制压控晶振的输出频率MCLK,该输出频率MCLK进行计数得到的计数值作为从时钟的时间戳,该时间戳对应t1和t4,
主时钟和从时钟均在初始化后同步开始输出PWM信号给各自的滤波器,并经滤波器转换为电压信号后输入给各自的压控晶振。
例如,主设备的主时钟的频率为10Hz,从设备的从时钟的频率为9Hz,则在单位时间(1秒)内,主时钟的计数值为10,从时钟的计数值为9,这就说明从时钟与主时钟的频率不同,为此,需要将从时钟的频率调整到与主时钟相同的频率上。当累进到第二个频率周期后,主时钟的计数值为20,从时钟的计数值为18,因此,可以根据主从时钟的频率进行计数得到类似与真实时间一样的计数值,该计数值可以作为时间戳。
步骤2:从设备初始化后,按公式②计算出从设备与主设备的当前时刻下的第k次时钟偏差e(k):
e(k)=E(k+1)-E(1) ------②
式中,E(1)和E(k+1)也即是公式①中m分别取1和k+1时的基准时钟偏差的取值,也即是采用1588v2协议第1次确定从时钟与主时钟之间的基准时钟偏差,采用1588v2协议第k+1次确定从时钟与主时钟之间的基准时钟偏差。
从公式②来看,计算当前时刻下的第k次时钟偏差是根据下一次的时钟偏差和初始(第一次)的时钟偏差之间的差值作为本次的时钟偏差。
步骤3:按公式③计算出当前时刻下第k次用于调节PWM占空比的调节控制量u(k):
根据调节控制量u(k)调整第k次所对应的当前时刻下的PWM信号的占空比,从而调节从设备的从时钟的频率,从时钟的频率作为音频芯片的音频时钟,使得从时钟的频率与主时钟的频率保持同步,从而实现了主从设备间的时钟同步,当主设备时钟同步后,主从设备所构成的音频***即可同步播放音频。通过按时间依次计算得到不同次数(即K值不同)的调节控制量u(k),从而可以实时动态地调整从时钟的频率,维持从时钟的频率始终与主时钟的频率同步。
其中,从设备初始化状态下,默认按与主设备初始化相同占空比的PWM信号输出到从设备的压控晶振,后续,从设备根据调节控制量u(k)调整PWM信号的占空比,从而调整压控晶振输出的频率,从而维持经压控晶振输出后的频率保持与主时钟同步。
在上述公式③中,其对应为PID控制算法,PID算法包括比例项、积分项和微分项,如下公式:
在该公式中,第一项即是比例项,第二项是积分项,第三项是微分项,kp表示权重系数,为了方便计算和实际应用,该公式转换为离散型的公式,如下:
将每一项前面的系数设为新的一个系数后,可简化为:
将系数用公式③表示的表示即可得到公式③,因此,公式③是基于PID调节控制量u(k),因此,本发明也是基于PID来实现时钟同步的。
本发明采用1588v2协议交互准确计算主从时钟偏差,且采用PID控制算法根据偏差计算控制量校准压控晶振频率实现高精度同步,能够很好地在主从设备间进行时钟同步,同步精度误差小于10us(微妙),基于该同步时钟而应用到音频***中,采用音频分析仪分析音频***下的音频同步播放的失真率稳定在0.005%左右,能够满足高要求下的同步播放。
本发明可以很好地应用在电子核心产业,例如嵌入集成在高端整机产品中,使得高端整机产品中具有良好的基于时钟的同步性能,例如工业控制设备,从而使得能够更精准同步地控制。
本发明是参照根据本发明实施例的方法、设备(***)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包括这些改动和变型在内。
Claims (5)
1.一种基于PID的主从设备间的同步方法,包括有且仅有一台主设备和若干台从设备,主设备安装有主时钟,每台从设备安装有从时钟,其特征在于,包括如下步骤:
步骤1:按公式①计算出从设备与主设备之间采用1588v2协议确定从时钟与主时钟之间的时钟偏差E(m),E(m)表示采用1588v2协议计算出第m次确定从时钟与主时钟之间的基准时钟偏差:
E(m)=[(t2-t1)+(t3-t4)]/2 ------①
式中,t1表示从设备向主设备发送同步请求的发送时刻,t2表示主设备接收到同步请求的接收时刻,t3表示向从设备发送的同步请求回应报文的发送时刻,同步请求回应报文携带有t2和t3,t4表示从设备接收到同步请求回应报文的接收时刻;
步骤2:从设备初始化后,按公式②计算出从设备与主设备的当前时刻下的第k次时钟偏差e(k):
e(k)=E(k+1)-E(1) ------②
式中,E(1)和E(k+1)也即是公式①中m分别取1和k+1时的基准时钟偏差的取值;
步骤3:按公式③计算出当前时刻下第k次用于调节PWM占空比的调节控制量u(k):
式中,K1、K2和K3为权重系数,为常数,
根据调节控制量u(k)调整第k次所对应的当前时刻下的PWM信号的占空比,从而调节从设备的从时钟的频率,使得从时钟的频率与主时钟的频率保持同步,从而实现主从设备间的时钟同步,
其中,调节控制量u(k)输入从设备的压控晶振,以调节压控晶振输出的频率,压紧晶振输出的频率作为从时钟的频率。
3.根据权利要求1所的基于PID的主从设备间的同步方法,其特征在于,时刻t1和t4是从时钟根据从设备内压控晶振输出的频率计数得到的计数值,时刻t2和t3是主时钟根据主设备内压控晶振输出的频率计数得到的计数值。
4.根据权利要求3所的基于PID的主从设备间的同步方法,其特征在于,所述时刻t1和t4是从时钟根据从设备内压控晶振输出的频率计数得到的计数值,时刻t2和t3是主时钟根据主设备内压控晶振输出的频率计数得到的计数值,其具体实现包括:
主时钟输出P%占空比的PWM信号,P为正整数,PWM信号经滤波器转换为电压信号,电压信号输入给压控晶振以控制压控晶振的输出频率MCLK,该输出频率MCLK进行计数得到的计数值作为主时钟和从时钟的时间戳,该时间戳对应t2和t3,
从时钟输出P%占空比的PWM信号,PWM信号经滤波器转换为电压信号,电压信号输入给压控晶振以控制压控晶振的输出频率MCLK,该输出频率MCLK进行计数得到的计数值作为从时钟的时间戳,该时间戳对应t1和t4。
5.根据权利要求4所的基于PID的主从设备间的同步方法,其特征在于,P=50。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210651805.7A CN115021853B (zh) | 2022-06-09 | 2022-06-09 | 一种基于pid控制算法的主从设备间的时钟同步方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210651805.7A CN115021853B (zh) | 2022-06-09 | 2022-06-09 | 一种基于pid控制算法的主从设备间的时钟同步方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115021853A true CN115021853A (zh) | 2022-09-06 |
CN115021853B CN115021853B (zh) | 2023-02-28 |
Family
ID=83072347
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210651805.7A Active CN115021853B (zh) | 2022-06-09 | 2022-06-09 | 一种基于pid控制算法的主从设备间的时钟同步方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115021853B (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102769504A (zh) * | 2012-07-11 | 2012-11-07 | 中兴通讯股份有限公司 | 一种1588***及其实现同步的方法 |
CN105207767A (zh) * | 2015-10-09 | 2015-12-30 | 国网冀北电力有限公司信息通信分公司 | 一种ptp主时钟与从时钟之间频率同步的方法及装置 |
CN106656397A (zh) * | 2017-03-01 | 2017-05-10 | 广州广哈通信股份有限公司 | 时钟同步方法及装置 |
WO2019056921A1 (zh) * | 2017-09-22 | 2019-03-28 | 烽火通信科技股份有限公司 | 一种集中式1588的实现***及方法 |
-
2022
- 2022-06-09 CN CN202210651805.7A patent/CN115021853B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102769504A (zh) * | 2012-07-11 | 2012-11-07 | 中兴通讯股份有限公司 | 一种1588***及其实现同步的方法 |
CN105207767A (zh) * | 2015-10-09 | 2015-12-30 | 国网冀北电力有限公司信息通信分公司 | 一种ptp主时钟与从时钟之间频率同步的方法及装置 |
CN106656397A (zh) * | 2017-03-01 | 2017-05-10 | 广州广哈通信股份有限公司 | 时钟同步方法及装置 |
WO2019056921A1 (zh) * | 2017-09-22 | 2019-03-28 | 烽火通信科技股份有限公司 | 一种集中式1588的实现***及方法 |
Non-Patent Citations (1)
Title |
---|
张文丽: "IEEE1588高精度网络时间同步应用研究", 《硕士学位论文》 * |
Also Published As
Publication number | Publication date |
---|---|
CN115021853B (zh) | 2023-02-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7058089B2 (en) | System and method for maintaining a common sense of time on a network segment | |
CN101815177B (zh) | 同步显示装置、同步显示方法及叠加拼接显示*** | |
CN104184535B (zh) | 时钟同步方法和时钟同步装置 | |
US7940876B2 (en) | USB frequency synchronizing apparatus and method of synchronizing frequencies | |
US20070260906A1 (en) | Clock synchronization method and apparatus | |
US20080080563A1 (en) | Methods and Apparatus for Timing Synchronization in Packet Networks | |
EP3142287B1 (en) | Synchronising devices | |
EP2749968A1 (en) | Time control device, time control method, and program | |
KR20130095558A (ko) | 반도체 장치의 데이터 출력 타이밍 제어 회로 | |
CN105207767B (zh) | 一种ptp主时钟与从时钟之间频率同步的方法及装置 | |
CN110300450B (zh) | 一种利用自适应滤波器校正ieee 1588协议的时钟伺服方法 | |
US11166250B2 (en) | Time synchronization of distributed devices | |
EP2512048A2 (en) | System and method to overcome wander accumulation to achieve precision clock distribution over large networks | |
JP2014238357A (ja) | 受信装置、時刻差算出方法、およびプログラム | |
CN103812595A (zh) | 一种基于ieee1588同步机制的tps时间同步改进算法 | |
JP2010113725A (ja) | 分散型プロセス制御システムにおける予測高周波ノイズ補償 | |
CN115021853B (zh) | 一种基于pid控制算法的主从设备间的时钟同步方法 | |
CN101715627A (zh) | 频率同步 | |
US7817758B2 (en) | Apparatus and method for clock synchronization | |
CN106130711B (zh) | 基于pac控制器的ieee1588对时方法及装置 | |
CN103812591B (zh) | 一种列车通信网的时钟频率间接补偿方法 | |
CN110375596B (zh) | 一种面向协同制导仿真***的时间一致性控制方法 | |
CN102970092B (zh) | 确定时钟信号质量 | |
JP6929995B1 (ja) | データ転送回路及び通信装置 | |
CN110098885A (zh) | 一种时钟同步电路、装置及其方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CP03 | Change of name, title or address |
Address after: No. 56 Nanli East Road, Shiqi Town, Panyu District, Guangzhou City, Guangdong Province, 510000 Patentee after: Guangdong Baolun Electronics Co.,Ltd. Address before: No.19 Chuangyuan Road, Zhongcun street, Panyu District, Guangzhou, Guangdong 510000 Patentee before: GUANGZHOU ITC ELECTRONIC TECHNOLOGY Co.,Ltd. |
|
CP03 | Change of name, title or address |