孫朋,王洋
1.中國人民解放軍第三○九醫院政治部,北京 100091;2.河南省軍區自動化站,河南 鄭州450000
人類生活的方方面面都離不開精密的時間計量,不管是在科技領域里,還是在日常生活中,精密的時間計量都是不可或缺的,可以說整個社會各種信息的協調一致都是以嚴格的時間同步為基礎實現的[1-2]。科技快速進步,經濟飛速發展的今天,以計算機技術為基礎的醫療系統得到了迅猛的發展,尤其是在各大中型醫院中的應用范圍越來越廣,普及程度也越來越高。基于計算機技術的智能醫療和遠程醫療都對時間的精度和穩定性提出了越來越高的要求[3-5]。
計算機內部Timer時間是一種能夠連續長期計量的時間,它能夠方便獨立地為各種研究和應用提供所需的時間基準。Timer時間雖然比較精確,但是從長達幾十天的時間尺度上來看,其相對于標準時間的誤差仍然可能導致醫療系統出現故障[6]。因此,需要對計算機內部時間的長期穩定性和變化規律進行分析,以滿足醫療系統對長期時間基準的需求。
本文通過將計算機內部Timer時間與GPS提供的標準時間進行比對,得到Timer時間的長期鐘差,然后利用函數模型分析其長期穩定性因素,并對鐘差的周期、振幅等進行分析,探討其對于醫療系統的影響。
計算機內部Timer時間即計算機的實時鐘系統,由專門的計時芯片支持。計算機提供的BIOS中斷服務程序能夠實現程序軟件與計算機硬件之間的銜接,利用VB等高級語言中的Timer()函數即可提取基于BIOS中斷的時間。Timer時間從每天午夜開始計數,它的長期變化規律實質上代表了計算機內實時鐘的長期變化規律,因此本文將它用于研究計算機內部時間的長期穩定性。
某一瞬間,時鐘的鐘面時與正確時的差值,稱為時鐘在這一瞬間的鐘差,通常用u表示,鐘差的變化實際上表示了鐘的穩定性[7]。本文將計算機Timer時間與GPS提供的標準時間進行比對以求解其鐘差。設計算機Timer時間的鐘面時刻為t0,而對應于這瞬間的正確時刻為t,則其鐘差為:

式中u為正,表示計算機時間t0慢了u值;u為負,表示計算機時間t0快了u值。由于鐘差是隨時間不斷變化的,在表示鐘差時,必須同具體的時刻對應起來,脫離具體時刻的鐘差毫無意義。
我們通過連續90天的時間比對實驗,積累了共175個時段的計算機時間實驗數據,得到鐘差變化規律,見圖1。

圖1 計算機時間長期變化規律
從圖1可以看出,計算機鐘差中含有明顯的趨勢項,經過90天的累積,其鐘差達到了-21.76 s。
由于實驗條件的變化,采集的計算機時間鐘差數據不可避免的含有粗差,此外,鐘差數據中包含明顯的趨勢項,并且其采樣率較低,故需要對其進行預處理,然后再利用函數模型擬合分析其穩定性。
對90天共175個時段的鐘差數據進行分析,發現其中存在6個粗差,首先將它們剔除得到不受粗差影響的長期鐘差數據。然后利用二次多項式濾除長期趨勢,其模型可表示為:

式中,T為從實驗開始的累計天數,3個系數k0、k1、k2正好對應了計算機時間的初始鐘差、鐘速、鐘老化率3個參數,濾除長期趨勢項后的殘余鐘差能更清楚的表達計算機時間的周期項[8]。由于采集的原始數據不是等間隔的,并且采樣率比較低,所以利用一維線性插值算法對原始數據進行插值,得到等間隔的鐘差周期項的變化,見圖2。

圖2 鐘差周期項變化規律
從圖2中可以看出,二次多項式較好地反映了計算機長期鐘差的變化趨勢,擬合得到的3個參數分別為:

通過二次多項式濾除鐘差的長期趨勢項后,殘差呈現了很明顯的周期項,可以大致看出有2個大周期,而數據的短期波動是由于每次采集數據前開機對實時鐘的初始化都存在一個0.5 s內的誤差,并不代表鐘的變化。
為了分析計算機長期鐘差的穩定性,利用周期性的正弦和函數對其進行擬合分析。正弦和模型一般用于擬合周期信號,它的一般表達式為:

式中,a為振幅,b為頻率,c為每個正弦波的初相,n為級數的項數[9]。以二階正弦和函數模型擬合鐘差的周期項,見圖3。

圖3 二階正弦和函數擬合鐘差周期項
從圖3可以看出,二階正弦和函數較好地擬合了鐘差的周期項,擬合殘差的中誤差達到0.33 s,擬合模型的系數,見表1。

