《電子技術應用》
您所在的位置:首頁 > 其他 > 設計應用 > 基于VB和LabVIEW的自動化控制和編程設計
NI-LabVIEW 2025
基于VB和LabVIEW的自動化控制和編程設計
摘要: 介紹了在VB和Labview平臺下,利用Labview的強大儀器驅動和實驗儀器圖形顯示、VB的可視化編程完成友好的用戶界面進行混合編程,實現了應用系統的無縫集成,豐富了軟件的測量功能,縮短了程序的開發周期。
關鍵詞: 自動化軟件 VB LabView
Abstract:
Key words :

1 引言

  虛擬儀器(簡稱為VI)的開發環境有很多,但NI公司的LabVIEW最為著名。LabVIEW不同于基于文本的編程語言(如Fortran和C),是一種圖形編程語言——通常稱為G編程語言,其編程過程是通過圖形符號描述程序的行為。LabVIEW使用的是科學家和工程師們所熟悉的術語,還使用了很易于識別的構造G語言的圖形符號,即使具有很少編程經驗的人也能學會使用LabVIEW。而VB作為可視化編程工具,不僅簡單容易上手,而且功能強大,可以開發友好的用戶使用界面,同時通過ActiveX控件、DLL(動態鏈接庫)等多種方法實現與其他軟件的聯合開發。

  Microsoft把所有以COM為基礎的技術統稱為ActiveX技術。自動化是大多數ActiveX技術的基礎,它可使解釋性的宏語言(如VB)能夠在不了解應用程序實現細節的情況下控制自動化對象。Labview實現了ActiveX自動化服務支持,在VB下通過ActiveX自動化接口可將 Labview作為Visual Basic語言的一個ActiveX部件調用。

  本文以Agilent公司的E5262A儀器為例,通過Labview和VB混合編程,實現了多種數據采集和自動化控制系統。

2 程序設計

  程序設計以VB作為編程界面,同時調用Labview的圖形顯示控件,而動態鏈接庫則要使用Win的Kernel32.dll,以及Labview的 Gpib32.dll、Visa32.dll、儀器驅動安裝時生成的E5260_32.dll等。程序流程圖如下圖所示。

  首先安裝儀器自動的驅動庫,接口一般采用通用的GPIB標準,不僅數據、命令傳輸速度快,而且一張GPIB卡能夠同時控制最多16臺儀器。儀器驅動安裝后,會生成一個以儀器為名的DLL文件。可以利用Labview的MAX進行接口掃描,發現新增加的儀器。安裝Labview后,在系統目錄下有 gpib32.dll文件。

  其次當電腦中安裝了Labview后,在VB的工程引用中選取所需要的庫文件,其中包括了Agilent的VISA庫文件;在控件引用中,選中 National Instrument公司的CW(波形顯示)等控件;Microsoft的通用對話控件。這樣就可以直接使用NI公司Labview的控件了。在VB工程中,添加儀器的動態鏈接庫(DLL)聲明,包括將要使用的常量字符、GPIB、VISA接口庫函數、儀器(E5262A)庫函數、以及系統的Kernel32庫函數等等。如:Declare Function viOpenDefaultRM Lib "VISA32.DLL" Alias "#141" (sesn As Long) As Long 等等。

  程序設計中首先出現用戶選擇界面,選擇所需要的測量方式,進入下一界面,填寫測量參數,程序進行儀器初始化,根據送入參數進行測試,測試結果由Labview控件顯示,用戶指定文件保存信息將數據保存到文件中。

  VB自帶了時鐘控件Timer,但時間量級是毫秒,快速測量或者反復切換測量狀態時不方便,程序中采用了Win的API函數,通過調用 Public Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)函數,更加方便的對程序進行控制。

  E5262數據采集和自動測量要求:測量一般為三極管的電壓電流變化曲線和漏電流,因此要加入輸入電壓值一、電壓二作為兩者間的電壓值,如使用共發射極時,可以測量不同Vce電壓值時,Vbe的電流曲線。即先固定Vce的電壓值,改變Vbe值,得到伏安曲線。

 


圖1、PNP三極管示意圖

  根據實驗要求設計數據采集模式為以下幾種:

  模式1:固定通道一,二的電壓,即固定Vce、Vbe值,測量電流Ibe。

  模式1:固定通道二的輸出電壓,即固定Vce,以三角波形方式改變通道一(即Vbe)的輸出電壓,測量電流Ibe。

  模式2:固定通道一的輸出電壓,即固定Vbe,以三角波形改變通道二(即Vce)的輸出。測量電流Ibe。

 


