亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于LabVIEW2012FPGA模式的數(shù)據(jù)采集和存儲系統(tǒng)

        2014-07-24 07:23:24王樹東魏孔貞李曉培
        現(xiàn)代電子技術(shù) 2014年14期

        王樹東+魏孔貞+李曉培

        摘 要: 為了提高數(shù)據(jù)采集系統(tǒng)精度,減少開發(fā)成本,提高開發(fā)效率,基于LabVIEW虛擬儀器開發(fā)工具研究并設(shè)計了一種數(shù)據(jù)采集系統(tǒng)。該系統(tǒng)采用FPGA編程模式和網(wǎng)絡(luò)流技術(shù)實現(xiàn)大批量數(shù)據(jù)實時傳輸,并對數(shù)據(jù)進行分析處理和存儲。系統(tǒng)硬件采用美國NI實時控制器CRIO?9025,實現(xiàn)16路數(shù)據(jù)可靠采集與存儲。實驗仿真及實際運行結(jié)果表明該數(shù)據(jù)采集系統(tǒng)能夠精確地對數(shù)據(jù)進行實時采集以及分析處理,達到了項目要求。

        關(guān)鍵詞: FPGA; FIFO; 網(wǎng)絡(luò)流; 數(shù)據(jù)采集系統(tǒng); SQL數(shù)據(jù)庫

        中圖分類號: TN98?34 文獻標識碼: A 文章編號: 1004?373X(2014)14?0142?04

        Data acquisition and storage system based on LabVIEW 2012FPGA pattern

        WANG Shu?dong1,2, WEI Kong?zhen1, LI Xiao?pei1

        (1. College of Electrical and Information Engineering, Lanzhou University of Technology, Lanzhou 730050, China;

        2. Gansu Key Laboratory for Advanced Industrial Process Control, Lanzhou 730050, China)

        Abstract: In order to improve the accuracy of the data acquisition system, reduce development costs and improve development efficiency, a data acquisition system was designed on the basis of the development tool research for LabVIEW virtual instruments. The FPGA programming mode and network flow technology are adopted in the system to execute real?time transmission of the mass data, which is analyzed, processed and stored. The real?time controller cRIO?9025 made by National Instruments (NI) is used in the system hardwares to achieve 16?channel data acquisition and storage. Simulation and experimental results show that the data acquisition system can realize the accurate real?time data acquisition and analysis, and meet the project requirements.

        Keywords: FPGA; FIFO; network stream; data acquisition system; SQL database

        0 引 言

        隨著計算機技術(shù)和智能儀器儀表的深入發(fā)展,以計算機為核心的網(wǎng)絡(luò)化測控系統(tǒng)得到越來越多的應用,尤其是在航空航天等國防領(lǐng)域。LabVIEW是虛擬儀器領(lǐng)域中最具有代表性的圖形化編程開發(fā)平臺,是目前國際上首推并應用最廣的數(shù)據(jù)采集和控制開發(fā)環(huán)境之一,主要應用于儀器控制、數(shù)據(jù)采集、數(shù)據(jù)分析等領(lǐng)域,并適用于多種不同的操作系統(tǒng)平臺[1]。

        LabVIEW采用強大的圖形化語言(G語言)編程,面向測試工程師而非專業(yè)程序員,編程非常方便,人機交互界面直觀友好,具有強大的數(shù)據(jù)可視化分析和儀器控制能力等特點[2]。基于LabVIEW開發(fā)工具研究設(shè)計一套數(shù)據(jù)采集系統(tǒng),實現(xiàn)了包括數(shù)據(jù)采集、數(shù)據(jù)分析與數(shù)據(jù)處理,并通過實驗和實際調(diào)試驗證了系統(tǒng)的功能。

        1 基于LabVIEW數(shù)據(jù)采集系統(tǒng)整體架構(gòu)

        本系統(tǒng)主要是以電測型傳感器、高精度數(shù)據(jù)采集卡、實時控制器、觸摸屏和工控機進行數(shù)據(jù)的自動采集、處理、記錄、顯示、存儲和分析的系統(tǒng)。

        其工作過程為:傳感器將相應被測對象的量值轉(zhuǎn)換成電信號,數(shù)據(jù)經(jīng)過采集卡A/D轉(zhuǎn)換處理之后上傳到實時控制器,同時將數(shù)據(jù)送入到觸摸屏進行顯示和操作,數(shù)據(jù)經(jīng)過網(wǎng)線送入工業(yè)PC機,由上位機進行數(shù)據(jù)處理,包括數(shù)據(jù)的低通濾波,采樣波形的實時顯示,參數(shù)修正,歷史數(shù)據(jù),產(chǎn)生報表等。為了防止數(shù)據(jù)丟失,采用外掛硬盤對數(shù)據(jù)以采樣速率對數(shù)據(jù)進行存儲,同時以一定的時間間隔插入數(shù)據(jù)庫保存,并通過數(shù)據(jù)庫技術(shù)實現(xiàn)了歷史數(shù)據(jù)的檢索。

        本系統(tǒng)的總體結(jié)構(gòu)如圖1所示。

        圖1 數(shù)據(jù)采集系統(tǒng)總體結(jié)構(gòu)圖

        2 硬件設(shè)計

        基于LabVIEW軟件的16路數(shù)據(jù)采集系統(tǒng)由硬件部分和軟件部分組成。本系統(tǒng)硬件主要包括:工控機和數(shù)據(jù)采集卡(NI?9222和NI?9229),控制器(NI CompactRIO?9025),觸摸屏(NI?2212),500 GB存儲硬盤,傳感器等。

        數(shù)據(jù)采集卡NI?9222和NI?9229作為高速、同步C系列模塊,適用于各類NI CompactDAQ或CompactRIO機箱。可工作于掃描模式和FPGA模式,能夠方便插入控制器的FPGA背板上,支持熱插拔。NI USB?9229,4通道24位同步模擬數(shù)據(jù)采集卡,采樣頻率為(1.613~50 KS/s),額定采樣范圍±60 V。NI USB?9222,4通道16位逐次逼近型模數(shù)轉(zhuǎn)換器采集卡,測量范圍±10 V。

        觸摸屏TPC?2212采用交換機直接連接上位機,在上位機LabVIEW中創(chuàng)建項目,在程序生成規(guī)范模式下就可以把主控界面生成EXE運行文件直接裝入TPC?2212,簡單方便,實用性強。

        NI CompactRIO系統(tǒng)構(gòu)架主要包括實時控制器(內(nèi)置嵌入式處理器)、可重配置FPGA、及模塊化I/O、CompactRIO的RIO(FPGA)核心內(nèi)置數(shù)據(jù)傳輸機制,負責把數(shù)據(jù)傳到嵌入式處理器以進行實時分析,數(shù)據(jù)處理,數(shù)據(jù)記錄或與聯(lián)網(wǎng)主機通信。利用LabVIEW FPGA基本的I/O功能,用戶可以直接訪問每個I/O模塊的輸入/輸出電路,系統(tǒng)硬件結(jié)構(gòu)如圖2所示。

        圖2 系統(tǒng)硬件結(jié)構(gòu)圖

        NI為硬件提供驅(qū)動程序,用戶可以通過驅(qū)動程序接口Measurement&Automntion Explorer(NI MAX)對硬件進行各種必要的設(shè)置與測試。本設(shè)計中需要在NI MAX進行實時控制器參數(shù)配置,如語言環(huán)境、IP地址、時間,以及在控制器需要的各種軟件驅(qū)動。

        3 系統(tǒng)軟件設(shè)計的相關(guān)技術(shù)

        上位機數(shù)據(jù)采集系統(tǒng)采用LabVIEW軟件進行編程,其獨特的G語言和豐富的軟件開發(fā)工具包給系統(tǒng)編程帶來了很大的便利,它為用戶提供簡單、直觀的圖形編程法,在開發(fā)虛擬儀器方面有著較強的優(yōu)勢[3]。

        3.1 軟件總體結(jié)構(gòu)

        本設(shè)計主要包括數(shù)據(jù)采集和數(shù)據(jù)存儲兩部分,數(shù)據(jù)采集主要由下位機嵌入式NI CompactRIO平臺實現(xiàn),將寫好的LabView代碼編譯下載到可重復配置FPGA中,利用采集卡I/O模塊實現(xiàn)數(shù)據(jù)的采集。為了采集數(shù)據(jù)的可靠存儲,存儲系統(tǒng)分為兩部分:一部分經(jīng)過RT?host.VI以同步采樣速率將原始數(shù)據(jù)采用TDMS文件格式存儲到500G硬盤;另外一部分以一定的時間間隔將數(shù)據(jù)送入的PC機中的SQL Server數(shù)據(jù)庫,可以方便的對數(shù)據(jù)庫進行操作,包括查詢、刪除、插入、導入導出等。將RT導出的數(shù)據(jù)經(jīng)過觸摸屏TPC?2212上進行實時顯示,并且可以進行相應的操作。整個系統(tǒng)實現(xiàn)主要功能有:數(shù)據(jù)采集、數(shù)據(jù)處理、參數(shù)修正、數(shù)據(jù)存儲、生成報表,報警記錄等。數(shù)據(jù)采集系統(tǒng)軟件主要架構(gòu)如圖3所示。

        圖3 數(shù)據(jù)采集系統(tǒng)軟件構(gòu)架圖

        3.2 軟件實現(xiàn)關(guān)鍵技術(shù)

        本設(shè)計采用的主要技術(shù)有:采用FPGA實現(xiàn)軟件定義硬件,利用FIFO實現(xiàn)下位機FPGA和RT之間的數(shù)據(jù)轉(zhuǎn)換。采用網(wǎng)絡(luò)流技術(shù),實現(xiàn)RT和上位機之間的數(shù)據(jù)傳輸。利用數(shù)據(jù)庫labsql工具包,實現(xiàn)數(shù)據(jù)庫的操作。

        3.2.1 下位機FPGA與實時控制器RT之間的數(shù)據(jù)傳輸

        常規(guī)的數(shù)據(jù)采集卡所能實現(xiàn)的功能是由采集卡上特定的芯片實現(xiàn)的,由于實際應用中的需求不同,所以需要一種可以根據(jù)實際需求隨時改變功能的板卡,那么FPGA(Field?Programmable Gate Array)現(xiàn)場可編程門陣列,就可以通過軟件改變它的硬件功能。

        LabView的FPGA工具包有兩種工作模式:即掃描模式和FPGA模式。在掃描模式下不需要對FPGA進行任何編程,RT會直接用I/O變量映射C模塊的I/O。雖然使用掃描模式極大的降低了FPGA的編程的復雜性,但是掃描模式支持的最高掃描頻率為100 Hz,不適合高速數(shù)據(jù)采集,而且FPGA模式可以實現(xiàn)多速率控制,且性能不因應用的增加而降低,能夠在專用的硬件上實現(xiàn)控制邏輯。因此采用FPGA編程模式進行數(shù)據(jù)采集。

        實時系統(tǒng)和FPGA之間的數(shù)據(jù)交換是采集系統(tǒng)的關(guān)鍵問題,一般采用三種方式,即輪詢、中斷、FIFO。其中輪詢和中斷方式適用于采樣速度較慢的場合,在高速采集情況下,輪詢方式會造成數(shù)據(jù)的丟失;而中斷方式則會因響應中斷造成延遲,導致速度不可能太高,因此本系統(tǒng)中采用FIFO方式。

        FIFO(First In First Out)先入先出緩沖區(qū),可以用于多線程中的數(shù)據(jù)交換,最重要的用途就是在RT和FPGA直接進行數(shù)據(jù)交換,在緩沖區(qū)滿后會處于等待狀態(tài),直至超時或者緩沖有新的的空閑位置。FPGA根據(jù)FIFO作用域不同,將其分為三類:Target?Scoped FIFO,用于在FPGA終端一個或者多個VI的不同線程間傳遞數(shù)據(jù);VI?Scoped FIFO,用于在同一VI的不同線程間傳遞數(shù)據(jù)。DMA FIFO,用于RT和FPGA之間傳遞數(shù)據(jù)。由于FPGA運行的精確性,在高速采集過程中它的運行速度都在μs甚至ns的級別,而RT系統(tǒng)一般都在ms級別。因此,F(xiàn)PGA采集的速率遠遠快于RT循環(huán)的運行速度。RT如果需要讀取全部數(shù)據(jù),又不能出現(xiàn)數(shù)據(jù)丟失的情況,就必須采用DMA FIFO方式傳遞數(shù)據(jù)。

        DMA直接內(nèi)存訪問在數(shù)據(jù)采集中的使用非常普遍,本系統(tǒng)中傳輸方向為Target→Host FIFO,因為沒有CPU的參與,因此傳輸速度非常快,在傳輸過程中,配置DMA FIFO的大小是非常關(guān)鍵的,在LabVIEW中稱DMA FIFO的大小為深度,深度的大小直接影響到了數(shù)據(jù)傳輸?shù)乃俣?,如果深度太大,傳輸速率會降低;設(shè)定的太小,會丟失數(shù)據(jù)甚至會使程序中的讀取的等待時間加長而影響程序的執(zhí)行[4],本系統(tǒng)中共根據(jù)調(diào)試最后將其大小設(shè)定為4 095,但是必須保證RT方面的FIFO足夠大,這樣FPGA在插入數(shù)據(jù)是就不需要等待了。

        3.2.2 實時控制器與PC機之間的數(shù)據(jù)通信

        實時控制系統(tǒng)與上位PC機之間可以通過不同的方式進行通信,不同的通信方式具有各自的優(yōu)缺點。常見的通信方式有:網(wǎng)絡(luò)共享變量(Network?Published Shared Variables);TCP/IP;網(wǎng)絡(luò)流/隊列等。

        TCP(傳輸控制協(xié)議)是一個端對端、面向連接的協(xié)議,具有快速和面向連接(不丟失數(shù)據(jù))的特性,可以進行大數(shù)據(jù)的通信[5],但是在通信是必須把其他數(shù)據(jù)類型轉(zhuǎn)換為字符數(shù)據(jù)串的格式,為編程帶來一定的麻煩。

        網(wǎng)絡(luò)流可實現(xiàn)兩個LabVIEW應用之間發(fā)送數(shù)據(jù)的兩種通信方式。網(wǎng)絡(luò)數(shù)據(jù)流不損耗數(shù)據(jù),是單向的一對一通信通道,由寫入和讀取端點構(gòu)成。每個網(wǎng)絡(luò)流端點均使用FIFO緩存?zhèn)鬏敂?shù)據(jù)。網(wǎng)絡(luò)流引擎(NSE)使用LogosXT將數(shù)據(jù)從寫入端點的FIFO緩存?zhèn)鬏斨磷x取端點的FIFO緩存[1]。通過網(wǎng)絡(luò)流可以快速準確實現(xiàn)RT與上位機之間的數(shù)據(jù)通信,圖4顯示了網(wǎng)絡(luò)流中的數(shù)據(jù)流。

        圖4 網(wǎng)絡(luò)流數(shù)據(jù)流向示意圖

        要實現(xiàn)RT與上位機的數(shù)據(jù)通信,需要以下幾個函數(shù):

        (1) 創(chuàng)建網(wǎng)絡(luò)流寫入/讀取方端點。通過創(chuàng)建網(wǎng)絡(luò)流寫入/讀取方端點函數(shù)找到讀取方統(tǒng)一資源定位(Uniform Resource Locator,URL)或該函數(shù)的寫入方URL。在創(chuàng)建時需要知道URL使用的協(xié)議,端點所在計算機的項目別名、DNS名或IP地址,該部分的默認值為localhost,即連接至端點所在的計算機的網(wǎng)絡(luò)位置,本設(shè)計系統(tǒng)中為所用RT的IP地址192.254.4.42。

        (2) 向流中寫入/讀取單個或者多個數(shù)據(jù)。

        (3) 刷新流。保證流中的數(shù)據(jù)實時刷新。銷毀流。

        (4) 銷毀讀取方和寫入方端點后,可完全銷毀流,釋放流占用的內(nèi)存。

        上位機網(wǎng)絡(luò)流和下位機類似,不同的是從下位機讀取流中的數(shù)據(jù),實時控制器RT端網(wǎng)絡(luò)流示意圖如圖5所示。

        圖5 控制器端網(wǎng)絡(luò)流結(jié)構(gòu)圖

        3.2.3 數(shù)據(jù)庫存儲

        LabVIEW本身并不具有數(shù)據(jù)庫訪問的功能,利用LabVIEW免費提供的LabSQL工具包。將ADO和SQL的操作封裝在各個VI當中,無需了解內(nèi)部結(jié)構(gòu),易于調(diào)用。

        數(shù)據(jù)庫采用SQL Server 2005作為存儲軟件,數(shù)據(jù)存儲工具包主要使用ADOCreate Conn.vi,ADO Open Conn.vi建立數(shù)據(jù)庫的連接,ADO SQL Execute.vi中使用Insert語句來實現(xiàn)將數(shù)據(jù)插入到數(shù)據(jù)庫中,應該注意將數(shù)據(jù)庫的打開和關(guān)閉放在While循環(huán)之外,避免每次循環(huán)都要對數(shù)據(jù)庫進行不必要的操作而影響速度[6]。通過操作數(shù)據(jù)庫可以方便的對數(shù)據(jù)進行讀取,分析,插入等操作。數(shù)據(jù)庫存儲和上位機網(wǎng)絡(luò)流采集程序框圖如圖6所示。

        圖6 上位PC機存儲和網(wǎng)絡(luò)流讀取程序圖

        4 實驗驗證

        在實驗室對數(shù)據(jù)采集卡進行直流電壓輸入,通過采集卡采集數(shù)據(jù),將寫好的下位機VI通過FPGA編譯工具包下載到FPGA背板中,通過緩沖區(qū)FIFO上傳到實時控制器RT中,將RT中的采集數(shù)據(jù)以同步采樣速率存儲到外掛硬盤中,RT與PC機通過網(wǎng)絡(luò)流進行數(shù)據(jù)交互,在PC機VI中對數(shù)據(jù)進行參數(shù)修正和處理,在實時顯示界面有修正前和修正后的數(shù)據(jù)對比以及實時曲線,經(jīng)過實際對比,數(shù)據(jù)精確可靠,系統(tǒng)主界面如圖7所示。

        圖7 數(shù)據(jù)采集系統(tǒng)主界面示意圖

        利用數(shù)據(jù)庫技術(shù),根據(jù)起始時間和終止時間查詢想要的數(shù)據(jù),歷史曲線如圖8所示。

        由運行的前面板和歷史曲線顯示可以看出,原始數(shù)據(jù)輸入為直流5 V,顯示采集結(jié)果為4.997 72 V,對數(shù)值進行修正乘以系數(shù)0.499 5之后得到處理數(shù)據(jù)為2.498 86 V,將采集的數(shù)據(jù)存入到數(shù)據(jù)庫中,通過歷史曲線面板調(diào)用某一時間段的數(shù)據(jù),圖中顯示為2.490 52~2.502 1之間,滿足精度和準度要求。

        5 結(jié) 論

        本數(shù)據(jù)采集系統(tǒng)采用先進的實時控制器RT和4通道高速數(shù)據(jù)采集卡,采用靈活的FPGA編程模式,實現(xiàn)了芯片的虛擬化,程序的可重復配置,通過FIFO實現(xiàn)了FPGA與實時控制器RT的數(shù)據(jù)高速傳輸,通過網(wǎng)絡(luò)流實現(xiàn)了RT與工控機之間的數(shù)據(jù)傳輸,解決了它們之間由于工作頻率不同而造成的數(shù)據(jù)交換不同步和數(shù)據(jù)丟失的問題,實現(xiàn)了數(shù)據(jù)實時顯示,數(shù)據(jù)存儲,歷史報表等。

        圖8 數(shù)據(jù)庫歷史曲線顯示示意圖

        參考文獻

        [1] 陳樹學,劉萱.LabVIEW寶典[M].北京:電子工業(yè)出版社,2011.

        [2] 王利強.計算機測控系統(tǒng)與數(shù)據(jù)采集卡應用[M].北京:機械工業(yè)出版社,2007.

        [3] 連海洲,趙英俊.基于 LabVIEW 技術(shù)的虛擬儀器系統(tǒng)[J].儀器與測控,2001(8):21?23.

        [4] 劉君華.基于 LabVIEW的虛擬儀器設(shè)計[M].北京:電子工業(yè)出版社,2003.

        [5] 楊樂平,李海濤.Lab VIEW 程序設(shè)計與應用[M].北京:電子工業(yè)出版社,2001.

        [6] 吳偉.雙通道3GSPS數(shù)據(jù)采集模塊硬件設(shè)計[D].成都:電子科技大學,2011.

        網(wǎng)絡(luò)流可實現(xiàn)兩個LabVIEW應用之間發(fā)送數(shù)據(jù)的兩種通信方式。網(wǎng)絡(luò)數(shù)據(jù)流不損耗數(shù)據(jù),是單向的一對一通信通道,由寫入和讀取端點構(gòu)成。每個網(wǎng)絡(luò)流端點均使用FIFO緩存?zhèn)鬏敂?shù)據(jù)。網(wǎng)絡(luò)流引擎(NSE)使用LogosXT將數(shù)據(jù)從寫入端點的FIFO緩存?zhèn)鬏斨磷x取端點的FIFO緩存[1]。通過網(wǎng)絡(luò)流可以快速準確實現(xiàn)RT與上位機之間的數(shù)據(jù)通信,圖4顯示了網(wǎng)絡(luò)流中的數(shù)據(jù)流。

        圖4 網(wǎng)絡(luò)流數(shù)據(jù)流向示意圖

        要實現(xiàn)RT與上位機的數(shù)據(jù)通信,需要以下幾個函數(shù):

        (1) 創(chuàng)建網(wǎng)絡(luò)流寫入/讀取方端點。通過創(chuàng)建網(wǎng)絡(luò)流寫入/讀取方端點函數(shù)找到讀取方統(tǒng)一資源定位(Uniform Resource Locator,URL)或該函數(shù)的寫入方URL。在創(chuàng)建時需要知道URL使用的協(xié)議,端點所在計算機的項目別名、DNS名或IP地址,該部分的默認值為localhost,即連接至端點所在的計算機的網(wǎng)絡(luò)位置,本設(shè)計系統(tǒng)中為所用RT的IP地址192.254.4.42。

        (2) 向流中寫入/讀取單個或者多個數(shù)據(jù)。

        (3) 刷新流。保證流中的數(shù)據(jù)實時刷新。銷毀流。

        (4) 銷毀讀取方和寫入方端點后,可完全銷毀流,釋放流占用的內(nèi)存。

        上位機網(wǎng)絡(luò)流和下位機類似,不同的是從下位機讀取流中的數(shù)據(jù),實時控制器RT端網(wǎng)絡(luò)流示意圖如圖5所示。

        圖5 控制器端網(wǎng)絡(luò)流結(jié)構(gòu)圖

        3.2.3 數(shù)據(jù)庫存儲

        LabVIEW本身并不具有數(shù)據(jù)庫訪問的功能,利用LabVIEW免費提供的LabSQL工具包。將ADO和SQL的操作封裝在各個VI當中,無需了解內(nèi)部結(jié)構(gòu),易于調(diào)用。

        數(shù)據(jù)庫采用SQL Server 2005作為存儲軟件,數(shù)據(jù)存儲工具包主要使用ADOCreate Conn.vi,ADO Open Conn.vi建立數(shù)據(jù)庫的連接,ADO SQL Execute.vi中使用Insert語句來實現(xiàn)將數(shù)據(jù)插入到數(shù)據(jù)庫中,應該注意將數(shù)據(jù)庫的打開和關(guān)閉放在While循環(huán)之外,避免每次循環(huán)都要對數(shù)據(jù)庫進行不必要的操作而影響速度[6]。通過操作數(shù)據(jù)庫可以方便的對數(shù)據(jù)進行讀取,分析,插入等操作。數(shù)據(jù)庫存儲和上位機網(wǎng)絡(luò)流采集程序框圖如圖6所示。

        圖6 上位PC機存儲和網(wǎng)絡(luò)流讀取程序圖

        4 實驗驗證

        在實驗室對數(shù)據(jù)采集卡進行直流電壓輸入,通過采集卡采集數(shù)據(jù),將寫好的下位機VI通過FPGA編譯工具包下載到FPGA背板中,通過緩沖區(qū)FIFO上傳到實時控制器RT中,將RT中的采集數(shù)據(jù)以同步采樣速率存儲到外掛硬盤中,RT與PC機通過網(wǎng)絡(luò)流進行數(shù)據(jù)交互,在PC機VI中對數(shù)據(jù)進行參數(shù)修正和處理,在實時顯示界面有修正前和修正后的數(shù)據(jù)對比以及實時曲線,經(jīng)過實際對比,數(shù)據(jù)精確可靠,系統(tǒng)主界面如圖7所示。

        圖7 數(shù)據(jù)采集系統(tǒng)主界面示意圖

        利用數(shù)據(jù)庫技術(shù),根據(jù)起始時間和終止時間查詢想要的數(shù)據(jù),歷史曲線如圖8所示。

        由運行的前面板和歷史曲線顯示可以看出,原始數(shù)據(jù)輸入為直流5 V,顯示采集結(jié)果為4.997 72 V,對數(shù)值進行修正乘以系數(shù)0.499 5之后得到處理數(shù)據(jù)為2.498 86 V,將采集的數(shù)據(jù)存入到數(shù)據(jù)庫中,通過歷史曲線面板調(diào)用某一時間段的數(shù)據(jù),圖中顯示為2.490 52~2.502 1之間,滿足精度和準度要求。

        5 結(jié) 論

        本數(shù)據(jù)采集系統(tǒng)采用先進的實時控制器RT和4通道高速數(shù)據(jù)采集卡,采用靈活的FPGA編程模式,實現(xiàn)了芯片的虛擬化,程序的可重復配置,通過FIFO實現(xiàn)了FPGA與實時控制器RT的數(shù)據(jù)高速傳輸,通過網(wǎng)絡(luò)流實現(xiàn)了RT與工控機之間的數(shù)據(jù)傳輸,解決了它們之間由于工作頻率不同而造成的數(shù)據(jù)交換不同步和數(shù)據(jù)丟失的問題,實現(xiàn)了數(shù)據(jù)實時顯示,數(shù)據(jù)存儲,歷史報表等。

        圖8 數(shù)據(jù)庫歷史曲線顯示示意圖

        參考文獻

        [1] 陳樹學,劉萱.LabVIEW寶典[M].北京:電子工業(yè)出版社,2011.

        [2] 王利強.計算機測控系統(tǒng)與數(shù)據(jù)采集卡應用[M].北京:機械工業(yè)出版社,2007.

        [3] 連海洲,趙英俊.基于 LabVIEW 技術(shù)的虛擬儀器系統(tǒng)[J].儀器與測控,2001(8):21?23.

        [4] 劉君華.基于 LabVIEW的虛擬儀器設(shè)計[M].北京:電子工業(yè)出版社,2003.

        [5] 楊樂平,李海濤.Lab VIEW 程序設(shè)計與應用[M].北京:電子工業(yè)出版社,2001.

        [6] 吳偉.雙通道3GSPS數(shù)據(jù)采集模塊硬件設(shè)計[D].成都:電子科技大學,2011.

        網(wǎng)絡(luò)流可實現(xiàn)兩個LabVIEW應用之間發(fā)送數(shù)據(jù)的兩種通信方式。網(wǎng)絡(luò)數(shù)據(jù)流不損耗數(shù)據(jù),是單向的一對一通信通道,由寫入和讀取端點構(gòu)成。每個網(wǎng)絡(luò)流端點均使用FIFO緩存?zhèn)鬏敂?shù)據(jù)。網(wǎng)絡(luò)流引擎(NSE)使用LogosXT將數(shù)據(jù)從寫入端點的FIFO緩存?zhèn)鬏斨磷x取端點的FIFO緩存[1]。通過網(wǎng)絡(luò)流可以快速準確實現(xiàn)RT與上位機之間的數(shù)據(jù)通信,圖4顯示了網(wǎng)絡(luò)流中的數(shù)據(jù)流。

        圖4 網(wǎng)絡(luò)流數(shù)據(jù)流向示意圖

        要實現(xiàn)RT與上位機的數(shù)據(jù)通信,需要以下幾個函數(shù):

        (1) 創(chuàng)建網(wǎng)絡(luò)流寫入/讀取方端點。通過創(chuàng)建網(wǎng)絡(luò)流寫入/讀取方端點函數(shù)找到讀取方統(tǒng)一資源定位(Uniform Resource Locator,URL)或該函數(shù)的寫入方URL。在創(chuàng)建時需要知道URL使用的協(xié)議,端點所在計算機的項目別名、DNS名或IP地址,該部分的默認值為localhost,即連接至端點所在的計算機的網(wǎng)絡(luò)位置,本設(shè)計系統(tǒng)中為所用RT的IP地址192.254.4.42。

        (2) 向流中寫入/讀取單個或者多個數(shù)據(jù)。

        (3) 刷新流。保證流中的數(shù)據(jù)實時刷新。銷毀流。

        (4) 銷毀讀取方和寫入方端點后,可完全銷毀流,釋放流占用的內(nèi)存。

        上位機網(wǎng)絡(luò)流和下位機類似,不同的是從下位機讀取流中的數(shù)據(jù),實時控制器RT端網(wǎng)絡(luò)流示意圖如圖5所示。

        圖5 控制器端網(wǎng)絡(luò)流結(jié)構(gòu)圖

        3.2.3 數(shù)據(jù)庫存儲

        LabVIEW本身并不具有數(shù)據(jù)庫訪問的功能,利用LabVIEW免費提供的LabSQL工具包。將ADO和SQL的操作封裝在各個VI當中,無需了解內(nèi)部結(jié)構(gòu),易于調(diào)用。

        數(shù)據(jù)庫采用SQL Server 2005作為存儲軟件,數(shù)據(jù)存儲工具包主要使用ADOCreate Conn.vi,ADO Open Conn.vi建立數(shù)據(jù)庫的連接,ADO SQL Execute.vi中使用Insert語句來實現(xiàn)將數(shù)據(jù)插入到數(shù)據(jù)庫中,應該注意將數(shù)據(jù)庫的打開和關(guān)閉放在While循環(huán)之外,避免每次循環(huán)都要對數(shù)據(jù)庫進行不必要的操作而影響速度[6]。通過操作數(shù)據(jù)庫可以方便的對數(shù)據(jù)進行讀取,分析,插入等操作。數(shù)據(jù)庫存儲和上位機網(wǎng)絡(luò)流采集程序框圖如圖6所示。

        圖6 上位PC機存儲和網(wǎng)絡(luò)流讀取程序圖

        4 實驗驗證

        在實驗室對數(shù)據(jù)采集卡進行直流電壓輸入,通過采集卡采集數(shù)據(jù),將寫好的下位機VI通過FPGA編譯工具包下載到FPGA背板中,通過緩沖區(qū)FIFO上傳到實時控制器RT中,將RT中的采集數(shù)據(jù)以同步采樣速率存儲到外掛硬盤中,RT與PC機通過網(wǎng)絡(luò)流進行數(shù)據(jù)交互,在PC機VI中對數(shù)據(jù)進行參數(shù)修正和處理,在實時顯示界面有修正前和修正后的數(shù)據(jù)對比以及實時曲線,經(jīng)過實際對比,數(shù)據(jù)精確可靠,系統(tǒng)主界面如圖7所示。

        圖7 數(shù)據(jù)采集系統(tǒng)主界面示意圖

        利用數(shù)據(jù)庫技術(shù),根據(jù)起始時間和終止時間查詢想要的數(shù)據(jù),歷史曲線如圖8所示。

        由運行的前面板和歷史曲線顯示可以看出,原始數(shù)據(jù)輸入為直流5 V,顯示采集結(jié)果為4.997 72 V,對數(shù)值進行修正乘以系數(shù)0.499 5之后得到處理數(shù)據(jù)為2.498 86 V,將采集的數(shù)據(jù)存入到數(shù)據(jù)庫中,通過歷史曲線面板調(diào)用某一時間段的數(shù)據(jù),圖中顯示為2.490 52~2.502 1之間,滿足精度和準度要求。

        5 結(jié) 論

        本數(shù)據(jù)采集系統(tǒng)采用先進的實時控制器RT和4通道高速數(shù)據(jù)采集卡,采用靈活的FPGA編程模式,實現(xiàn)了芯片的虛擬化,程序的可重復配置,通過FIFO實現(xiàn)了FPGA與實時控制器RT的數(shù)據(jù)高速傳輸,通過網(wǎng)絡(luò)流實現(xiàn)了RT與工控機之間的數(shù)據(jù)傳輸,解決了它們之間由于工作頻率不同而造成的數(shù)據(jù)交換不同步和數(shù)據(jù)丟失的問題,實現(xiàn)了數(shù)據(jù)實時顯示,數(shù)據(jù)存儲,歷史報表等。

        圖8 數(shù)據(jù)庫歷史曲線顯示示意圖

        參考文獻

        [1] 陳樹學,劉萱.LabVIEW寶典[M].北京:電子工業(yè)出版社,2011.

        [2] 王利強.計算機測控系統(tǒng)與數(shù)據(jù)采集卡應用[M].北京:機械工業(yè)出版社,2007.

        [3] 連海洲,趙英俊.基于 LabVIEW 技術(shù)的虛擬儀器系統(tǒng)[J].儀器與測控,2001(8):21?23.

        [4] 劉君華.基于 LabVIEW的虛擬儀器設(shè)計[M].北京:電子工業(yè)出版社,2003.

        [5] 楊樂平,李海濤.Lab VIEW 程序設(shè)計與應用[M].北京:電子工業(yè)出版社,2001.

        [6] 吳偉.雙通道3GSPS數(shù)據(jù)采集模塊硬件設(shè)計[D].成都:電子科技大學,2011.

        av免费一区二区久久| 久久精品视频在线看99| 人人妻人人添人人爽日韩欧美| 日本国产一区二区三区在线观看 | 91在线视频视频在线| 日本熟妇中出高潮视频| 国产精品久久久久久av| 四虎影视永久地址www成人| 国产精品久久无码不卡黑寡妇| 亚洲免费观看一区二区三区| 丰满人妻被持续侵犯中出在线| 国产黄污网站在线观看| 国产成人精品a视频| 日产精品久久久久久久蜜臀| 美女极度色诱视频国产免费| 久久熟女少妇一区二区三区 | 风流熟女一区二区三区| 久久久亚洲欧洲日产国码aⅴ| 人妻无码αv中文字幕久久琪琪布 美女视频黄的全免费视频网站 | 少妇被猛烈进入到喷白浆| 亚洲国产成人精品无码区二本 | 欧美村妇激情内射| 久久老子午夜精品无码怎么打| 久久天天躁狠狠躁夜夜中文字幕| 中文字幕亚洲精品综合| 国产精品一区二区三区专区| 无码国产69精品久久久久孕妇| 狠狠人妻久久久久久综合| 日韩精品有码在线视频| 丝袜美足在线视频国产在线看| 国产成人精品2021| 又黄又爽又色又刺激的视频| 亚洲无码观看a| 91九色播放在线观看| av色综合久久天堂av色综合在| 精品成人乱色一区二区| 少妇高潮无码自拍| 日本中文字幕精品久久| 黑人巨大精品欧美一区二区免费| 99精品视频在线观看免费| 婷婷成人亚洲综合国产|