《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 模擬設(shè)計(jì) > 業(yè)界動(dòng)態(tài) > 基于工控機(jī)的虛擬儀器軟件設(shè)計(jì)方案

基于工控機(jī)的虛擬儀器軟件設(shè)計(jì)方案

2017-05-11
關(guān)鍵詞: 工控機(jī) 虛擬儀器

  系統(tǒng)以工控機(jī)為核心,,輔以一定的外圍簡單電路,,通過GPIB,、USB以及串行通信口,,把現(xiàn)有的測量儀器連接起來,并通過編程人員開發(fā)針對測量過程的控制軟件,。測量者只需要把儀器與設(shè)備正確地連接起來,,向汁算機(jī)發(fā)出簡單的操作指令就可以實(shí)現(xiàn)測量、數(shù)據(jù)分析,、處理和記錄的全過程。

  1,、作為COM組件的測量儀器

  在軟件開發(fā)中,,可以先將儀器設(shè)計(jì)成COM組件。儀器的功能在C()M組件設(shè)汁中要全部實(shí)現(xiàn)并給出相應(yīng)的接口函數(shù),,在虛擬儀器軟件中通過調(diào)用這些組件來實(shí)現(xiàn)對具體儀器的操作,。這樣,編程人員在開發(fā)虛擬儀器控制軟件時(shí)可以把具體的儀器當(dāng)成組件來對待,,通過組件的各個(gè)函數(shù)來完成實(shí)際儀器的各個(gè)指令操作,。這樣做不但容易對硬件可能出現(xiàn)的問題進(jìn)行排錯(cuò),而且一旦硬件更新,,開發(fā)人員只需要作針對C0M的升級維護(hù)即可,。

  以某型頻譜分析儀為例,設(shè)汁測量某信號在控壓變化范圍內(nèi)的雜散值的過程:

  1)首先調(diào)整頻譜儀到對數(shù)坐標(biāo)系,,并根據(jù)該信號的變化范圍設(shè)定頻譜儀的中心頻率及合適的帶寬以保證頻譜儀在控壓變化范圍內(nèi)可以捕獲信號,。這樣實(shí)現(xiàn)了測量雜散初始化的子過程;

  2)在不同的控壓點(diǎn)讀取帶寬內(nèi)信號主瓣外的所有信號,,以最大的旁瓣值作為雜散值,。為了避免信號的白噪聲影響雜散值的測量。采用同一控壓點(diǎn)測量若干組信號用軟件求平均的思路,。平滑白噪聲引起的信號起伏,,取平滑后的雜散值作為測量結(jié)果,,這樣實(shí)現(xiàn)了測量當(dāng)前信號雜散值的子過程。

