《電子技術(shù)應(yīng)用》
您所在的位置:首頁(yè) > 測(cè)試測(cè)量 > 設(shè)計(jì)應(yīng)用 > 新型便攜式數(shù)據(jù)采集檢測(cè)系統(tǒng)的實(shí)現(xiàn)
新型便攜式數(shù)據(jù)采集檢測(cè)系統(tǒng)的實(shí)現(xiàn)
來源:微型機(jī)與應(yīng)用2011年第7期
胡長(zhǎng)暉,葉夢(mèng)君
(湖北師范學(xué)院 控制科學(xué)與工程系,湖北 黃石 435002)
摘要: 介紹了一種新型便攜式數(shù)據(jù)采集檢測(cè)系統(tǒng),該系統(tǒng)的數(shù)據(jù)采集設(shè)備采用USB接口傳輸數(shù)據(jù),基于Lab Windows CVI的簡(jiǎn)易虛擬示波器能顯示數(shù)據(jù)和控制數(shù)據(jù)采集設(shè)備。重點(diǎn)闡述了系統(tǒng)軟件實(shí)現(xiàn)的技術(shù)細(xì)節(jié)。測(cè)試結(jié)果表明,該系統(tǒng)結(jié)構(gòu)簡(jiǎn)單、可靠性高、應(yīng)用靈活、易于擴(kuò)展,具有廣泛的應(yīng)用前景。
Abstract:
Key words :

摘  要: 介紹了一種新型便攜式數(shù)據(jù)采集檢測(cè)系統(tǒng),該系統(tǒng)的數(shù)據(jù)采集設(shè)備采用USB接口傳輸數(shù)據(jù),基于Lab Windows CVI的簡(jiǎn)易虛擬示波器能顯示數(shù)據(jù)和控制數(shù)據(jù)采集設(shè)備。重點(diǎn)闡述了系統(tǒng)軟件實(shí)現(xiàn)的技術(shù)細(xì)節(jié)。測(cè)試結(jié)果表明,該系統(tǒng)結(jié)構(gòu)簡(jiǎn)單、可靠性高、應(yīng)用靈活、易于擴(kuò)展,具有廣泛的應(yīng)用前景。
關(guān)鍵詞: 通用串行總線;虛擬示波器;Lab Windows CVI;MAX1247;PDIUSBD12

 數(shù)據(jù)采集檢測(cè)系統(tǒng)早已廣泛應(yīng)用于工業(yè)生產(chǎn)及信息監(jiān)測(cè)等領(lǐng)域。目前市面上的產(chǎn)品都存在這樣或那樣的不足,如體積龐大不利于攜帶,價(jià)格昂貴難以推廣,采用RS-232接口傳輸速率低,安裝在計(jì)算機(jī)內(nèi)部受計(jì)算機(jī)插槽數(shù)量、地址、中斷資源的限制,不利于操作。本數(shù)據(jù)采集檢測(cè)系統(tǒng)采用USB接口傳輸數(shù)據(jù),具有較高的傳輸速率,且可靠性高,數(shù)據(jù)不易丟失,抗干擾性強(qiáng);采用基于PC的虛擬示波器檢測(cè)采樣對(duì)象,進(jìn)行數(shù)據(jù)顯示、分析處理,很好地解決了上述問題。
