技術頻道

娓娓工業(yè)
您現(xiàn)在的位置: 中國傳動網 > 技術頻道 > 技術百科 > 基于LabVIEW的電表校驗虛擬儀表接口控制

基于LabVIEW的電表校驗虛擬儀表接口控制

時間:2008-12-08 09:28:36來源:ronggang

導語:?本文闡述用虛擬儀表設計工具LabVIEW開發(fā)電表校驗虛擬儀表軟件,通過對信號測量采樣控制和數(shù)據(jù)庫管理的實際應用實例,具體地討論了對自行設計的微機硬、軟件的連接及控制接口的技術和方法
摘 要:本文闡述用虛擬儀表設計工具LabVIEW開發(fā)電表校驗虛擬儀表軟件,通過對信號測量采樣控制和數(shù)據(jù)庫管理的實際應用實例,具體地討論了對自行設計的微機硬、軟件的連接及控制接口的技術和方法。 關鍵詞:LabVIEW 虛擬儀表 電表校驗 Abstracts:This paper introduces the software of ammeter visual instrument, which is developed by LabVIEW. With the instances of signal sampling control and management of database, it presents the technology and method of the connection and interface of hardware and software of the system in detail. Key words:LabVIEW Visual Instrument Ammeter Test 1. 引言   Visual Instrument (VI,虛擬儀器)是以計算機強大的軟硬件資源作為儀器的支撐,利用高性能的模塊化硬件,結合高效靈活的軟件組成的,來完成各種測試、測量和自動化的應用的各種各樣的儀器系統(tǒng)。傳統(tǒng)的電子儀器是自封閉的系統(tǒng),屬于專用設備,不便于用戶對儀表功能需要改變及儀表功能的擴充,而VI的功能是可由用戶自己定義的,并且是可以根據(jù)用戶需求進行快速升級的。   傳統(tǒng)的電表校驗儀表都是專用昂貴的笨重型設備,而本系統(tǒng)是建立在小型PXI工業(yè)控制計算機平臺之上,結構小巧緊湊。本校驗系統(tǒng)的軟件設計是在Windows下實現(xiàn),主要包括三個層面:底層的硬件驅動程序,針對硬件特點,根據(jù)Windows操作系統(tǒng)對設備管理的特點,采用DLL文件實現(xiàn)對硬件部分的直接驅動;中層通過編寫生成DLL文件來完成應用程序和驅動程序的接口,被應用程序調用實現(xiàn)對硬件的具體控制和操作;上層的用戶應用程序進行人-機交互操作,調用功能子程序,實現(xiàn)參數(shù)傳遞,完成有關的數(shù)據(jù)處理,在這里采用LabVIEW(Laborary Virtual Instrument Engineering Workbench)設計虛擬儀器的用戶應用程序,則是當前優(yōu)選的方法。在采用虛擬儀器技術設計的電表校驗系統(tǒng)中,由于測量功能的特殊要求,微機的電量測量儀表插卡是自行設計的,數(shù)據(jù)庫也是按用戶要求設計。因此,采用LabVIEW開發(fā)虛擬儀表就面臨如何用LabVIEW實現(xiàn)對硬件控制,如何用LabVIEW實現(xiàn)對數(shù)據(jù)庫管理的問題,這也是設計中必須首先解決的問題。 2. LabVIEW對電量測量卡硬件控制   2.1 LabVIEW對硬件控制的基本結構   LabVIEW對自行設計的電量測量卡硬件控制主要是通過調用動態(tài)連接庫(DLL)來實現(xiàn)。對于NI公司生產出售的各種數(shù)據(jù)采集卡式設備,都提供了對應的設備驅動程序,安裝后可以被LabVIEW的VI函數(shù)直接調用,以此方便用戶對數(shù)據(jù)采集卡的使用和控制。對本系統(tǒng)自行設計的電量測量卡,必須自行設計驅動程序并形成DLL文件,用LabVIEW的Call Library Function Node 結點來調用動態(tài)連接庫里的函數(shù),完成對硬件的控制。LabVIEW對硬件控制 測量插卡驅動程序的基本結構如圖1所示。 [align=center] 圖1 LabVIEW對硬件控制結構[/align]   圖中,底層硬件接口驅動程序是面向硬件接口專用驅動程序,它可以被應用層驅動程序調用實現(xiàn)對硬件直接控制。應用層驅動程序是面向用戶應用程序的控制接口,為動態(tài)連接庫文件,可用LabVIEW的Call Library Function Node 結點來調用。該結點在Advenced子模板中,其配置也比較簡單,只需打開對應的動態(tài)連接庫文件,選中要調用的函數(shù),添加適當?shù)膮?shù)即可,細節(jié)可參閱參考文獻[1]。   2.2 LabVIEW電量測量控制流程   電量測量插卡能對三相交流電壓和電流進行測量,測量過程由插卡上的DSP控制,測量的數(shù)據(jù)存放在插卡上的雙口RAM中,微機上LabVIEW編寫的用戶程序通過雙口RAM和電量測量插卡交換信息,下傳控制信號,讀取測量數(shù)據(jù)。系統(tǒng)對測量信號處理及分析有不同的要求,這里僅以圖2 A相電壓測量的LabVIEW控制程序流程對測量控制進行說明。 [align=center] A相電壓測量控制程序[/align]   由程序的代碼框圖可見,只要LabVIEW程序從雙口RAM中獲取不同的數(shù)據(jù),就可以利用LabVIEW提供的各種控件和函數(shù)對數(shù)據(jù)進行不同的分析、計算、處理和顯示。而不同的數(shù)據(jù)是通過該數(shù)據(jù)存放在雙口RAM中的起始地址位置和數(shù)據(jù)數(shù)量來確定。當系統(tǒng)工作在測量控制方式下,在循環(huán)程序中執(zhí)行Call Library Function Node 結點,該結點根據(jù)程序設定的“起始位置”和“采集點數(shù)”,調用了應用層驅動DLL里的READRAM函數(shù),從雙口RAM指定位置(由起始位置決定)讀取連續(xù)數(shù)目(采集點數(shù))的測量數(shù)據(jù),并和采集時間間隔組成采集到的實際波形,提供給后續(xù)程序進行分析處理。以A相電壓波形的測量和顯示為例,測量插卡按系統(tǒng)設計的約定把被測量電壓的幅度、頻率、相位值放在雙口RAM的某一連續(xù)單元,用戶只要在程序中選擇A相電壓測量,LabVIEW程序就通過Call Library Function Node 結點從雙口RAM的對應單元讀取測量插卡適時測量的幅度、頻率、相位數(shù)據(jù),由這三個基本數(shù)據(jù),通過調用LabVIEW提供的功能強大的函數(shù),就能非常方便的對被測信號進行顯示、分析、處理。   當然這里只是用數(shù)據(jù)讀取來示例LabVIEW對硬件的控制,實用中還要通過DLL來完成對硬件的復位、初始化以及其它如檔位選擇、功能選擇、采集啟動等等。而且整個程序的結構不僅和采集卡工作過程有關,還與被測信號需要的采集控制過程緊密相關,需要具體處理。 3. LabVIEW實現(xiàn)電表校驗數(shù)據(jù)庫管理   LabVIEW與數(shù)據(jù)庫接口,主要以下幾種方式:一是購買NI公司的LabVIEW SQL Toolkit數(shù)據(jù)庫接口模塊;二是采用第三方提供的數(shù)據(jù)庫接口模塊LabSQL;三是通過調用動態(tài)鏈接庫DLL(Dynamic Link Library)訪問,先利用其它編程語言如Visual C++編寫DLL,再利用LabVIEW的調用庫函數(shù)節(jié)點CLFN(Calling Library Function Node)調用此DLL中相關函數(shù)訪問數(shù)據(jù)庫;四是利用動態(tài)數(shù)據(jù)交換(dynamic data exchange ,DDE)來實現(xiàn)對數(shù)據(jù)庫的訪問操作。本系統(tǒng)采用第三方提供的免費的LabSQL來實現(xiàn)對數(shù)據(jù)庫的各種操作,相比方式一成本低,相比方式三、四簡單易用。   3.1 LabVIEW數(shù)據(jù)庫管理的基本結構   LabVIEW數(shù)據(jù)庫管理的基本結構如圖3所示,LabSQL1.1A是多數(shù)據(jù)庫的、跨平臺的LabVIEW數(shù)據(jù)庫訪問工具包(免費下載網址http://jeffreytravis.com),它支持Windows操作系統(tǒng)中任何基于ODBC的數(shù)據(jù)庫,利用ADO以及SQL語言來完成數(shù)據(jù)庫訪問,提供一系列數(shù)據(jù)庫訪問的LabSQL VI。通過調用其中不同功能的子函數(shù),輔以簡單的SQL編程,就可以對數(shù)據(jù)庫進行存取、查詢、修改、統(tǒng)計等各種操作。使用前,要對LabSQL進行正確的安裝和配置,其方法可參看本文參考文獻[1]。 [align=center] 圖3 LabVIEW數(shù)據(jù)庫管理基本結構[/align]   LabSQL VIs按照功能可分為四類:Command Vis用來完成一系列的基本ADO操作;Connection VIs是管理LabVIEW與數(shù)據(jù)庫之間的連接;Recordset VIs用于對數(shù)據(jù)庫中的記錄進行各種操作;Top Level VIs屬于頂層的LabSQL應用,對前三類LabSQL VIs某些功能的封裝,例如,SQL Execute.VIs可用于直接執(zhí)行SQL命令。   電表校驗數(shù)據(jù)庫用來存放電表校驗的有關數(shù)據(jù),它獨立存儲,以便系統(tǒng)對歷史的數(shù)據(jù)進行管理和管理功能擴充。系統(tǒng)采用ACCESS建立電表校驗數(shù)據(jù)庫,根據(jù)數(shù)據(jù)管理的需要,數(shù)據(jù)庫主要包含校驗員表(存放校驗員信息)、被校驗儀表表(存放被校電表結論資料)、幅度表(存放被校電表幅度實測記錄)、頻率表(存放被校電表頻率實測記錄)、功率因素表(存放被校電表功率因素測量記錄)、諧波分析表(存放諧波分析結果數(shù)據(jù)表)。   3.2 利用LabSQL操作數(shù)據(jù)庫的基本步驟   利用LabSQL在數(shù)據(jù)庫操作中可實現(xiàn)應用程序與數(shù)據(jù)庫之間的數(shù)據(jù)傳送。一般的操作步驟如圖4所示,首先利用ADO Connection Create.vi創(chuàng)建一個空的連接對象,然后利用ADO Connection Open.vi打開指定的數(shù)據(jù)庫; 再利用ADO Recordset Create.vi創(chuàng)建一個空的記錄集對象,之后利用ADO Recordset Open.vi打開指定表格中的數(shù)據(jù)集對象。隨后是調用對數(shù)據(jù)集進行添加、修改、刪除等操作的vi對數(shù)據(jù)集進行指定操作,完成操作后,利用ADO Recordset Close.vi斷開記錄集,最后用ADO Connection Close.vi關閉數(shù)據(jù)庫。LabSQL對數(shù)據(jù)庫操作的各種Vis由Functions Palette→ALL Function→User Libraries→LabSQL→LabSQL ADO Functin 中取得。 [align=center] 圖4 數(shù)據(jù)庫操作的基本步驟[/align]   3.3 電表校驗數(shù)據(jù)庫管理程序   系統(tǒng)數(shù)據(jù)庫管理的程序代碼框圖見圖5。
  程序中,按前面板“Tab Control”標簽選擇當前要操作的數(shù)據(jù)表,在主循環(huán)下,程序等待用戶操作的發(fā)生,當用戶按下“查詢”、“刪除”、“添加”、“更新”等操作按鈕時,程序就對選定的數(shù)據(jù)表執(zhí)行相應的操作。在右邊的CASE結構中,其代碼框圖的內容和操作對象會隨數(shù)據(jù)表的選擇和“操作按鈕”的改變而變化,從而實現(xiàn)對不同的數(shù)據(jù)表進行數(shù)據(jù)管理的功能,這些功能都是調用LabSQL1.1A中相應的VI完成,其操作的基本過程如前面圖4所示。圖5所示的操作表示當前正在對校驗員表進行查詢操作,會把查詢到的記錄顯示在前面板的屏幕上,供用戶翻閱。 4.結束語   采用LabVIEW開發(fā)的虛擬儀器,界面友好美觀,代碼結構清晰易讀。處理好LabVIEW對虛擬儀表軟、硬件接口控制,對于充分發(fā)揮LabVIEW的功能極為重要,以此為基礎,就可以靈活、充分地利用通用計算機的大量實用軟件工具及強大的信號處理能力,以及各種插卡式“儀器”,實現(xiàn)對信號測量、計算、分析、處理、圖形或數(shù)字顯示、數(shù)據(jù)管理、 以及輸出控制,突破了傳統(tǒng)儀器在數(shù)據(jù)處理、顯示、傳輸、存儲等方面的限制,并把測量控制和信息管理相結合。虛擬儀器VI作為計算機技術和儀器測量技術相結合的產物,未來必將在許多行業(yè)發(fā)揮越來越大的作用。   本文的創(chuàng)新點是:把虛擬儀器技術應用到電表檢驗設備當中,詳細描述了LabVIEW對自行設計的硬件接口控制方法和數(shù)據(jù)庫的訪問操作方法,該方法切實可行,有一定的借鑒意義。 參考文獻   [1] 楊樂平 李海濤等.LabVIEW高級程序設計.北京:清華大學出版社.2004   [2] 楊樂平 李海濤等.LabVIEW程序設計與應用.北京:電子工業(yè)大學出版社.2001   [3] 汪敏生等.LabVIEW基礎教程.北京:電子工業(yè)出版社.2002   [4] Gary W Johnson,Richard Jennings著.武嘉,陸勁昆譯.LabVIEW圖形編程.北京:北京大學出版社.2002   [5] 宋志軍.基于LabVIEW和PXI平臺的焊機自動測試系統(tǒng).工業(yè)控制.2004.9   [6] 畢虎,律方成,李燕青,李和明.《LabVIEW中訪問數(shù)據(jù)庫的幾種不同方法》,微計算機信息,2006,1-1:131-134

標簽:

點贊

分享到:

上一篇:基于虛擬儀器的遠程振動測試...

下一篇:微能WIN-V63矢量控制變頻器在...

中國傳動網版權與免責聲明:凡本網注明[來源:中國傳動網]的所有文字、圖片、音視和視頻文件,版權均為中國傳動網(www.treenowplaneincome.com)獨家所有。如需轉載請與0755-82949061聯(lián)系。任何媒體、網站或個人轉載使用時須注明來源“中國傳動網”,違反者本網將追究其法律責任。

本網轉載并注明其他來源的稿件,均來自互聯(lián)網或業(yè)內投稿人士,版權屬于原版權人。轉載請保留稿件來源及作者,禁止擅自篡改,違者自負版權法律責任。

網站簡介|會員服務|聯(lián)系方式|幫助信息|版權信息|網站地圖|友情鏈接|法律支持|意見反饋|sitemap

中國傳動網-工業(yè)自動化與智能制造的全媒體“互聯(lián)網+”創(chuàng)新服務平臺

網站客服服務咨詢采購咨詢媒體合作

Chuandong.com Copyright ?2005 - 2024 ,All Rights Reserved 版權所有 粵ICP備 14004826號 | 營業(yè)執(zhí)照證書 | 不良信息舉報中心 | 粵公網安備 44030402000946號