圖2 程序流程圖

  數據保存格式規范為數據序列號、實驗日期、采集時間、通道一電壓值、通道二電壓值、采集電流值。

  主要程序代碼說明:

  ReDim OnePeroI((CInt((vdmax - vdmin) / vdstep)) * CInt(tspotcount.Text)) //根據測量數據要求動態分配空間

  For vg = vgmin To vgmax Step vgstep //進行三角波電壓輸出循環

  For vd = vdmin To vdmax Step vdstep//進行三角波電壓輸出循環

  If Option1.value = True Then //判斷使用通道測量類型

  If Combo1.ListIndex = 0 Then//判斷輸入類型,電流還是電壓

  ret = age5260_force(vi, pins(0), age5260_VF_MODE, 2, vd, idcomp, 0)

  End If

  End If

  If RunorStop = True Then //是否被用戶強行終止測量

  test_stopmeas //儀器設置清零

  Exit Sub //退出

  Else

  spot_meas //進行測量

  OnePeroI(CurrentIndex) = meas //保存數據到數組

  Sleep Sleeptime //延遲,控制采用速率

  End If

  CWGraph1.PlotY OnePeroI //Labview控件顯示圖形

  Next vd//通道循環

  CWGraph1.ClearData //圖形更新

  Next vg//通道循環

3 測試實例、結果和討論

 


圖3 基于Labview和VB儀器采集自動化控制界面

  程序在Labview7.1和VB6.0軟件下,系統為Windows XP運行測試通過。儀器使用的是Agilent公司的E5262A,實驗測量的是三極管在不同偏壓下的電流值曲線,程序中可以由自定義的函數設置任意形狀的輸出電壓值。結果表明程序不能快速的自動化測量采集數據,將采集的不同對比圖形實時顯示,還能夠進行初步的數據處理,極大的方便了實驗的進行。

4 結束語

  本文的創新點:

  (1)進行基于VB和Labview的聯合混合編程,,利用Labview的強大儀器驅動和實驗儀器圖形顯示、VB的可視化編程完成友好的用戶界面進行混合編程,實現了應用系統的無縫集成,豐富了軟件的測量功能,縮短了程序的開發周期。

  (2)充分的利用了AcitiveX控件和DLL(動態鏈接庫)等多種方法,不僅能夠滿足實驗測量要求,還增強了儀器的測量功能,充分的發揮了虛擬儀器編程的強大能力。

  (3)程序中可以通過自己開發的函數進行數據處理,在測量顯示存儲數據的同時,將初步結果也計算顯示出來,這樣不僅直觀的監控測量系統,還能隨時根據結果進行參數的調整。

參考文獻

  [1]畢虎,律方成,李燕青,李和明.Labview中訪問數據庫的幾種不同方法.微計算機信息,2006,1-1:131-134。

  [2]吳苗,許江寧,繆繡華,紀兵.基于Labview的設備驅動程序開發技術研究.微計算機信息,2006,2-1:153-155。

  [3]毛建東.基于Labview的單片機數據采集系統的設計.微計算機信息,2006,3-2:41-42。

  [4]周偉林,李清峰,楊華勇.基于Labview的AC1077數據采集卡的驅動.微計算機信息,2006,1-1:121-123。

此內容為AET網站原創,未經授權禁止轉載。
主站蜘蛛池模板: 狠狠久 | 99精品影院| 国产在线观看福利 | ririaiav| 久久精品国产精品青草色艺 | 青草免费免费观看视频在线 | 久久久国产精品免费视频 | 久久国产精品亚洲77777 | 色播五月婷婷 | 97se在线观看 | 日本成年一区久久综合 | 日本天码aⅴ片在线电影网站 | 欧美性生活网址 | 欧美69式视频在线播放试看 | 久久这里只有精品免费视频 | 国产美女精品在线 | 欧美激情伦妇在线观看 | 欧美性生活视频播放 | 青草娱乐 | 最新国产精品视频 | 国产在线高清一级毛片 | 国产欧美日韩在线视频 | 五月天在线播放视频在线 | 色视频一区二区三区 | 天天躁夜夜躁狠狠躁2021a | 午夜毛片免费观看视频 | 免费国产成人高清网站app | 日本久久综合视频 | 男人天堂亚洲天堂 | 亚洲国产青草 | 五月天六月色 | 四虎精品影院2022 | 免费久 | 埃及艳后在线观看 | 97久久久久 | 国产成人综合手机在线播放 | 日本高清中文字幕一区二区三区 | 国产高清在线观看视频手机版 | 久草国产精品 | 色播五月激情五月 | 8888四色奇米在线观看不卡 |