999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

用LabVIEW設計監測電壓變化報警程序

2011-03-16 06:17:20郭曉金
電子測試 2011年5期
關鍵詞:程序測量用戶

郭曉金 ,楊 柳

(1 遼寧興城市92853部隊4分隊 125106 ;2 福州市91267部隊17分隊 350015)

0 引言

在測量工作實踐中,經常會遇到對某一電壓量值的變化是否超過設置值進行監測的情況,若利用計算機控制數字電壓表進行一般測量是沒有任何問題的,如果要求真實反映并記錄報警發生的時刻、電壓值和報警次數,并不是一件容易的過程。針對這一實際工作要求,在LabVIEW 8.5開發環境下,設計了實現監測電壓變化報警測量程序,計算機通過GPIB接口卡控制Fluke8846A實現電壓測量數據采集,并以表格的形式實時顯示報警結果,此方法簡單實用,提高了人機交互性能,為使用者帶來了極大的方便,具有較高的應用、借鑒價值。

1 用戶事件結構

在LabVIEW開發環境中,可以通過事件結構來捕獲用戶的各種操作,例如單擊按鈕、輸入數據、關閉面板等,但是除了用戶的各種操作引發事件外,可能還需要通過編程產生事件,例如電壓超過上限時,系統自動觸發報警事件等。對于簡單情況可以通過事件發生技術來實現,但是如果還需要傳遞事件數據或希望一個循環還能用來響應其他事件時,就需要利用到用戶事件(User Event)[3]。

用戶事件是LabVIEW事件驅動編程的一部分,因此仍然需要使用到事件結構,不同的是,在使用用戶事件前,首先必須通過Create User Event函數創建用戶事件,然后通過Register For Events節點注冊事件。將注冊事件的Refnum與 事件結構的Dynamic Event Terminals(右擊事件結構邊緣并選擇Show Dynamic Event Terminals選項可以顯示該端子)連接后,在事件結構的事件編輯對話框中就可以看到該用戶事件。事件產生是通過Generate User Event函數產生的。不再需要該事件時可以通過Unregister For Events函數注銷該用戶事件,最后需要通過Destroy User Event函數銷毀用戶事件。在函數模板→編程→對話框與用戶界面→事件中可以找到相應的事件函數[8]。

2 監測電壓變化報警程序設計

圖1是 在LabVIEW 8.5開 發 環 境 中, 利 用Fluke8846A 數字電壓表LabVIEW驅動程序設計的監測電壓變化報警程序的前面板,在圖1所示的人機交互界面中從“測量功能”下拉框中選擇所需要的測量功能類型(可供選擇的測量功能類型有:DC /AC Voltage、2 - Wire Resistance、4 - Wire Resistance、DC /AC Current、Frequency、Period、Diode Checking等)[4-5],測量功能類型確定后,根據提示將信號連接到Fluke8846A的相應端,在“FLUKE8846A測量值”文本框中就能顯示測量值。可以根據工作需要調節“報警上限”值,當測量值大于報警上限值時,“發生報警”指示燈亮的同時計算機發出聲音報警,這里不僅記錄報警數,還對報警發生的時刻和電壓值進行記錄,此時“報警歷史數據”顯示報警發生時刻和報警時的電壓值。“報警次數”累計顯示程序運行時發生報警的次數。當用戶在任何時候按“清除報警數據”時,“報警歷史數據”和“報警次數”分別被清除數據。圖1是監測被測DCV大于8V時發生報警的情況。

圖1 監測電壓變化報警程序前面板

在圖2程序框圖中橢圓1實現清除“報警次數”和“報警歷史數據”顯示的內容。橢圓2、3利用“創建用戶事件” 函數創建用戶事件,該用戶事件攜帶的數據類型為Double,名稱為“電壓報警",然后通過“注冊事件”函數實現以連接的用戶事件數據類型、事件的事件名稱,實現注冊用戶事件,同時可將事件及其相關數據發送至為該事件注冊的所有事件結構。