表1 二階正弦和函數模型系數
表1中,a1和a2分別代表了兩個周期的振幅,b1和b2分別代表了兩個周期的頻率,c1和c2分別代表了兩個周期的頻率。波動周期的計算公式為:

根據式(5),可得到鐘差的兩個主周期分別為51.9天和30.6天。
快速度傅立葉變換(FFT)是離散傅立葉變換的快速算法,可以將一個信號變換到頻域。有些信號很難在時域上是看出其特征,但是變換到頻域后就很容易看出特征。
根據鐘差插值數據的采樣頻率FS和采樣點數N,假設鐘差頻率為F,那么快速傅立葉變換之后的結果就是一個為N點的復數,每一個點就對應著一個頻率點,這個點的模值,就是該頻率值下的幅度特性。根據采樣數據,設置變化點數為采樣數據的長度,將時域信號變換到頻域,得到的結果,見圖4。

圖4 鐘差周期項的快速傅立葉變換
從圖4可以看出,鐘差數據的頻域信號在高頻部分對應了一些無序信號,在低頻部分存在兩個明顯的峰值,這就對應了鐘差變化的2個主周期。根據周期計算公式可得到2個主周期分別為52.4天和27.9天,這與二階正弦和函數擬合得到的2個主周期值接近。2個主周期的振幅分別為0.70和0.47,初相分別為-79.87°和156.00°。
為了進一步驗證計算機時間的周期,利用功率譜估計對長期鐘差的周期項進行分析。功率譜估計是數字信號處理的主要內容之一,主要研究信號在頻域中的各種特征,目的是根據有限數據在頻域內提取被淹沒在噪聲中的有用信號。著名控制理論專家Wiener在他的著作中首次精確定義了一個隨機過程的自相關函數及功率譜密度,并把譜分析建立在隨機過程統計特征的基礎上,即“功率譜密度是隨機過程二階統計量自相關函數的傅立葉變換”。
功率譜估計已經廣泛應用于眾多領域的信號處理,周期圖法是使用最普遍的方法,其功率譜估計的函數為[10]:

其中,x(k)為信號的直接傅立葉變換,N為時域信號的長度,P為信號的功率譜。應用周期圖法分析計算機鐘差數據,得到結果,見圖5。

圖5 鐘差周期項的功率譜密度
從圖5可以看出,與二階正弦和函數擬合和快速傅立葉變換類似,功率譜線在低頻部分存在兩個極大值,對應了鐘差的兩個長周期,分別為51.2天和28.4天。
以智能醫療管理系統和遠程醫療為代表的現代醫療技術離不開精密的時間,計算機時間可以方便地為這些應用提供基準,但是計算機時間存在長期鐘差,通過本文的分析,我們可得出如下結論:
(1)計算機時間的長期鐘差存在明顯的增大趨勢項,90天的鐘差超過20 s,會嚴重影響醫療系統的正常運行。
(2)除長期趨勢項外,計算機長期鐘差還包含周期項,其中主要含有兩個長度分別約為52天和28天的周期。
(3)可根據鐘差的長期趨勢項和周期項建立計算機時間的長期變化模型如下:

式中參數取值可參考本文中的數據,對于不同的計算機可通過一段時間的實驗解算參數得到取值。
(4)為了更好地利用計算機時間服務于醫療系統,可根據長期趨勢項和周期項建立計算機鐘差的長期模型,根據模型對計算機時間進行改正,然后再應用于醫療系統之中。
[1]張超,鄭勇.提取計算機內部高精度時間用于同步測量[J].測繪學院學報,2003,20(2):1-2.
[2]劉曉剛.衛星導航系統中高精度時間同步算法研究[D].鄭州:信息工程大學,2008.
[3]Gilbert Reibnegger.Modeling Time in Medical Education Research:The Potential of New Flexible Parametric Methods of Survival Analysis [J].Creative Education,2012,3:916-922.
[4]王繁.醫療系統計算機應用現狀及發展前景展望[J].計算機光盤軟件與應用,2012,(19):98-100.
[5]王國棟,李成龍.計算機技術在醫療監控中的應用[J].計算機光盤軟件與應用,2012,(3):98-99.
[6]李崇輝,鄭勇.計算機內部時間長期穩定性分析[J].計算機應用與軟件,2011,(9):98-99.
[7]董紹武.守時中的若干重要技術問題研究[D].西安:中國科學院國家授時中心,2006.
[8]LiChonghui,ZhangJian,YangYufei,et al.Analysis on Prediction of Long-term Clock Error of Computer Time [A].2010 International Conference on Future Computer,Control and Communication[C].2010:206-209.
[9]蘇金明,阮沈勇,王永利.MATLAB工程數學[M].北京:電子工業出版社,2005:143-159.
[10]王福杰,潘宏俠.MATLAB中幾種功率譜估計函數的比較分析與選擇[J].計算機科學與技術,2009,27(6):28-31.