摘 要:為擺脫數(shù)據(jù)采集卡對計(jì)算機(jī)的依賴,研制出一種基于ARM7內(nèi)核處理器ADuC7026和USB 2.0控制器CH375的智能數(shù)據(jù)采集卡。該卡可以實(shí)現(xiàn)4路信號的波形、頻譜信息的實(shí)時顯示和記錄,并具有聯(lián)機(jī)模式和離線模式。在離線模式下可以脫離上位PC機(jī)獨(dú)立工作,將采集的數(shù)據(jù)存入U盤。硬件方面采用 AD8275,AD8251 實(shí)現(xiàn)的多通道共用信號調(diào)理電路,可實(shí)現(xiàn)4通道極性、量程的任意配置;下位機(jī)軟件方面實(shí)現(xiàn) ADuC7026 擴(kuò)展USB 2.0 接口,并通過它進(jìn)行U盤的操作;上位機(jī)軟件方面采用 Visual C++ 6.0開發(fā)應(yīng)用程序?qū)SB固件進(jìn)行調(diào)試、數(shù)據(jù)接收和分析處理。
關(guān)鍵詞:ARM7; USB 2.0; CH375; 數(shù)據(jù)采集卡; U盤
中圖分類號:TP274+.2 文獻(xiàn)標(biāo)識碼:A
文章編號:1004-373X(2010)10-0143-03
Intelligent Data Acquisition Card Based on CH375
HOU Jin-zhen, ZHAN Tao, MAO Le-shan
(Department of Precision Instrument and Mechanology, Tsinghua University, Beijing 100084, China)
Abstract: An intelligent data acquisition card based on ARM7 processor ADuC7026 and USB 2.0 controller CH375 is developed to get rid of dependence on PC. This card can display and record real-time waveform and spectrum of 4-channel signal.There are two modes:online and offline.When it′s in offline mode, data can be collected into a U-disk without PC.In hardware designing, the signal conditioning circuit which is composed of AD8275, AD8251 is used that can make 4-channel implementation more flexible, The inferior processor software achieves the interface between ADuC7026 and USB 2.0, and writing of U-disks. The PC software written in Visual C++ 6.0 actualizes USB firmware debuging,receiving and analysing of the data.
Key words: ARM7; USB 2.0; CH375; data acquisition card; U-disk
0 引 言
數(shù)據(jù)采集是現(xiàn)代電子系統(tǒng)中不可缺少的重要組成部分,在測量、制造、自動控制等場合都需要高質(zhì)量的信號采集環(huán)節(jié),由于ADC技術(shù)和微控制器技術(shù)的相對成熟,基于PCI,ISA等接口的數(shù)據(jù)采集卡被廣泛地應(yīng)用在眾多科研和工控領(lǐng)域。在測試技術(shù)日益變革的今天,測試任務(wù)更加復(fù)雜多變,需要采集和處理的信息量更加冗長,同時要求測試環(huán)節(jié)與計(jì)算機(jī)的接口更加無縫化和標(biāo)準(zhǔn)化,基于虛擬儀器技術(shù)(Virtual Instruments)[1]和高速USB 2.0接口的數(shù)據(jù)采集有著更為廣泛的應(yīng)用前景和市場,是當(dāng)前測試技術(shù)研究的熱點(diǎn)之一[2]。
以運(yùn)算速度更快,位數(shù)更寬,資源更為豐富的ARM處理器作為控制核心,配合USB 2.0數(shù)據(jù)傳輸和靈活的上位機(jī)軟件,新一代的數(shù)據(jù)采集卡已經(jīng)不再局限于單一的板卡形式,可以通過連接線獨(dú)立于計(jì)算機(jī)之外,根據(jù)測試任務(wù)的需求,滿足高精度、高速率、多功能的測試指標(biāo)。同時由于采用了高性能的ARM處理器,控制程序容量加大,方便實(shí)現(xiàn)數(shù)據(jù)采集的獨(dú)立化、智能化、多樣化,擺脫數(shù)據(jù)采集系統(tǒng)對上位機(jī)運(yùn)算能力的依賴,從而開發(fā)出全新的智能數(shù)據(jù)采集卡。
1 系統(tǒng)原理及框圖
整個系統(tǒng)的組成框圖如圖1所示。被測電壓信號經(jīng)過前置調(diào)理送到AD7685進(jìn)行采樣,由Atmega48的SPI驅(qū)動AD7685,采集到的雙字節(jié)(16 b)數(shù)據(jù)由Atmega48并口,分兩次傳送給ARM ADuC7026核心。當(dāng)數(shù)據(jù)采集卡工作于聯(lián)機(jī)狀態(tài)時,由PC上位機(jī)軟件設(shè)置采樣頻率和通道工作模式,經(jīng)過處理通過USB控制芯片CH375送數(shù)據(jù)到PC端;當(dāng)數(shù)據(jù)采集卡工作于離線模式時,無需PC上位機(jī)干預(yù),數(shù)據(jù)采集卡按照預(yù)先設(shè)定的采樣頻率和工作模式進(jìn)行采樣,并將采樣數(shù)據(jù)通過USB控制芯片CH375送數(shù)據(jù)到U盤端。系統(tǒng)采用±9 V,+5 V,+3.3 V以及模擬地?cái)?shù)字地,并由DC/DC模塊產(chǎn)生,經(jīng)過良好的LC濾波為各個電路單元提供電力。人機(jī)接口(HMI)采用簡潔的雙按鍵和LED指示,對整個數(shù)據(jù)采集卡工作模式的選擇和運(yùn)行狀態(tài)進(jìn)行控制。
圖1 系統(tǒng)組成框圖
2 數(shù)據(jù)采集卡的硬件實(shí)現(xiàn)
2.1 ADC接口和信號調(diào)理電路
為了滿足較高的采集精度和采樣速率,該設(shè)計(jì)選擇AD7685作為模擬/數(shù)字轉(zhuǎn)換器件[3]。AD7685是一款16位、串行輸出、250 KSPS、電荷再分配、逐次逼近型(PulSAR)ADC[4]。ADC與處理器采用串行外圍設(shè)備接口(SPI)接口進(jìn)行連接,為了保證ADC的精度,采用高速光耦6N137隔離式驅(qū)動電路來隔離處理器SPI總線上的串?dāng)_。
前置調(diào)理電路信號的流向參見圖1系統(tǒng)組成框圖。設(shè)計(jì)中,采用模擬開關(guān)ADG1024對輸入信號進(jìn)行切換,并通過可編程增益放大器(PGA)AD8251進(jìn)行處理,通過增益為0.2的電平轉(zhuǎn)換16位ADC驅(qū)動器AD8275,把±5 V的信號轉(zhuǎn)換成0.25~2.25 V的信號,極大地?cái)U(kuò)展了該數(shù)據(jù)采集卡的測量范圍,而簡化了前置調(diào)理電路的設(shè)計(jì),其電壓計(jì)算公式如下:
VOUT=(VINP-VINN)/5+(VREF+0)/2
=(VINP-VINN)/5+1.25
經(jīng)過前置調(diào)理電路使得不同量程范圍的輸入信號放大或衰減到0.25~2.5 V內(nèi),最大限度地利用ADC量程,使得采集系統(tǒng)的4個輸入通道可以有單通道、雙通道、四通道3種工作模式,且每個通道皆可以設(shè)置為任意量程。前置通道的相應(yīng)配置由處理器ADuC7026完成,其配置遵循表1。
表1 采集通道設(shè)置對照表
量程/VAD825(1)增益AD825(2)增益AD8275輸出 /V最終輸出 /V
±51.01.00.25~2.250.25~2.25
±2.52.01.00.25~2.250.25~2.25
±1.254.01.00.25~2.250.25~2.25
0~+51.02.00.25~1.250.5~2.5
2.2 EMC措施
該設(shè)計(jì)采用外置9 V開關(guān)型穩(wěn)壓電源或USB端口供電,由于開關(guān)電源的低成本和高功率密度,普遍被現(xiàn)代電子系統(tǒng)設(shè)計(jì)所采用,但其帶來的電磁干擾(EMI)問題也不容忽視[5]。同時,ARM7主頻高達(dá)45 MHz,必須考慮其EMI問題。該設(shè)計(jì)盡量選取低噪聲的放大器和ADC,遵循最短路徑的布線原則,確保前置通道具有較低的噪聲水平[6]。設(shè)計(jì)中,采用數(shù)字地/模擬地分區(qū)覆銅,并一點(diǎn)接地的布線方式,避免電源和數(shù)字部分對模擬地電位產(chǎn)生浮動和干擾[7]。同時,采集卡外殼貼裝鋁箔紙,以防止外界電磁輻射影響內(nèi)部電路的工作。
2.3 USB接口
該設(shè)計(jì)使用USB控制芯片CH375,內(nèi)置海量存儲固件,既可以作為USB設(shè)備方式向PC上位機(jī)傳送數(shù)據(jù),又可以作為USB主機(jī),將數(shù)據(jù)存入U盤中。該芯片支持USB 2.0通信協(xié)議,在并口工作模式下能同時支持主機(jī)方式和設(shè)備方式。為了保證USB高速傳輸數(shù)據(jù)的穩(wěn)定性和完整性,采取如下措施:
(1) 采用USB屏蔽線作為連接線,保證數(shù)據(jù)傳輸不受外界電磁干擾。
(2) 保證計(jì)算機(jī)USB端口的地線與USB控制芯片CH375的地線嚴(yán)格等電位。
2.4 ARM系統(tǒng)的構(gòu)建
ADuC7026是基于ARM7TDMI內(nèi)核的精密控制器,具有62 KB FLASH,8 KB RAM和4個通用定時器,內(nèi)部集成UART,I2C,SPI,DAC,PWM,JTAG端口、PLA等眾多硬件資源,40個通用I/O引腳。CPU時鐘高達(dá)45 MHz,采用80腳LQFP封裝[8]。在該設(shè)計(jì)中,搭建了一個包括供電電路、時鐘電路、復(fù)位電路、JTAG程序下載調(diào)試接口等電路的完整ARM7應(yīng)用系統(tǒng)。實(shí)際上由于實(shí)測ADuC7026的外部I/O取反速度只有4 MHz,因此在SPI設(shè)計(jì)中,該設(shè)計(jì)加入Atmega48單片機(jī)作為中轉(zhuǎn),保證了控制核心在處理USB通信、U盤讀/寫等大量信息時對采樣的準(zhǔn)確觸發(fā)。
3 程序設(shè)計(jì)
3.1 ARM端程序編寫
ARM下位機(jī)軟件完成的主要功能有3個進(jìn)程,分別為Wait,Online,Offline。當(dāng)數(shù)據(jù)采集卡上電復(fù)位后,首先執(zhí)行Wait進(jìn)程,該進(jìn)程等待按鍵操作,更改系統(tǒng)工作模式,配合的子程序還有相應(yīng)初始化程序、按鍵防抖程序等。當(dāng)Wait進(jìn)程結(jié)束時,系統(tǒng)轉(zhuǎn)入聯(lián)機(jī)模式(Online)或離線模式(Offline)。聯(lián)機(jī)模式按照用戶設(shè)置進(jìn)行采樣,將數(shù)據(jù)存入CH375緩沖,CH375負(fù)責(zé)將數(shù)據(jù)傳送給上位PC機(jī),其程序流程如圖2所示。離線模式則利用CH375海量存儲固件,將數(shù)據(jù)存入U盤。為保證采集的實(shí)時性,控制器將數(shù)據(jù)存放在U盤扇區(qū)中[9],而不是以文件的形式讀/寫,避免創(chuàng)建文件時復(fù)雜時序的延誤,其程序流程圖如圖3所示。
圖2 聯(lián)機(jī)模式程序流程圖
圖3 離線模式程序流程圖
3.2 PC端編程
該數(shù)據(jù)采集卡的上位機(jī)應(yīng)用程序由動態(tài)鏈接庫DLL和客戶端程序2個部分組成[10]。其中,DLL負(fù)責(zé)與內(nèi)核態(tài)的USB功能驅(qū)動程序通信,并接收應(yīng)用程序的各種操作請求;客戶端程序負(fù)責(zé)對數(shù)據(jù)進(jìn)行分析處理。采用VC++編寫,遵循了工程通用的輸入/輸出界面,可以完成普通數(shù)據(jù)采集卡的在線采集功能,同時也可以將數(shù)據(jù)采集卡存儲在U盤中的采集數(shù)據(jù),通過物理扇區(qū)尋址來讀取相應(yīng)的采集數(shù)據(jù)。
4 測試與結(jié)論
通過該數(shù)據(jù)采集卡掛載U盤,對5 kHz正弦單通道信號進(jìn)行采集,將U盤數(shù)據(jù)導(dǎo)入上位機(jī),以獲得如圖4所示的波形,它良好地復(fù)現(xiàn)了現(xiàn)場波形信號。
圖4 5 kHz正弦波離線模式采樣曲線
5 結(jié) 語
由于采用了支持海量存儲技術(shù)的多模式USB總線控制芯片CH375和高速低功耗的ARM7控制器,使得該數(shù)據(jù)采集卡具有一定的智能采集能力,擺脫上位機(jī)連接限制而獨(dú)立工作,采集到的數(shù)據(jù)存儲到U盤中。符合新型數(shù)據(jù)采集系統(tǒng)小型化、移動化、智能化的發(fā)展趨勢,廣泛適用于工業(yè)現(xiàn)場和戶外作業(yè)等應(yīng)用場合,有很高的實(shí)用價值和推廣意義。
該項(xiàng)目獲得2009年UDC全國大學(xué)生創(chuàng)新設(shè)計(jì)競賽高級組一等獎。
參考文獻(xiàn)
[1]QUINTANS Camilo, MOURE Maria José, VALDESPENA Maria Dolores. A virual instrumentation laboratory based on a reconfigurable coprocessor[J].IEEE Trans. on Instumentation and Measurement, 2006, 55(2): 635-645.
[2]RANA K P S, KHAN S H. A DAQ card based mixed signal virtual oscilloscope[J]. Measurement, 2008, 41(9): 1032-1039.
[3]畢文輝,嚴(yán)楠,崔德邦,等.數(shù)據(jù)采集系統(tǒng)中A/D轉(zhuǎn)換器的正確選擇[J].計(jì)量與測試技術(shù),2009,36(4):20-22.
[4]Analog Devices. AD7685 Datasheet[EB/OL]. [2007-05-21] http: //www. analog. com/zh/analog-to-digital-converters/ad-converters/ad7685/products/ product. html, 2007.
[5]LIU Qian, WANG Shuo, BAISDEN A C. EMI suppression in voltage source converters by utilizing dc-link decoupling capacitors[J]. IEEE Trans. on Power Electronics, 2007, 22(4):1417-1428.
[6]張寶東,秦石喬,王省書,等.虛擬數(shù)字存儲示波器中A/D動態(tài)性能的研究[J].儀器儀表學(xué)報,2008,29(8):1700-1703.
[7]漢澤西,李彪,郭正虹.接地抗干擾技術(shù)的探討[J].測控技術(shù),2007,26(12):74-77.
[8]Analog Devices. ADuC7026 Datasheet[EB/OL]. [2009-08-09] http: //www. analog. com/zh/analog-microcontroll-ers/analog-microcontrollers/aduc 7026/products/product.html, 2007.
[9]南京沁恒電子有限公司.U盤文件讀寫模塊的說明,單片機(jī)讀寫U盤[EB/OL]. [2007-11-09] http://www.winchiphead.com/download/ index.htm.
[10]徐崇德,朱榮新.基于USB 2.0的虛擬儀器設(shè)計(jì)[J].空軍工程大學(xué)學(xué)報:自然科學(xué)版,2006(3):73-81.