文/鄭全順
時(shí)鐘同步系統(tǒng)已經(jīng)廣泛應(yīng)用于機(jī)場、鐵路、軌道交通、核電站、醫(yī)院、學(xué)校、體育場館等領(lǐng)域,系統(tǒng)采用母鐘、NTP 時(shí)間服務(wù)器、子鐘等架構(gòu),使用串行接口、以太網(wǎng)等通訊接口,在時(shí)鐘信號(hào)逐級(jí)傳遞的過程中,可通過PPS 推后補(bǔ)償、高精度串行時(shí)間同步、智能輸出判斷、時(shí)間閉環(huán)反饋等技術(shù),解決時(shí)鐘系統(tǒng)同步的精確性與穩(wěn)定性難題。
時(shí)鐘同步系統(tǒng)一般采用本地衛(wèi)星時(shí)間源,利用GPS/北斗衛(wèi)星的時(shí)間同步信息來校準(zhǔn)本地區(qū)域性時(shí)鐘系統(tǒng)。
利用衛(wèi)星的秒脈沖(PPS)信號(hào)把母鐘的豪秒單元中的時(shí)間數(shù)據(jù)進(jìn)行清零,達(dá)到母鐘與衛(wèi)星信號(hào)輸出時(shí)間同步,其具體同步過程為:衛(wèi)星的PPS 信號(hào)上升沿觸發(fā)母鐘的微控制單元(MCU)中的時(shí)間計(jì)時(shí)中斷程序,使MCU進(jìn)入該中斷程序,此程序記錄整個(gè)中斷過程的時(shí)間⊿t,然后把母鐘豪秒單元中的時(shí)間數(shù)據(jù)進(jìn)行清零處理。母鐘在下一輪次輸出標(biāo)準(zhǔn)時(shí)間信號(hào)時(shí),在衛(wèi)星標(biāo)準(zhǔn)時(shí)間信號(hào)的基礎(chǔ)上加上中斷延時(shí)時(shí)間⊿t,以補(bǔ)償中斷延時(shí),確保母鐘與衛(wèi)星標(biāo)準(zhǔn)時(shí)間信號(hào)輸出的標(biāo)準(zhǔn)時(shí)間保持一致,達(dá)到母鐘與衛(wèi)星標(biāo)準(zhǔn)時(shí)間信號(hào)同步的目的。
利用母鐘的PPS 信號(hào)把NTP 時(shí)間服務(wù)器(NTP)的豪秒單元中的時(shí)間數(shù)據(jù)進(jìn)行清零,達(dá)到母鐘與NTP 輸出時(shí)間同步,其具體同步過程為:母鐘的PPS 信號(hào)上升沿觸發(fā)NTP 的MCU 中的時(shí)間計(jì)時(shí)中斷程序,使MCU 進(jìn)入該中斷程序,此程序記錄整個(gè)中斷過程的時(shí)間⊿t,然后把NTP 豪秒單元中的時(shí)間數(shù)據(jù)進(jìn)行清零處理。NTP 在下一輪次輸出標(biāo)準(zhǔn)時(shí)間信號(hào)時(shí),在母鐘給定的標(biāo)準(zhǔn)時(shí)間的基礎(chǔ)上加上中斷延時(shí)時(shí)間⊿t,以補(bǔ)償中斷延時(shí),確保NTP與母鐘標(biāo)準(zhǔn)時(shí)間輸出的標(biāo)準(zhǔn)時(shí)間保持一致,達(dá)到NTP 與母鐘時(shí)間同步的目的。網(wǎng)絡(luò)時(shí)間傳輸模型如圖1所示。
NTP 與母鐘時(shí)間同步以后,經(jīng)過MCU 把標(biāo)準(zhǔn)時(shí)間信號(hào)轉(zhuǎn)換成符合NTP 協(xié)議的網(wǎng)絡(luò)時(shí)間信號(hào),用于局域網(wǎng)內(nèi)各系統(tǒng)及網(wǎng)絡(luò)子鐘的校時(shí),在客戶方發(fā)送時(shí)間查詢請(qǐng)求時(shí),發(fā)送時(shí)間信號(hào)時(shí)仍需考慮網(wǎng)絡(luò)延時(shí)的問題,并在授時(shí)時(shí)對(duì)網(wǎng)絡(luò)延遲進(jìn)行相應(yīng)的補(bǔ)償。
客戶方與服務(wù)器方網(wǎng)絡(luò)延時(shí)與時(shí)鐘偏差的測量及補(bǔ)償原理說明如下:
T1:A 發(fā)送查詢請(qǐng)求時(shí)間(參照為A 時(shí)間系統(tǒng))
T2:B 收到查詢請(qǐng)求時(shí)間(參照為B 時(shí)間系統(tǒng))
T3:B 回復(fù)時(shí)間信息包時(shí)間(參照為B 時(shí)間系統(tǒng))
T4:A 收到時(shí)間信息包時(shí)間(參照為A 時(shí)間系統(tǒng))
δ1:A 請(qǐng)求信息在網(wǎng)絡(luò)傳播上所消耗的時(shí)間
δ2:B 回復(fù)信息在網(wǎng)絡(luò)傳播上所消耗的時(shí)間
(1)已知T1、T2、T3、T4時(shí)刻,希望求得θ 以調(diào)整A 時(shí)鐘有:
(2)網(wǎng)絡(luò)環(huán)境相同情況下,請(qǐng)求和回復(fù)信息在網(wǎng)絡(luò)傳播上的時(shí)間相同,即δ1=δ2,則可解得:據(jù)此,θ、δ 只與T2-T1、T4-T3差值相關(guān),與T2T3差值無關(guān),即與服務(wù)器處理請(qǐng)求所需的時(shí)間無關(guān)??赏ㄟ^計(jì)算出時(shí)差θ 去調(diào)整本地時(shí)鐘。
母鐘通過標(biāo)準(zhǔn)串行RS422/485 接口,從每秒的零毫秒時(shí)刻開始以9600 波特率連續(xù)發(fā)送21 個(gè)含有年、月、日、星期、時(shí)、分、秒、毫秒的時(shí)間字符,并且包含起始位、結(jié)束位、校驗(yàn)位、衛(wèi)星校時(shí)等字符信息。標(biāo)準(zhǔn)時(shí)間的接收設(shè)備可在接收到結(jié)束符后可直接用接收到的時(shí)間信息來替換自身設(shè)備的豪秒計(jì)時(shí);然后再依次校準(zhǔn)分、時(shí)、日、月、年、星期等計(jì)時(shí)單元。如圖2所示。
說明:
橫軸T 代表時(shí)間,單位t 為發(fā)送或接收1個(gè)字節(jié)的時(shí)間,在波特率為9600 位/秒的情況下(每個(gè)字節(jié)占用8 位),1t 約等于1ms;
縱軸A 代表事件,A1 代表發(fā)送方發(fā)送的數(shù)據(jù),A0 代表接收方接收的數(shù)據(jù);
1、2…20 、21 分別代表發(fā)送和接收的第1、2…20 和第21 個(gè)字節(jié)數(shù)據(jù)。
圖1:網(wǎng)絡(luò)時(shí)間傳輸模型
圖2:時(shí)間信號(hào)的時(shí)隙圖
串行數(shù)據(jù)傳輸,發(fā)送和接收時(shí)序均由硬件自動(dòng)實(shí)現(xiàn),移位傳輸時(shí)發(fā)送和接收同時(shí)進(jìn)行,因此,在實(shí)際傳輸中,發(fā)送方發(fā)送一個(gè)字節(jié)數(shù)據(jù)的同時(shí)接收方也完成了接收一個(gè)字節(jié)數(shù)據(jù),即發(fā)送方完成21 個(gè)毫秒級(jí)標(biāo)準(zhǔn)時(shí)間的同時(shí),接收方亦完成接受21 個(gè)毫秒級(jí)標(biāo)準(zhǔn)時(shí)間;既發(fā)送方發(fā)送標(biāo)準(zhǔn)時(shí)間所花費(fèi)的時(shí)間21t 也就是接受方接受標(biāo)準(zhǔn)時(shí)間所需要的時(shí)間21t。
時(shí)間數(shù)據(jù)系統(tǒng)誤差T,主要由串行通訊延遲時(shí)間T1和傳輸延遲時(shí)間T2組成。21 個(gè)字符的串行通訊時(shí)間T1,可根據(jù)波特率和傳輸方式計(jì)算得:T1=(((8+1+1+1)*21)/9600)*1000=24ms 。
傳輸通道延遲時(shí)間T2主要與傳輸延遲特性有關(guān),并且存在不同時(shí)段的不確定性。需要每次發(fā)送時(shí)間信號(hào)前,母鐘先給客戶端發(fā)送數(shù)據(jù)進(jìn)行測定傳輸延遲,得到T2。
在發(fā)送標(biāo)準(zhǔn)時(shí)間信號(hào)時(shí)總的延時(shí)時(shí)間為:T=T1+T2=24ms+T2。
母鐘發(fā)送的標(biāo)準(zhǔn)時(shí)間信號(hào)數(shù)據(jù)中包含延時(shí)時(shí)間T,其他系統(tǒng)設(shè)備接收的標(biāo)準(zhǔn)時(shí)間信號(hào)為實(shí)時(shí)的時(shí)間信息,其他系統(tǒng)設(shè)備在接收到結(jié)束符后,直接利用接收到的補(bǔ)償后標(biāo)準(zhǔn)時(shí)間數(shù)據(jù)校準(zhǔn)自身的時(shí)間,然后再校準(zhǔn)各顯示單元,即可實(shí)現(xiàn)標(biāo)準(zhǔn)時(shí)間的同步功能。