橢圓6通過“取消注冊事件”函數, 使用事件注冊引用句柄的事件結構不再收到任何動態事件,建議在事件無需處理時取消注冊事件,如不取消注冊事件,只要VI運行,即使沒有事件結構等待處理事件,LabVIEW也將繼續生成和排列事件,這不僅消耗內存而且在前面板事件鎖定被啟用時將導致VI掛起。通過“銷毀用戶事件”引用句柄,釋放用戶事件引用,所有注冊為該用戶事件的事件結構不再收到該事件。橢圓4是利用Fluke8846A數字電壓表LabVIEW驅動程序實現的電壓測量程序,其中用到“Initialize.vi”初始化、“Configure Measurement.

vi”設置測量功能、“Read(single point).vi”讀測量數據、“Close.vi”關閉[1-2]。橢圓7一是利用“<電壓報警>:用戶事件”中的事件數據節點“電壓報警”將電壓測量數據,經“數值至小數字符串轉換”到“創建數組”;二是利用“獲取日期/時間(秒)”和“格式化日期/時間字符串” 到“創建數組”; 三是報警次數經“數值至十進制數字符串轉換” 到“創建數組”;從而實現將報警次數、報警發生的時刻和電壓值進行記錄并添加“報警歷史數據”表格中。橢圓8利用寄存功能實現圖1“報警歷史數據”表格自動移動功能,即隨著報警歷史數據的不斷增加,“報警歷史數據”表格垂直滾動自動滑動。橢圓9通過“調用庫函數節點”調用winmm.dll中的“sndPlaySoundA”[6]函數實現聲音報警。

簡而言之,程序的工作過程是,在設置一個報警電壓值后,主循環中如果測量的電壓值超過上限時將產生一個報警事件,另一個循環獲得該事件后將報警數加1,并將有關信息添加到“報警歷史數據”中進行顯示。

圖2 監測電壓變化報警程序框圖

3 注意事項

由于Fluke8846A 數字電壓表LabVIEW驅動程序是利用VISA(Virtual Instrumentation Software Architecture虛擬儀器軟件結構)編寫的,因此運行時必須在開發環境中安裝該軟件。對于驅動程序、應用程序開發者而言,VISA庫函數是一套可方便調用的函數,其中核心函數可控制各種類型器件,而不用考慮器件的接口類型,VISA也包含部分特定接口函數,這樣用戶可以用同一套函數為GPIB、RS232、LAN、USB接口儀器儀表、VXI器件等各種類型器件編寫軟件,熟悉了VISA就可以處理各種情況,用戶利用VISA開發的軟件具有更好的適應性,且具有以下幾個特點:(1)VISA的I/O控制功能適用于各種類型儀器,適于單處理器系統結構,也適于多處理器結構或分布式網絡結構;(2)與儀器硬件接口無關的特性,即利用VISA編寫的模塊驅動程序既可以用于嵌入式計算機VXI系統,也可以用于通過MXI、GPIB-VXI或1394接口控制的系統中,當更換不同廠家符合VPP規范的硬件時,模塊驅動程序無須改動。上述程序設計中使用的VISA是 4.2版本,低版本不適應,可到ni.com網站免費下載。

4 結論

從上述程序中可以看出,研究利用了LabVIEW中的用戶事件結構,在程序滿足設置的條件時才會產生事件,克服了“應用程序”、“本VI”、“窗格”、“分隔欄”和“控件”事件[7-8]不能實現測量和程序處于等待狀態時,占用系統資源問題,取得良好的效果。當被控制的儀器發生變化時,只需要根據被控制儀器的GPIB地址,在程序中改變儀器的資源名和相應LabVIEW驅動程序就可以了,其他不需要做任何改動,就可以應用到自己開發的測量系統中,從而可以縮短程序開發時間,達到最佳設計效果。

[1] VISA 4.2 Help,National Instrument Corporation ,2005.

[2] LabVIEW 8.5 Help,National Instrument Corporation ,2006.

