引言
工程師在設(shè)計基于PC的數(shù)據(jù)采集系統(tǒng)時都認為,要想獲得比較好的性能,都需要使用PCI總線。其實并不是這樣,隨著USB通信技術(shù)的不斷發(fā)展,USB總線的傳輸速度和可靠性都在逐步提升。對于廣范應(yīng)用的USB2.0,其最快速度能夠達到480 Mb/s。就算其中一些中斷或者協(xié)議占用一部分帶寬,高于80 Mb/s的速度也是很容易實現(xiàn)的。而USB3.0協(xié)議下的理論速度可以達到USB2.0的10倍左右。另外,相比于PCI卡,USB接口對系統(tǒng)的開發(fā)與升級更加方便。
QuickUSB[1]是基于CY7C68013A[2]開發(fā)的一款針對USB2.0的高速USB模塊。Bitwise公司為這款模塊提供嵌入EEPROM的底層程序,同時還在PC端提供了相應(yīng)的LabVIEW和C語言的API底層程序,這為系統(tǒng)的開發(fā)提供了很大的便利。本文設(shè)計的系統(tǒng)[3]就是基于這個原理。
1 硬件電路設(shè)計
系統(tǒng)的核心硬件是FPGA、ADS803E、CY7C68013A以及Bitwise公司的內(nèi)嵌底層程序的EEPROM。
圖1是FPGA的配置電路。CY7C68013A可以通過PS模式來配置FPGA,而不需要其他的下載器。系統(tǒng)選擇的FPGA型號是EP2C50F484,為了使用PS模式下載,需要分別設(shè)置MSEL0=1,MSEL1=0,MSEL2=0。注意配置端口需要增加上拉電阻來保證其正常工作。
圖1 FPGA的配置電路
系統(tǒng)選擇ADS803E作為ADC轉(zhuǎn)換電路,ADS803E的轉(zhuǎn)換速度可以達到5 MHz,而且其引腳與同類型的10 MHz的ADS804以及20 MHz的ADS805兼容。圖2是系統(tǒng)ADC轉(zhuǎn)換電路。
對于ADS803E的輸入信號首先要經(jīng)過一級運放跟隨,目的是為了將輸入信號控制在其測量范圍之內(nèi)。ADS803E的測量范圍可以通過改變圖中電阻R1與R2的值來實現(xiàn),其量程范圍為0~2×R1+R2R1。ADS803E的輸出要在6個時鐘之后才會有效,也就是說其數(shù)字輸出對于模擬輸入存在6個時鐘的延時。同時,為了減小系統(tǒng)的功耗,在不需要進行ADC轉(zhuǎn)換的時候,可以通過FPGA將ADS803E的時鐘停止。
圖2 ADC轉(zhuǎn)換電路
圖3 CY7C68013A原理圖
CY7C68013A原理圖設(shè)計如圖3所示。其中包括9根地址線(GPIF_ADR0~8),16根數(shù)據(jù)線(PPB0~7、PPD0~7),以及相應(yīng)的控制線。
FPGA與CY7C68013A連接軟件界面如圖4所示。配合CY7C68013A設(shè)計編寫的相應(yīng)讀寫控制時序,能夠與PC端進行通信,同時根據(jù)獲得的控制命令來對ADC進行操作,并將獲得的數(shù)據(jù)從FIFO中讀取出來,傳遞到PC端。
圖4 FPGA與CY7C68013A連接軟件界面
2 控制軟件設(shè)計
數(shù)據(jù)采集系統(tǒng)的流程略--編者注。系統(tǒng)所有的初始化配置都是寫在一個TXT文件中,程序開始運行時會根據(jù)設(shè)置好的路徑讀取該文件,并初始化所有配置信息。該軟件采用了讀取PC環(huán)境變量的方法來增強軟件系統(tǒng)的可移植性。需要將該軟件系統(tǒng)從一臺PC轉(zhuǎn)移到另外一臺PC時,只需更改一下環(huán)境變量的定義。FPGA通過CY7C68013A從PC端接收數(shù)據(jù)和控制命令,將其轉(zhuǎn)化為存儲器讀寫、A/D轉(zhuǎn)換、前端電子學(xué)控制等命令,并最終將測量數(shù)據(jù)傳遞給PC。
3 測試結(jié)果
測試結(jié)果如圖5所示,利用直流電源作為測試源對數(shù)據(jù)采集系統(tǒng)進行性能測試。分別測試OUT+和OUT-為0~1.2 V和-1.2~0 V的變化,然后從PC端得到ADC的轉(zhuǎn)換結(jié)果。圖中橫坐標是|OUT+|與|OUT-|的和,縱坐標是與模擬電壓相對應(yīng)的ADC數(shù)值。通過對圖中數(shù)據(jù)的擬合,得到模擬信號和數(shù)字信號的線性關(guān)系y=357.144+2.223x。這就意味著每m V電壓對應(yīng)2.2的數(shù)字輸出,也可以表示為每1個數(shù)字值對應(yīng)0.45 mV的模擬電壓。直線在Y軸上的截距被稱為基值,一般為300~400個ADC計數(shù)。
圖5 數(shù)據(jù)采集系統(tǒng)的線性測試
4 結(jié)語
基于QuickUSB的數(shù)據(jù)采集系統(tǒng)可以實現(xiàn)數(shù)據(jù)的快速采集與存儲,并且在體積、功耗方面都有明顯的優(yōu)勢。系統(tǒng)目前已經(jīng)應(yīng)用到很多實驗當中[6](如PEBS實驗),都取得了很好的測試效果。
參考文獻:
[1].PCIdatasheethttp://www.dzsc.com/datasheet/PCI_1201469.html.
[2].CY7C68013Adatasheethttp://www.dzsc.com/datasheet/CY7C68013A_1124598.html.
[3].ADS803Edatasheethttp://www.dzsc.com/datasheet/ADS803E_1055146.html.
[4].ADS804datasheethttp://www.dzsc.com/datasheet/ADS804_1056197.html.
[5].ADS805datasheethttp://www.dzsc.com/datasheet/ADS805_1056198.html.
-
FPGA
+關(guān)注
關(guān)注
1630文章
21798瀏覽量
606030 -
EEPROM
+關(guān)注
關(guān)注
9文章
1033瀏覽量
81957 -
CY7C68013A
+關(guān)注
關(guān)注
2文章
20瀏覽量
21676
發(fā)布評論請先 登錄
相關(guān)推薦
MCU數(shù)據(jù)采集模塊支持哪些類型的傳感器
![MCU<b class='flag-5'>數(shù)據(jù)采集</b><b class='flag-5'>模塊</b>支持哪些類型的傳感器](https://file1.elecfans.com/web3/M00/01/DF/wKgZPGdZNXSARHiIAABQoHGnjUg657.png)
簡儀科技USB數(shù)據(jù)采集模塊介紹
PLC數(shù)據(jù)采集模塊的編程方法解析
PLC數(shù)據(jù)采集模塊的故障排除技巧
PLC數(shù)據(jù)采集模塊選型指南
利用ADS869X做一個隔離的高速數(shù)據(jù)采集系統(tǒng),ADC需要一個時鐘信號,可以自己外接一個晶振電路嗎?
TSW1418EVM高速數(shù)據(jù)采集卡
![TSW1418EVM<b class='flag-5'>高速</b><b class='flag-5'>數(shù)據(jù)采集</b>卡](https://file.elecfans.com/web1/M00/D9/4E/pIYBAF_1ac2Ac0EEAABDkS1IP1s689.png)
1GSPS高速數(shù)據(jù)采集系統(tǒng)的設(shè)計與實現(xiàn)
超高速數(shù)據(jù)采集系統(tǒng)的時序設(shè)計與信號完整性分析
高速分切機數(shù)據(jù)采集監(jiān)控告警系統(tǒng)解決方案
![<b class='flag-5'>高速</b>分切機<b class='flag-5'>數(shù)據(jù)采集</b>監(jiān)控告警<b class='flag-5'>系統(tǒng)</b>解決方案](https://file1.elecfans.com//web2/M00/02/56/wKgZoma7CfCAYNV_AAE9YQM1nsE072.jpg)
典型的數(shù)據(jù)采集系統(tǒng)設(shè)計及其核心元件
![典型的<b class='flag-5'>數(shù)據(jù)采集</b><b class='flag-5'>系統(tǒng)</b>設(shè)計及其核心元件](https://file1.elecfans.com/web2/M00/FD/24/wKgZomaYfp-ADAAPAAAbgzaan-g597.png)
評論