數(shù)據(jù)通信課件_第1頁
數(shù)據(jù)通信課件_第2頁
數(shù)據(jù)通信課件_第3頁
數(shù)據(jù)通信課件_第4頁
數(shù)據(jù)通信課件_第5頁
已閱讀5頁,還剩39頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)

文檔簡介

1、第8章 數(shù)據(jù)通信,局部變量 DataSocket技術(shù)概述 使用DataSocket傳輸數(shù)據(jù) 在Web上發(fā)布程序,8-1 局部變量,我們知道,LabVIEW編程是通過連線方式來進行數(shù)據(jù)傳遞的,但當(dāng)需要在程序框圖中多個位置訪問同一個前面板對象時,有時也會遇到連線的困難,或造成連線混亂不清。局部變量用來在一個VI內(nèi)部傳遞數(shù)據(jù),它不僅可以解決連線的困難,而且可以在對同一個控件的多次訪問中有些對它寫入數(shù)據(jù)、有些從它讀取數(shù)據(jù)。,8-1-1 建立局部變量,通過函數(shù)選板建立局部變量,演示,8-1-1 建立局部變量,直接為前面板對象建立局部變量,8-1-2 局部變量的使用方法,通過局部變量既可以向它的前面板控件

2、寫數(shù)據(jù),也可以從它的前面板控件讀數(shù)據(jù),而不必考慮這個控件是顯示控件還是輸入控件。需要做的只是改變這個局部變量的數(shù)據(jù)流方向 。,演示,8-1-2 局部變量的使用方法,訪問局部變量的順序 如果把對局部變量的讀和寫放在同一起,則不能保證寫入溫度值的動作一定發(fā)生在讀取溫度值的動作之前。也就是說有可能讀取了沒有意義的數(shù)據(jù)。要防止這種情況,可以采用順序結(jié)構(gòu);或者建立人為的數(shù)據(jù)依從關(guān)系,8-1-3 局部變量應(yīng)用示例,1. 使用局部變量進行控制方式轉(zhuǎn)換,演示,8-1-3 局部變量應(yīng)用示例,2. 使用局部變量控制兩個并行的While循環(huán)同時停止,演示,8-1-3 局部變量應(yīng)用示例,3. 初始化前面板控件,演示,

3、8-1-3 局部變量應(yīng)用示例,3. 初始化前面板控件用戶信息,演示,8-2 全局變量,由上一節(jié)我們已經(jīng)知道,局部變量與前面板上已有的某一個控件相聯(lián)系,用于在一個程序的不同位置訪問同一控件,實現(xiàn)一個程序內(nèi)傳遞數(shù)據(jù)。而全局變量是用于在不同的程序之間傳遞數(shù)據(jù),這些程序可以是并行的,也可以是不便于通過接口傳遞數(shù)據(jù)的主程序和子程序。全局變量也是用一個控件的形式存放數(shù)據(jù),但是這個控件獨立于調(diào)用它的VI,以一個特殊的VI作為自己的容器,8-2-1 建立全局變量,演示,8-2-2 全局變量應(yīng)用示例,1. 利用全局變量傳遞波形數(shù)據(jù),演示,8-2-2 全局變量應(yīng)用示例,2. 全局變量傳遞數(shù)據(jù)(多用戶),演示,8-

4、2-2 全局變量應(yīng)用示例,3. 液位控制 液位控制程序,演示,8-2-2 全局變量應(yīng)用示例,3. 液位控制容器仿真程序,演示,8-2-3 局部變量和全局變量應(yīng)注意的一些問題,LabVIEW程序最大的特點就是它的數(shù)據(jù)流驅(qū)動的執(zhí)行方式,但是局部變量和全局變量從本質(zhì)上講并不是數(shù)據(jù)流的一個組成部分。它們掩蓋了數(shù)據(jù)流的進程,使程序變得難以讀懂。另外使用局部變量和全局變量還要注意以下的問題: 局部變量和全局變量的初始化 使用局部變量和全局變量時對于計算機內(nèi)存的考慮,8-3 DataSocket技術(shù)概述,8-3-1 DataSocket的特點 DataSocket是NI公司提供的一種網(wǎng)絡(luò)傳輸技術(shù),它建立在T