1 系統(tǒng)總體設(shè)計(jì)方案
 數(shù)據(jù)采集檢測(cè)系統(tǒng)的總體結(jié)構(gòu)如圖1所示。

 USB設(shè)備芯片PDIUSBD12是NXP公司在USB1.1協(xié)議設(shè)備端使用最多、技術(shù)最成熟的芯片之一,片內(nèi)集成了高性能的串行接口引擎和3個(gè)端點(diǎn)的FIFO緩沖區(qū),其中端點(diǎn)2具有64 B的雙緩沖區(qū),適合數(shù)據(jù)傳輸量較大的場(chǎng)合應(yīng)用。PDIUSBD12與NXP公司的8位MCU P89C58x2FN實(shí)現(xiàn)數(shù)據(jù)交換簡(jiǎn)單可靠。MAXIM公司的12位4通道A/D轉(zhuǎn)換器MAX1247,有較快的轉(zhuǎn)換速率(7.5 μs),在軟件控制下能實(shí)現(xiàn)對(duì)正負(fù)電壓信號(hào)量的讀取。
 本系統(tǒng)主要由基于PC(USB Host)的虛擬示波器和數(shù)據(jù)采集設(shè)備(USB Device)兩部分組成。A/D轉(zhuǎn)換器MAX1247可最多連接4路模擬電壓信號(hào)量,轉(zhuǎn)換為數(shù)字量后通過其片上SPI接口傳輸給主控制器P89C59x2FN。主控制器將采集的數(shù)據(jù)包傳輸給USB接口芯片PDIUSBD12,數(shù)據(jù)將按照USB協(xié)議被傳輸給USB主機(jī)(PC),通過USB設(shè)備驅(qū)動(dòng),動(dòng)態(tài)鏈接庫(kù),數(shù)據(jù)最后在虛擬示波器中顯示并進(jìn)行相關(guān)的處理。數(shù)據(jù)采集設(shè)備通過USB電纜線連接到PC后即上電,它將以初始采樣頻率采集數(shù)據(jù),并傳輸?shù)教摂M示波器中。
2 系統(tǒng)軟件的設(shè)計(jì)
2.1 虛擬示波器軟件設(shè)計(jì)

 虛擬示波器使用Lab Windows CVI 8.0開發(fā),運(yùn)行界面如圖2所示。

 

 

 虛擬示波器的主要功能是顯示數(shù)據(jù),進(jìn)行數(shù)據(jù)處理,發(fā)出命令,設(shè)置數(shù)據(jù)采集設(shè)備的工作狀態(tài)。數(shù)據(jù)的讀取由封裝在動(dòng)態(tài)鏈接庫(kù)中的讀端點(diǎn)2函數(shù)(unsigned long_stdcall ReadPort2(unsigned char*pData,unsigned long iLen))實(shí)現(xiàn),讀取的數(shù)據(jù)被存放到顯示數(shù)組(static double measureData[BUFFER_SIZE])中。為了保持顯示數(shù)據(jù)的波形是連續(xù)的、緩和的,顯示數(shù)組的容量(512 B)8倍于讀端點(diǎn)2數(shù)據(jù)包的容量(64 B),在每次將讀取的數(shù)據(jù)存放到顯示數(shù)組的首部前,要將顯示數(shù)組的數(shù)據(jù)向尾部移動(dòng)64 B,其過程如圖3所示。數(shù)據(jù)經(jīng)坐標(biāo)化處理后,通過Lab Windows CVI控件函數(shù)即可顯示。顯示原則是先接收到的數(shù)據(jù)先顯示。

 從虛擬示波器發(fā)出的控制指令通過寫端點(diǎn)2函數(shù)(unsigned long_stdcall WritePort2(unsigned char*pData, unsigned long iLen))傳輸給數(shù)據(jù)采集設(shè)備。修改數(shù)據(jù)采集設(shè)備的采樣頻率時(shí),實(shí)際傳輸給數(shù)據(jù)采集設(shè)備的是定時(shí)器T1的中斷計(jì)數(shù)初值,該初值是在虛擬示波器中由采樣頻率值計(jì)算得出。這種處理可以節(jié)省單片機(jī)處理時(shí)間。
 A/D芯片MAX1247的精度為12位,數(shù)據(jù)采集設(shè)備以單字節(jié)方式將數(shù)據(jù)傳輸?shù)教摂M示波器中,數(shù)據(jù)包中相鄰兩字節(jié)為一個(gè)有效的樣點(diǎn)。而數(shù)據(jù)在虛擬示波器中以有效樣點(diǎn)為處理單元。在軟件上使用聯(lián)合體變量實(shí)現(xiàn)兩個(gè)單字節(jié)數(shù)據(jù)到雙字節(jié)數(shù)據(jù)的轉(zhuǎn)換。定義的聯(lián)合體adata包括兩個(gè)成員,其中char類型的成員PortBuf[64]接收數(shù)據(jù)包,與其同首地址的short int類型成員PortBuf2[32]用于虛擬示波器中對(duì)采樣數(shù)據(jù)的處理,這樣處理效率高。
