高振斌,王仁智,盧 飛,陳洪波
(1.河北工業(yè)大學(xué) 信息工程學(xué)院,天津 300401;2.中國人民解放軍93756部隊(duì) 訓(xùn)練部,天津 300130)
目前軍隊(duì)配備的超短波電臺(tái)電路復(fù)雜、成本高昂,在對(duì)學(xué)員培訓(xùn)過程中經(jīng)常由于頻繁的操作對(duì)設(shè)備造成損壞,因此在教學(xué)實(shí)踐中很難大量配備超短波電臺(tái),實(shí)驗(yàn)設(shè)備配備不足已經(jīng)成為制約訓(xùn)練效果提高的主要因素.為了很好的解決這一問題,基于模擬技術(shù)的超短波電臺(tái)模擬訓(xùn)練系統(tǒng)應(yīng)運(yùn)而生.
目前訓(xùn)練用的模擬器主要是基于計(jì)算機(jī)系統(tǒng)的,文獻(xiàn) [1]設(shè)計(jì)了一款基于TCP/IP的電臺(tái)模擬訓(xùn)練系統(tǒng),它是由主控計(jì)算機(jī)、電臺(tái)模擬器、話音交換器、數(shù)據(jù)傳輸網(wǎng)絡(luò)等4個(gè)分系統(tǒng)組成,實(shí)現(xiàn)了電臺(tái)全部操作和響應(yīng)過程模擬.而禹華鋼等利用UDP協(xié)議、IP多點(diǎn)廣播技術(shù),采用Waveform Audio API采集播放音頻、TrueSpeech音頻壓縮和多線程同步等關(guān)鍵技術(shù),在局域網(wǎng)內(nèi)較好地實(shí)現(xiàn)了電臺(tái)單頻半雙工和雙頻全雙工兩種工作模式的模擬仿真[2].謝鐵城等研制的某型電臺(tái)模擬訓(xùn)練系統(tǒng),由仿真電臺(tái)終端、主控計(jì)算機(jī)以及有線傳輸網(wǎng)絡(luò)組成,實(shí)現(xiàn)了利用有線局域網(wǎng)絡(luò)模擬無線話音通信的功能[3].董志明等設(shè)計(jì)與實(shí)現(xiàn)的指控通信裝備仿真訓(xùn)練系統(tǒng),在訓(xùn)練教室里利用有線局域網(wǎng)模擬了無線戰(zhàn)術(shù)互聯(lián)網(wǎng),在顯示終端上模擬出與實(shí)際裝備完全一致的電臺(tái)和指揮控制軟件交互界面,并在導(dǎo)調(diào)控制分系統(tǒng)的管理控制下,通過語音通信網(wǎng)和指揮控制信息網(wǎng)進(jìn)行話音與數(shù)據(jù)信息的傳輸[4].基于無線傳輸?shù)哪M電臺(tái)訓(xùn)練系統(tǒng)也有報(bào)道,其也采用了計(jì)算機(jī)系統(tǒng)[5].
以上基于計(jì)算機(jī)局域網(wǎng)設(shè)計(jì)的訓(xùn)練模擬器較好的實(shí)現(xiàn)了電臺(tái)的模擬仿真,但在外形上和實(shí)際電臺(tái)不同,操作方式也有所區(qū)別,并且系統(tǒng)成本較高.本文采用采用凌陽 SPCE061A單片機(jī)作為核心控制單元,輔以nRF2401射頻通信模塊,設(shè)計(jì)實(shí)現(xiàn)了某型號(hào)超短波電臺(tái)模擬器,具備工作模式轉(zhuǎn)換、頻道調(diào)整、語音通信和狀態(tài)顯示等實(shí)際電臺(tái)的全部功能,其外形和操作方式也與實(shí)際電臺(tái)相仿,并且造價(jià)低廉、便于攜帶、易于裝備,可大規(guī)模用于學(xué)員訓(xùn)練.
通過對(duì)實(shí)際超短波電臺(tái)功能分析,該模擬器要實(shí)現(xiàn)的主要功能有:無線語音通信、載頻調(diào)整(頻道切換)、電臺(tái)操作及狀態(tài)顯示等.
機(jī)載超短波電臺(tái)通過調(diào)制器將語音信號(hào)調(diào)制在較高的載頻上傳輸來實(shí)現(xiàn)無線通信,在接收方通過解調(diào)器獲得語音信號(hào)[2].文中模擬器將語音信號(hào)經(jīng)過模數(shù)變換后成為數(shù)字信號(hào),再進(jìn)行編碼、壓縮等處理,最后進(jìn)行無線傳輸.其中關(guān)鍵的無線通信芯片采用nRF2401,該芯片是Nordic公司的典型產(chǎn)品.它采用GFSK調(diào)制模式,只需要極少的外圍器件,即可實(shí)現(xiàn)高速的無線數(shù)據(jù)收發(fā)[6].收發(fā)載波頻率處于2.4~2.5 GHz公共頻段,數(shù)據(jù)傳輸率可達(dá)1Mbps,具有地址比較和CRC校驗(yàn)等功能.nRF2401可以工作在ShockBurstTM收發(fā)模式下,此模式有別于傳統(tǒng)的射頻收發(fā)器模式,發(fā)送數(shù)據(jù)時(shí)能自動(dòng)添加字頭和CRC校驗(yàn)碼并通過FIFO結(jié)構(gòu)發(fā)送數(shù)據(jù),接收數(shù)據(jù)時(shí)能自動(dòng)移除字頭和CRC校驗(yàn)碼.由于該模式操作簡單、節(jié)能,故本設(shè)計(jì)采用了nRF2401的ShockBurstTM收發(fā)模式.
頻道切換功能的實(shí)現(xiàn)是整個(gè)項(xiàng)目的難點(diǎn).實(shí)際電臺(tái)中,頻道信息是由載波頻率來體現(xiàn)的,通過改變載波頻率而改變電臺(tái)的頻道.在模擬器中,由于無線通信模塊的載波頻率是固定的,所以模擬器之間的通信信道是固定的.設(shè)計(jì)中將當(dāng)前模擬器的頻道信息進(jìn)行編碼作為數(shù)據(jù)幀的一部分發(fā)送出去,在接收端通過比對(duì)數(shù)據(jù)幀的頻道信息和本地的頻道信息是否相同來決定是否接收此幀數(shù)據(jù),以達(dá)到電臺(tái)的多信道通信功能.打包之后的數(shù)據(jù)幀格式如圖1所示.
模擬器面板上有復(fù)合旋鈕、按鍵以及數(shù)碼管和指示燈,主要的按鍵都具有一鍵復(fù)用功能,按鍵作為是單片機(jī)的中斷輸入.當(dāng)單片機(jī)中斷產(chǎn)生之后標(biāo)記相應(yīng)的變量,在主程序中不斷檢測變量的狀態(tài),如果標(biāo)記變量的狀態(tài)顯示有按鍵按下則依據(jù)當(dāng)前的模式和狀態(tài)來決定執(zhí)行相應(yīng)的操作,實(shí)現(xiàn)了代碼的散轉(zhuǎn).由于此部分邏輯復(fù)雜,借助微處理器實(shí)現(xiàn)比較方便[4].微處理器一方面完成各種面板操作的處理以及相關(guān)顯示工作,另一方面則完成頻道信息和語音信息的采集、轉(zhuǎn)發(fā)、接收等處理工作.
模擬器的設(shè)計(jì)方案如圖2所示,該方案主要包括以下幾個(gè)部分:核心控制模塊、顯示模塊、鍵盤輸入模塊、無線通信模塊.
圖1 數(shù)據(jù)通信格式Fig.1 Data communication format
作為核心控制單元的微處理器需要具有較強(qiáng)的處理能力來滿足語音信號(hào)的數(shù)字化傳輸需要,文中采用凌陽公司的SPCE061A單片機(jī)[5].它是凌陽科技推出的一款16位結(jié)構(gòu)的微控制器,內(nèi)含可編程音頻處理,具有DSP功能,有很強(qiáng)的信息處理能力,最高時(shí)鐘頻率可達(dá)到49MHz.較高的處理速度使其能夠非常容易地、快速地處理復(fù)雜的數(shù)字信號(hào),具備運(yùn)算速度高的優(yōu)勢,是適用于數(shù)字語音處理應(yīng)用領(lǐng)域產(chǎn)品的一種非常經(jīng)濟(jì)的選擇[7].無線通信模塊采用nRF2401無線通信芯片,文中將模擬器的頻道信息作為nRF2401的地址進(jìn)行傳送,接收方以頻道信息作為本機(jī)的地址,進(jìn)行地址比較之后以確定隨后的語音信號(hào)是否接收.旋轉(zhuǎn)編碼器以及其它按鍵作為模擬器的輸入,按鍵采用中斷方式工作及提高程序的響應(yīng)速度.采用MAX7219作為LED的驅(qū)動(dòng)芯片,在LED上顯示響應(yīng)的頻道信息.
圖2 系統(tǒng)框圖Fig.2 System block diagram
軟件程序設(shè)計(jì)主要包括中斷函數(shù)的編寫、相應(yīng)硬件設(shè)備的驅(qū)動(dòng)程序的編碼和按鍵處理函數(shù).在代碼編寫過程中優(yōu)化了代碼結(jié)構(gòu),節(jié)約使用單片機(jī)RAM資源以防止內(nèi)存溢出,對(duì)于在主函數(shù)和中斷中均被調(diào)用的函數(shù)進(jìn)行了防止重載入處理,為了提高按鍵的響應(yīng)速度,程序采用前臺(tái)和后臺(tái)模式,即中斷函數(shù)中只進(jìn)行簡單必須的處理,大部分工作在中斷返回后由主程序再進(jìn)行處理.
軟件流程如圖3所示.單片機(jī)上電后進(jìn)入初始化過程,如果發(fā)射鍵按下,則重新載入存儲(chǔ)在單片機(jī)的內(nèi)部FLASH中頻道信息;如果預(yù)置鍵按下,則可以修改頻道信息.否則進(jìn)入正常工作模式,根據(jù)相應(yīng)按鍵完成語音通信、頻道變換、模式調(diào)整等功能.比如通話鍵按下時(shí),單片機(jī)采集語音信號(hào)并壓縮,根據(jù)當(dāng)前頻道加入地址信息構(gòu)成數(shù)據(jù)幀,通過nRF2401發(fā)射出去.在nRF2401接收數(shù)據(jù)中斷請求發(fā)生時(shí),將數(shù)據(jù)解壓縮通過模數(shù)轉(zhuǎn)換器送到輸出端,驅(qū)動(dòng)耳機(jī)發(fā)聲.從而完成語音通話功能.
人機(jī)界面設(shè)計(jì)包括按鍵以及旋轉(zhuǎn)編碼器等輸入部分和七段數(shù)碼管、LED指示燈的顯示部分[7].顯示部分采用集成化的串行輸入/輸出共陰極顯示驅(qū)動(dòng)器MAX7219,它可以驅(qū)動(dòng)8位的七段數(shù)碼管或者64個(gè)獨(dú)立的LED.其工作時(shí)其只需要四線串行接口與單片機(jī)相連即可實(shí)現(xiàn)多位數(shù)碼管的顯示功能,節(jié)省了單片機(jī)的IO口資源,同時(shí)MAX7219能大量減小單片機(jī)本身的工作負(fù)擔(dān).
輸入部分主要難點(diǎn)是按鈕的復(fù)用功能的實(shí)現(xiàn),相同的按鈕(尤其是編碼器)在不同的模式或狀態(tài)下具有不同的功能.另外為了實(shí)現(xiàn)按鍵處理的實(shí)時(shí)性,對(duì)于使用頻率高的旋轉(zhuǎn)編碼器采用了中斷的方式,在中斷響應(yīng)函數(shù)中僅標(biāo)記下當(dāng)前按鈕的具體操作并進(jìn)行簡單的中斷處理之后立即返回.主要的按鍵處理部分由主程序來完成.圖4是實(shí)現(xiàn)按鍵復(fù)用功能的程序設(shè)計(jì)流程圖.
圖4 按鍵處理程序流程圖Fig.4 Key processing program flow chart
無線通信功能采用 nRF2401模塊實(shí)現(xiàn),將模擬電臺(tái)的頻道信息作為模塊地址發(fā)送,借助模塊的地址比較功能來實(shí)現(xiàn)同頻道電臺(tái)間的語音通信.單片機(jī)向 nRF2401發(fā)送數(shù)據(jù)由接收機(jī)地址和發(fā)送數(shù)據(jù)組成,其中接收機(jī)地址不超過40位,通過更換地址,可以向多個(gè)nRF2401模塊發(fā)送數(shù)據(jù),從而實(shí)現(xiàn)了模擬器之間的多機(jī)通信.此處發(fā)送的地址即為模擬電臺(tái)的頻道信息,數(shù)據(jù)為壓縮后的語音信號(hào).數(shù)據(jù)壓縮發(fā)送的過程如圖5所示.
數(shù)據(jù)由單片機(jī)發(fā)送到nRF2401之后,nRF2401將會(huì)進(jìn)行打包并發(fā)射,打包后的數(shù)據(jù)格式如圖6所示,其中幀頭為8位的校驗(yàn)頭,CRC校驗(yàn)為8位或16位的校驗(yàn)尾,在Shock Burst模式下由nRF2401自動(dòng)添加.
當(dāng)nRF2401從天線上收到數(shù)據(jù)后,首先將數(shù)據(jù)包中Address字段與本地地址字段進(jìn)行比較.如果兩者不同,則將數(shù)據(jù)丟棄,進(jìn)行下一次的搜索.兩者相同,則接收數(shù)據(jù)包中其余信息并進(jìn)行校驗(yàn).數(shù)據(jù)校驗(yàn)成功將會(huì)置位對(duì)應(yīng)的數(shù)據(jù)請求管腳DR1/DR2.單片機(jī)通過中斷方式接收數(shù)據(jù),解壓縮后送到D/A轉(zhuǎn)換器,驅(qū)動(dòng)耳機(jī)發(fā)聲,從而實(shí)現(xiàn)語音通信功能.
圖5 語音數(shù)據(jù)壓縮發(fā)送流程圖Fig.5 Voiceand data compression to send flow chart
對(duì)設(shè)計(jì)實(shí)物進(jìn)行了測試,結(jié)果顯示該模擬器語音通信流暢,能夠?qū)崿F(xiàn)相應(yīng)的電臺(tái)之間語音通信控制,按鍵和顯示功能正常,并能夠保證長時(shí)間無故障運(yùn)行,系統(tǒng)穩(wěn)定可靠.該超短波電臺(tái)訓(xùn)練模擬器已在某訓(xùn)練基地進(jìn)行推廣應(yīng)用,由于該系統(tǒng)功能完善、逼真,設(shè)計(jì)合理、實(shí)用等特點(diǎn),對(duì)該地的訓(xùn)練任務(wù)起到的極大的促進(jìn)作用.模擬器實(shí)物如圖7所示.
圖6 nRF2401發(fā)送數(shù)據(jù)的打包格式Fig.6 ThenRF2401 send data package format
圖7 模擬器實(shí)物照片F(xiàn)ig.7 The photo of simulator
本文首先討論了機(jī)載超短波電臺(tái)模擬器的意義,然后剖析了相關(guān)技術(shù)的難點(diǎn),根據(jù)語音通信的基本理論,提出了電臺(tái)模擬器的實(shí)現(xiàn)方案,并詳細(xì)介紹了模擬器的硬件和軟件的實(shí)現(xiàn)方法.該模擬器采用了無線傳輸?shù)脑O(shè)計(jì)方案,避免了采用有線方式帶來的布線、組網(wǎng)、成本的諸多不利因素;充分利用了凌陽單片機(jī)的語音功能,電路簡單,成本低廉,具有極高的靈活性;進(jìn)一步達(dá)到了節(jié)省配備經(jīng)費(fèi)和提高訓(xùn)練水平的目的,對(duì)模擬電臺(tái)的訓(xùn)練展開工作提供極大的便利,也為我軍通信部隊(duì)的戰(zhàn)斗力生成提供了一種更加經(jīng)濟(jì)、有效的全新模式.
[1]陳樹新,溫祥西,鄧妍.基于網(wǎng)絡(luò)環(huán)境的電臺(tái)模擬訓(xùn)練系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn) [J].科學(xué)技術(shù)與工程,2008,8(15):4335-4338.
[2]禹華鋼,周安棟,劉宏波.多線程語音通信在模擬電臺(tái)通信中的應(yīng)用 [J].火力與指揮控制,2010,35(3):42-45.
[3]謝鐵城,達(dá)新宇,劉蕓江,等.某電臺(tái)網(wǎng)絡(luò)模擬訓(xùn)練系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn) [J].計(jì)算機(jī)測量與控制,2010,18(5):1151-1153.
[4]董志明,王凱,彭文成,等.新型指控通信裝備仿真訓(xùn)練系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn) [J].系統(tǒng)仿真學(xué)報(bào),2010,22(1):93-95.
[5]高晶,達(dá)新宇.基于無線傳輸?shù)哪M電臺(tái)訓(xùn)練系統(tǒng)設(shè)計(jì) [J].微計(jì)算機(jī)信息,2008,24(8-1):259-261.
[6]張震宇,王華.基于凌陽單片機(jī)的語音識(shí)別技術(shù)及應(yīng)用 [J].微計(jì)算機(jī)信息,2007,23(8-2):120-121.
[7]陳麗娟,常丹華.基于nRF2401芯片的無線數(shù)據(jù)通信 [J].電子器件,2006,29(1):248-250.