5、CP/IP協(xié)議的基礎(chǔ)之上,但是卻不用進行復(fù)雜的底層TCP編程,就可以通過計算機網(wǎng)絡(luò)向多個遠程終端同時廣播現(xiàn)場的測量數(shù)據(jù)。 DataSocket技術(shù)專門為滿足測試與自動化的需求而設(shè)計,它不必象TCP/IP編程那樣把數(shù)據(jù)轉(zhuǎn)換為非結(jié)構(gòu)化的字節(jié)流,而是以自己特有編碼格式傳輸各種類型的數(shù)據(jù),包括字符串、數(shù)字、布爾量,以及波形等。 DataSocket為共享與發(fā)布現(xiàn)場測試數(shù)據(jù)提供了方便易用的高性能編程接口。,8-3-2 DataSocket傳遞數(shù)據(jù)的方式,DataSocket由DataSocket API和DataSocket Server兩部分組成。 數(shù)據(jù)發(fā)布VI和數(shù)據(jù)訂戶VI都是DataSocket

6、Server的客戶,數(shù)據(jù)發(fā)布VI往DataSocket Server中寫入數(shù)據(jù),數(shù)據(jù)訂戶VI從DataSocket Server中讀取數(shù)據(jù)。,8-3-3 DataSocket Server,DataSocket Server是一個小巧的獨立運行的程序,發(fā)布數(shù)據(jù)的程序通過它進行數(shù)據(jù)輸出,輸入數(shù)據(jù)的程序通過它接收數(shù)據(jù)。,8-3-3 DataSocket Server,DataSocket Server Manager對話框,8-3-4 統(tǒng)一資源定位符URL,使用DataSocket傳輸數(shù)據(jù)時,采用和WWW瀏覽器相似的統(tǒng)一資源定位符URL(Uniform Resource Locator)來說明使用

7、的通訊協(xié)議和數(shù)據(jù)資源的位置。可以采用的協(xié)議包括dstp、opc、logos、。 使用DataSocket協(xié)議時URL填寫格式示例為: dstp:/localhost/data或dstp:/63/data dstp指DataSocket傳輸協(xié)議,中間段是發(fā)布數(shù)據(jù)機器的IP地址或計算機標(biāo)識,最后一段是數(shù)據(jù)項標(biāo)簽,用于在DataSocket Server上為特定的數(shù)據(jù)項定址。,8-4 使用DataSocket傳輸數(shù)據(jù),使用DataSocket傳輸數(shù)據(jù)有兩種方法: 一種是在前面板控件之間傳輸數(shù)據(jù); 另一種是在程序中傳輸數(shù)據(jù)。,8-4-1 使用DataSocket鏈接前面板對象,

8、DataSocket的前面板對象鏈接是一種不需要任何編程的網(wǎng)絡(luò)數(shù)據(jù)傳輸方法。通過DataSocket將兩個程序的前面板對象鏈接起來,一個對象發(fā)送數(shù)據(jù),另一個對象接收數(shù)據(jù),就可以實現(xiàn)對程序的遠程控制,數(shù)據(jù)的遠程采集等諸多功能。,8-4-1 使用DataSocket鏈接前面板對象,前面板對象鏈接指示燈,演示,8-4-2 在程序中使用DataSocket傳輸數(shù)據(jù),1讀DataSocket Server預(yù)定義數(shù)據(jù)項初始值,演示,8-4-2 在程序中使用DataSocket傳輸數(shù)據(jù),2向DataSocket寫數(shù)據(jù),演示,8-4-2 在程序中使用DataSocket傳輸數(shù)據(jù),3. 從DataSocket讀

