摘 要: 基于循環(huán)上報和主動查詢相結(jié)合的機(jī)制,,設(shè)計了數(shù)字光纖直放站中RU的告警信息同步機(jī)制及具體方案,并且搭載嵌入式VxWorks操作系統(tǒng),,給出了具體的代碼實現(xiàn),。測試結(jié)果表明,該系統(tǒng)功能完善,,達(dá)到了設(shè)計目標(biāo),,大大提高了數(shù)字光纖直放站的可靠性和穩(wěn)定性,同時也非常利于對設(shè)備的維護(hù),。
關(guān)鍵詞: 數(shù)字光纖直放站,;VxWorks操作系統(tǒng);循環(huán)上報,;告警信息同步
0 引言
鐵道通信網(wǎng)絡(luò)中,,數(shù)字光纖直放站是一種分布于鐵道沿線為鐵路系統(tǒng)內(nèi)部的通信、調(diào)度等工作服務(wù)的無線信號中繼設(shè)備,,由近端機(jī)和遠(yuǎn)端機(jī)(Remote Unit,,RU)組成[1]。圖1為數(shù)字光纖直放站結(jié)構(gòu)框圖,,近端機(jī)和遠(yuǎn)端機(jī)按照鏈形組網(wǎng)方式進(jìn)行連接,。近端機(jī)由兩塊時間分布控制單元(Time Distributed Master Unit,TDMU)及射頻設(shè)備組成,。遠(yuǎn)端機(jī)由兩塊數(shù)字處理板(Digital Processing Board,,DPB)和射頻設(shè)備組成,兩塊DPB之間通過RS232總線通信,。遠(yuǎn)端機(jī)的兩塊DPB按照主備用模式工作,,主DPB處于工作狀態(tài),備DPB處于關(guān)閉備份狀態(tài),。在主DPB出現(xiàn)故障時,,主DPB根據(jù)故障類型通過RS232總線開啟備DPB的功能開關(guān)或執(zhí)行相應(yīng)配置,完成主備用的功能切換[2-4]。
RU告警信息的同步有兩層含義:其一,,RU與網(wǎng)管中心告警信息的同步,;其二,RU兩塊DPB之間告警信息的同步,。
實際應(yīng)用中發(fā)現(xiàn),,當(dāng)一個RU的兩塊DPB上報的告警信息不一致時,導(dǎo)致網(wǎng)管中心對兩塊DPB的狀況做了錯誤的判斷,,誤將正常工作的DPB判斷為故障DPB,,為維修人員的工作帶來了麻煩。
針對RU告警信息的同步問題,,通過對數(shù)字光纖直放站告警管理功能的深入研究,,本文提出在RU與網(wǎng)管中心之間以及在RU的兩塊DPB之間分別采用循環(huán)上報機(jī)制[5-7]和主動發(fā)送與查詢相結(jié)合機(jī)制的實現(xiàn)方案,同時搭載嵌入式VxWorks操作系統(tǒng),,給出了具體的代碼實現(xiàn),。
1 RU告警信息同步的設(shè)計與實現(xiàn)
1.1 RU告警信息同步的實現(xiàn)過程
圖2為告警信息同步方案邏輯框圖,告警信息同步方案涉及3個部分:網(wǎng)管中心,、告警同步單元和告警處理單元,。告警信息同步的實現(xiàn)過程為:主DPB告警檢測模塊檢測各個告警的狀態(tài),檢測出告警狀態(tài)發(fā)生改變的告警項,。告警屏蔽模塊首先根據(jù)告警項之間的優(yōu)先級關(guān)系對這些告警項進(jìn)行屏蔽處理,,高優(yōu)先級的告警項優(yōu)先上報,低優(yōu)先級的告警項待高優(yōu)先級的告警項恢復(fù)正常后再進(jìn)行上報,;然后將告警項的告警狀態(tài)上報給各個模塊或者單元,。一方面,主DPB將告警狀態(tài)上報給網(wǎng)管中心,;另一方面,,主DPB將告警狀態(tài)通知主DPB告警處理單元,主DPB告警處理單元收到信息后進(jìn)行應(yīng)急處理,。同時,,主DPB將告警狀態(tài)通過RS232總線告知備DPB,備DPB收到信息后,,通過告警信息解析模塊解析信息,。一方面,備DPB將告警狀態(tài)上報給網(wǎng)管中心,;另一方面,,備DPB將告警狀態(tài)告知備DPB告警處理單元,備DPB告警處理單元收到信息后進(jìn)行應(yīng)急處理,。
1.2 備DPB通知模塊與主DPB告警解析模塊的信息交互
圖3為備DPB通知模塊與主DPB告警解析模塊的信息交互示意圖,。初始上電時,,首先判斷DPB的工作狀態(tài)。若DPB為主DPB,,判斷告警項的告警狀態(tài),,如果告警狀態(tài)發(fā)生改變,,將告警狀態(tài)發(fā)送給備DPB的主DPB告警信息解析模塊,。若收不到備DPB的告警回復(fù)信息,則下次繼續(xù)發(fā)送,;若收到備DPB的告警回復(fù),,停止發(fā)送。初始上電時,,若DPB為備DPB,,則向主DPB發(fā)同步信息包,主動查詢主DPB共享告警項的告警狀態(tài),,實現(xiàn)初始上電時兩塊DPB告警信息的同步,。此后備DPB通過主DPB告警信息解析模塊解析主DPB傳來的告警信息,實現(xiàn)兩塊DPB告警信息的同步,。
1.3 DPB與網(wǎng)管中心的信息交互
圖4為DPB與網(wǎng)管中心的信息交互示意圖,。若DPB告警狀態(tài)發(fā)生改變,則DPB將告警狀態(tài)上報給網(wǎng)管中心,。若DPB規(guī)定時間內(nèi)收到網(wǎng)管中心的告警響應(yīng)信息,,則改變告警項的同步狀態(tài),停止上報,。若沒有收到網(wǎng)管中心的告警響應(yīng)消息,,則按照告警重發(fā)處理機(jī)制繼續(xù)上報告警消息。
告警重發(fā)處理過程如圖5所示,。DPB上報告警信息后,,在規(guī)定的時間內(nèi)如果收到網(wǎng)管中心的告警確認(rèn),則表明本次告警信息上報成功,,停止上報,;如果沒有收到網(wǎng)管中心的告警確認(rèn),則表明本次告警信息上報失敗,,DPB繼續(xù)上報告警,。如果連續(xù)3次告警信息上報失敗,DPB停止上報,,在間隔一個規(guī)定的時間后繼續(xù)上報告警,;如果再連續(xù)3次失敗,則在間隔一個規(guī)定的時間后繼續(xù),。如此循環(huán)上報,,直至收到網(wǎng)管中心的告警響應(yīng)[8],。
告警重發(fā)特殊情況處理如下:在循環(huán)上報告警過程中產(chǎn)生了新的告警,則新的告警信息與原來沒有確認(rèn)的告警信息一起上報,,原來已確認(rèn)的告警信息不上報,,循環(huán)重新開始[9]。
2 RU告警信息同步的軟件實現(xiàn)
數(shù)字光纖直放站選擇性能穩(wěn)定,、功耗低的ARM7微處理器作為主控制器,,搭載VxWorks操作系統(tǒng)[10-12]來完成軟件架構(gòu)的搭建。
雖然告警同步實現(xiàn)過程的軟件平臺已經(jīng)確定,,但如何實現(xiàn)告警項的管理仍然很棘手,。對于每個告警項而言,告警項的要素很多,,要素之間不是簡單地羅列而是有著某種邏輯關(guān)系,。如何實現(xiàn)告警檢測時間的管理,如何實現(xiàn)循環(huán)上報中時間的管理,,在上報過程中如何實現(xiàn)新舊告警的邏輯關(guān)系等,,這些都是需要考慮的問題。
基于以上問題,,本文采用單個結(jié)構(gòu)體及結(jié)構(gòu)體數(shù)組來實現(xiàn)對告警項各個要素的管理,。告警信息管理結(jié)構(gòu)體和告警上報控制結(jié)構(gòu)體如下。其中,,成員AlmTimersCnt為告警檢測總時間計數(shù)器,,實現(xiàn)了告警項檢測時間的管理;告警上報控制結(jié)構(gòu)體中的成員NextSendTime為告警項下次上報的時間,,用來實現(xiàn)循環(huán)上報中時間的管理,;成員AlmRptTryCnt為告警項上報總次數(shù),與成員NextSendTime一起來實現(xiàn)新舊告警項上報的邏輯關(guān)系,。
告警信息管理結(jié)構(gòu)體組成成員:
typedef struct alarm_info
{
UINT8 AlmIndex,;/*告警項的索引號*/
UINT8 AlarmEna;/*告警項的使能開關(guān)*/
UINT8 CurAlmState,;/*告警項的當(dāng)前狀態(tài)*/
UINT8 SyncAlmState,;/*告警項網(wǎng)管中心的同步狀態(tài)*/
UINT8 Rs232SyncAlmState;/*告警項鄰板的同步狀態(tài)*/
UINT8 AlmProSyncState,;/*告警處理單元的同步狀態(tài)*/
UINT8 AlmRptState,;/*告警項的上報狀態(tài)*/
UINT8(*IsAlmRaise)(void);/*告警項檢測函數(shù)的地址*/
UINT32 AlmRaiseCnt,;/*告警項異常次數(shù)計數(shù)器*/
UINT32 AlmIdleCnt,;/*告警項正常次數(shù)計數(shù)器*/
UINT32 AlmTimersCnt;/*告警項檢測總時間計數(shù)器*/
}
告警上報控制結(jié)構(gòu)體組成成員:
typedef struct alarm_rpt_ctrl
{
UINT32 NextSendTime,;/*告警項下次上報的時間*/
UINT32 AlmRptTryCnt,;/*告警項上報的次數(shù)*/
}
告警信息同步過程的關(guān)鍵代碼如下,。其中,AlmRaiseCheck函數(shù)為告警檢測模塊的代碼實現(xiàn),,AlmMaskCheck函數(shù)為告警屏蔽模塊的代碼實現(xiàn),,AlmRptCheck函數(shù)為網(wǎng)管中心上報模塊的代碼實現(xiàn),AlmProRptCheck函數(shù)為告警處理單元通知模塊的代碼實現(xiàn),,AlarmSync函數(shù)為備DPB告警通知模塊與主DPB告警信息解析模塊信息交互的代碼實現(xiàn),。
LOCAL void AlarmManTask(void)
{
UINT8 AlmProTimer=0;
wdStart(SampleTimerId,,(int)AlmSampleTime,,
(FUNCPTR)AlmSampleTimer,,0);
AlmResetRptTimer(),;
while(1){
semTake(semAlmSampleT,,WAIT_FOREVER);
AlmRaiseCheck(),;
AlmMaskCheck(),;
AlmRptCheck();
if(((AlmProFlag==0)&&(AlmProTimer++>8))||
?。ˋlmProFlag==1)){
AlmProRptCheck(),;
AlmProTimer=0;
AlmProFlag=1,;
}
AlarmSync(),;
taskDelay(5);
}
printf("!!!Exit AlarmManTask...Error,,errno=0x%08X\n",,
errnoGet());
return,;
}
3 告警信息同步實現(xiàn)過程的測試與結(jié)果
測試平臺分為硬件平臺與軟件平臺,。硬件平臺為PC、調(diào)試串口和數(shù)字光纖直放站,;軟件平臺為串口超級終端軟件和網(wǎng)管中心的網(wǎng)管軟件,。圖6為串口的超級終端信息打印圖,主DPB檢測到告警狀態(tài)發(fā)生改變時,,將告警項的狀態(tài)信息按照圖中的組包格式發(fā)送給備DPB,,主DPB收到告警響應(yīng)消息后停止發(fā)送。圖7為網(wǎng)管中心告警監(jiān)控界面,,其中紅色按鈕表示告警項產(chǎn)生告警,,綠色按鈕表示告警項告警恢復(fù),。
告警信息同步過程的測試分為三個層次:告警檢測的測試、備DPB通知模塊與主DPB告警解析模塊的信息交互的測試和DPB與網(wǎng)管中心的信息交互測試[5-7],。測試時,,數(shù)字光纖直放站按照圖1所示連接方式組網(wǎng)。告警檢測環(huán)節(jié)主要測試告警項是否產(chǎn)生誤告警及非法告警,,采用參考文獻(xiàn)[6]中遍歷的方法進(jìn)行測試,。經(jīng)測試發(fā)現(xiàn),沒有產(chǎn)生誤告警及非法告警,。另外兩種測試采取手動制造告警的方式進(jìn)行驗證,,測試中以電源1故障告警和輸入電壓過壓告警為例進(jìn)行說明。
首先,,手動制造電源1故障告警,、輸入電壓過壓告警,主DPB按照圖6所示格式組包,,串口打印出主備DPB間的信息交互過程,;同時網(wǎng)管中心收到了兩塊DPB上報的告警數(shù)據(jù),電源1故障告警及輸入電壓過壓告警燈變?yōu)榧t色,。然后,,手動制造電源1故障告警恢復(fù)、輸入電壓過壓告警恢復(fù),,主DPB按照圖6所示格式組包,,串口打印出主備DPB間的信息交互過程,同時網(wǎng)管中心收到了兩塊DPB上報的告警恢復(fù)數(shù)據(jù),,電源1故障告警及輸入電壓過壓告警燈變?yōu)榫G色,。
4 結(jié)論
本文設(shè)計了RU告警信息的同步實現(xiàn)方案,在射頻設(shè)備或者DPB出現(xiàn)故障時,,該方案既可以及時將告警狀態(tài)上報給網(wǎng)管中心,,利于設(shè)備的維護(hù);又可以在維修人員未到達(dá)前,,對相關(guān)硬件進(jìn)行調(diào)整,,保證信號的可靠傳輸。該方案提高了系統(tǒng)的穩(wěn)定性與健壯性,。通過測試驗證了該方案的可行性,,可適用于安全性較高的領(lǐng)域。
參考文獻(xiàn)
[1] 劉立海.數(shù)字光纖直放站特性及其在GSM-R無線覆蓋中的應(yīng)用分析[J].鐵道通信信號,,2012(9):30-35.
[2] 鐘楊斌.基站覆蓋延伸系統(tǒng)在無線網(wǎng)絡(luò)覆蓋優(yōu)化中的應(yīng)用研究[D].北京:北京郵電大學(xué),,2008.
[3] 高婷婷.鐵路GPRS系統(tǒng)冗余備份的研究[J].鐵路通信信號工程技術(shù),2013(S1):250-254.
[4] 洪治.淺談高速鐵路GSM-R系統(tǒng)干擾現(xiàn)狀及對策[J].中國無線電,,2013(3):28-29.
[5] 蘇潔,,溫蕾.直放站監(jiān)控管理告警處理機(jī)制及測試方法分析[J].電信網(wǎng)技術(shù),,2010(3):57-60.
[6] 敖姣.直放站調(diào)測系統(tǒng)軟件設(shè)計與研究[D].武漢:武漢郵電科學(xué)研究院,2009.
[7] WCDMA直放站嵌入式監(jiān)控終端研制[D].成都:電子科技大學(xué),,2007.
[8] GB/T 1.1-2009.鐵路數(shù)字移動通信系統(tǒng)(GSM-R)光纖直放站網(wǎng)絡(luò)管理系統(tǒng)[S].2009.
[9] YD/T 2231-2011.2 GHz WCDMA數(shù)字蜂窩移動通信網(wǎng)模擬直放站設(shè)備網(wǎng)管接口技術(shù)要求[S].2011.
[10] 張培輝.基于VxWorks和MPC565無人機(jī)飛行控制軟件設(shè)計與開發(fā)[D].南京:南京航空航天大學(xué),,2012.
[11] 張林,王芙蓉.VxWorks嵌入式實時系統(tǒng)任務(wù)機(jī)制的研究[J].微型機(jī)與應(yīng)用,,2005,,24(3):11-13.
[12] 廖崇琦,文臣,,鄧文,,等.一種基于VxWorks的可重構(gòu)軟件框架設(shè)計[J].微型機(jī)與應(yīng)用,2013,,32(12):22-24.