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