9、數(shù)據(jù),演示,8-5 在Web上發(fā)布程序,使用LabVIEW 的Web服務(wù)器可以在網(wǎng)絡(luò)上發(fā)布LabVIEW 程序前面板的圖像或HTML(Hypertext Markup Language,超文本鏈接標(biāo)示語言)文件供本地或遠程計算機瀏覽;還可以在網(wǎng)絡(luò)上打開其它計算機內(nèi)存中的LabVIEW 程序前面板。使用訪問HTML文件的方法和前面板鏈接的方法都可以安全、快捷地進行程序的遠程控制 。,8-5-1 在Web上發(fā)布LabVIEW 程序的設(shè)置,打開與設(shè)置Web服務(wù)器的方法是使用菜單命令“工具選項.”,在彈出的選項對話框類別欄最下面三項為有關(guān)Web服務(wù)器設(shè)置的選項,8-5-1 在Web上發(fā)布LabVIEW

10、 程序的設(shè)置,1.“Web服務(wù)器:配置”項,8-5-1 在Web上發(fā)布LabVIEW 程序的設(shè)置,1.“Web服務(wù)器:配置”項,8-5-1 在Web上發(fā)布LabVIEW 程序的設(shè)置,2. “Web服務(wù)器:可見VI和Web瀏覽器設(shè)置”項,8-5-2 在Web上發(fā)布程序前面板,發(fā)布程序前面板是在Web上發(fā)布程序的最簡單的方式。在發(fā)布程序的計算機上打開Web服務(wù)器以后,網(wǎng)絡(luò)上的任何計算機不管是否安裝了LabVIEW,只要按規(guī)定的格式在Web 瀏覽器中輸入正確的URL,就可以查看Web服務(wù)器所在計算機內(nèi)存中程序的前面板。 在Web上瀏覽程序前面板時URL填寫格式示例為:,8-5-3 在Web上發(fā)布HT

11、ML文件,創(chuàng)建HTML文件選擇VI和查看選項,8-5-3 在Web上發(fā)布HTML文件,創(chuàng)建HTML文件選擇HTML輸出,8-5-3 在Web上發(fā)布HTML文件,創(chuàng)建HTML文件保存新網(wǎng)頁,8-5-3 在Web上發(fā)布HTML文件,創(chuàng)建HTML文件點擊“保存至磁盤”按鈕保存新網(wǎng)頁,彈出對話框中提示文檔已被保存,并顯示文檔的URL,8-5-3 在Web上發(fā)布HTML文件,瀏覽HTML文件 瀏覽HTML文件時在發(fā)布程序的機器上要運行Web服務(wù)器,并將被發(fā)布的程序設(shè)置為可見;瀏覽網(wǎng)頁的計算機上如果沒有安裝LabVIEW,要安裝LabVIEW運行引擎lvruntimeeng.msi,才能對程序瀏覽和控制。

12、查看保存的Web頁,還要按規(guī)定的格式在Web 瀏覽器中輸入URL,例如表示發(fā)布網(wǎng)頁計算機的IP地址是“6”,HTML文件保存為“Lvweb.htm” 如果發(fā)布網(wǎng)頁的程序在計算機內(nèi)存中并被設(shè)置為可見,則Web頁中包括程序的前面板圖像和文本說明;否則將只有文本內(nèi)容 一個程序可以發(fā)布多個不同的網(wǎng)頁,同一個網(wǎng)頁各個機器可以分別瀏覽,8-5-3 在Web上發(fā)布HTML文件,通過HTML文件遠程控制程序客戶端,8-5-3 在Web上發(fā)布HTML文件,程序遠程控制一些主要問題 嵌入前面板的ActiveX控件不能顯示在客戶端前面板。標(biāo)準(zhǔn)的文件對話框和路徑控件的瀏覽鈕也不能在遠程面板應(yīng)用。 只有能取得控制權(quán)的客戶,才可以遠程看到用VI服務(wù)器動態(tài)打開運行的VI和設(shè)置為被調(diào)用,即打開前面板的子VI的面板。 有While循環(huán)的程序必須加上“等待”函數(shù),否則它會阻止一些必要的程序后臺運行。,練習(xí)與思考,8.1 在程序前面板上創(chuàng)建一個數(shù)值型輸入控件,為它輸入一個數(shù)值;把這個數(shù)值乘以一個比例系數(shù),再由同一個控件上顯示出來。 8.2 編寫一個程序,用LabVIEW的信號生成函數(shù)產(chǎn)生一個三角波并顯示在波形圖表上。由另一個程序把它產(chǎn)生的三角波數(shù)

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論