53a2f85749d42-thumb.jpg

  圖1雜散值測量流程圖

  該型頻譜儀在連續(xù)測量若干組信號求平均的過程中,,相鄰兩組數(shù)據(jù)測量之間有一個(gè)工控機(jī)與頻譜儀通信的時(shí)間,,這就削弱了信號的時(shí)間相關(guān)性,不利于平滑白噪聲,。為了提高測量的準(zhǔn)確性,,引入了可以作均值測量的頻譜儀,工控機(jī)只需讀取均值測量后主瓣外的所有信號最大值作為當(dāng)前信號雜散值即可,。按上述思路重新設(shè)計(jì)頻譜儀COM組件,,測量雜散值的過程還是按照上述的測量流程圖,虛擬儀器軟件調(diào)用更新后的組件,,程序員甚至可以不用改虛擬儀器軟件中的一句源代碼,。

  對同一信號改進(jìn)前后軟件測出的雜散值分別為-76.3dB和-78.2dB,而用標(biāo)定設(shè)備測出的值為-78.51dB,,改進(jìn)后軟件的測量值更加準(zhǔn)確,。

  2、采用Access數(shù)據(jù)庫作實(shí)時(shí)測量存檔

  在測量過程中,,有時(shí)設(shè)備會因?yàn)橥蝗粩嚯?、?jì)算機(jī)*發(fā)作等一系列不可預(yù)期的故障導(dǎo)致測量過程意外中斷,但此時(shí)用戶測量可能還沒有結(jié)束,,也沒有大提交測量報(bào)表,,而在系統(tǒng)內(nèi)存中的數(shù)據(jù)將會全部丟失,這對用戶來說是非常不利的,,所以必須對用戶的所有測量結(jié)果做一個(gè)實(shí)時(shí)的數(shù)據(jù)庫備份,。

  對用戶測量全過程進(jìn)行監(jiān)控的數(shù)據(jù)庫采用全部內(nèi)存變量存儲的方式,包括用戶的設(shè)定量,、用戶的測量結(jié)果,、用戶的操作步驟以及測量結(jié)果的自動(dòng)*判,都在數(shù)據(jù)庫中建立相應(yīng)的字段,。在用戶進(jìn)行虛擬儀器操作時(shí),。每新測量一個(gè)產(chǎn)品都會以用戶填入的產(chǎn)品編號及測量時(shí)間新建一條測量記錄,操作過程中實(shí)時(shí)地把用戶的操作及結(jié)果同步提交到數(shù)據(jù)庫中,,只有當(dāng)用戶全部測量完畢并保存報(bào)表之后,,該條記錄才被刪除,否則記錄予以保留,,留下來的某條記錄即為某個(gè)非正常退出系統(tǒng)的實(shí)時(shí)測量存檔,,這就是系統(tǒng)實(shí)時(shí)測量存檔的過程。當(dāng)用戶下一次打開虛擬儀器軟件時(shí),軟件會自動(dòng)加載該數(shù)據(jù)庫,,如果數(shù)據(jù)庫存在數(shù)據(jù)記錄,,則在加載操作界面之后會提示用戶有以前未完成的任務(wù),讓用戶選擇是繼續(xù)未完成的任務(wù)還是刪除某次不全的測試記錄,,如果選擇繼續(xù)則會給出未完成任務(wù)列表,,讓用戶選擇開始某一次未完成的任務(wù),用戶選擇后會自動(dòng)把數(shù)據(jù)庫里對應(yīng)的值恢復(fù)到虛擬儀器操作界面,,恢復(fù)某一次意外狀態(tài)前的結(jié)果,,這樣通過系統(tǒng)的問詢及用戶的選擇,實(shí)現(xiàn)了加載測量存檔的過程,。當(dāng)然,,如果用戶也可以選擇刪除某些不全但不想保留的測試記錄,對存檔數(shù)據(jù)庫進(jìn)行清理,,同樣也可以選擇全新測量,,開始新的操作。

  虛擬儀器軟件的工作流程如圖2所示,。

53a2f800e48dc-thumb.jpg

  圖2以數(shù)據(jù)庫為核心的軟件工作流程圖

  3,、系統(tǒng)性能

  采用本文的方案,使用VB.NET程序設(shè)計(jì)語言開發(fā)的虛擬儀器軟件成功的應(yīng)用在某產(chǎn)品的指標(biāo)測量上,。整套系統(tǒng)研發(fā)周期短,、維護(hù)簡單方便。而“實(shí)時(shí)測量存檔”在軟件內(nèi)部異常保護(hù)的基礎(chǔ)上又增加了一個(gè)抵御外部突發(fā)事件的能力,,有效地保護(hù)了測量數(shù)據(jù),。每一個(gè)產(chǎn)品測量所需時(shí)間僅為原先人工用儀器測量的1/3~1/4(不包括后期的數(shù)據(jù)處理時(shí)間),極大地提高了生產(chǎn)效率,。而整個(gè)系統(tǒng)的開發(fā)成本非常低,所有的測量儀器都是利用現(xiàn)有的設(shè)備,,硬件的投入只是一臺工控機(jī)和GPIB轉(zhuǎn)接卡及一些電纜,。


本站內(nèi)容除特別聲明的原創(chuàng)文章之外,轉(zhuǎn)載內(nèi)容只為傳遞更多信息,,并不代表本網(wǎng)站贊同其觀點(diǎn),。轉(zhuǎn)載的所有的文章、圖片,、音/視頻文件等資料的版權(quán)歸版權(quán)所有權(quán)人所有,。本站采用的非本站原創(chuàng)文章及圖片等內(nèi)容無法一一聯(lián)系確認(rèn)版權(quán)者。如涉及作品內(nèi)容,、版權(quán)和其它問題,,請及時(shí)通過電子郵件或電話通知我們,以便迅速采取適當(dāng)措施,避免給雙方造成不必要的經(jīng)濟(jì)損失,。聯(lián)系電話:010-82306118,;郵箱:[email protected]