■文/李 丹 陳太沁
無線廣播頻譜監(jiān)測與管理系統(tǒng)中的數(shù)據(jù)處理
■文/李 丹 陳太沁
本文主要介紹了頻譜監(jiān)測與管理系統(tǒng)中頻譜數(shù)據(jù)處理的解決方案及其基于LabVIEW的實(shí)現(xiàn)方法。關(guān)鍵詞:大數(shù)據(jù);頻譜分析;LabVIEW;圖形化
近年來,隨著無線通信技術(shù)的快速發(fā)展, 電磁環(huán)境變得日益擁擠和復(fù)雜,開展對(duì)頻譜使用情況的有效監(jiān)測十分必要。無線廣播頻譜監(jiān)測與管理系統(tǒng)就是通過實(shí)現(xiàn)對(duì)中短波、調(diào)頻、電視全頻段的頻譜監(jiān)測,進(jìn)而對(duì)整個(gè)頻譜使用情況有整體的把握。該系統(tǒng)由頻譜掃描、單頻測量和前臺(tái)分析三大部分組成,采用統(tǒng)一的軟件平臺(tái),易于編程、控制和維護(hù)。本文提出頻譜監(jiān)測與管理系統(tǒng)中的頻譜數(shù)據(jù)處理的解決方案及其基于LabVIEW的實(shí)現(xiàn)方法。在對(duì)IQ文本寫入讀取、歷史數(shù)據(jù)回放、數(shù)據(jù)分析等功能進(jìn)行實(shí)驗(yàn)驗(yàn)證后,結(jié)果表明,本文設(shè)計(jì)的系統(tǒng)實(shí)用可靠,較好地完成了設(shè)計(jì)目標(biāo)。
無線電頻譜是一種非常寶貴且有限的自然資源,是屬于國家的重要戰(zhàn)略性資源。近年來,無線電頻譜需求不斷增加,頻率沖突越來越嚴(yán)峻,給頻譜資源的監(jiān)測和管理帶來了新的困難與挑戰(zhàn),對(duì)無線電頻譜的監(jiān)測與管理是有效使用無線電資源的前提,因此,如何開展對(duì)信道和頻段使用情況的有效監(jiān)測,記錄全頻段和全時(shí)段內(nèi)所有信號(hào)的基礎(chǔ)數(shù)據(jù),掌握用頻變化,評(píng)估信道占用度和利用率,把握頻譜的整體使用情況,提高頻譜感知與管理能力成為亟需解決的問題。
研發(fā)頻譜管理與監(jiān)測系統(tǒng)就是對(duì)全頻段(400kHz~1GHz)頻譜監(jiān)測與管理的探索。該系統(tǒng)實(shí)現(xiàn)對(duì)中短波、調(diào)頻和電視波段的全時(shí)段掃描、測量、存儲(chǔ)、顯示和分析,按照無人值班的形式進(jìn)行設(shè)計(jì)和配置,監(jiān)測終端和前臺(tái)用戶可以遙控監(jiān)測,頻譜歷史數(shù)據(jù)和分析數(shù)據(jù)可通過圖形化進(jìn)行集中顯示。
本系統(tǒng)分為三部分:頻譜掃描、單頻測量和數(shù)據(jù)分析。其中,頻譜掃描程序?qū)崿F(xiàn)對(duì)全頻段頻譜進(jìn)行實(shí)時(shí)掃描,單頻測量實(shí)現(xiàn)對(duì)單個(gè)頻率進(jìn)行模式識(shí)別并實(shí)時(shí)測量各項(xiàng)指標(biāo)參數(shù),頻譜掃描和單頻測量都將采集到的數(shù)據(jù)加載到數(shù)據(jù)庫中,它們?yōu)閿?shù)據(jù)分析程序提供數(shù)據(jù)支持。系統(tǒng)架構(gòu)如圖1所示。整個(gè)系統(tǒng)的軟件架構(gòu)采用C/S架構(gòu),分為后臺(tái)數(shù)據(jù)采集存儲(chǔ)服務(wù)端和前臺(tái)顯示回放端。

