999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于DataSocket技術(shù)共享數(shù)據(jù)采集卡的實(shí)例

2009-04-29 00:00:00王鵬沖梁金土
電腦知識(shí)與技術(shù) 2009年15期

摘要:數(shù)據(jù)采集是科學(xué)實(shí)驗(yàn)的一個(gè)重要環(huán)節(jié),數(shù)據(jù)采集卡是數(shù)據(jù)采集系統(tǒng)的一個(gè)關(guān)鍵硬件。利用DataSocket技術(shù)能較好實(shí)現(xiàn)數(shù)據(jù)采集卡的共享,提高了設(shè)備的利用率和降低實(shí)驗(yàn)成本。

關(guān)鍵詞:數(shù)據(jù)采集;DataSocket;Labview;RDA

中圖分類號(hào):TP274 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1009-3044(2009)15-4045-02

The Example of Share Data Collecting Card Based on DataSocket Technique

WANG Peng-chong1, LIANG Jin-tu2, LIN Peng1

(1. Zhanjiang normal university,Zhanjiang 524048,China; 2.Physical Science and Technical College of Zhanjiang normal university,Zhanjiang 524048,China)

Abstract: It is an important tache of science experiment of a data collect, the data collects card is a key hardware of the data collect system . usingthe technique of DataSocket can be better to carry out sharing the data collects card, raising the utilization of the equipments and lowering the experiment cost.

Key words: Data collect;DataSocket; Labview;RDA

1 前言

數(shù)據(jù)采集卡是數(shù)據(jù)采集系統(tǒng)中重要的硬件之一,在有些場(chǎng)合,例如教學(xué)實(shí)驗(yàn)室,如果每臺(tái)計(jì)算機(jī)都配備一塊采集卡,則代價(jià)較高,利用率也較低。因此,實(shí)現(xiàn)采集卡的共享是較好的解決方案。Laview的DataSocket技術(shù)能較好地實(shí)現(xiàn)數(shù)據(jù)采集卡的共享,即多臺(tái)計(jì)算機(jī)共享一臺(tái)計(jì)算機(jī)(服務(wù)器)上的采集卡,數(shù)據(jù)采集卡共享程序可以用于一個(gè)局域網(wǎng)內(nèi)的計(jì)算機(jī)組。

2 DataSocket技術(shù)

DataSocket由DataSocket API 與DataSocket Server兩部分組成。DataSocket API是用于用戶訪問網(wǎng)絡(luò)數(shù)據(jù)的接口,DataSocket Server負(fù)責(zé)提供DSTP協(xié)議和管理底層網(wǎng)絡(luò)通信。利用DSTP實(shí)現(xiàn)現(xiàn)場(chǎng)數(shù)據(jù)網(wǎng)絡(luò)共享,必須要用到DataSocket Server。

DataSocket API是協(xié)議獨(dú)立的、編程語言獨(dú)立和操作系統(tǒng)獨(dú)立的用于簡(jiǎn)化二進(jìn)制數(shù)據(jù)傳輸?shù)腁PI。它的實(shí)現(xiàn)方式可以是ActiveX控件、LabWindows/CVI C代碼庫(kù)或一系列LabView VI,因此可以在任何編程環(huán)境中使用它。

DataSocket Server是一個(gè)輕量級(jí)的獨(dú)立組件。DataSocket API訪問DSTP對(duì)象時(shí)就是通過訪問它來實(shí)現(xiàn)現(xiàn)場(chǎng)數(shù)據(jù)的傳輸?shù)?。DataSocket Server通過自動(dòng)管理與客戶端的連接,從而極大簡(jiǎn)化了TCP編程,用戶可以不用了解任何TCP/IP編程的知識(shí)。

