• <tr id="yyy80"></tr>
  • <sup id="yyy80"></sup>
  • <tfoot id="yyy80"><noscript id="yyy80"></noscript></tfoot>
  • 99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

    基于Labview和Java存儲(chǔ)過程的數(shù)據(jù)自動(dòng)采集接口的實(shí)現(xiàn)與應(yīng)用

    2014-04-29 00:00:00郭嚴(yán)友

    摘 要:本文主要以船舶數(shù)字化平臺(tái)設(shè)計(jì)為例,分別從Labview數(shù)據(jù)采集的實(shí)現(xiàn)、創(chuàng)建存儲(chǔ)過程的Java方法以及利用Labview技術(shù)對(duì)Java存儲(chǔ)過程的調(diào)用及執(zhí)行等三方面對(duì)Labview數(shù)據(jù)采集技術(shù)及Java數(shù)據(jù)存儲(chǔ)過程實(shí)現(xiàn)數(shù)據(jù)自動(dòng)采集接口的設(shè)計(jì)實(shí)現(xiàn)進(jìn)行分析和探討。

    關(guān)鍵詞:Labview數(shù)據(jù)采集;Java存儲(chǔ);數(shù)據(jù)自動(dòng)采集接口

    中圖分類號(hào):TP274.2

    1 Labview數(shù)據(jù)采集

    Labview程序主要涉及前面板及流程圖兩項(xiàng)內(nèi)容,程序設(shè)計(jì)采用多線程方式,前面板及流程圖分別對(duì)應(yīng)一個(gè)線程。其中,前面板提供程序圖形接口,對(duì)輸入予以集成,對(duì)輸出予以顯示,與傳統(tǒng)儀器面板類似;流程圖主要實(shí)現(xiàn)對(duì)前面板輸入及輸出的編程控制及定義。

    Labview數(shù)據(jù)采集基本流程示意圖詳見圖1所示。

    圖1 Labview數(shù)據(jù)采集基本流程示意圖

    在執(zhí)行采集數(shù)據(jù)操作之前,先進(jìn)行DAQ板卡初始化,采集到的數(shù)據(jù)經(jīng)過板卡及內(nèi)存中Buffer環(huán)節(jié)之后才被存儲(chǔ)。因?yàn)樗x擇的板卡具備DMA性能,這樣可以在輸入操作模擬過程中構(gòu)建起以計(jì)算機(jī)內(nèi)存為連通的高速硬件通道,通過該通道可以實(shí)現(xiàn)數(shù)據(jù)向計(jì)算機(jī)內(nèi)存的直接傳輸。

    一般情況下,觸發(fā)器為一個(gè)數(shù)字或模擬信號(hào),觸發(fā)包括初始化、終止及DAQ事件同步的所有方式,動(dòng)作是否發(fā)生主要取決于觸發(fā)器的狀態(tài)。硬件觸發(fā)器主要受板卡電路管理,并負(fù)責(zé)分配DAQ事件時(shí)間,精確度較高。所采集的數(shù)據(jù)首先借助通用接口總線向主機(jī)進(jìn)行傳輸,Labview試驗(yàn)系統(tǒng)程序?qū)?shù)據(jù)進(jìn)行初步處理,在此基礎(chǔ)之上,借助Java存儲(chǔ)過程實(shí)現(xiàn)原始數(shù)據(jù)及信息在對(duì)應(yīng)數(shù)據(jù)庫的存儲(chǔ)操作。

    2 Java存儲(chǔ)過程

    Java創(chuàng)建存儲(chǔ)過程常見方法主要有以下幾種:

    (1)數(shù)據(jù)處理。Java存儲(chǔ)過程的第一步就是處理數(shù)據(jù),在此所處理的數(shù)據(jù)主要是在船舶數(shù)字化平臺(tái)中設(shè)定為非空的數(shù)據(jù),并且在Labview中為空的數(shù)據(jù),這些數(shù)據(jù)在經(jīng)過Java存儲(chǔ)過程處理之后便無法在船舶數(shù)字化平臺(tái)中進(jìn)行保存;所有數(shù)據(jù)在經(jīng)過Labview處理之后均為字符串形式存在,為確保數(shù)據(jù)符合數(shù)字化平臺(tái)對(duì)數(shù)據(jù)類型的要求,Java存儲(chǔ)過程會(huì)轉(zhuǎn)換數(shù)據(jù)存在形式;最后,對(duì)于涉及多個(gè)單獨(dú)字段的字符串,需要進(jìn)行分割處理,并將其保存在字符數(shù)組當(dāng)中。

    (2)事務(wù)處理。數(shù)據(jù)庫操作中所談及的事務(wù)指的是由一個(gè)或數(shù)個(gè)對(duì)數(shù)據(jù)庫更新的sql語句所構(gòu)成的無法分割的工作單元。事務(wù)在所涉及的全部操作均實(shí)現(xiàn)之后才會(huì)向數(shù)據(jù)庫進(jìn)行整體性提交,若其中某一操作未實(shí)現(xiàn),將對(duì)事務(wù)予以撤銷。因針對(duì)數(shù)據(jù)庫的操作并非一次完成,其中每次執(zhí)行或步驟都可以視作一個(gè)事務(wù),假如數(shù)據(jù)庫操作在其中一個(gè)環(huán)節(jié)未執(zhí)行或發(fā)生意外導(dǎo)致事務(wù)未成功,就會(huì)出現(xiàn)部分事務(wù)執(zhí)行而部分未執(zhí)行的情況,此時(shí)出現(xiàn)事務(wù)回滾,之前的操作將會(huì)被取消。

    (3)自增序列的查詢及插入。數(shù)據(jù)庫表結(jié)構(gòu)的部分字段充當(dāng)具有自增性質(zhì)的主鍵,一般可以采取no-zlcon-s.currval的方式對(duì)這種類型的字段進(jìn)行查詢,其中no-zlcon-s是其中一張表的sequence,在執(zhí)行上述操作時(shí)應(yīng)注意操作順序,在完成no-zlcon-s.nextval之后再進(jìn)行no-zlcon-s.currval操作。

    3 數(shù)據(jù)自動(dòng)采集接口的實(shí)現(xiàn)與應(yīng)用

    3.1 Labview訪問船舶數(shù)字化平臺(tái)

    Labview自身無法執(zhí)行訪問數(shù)據(jù)庫操作,所以對(duì)于利用Labview編制的虛擬儀器系統(tǒng)而言,要想執(zhí)行訪問數(shù)據(jù)庫操作,必須采取相應(yīng)的輔助手段。

    Labview中訪問數(shù)據(jù)庫的方式較為常見的主要有:

    (1)使用接口工具包Labview SQL Toolkit完成訪問數(shù)據(jù)庫操作;

    (2)借助Labview中ActiveX功能,對(duì)Microsoft ADO對(duì)象進(jìn)行調(diào)用,借助SQL語言完成數(shù)據(jù)庫訪問操作。需要特別指出的是,采取此種訪問方式用戶必須掌握足夠多的Microsoft ADO以及SQL語言知識(shí);

    (3)利用第三方所推出的工具包LabSQL進(jìn)行數(shù)據(jù)庫訪問。為最大限度的確保程序穩(wěn)定性及反應(yīng)靈敏性,本文所探討的數(shù)據(jù)自動(dòng)采集接口訪問數(shù)字化平臺(tái)選擇第一種數(shù)據(jù)庫訪問方式。

    3.2 Labview中執(zhí)行存儲(chǔ)過程

    作為附加工具包,Labview SQL Toolkit中實(shí)現(xiàn)了對(duì)高級(jí)功能模塊的有效集成,其主要作用是執(zhí)行數(shù)據(jù)庫訪問操作,利用Labview SQL Toolkit中所涉及的功能模塊可以實(shí)現(xiàn)大部分?jǐn)?shù)據(jù)庫操作及部分高級(jí)數(shù)據(jù)庫訪問,借助Labview SQL Toolkit在Labview所支持的ODBC本地或遠(yuǎn)程數(shù)據(jù)庫。

    借助DB Tools List Tables,通過一維數(shù)組的方式對(duì)所選定的數(shù)據(jù)庫當(dāng)中的全部表進(jìn)行列舉,并在前面板數(shù)組控件Tables當(dāng)中進(jìn)行同步顯示。對(duì)于用戶而言,當(dāng)Tables Index確定的情況下,采取數(shù)組函數(shù)索引的方式對(duì)其中一個(gè)表進(jìn)行索引;在此基礎(chǔ)之上,將索引結(jié)果與DB Tools List Columns以及DB Tools Select All Data進(jìn)行連接。

    完成上述操作之后將面臨數(shù)據(jù)格式問題,因此需要及時(shí)轉(zhuǎn)換數(shù)據(jù)格式,將格式符合要求的數(shù)據(jù)與數(shù)據(jù)庫相連,與此同時(shí),對(duì)SQL語句進(jìn)行執(zhí)行以實(shí)現(xiàn)Java存儲(chǔ)目的。Labview將會(huì)以存儲(chǔ)過程反饋值為依據(jù),對(duì)操作結(jié)果進(jìn)行及時(shí)顯示。

    4 結(jié)束語

    本文以船舶數(shù)據(jù)庫平臺(tái)為依托,借助Labview數(shù)據(jù)采集、數(shù)據(jù)庫操作功能以及Java存儲(chǔ)過程,作為重要的數(shù)據(jù)庫接口附加工具包,LabVIEW SQL Toolkit主要應(yīng)用于數(shù)據(jù)庫訪問,該附加工具包含有數(shù)個(gè)封裝了大部分?jǐn)?shù)據(jù)庫操作及部分高級(jí)數(shù)據(jù)庫訪問功能的功能模塊,在LabVIEW當(dāng)中,利用LabVIEW SQL Toolkit便可以向ODBC本地或遠(yuǎn)程數(shù)據(jù)庫提供支持,并且對(duì)船舶數(shù)據(jù)庫平臺(tái)數(shù)據(jù)自動(dòng)采集接口的實(shí)現(xiàn)及應(yīng)用展開分析和探討。

    參考文獻(xiàn):

    [1]邢立偉.基于LabVIEW的車身過程設(shè)備信息網(wǎng)絡(luò)化管理系統(tǒng)的研制[D].哈爾濱工業(yè)大學(xué),2007.

    [2]李杰,陳濤,范勇.基于LabVIEW的綜合錄井多參數(shù)曲線監(jiān)測系統(tǒng)設(shè)計(jì)[J].儀器儀表用戶,2010(04).

    [3]尚振陽.吉林石化煉油與化工運(yùn)行系統(tǒng)數(shù)據(jù)采集接口實(shí)現(xiàn)研究[D].吉林大學(xué),2011(04).

    [4]劉輝.Java網(wǎng)絡(luò)編程:連接網(wǎng)絡(luò)數(shù)據(jù)庫的多種方法[J].價(jià)值工程,2010(03).

    [5]王聰華,王建國.Java調(diào)用VC++DLL實(shí)現(xiàn)串口GPS的訪問[J].信息技術(shù),2010(01).

    作者簡介:郭嚴(yán)友(1980.08-),男,廣東肇慶人,本科,計(jì)算機(jī)講師,主要研究方向:軟件工程、網(wǎng)絡(luò)、多媒體。

    作者單位:肇慶市農(nóng)業(yè)學(xué)校,廣東肇慶 526070

    顺昌县| 桐梓县| 和静县| 三台县| 垣曲县| 汾西县| 荆门市| 浦县| 泰兴市| 增城市| 育儿| 沙河市| 泉州市| 奉新县| 韶山市| 南投县| 张家口市| 永春县| 图们市| 濉溪县| 庐江县| 永修县| 开封县| 阳江市| 玉树县| 城口县| 衡阳市| 阿图什市| 尉犁县| 鱼台县| 凤凰县| 茂名市| 宣汉县| 会昌县| 盖州市| 潼关县| 沂南县| 富宁县| 武汉市| 苏州市| 舟曲县|