2.2 USB設(shè)備驅(qū)動(dòng)和動(dòng)態(tài)連接庫(kù)
 USB設(shè)備驅(qū)動(dòng)程序D12TEST.SYS是用Win DDK 開發(fā)的,EasyD12.dll動(dòng)態(tài)連接庫(kù)是用VC++開發(fā)的,D12TEST.SYS和EasyD12.dll是連接虛擬示波器和USB數(shù)據(jù)采集設(shè)備的橋梁。D12TEST.SYS把虛擬示波器發(fā)出的讀/寫命令變成規(guī)范的USB請(qǐng)求包傳給USB數(shù)據(jù)采集設(shè)備。EasyD12.dll中封裝了PDIUSBD12的端點(diǎn)2的讀/寫函數(shù),通過這兩個(gè)函數(shù)實(shí)現(xiàn)從虛擬示波器到數(shù)據(jù)采集設(shè)備的端到端數(shù)據(jù)交換。
2.3 數(shù)據(jù)采集設(shè)備軟件設(shè)計(jì)
 數(shù)據(jù)采集設(shè)備軟件使用Keil C51開發(fā),軟件結(jié)構(gòu)采用前后臺(tái)系統(tǒng),后臺(tái)程序流程如圖4所示,它是一個(gè)無限循環(huán),循環(huán)中不斷檢測(cè)USB的連接狀態(tài)。如果連接正常,就檢測(cè)數(shù)據(jù)發(fā)送允許位是否有效,如有效,將數(shù)據(jù)傳送到PDIUSBD12的端點(diǎn)2的FIFO緩沖區(qū)中。

 前臺(tái)程序由中斷服務(wù)程序組成,主要包括兩個(gè)部分:(1)基于PDIUSBD12的USB協(xié)議相關(guān)的中斷服務(wù)程序,中斷源是P89C58x2FN的外部中斷INT0。由PIDUSBD12主動(dòng)發(fā)起的任何與P89C58x2FN的信息交換都是通過外部中斷INT0來實(shí)現(xiàn)。單片機(jī)讀取PDIUSBD12的中斷寄存器后,執(zhí)行相應(yīng)的中斷服務(wù)子程序。(2)數(shù)據(jù)采集的中斷服務(wù)程序。數(shù)據(jù)采集中斷服務(wù)程序流程如圖5所示,數(shù)據(jù)采集使用定時(shí)器T1實(shí)現(xiàn)定時(shí)中斷采樣,每中斷一次采集一次樣點(diǎn)。進(jìn)入中斷服務(wù)程序就對(duì)定時(shí)器T1的計(jì)數(shù)初值進(jìn)行處理,這樣由采樣頻值計(jì)算計(jì)數(shù)初值時(shí),就不用加入修正值。否則,單片機(jī)執(zhí)行中斷服務(wù)程序的耗時(shí)在計(jì)算計(jì)數(shù)初值時(shí)是不能忽略的。在主程序中A/D初始化時(shí)完成了寫A/D控制字,在中斷服務(wù)程序中,先讀取A/D轉(zhuǎn)換結(jié)果,然后再寫A/D控制字,啟動(dòng)A/D轉(zhuǎn)換,這樣處理使A/D在輸出結(jié)果前有充足的時(shí)間來完成模擬量到數(shù)字量的轉(zhuǎn)換。