通過DataSocket Server廣播數(shù)據(jù)需要3種“角色”——發(fā)布者(Publisher)、DataSocket Server和接收者(Subsciber)。發(fā)布者通過DataSocket API向DataSocket Server寫入數(shù)據(jù),接收者通過DataSocket API從DataSocket Server讀取數(shù)據(jù)。發(fā)布者和接收者都是DataSocket Server的客戶端。利用DataSocket Server實(shí)現(xiàn)現(xiàn)場(chǎng)數(shù)據(jù)的網(wǎng)絡(luò)共享時(shí),發(fā)布者、接收者和服務(wù)器之間的關(guān)系如圖2所示。

3 數(shù)據(jù)采集卡共享的設(shè)計(jì)方案

NI公司提供的RDA(remote device access)技術(shù)可實(shí)現(xiàn)對(duì)遠(yuǎn)程數(shù)據(jù)采集卡的訪問。用戶可以利用Measurement Automation Explorer來進(jìn)行遠(yuǎn)程數(shù)據(jù)采集卡的設(shè)置,設(shè)置完成后,在本地機(jī)上就會(huì)出現(xiàn)一塊虛擬的數(shù)據(jù)采集卡,并且分配有相應(yīng)的設(shè)備號(hào)。為了避免多個(gè)客戶機(jī)同時(shí)訪問一個(gè)遠(yuǎn)程數(shù)據(jù)采集卡時(shí)發(fā)生沖突,導(dǎo)致程序出錯(cuò),必須考慮在服務(wù)器端增加任務(wù)管理程序,以對(duì)客戶機(jī)的請(qǐng)求進(jìn)行管理。而在客戶機(jī)中,用戶先要向服務(wù)器提出申請(qǐng),服務(wù)器響應(yīng)后,才能調(diào)用本機(jī)LabView中的采集程序,啟動(dòng)配置遠(yuǎn)程采集卡,并進(jìn)行數(shù)據(jù)采集。RDA Server會(huì)自動(dòng)把采集到的數(shù)據(jù)傳送回客戶機(jī)。如果采集卡正被占用,則服務(wù)器不會(huì)響應(yīng)新的客戶機(jī)請(qǐng)求,這樣可以避免多個(gè)客戶機(jī)同時(shí)訪問一個(gè)遠(yuǎn)程采集卡時(shí)發(fā)生的沖突。數(shù)據(jù)采集卡共享示意圖如圖2所示。

3.1 RDA技術(shù)實(shí)現(xiàn)遠(yuǎn)程數(shù)據(jù)采集的配置

利用RDA(Remote Device Access)技術(shù)共享服務(wù)器上的設(shè)備,在客戶機(jī)上編程直接控制服務(wù)器上的DAQ設(shè)備,實(shí)現(xiàn)遠(yuǎn)程數(shù)據(jù)采集。

RDA在編程方面與使用本機(jī)DAQ設(shè)備完全一樣。在LabView中利用RDA技術(shù)實(shí)現(xiàn)遠(yuǎn)程數(shù)據(jù)采集的步驟如下:

第一步,配置RDA服務(wù)器。RDA服務(wù)器需要安裝NI-DAQ6.0(或更高版本)以及DAQ設(shè)備,設(shè)置服務(wù)器的IP地址,例如192.168.0.1,其子網(wǎng)掩碼為255.255.255.0。然后啟動(dòng)服務(wù)器上的Remote Device Access Server即可。若有必要,可以在DAQ設(shè)備的屬性對(duì)話框中設(shè)置RDA訪問密碼。

第二步,設(shè)置客戶機(jī)。RDA客戶端應(yīng)安裝與服務(wù)器相同版本的NI-DAQ,否則DAQ設(shè)備會(huì)無法連接。設(shè)置客戶機(jī)的IP地址,例如192.168.0.2,其子網(wǎng)掩碼為255.255.255.0。RDA客戶機(jī)的設(shè)置比較復(fù)雜,通常按照下列步驟進(jìn)行:

1)在客戶機(jī)的MAX(Measurement Automation Explorer)左側(cè)目錄樹中的Devices and Interfaces項(xiàng)的右鍵彈出菜單中選擇“Create New”,在Create New窗口選擇RDA/Ethernet Device。

