山東正瑞電子有限公司網(wǎng)絡(luò)時(shí)間模塊內(nèi)嵌了NTP/SNTP協(xié)議,符合網(wǎng)絡(luò)時(shí)間協(xié)議RFC-1305/5905/1769(Network TimeProtocol Version 4) ,能向網(wǎng)絡(luò)上的終端提供時(shí)間查詢服務(wù)。需外接一個(gè)串口時(shí)間報(bào)文輸出,并有秒脈沖輸出的時(shí)鐘源。
1、使用方法
1.1、系統(tǒng)結(jié)構(gòu)
我們推薦的使用方式可參考下圖系統(tǒng)結(jié)構(gòu),本文的描述都基于這樣的系統(tǒng)結(jié)構(gòu)。
1.2、外接時(shí)鐘源
模塊正常工作時(shí), 需外部接一個(gè)準(zhǔn)確的時(shí)鐘源。時(shí)鐘源應(yīng)可以從串口輸出時(shí)間數(shù)據(jù),并提供秒脈沖的功能。市面上很多個(gè) GPS 授時(shí)模塊能很好的滿足這個(gè)要求。通用的網(wǎng)絡(luò)授時(shí)模塊僅能解析NMEA0183 語句的推薦定位語句(RMC) 語句格式請參考附錄。
1.3、停止工作
由于模塊的時(shí)間精度完全依賴于外接時(shí)鐘源的精度。在外接時(shí)鐘源失效后, 模塊正常工作 60秒,后停止提供時(shí)鐘服務(wù)。串口時(shí)鐘幀或秒脈沖失效都能導(dǎo)致網(wǎng)絡(luò)授時(shí)模塊停止工作。
2、輸入信號(hào)要求
所有信號(hào)包括串口與秒脈沖,都是 TTL 電平的方式,高電平輸入電壓 2.4~5V,低電平輸入電壓 0~0.8V
2.1、串口輸入
模塊串口接收是一個(gè)異步串行接口,支持以下設(shè)置
2.2、秒脈沖輸入
外部時(shí)鐘源提供的秒脈沖應(yīng)是高電平脈沖,高電平的上跳沿對應(yīng) 0 秒時(shí)刻。脈沖寬度在1ms~900ms 之間。
2.3、秒脈沖與串口時(shí)間幀相位關(guān)系應(yīng)用中,應(yīng)嚴(yán)格遵循此相位關(guān)系,否則將導(dǎo)致模塊提供時(shí)間不準(zhǔn)。秒脈沖先輸出,與秒脈沖對應(yīng)的時(shí)間的數(shù)據(jù)幀隨后輸出。可參考下圖:
3、模塊的性能
3.1、瞬間服務(wù)能力
表示某個(gè)很小的時(shí)間內(nèi),能接受 NTP 客戶端的時(shí)間請求的個(gè)數(shù),其表征模塊能同時(shí)處理多臺(tái)客戶端請求的能力,這個(gè)指標(biāo)主要由設(shè)備網(wǎng)絡(luò)數(shù)據(jù)緩沖大小決定。我們的模塊采用了具有 2KRAM 網(wǎng)絡(luò)緩沖的RAM 嵌入式處理器,考慮到一幀SNTP請求幀為90字節(jié),因此模塊的瞬間服務(wù)能力為:瞬間服務(wù)能力 = 2000/90 ≈ 22 臺(tái)
3.2、秒服務(wù)能力
為此,我們編寫一個(gè)測試程序,測試模塊的秒服務(wù)能力。程序運(yùn)行后不斷的請求時(shí)間->等待回應(yīng)->請求時(shí)間->等待回應(yīng)…,程序計(jì)算每秒的請求數(shù)與回應(yīng)數(shù)。由此評估模塊的服務(wù)能力。實(shí)際上,這樣的測試方法比較保守,實(shí)際的服務(wù)能力會(huì)比測試結(jié)果高,因?yàn)槟K在計(jì)算機(jī)處理回應(yīng)幀時(shí)間是空閑的。使用多臺(tái)計(jì)算機(jī)同時(shí)測試,結(jié)果會(huì)更精確。
測試結(jié)果如下:
測試結(jié)果
測試時(shí)間: 483 秒
請求累計(jì)次數(shù): 701420 次
因此,平均的秒服務(wù)能力 = 701420 / 483 = 1452 次
當(dāng)我們用三臺(tái)計(jì)算機(jī)同時(shí)進(jìn)行測試是,平均的秒服務(wù)能力大約是 3000 次/秒。