基于IEEE 1588的時(shí)鐘同步技術(shù)在分布式系統(tǒng)中的應(yīng)用
以太網(wǎng)技術(shù)的高速發(fā)展為分布式系統(tǒng)在工業(yè)領(lǐng)域的廣泛應(yīng)用創(chuàng)造了條件。以太網(wǎng)具有成本低、可靠性高、傳輸速度快、通用性強(qiáng)、開放性好、發(fā)展?jié)摿Υ蟮葍?yōu)點(diǎn)。但以太網(wǎng)也存在網(wǎng)絡(luò)的確定性、實(shí)時(shí)性不強(qiáng)等缺陷。隨著系統(tǒng)日益龐大復(fù)雜,分布化程度越來越高,對(duì)時(shí)鐘同步的要求也逐步提高,雖然隨著帶寬的不斷提高以及采用星形網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)等減少?zèng)_突可能的技術(shù)的應(yīng)用,以太網(wǎng)的確定性、實(shí)時(shí)性有一定程度的提高,但由于以太網(wǎng)自身沖突檢測的載波幀聽多路訪問(CSMA/CD)機(jī)制,設(shè)備層和I/O層的數(shù)據(jù)采集與傳輸問題,以及TCP及UDP上的誤差檢測及翻譯障礙等,以太網(wǎng)的實(shí)時(shí)性問題并未得到根本解決。仍不能滿足精確定時(shí)的要求。
網(wǎng)絡(luò)測量和控制系統(tǒng)的精密時(shí)鐘同步協(xié)議標(biāo)準(zhǔn)IEEE1588適用于以太網(wǎng)、CAN總線和PROFIBUS等。IEEE 1588的基本功能是使分布式網(wǎng)絡(luò)內(nèi)所有從時(shí)鐘與主時(shí)鐘保持同步,該標(biāo)準(zhǔn)定義一種精確時(shí)間協(xié)議PTP(Precision rime Protocol),用于對(duì)標(biāo)準(zhǔn)以太網(wǎng)或其他采用多播技術(shù)的分布式總線系統(tǒng)中的傳感器、執(zhí)行器以及其他終端設(shè)備中的時(shí)鐘進(jìn)行微秒級(jí)同步。早期的網(wǎng)絡(luò)時(shí)間協(xié)議(NTP)只有軟件,而PTP協(xié)議同時(shí)使用硬件和軟件,從而獲得更精確的定時(shí)同步。PTP針對(duì)相對(duì)本地化、網(wǎng)絡(luò)化的系統(tǒng),子網(wǎng)或內(nèi)部組件相對(duì)穩(wěn)定的環(huán)境,特別適合于分布式系統(tǒng)在工業(yè)自動(dòng)化方面的應(yīng)用。
2 時(shí)鐘同步原理
理論上,為每個(gè)系統(tǒng)節(jié)點(diǎn)配備GPS模塊可得到精確的時(shí)間,這樣系統(tǒng)中所有節(jié)點(diǎn)的時(shí)鐘就和標(biāo)準(zhǔn)時(shí)間一致。從而達(dá)到同步;但分布式系統(tǒng)中節(jié)點(diǎn)數(shù)量大,GPS設(shè)備成本高、能耗大,且結(jié)構(gòu)復(fù)雜,抗屏蔽性差,且出于安全性考慮排除大規(guī)模使用GPS的時(shí)鐘同步方式。而基于以太網(wǎng)的IEEE 1588是通過在分布式系統(tǒng)各節(jié)點(diǎn)間交換時(shí)間報(bào)文的方法達(dá)到整個(gè)系統(tǒng)的時(shí)間同步。IEEE 1588通過交換報(bào)文來確定主時(shí)鐘(Master)和從時(shí)鐘(Slave)之間的時(shí)間偏移及報(bào)文傳輸?shù)木W(wǎng)絡(luò)延遲。圖1為IEEE 1588原理圖。
由圖1可知,主時(shí)鐘的節(jié)點(diǎn)按照定義的間隔時(shí)間(缺省是2 s)周期性地向網(wǎng)絡(luò)上所有從時(shí)鐘節(jié)點(diǎn)發(fā)送“同步報(bào)文”(Sync),同時(shí)主時(shí)鐘節(jié)點(diǎn)記錄同步報(bào)文實(shí)際發(fā)送的時(shí)間戳,并在隨后的“跟進(jìn)報(bào)文”(Follow-up)中傳送該精確時(shí)間戳TM1。這樣,對(duì)傳遞和接收的測量與標(biāo)準(zhǔn)時(shí)間戳的傳播可以分開。網(wǎng)絡(luò)上所有其他從時(shí)鐘節(jié)點(diǎn)收到上述報(bào)文后,記錄同步報(bào)文的接收時(shí)間戳TS1,TS1和TM1的偏差中不但包含主從時(shí)鐘的時(shí)間偏差,還包含未知的報(bào)文傳輸延遲,分布式系統(tǒng)中每個(gè)節(jié)點(diǎn)在網(wǎng)絡(luò)中所處位置、布線方式、布線長度以及目前網(wǎng)絡(luò)技術(shù)中的固有問題,也將造成測控?cái)?shù)據(jù)在傳輸過程中的不同延遲。因此需要進(jìn)一步測量并消除該傳輸延遲。與偏移測量不同,延遲測量是不規(guī)則進(jìn)行的,從時(shí)鐘節(jié)點(diǎn)按照定義的間隔時(shí)間(缺省值是4~60 s之間的隨機(jī)值)向主時(shí)鐘節(jié)點(diǎn)發(fā)送一個(gè)“延遲請(qǐng)求”(Dclay Request)報(bào)文,同時(shí)記錄該報(bào)文的實(shí)際發(fā)送時(shí)間,作為精確的發(fā)送時(shí)間戳TS2,而主時(shí)鐘接收到該報(bào)文時(shí)也記下接收時(shí)刻的精確時(shí)間戳TM2,并將該時(shí)間戳在隨后的“延遲響應(yīng)”(Delay Response)報(bào)文中發(fā)送給相應(yīng)的從時(shí)鐘節(jié)點(diǎn)。假設(shè)網(wǎng)絡(luò)延遲是對(duì)稱的,則有以下兩式:
式中,τ為報(bào)文的傳輸延遲,△為從時(shí)鐘相對(duì)主時(shí)鐘的偏差。
由式(1)和式(2)可求得:
根據(jù)偏差△,調(diào)整從時(shí)鐘,實(shí)現(xiàn)對(duì)時(shí)。
評(píng)論