2)在隨后出現(xiàn)的Select Remote Computer對(duì)話框中輸入服務(wù)器的IP地址或計(jì)算機(jī)名。

3)在隨后出現(xiàn)的System對(duì)話框中設(shè)定設(shè)備號(hào),若服務(wù)器上的DAQ設(shè)備設(shè)置了RDA訪問密碼,則還需在Password欄中輸入正確的密碼。

至此,就完成了客戶機(jī)上RDA設(shè)備的添加,客戶機(jī)的MAX左側(cè)目錄樹中會(huì)出現(xiàn)這個(gè)RDA設(shè)備。從此以后,用戶可以像在本地一樣操作該設(shè)備。在客戶機(jī)上直接編寫DAQ軟件,實(shí)現(xiàn)遠(yuǎn)程數(shù)據(jù)采集。

3.2 服務(wù)器工作流程

啟動(dòng)服務(wù)器程序,自動(dòng)運(yùn)行DS Server Manager和RDA Server程序。接著,讀取用戶請(qǐng)求信息,如果沒有請(qǐng)求信息,則繼續(xù)掃描;如果有客戶機(jī)請(qǐng)求信息,則對(duì)客戶機(jī)請(qǐng)求信息按照請(qǐng)求時(shí)間或者優(yōu)先級(jí)排序,給優(yōu)先級(jí)最高者以許可訪問響應(yīng)信息。然后。等待客戶機(jī)返回任務(wù)完成信息,如果接到完成信息,則完成一次循環(huán),并重新讀取客戶請(qǐng)求信息,開始新的循環(huán)。

3.3 客戶機(jī)工作流程

向DS Server發(fā)出請(qǐng)求信息,等待服務(wù)器給出響應(yīng)信息;從DS Server讀取響應(yīng)信息,然后進(jìn)入用戶自己設(shè)計(jì)的采集任務(wù),調(diào)用本地的采集程序完成采集。調(diào)用計(jì)時(shí)程序查向自己的任務(wù)所占用的時(shí)間是否超過請(qǐng)求時(shí)間,如果超過請(qǐng)求時(shí)間或者用戶終止采集任務(wù),則需向DS Server寫入任務(wù)結(jié)束信息,從而客戶機(jī)程序結(jié)束。

4 共享數(shù)據(jù)采集卡程序設(shè)計(jì)

4.1 服務(wù)器端程序設(shè)計(jì)

程序使用兩組變量:請(qǐng)求信息變量(任務(wù)結(jié)束變量)rq和服務(wù)器響應(yīng)變量rp。服務(wù)器程序前面板有兩個(gè)頁面,一個(gè)頁面顯示當(dāng)前正在等待或者處理的任務(wù)信息,另一個(gè)頁面顯示已處理的任務(wù)列表。請(qǐng)求信息和響應(yīng)這兩組變量分別為一個(gè)整型數(shù)組,由于不需要用戶修改,因此前面板隱藏了這兩個(gè)變量。為了使服務(wù)器程序能在不同的機(jī)器上運(yùn)行,可利用前面板的變量所具有的DataSocket Connection屬性來實(shí)現(xiàn)前面板的DS連接。在Connect To中指定URL時(shí),格式是“dstp://machine name/variable name”,其中machine name可以是機(jī)器名,也可以是IP,對(duì)于本機(jī)則可以使用localhost或者127.0.0.1來設(shè)定。請(qǐng)求信息初始設(shè)定為1000,即如果請(qǐng)求信息為1000,則表示沒有請(qǐng)求信息;如果請(qǐng)求信息小于1000,則表示有請(qǐng)求信息,其值等于具體的請(qǐng)求時(shí)間。服務(wù)器判斷請(qǐng)求信息的最小值,如果不等于1000,則表示有請(qǐng)求信息,服務(wù)器給予響應(yīng)。服務(wù)器響應(yīng)后,客戶機(jī)開始運(yùn)行采集程序,完成后,需要給請(qǐng)求信息重新賦值為1000,作為采集任務(wù)結(jié)束的標(biāo)志。一旦服務(wù)器判斷到這個(gè)標(biāo)志又變?yōu)?000后,則可以開始新的循環(huán)。

