基于CH375的智能數(shù)據(jù)采集卡設(shè)計(jì)方案
引言
本文引用地址:http://butianyuan.cn/article/260902.htm數(shù)據(jù)采集是現(xiàn)代電子系統(tǒng)中不可缺少的重要組成部分,在測(cè)量、制造、自動(dòng)控制等場(chǎng)合都需要高質(zhì)量的信號(hào)采集環(huán)節(jié),由于ADC技術(shù)和微控制器技術(shù)的相對(duì)成熟,基于PCI,ISA等接口的數(shù)據(jù)采集卡被廣泛地應(yīng)用在眾多科研和工控領(lǐng)域。在測(cè)試技術(shù)日益變革的今天,測(cè)試任務(wù)更加復(fù)雜多變,需要采集和處理的信息量更加冗長(zhǎng),同時(shí)要求測(cè)試環(huán)節(jié)與計(jì)算機(jī)的接口更加無(wú)縫化和標(biāo)準(zhǔn)化,基于虛擬儀器技術(shù) (Virtual Instruments)和高速USB 2.0接口的數(shù)據(jù)采集有著更為廣泛的應(yīng)用前景和市場(chǎng),是當(dāng)前測(cè)試技術(shù)研究的熱點(diǎn)之一。
以運(yùn)算速度更快,位數(shù)更寬,資源更為豐富的ARM處理器作為控制核心,配合USB 2.0數(shù)據(jù)傳輸和靈活的上位機(jī)軟件,新一代的數(shù)據(jù)采集卡已經(jīng)不再局限于單一的板卡形式,可以通過(guò)連接線獨(dú)立于計(jì)算機(jī)之外,根據(jù)測(cè)試任務(wù)的需求,滿足高精度、高速率、多功能的測(cè)試指標(biāo)。同時(shí)由于采用了高性能的ARM處理器,控制程序容量加大,方便實(shí)現(xiàn)數(shù)據(jù)采集的獨(dú)立化、智能化、多樣化,擺脫數(shù)據(jù)采集系統(tǒng)對(duì)上位機(jī)運(yùn)算能力的依賴,從而開(kāi)發(fā)出全新的智能數(shù)據(jù)采集卡。
1 系統(tǒng)原理及框圖
整個(gè)系統(tǒng)的組成框圖如圖1所示。被測(cè)電壓信號(hào)經(jīng)過(guò)前置調(diào)理送到AD7685進(jìn)行采樣,由 Atmega48的SPI驅(qū)動(dòng)AD7685,采集到的雙字節(jié)(16 b)數(shù)據(jù)由Atmega48并口,分兩次傳送給ARM ADuC7026核心。當(dāng)數(shù)據(jù)采集卡工作于聯(lián)機(jī)狀態(tài)時(shí),由PC上位機(jī)軟件設(shè)置采樣頻率和通道工作模式,經(jīng)過(guò)處理通過(guò)USB控制芯片CH375送數(shù)據(jù)到PC端;當(dāng)數(shù)據(jù)采集卡工作于離線模式時(shí),無(wú)需PC上位機(jī)干預(yù),數(shù)據(jù)采集卡按照預(yù)先設(shè)定的采樣頻率和工作模式進(jìn)行采樣。并將采樣數(shù)據(jù)通過(guò)USB控制芯片CH375送數(shù)據(jù)到U盤端。系統(tǒng)采用±9 V,+5 V,+3.3 V以及模擬地?cái)?shù)字地,并由DC/DC模塊產(chǎn)生,經(jīng)過(guò)良好的LC濾波為各個(gè)電路單元提供電力。人機(jī)接口(HMI)采用簡(jiǎn)潔的雙按鍵和LED指示,對(duì)整個(gè)數(shù)據(jù)采集卡工作模式的選擇和運(yùn)行狀態(tài)進(jìn)行控制。
2 數(shù)據(jù)采集卡的硬件實(shí)現(xiàn)
2.1 ADC接口和信號(hào)調(diào)理電路
為了滿足較高的采集精度和采樣速率,該設(shè)計(jì)選擇AD7685作為模擬/數(shù)字轉(zhuǎn)換器件。AD7685是一款16位、串行輸出、250 KSPS、電荷再分配、逐次逼近型 (PulSAR)ADC。ADC與處理器采用串行外圍設(shè)備接口(SPI)接口進(jìn)行連接,為了保證ADC的精度,采用高速光耦6N137隔離式驅(qū)動(dòng)電路來(lái)隔離處理器SPI總線上的串?dāng)_。
前置調(diào)理電路信號(hào)的流向參見(jiàn)圖1系統(tǒng)組成框圖。設(shè)計(jì)中,采用模擬開(kāi)關(guān)ADG1024對(duì)輸入信號(hào)進(jìn)行切換,并通過(guò)可編程增益放大器(PGA)AD8251進(jìn)行處理,通過(guò)增益為0.2的電平轉(zhuǎn)換16位ADC驅(qū)動(dòng)器AD8275,把±5 V的信號(hào)轉(zhuǎn)換成 0.25~2.25 V的信號(hào),極大地?cái)U(kuò)展了該數(shù)據(jù)采集卡的測(cè)量范圍,而簡(jiǎn)化了前置調(diào)理電路的設(shè)計(jì),其電壓計(jì)算公式如下:
經(jīng)過(guò)前置調(diào)理電路使得不同量程范圍的輸入信號(hào)放大或衰減到0.25~2.5 V內(nèi),最大限度地利用ADC量程,使得采集系統(tǒng)的4個(gè)輸入通道可以有單通道、雙通道、四通道3種工作模式,且每個(gè)通道皆可以設(shè)置為任意量程。前置通道的相應(yīng)配置由處理器ADuC7026完成,其配置遵循表1。
2.2 EMC措施
該設(shè)計(jì)采用外置9 V開(kāi)關(guān)型穩(wěn)壓電源或USB端口供電,由于開(kāi)關(guān)電源的低成本和高功率密度,普遍被現(xiàn)代電子系統(tǒng)設(shè)計(jì)所采用,但其帶來(lái)的電磁干擾(EMI)問(wèn)題也不容忽視。同時(shí),ARM7主頻高達(dá)45 MHz,必須考慮其EMI問(wèn)題。該設(shè)計(jì)盡量選取低噪聲的放大器和ADC,遵循最短路徑的布線原則,確保前置通道具有較低的噪聲水平。設(shè)計(jì)中,采用數(shù)字地/模擬地分區(qū)覆銅,并一點(diǎn)接地的布線方式,避免電源和數(shù)字部分對(duì)模擬地電位產(chǎn)生浮動(dòng)和干擾。同時(shí),采集卡外殼貼裝鋁箔紙,以防止外界電磁輻射影響內(nèi)部電路的工作。
2.3 USB接口
該設(shè)計(jì)使用USB控制芯片CH375,內(nèi)置海量存儲(chǔ)固件,既可以作為USB設(shè)備方式向PC上位機(jī)傳送數(shù)據(jù),又可以作為USB主機(jī),將數(shù)據(jù)存入U(xiǎn)盤中。該芯片支持USB 2.0通信協(xié)議,在并口工作模式下能同時(shí)支持主機(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個(gè)通用定時(shí)器,內(nèi)部集成UART,I2C,SPI,DAC,PWM,JTAG端口、PLA等眾多硬件資源,40個(gè)通用I/O引腳。CPU時(shí)鐘高達(dá)45 MHz,采用80腳LQFP封裝。在該設(shè)計(jì)中,搭建了一個(gè)包括供電電路、時(shí)鐘電路、復(fù)位電路、 JTAG程序下載調(diào)試接口等電路的完整ARM7應(yīng)用系統(tǒng)。實(shí)際上由于實(shí)測(cè)ADuC7026的外部I/O取反速度只有4 MHz,因此在SPI設(shè)計(jì)中,該設(shè)計(jì)加入Atmega48單片機(jī)作為中轉(zhuǎn),保證了控制核心在處理USB通信、U盤讀/寫等大量信息時(shí)對(duì)采樣的準(zhǔn)確觸發(fā)。
3 程序設(shè)計(jì)
3.1 ARM端程序編寫
ARM下位機(jī)軟件完成的主要功能有3個(gè)進(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é)束時(shí),系統(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海量存儲(chǔ)固件,將數(shù)據(jù)存入U(xiǎn)盤。為保證采集的實(shí)時(shí)性,控制器將數(shù)據(jù)存放在U盤扇區(qū)中,而不是以文件的形式讀/寫,避免創(chuàng)建文件時(shí)復(fù)雜時(shí)序的延誤,其程序流程圖如圖3所示。
3.2 PC端編程
該數(shù)據(jù)采集卡的上位機(jī)應(yīng)用程序由動(dòng)態(tài)鏈接庫(kù)DLL和客戶端程序2個(gè)部分組成。其中,DLL負(fù)責(zé)與內(nèi)核態(tài)的 USB功能驅(qū)動(dòng)程序通信,并接收應(yīng)用程序的各種操作請(qǐng)求;客戶端程序負(fù)責(zé)對(duì)數(shù)據(jù)進(jìn)行分析處理。采用VC++編寫,遵循了工程通用的輸入/輸出界面,可以完成普通數(shù)據(jù)采集卡的在線采集功能,同時(shí)也可以將數(shù)據(jù)采集卡存儲(chǔ)在U盤中的采集數(shù)據(jù),通過(guò)物理扇區(qū)尋址來(lái)讀取相應(yīng)的采集數(shù)據(jù)。
4 測(cè)試與結(jié)論
通過(guò)該數(shù)據(jù)采集卡掛載U盤,對(duì)5 kHz正弦單通道信號(hào)進(jìn)行采集,將U盤數(shù)據(jù)導(dǎo)入上位機(jī),以獲得如圖 4所示的波形,它良好地復(fù)現(xiàn)了現(xiàn)場(chǎng)波形信號(hào)。
5 結(jié) 語(yǔ)
由于采用了支持海量存儲(chǔ)技術(shù)的多模式USB總線控制芯片CH375和高速低功耗的ARM7控制器,使得該數(shù)據(jù)采集卡具有一定的智能采集能力,擺脫上位機(jī)連接限制而獨(dú)立工作,采集到的數(shù)據(jù)存儲(chǔ)到U盤中。符合新型數(shù)據(jù)采集系統(tǒng)小型化、移動(dòng)化、智能化的發(fā)展趨勢(shì),廣泛適用于工業(yè)現(xiàn)場(chǎng)和戶外作業(yè)等應(yīng)用場(chǎng)合,有很高的實(shí)用價(jià)值和推廣意義。
評(píng)論