[3] 陳錫輝,LabVIEW 8.2 程序設計從入門到精通[M].北京:清華大學出版社,2007:259-273.

[4] Fluke 8846A Digit Multimeter Quick Start Tutorial, 2007.

[5] Fluke 8846A Digit Multimeter Programmer Manual, 2007.

[6] 王磊,精通LabVIEW 8.X[M].北京:電子工業出版社,2008:129-138.

[7] 阮奇楨,我和LabVIEW[M].北京:航空航天大學出版社,2009:96-106.

[8] 鄧焱. LabVIEW7.1測試技術與儀器應用[M].北京:機械工業出版社,2004:200-205

猜你喜歡
程序測量用戶
把握四個“三” 測量變簡單
試論我國未決羈押程序的立法完善
人大建設(2019年12期)2019-05-21 02:55:44
滑動摩擦力的測量和計算
滑動摩擦力的測量與計算
“程序猿”的生活什么樣
英國與歐盟正式啟動“離婚”程序程序
環球時報(2017-03-30)2017-03-30 06:44:45
關注用戶
商用汽車(2016年11期)2016-12-19 01:20:16
關注用戶
商用汽車(2016年6期)2016-06-29 09:18:54
關注用戶
商用汽車(2016年4期)2016-05-09 01:23:12
測量
主站蜘蛛池模板: 国产AV无码专区亚洲A∨毛片| 欧美成在线视频| 欧美有码在线| 免费毛片在线| 国产高清在线观看| 日本精品一在线观看视频| 自拍亚洲欧美精品| 无码专区国产精品一区| 欧美啪啪网| 亚洲欧美在线综合一区二区三区| 国产精品九九视频| 日韩精品亚洲一区中文字幕| 人人爱天天做夜夜爽| 久久综合亚洲鲁鲁九月天| 国产在线91在线电影| 国产av无码日韩av无码网站| 亚洲精品国产精品乱码不卞| 久久精品中文无码资源站| 99久久国产自偷自偷免费一区| 国产又大又粗又猛又爽的视频| 久久综合AV免费观看| 久久久久免费精品国产| 欧美精品啪啪一区二区三区| 欧美一区二区人人喊爽| 小说 亚洲 无码 精品| 国产国产人免费视频成18| 欧美日韩国产在线播放| 特级精品毛片免费观看| 欧美一区二区精品久久久| 国产成人亚洲毛片| 久久一本精品久久久ー99| 99伊人精品| 亚洲天堂视频在线免费观看| 一级福利视频| 国产精品第页| 国产AV无码专区亚洲A∨毛片| 欧美区在线播放| 国产美女精品在线| 日韩在线2020专区| 亚洲 成人国产| 91精品专区| 欧美笫一页| 日本精品一在线观看视频| 久久精品无码国产一区二区三区| 91在线视频福利| 亚洲午夜福利精品无码| 一本综合久久| 国产自无码视频在线观看| 欧美国产三级| 亚洲va欧美va国产综合下载| 亚洲国产精品日韩专区AV| 97av视频在线观看| 欧美精品在线观看视频| 国产久草视频| 久久精品波多野结衣| 亚洲乱码在线视频| 伊人精品视频免费在线| 国内精品伊人久久久久7777人| 香蕉久久永久视频| 国产激情无码一区二区APP| 国产精品亚洲а∨天堂免下载| 黄色三级网站免费| 亚洲日韩国产精品综合在线观看| 中文字幕在线播放不卡| 九九九精品成人免费视频7| 日韩A∨精品日韩精品无码| 欧美日韩国产精品综合| 成人欧美日韩| 亚洲av日韩av制服丝袜| 国产chinese男男gay视频网| 青青热久免费精品视频6| 精品久久久久成人码免费动漫 | 88av在线播放| 国产成人调教在线视频| 日本午夜网站| 成人欧美在线观看| 亚洲最新地址| 国模视频一区二区| 色九九视频| yy6080理论大片一级久久| 成人国产三级在线播放| 精品久久高清|