4.2 戶客機(jī)端程序設(shè)計(jì)

客戶機(jī)程序除了用戶設(shè)計(jì)的采集程序外,需要用到3個(gè)子程序:建立連接、超時(shí)判斷和結(jié)束連接。建立連接子程序的作用是向服務(wù)器發(fā)送請(qǐng)求信息,并且等待得到響應(yīng)信息,一旦得到響應(yīng)信息,該子程序就結(jié)束。響應(yīng)信息需要4個(gè)參數(shù):客戶端編號(hào)、請(qǐng)求時(shí)間、服務(wù)器名稱和遠(yuǎn)程采集設(shè)備號(hào)。其中,客戶端編號(hào)作為服務(wù)器識(shí)別來自不同客戶機(jī)請(qǐng)求的標(biāo)志,服務(wù)器名稱可以是機(jī)器名或IP,需要先利用Measurement Automation Explorer設(shè)置好遠(yuǎn)程采集卡之后,才可以使用遠(yuǎn)程采集設(shè)備號(hào)。超時(shí)判斷的作用是判斷采集程序是否運(yùn)行超時(shí)。結(jié)束連接的作用是發(fā)送結(jié)束任務(wù)信息0給DS Server變量rq,相應(yīng)元素賦值為1000,讓服務(wù)器知道任務(wù)已經(jīng)結(jié)束。

在進(jìn)行數(shù)據(jù)采集時(shí),服務(wù)端要啟動(dòng)RDA Server,用以完成客戶機(jī)訪問服務(wù)器采集卡的任務(wù),因此服務(wù)器程序不必調(diào)用任何采集程序,只對(duì)客戶機(jī)的請(qǐng)求進(jìn)行響應(yīng)和判斷任務(wù)是否結(jié)束即可。而客戶機(jī)上的程序則在請(qǐng)求被響應(yīng)之后,可以像使用本機(jī)的采集卡一樣使用服務(wù)器上的采集卡,直接調(diào)用LabVIEW中的采集程序,完成自己的采集任務(wù),實(shí)現(xiàn)遠(yuǎn)程數(shù)據(jù)采集。

5 結(jié)語

DataSocket技術(shù)是NI公司提供的一個(gè)網(wǎng)絡(luò)測(cè)控系統(tǒng)開發(fā)工具。DataSocket遵循TCP/IP協(xié)議,并對(duì)底層進(jìn)行高度封裝,所提供的參數(shù)簡(jiǎn)單、友好,只需要設(shè)置URL,就可以用于實(shí)時(shí)數(shù)據(jù)傳送,通過 DataSocket技術(shù)我們能較好地實(shí)現(xiàn)了數(shù)據(jù)采集卡的共享。

參考文獻(xiàn):

[1] 侯國(guó)屏,王坤,葉齊鑫.Labview 7.1編程與虛擬儀器設(shè)計(jì)[M]清華大學(xué)出版社.2005(2):413-416.

[2] 陳錫輝,張銀鴻.Labview 8.2程序設(shè)計(jì)從入門到精通[M] 清華大學(xué)出版社.2007(1):322-325.

[3] 鄭詩(shī)樵,黃文達(dá).基于LabVIEW的網(wǎng)絡(luò)實(shí)驗(yàn)儀器的開發(fā)[J].實(shí)驗(yàn)室研究與探索.2005,1(24):26-27.

[4] 李海濤.在LabVIEW中實(shí)現(xiàn)基于C/S結(jié)構(gòu)的遠(yuǎn)程數(shù)據(jù)采集[EB/OL].[2009-03-10].http://blog.csdn.net/kw123/archive/2006/07/03/869293.aspx.

