版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、第8章 LabVIEW程序生成規(guī)范Intelligent Electronics InstituteHuazhong University of Science & TechnologyHttp:/引言作為一種主要面向測試測量領域的程序設計語言,LabVIEW在設計時主要考慮了快捷、方便,以及能夠實現(xiàn)與硬件的完美結合等因素,因此LabVIEW的程序發(fā)布異常簡便。在程序完成之后,程序員往往希望能夠以某種合適的方式發(fā)布這些VI。本章將著重討論如何以各種方式發(fā)布程序。Http:/3目錄8.1 VI主要發(fā)布方式8.2使用程序生成規(guī)范8.2.1 源代碼發(fā)布8.2.2 獨立應用程序發(fā)布8.2.3
2、共享庫發(fā)布8.2.4 Zip壓縮文件發(fā)布8.2.5 Windows安裝程序發(fā)布8.2.6 .NET互操作程序集發(fā)布8.2.7 Web服務(RESTful)發(fā)布Http:/8.1 VI主要發(fā)布方式n根據程序員目的的不同,VI的發(fā)布方式主要分為以下七種:n源代碼發(fā)布如果希望發(fā)布的VI可以被其他LabVIEW開發(fā)人員使用,則需要創(chuàng)建這種規(guī)范,主要用于二次開發(fā)和合作開發(fā)。n獨立應用程序發(fā)布如果希望未購買LabVIEW開發(fā)系統(tǒng)的用戶也能運行LabVIEW編寫的應用程序,則應該創(chuàng)建獨立應用程序。這種規(guī)范使得用戶只能運行一個LabVIEW應用程序,而無法查看或編輯LabVIEW代碼,在Windows系統(tǒng)中生
3、成我們常見的EXE文件。4Http:/8.1 VI主要發(fā)布方式n共享庫發(fā)布如果希望使用LabVIEW開發(fā)的函數(shù)能夠和使用其他編程語言的開發(fā)人員共享,則需要建立共享庫。在Windows系統(tǒng)中生成DLL文件,也就是通常使用的動態(tài)鏈接庫。nZip壓縮文件發(fā)布如果需要發(fā)布儀器驅動程序、多個源文件或者一個完整的LabVIEW項目,則可以創(chuàng)建一個Zip文件,將包含文件組織結構的所有項目源文件壓縮成Zip包的形式。5Http:/8.1 VI主要發(fā)布方式nWindows安裝程序發(fā)布在Windows系統(tǒng)中,如果希望將獨立應用程序、共享庫或源代碼發(fā)布給其他用戶,則應創(chuàng)建安裝程序。在一個安裝程序中可以包含多個獨立的
4、應用程序、共享庫或源代碼發(fā)布,并且能夠添加許可證、自述文件、版本和公司信息、快捷鍵、注冊表項和NI安裝程序等,這也是最常見的一種發(fā)布方式。n.NET互操作程序集發(fā)布在Windows系統(tǒng)中,如果希望將我們的VI用于Microsoft .NET Framework,可以使用.NET互操作程序集打包我們的VI,如果使用程序生成規(guī)范創(chuàng)建.NET互操作程序集則必須安裝Microsoft .NET Framework 2.0或更高的版本。6Http:/8.1 VI主要發(fā)布方式nWeb服務(RESTful)發(fā)布如果需要控制一臺遠程計算機上運行的程序,則應在運行程序的計算機上開設一個Web服務,通過Web服務
5、我們可以和遠程計算機進行數(shù)據交流和控制遠程計算機VI運行。 LabVIEW將以上七種方式稱為“程序生成規(guī)范”,包括了VI創(chuàng)建所需的全部設置,例如需包含的文件、要創(chuàng)建的目錄和對VI目錄的設置,并統(tǒng)一由“項目瀏覽器”管理。7Http:/8.2使用程序生成規(guī)范n本節(jié)將使用一個實例說明使用以上程序生成規(guī)范的具體步驟,以“飛機機翼壓力測試系統(tǒng)”為例,該系統(tǒng)主要用來測試飛機起飛階段機翼的壓力分布情況。n系統(tǒng)的項目源文件組織方式如右圖所示8Http:/8.2使用程序生成規(guī)范n項目源文件各部分主要作用n開機畫面.vi啟動畫面,動態(tài)調用“飛機機翼壓力測試系統(tǒng).vi”程序nConfig.ini用以存儲用戶對系統(tǒng)的
6、配置信息n飛機機翼壓力測試系統(tǒng).vi主程序VInSubVI分類放置系統(tǒng)的子VI9Http:/8.2使用程序生成規(guī)范nReport默認的測試報表生成目錄,放置由系統(tǒng)自動生成的Excel報表nPicture放置系統(tǒng)照片和其他圖像文件nHelp放置幫助文件,如開發(fā)方網頁鏈接、系統(tǒng)使用說明和幫助,以及版本信息等nDrivers放置儀器驅動,如專用傳感器驅動、示波器驅動等,這些驅動通常以共享庫方式提供,如圖中的chr6320 x_32.dll文件10Http:/8.2使用程序生成規(guī)范nDatabase放置數(shù)據庫文件,如Microsoft Access數(shù)據庫文件和數(shù)據鏈接文件等nData用于存放原始采集的
7、數(shù)據文件,以自定義的格式存儲11Http:/8.2使用程序生成規(guī)范n新建程序生成規(guī)范在項目瀏覽器窗口中,右擊“程序生成規(guī)范”,選擇“新建”選項,分別對應著以上7種程序生成規(guī)范12Http:/8.2.1 源代碼發(fā)布n源代碼發(fā)布可用來把一系列源文件打包,包括LabVIEW安裝目錄的庫文件,這些文件構成一個完整的系統(tǒng)供其他開發(fā)人員在LabVIEW中使用n其他的開發(fā)人員可以編輯發(fā)布的源代碼,可以通過兩種方式實現(xiàn)保護n在所創(chuàng)建的源代碼發(fā)布中對某些特定的VI設置密碼保護n從這些特定的VI中把程序框圖源代碼刪除,因為這樣不僅可縮小文件,還可阻止其他人改變源代碼13Http:/8.2.1 源代碼發(fā)布n配置源代
8、碼發(fā)布n在程序生成規(guī)范新建選項中選擇“源代碼發(fā)布”n在彈出的“我的源代碼發(fā)布 屬性”對話框中配置源代碼發(fā)布相關參數(shù)n“信息”頁設置程序生成規(guī)范名稱、目標目錄和程序生成規(guī)范說明,程序生成規(guī)范名稱將在項目瀏覽器窗口中的程序生成規(guī)范下顯示,同一個項目中,程序生成規(guī)范內的文件名稱必須是唯一的14Http:/8.2.1 源代碼發(fā)布n“源文件”頁設置在項目文件目錄樹中始終包括或者始終不包括的項15Http:/8.2.1 源代碼發(fā)布n“目標”頁配置目標設置和向源代碼發(fā)布添加目標目錄。如果希望保持源代碼的層次結構,在目錄選項里選擇“保留磁盤層次結構”16Http:/8.2.1 源代碼發(fā)布n“源文件設置”頁編輯
9、源代碼發(fā)布中文件的目標和屬性,若在“目標”頁選擇保留磁盤層次結構,此頁保持默認即可17Http:/8.2.1 源代碼發(fā)布n“高級”頁選擇是否生成程序生成記錄文件n“附加排除項”頁設置是否包括LabVIEW安裝目錄下的子VI,是否需要將“自定義控件”的源和實例斷開連接,以及是否刪除多態(tài)VI中沒有使用的VI實例18Http:/8.2.1 源代碼發(fā)布n“預覽”頁預覽當前配置下的源代碼發(fā)布,查看生成的結果,單擊“確定”按鈕可以保存當前配置,單擊“生成”按鈕就可以創(chuàng)建源代碼發(fā)布19Http:/8.2.2 獨立應用程序發(fā)布n獨立應用程序可為其他用戶提供VI的可執(zhí)行版本,允許用戶運行VI而無須安裝LabVI
10、EW開發(fā)系統(tǒng)。nWindows平臺的應用程序以.exe為擴展名,而Mac OS平臺的應用程序以.app為擴展名。20Http:/8.2.2 獨立應用程序發(fā)布n配置獨立應用程序發(fā)布n在程序生成規(guī)范新建選項中選擇“應用程序(EXE)”n在彈出的“我的應用程序 屬性”對話框中配置源代碼發(fā)布相關參數(shù)21Http:/8.2.2 獨立應用程序發(fā)布n“源文件”頁設置當前項目的啟動VI、始終包括的VI和文件22Http:/8.2.2 獨立應用程序發(fā)布n配置“始終包括” 在“始終包括”選項中,只需要把動態(tài)調用的VI放入即可,其他非動態(tài)調用的VI并不需要加入。 例如,在本例中,“開機畫面.vi”調用了“飛機機翼壓
11、力測試系統(tǒng).vi”,所以將“開機畫面.vi”作為啟動VI,而將后者作為動態(tài)VI調用。23Http:/8.2.2 獨立應用程序發(fā)布n“目標”頁設置生成的應用程序的目錄結構24Http:/8.2.2 獨立應用程序發(fā)布n配置應用程序目錄結構 由于生成的獨立應用程序并不能維持源文件的文件組織方式,所以必須手動創(chuàng)建目錄。 如本例中的Report文件夾等,就需要在該步驟中重新定義。25Http:/8.2.2 獨立應用程序發(fā)布n“源文件設置”頁對各個VI和文件進行設置26Http:/8.2.2 獨立應用程序發(fā)布n配置VI和文件 對VI和文件的設置,包括將文件放置的目標文件夾,如需要將Report文件指定放入
12、到Report目錄中,就需要Report文件夾點選“為包含的所有項設置目標”,選擇在“目標”頁中創(chuàng)建的Report目錄。 由于SubVI和Drivers內文件為程序非動態(tài)調用子VI,所以目標設置為與調用方相同即可。27Http:/8.2.2 獨立應用程序發(fā)布n“圖標”頁配置當前應用程序的圖標(.ico文件)n“高級”頁配置一些特殊的選項,如是否允許ActiveX、是否允許MathScript,以及是否允許調試等n“附加排除項”頁設置是否需要將“自定義控件”的源和實例斷開連接及是否刪除多態(tài)VI中沒有使用的VI實例28Http:/8.2.2 獨立應用程序發(fā)布n“版本信息”頁配置版本號和其它應用程序
13、信息n“Windows安全”頁配置運行獨立應用程序的Windows操作系統(tǒng)的安全設置n“共享變量部署”頁指定運行時需部署的共享變量所在的庫n“運行時語言”頁設置LabVIEW運行引擎的語言,如系統(tǒng)默認菜單項的語言等,本例中選擇“簡體中文”29Http:/8.2.2 獨立應用程序發(fā)布n“預覽”頁預覽當前配置下生成的獨立應用程序30Http:/8.2.3 共享庫發(fā)布n共享庫用于通過文本編程語言調用VI,如NI LabWindows/CVI、Microsoft Visual C+和Microsoft Visual Basic等,它為非LabVIEW編程語言提供了訪問由LabVIEW開發(fā)的代碼的方式n
14、Windows共享庫以.Dll為擴展名,Mac OS共享庫以.framework為擴展名,Linux共享庫以.so為擴展名31Http:/8.2.3 共享庫發(fā)布nWindows共享庫的創(chuàng)建n共享庫通常以某個函數(shù)為源文件,極少涉及顯示面板n創(chuàng)建簡單應用程序創(chuàng)建一個只具備兩個數(shù)加、減、乘、除四種運算過程的運算器定義輸入/輸出連接端子32Http:/8.2.3 共享庫發(fā)布n配置共享庫發(fā)布n在程序生成規(guī)范新建選項中選擇“共享庫(DLL)”n在彈出的“我的DLL 屬性”對話框中配置源代碼發(fā)布相關參數(shù)33Http:/8.2.3 共享庫發(fā)布n“我的DLL 屬性”配置大部分的設置與創(chuàng)建獨立應用程序的設置步驟相
15、同,這里不再一一指出。最核心的部分是VI原型定義34Http:/8.2.3 共享庫發(fā)布n定義VI原型在“源文件”頁中選擇需要導出的函數(shù)將彈出“定義VI原型”對話框35Http:/8.2.3 共享庫發(fā)布n“定義VI原型”配置 當定義了VI的端口后,LabVIEW會自動識別各個端口的數(shù)據類型,并創(chuàng)建相應的接口。 上圖中保持默認值不變,當然也可以設置X和Y以指針(或者是地址)方式傳遞,而不以值方式傳遞。 此外,一個DLL文件中也可以包含多個函數(shù)。36Http:/8.2.4 Zip壓縮文件發(fā)布n壓縮文件用于以單個可移植文件的形式發(fā)布多個文件或整套LabVIEW項目n一個Zip文件包括可發(fā)送給用戶使用的
16、已經壓縮了的多個文件,可用于把驅動程序文件或已選定的源代碼文件發(fā)給其他LabVIEW用戶使用37Http:/8.2.4 Zip壓縮文件發(fā)布n配置Zip壓縮文件發(fā)布n在程序生成規(guī)范新建選項中選擇“Zip文件”n在彈出的“我的Zip文件 屬性”對話框中配置源代碼發(fā)布相關參數(shù)n“Zip 信息”頁設置該配置的名稱、目標文件夾和注釋38Http:/8.2.4 Zip壓縮文件發(fā)布n“源文件”頁設置需要打包的文件,程序員可以打包整個或部分的項目文件,本例中選擇整個項目文件39Http:/8.2.4 Zip壓縮文件發(fā)布n“Zip文件結構”頁設置指定用于Zip文件生成的文件結構,一般使用默認即使用共同路徑n“預
17、覽”頁預覽當前配置下生成的Zip文件,如果不正確就可以實時更改40Http:/8.2.4 Zip壓縮文件發(fā)布n創(chuàng)建Zip壓縮文件單擊“確定”按鈕可以保存當前配置,單擊“生成”按鈕就可以創(chuàng)建Zip壓縮文件了41Http:/8.2.5 Windows安裝程序發(fā)布nWindows安裝程序用于發(fā)布獨立應用程序、共享庫和通過應用程序生成器創(chuàng)建的源代碼發(fā)布等n創(chuàng)建Windows安裝程序必須首先創(chuàng)建獨立應用程序、共享庫或源代碼發(fā)布42Http:/8.2.5 Windows安裝程序發(fā)布n配置Windows安裝程序發(fā)布n在程序生成規(guī)范新建選項中選擇“安裝程序”n在彈出的“我的安裝程序 屬性”對話框中配置源代碼發(fā)
18、布相關參數(shù)43Http:/8.2.5 Windows安裝程序發(fā)布n“源文件”頁配置安裝程序的源文件44Http:/8.2.5 Windows安裝程序發(fā)布n配置源文件 用于安裝的源文件本例選擇已經創(chuàng)建完畢的獨立應用程序 在目標視圖框中有各種各樣預定義的目錄,程序員可以選擇希望應用程序安裝到的目錄,本例選擇ProgramFilesFolder45Http:/8.2.5 Windows安裝程序發(fā)布n“源文件設置”頁設置各個文件的屬性,將主文件“應用程序.exe”設置為“重要”,并且將LabVIEW生成的aliases文件隱藏46Http:/8.2.5 Windows安裝程序發(fā)布n“快捷方式”頁設置應
19、用程序快捷方式,本例設定了兩個:開始菜單快捷方式和桌面快捷方式47Http:/8.2.5 Windows安裝程序發(fā)布n“附加安裝程序”頁添加附加的安裝程序,如LabVIEW的運行引擎、NI的儀器驅動等48Http:/8.2.5 Windows安裝程序發(fā)布n“對話框信息”頁設置安裝對話框信息,如選擇安裝時的語言、對話框內容等49Http:/8.2.5 Windows安裝程序發(fā)布n“注冊表”頁添加注冊表信息,本例中需要添加License注冊表項,用以存儲用戶注冊的注冊碼的密文50Http:/8.2.5 Windows安裝程序發(fā)布n“硬件配置”頁加載NI MAX的配置文件,本例中并沒有使用到這一項,
20、因此不用配置51Http:/8.2.5 Windows安裝程序發(fā)布n“高級”頁設置一些高級選項,如安裝自定義錯誤代碼文件、操作系統(tǒng)要求和安裝完后執(zhí)行的EXE程序或命令等52Http:/8.2.6 .NET互操作程序集發(fā)布n.NET互操作程序集生成規(guī)范將LabVIEW項目中的VI以.NET互操作程序集的形式生成和發(fā)布,這樣就可以在.NET的開發(fā)平臺上調用labview的程序n將VI編譯成.NET互操作程序集發(fā)布可以解決軟件工程師在托管代碼中調用非托管代碼的難題53Http:/8.2.6 .NET互操作程序集發(fā)布n配置.NET互操作程序集發(fā)布n簡單例程,定義一個加法運算器n在程序生成規(guī)范新建選項中
21、選擇“.NET互操作程序集”n在彈出的“我的互操作程序集 屬性”對話框中配置源代碼發(fā)布相關參數(shù)54Http:/8.2.6 .NET互操作程序集發(fā)布n配置“我的互操作程序集 屬性”55Http:/8.2.6 .NET互操作程序集發(fā)布n配置“定義VI原型”在“源文件”頁中選擇需要導出的函數(shù)將彈出“定義VI原型”對話框,當定義了VI的端口后,LabVIEW會自動識別各個端口的數(shù)據類型,并創(chuàng)建相應的接口56Http:/8.2.7 Web服務(RESTful)發(fā)布n在LabVIEW中,可將VI作為服務器端的Web服務發(fā)布,LabVIEW Web服務用于在網絡上創(chuàng)建和部署Web應用,使HTTP客戶端可訪問
22、這些應用n將LabVIEW項目中的VI作為Web服務發(fā)布,必須首先激活LabVIEW Web服務器上的功能n選擇“工具選項”,打開選項對話框,選擇“Web服務器”在常規(guī)部分勾選“啟用Web服務器”激活Web服務器上的Web服務57Http:/8.2.7 Web服務(RESTful)發(fā)布n激活LabVIEW Web服務器功能58Http:/8.2.7 Web服務(RESTful)發(fā)布nLabVIEW Web服務包括Web方法VI、Web方法VI依賴關系和靜態(tài)文件n創(chuàng)建Web服務n準備LabVIEW項目和Web方法VI59Http:/8.2.7 Web服務(RESTful)發(fā)布n配置Web服務發(fā)布
23、n在程序生成規(guī)范新建選項中選擇“Web服務 (RESTful)”n在彈出的“我的Web服務 屬性”對話框中配置源代碼發(fā)布相關參數(shù)60Http:/8.2.7 Web服務(RESTful)發(fā)布n“信息”頁在服務名稱文本框中輸入mywebservice。因為服務名稱是URL的一部分,HTTP客戶端將使用該URL訪問Web服務,所以服務名稱必須符合標準URL規(guī)范61Http:/8.2.7 Web服務(RESTful)發(fā)布n“源文件”頁把Web服務VI(mul.vi)添加到服務VI,會彈出“配置RESTful VI”對話框,其中可以在輸出格式下拉菜單中選擇Web服務返回的數(shù)據類型,使用默認即可62Htt
24、p:/8.2.7 Web服務(RESTful)發(fā)布n“URL映射”頁設置用于指定一個URL,允許用戶發(fā)送和接收Web服務中Web方法VI的數(shù)據63Http:/8.2.7 Web服務(RESTful)發(fā)布n配置URL映射 將VI添加至源文件頁的服務VI列表框時,LabVIEW自動為Web方法VI創(chuàng)建了一個默認URL映射 該例中,根據變量創(chuàng)建順序的前后,默認URL映射為/mul/:x/:y或/mul/:y/:x 如上述URL映射未顯示或顯示的URL不是上例所示,可手動創(chuàng)建一個URL映射64Http:/8.2.7 Web服務(RESTful)發(fā)布n“服務設定”頁設置Web服務需要發(fā)布的Web服務器,
25、其中Web服務器的服務器標簽和HTTP端口可以在“工具選項”的Web服務器中設置。其余選項均使用默認設置即可,點擊生成,即可完成Web服務的生成65Http:/8.2.7 Web服務(RESTful)發(fā)布n部署Web服務右鍵單擊項目瀏覽器窗口程序生成規(guī)范下的我的Web服務,從快捷菜單中選擇部署即可n完成Web服務創(chuàng)建 打開Web瀏覽器,輸入下列自定義瀏覽URL:http:/localhost/mywebservice/mul/2/3。 URL由Web服務器名稱、Web服務名稱和URL映射組成。值2和3對應于在URL映射中指定的x和y,出現(xiàn)在mul.vi連線板上。URL元素/mul是在URL映射頁指定的固定字符串。提交URL,該URL將發(fā)送HTTP請求以調用Web方法VI。Web方法VI mul.vi執(zhí)行并按照之
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五年度財務信息系統(tǒng)集成合同3篇
- 2024石子深加工技術研發(fā)與應用合同3篇
- 2024玩具樂園設備采購及租賃服務合同3篇
- 2024版影視作品版權轉讓與授權播放合同
- 2025年松樹造林項目采購合同3篇
- 二零二五版船舶光租及船舶安全管理體系合同3篇
- 二零二五年度安置房項目公共設施維護合同3篇
- 2025年度淋浴房綠色環(huán)保材料采購與安裝服務合同4篇
- 2025年度鋁材貿易結算與風險管理合同4篇
- 二零二五年度跨境電商進口采購合同3篇
- 領導溝通的藝術
- 發(fā)生用藥錯誤應急預案
- 南潯至臨安公路(南潯至練市段)公路工程環(huán)境影響報告
- 綠色貸款培訓課件
- 大學生預征對象登記表(樣表)
- 主管部門審核意見三篇
- 初中數(shù)學校本教材(完整版)
- 父母教育方式對幼兒社會性發(fā)展影響的研究
- 新課標人教版數(shù)學三年級上冊第八單元《分數(shù)的初步認識》教材解讀
- (人教版2019)數(shù)學必修第一冊 第三章 函數(shù)的概念與性質 復習課件
- 重慶市銅梁區(qū)2024屆數(shù)學八上期末檢測試題含解析
評論
0/150
提交評論