劉勇
摘 要:LabView出現(xiàn)于美國(guó)儀器公司創(chuàng)造的一款基于G語(yǔ)言的開(kāi)發(fā)環(huán)境,工業(yè)界在各種因素影響下也開(kāi)始接受虛擬儀器思想理念。所謂虛擬儀器即運(yùn)用在常規(guī)計(jì)算機(jī)平臺(tái)上結(jié)合需求對(duì)儀器測(cè)試功能進(jìn)行全新定義,此類儀器將現(xiàn)代計(jì)算機(jī)軟件技術(shù)和傳統(tǒng)儀器有效結(jié)合,不僅可以體現(xiàn)傳統(tǒng)儀器功能,更能擴(kuò)展儀器內(nèi)存。其中虛擬儀器和傳統(tǒng)儀器相比其處理能力、智能化程度、可操作性以及性價(jià)比等多方面均有一定的優(yōu)勢(shì)。對(duì)此,本文則從多方面分析LabView與外部軟件交互研究以及實(shí)現(xiàn)方式,望給予相關(guān)工作人員提供參考。
關(guān)鍵詞:LabView;外部軟件;交互;研究;實(shí)現(xiàn)
DOI:10.16640/j.cnki.37-1222/t.2019.24.066
毫無(wú)疑問(wèn),信息技術(shù)是目前經(jīng)濟(jì)社會(huì)快速發(fā)展的顯著標(biāo)志,LabView作為一種圖形化編程語(yǔ)言被廣泛應(yīng)用于探究實(shí)驗(yàn)室、學(xué)術(shù)界和工業(yè)界等領(lǐng)域,被眾多研究者看做標(biāo)準(zhǔn)的儀器控制和數(shù)據(jù)采集軟件。對(duì)此,借助LabView特點(diǎn)和外部軟件可以較好地實(shí)現(xiàn)數(shù)據(jù)交互,大幅度提高工作效率。
1 LabView概述
LabView(Laboratory Virtual Instrument Engineering Workbench)是一種運(yùn)用圖表代替?zhèn)鹘y(tǒng)文本并在此基礎(chǔ)創(chuàng)建應(yīng)用程序的圖形化編輯語(yǔ)言。傳統(tǒng)文本編程語(yǔ)言在執(zhí)行程序時(shí)會(huì)根據(jù)語(yǔ)句、指令的先后順序,而該編程語(yǔ)言則運(yùn)用數(shù)據(jù)流編程形式,處于程序框圖中的各個(gè)節(jié)點(diǎn)數(shù)據(jù)流向決定函數(shù)以及VI的執(zhí)行順序,其中VI即虛擬儀器,屬于LabView程序模塊之一。事實(shí)上,LabView與C和BASCI相同,作為一種通用化編程系統(tǒng),是一個(gè)可以完成多種編程任務(wù)的巨大函數(shù)庫(kù)。LabView函數(shù)庫(kù)中涵蓋出串口控制、GPIB、數(shù)據(jù)采集、數(shù)據(jù)分析、數(shù)據(jù)存儲(chǔ)、數(shù)據(jù)顯示等。與此同時(shí)LabView也有如動(dòng)畫(huà)式顯示數(shù)據(jù)以及子程序、設(shè)置斷點(diǎn)、單步執(zhí)行等傳統(tǒng)程序調(diào)試工具,便于調(diào)試程序。此外該軟件廣泛應(yīng)用于學(xué)術(shù)界和工業(yè)界,很多研究人員將LabView看做標(biāo)準(zhǔn)化儀器控制和數(shù)據(jù)采集軟件。因?yàn)樵撥浖闪藬?shù)據(jù)采集卡通訊、RS232、VXI、GPIB、RS-485協(xié)議軟件等功能。LabView中還內(nèi)置有利于應(yīng)用ActiveX和TCP/IP等軟件標(biāo)準(zhǔn)的庫(kù)函數(shù),作為一個(gè)靈活且功能強(qiáng)大的軟件,借助該軟件可以快速建立屬于自己的虛擬儀器,圖形化界面使使用者在編程和具體使用中都會(huì)十分有趣。圖形化程序語(yǔ)言也稱為G語(yǔ)言,運(yùn)用此類語(yǔ)言編程時(shí)基本可以不用另寫(xiě)程序代碼,則以框圖或流程圖取代。此程序語(yǔ)言可充分利用科學(xué)家、技術(shù)人員以及工程師熟悉的概念、圖標(biāo)、術(shù)語(yǔ),因而LabView是一個(gè)面向最終用戶的程序工具,增強(qiáng)操作者構(gòu)建自身工程和科學(xué)系統(tǒng)能力,為操作者提供數(shù)據(jù)采集系統(tǒng)和儀器編程等快速途徑,運(yùn)用其開(kāi)展設(shè)計(jì)、原理研究、測(cè)試并實(shí)現(xiàn)儀器系統(tǒng)時(shí)可大幅度提高工作效率。
2 動(dòng)態(tài)鏈接庫(kù)機(jī)制
在LabView中可以充分利用庫(kù)函數(shù)節(jié)點(diǎn)對(duì)DLL進(jìn)行調(diào)用,使程序開(kāi)發(fā)效率得到大幅度提高。操作者只要合理運(yùn)用庫(kù)函數(shù)就能直接調(diào)用Windows標(biāo)準(zhǔn)動(dòng)態(tài)連接庫(kù),甚至還可調(diào)用提前編制的DLL。操作者在程序框圖中直接點(diǎn)擊鼠標(biāo)右鍵,再選擇互連接口和相關(guān)可執(zhí)行程序,此時(shí)就能啟動(dòng)庫(kù)函數(shù)節(jié)點(diǎn),函數(shù)圖標(biāo)也會(huì)直接出現(xiàn)于設(shè)計(jì)面板中。調(diào)用庫(kù)函數(shù)節(jié)點(diǎn)圖標(biāo)后再進(jìn)行分配。在此過(guò)程中產(chǎn)生的驅(qū)動(dòng)函數(shù)多來(lái)DLL模塊和LabView數(shù)據(jù)相互交換而成,特別是當(dāng)操作者調(diào)用DLL庫(kù)中函數(shù)時(shí)需明確以下相關(guān)信息:①函數(shù)類型;②函數(shù)參數(shù);③函數(shù)返回?cái)?shù)據(jù)類型;④調(diào)用函數(shù)方式;⑤DLL庫(kù)文件具體位置等。操作者點(diǎn)擊鼠標(biāo)右鍵可直接調(diào)用庫(kù)函數(shù)節(jié)點(diǎn)圖標(biāo),之后再?gòu)棾龅牟藛沃羞x擇配置,再詳細(xì)瀏覽被調(diào)用庫(kù)名,最后將被調(diào)用的函數(shù)名輸入到函數(shù)名選項(xiàng)當(dāng)中,尤其在調(diào)用規(guī)范選項(xiàng)中可直接選擇標(biāo)準(zhǔn)調(diào)用或用戶自身建立的庫(kù)。設(shè)置調(diào)用函數(shù)參數(shù)和返回值時(shí),一般選擇返回值的參數(shù)類型多為字符、數(shù)值和空,操作者選定其中一種類型后還需要結(jié)合具體情況選擇具體數(shù)據(jù)類別,之后點(diǎn)擊確定后可直接返回LabView設(shè)計(jì)面板當(dāng)中。調(diào)用庫(kù)函數(shù)節(jié)點(diǎn)已根據(jù)之前配置好的類型和參數(shù)個(gè)數(shù)設(shè)置輸入輸出端口,和其他LabView節(jié)點(diǎn)圖標(biāo)沒(méi)有較大的區(qū)別,只需將對(duì)應(yīng)的參數(shù)成功連線即可。
3 net有效引用
操作人員在運(yùn)用LabVIE過(guò)程中可直接引用.net開(kāi)發(fā)的相關(guān)應(yīng)用程序。即在LabVIEW程序框圖中可先點(diǎn)擊屬鼠標(biāo)右鍵選擇互聯(lián)接口,之后選擇.net和構(gòu)造器節(jié)點(diǎn),此時(shí)程序會(huì)彈出相應(yīng)窗口,此時(shí)再選擇屬于自身的程序集或exe文件。對(duì)象框會(huì)在選中相關(guān)程序或文件后顯示對(duì)應(yīng)的所有對(duì)象,操作者根據(jù)所需選擇后再點(diǎn)擊“確定”,由此一來(lái)該對(duì)象就順利加入LabVIEW程序框圖當(dāng)中。最后將鼠標(biāo)移動(dòng)到對(duì)象框上一條線位置并點(diǎn)擊右鍵盤(pán),分別選擇創(chuàng)建類方法和Show Dialog方法,成功連接對(duì)應(yīng)的線后啟動(dòng)運(yùn)行就可顯示.net程序。
4 ActiveX技術(shù)
隨著互聯(lián)網(wǎng)廣泛普及,人們對(duì)網(wǎng)絡(luò)應(yīng)用程序開(kāi)發(fā)提出比以往更高的要求,尤其如何在互聯(lián)網(wǎng)上共享微軟產(chǎn)品功能成為廣泛關(guān)注的焦點(diǎn),因而微軟提出ActiveX技術(shù)。ActiveX技術(shù)即Microsoft提出的一組使用COM后,使得軟件部件在互聯(lián)網(wǎng)環(huán)境中可以相互交集的技術(shù)集。該技術(shù)和具體編程語(yǔ)言沒(méi)有直接關(guān)聯(lián),因?yàn)楸粡V泛應(yīng)用于客戶端和WEB服務(wù)器等多個(gè)方面。ActiveX可看做一種標(biāo)準(zhǔn),運(yùn)用該標(biāo)準(zhǔn)可以便于不同語(yǔ)言類型開(kāi)發(fā)的軟件在互聯(lián)網(wǎng)中進(jìn)行相互操作,更能促使Internet超越傳統(tǒng)靜態(tài)文件,同時(shí)借助可交互對(duì)象和現(xiàn)代多媒體技術(shù)效果為用戶提供高效和生動(dòng)有趣的服務(wù)。與此同時(shí)ActiveX技術(shù)集合了開(kāi)放技術(shù),涵蓋當(dāng)前廣泛流行的Internet平臺(tái)、語(yǔ)言和標(biāo)準(zhǔn)。本文運(yùn)用ActiveX技術(shù)描述Excel,在LabView程序框圖中通過(guò)點(diǎn)擊鼠標(biāo)右鍵選擇互聯(lián)接口,再選擇ActiveX技術(shù)后打開(kāi)自動(dòng)化,并添加打開(kāi)自動(dòng)化程序到框圖當(dāng)中,設(shè)置后可按照對(duì)應(yīng)的參數(shù)連線即可。
5 TCP協(xié)議
LabView實(shí)現(xiàn)交換數(shù)據(jù)操作時(shí)可借助外部軟件和采取TCP方式,即先在程序框圖中點(diǎn)擊鼠標(biāo)右鍵,之后選擇數(shù)據(jù)通信、協(xié)議、TCP、TCP傾聽(tīng),必要時(shí)還需添加TCP傾聽(tīng)器,此類操作和添加寫(xiě)入TCP數(shù)據(jù)、讀取TCP數(shù)據(jù)和關(guān)閉連接較為相似。借助循環(huán)可以對(duì)整個(gè)過(guò)程進(jìn)行控制,通過(guò)設(shè)置IP地址和端口成功連接相關(guān)線路。在LabView中成功設(shè)置后就可在外部程序中任意調(diào)用。
6 結(jié)語(yǔ)
總之,LabView是一種程序開(kāi)發(fā)環(huán)境,其開(kāi)發(fā)環(huán)境集成科學(xué)家和工程師快速構(gòu)建多種應(yīng)用和自身所需的工具,目的在于幫助科學(xué)家和工程師分析和解決問(wèn)題,大幅度提高生產(chǎn)力和工作效率。LabView和外部軟件有多種類型數(shù)據(jù)交換方法,運(yùn)用LabView涵蓋的ActiveX和TCP/IP等軟件標(biāo)準(zhǔn)庫(kù)函數(shù)可以簡(jiǎn)化外部軟件數(shù)據(jù)交換程序,尤其LabView和外部軟件數(shù)據(jù)交換在虛擬儀器應(yīng)用系統(tǒng)開(kāi)發(fā)過(guò)程中可以得到較好地應(yīng)用,最大限度提高工作效率和質(zhì)量。
山東商務(wù)職業(yè)學(xué)院大學(xué)生科研基金項(xiàng)目“基于 LabVIEW 的移動(dòng)機(jī)器人人機(jī)交互系統(tǒng)” ,項(xiàng)目編號(hào):19sdbixsky12