一種基于分布式控制系統(tǒng)的時鐘同步方法
【專利摘要】本發(fā)明公開了一種基于分布式控制系統(tǒng)的時鐘同步方法,具體該時鐘同步方法包括:S1獲取主站時鐘與參考時鐘之間的時鐘偏移量;S2獲取參考時鐘與主站時鐘之間的初始運行速度比值;S3基于步驟S2中得到的初始運行速度比值得到主站時鐘與參考時鐘之間的傳輸延遲;S4基于步驟S1中得到的時鐘偏移量和步驟S3中得到的傳輸延遲對各從站時間進行補償;S5分別獲取各從站的從站時間在同步模式下的起始時間;S6采用時鐘頻率跟隨的方法實現(xiàn)時鐘同步。其可在一個時鐘同步周期內(nèi)完成對時鐘偏移和主站時鐘漂移的補償,有效避免了其他時鐘同步方法(如PI控制器)中由超調(diào)量過大和/或穩(wěn)定時間的不確定性對系統(tǒng)性能的影響。
【專利說明】
一種基于分布式控制系統(tǒng)的時鐘同步方法
技術(shù)領(lǐng)域
[0001] 本發(fā)明涉及智能運動控制技術(shù)領(lǐng)域,特別涉及一種基于分布式運動控制系統(tǒng)的時 鐘同步方法。
【背景技術(shù)】
[0002] 分布式運動控制系統(tǒng)中,時鐘同步是保證控制器主模塊與各執(zhí)行節(jié)點端之間、及 各節(jié)點之間協(xié)調(diào)工作的基礎(chǔ)。尤其是在對速度、精度、多軸同步性等方面要求較高的運動控 制領(lǐng)域中,簡便快速的時鐘同步方法是保證控制系統(tǒng)性能的關(guān)鍵因素。
[0003] 目前,時鐘同步協(xié)議有多種,如NTP(Network Time Protocol,網(wǎng)絡(luò)時間協(xié)議)、 GPS、IEEE1588精準時鐘同步協(xié)議、EtherCAT分布時鐘協(xié)議、PR0FINET采用的PTCP協(xié)議以及 CIP(通用工業(yè)協(xié)議)采用的CIPsyn協(xié)議。雖然針對不同的網(wǎng)絡(luò)標準有不同的網(wǎng)路協(xié)議,但同 步的原理基本相同。
[0004] -般來說,影響時鐘同步效果的因素分為三部分:(1)參考時鐘的穩(wěn)定性、(2)傳輸 延遲的準確性、(3)對主站時鐘運行速度的調(diào)整。導(dǎo)致時鐘不同的根本原因在于時鐘漂移和 時鐘偏差,因此快速準確地對時鐘漂移和時鐘偏差進行補償是主站時鐘速度調(diào)整追求的目 標。
【發(fā)明內(nèi)容】
[0005] 針對上述問題,本發(fā)明提供了一種基于分布式控制系統(tǒng)的時鐘同步方法,有效解 決了對時鐘偏移和主站時鐘漂移的快速補償。
[0006] 本發(fā)明提供的技術(shù)方案如下:
[0007] -種基于分布式控制系統(tǒng)的時鐘同步方法,該分布式控制系統(tǒng)中包括一主站和多 個從站,所述時鐘同步方法包括:
[0008] S1獲取主站時鐘與參考時鐘之間的時鐘偏移量;
[0009] S2獲取參考時鐘與主站時鐘之間的初始運行速度比值;
[0010] S3基于步驟S2中得到的初始運行速度比值得到主站時鐘與參考時鐘之間的傳輸 延遲;
[0011] S4基于步驟S1中得到的時鐘偏移量和步驟S3中得到的傳輸延遲對各從站時間進 行補償。
[0012] 進一步優(yōu)選地,在步驟S2中具體包括:
[0013] 通過線性擬合的方法和周期性采集到的參考時鐘的時間戳得到參考時鐘運行速 度與主站時鐘運行速度之間的初始運行速度比值。
[0014] 進一步優(yōu)選地,在步驟S3中具體包括:
[0015] S31記錄參考時鐘廣播當前參考時鐘的時刻t及參考時鐘接收主站時鐘應(yīng)答數(shù)據(jù) 幀的時刻t',同時記錄主站時鐘接收當前參考時鐘的時刻t及主站時鐘發(fā)送應(yīng)答數(shù)據(jù)幀的 時刻t';
[0016] S32分別得到主站時鐘的時間差均值A(chǔ) t和參考時鐘的時間差均值A(chǔ) t ;
[0017] S33基于步驟S2中得到的初始運行速度比值以及步驟S32中得到的主站時鐘的時 間差均值△ t和參考時鐘的時間差均值A(chǔ) t得到主站時鐘與參考時鐘之間的傳輸延遲 Delay〇
[0018]進一步優(yōu)選地,在步驟S33中所述傳輸延遲Delay具體為:
[0019] Delay = ( A x-Ko A t)/2
[0020] 其中,A t為主站時鐘的時間差均值,A t為參考時鐘的時間差均值,Ko為初始運行 速度比值。
[0021] 進一步優(yōu)選地,在步驟S4之后還包括:
[0022] S5分別獲取各從站的從站時間在同步模式下的起始時間;
[0023] S6采用時鐘頻率跟隨的方法實現(xiàn)時鐘同步。
[0024]進一步優(yōu)選地,在步驟S6中具體包括:
[0025] S6.1周期性的獲取參考時鐘的時刻;
[0026] S6.2基于預(yù)設(shè)的主站時鐘的時間間隔得到參考時鐘相對應(yīng)的時鐘間隔,并計算得 多次累計參考時鐘對應(yīng)時間間隔的平均值,以此得到參考時鐘和主站時鐘運之間的運行速 度比值;
[0027] S6.3基于當前同步時刻的時鐘偏移量和步驟S6.2中得到的運行速度比值得到主 站時鐘下一周期的理論運行速度;
[0028] S6.4基于步驟S6.3中得到的理論運行速度以及預(yù)設(shè)主站時鐘運行速度閾值確定 主站時鐘下一周期的實際運行速度,實現(xiàn)對主站時鐘運行速度的調(diào)整。
[0029] 進一步優(yōu)選地,在步驟S6.3中理論運行速度a ' i( i+1)具體為:
[0030] a,i(i+l) = (l+T〇ffset/T)Kiai(i)
[0031] 其中,Toffset為時鐘偏移量,T為參考時鐘的時鐘周期,Ki為運行速度比值,ai(i)為 主站時鐘當前實際運行速度。
[0032] 進一步優(yōu)選地,在步驟S6.3之后還包括:
[0033]截斷誤差補償。
[0034] 進一步優(yōu)選地,在步驟S4之后還包括:
[0035] S7設(shè)定一虛擬時鐘;
[0036] S8基于所述虛擬時鐘調(diào)整主站中本地事件的觸發(fā)時間。
[0037] 進一步優(yōu)選地,在步驟S8中調(diào)整后主站中本地事假的觸發(fā)時間K具體為:
[0039] 其中,tn為第n次時鐘同步時主站時鐘的實際時刻,Tn為第n次時鐘同步時虛擬時鐘 的時刻,&1(11+1)為第n次時鐘同步周期主站時鐘的實際運行速度,r為調(diào)整前主站中本地 事假的觸發(fā)時間。
[0040] 本發(fā)明的有益效果在于:
[00411在本發(fā)明中,在保證主站設(shè)備(主站)正常運行的情況下,可在一個時鐘同步周期 內(nèi)完成對時鐘偏移和主站時鐘漂移的補償,有效避免了其他時鐘同步方法(如PID控制器) 中由超調(diào)量過大和/或穩(wěn)定時間的不確定性對系統(tǒng)性能的影響。另外,在本發(fā)明中提供的時 鐘同步方法中,能夠準確快速的跟蹤參考時鐘的運行頻率,并采用了頻率跟隨的方法實現(xiàn) 時鐘的快速時鐘,不需要復(fù)雜的自適應(yīng)控制算法,方法簡單易行。
[0042]再有,在本發(fā)明中提供的時鐘同步方法中,還可以在本地系統(tǒng)沒有權(quán)限直接控制 主站時鐘運行速度的情況下實現(xiàn)與參考時鐘的相對時鐘同步,保證系統(tǒng)的協(xié)調(diào)運行。
【附圖說明】
[0043 ]下面結(jié)合附圖和【具體實施方式】對本發(fā)明作進一步詳細地解釋。
[0044] 圖1為本發(fā)明中基于分布式控制系統(tǒng)的時鐘同步方法一種實施方式流程示意圖;
[0045] 圖2為本發(fā)明中基于分布式控制系統(tǒng)的時鐘同步方法另一種實施方式流程示意 圖;
[0046] 圖3為本發(fā)明中基于分布式控制系統(tǒng)的時鐘同步方法另一種實施方式流程示意 圖。
【具體實施方式】
[0047] 如圖1所示為本發(fā)明提供的基于分布式控制系統(tǒng)的時鐘同步方法一種實施方式流 程示意圖,該分布式控制系統(tǒng)中包括一主站和多個從站,從圖中可以看出,在該時鐘同步方 法包括:S1獲取主站時鐘與參考時鐘之間的時鐘偏移量;S2獲取參考時鐘與主站時鐘之間 的初始運行速度比值;S3基于步驟S2中得到的初始運行速度比值得到主站時鐘與參考時鐘 之間的傳輸延遲;S4基于步驟S1中得到的時鐘偏移量和步驟S3中得到的傳輸延遲對各從站 時間進行補償。
[0048] 具體,在本實施方式中,在步驟S1之前包括:啟動主站設(shè)備,設(shè)定一固定周期定時 線程(用于非周期信息的交互)和一可變周期定時線程(用于對同步性能要求高的過程數(shù)據(jù) 的交互)。之后,進入系統(tǒng)的預(yù)運行階段,分別獲取主站時鐘/各從站時鐘與參考時鐘之間的 時鐘偏移量,以及通過線性擬合的方式根據(jù)周期性采集到的參考時鐘的時間戳計算得到參 考時鐘與主站時鐘運行頻率的比值(即上述初始運行速度比值)。
[0049] 隨后,進入系統(tǒng)的安全運行階段,即進入上述步驟S3。具體在步驟S3中包括:參考 時鐘階段性的廣播當前參考時鐘的時刻(Tl,T2,......,Tn);主站時鐘記錄接收到參考時鐘 時間戳的時刻(ti,t2,......,tn);接收到參考時鐘時間戳后,主站時鐘應(yīng)答數(shù)據(jù)幀,并記錄 當前的發(fā)送時刻(ti',t2',......,tn');參考時鐘接收到主站時鐘的應(yīng)答數(shù)據(jù)幀后,記錄當 前的接收時刻(Ti',12'......,Tn'),并將其發(fā)送給主站時鐘。之后,主站設(shè)備分別計算主站 時鐘的時間差的均值A(chǔ) t及參考時鐘的時間差的均值A(chǔ) t,并基于根據(jù)公式Delay=( A t-Ko A t)/2計算得到主站時鐘與參考時鐘之間的傳輸延遲Delay,其中,Ko為初始運行速度比 值。之后,以參考時鐘為基準時鐘,基于步驟S1中得到的時鐘偏移量和步驟S3中得到的傳輸 延遲對各從站時間進行補償。
[0050] 對上述實施方式進行改進得到本實施方式,如圖2所示,在本實施方式中包括:S1 獲取主站時鐘與參考時鐘之間的時鐘偏移量;S2獲取參考時鐘與主站時鐘之間的初始運行 速度比值;S3基于步驟S2中得到的初始運行速度比值得到主站時鐘與參考時鐘之間的傳輸 延遲;S4基于步驟S1中得到的時鐘偏移量和步驟S3中得到的傳輸延遲對各從站時間進行補 償;S5分別獲取各從站的從站時間在同步模式下的起始時間;S6采用時鐘頻率跟隨的方法 實現(xiàn)時鐘同步。
[0051 ]具體來說,在本實施方式中,步驟S1~S4與上述實施方式相同。在步驟S6中具體包 括:參考時鐘周期性(周期時間為T)的廣播其當前時刻(^),主站時鐘接收并記錄接收到參 考時鐘時間戳的時刻(U)。設(shè)置長度為L的滑動窗,通過線性擬合的方法估算L個時鐘同步 周期內(nèi)的參考時鐘與主站時鐘之間的運行速度比值(K0。記錄當前時鐘同步時刻,參考時 鐘與主站時鐘的時鐘偏移量Toffset,并根據(jù)公式a'i(i + 1) = (l+Toffset/I^KiaKi)(其中,ai (i)為主站時鐘當前實際運行速度)計算主站時鐘下一周期的理論運行速度a'Ki + 1)。之 后,截斷誤差補償。最后,設(shè)定主站時鐘運行速度的可調(diào)范圍Amin~Amax確定主站時鐘下一周 期的實際運行速度,具體實際運行速度a^n+1)為:
[0053] 具體,為確保主站設(shè)備能夠有序的運行,主站時鐘運行速度的可調(diào)范圍的最小值 Amin至少大于0 ;最大值A(chǔ)mx也不能過大,否則會影響主站時鐘的時鐘分辨率。
[0054] 對上述實施方式進行改進得到本實施方式,如圖3所示,在本實施方式中具體包 括:S1獲取主站時鐘與參考時鐘之間的時鐘偏移量;S2獲取參考時鐘與主站時鐘之間的初 始運行速度比值;S3基于步驟S2中得到的初始運行速度比值得到主站時鐘與參考時鐘之間 的傳輸延遲;S4基于步驟S1中得到的時鐘偏移量和步驟S3中得到的傳輸延遲對各從站時間 進行補償;S7設(shè)定一虛擬時鐘;S8基于虛擬時鐘調(diào)整主站中本地事件的觸發(fā)時間。
[0055]更具體來說,在本實施方式中,步驟S1~S4與上述實施方式相同。在步驟S7和步驟 S8中具體包括:設(shè)定一虛擬時鐘(不作為本地事件的觸發(fā)時鐘),改虛擬時鐘的初始時間為 〇,初始速度為主站時鐘當前的運行速度。由本地事件的觸發(fā)依賴于主站時鐘,則調(diào)整后主 站中本地事假的觸發(fā)時間K具體為:
[0057] 其中,tn為第n次時鐘同步時主站時鐘的實際時刻,Tn為第n次時鐘同步時虛擬時鐘 的時刻,&1(11+1)為第n次時鐘同步周期主站時鐘的實際運行速度,r為調(diào)整前主站中本地 事假的觸發(fā)時間。這樣,對于沒有權(quán)限直接調(diào)整主站時鐘運行速度或?qū)χ髡緯r鐘加數(shù)值的 本地系統(tǒng),就能通過步驟S7和步驟S7中所述的機制對主站中觸發(fā)本地事件的觸發(fā)時間進行 調(diào)整,實現(xiàn)時鐘同步的目的。
【主權(quán)項】
1. 一種基于分布式控制系統(tǒng)的時鐘同步方法,其特征在于,所述分布式控制系統(tǒng)中包 括一主站和多個從站,所述時鐘同步方法包括: S1獲取主站時鐘與參考時鐘之間的時鐘偏移量; S2獲取參考時鐘與主站時鐘之間的初始運行速度比值; S3基于步驟S2中得到的初始運行速度比值得到主站時鐘與參考時鐘之間的傳輸延遲; S4基于步驟S1中得到的時鐘偏移量和步驟S3中得到的傳輸延遲對各從站時間進行補 償。2. 如權(quán)利要求1所述的時鐘同步方法,其特征在于,在步驟S2中具體包括: 通過線性擬合的方法和周期性采集到的參考時鐘的時間戳得到參考時鐘運行速度與 主站時鐘運行速度之間的初始運行速度比值。3. 如權(quán)利要求1所述的時鐘同步方法,其特征在于,在步驟S3中具體包括: S31記錄參考時鐘廣播當前參考時鐘的時刻τ及參考時鐘接收主站時鐘應(yīng)答數(shù)據(jù)幀的 時刻τ',同時記錄主站時鐘接收當前參考時鐘的時刻t及主站時鐘發(fā)送應(yīng)答數(shù)據(jù)幀的時刻 t' ; S32分別得到主站時鐘的時間差均值△ t和參考時鐘的時間差均值Δ τ; S33基于步驟S2中得到的初始運行速度比值以及步驟S32中得到的主站時鐘的時間差 均值△ t和參考時鐘的時間差均值△ τ得到主站時鐘與參考時鐘之間的傳輸延遲Delay。4. 如權(quán)利要求3所述的時鐘同步方法,其特征在于,在步驟S33中所述傳輸延遲De lay具 體為: Delay= ( Δ τ-Κο Δ t)/2 其中,△ t為主站時鐘的時間差均值,△ τ為參考時鐘的時間差均值,Ko為初始運行速度 比值。5. 如權(quán)利要求1-4任意一項所述的時鐘同步方法,其特征在于,在步驟S4之后還包括: S5分別獲取各從站的從站時間在同步模式下的起始時間; S6采用時鐘頻率跟隨的方法實現(xiàn)時鐘同步。6. 如權(quán)利要求5所述的時鐘同步方法,其特征在于,在步驟S6中具體包括: S6.1周期性的獲取參考時鐘的時刻; S6.2基于預(yù)設(shè)的主站時鐘的時間間隔得到參考時鐘相對應(yīng)的時鐘間隔,并計算得多次 累計參考時鐘對應(yīng)時間間隔的平均值,以此得到參考時鐘和主站時鐘運之間的運行速度比 值; S6.3基于當前同步時刻的時鐘偏移量和步驟S6.2中得到的運行速度比值得到主站時 鐘下一周期的理論運行速度; S6.4基于步驟S6.3中得到的理論運行速度以及預(yù)設(shè)主站時鐘運行速度閾值確定主站 時鐘下一周期的實際運行速度,實現(xiàn)對主站時鐘運行速度的調(diào)整。7. 如權(quán)利要求6所述的時鐘同步方法,其特征在于,在步驟S6.3中理論運行速度a'Ki+ 1)具體為: a' 1 (i+1) = (l+T〇ffset/T)Kiai( i) 其中,IWfset為時鐘偏移量,T為參考時鐘的時鐘周期,Ki為運行速度比值,ai(i)為主站 時鐘當前實際運行速度。8. 如權(quán)利要求5或6所述的時鐘同步方法,其特征在于,在步驟S6.3之后還包括: 截斷誤差補償。9. 如權(quán)利要求1-4任意一項所述的時鐘同步方法,其特征在于,在步驟S4之后還包括: S7設(shè)定一虛擬時鐘; S8基于所述虛擬時鐘調(diào)整主站中本地事件的觸發(fā)時間。10. 如權(quán)利要求9所述的時鐘同步方法,其特征在于,在步驟S8中調(diào)整后主站中本地事 假的觸發(fā)時間K具體為:其中,tn為第η次時鐘同步時主站時鐘的實際時刻,τη為第η次時鐘同步時虛擬時鐘的時 刻,ai(n+l)為第η次時鐘同步周期主站時鐘的實際運行速度,Γ為調(diào)整前主站中本地事假 的觸發(fā)時間。
【文檔編號】H04J3/06GK105959079SQ201610554109
【公開日】2016年9月21日
【申請日】2016年7月14日
【發(fā)明人】陳鑫, 周楠, 吳杰文, 唐浩, 陳日東, 黃昕
【申請人】深圳市旗眾智能自動化有限公司