圖1 無線廣播頻譜監(jiān)測與管理系統(tǒng)架構(gòu)
2.1 無線廣播頻譜監(jiān)測與管理系統(tǒng)中的大數(shù)據(jù)
本項(xiàng)目數(shù)據(jù)庫采用ORACLE10g,并引入“大數(shù)據(jù)”概念,利用大數(shù)據(jù)管理進(jìn)行高效的數(shù)據(jù)存儲(chǔ)和訪問。本項(xiàng)目大數(shù)據(jù)具有以下五大特性。
2.1.1 巨大的數(shù)據(jù)量(Volume)
本項(xiàng)目中的頻譜掃描模塊、單頻分析模塊都會(huì)在短時(shí)間內(nèi)產(chǎn)生巨大的數(shù)據(jù)量。以本項(xiàng)目中單頻分析模塊對(duì)調(diào)幅信號(hào)進(jìn)行分析的過程中產(chǎn)生的原始IQ數(shù)據(jù)量為例。單頻分析模塊對(duì)疑似調(diào)幅信號(hào)的掃描每次歷時(shí)0.2秒,產(chǎn)生3125組數(shù)據(jù)點(diǎn),一個(gè)信號(hào)需要進(jìn)行五十次掃描才能最終判定是否為廣播信號(hào),因此每頻每次產(chǎn)生的原始IQ數(shù)據(jù)以文本文件存儲(chǔ)大小約為1.7MB,每次歷時(shí)10秒。假定本模塊有50%的時(shí)間進(jìn)行中短波段作業(yè)(本模塊亦對(duì)調(diào)頻電視頻段進(jìn)行掃描分析),滿負(fù)荷運(yùn)行24,小時(shí)掃描分析4000個(gè)左右信號(hào),將產(chǎn)生約合6.8GB的數(shù)據(jù)。
2.1.2 多結(jié)構(gòu)化數(shù)據(jù)(Variety)
本項(xiàng)目需要存儲(chǔ)的數(shù)據(jù)類型多樣化。首先,我們會(huì)將大量的波形數(shù)據(jù)以CLOB(Character Large Object)類型存儲(chǔ)入Oracle數(shù)據(jù)庫;其次,對(duì)AM信號(hào)分析產(chǎn)生的龐大IQ原始數(shù)據(jù),我們以文本形式存儲(chǔ)入本地磁盤;另外,我們還對(duì)判定為廣播電視信號(hào)的頻率進(jìn)行音頻采集,并將其存入本地磁盤。
2.1.3 處理速度快(Velocity)
本項(xiàng)目的頻譜分析模塊需要從數(shù)據(jù)庫中提取海量頻譜數(shù)據(jù),以便能夠及時(shí)有效地提供各項(xiàng)分析,快速直觀地讓使用者了解全頻段頻道使用情況。同時(shí),歷時(shí)頻譜數(shù)據(jù)的回放也需要快速地對(duì)大文本和音頻文件進(jìn)行讀取,以實(shí)現(xiàn)無縫查詢。2.1.4 價(jià)值密度低(Value)
本項(xiàng)目中,無論是對(duì)頻譜占用度的分析還是對(duì)單個(gè)頻率的指標(biāo)分析,都需要大量相關(guān)數(shù)據(jù)作支撐,單一的數(shù)據(jù)記錄(如一個(gè)數(shù)據(jù)點(diǎn))并不能夠獨(dú)立地形成概念。
2.1.5 足夠的精確性(Veracity)
本項(xiàng)目的頻譜數(shù)據(jù)分析模塊需要對(duì)大量數(shù)據(jù)進(jìn)行查詢分析,并最終篩選出有用數(shù)據(jù),以方便使用者直觀了解任意頻段頻譜的占用情況。這就要求我們在考慮I/O效率的同時(shí),盡可能完整精確地對(duì)原始數(shù)據(jù)進(jìn)行存儲(chǔ)。在最終的方案中,我們選擇將調(diào)幅波段的頻率原始數(shù)據(jù)全部存儲(chǔ)入庫,而對(duì)龐大的調(diào)頻電視數(shù)據(jù),我們選擇對(duì)其采樣后進(jìn)行存儲(chǔ)作業(yè)。
綜上所述,本項(xiàng)目實(shí)現(xiàn)了大量頻譜數(shù)據(jù)的存儲(chǔ)、訪問、查詢、統(tǒng)計(jì)、處理等功能,利用索引查詢、并行處理與訪問技術(shù)等實(shí)現(xiàn)了海量數(shù)據(jù)的性能調(diào)整與優(yōu)化,并且利用大數(shù)據(jù)超高速裝載來解決頻譜掃描模塊短時(shí)間大數(shù)據(jù)的入庫難題。
2.2 基于Labview和Oracle的大數(shù)據(jù)解決方案
2.2.1 CLOB類型錄入
CLOB(Character Large Object Block)是數(shù)據(jù)庫中的內(nèi)置類型,它可以將字符對(duì)象存儲(chǔ)為數(shù)據(jù)庫表某一行中的一個(gè)列值。在本項(xiàng)目中,我們使用此類型來存儲(chǔ)頻譜掃描模塊產(chǎn)生的全頻段及自定義頻段的頻譜數(shù)組(即電平數(shù)組)。在Oracle數(shù)據(jù)庫中,當(dāng)需要插入字節(jié)數(shù)超過4000的內(nèi)容時(shí),無法通過簡單的拼組sql語句來實(shí)現(xiàn)插入,即使是插入clob類型數(shù)據(jù),一次性寫入的字節(jié)數(shù)上限為32767,否則會(huì)報(bào)錯(cuò)。在本項(xiàng)目中,當(dāng)我們將頻譜掃描模塊的分辨率提高時(shí),由整個(gè)掃描頻段頻譜數(shù)組所組成的字段的字節(jié)數(shù)會(huì)輕易超過這個(gè)上限值。因此,我們?yōu)閿?shù)據(jù)庫編寫了存儲(chǔ)過程,使用特定語句對(duì)表內(nèi)空clob字段進(jìn)行update操作,以實(shí)現(xiàn)插入字段功能,并且,當(dāng)單次插入字節(jié)數(shù)大于32767時(shí),將多余字節(jié)循環(huán)插入已插入字節(jié)的末尾,這樣,就解決了對(duì)擁有超長字節(jié)的字段的存儲(chǔ)入庫問題。
2.2.2 AM原始IQ數(shù)據(jù)文本讀寫
由于頻譜變化在一段時(shí)間內(nèi)不會(huì)十分頻繁,故雖然執(zhí)行一次頻譜掃描動(dòng)作產(chǎn)生的數(shù)據(jù)量龐大,但對(duì)頻譜數(shù)據(jù)的存儲(chǔ)頻率卻不需要很高,本項(xiàng)目中用戶可按照實(shí)際情況自行在1分鐘/次至30分鐘/次,幾種存儲(chǔ)模式中進(jìn)行選擇。而在單頻分析模塊,我們需要將模塊每0.2秒解調(diào)出的數(shù)據(jù)全部入庫,數(shù)據(jù)庫就要在短時(shí)間內(nèi)寫入大量超長字節(jié)字段(由原始IQ數(shù)組組成)。在程序試運(yùn)行階段,我們發(fā)現(xiàn)在該模塊運(yùn)行一段時(shí)間后,會(huì)出現(xiàn)待入庫數(shù)據(jù)滯留在程序內(nèi)的情況,從而導(dǎo)致程序占用內(nèi)存越來越大。
為了解決這個(gè)問題,我們改用以文本形式將中短波原始IQ數(shù)組存儲(chǔ)入本地磁盤,而調(diào)頻廣播和開路電視信號(hào)的原始IQ數(shù)據(jù)因異常龐大,我們選擇將由IQ信號(hào)解調(diào)出的波形數(shù)據(jù)按一定比例抽樣后存入Oracle服務(wù)器中。如此一來,提高了程序的運(yùn)行效率,減輕了Oracle服務(wù)器的工作負(fù)擔(dān)。
2.2.3 基于Labview隊(duì)列的查詢程序優(yōu)化
Labview中的隊(duì)列是實(shí)現(xiàn)復(fù)雜程序設(shè)計(jì)模式的基礎(chǔ)。在歷史數(shù)據(jù)查詢模塊中我們利用隊(duì)列來實(shí)現(xiàn)FIFO(First Input First Output)數(shù)據(jù)結(jié)構(gòu),并配合采用生產(chǎn)者/消費(fèi)者程序設(shè)計(jì)模式,對(duì)龐大數(shù)據(jù)的查詢、展示進(jìn)行優(yōu)化。隊(duì)列具有下列三大作用:隊(duì)列可以去除耦合;隊(duì)列可以處理忙閑不均;隊(duì)列可以并行處理。
在歷史數(shù)據(jù)查詢模塊,我們將從數(shù)據(jù)庫中查詢到的數(shù)據(jù)入隊(duì)列(生產(chǎn)),當(dāng)隊(duì)列中有數(shù)據(jù)時(shí)按照FIFO規(guī)則輸出數(shù)據(jù)(消費(fèi)),并依據(jù)這些頻譜數(shù)據(jù)形成各類歷史圖表(折線圖、強(qiáng)度圖、瀑布圖等)和各項(xiàng)指標(biāo)。利用隊(duì)列我們可以對(duì)具有龐大數(shù)據(jù)量的歷史數(shù)據(jù)進(jìn)行流暢查詢和顯示,使得程序運(yùn)行更加順暢,用戶使用體驗(yàn)更出色。
無線廣播頻譜監(jiān)測與管理系統(tǒng)通過對(duì)大量實(shí)測數(shù)據(jù)的分析,能夠直觀地向用戶展示各項(xiàng)歷史數(shù)據(jù)、頻譜占用情況、非法電臺(tái)等大數(shù)據(jù)背后的信息,這些對(duì)頻譜資源的分析、合理利用正是我們搭建無線廣播頻譜監(jiān)測與管理系統(tǒng)的最終目標(biāo)。而如何在龐大的數(shù)據(jù)中更高效地進(jìn)行對(duì)數(shù)據(jù)的甄別、挖掘,從而向用戶提出有用、合理的頻譜資源問題的解決方案,是我們亟待解決的問題。
[1] 白云等.基于LabVIEW的數(shù)據(jù)采集與處理技術(shù)[M].西安:西安電子科技大學(xué)出版社,2009.
[2] 周鴻順.頻譜監(jiān)測手冊[M].北京:人民郵電出版社,2006.
(作者單位:國家新聞出版廣電總局五五三臺(tái)/國家新聞出版廣電總局海南臺(tái))
TN934
A
1671-0134(2016)12-047-02
10.19483/j.cnki.11-4653/n.2016.12.016