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