2.4 A/D采樣轉(zhuǎn)換程序設(shè)計(jì)
 A/D采用具有片上SPI接口的MAX1247芯片, P89C58x2FN片上沒有SPI接口,在A/D采樣轉(zhuǎn)換程序設(shè)計(jì)中,采用軟件模擬SPI主機(jī)模式。MAX1247的外部時(shí)鐘模式轉(zhuǎn)換時(shí)序如圖6所示。A/D轉(zhuǎn)換控制原理是,在每個(gè)外部時(shí)鐘脈沖的上升沿,將控制字的一位寫入MAX1247,寫入控制字(一個(gè)字節(jié))后轉(zhuǎn)換啟動(dòng),在每個(gè)外部時(shí)鐘脈沖的下降沿,將一位的轉(zhuǎn)換結(jié)果從MAX1247中讀出。這樣寫入一個(gè)控制字需要8個(gè)外部時(shí)鐘脈沖,讀出一個(gè)轉(zhuǎn)換結(jié)果需要16個(gè)時(shí)鐘脈沖,其中前12個(gè)時(shí)鐘脈沖讀出有效的轉(zhuǎn)換結(jié)果。

 對(duì)A/D的控制頻繁地使用了位操作,采用匯編語(yǔ)言編程具有明顯的效率優(yōu)勢(shì)。寫控制字和讀采樣轉(zhuǎn)換結(jié)果程序流程如圖7所示,數(shù)據(jù)采集設(shè)備的主程序采用C語(yǔ)言編寫,在C語(yǔ)言中調(diào)用匯編語(yǔ)言子程序?qū)崿F(xiàn)主控制器對(duì)A/D的控制。

 寫控制字和讀采樣轉(zhuǎn)換結(jié)果分屬兩個(gè)不同的匯編子程序模塊,C語(yǔ)言程序調(diào)用匯編子程序模塊,需要在匯編模塊前做PUBLIC聲明,使用偽指令使CODE選項(xiàng)有效,并聲明為可再定位段類型,再選擇為當(dāng)前段,函數(shù)名大。然后在C主程序中對(duì)函數(shù)進(jìn)行外部聲明,就可以像調(diào)用普通的extern函數(shù)一樣調(diào)用匯編語(yǔ)言子程序模塊。
3 數(shù)據(jù)采集檢測(cè)系統(tǒng)的測(cè)試
 香農(nóng)采樣定理規(guī)定采樣頻率必須是信號(hào)頻率的2倍以上,才能完整保留原始信號(hào)的信息。對(duì)于復(fù)雜的規(guī)律性強(qiáng)的信號(hào),只有采樣頻率遠(yuǎn)高于信號(hào)頻率時(shí),信號(hào)才能在虛擬示波器中連續(xù)、穩(wěn)定地顯示,并得到有效、可靠的檢測(cè)結(jié)果。如圖8所示是采樣頻率為1 000 Hz、正弦波信號(hào)頻率為10 Hz的顯示效果。

 在本數(shù)據(jù)采集檢測(cè)系統(tǒng)中,嵌入各種算法軟件模塊,可以很方便地對(duì)該數(shù)據(jù)進(jìn)行相關(guān)的測(cè)試與分析。
將位置式PID算法和增量式PID算法的軟件代碼嵌入到虛擬示波器中,測(cè)試結(jié)果如圖9和圖10所示。為了達(dá)到良好的測(cè)試視覺效果,這兩種算法的相關(guān)參數(shù)設(shè)置不同。

 通過理論計(jì)算,數(shù)據(jù)采集設(shè)備的最高采樣頻率約為13 kHz。經(jīng)過測(cè)試,數(shù)據(jù)采集設(shè)備采集電壓信號(hào)量的頻率在500 Hz以下,規(guī)律性、復(fù)雜性強(qiáng)的電壓信號(hào)量的數(shù)據(jù)波形能夠在虛擬示波器中連續(xù)地、穩(wěn)定地顯示出來,數(shù)據(jù)經(jīng)計(jì)算處理后能達(dá)到很好的檢測(cè)效果。電壓信號(hào)量頻率過高,則虛擬示波器檢測(cè)的數(shù)據(jù)波形穩(wěn)定性差,檢測(cè)效果難以保證。
 本數(shù)據(jù)采集檢測(cè)系統(tǒng)可以方便、簡(jiǎn)單地應(yīng)用于被控對(duì)象頻率不高的采集檢測(cè)領(lǐng)域,并且采樣實(shí)時(shí)性好、顯示穩(wěn)定、容易嵌入各種數(shù)據(jù)分析算法。與其他數(shù)據(jù)采集檢測(cè)系統(tǒng)相比,有體積小、使用方便、即插即拔、采用USB總線供電等優(yōu)點(diǎn)。本數(shù)據(jù)采集檢測(cè)系統(tǒng)在信號(hào)測(cè)試和系統(tǒng)監(jiān)測(cè)等瞬態(tài)信號(hào)的實(shí)時(shí)采集檢測(cè)場(chǎng)合有廣泛的應(yīng)用前景。