[5] 楊忠仁,饒程,鄒建,彭珍蓮.基于LabVIEW 數(shù)據(jù)采集系統(tǒng)[J]. 重慶大學(xué)學(xué)報(bào).2004.2(27):33-36.

[6] 燕延,馬增強(qiáng),楊明.基虧LabVIEW 的數(shù)據(jù)采集與處理軟件編程技巧[J] 微計(jì)算機(jī)信息.2005,5(21):153-154.

[7] 楊忠仁,饒程,鄒 建,彭珍蓮. 基于LabVIEW 數(shù)據(jù)采集系統(tǒng)[J]. 重慶大學(xué)學(xué)報(bào).2004,2(27).33-35.

[8] 張炯,方湘陵.基于虛擬儀器技術(shù)的遠(yuǎn)程實(shí)驗(yàn)室[J].實(shí)驗(yàn)室研究與探索,2007,(26).9:12-13.

[9] 黃曉晴,繆永生.網(wǎng)絡(luò)化PXI總線虛擬實(shí)驗(yàn)室設(shè)計(jì)與實(shí)現(xiàn)[J]. 實(shí)驗(yàn)室研究與探索,2005(24).11:59-60.

主站蜘蛛池模板: 精品国产污污免费网站| 高清码无在线看| 欧美在线伊人| 欧美成人精品在线| 国产精品久久久久久久伊一| 凹凸精品免费精品视频| 国产一区二区精品福利| 欧美精品亚洲精品日韩专区va| 欧美黄网在线| 91精品视频播放| 国产成人精品第一区二区| 天天综合天天综合| 久久99精品久久久久纯品| 亚洲精品国偷自产在线91正片| 97久久免费视频| 中文字幕久久亚洲一区| 国产又黄又硬又粗| 免费毛片视频| 国产成人亚洲精品无码电影| 欧美中文字幕在线视频| a毛片在线播放| AV在线天堂进入| 日本午夜三级| 青青草国产精品久久久久| 久草视频一区| 婷婷丁香在线观看| 青青草原偷拍视频| 欧美a在线| 欧美综合区自拍亚洲综合绿色| 2020久久国产综合精品swag| 亚洲精品福利网站| 欧美国产在线看| 亚洲成人福利网站| 国产亚洲精品97AA片在线播放| 无码高潮喷水在线观看| 日韩在线中文| 久久亚洲国产一区二区| 久久精品无码一区二区国产区| 欧美国产日韩一区二区三区精品影视| 国产精品网址你懂的| 国产极品美女在线观看| a网站在线观看| 91小视频版在线观看www| 日韩欧美中文在线| 天堂在线视频精品| 日本成人在线不卡视频| 久久久久亚洲Av片无码观看| 噜噜噜久久| 国产精品毛片一区视频播| 国产欧美日韩va另类在线播放| 国产精品片在线观看手机版 | 国产99视频精品免费视频7| av在线无码浏览| 狂欢视频在线观看不卡| 中文字幕天无码久久精品视频免费 | 婷婷综合缴情亚洲五月伊| 欧美成人午夜在线全部免费| 五月婷婷综合色| 亚洲国产成人久久精品软件| 精品在线免费播放| 亚洲浓毛av| 少妇精品在线| 亚洲综合九九| 亚洲伊人天堂| 91福利一区二区三区| 久久青青草原亚洲av无码| 亚洲日韩欧美在线观看| 国产成人狂喷潮在线观看2345| 亚洲中字无码AV电影在线观看| 国产丝袜丝视频在线观看| 熟女日韩精品2区| 免费观看男人免费桶女人视频| 91国内外精品自在线播放| 91在线日韩在线播放| 99久久国产精品无码| 精品视频福利| 九色在线观看视频| 国产在线精彩视频二区| 亚洲欧美不卡| 国产成人你懂的在线观看| 日韩欧美国产综合| 香蕉在线视频网站|