孫嘉鵬
(河北遠(yuǎn)東哈里斯通信有限公司河北石家莊050200)
隨著科學(xué)技術(shù)的發(fā)展進(jìn)步,各種通信手段層出不窮,為不同行業(yè)帶來了巨大的便利。但由于各種通信手段的互相獨立性,各部門之間不能相互聯(lián)絡(luò),為跨行業(yè)跨部門的聯(lián)合行動,帶來了較多不便。從目前來看,各種通信手段的相互整合已經(jīng)是一個急待解決的問題。
數(shù)字集群系統(tǒng)依靠其連接快速、信道復(fù)用率高、聲音清晰和可靠性高等特點,已經(jīng)在各行業(yè)應(yīng)用得到了廣泛的應(yīng)用,主要的應(yīng)用行業(yè)包括:公安、人防、交通和電力等。數(shù)字集群電臺的功能都是依靠電臺本身的操作來完成,通過電臺面板或手段來實現(xiàn),在應(yīng)用上有一定的局限性。在一些應(yīng)用領(lǐng)域需要將數(shù)字集群電臺功能集成到應(yīng)用軟件中,因此需要對數(shù)字集群電臺進(jìn)行二次開發(fā),通過數(shù)字集群電臺的二次開發(fā)接口實現(xiàn)應(yīng)用軟件對電臺的控制。
數(shù)字集群電臺的二次開發(fā)接口因電臺型號的不同,接口形式和管腳定義也有所不同,有些型號電臺采用了RS232接口形式,通過AT命令集實現(xiàn)控制,如EADS電臺;有些型號電臺采用了SB9600接口形式,通過私有定義協(xié)議實現(xiàn),如Motorola電臺。通過AT命令集實現(xiàn)方式比較簡單,在此不再描述。本文主要以摩托羅拉公司的ASTRO XTL 2500電臺為例,詳細(xì)介紹數(shù)字集群電臺接入單元系統(tǒng)軟硬件結(jié)構(gòu)及二次開發(fā)口的接口形式和實現(xiàn)方式。ASTRO XTL 2500電臺是美國摩托羅拉公司生產(chǎn)的符合P25標(biāo)準(zhǔn)的數(shù)字集群車載電臺。P25是Project 25的簡稱,是全球開放的數(shù)字集群通訊標(biāo)準(zhǔn)之一。P25由美國國際公共安全通信官員協(xié)會(APCO)、國家電信管理者協(xié)會(NASTD)和聯(lián)邦政府用戶與電信工業(yè)協(xié)會(TIA)合作制定推行的,提供給各無線電業(yè)者遵循。P25標(biāo)準(zhǔn)主要應(yīng)用于美洲市場(美國市場最多),另外在中東、亞太、俄羅斯等地區(qū)有少量的分布。
通過數(shù)字集群電臺的二次開發(fā)接口可以實現(xiàn)應(yīng)用軟件與電臺的連接,從而實現(xiàn)軟件對電臺的控制,包括:轉(zhuǎn)組、私密呼叫、PTT控制和接收私密呼叫等,再將電臺收發(fā)的音頻信號接入系統(tǒng),即可實現(xiàn)數(shù)字集群電臺與其他制式電臺、電話或手機等不同設(shè)備間的融合通信,系統(tǒng)應(yīng)用環(huán)境示意圖如圖1所示。
圖1 數(shù)字集群電臺二次開發(fā)接口應(yīng)用環(huán)境示意圖
數(shù)字集群電臺接入單元硬件部分主要由二次電源模塊、CPU模塊、串口擴展模塊、音頻電路模塊、調(diào)試串口模塊、以太網(wǎng)口模塊和電平轉(zhuǎn)換模塊組成,系統(tǒng)框圖如圖2所示。
各模塊主要描述如下:
①二次電源模塊[1]:把DC12V轉(zhuǎn)換成主控電路板需要的+5 V、+3.3 V電源;
②CPU模塊 [2]:使用三星公司出品的一款A(yù)RM處理器,并配置了CPU系統(tǒng)需要的Flash和SDRAM芯片;
圖2 數(shù)字集群電臺接入單元系統(tǒng)框圖
③串口擴展模塊:使用異步通信芯片SC16C554來實現(xiàn)串口擴展,通過該芯片可以擴展出4個串口,用于連接電臺的SB9600接口、主控設(shè)備接口(連接上位機)和用于長距離通信的備用串口模式的RS422接口;
④音頻電路模塊:包括音頻放大電路和轉(zhuǎn)換電路,其中音頻放大電路用于調(diào)整音頻信號的幅度,轉(zhuǎn)換電路用于轉(zhuǎn)換音頻的形式,以方便與不同的外部設(shè)備音頻接口連接;
⑤調(diào)試串口模塊:使用CPU自帶的UART0做為軟件的調(diào)試串口;
⑥以太網(wǎng)口模塊:用于實現(xiàn)數(shù)字集群電臺接入單元的系統(tǒng)升級;
⑦電平轉(zhuǎn)換模塊:進(jìn)行串口TTL電平信號和電臺SB9600接口的差分信號的轉(zhuǎn)換。
數(shù)字集群電臺接入單元軟件系統(tǒng)主要由BOOTLOADER、LINUX KERNEL、驅(qū)動程序和應(yīng)用層接口線程組成,系統(tǒng)框架圖如圖3所示[3]。①BOOTLOADER:嵌入LINUX的啟動引導(dǎo)部分,它完成基本硬件的初始化,并加載嵌入LINUX內(nèi)核,在本系統(tǒng)中具體使用的BOOTLOADER是PPCBOOT;② LINUX KERNEL:本系統(tǒng)的嵌入操作系統(tǒng),它提供了操作系統(tǒng)的基本功能,該內(nèi)核針對ARM處理器S3C2410裁剪而成;③驅(qū)動程序:對應(yīng)系統(tǒng)中各個硬件接口,實現(xiàn)其相應(yīng)的驅(qū)動程序,其中網(wǎng)口驅(qū)動為內(nèi)核級驅(qū)動,直接編譯到了KERNEL中,其余驅(qū)動采用MODULE的形式動態(tài)加載;④應(yīng)用層接口線程:系統(tǒng)的各項功能通過相應(yīng)線程來實現(xiàn),對應(yīng)每一個驅(qū)動模塊,從而實現(xiàn)應(yīng)用軟件對底層硬件模塊的控制。
圖3 軟件系統(tǒng)模塊構(gòu)成
下面對電臺接入單元用到的通信線程進(jìn)行簡單描述:
①主機通信線程和RS422線程,用于電臺接入單元與應(yīng)用服務(wù)器之間的通信。根據(jù)不同的通信距離,選擇不同的通信線程,主要實現(xiàn)應(yīng)用軟件與電臺的通信控制,為應(yīng)用軟件與電臺的數(shù)據(jù)交互提供通道;
②SB9600線程是實現(xiàn)電臺接入單元與電臺設(shè)備間的通信控制,完成了電臺接入單元與電臺設(shè)備的雙向通信;
③IO控制線程主要實現(xiàn)了CPU對各種IO接口的連接操作,完成對電臺接入單元的各種外圍設(shè)備的控制;
④網(wǎng)口線程主要是實現(xiàn)對CPU的固件升級,為后續(xù)的功能擴展提供條件;
⑤維護(hù)管理主要完成對整個CPU軟件的維護(hù)管理,包括Watchdog、日志輸出和內(nèi)存審計等功能。
ASTRO XTL 2500電臺的尾部有一個26針的二次開發(fā)口,該開發(fā)接口包含著兩個異步串行總線:SB9600總線和RS-232/USB串行總線。SB9600總線接口可以作為電臺控制頭和一些電臺外部不同硬件模塊的控制器。而RS-232/USB總線用作電臺編程接口。二次開發(fā)需要用微控制器控制電臺的轉(zhuǎn)組、發(fā)起呼叫、以及智能語音檢測的PTT等操作,需要使用SB9600總線進(jìn)行通信控制。SB9600總線使用了摩托羅拉公司的專有協(xié)議,由BUS+、BUS-、BUSY和RESET4根信號線組成。其中BUS+、BUS-和BUSY,3根數(shù)據(jù)線可用于與微控制器的異步通信,但是為了增加通信距離,協(xié)議數(shù)據(jù)是以差分信號的形式通過BUS+和BUS-傳輸,微控制器想要與電臺通信,則需對信號進(jìn)行轉(zhuǎn)換。
圖4 電平轉(zhuǎn)換模塊的電路框圖
通過對電臺電路及SB9600總線時序進(jìn)行分析,使用運放的共模輸入將差分信號轉(zhuǎn)換為TTL電平,通過串口擴展模塊,將電臺數(shù)據(jù)傳給控制器,而控制器的數(shù)據(jù)則通過串口擴展模塊傳輸,再經(jīng)數(shù)字門電路的驅(qū)動和三極管的邏輯轉(zhuǎn)換后,發(fā)送給電臺。BUSY信號經(jīng)過類似的轉(zhuǎn)換作為控制器串口的CTS和RTS控制信號。電平轉(zhuǎn)換模塊的電路框圖如圖4所示[4-6]。
通過示波器測量及消息測試,電平轉(zhuǎn)換模塊能夠?qū)崿F(xiàn)SB9600串行總線接口和UART串行總線接口數(shù)據(jù)格式的相互轉(zhuǎn)換,使微控制器和電臺之間可以相互通信。根據(jù)電臺的通信協(xié)議,分別發(fā)送測試數(shù)據(jù)消息,電臺能夠執(zhí)行相應(yīng)操作,從而實現(xiàn)了應(yīng)用軟件對電臺的控制,測試數(shù)據(jù)消息表1所示。
表1 電臺測試消息數(shù)據(jù)
使用測試軟件對電臺通信信道進(jìn)行呼損測試,在近50 000次的呼叫測試中,僅有6次返回的消息錯誤,呼損遠(yuǎn)低于系統(tǒng)要求的0.05%,滿足了系統(tǒng)通信穩(wěn)定性的要求。
通過長時間的測試及用戶近2年的實際使用證實,經(jīng)上述對數(shù)字集群電臺的二次開發(fā),可實現(xiàn)微控制器對電臺的穩(wěn)定控制,模擬電臺的相應(yīng)控制頭的操作,這樣不僅可以與相同制式的手臺和電臺通信,還可實現(xiàn)與其他種類電臺、電話、手機和調(diào)度系統(tǒng)終端等的融合通信,達(dá)到持一種終端就可與多部門進(jìn)行通信的能力,提高緊急情況下的綜合指揮調(diào)度能力,為救援搶險爭取寶貴的時間。
[1]郭玉輝,王彥瑜,黃繼江,等.嵌入式電源控制器設(shè)計[J].核電子學(xué)與探測技術(shù),2008,28(2):299-301.
[2]劉 凱.ARM嵌入式應(yīng)用技術(shù)基礎(chǔ)[M].北京:清華大學(xué)出版社,2009.
[3]張邦術(shù).嵌入式軟件設(shè)計之思想與方法[M].北京:北京航空航天大學(xué)出版社,2009.
[4]黃 爭,李 琰.運算放大器應(yīng)用手冊[M].北京:電子工業(yè)出版社,2010.
[5]康華光.電子技術(shù)基礎(chǔ)模擬部分(第四版)[M].北京:高等教育出版社,1999.
[6]閻 石.數(shù)字電子技術(shù)基礎(chǔ)(第四版)[M].北京:高等教育出版社,1998.