參考文獻(xiàn)
[1] 周立功.PDIUSBD12 USB固件編程與驅(qū)動(dòng)開發(fā)[M].北京:北京航空航天大學(xué)出版社,2003.
[2] 馬偉.計(jì)算機(jī)USB系統(tǒng)原理及其主/從機(jī)設(shè)計(jì)[M].北京:北京航空航天大學(xué)出版社,2004.
[3] 高美珍,洪家平.基于USB接口和嵌入式芯片總線的數(shù)據(jù)采集系統(tǒng)[J].儀表技術(shù)與傳感器,2005(8):51-53.
[4] 邢微,劉開華.數(shù)據(jù)采集系統(tǒng)USB2.0接口設(shè)計(jì)[J].電子測(cè)量技術(shù),2006,29(1):12-13.
[5] 熊健民,胡長(zhǎng)暉,宋庭新.USB數(shù)據(jù)采集卡的研制[J].湖北工業(yè)大學(xué)學(xué)報(bào),2007,22(3):6-9.
[6] 姜偉,鄭青,季行健,等.嵌入式USB數(shù)據(jù)采集系統(tǒng)[J].儀表技術(shù)與傳感器,2008(2):45-46.

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
91久久精品国产91久久| 中文成人激情娱乐网| 国产精品久久久久三级| 欧美经典一区二区三区| 久久午夜视频| 久久久久99| 久久久久成人精品| 久久精品国产第一区二区三区最新章节 | 蜜桃av噜噜一区| 久久国产福利| 欧美一区二区视频在线观看2020| 亚洲一区二区三区在线| 一区二区三区视频在线观看| 一区二区三区四区五区精品视频 | 久久精品亚洲精品| 久久蜜臀精品av| 久久一二三区| 欧美**人妖| 欧美极品在线观看| 欧美日韩国产一区二区三区地区| 欧美日韩精品免费看| 欧美日本一区二区高清播放视频| 欧美美女操人视频| 欧美日韩一区二区免费在线观看| 国产精品99一区| 国产免费观看久久黄| 国产伦精品一区二区三区视频黑人| 国产精品入口麻豆原神| 国产欧美日韩高清| 国产亚洲欧美另类中文 | 国产亚洲精品自拍| 黄色另类av| 亚洲精品久久| 亚洲视频在线视频| 香蕉久久夜色精品国产| 亚洲成人自拍视频| 91久久精品久久国产性色也91 | 农村妇女精品| 欧美激情在线| 欧美性猛交一区二区三区精品| 国产精品久久久久久久9999| 国产伪娘ts一区| 在线观看视频一区二区欧美日韩| 亚洲国产毛片完整版| aa日韩免费精品视频一| 亚洲一区二区影院| 亚洲二区在线观看| 一区二区三区欧美视频| 久久av免费一区| 欧美电影免费观看高清| 欧美性生交xxxxx久久久| 经典三级久久| 欧美亚一区二区| 国产伦精品一区二区三区免费| 国内精品久久久久久久97牛牛| 亚洲丁香婷深爱综合| 99视频在线观看一区三区| 亚洲资源av| 亚洲激情视频网| 亚洲一区二区少妇| 久久亚洲二区| 国产精品白丝av嫩草影院| 国内伊人久久久久久网站视频| 亚洲精品国精品久久99热一| 午夜视黄欧洲亚洲| 99国内精品| 久久精品二区| 欧美色图天堂网| 黄色日韩在线| 亚洲一区二区在线| 99精品国产热久久91蜜凸| 久久精品女人天堂| 欧美日韩一区二区欧美激情| 狠狠色伊人亚洲综合成人| 一本色道久久综合亚洲精品婷婷| 久久精品欧美日韩| 亚洲欧洲av一区二区三区久久| 欧美成年人视频| 亚洲欧美视频在线观看| 国产精品99久久久久久久久| 亚洲激情视频在线播放| 欧美一级一区| 欧美日韩一区二区三区在线视频| 在线观看欧美日本| 性感少妇一区| 亚洲一区在线观看视频 | 午夜精品视频在线观看一区二区| 日韩一级不卡| 老司机免费视频一区二区| 国产精品夜夜夜一区二区三区尤| 亚洲三级视频| 亚洲黄色一区| 久久亚洲风情| 国产亚洲欧美一区在线观看| 亚洲一区二区在线免费观看| 一区二区三区.www| 欧美va天堂va视频va在线| 国产综合网站| 亚洲欧美一区二区视频| 亚洲一区二区伦理| 欧美猛交免费看| 亚洲国产日韩欧美一区二区三区| 亚洲福利视频二区| 久久久91精品| 国产亚洲欧美aaaa| 午夜精品久久久久久久久久久久久 | 一区二区欧美在线| 欧美韩日视频| 亚洲电影在线看| 91久久国产精品91久久性色| 久久综合影音| 激情欧美一区二区三区| 欧美在线播放一区二区| 欧美一区二区三区婷婷月色| 国产精品亚洲第一区在线暖暖韩国| 一区二区三区日韩欧美| 9色国产精品| 欧美欧美天天天天操| 91久久久久久久久久久久久| 亚洲精品国产精品国自产在线 | 国产精品一区久久久久| 亚洲无吗在线| 午夜精品久久| 国产精品美女主播| 亚洲无限av看| 欧美一区午夜精品| 国产午夜精品一区二区三区视频 | 一区二区91| 亚洲综合色噜噜狠狠| 国产精品老女人精品视频| 亚洲午夜极品| 欧美一区网站| 激情一区二区三区| 亚洲精品久久久蜜桃| 免费看成人av| 亚洲欧洲午夜| 亚洲无亚洲人成网站77777| 国产精品theporn| 亚洲免费一在线| 久久精品观看| 在线精品亚洲| 亚洲最新视频在线| 国产精品久久久久av| 亚洲欧美日韩精品一区二区| 久久高清福利视频| 在线观看欧美日韩国产| 日韩一区二区精品| 国产精品国产三级国产普通话三级 | 国产亚洲福利社区一区| 欧美在线黄色| 欧美成人免费va影院高清| 亚洲精品一区在线观看| 亚洲欧美激情一区二区| 国产欧美日韩视频一区二区| 亚洲二区在线| 欧美日韩国内自拍| 欧美精品一区二区三| 亚洲调教视频在线观看| 久久蜜桃香蕉精品一区二区三区| 亚洲高清视频的网址| 中文av字幕一区| 国产日韩精品综合网站| 亚洲黄色av| 欧美日韩中文在线观看| 亚洲欧美区自拍先锋| 美女爽到呻吟久久久久| 一本色道久久综合| 欧美专区亚洲专区| 亚洲国产成人精品女人久久久| 亚洲午夜精品福利| 国产主播在线一区| 在线视频欧美一区| 国产日韩精品一区| 一本久久a久久免费精品不卡| 国产欧美日韩91| 一道本一区二区| 韩国一区二区三区在线观看| 一区二区三区免费网站| 国内精品国产成人| 亚洲网址在线| 在线日本高清免费不卡| 亚洲欧美另类在线| 亚洲国产裸拍裸体视频在线观看乱了 | 亚洲国产成人久久综合一区| 亚洲一区二区不卡免费| 有坂深雪在线一区| 亚洲欧美视频一区二区三区| 极品尤物一区二区三区| 亚洲女同在线| 91久久精品一区| 久久久xxx| 亚洲视频专区在线| 欧美成人性网| 亚洲欧美日韩中文视频| 欧美日韩日本网| 亚洲国产日韩欧美在线99 | 欧美一激情一区二区三区| 亚洲国产视频a| 久热国产精品| 亚洲欧美中文字幕|