鄒海東,錢 良
(中國(guó)衛(wèi)星海上測(cè)控部 江蘇 江陰 214431)
通信電源是整個(gè)航天測(cè)控網(wǎng)絡(luò)的關(guān)鍵基礎(chǔ)設(shè)施,其性能的穩(wěn)定性決定了關(guān)鍵設(shè)備的工作性能。因此如何及時(shí)有效的掌握所有設(shè)備通信電源的工作狀態(tài),需要提高目前情況下的技術(shù)維護(hù)水平與維護(hù)效率,采用集中維護(hù)、遠(yuǎn)程監(jiān)測(cè)等手段來(lái)實(shí)現(xiàn)。而隨著工業(yè)控制領(lǐng)域的飛速發(fā)展,基于ARM的應(yīng)用系統(tǒng)應(yīng)運(yùn)而生。傳統(tǒng)使用單片機(jī)實(shí)現(xiàn)數(shù)據(jù)采集的方式,不僅受限于其處理能力,且實(shí)時(shí)性低與可靠性差也嚴(yán)重影響了其總體應(yīng)用性能。近年來(lái),采用ARM嵌入式系統(tǒng)代替?zhèn)鹘y(tǒng)的單片機(jī)系統(tǒng),以實(shí)現(xiàn)數(shù)據(jù)的采集和控制已經(jīng)成為主流應(yīng)用。而ARM系統(tǒng)能夠滿足數(shù)據(jù)采集系統(tǒng)的多種要求,比如功能,可靠性,體積,能耗,成本以及擴(kuò)展性等[1]。
文中研究提出一種新的基于ARM嵌入式平臺(tái)的通信電源參數(shù)采集系統(tǒng),實(shí)現(xiàn)對(duì)通信電源的基本參數(shù)——電源電壓、電流的采集,所采集的數(shù)據(jù)可以通過RS-485接口或者以太網(wǎng)傳輸至遠(yuǎn)程監(jiān)測(cè)中心。將ARM嵌入式系統(tǒng)應(yīng)用引入到航天測(cè)控網(wǎng)絡(luò)中,勢(shì)必能夠提高設(shè)備的性能與維護(hù)水平,進(jìn)而提升系統(tǒng)的整體運(yùn)行效率。
示。參數(shù)采集模塊連接于ARM處理器端,可以實(shí)現(xiàn)電壓、電流、溫度等多種模擬數(shù)據(jù)參量的采集與數(shù)字化轉(zhuǎn)換,處理好的數(shù)據(jù)可以通過ARM開發(fā)板所連接的LCD(Liquid Crystal Display,液晶顯示)直接顯示出來(lái)。ARM處理器可以通過RS-485接口,對(duì)多個(gè)采集模塊參量實(shí)現(xiàn)集中處理,再通過以太網(wǎng)傳輸至遠(yuǎn)程服務(wù)器進(jìn)行后期的數(shù)據(jù)顯示與分析等,遠(yuǎn)程服務(wù)器可以將所有參數(shù)進(jìn)行統(tǒng)一保存。
圖1 系統(tǒng)總體結(jié)構(gòu)圖Fig.1 Overall schematic diagram of the system
通信電源參數(shù)采集系統(tǒng)包括參數(shù)采集模塊、ARM嵌入式處理器以及遠(yuǎn)程服務(wù)器等部分組成,其具體結(jié)構(gòu)如圖1所
通信電源參數(shù)采集系統(tǒng)的硬件平臺(tái)采用32位的ARM嵌入式處理器,另外由于嵌入式系統(tǒng)特別便于同遠(yuǎn)程主機(jī)進(jìn)行數(shù)據(jù)交換,故從系統(tǒng)的實(shí)際出發(fā),需要系統(tǒng)集成UART串口模塊、以太網(wǎng)接口模塊以及A/D(Analog/Digital,模擬/數(shù)字)轉(zhuǎn)換模塊。軟件平臺(tái)采用Windows CE系統(tǒng),Windows CE是一個(gè)可移植的、實(shí)時(shí)的、模塊化操作系統(tǒng),具有多線程、多任務(wù)和確定性的實(shí)時(shí)、完全搶占式優(yōu)先級(jí)的操作系統(tǒng)[2]。硬件開發(fā)部分采用標(biāo)準(zhǔn)ARM開發(fā)板,配合適當(dāng)?shù)膮?shù)采集模塊,布局設(shè)計(jì)簡(jiǎn)單;應(yīng)用軟件部分采用模塊化設(shè)計(jì)的思想,可以使得整個(gè)系統(tǒng)的應(yīng)用設(shè)計(jì)顯得簡(jiǎn)潔、高效。
通信電源參數(shù)采集系統(tǒng)是基于ARM處理器的應(yīng)用系統(tǒng),其基本任務(wù)是實(shí)現(xiàn)對(duì)模擬電壓、電流量的采集與A/D轉(zhuǎn)換,并能夠通過系統(tǒng)內(nèi)部的軟件進(jìn)行適當(dāng)處理,便于傳輸至遠(yuǎn)端進(jìn)行集中處理。因此,在具體實(shí)現(xiàn)上,需要解決電壓、電流模擬參數(shù)的采集、強(qiáng)參數(shù)到弱參數(shù)的轉(zhuǎn)換、多路信號(hào)的同時(shí)采集與轉(zhuǎn)換等技術(shù)性問題。在開發(fā)系統(tǒng)的硬件選擇上,重點(diǎn)需要關(guān)注系統(tǒng)的A/D轉(zhuǎn)換模塊的基本性能[3]。一般而言,分辨率、轉(zhuǎn)換速率和量化誤差3項(xiàng)指標(biāo)就決定了整個(gè)系統(tǒng)的轉(zhuǎn)換精度,這個(gè)需要根據(jù)實(shí)際應(yīng)用進(jìn)行取舍。
圖2顯示了標(biāo)準(zhǔn)的ARM6410開發(fā)板的連接關(guān)系圖,其中包括復(fù)位電路、LCD屏幕、以太網(wǎng)接口與RS-485串口模塊、JTAG調(diào)試模塊、標(biāo)準(zhǔn)電源模塊、鍵盤以及A/D轉(zhuǎn)換模塊(AD7715)等。
圖2 基于ARM處理器的數(shù)據(jù)采集系統(tǒng)結(jié)構(gòu)圖Fig.2 Structure diagram of data acquisition system based on ARM
本采集系統(tǒng)有兩種類型的采集對(duì)象:1mA~5 A電流信號(hào)與-15~24 V電壓信號(hào),這也是通信設(shè)備電源中最常見的信號(hào)。對(duì)于大電流信號(hào)(>50mA),需要先通過電流互感器將大電流轉(zhuǎn)換成小電流(≤50 mA),然后再用采樣電阻將所采集的電流信號(hào)轉(zhuǎn)換成系統(tǒng)可以處理的電壓信號(hào)(0~1 V),接入到單通道A/D轉(zhuǎn)換器的模擬輸入正、負(fù)端口(IN+,IN-);而對(duì)于小電流信號(hào)(≤50 mA),則可以直接接入采樣電阻進(jìn)行轉(zhuǎn)換接入,如圖3(a)所示。對(duì)于-15~24 V的電壓信號(hào)可以直接通過采樣電阻進(jìn)行適當(dāng)降壓,然后再接入到A/D轉(zhuǎn)換器的模擬輸入端口,如圖 3(b)、(c)所示。
圖4顯示了16位模數(shù)轉(zhuǎn)換芯片AD7715的A/D轉(zhuǎn)換器的基本接口原理圖[4]。其中INP、INN端口為模擬信號(hào)的輸入正、負(fù)端,系統(tǒng)開發(fā)應(yīng)用的關(guān)鍵端口為CS(芯片選擇信號(hào))、SCLK(系統(tǒng)串行時(shí)鐘信號(hào))、DIN(串行數(shù)據(jù)輸入)、DOUT(串行數(shù)據(jù)輸出)以及DRDY(邏輯輸出信號(hào),高電平可讀)等5個(gè)端口。
圖3 電源參數(shù)轉(zhuǎn)換圖Fig.3 Parameter transform chartof source
圖4 A/D轉(zhuǎn)換器接口圖Fig.4 Interface chart of A/D transform
在Windows CE系統(tǒng)中,對(duì)外圍設(shè)備的控制與數(shù)據(jù)獲取,需要通過驅(qū)動(dòng)軟件的流接口函數(shù)[5-6],來(lái)調(diào)用A/D轉(zhuǎn)換模塊中的寄存器來(lái)實(shí)現(xiàn)。對(duì)于本系統(tǒng)的A/D轉(zhuǎn)換模塊而言,驅(qū)動(dòng)軟件需要使用如下幾種流接口函數(shù)。
1)AD_Init():初始化 A/D 轉(zhuǎn)換模塊;
2)AD_Open():打開 A/D轉(zhuǎn)換模塊,應(yīng)用程序通過CreateFile()函數(shù)來(lái)調(diào)用該函數(shù);
3)AD_Close():關(guān)閉 A/D 轉(zhuǎn)換模塊;
4)AD_Read():從 A/D 轉(zhuǎn)換模塊中讀取數(shù)據(jù);
5)AD_Write():向 A/D 轉(zhuǎn)換模塊中寫入數(shù)據(jù)。
當(dāng)A/D轉(zhuǎn)換模塊工作時(shí),操作系統(tǒng)可以通過調(diào)用入口點(diǎn)函數(shù),完成驅(qū)動(dòng)軟件的初始化工作。之后,應(yīng)用程序先通過執(zhí)行 CreateFile()函數(shù),調(diào)用 AD_Open()來(lái)打開模塊;然后通過執(zhí)行函數(shù) ReadFile()來(lái)調(diào)用 AD_Read()。 在函數(shù) AD_Read()中,通過傳輸函數(shù)來(lái)實(shí)現(xiàn)對(duì)所采集數(shù)據(jù)的讀取。
一般A/D轉(zhuǎn)換模塊中的寄存器配置均遵從I2C總線協(xié)議,因此,對(duì)應(yīng)于讀寫操作均可以按照標(biāo)準(zhǔn)流程來(lái)進(jìn)行。圖5顯示了一個(gè)完整的數(shù)據(jù)采集操作流程。
由于串口模塊的工作頻率與CPU的工作頻率并不一致,因此需要設(shè)計(jì)一個(gè)數(shù)據(jù)緩存池來(lái)匹配二者之間的差異。當(dāng)串口端以串行方式給CPU發(fā)送數(shù)據(jù)時(shí),系統(tǒng)先將其逐一存入數(shù)據(jù)緩存池,待存滿設(shè)定數(shù)量的數(shù)據(jù)后,再一并按照“先入先出”的順序?qū)⑵渌徒oCPU進(jìn)行集中處理,以提高處理效率。另外,出于對(duì)系統(tǒng)效率的考慮,需要區(qū)分CPU端對(duì)發(fā)送數(shù)據(jù)與接收數(shù)據(jù)的操作差異,故在系統(tǒng)內(nèi)存設(shè)計(jì)兩個(gè)數(shù)據(jù)緩存池,數(shù)據(jù)緩存池的數(shù)據(jù)結(jié)構(gòu)按照環(huán)隊(duì)列方式設(shè)計(jì)。圖6為數(shù)據(jù)緩存池的設(shè)計(jì)示意圖。
圖5 數(shù)據(jù)采集流程圖Fig.5 Flow chart of data acquisition
而對(duì)于其大小的設(shè)計(jì),也需要根據(jù)實(shí)際情況進(jìn)行具體設(shè)定,一方面減少串行數(shù)據(jù)丟失的概率,同時(shí)能夠避免過多的浪費(fèi)系統(tǒng)存儲(chǔ)空間。
圖6 數(shù)據(jù)緩存池Fig.6 Data buffer pool
文中提出一種基于ARM平臺(tái)的通信電源參數(shù)采集系統(tǒng)研究,可以應(yīng)用于通信電源電壓、電流以及工作溫度等各種電子參數(shù)的數(shù)據(jù)采集與監(jiān)視,同時(shí)通過RS485接口或者以太網(wǎng)接口將所采集的數(shù)據(jù)傳送至遠(yuǎn)程監(jiān)測(cè)服務(wù)器;系統(tǒng)采用了ARM處理器,不僅功耗低,成本低,而且可以運(yùn)行Windows CE、μC/OS-II、VxWorks等嵌入式實(shí)時(shí)操作系統(tǒng),應(yīng)用拓展性強(qiáng),能夠?yàn)橄到y(tǒng)的大型應(yīng)用提供保證。
[1]王海峰.基于ARM的綜合信息處理系統(tǒng)設(shè)計(jì)[J].電子設(shè)計(jì)工程,2011,23(19):38-40.
WANG Hai-feng.Design of an integrative information management system based on ARM[J].Electronic Design Engineering,2011,23(19):38-40.
[2]劉凱.ARM嵌入式接口技術(shù)應(yīng)用[M].北京:清華大學(xué)出版社,2009.
[3]孫秋野,孫凱,馮?。瓵RM嵌入式系統(tǒng)開發(fā)典型模塊[M].北京:人民郵電出版社,2007.
[4]孫海,孟祥,鄧學(xué)偉.AD7715模數(shù)轉(zhuǎn)換器在小信號(hào)測(cè)量中的應(yīng)用[J].測(cè)控技術(shù),2003,9(22):66-68.
SUN Hai,MENG Xiang,DENG Xue-wei.Application of AD7715 A/D converter in small signals measuring[J].Measurement& Control Technology,2003,9(22):66-68.
[5]胡軍輝,王友釗.Windows CE設(shè)備驅(qū)動(dòng)程序開發(fā)[J].計(jì)算機(jī)工程,2006,32(16):41-43.
HU Jun-hui,WANG You-zhao.Device driver development for embedded windows CE[J].Computer Engineering,2006 ,32(16):41-43.
[6]張冬泉,譚南林,蘇樹強(qiáng).Windows CE實(shí)用開發(fā)技術(shù)[M].2版.北京:人民郵電出版社,2009.