?

基于LabVIEW的數字式氣壓計自動檢定系統

2020-04-07 10:41婷13
計算機測量與控制 2020年3期
關鍵詞:測量誤差串口氣壓

白 婷13

(1.中國氣象局 河南省農業氣象保障與應用技術重點實驗室,鄭州 450003;2.河南省氣象探測數據中心,鄭州 450003; 3.河南省人工影響天氣中心,鄭州 450003)

0 引言

河南省目前已裝備了121套國家自動氣象站與2 900多套區域自動氣象站,且將繼續建設自動氣象站,進一步增加氣象環境的探測密度。氣壓是地面氣象觀測中的重要觀測要素,為保證氣壓觀測數據的準確性,必須對自動氣象站的數字氣壓計進行周期性檢定[1]。河南省裝備的數字氣壓計主要為PTB210和PTB220,由于氣壓計數量多,省級氣象檢定所的工作任務十分繁重,人工檢定及校準的方式已不能滿足氣象現代化工作的需要,迫切需要一套自動氣壓計檢定系統,提高檢定效率和準確性,減輕檢定人員的工作強度。

有關PTB220的檢定及修正方法研究已經較為全面,PTB210的相關研究相對較少。胡帆、陳正一介紹了PTB220數字氣壓計的工作原理、設置以及操作命令和修正方法[2];孫嫣等對PTB220的多點修正方法進行了補充研究,提出檢定結果修正值與初始修正值疊加的方法,使調整后的氣壓計與標準值更加接近零誤差[3];孟憲羅等采用C#語言開發了一套基于串口通信的PTB220氣壓計誤差自動調整系統,利用3MS系統的檢定結果,實現了對PTB220氣壓計的自動調整[4];羅淇等對檢定過程中氣壓標準器附加誤差的產生原因、特征和規律進行了研究,并給出了相應消除或訂正方法,有效降低了標準器附加誤差對檢定結果造成的影響[5-6];黃玲等探討了氣象上靜態壓力傳感器非線性修正的常用方法,對最小二乘法和線性插值法的線性誤差進行了比較,證明調整PTB210時采用線性插值法更加有效[7]。

本文基于LabVIEW開發了一套氣壓計自動檢定校準系統,兼容PTB210和PTB220系列氣壓計,實現了信息讀取、數據采集、數據處理、數據庫寫入、證書生成等檢定過程的自動化控制,系統在檢定結束后可自動判斷氣壓計是否氣壓超差并快速實現氣壓計調整,在減少人為錯誤的發生的同時,提高檢定工作的效率。

1 系統結構和原理

1.1 系統結構

系統主要由計算機、多串口擴展卡、CPC6000型精密壓力控制器(以下簡稱氣壓發生器)、745-16B型高精度實驗室標準表(以下簡稱標準表)、氣壓計(PTB220或PTB210,以下簡稱被檢表)、連接器、12 V開關電源、氣路等組成,主要硬件設備性能如表1所示。

表1 系統主要硬件設備情況

1.2 工作原理

系統原理圖如圖1所示,計算機利用多串口擴展卡與各儀器設備進行串口通信,使用三通連接氣壓發發生器、標準表、被檢表,并使其壓力檢測口保持在同一水平面。

圖1 系統原理圖

系統采用比較法進行檢定,壓力檢定點為:500、600、700、800、900、950、1 000、1 100 hPa。檢定從500 hPa開始,上位機程序控制氣壓發生器達到預定壓力值并穩定3 min后進行數據采集,每隔10秒采集1次被檢表和標準表的示值,每個壓力點上采集3次,將 3次示值的算術平均值作為該檢定點的記錄結果,按以上的檢定點順序逐點進行兩次壓力循環后檢定結束。

1.3 被檢表連接器

PTB220氣壓計的通信接口形式和PTB210不同,如圖2所示。以往檢定或校準PTB220、PTB210時需要分別使用專用線纜,為檢定工作造成一定不便。

圖2 PTB210與PTB220通信接口示意圖

為減少系統所用線纜數量,實現被檢表的快速更換,進而減輕檢定人員工作強度,設計了一個通用快速連接器,使其既能連接PTB220,也能連接PTB210,其電路原理圖如圖3所示。

圖3 連接器電路原理圖

連接器實物如圖4所示,電源開關按鈕可控制被檢表電源通斷,上部的DB9接口連接至計算機,下部的DB9接口連接PTB220氣壓計,中部的免螺絲接線端子連接PTB210氣壓計。

圖4 連接器實物圖

1.4 設備串口命令

上位機程序通過發送串口命令完成氣壓發生器控制點設置、標準表和被檢表示值讀取等操作。根據所用儀器設備的用戶手冊[8-11],本系統所用到的串口命令如表2所示。

表2 系統常用串口命令

2 系統軟件設計

LabVIEW既具有傳統儀器的特征,又有一般儀器不具備的特殊功能,特別適合于經常需要改變儀器和設備參數、功能的場合。本系統包含多個測量儀器,對測量數據的人機交互界面要求較高,且需經常對設備參數進行修改,因此非常適合采用LabVIEW編寫檢定程序。

2.1 總體結構

軟件的編程方法一般可分為面向過程和面向對象。本系統主要實現檢定、校準及生成報表等流程的自動化控制,所用設備相對較少且功能較為專一,是典型的面向過程的軟件設計。本系統的軟件結構如圖5所示,按功能不同,可將程序分為6個模塊。

圖5 軟件功能結構圖

1)初始化模塊,實現程序各狀態變量的初始化。

2)參數配置模塊,主要實現軟件參數配置和檢定基本信息配置,軟件參數配置主要包括儀器設備串口配置、報表存儲路徑設置等;檢定基本信息配置主要包括氣壓檢定點、環境條件以及氣壓發生器、標準表和被檢表的基本設備信息等。

3)檢定模塊,主要實現對壓力控制器、標準表和被檢表的控制,包括串口命令合成、檢定點設置、數據采集、數據解析以及壓力判穩等。

4)校準模塊,主要實現對PTB210和PTB220多點修正值的重新設置。

5)報表生成模塊,主要實現將檢定的結果和數據記錄寫入word證書文件中,借助LabVIEW報表工具插件,利用書簽定位實現環境條件等檢定基本信息的插入,word中的檢定記錄表格則通過行列定位單元格,在雙重for循環中調用WordEditCell.vi將數據記錄寫入。

2.2 主程序

程序主界面如圖6所示,左側從上至下依次顯示氣壓發生器、標準表、被檢表的壓力曲線,右側為控制按鈕及運行狀態監控。為防止誤操作,系統啟動后如未進行參數配置,“開始檢定”及“停止檢定按鈕”均為禁用狀態。

圖6 主程序界面

本系統上位機程序的過程可以簡化為數據的采集、處理、顯示、保存,由于實際運行中各過程的運行速度并不同步,普通的順序循環結構或是管道流水線結構都將導致程序的總體執行效率受到各過程中最慢的那個的影響。因此,采用“生產者—消費者模型”設計主程序,通過引入消息隊列作為緩存,調節各過程之間的運行速度,將采集和處理等過程分開處理,以增強不同速率循環間的數據交互和共享能力,提高程序的事件響應速度及執行效率[12-13]。

主程序框圖如圖7所示,程序主要由五個循環構成,分別為事件處理循環、UI消息循環、采集循環、處理和記錄循環、顯示循環。

圖7 主程序框圖

事件處理循環捕捉前面板按鈕動作事件,并將相應消息寫入Message Queue的UI隊列中,是消息的“生產者”;UI消息循環從Message Queue的UI隊列讀取消息,響應前面板按鈕動作事件,并發送相應的消息到采集循環以及處理和記錄循環,是消息的“二傳手”;采集循環從Message Queue的采集隊列讀取消息,完成氣壓檢定點設置、數據采集等具體操作,并將采集到的數據寫入數據隊列和通知器;處理和記錄循環從數據隊列中獲取采集數據,執行數據解析、數據庫寫入等操作。

各循環之間通過消息隊列VI(操作者框架)保證分立性以及消息連續性。通過數據隊列和通知器,調節采集循環、處理和記錄循環的運行速度,保證采集、處理、記錄過程中數據的同步性和完整性。

2.3 檢定程序

在采集循環中使用狀態機來控制檢定流程,如圖8所示。

圖8 檢定程序框圖

圖10 數據庫寫入程序

使用Message Queue的采集隊列進行狀態傳遞,循環每次迭代時首先從隊列中取出下一狀態,然后執行條件結構的相應分支,并在每一個狀態分支結束前將后一次或幾次迭代中需要執行的狀態寫入隊列,從而實現按用戶設置的檢定點執行“壓力控制—數據讀取—壓力控制”的檢定流程,當所有檢定點完成兩次升壓降壓循環后,檢定結束。

2.4 數據庫操作

信息化和網絡化是氣象業務發展的重要方向,為便于檢定信息的快速檢索和共享等,本系統將形成的檢定記錄信息存入MySQL數據庫。

數據庫操作主要通過LabSQL工具包完成。首先在本機安裝MySQL數據庫和MySQL Connector/ODBC驅動,并在ODBC數據源管理器中添加和配置MySQL數據源,設置數據源名稱、數據庫服務器TCP/IP地址、用戶名及密碼、要訪問的Database等,如圖9所示。設置完成后點擊“Test”按鈕,彈出提示框顯示“Connection Successful”即代表數據源連接成功。

圖9 配置數據源

數據庫寫入程序框圖如圖10所示,首先使用“ADO Connection Create.vi”新建連接,并通過“ADO Connection Open.vi”打開數據源,調用“SQL Execute.vi”執行雙重for循環拼接好的SQL語句即可完成數據庫寫入,最后關閉數據源并銷毀連接。

2.5 傳感器調整

2.5.1 PTB210

通過System Exec.vi調用VAISALA官方工具PTB210 Wizard來調整PTB210氣壓計,程序框圖如圖11所示。

圖11 LabVIEW調用外部可執行文件

PTB210 Wizard程序界面如圖12所示,根據檢定結果,在MPC_1~ MPC_8輸入框中分別輸入各校準點和對應修正值后,點擊“Write PTB210”即可完成氣壓計校準。

圖12 PTB210 Wizard程序

2.5.2 PTB220

PTB220氣壓計在調整多點修正值前,首先打開氣壓計外殼進行硬件設置,將SW4開關狀態撥至“ON”,使能存儲器寫入功能。

PTB220校準程序主體部分框圖如圖13所示,首先發送“MPC OFF”命令,停用多點修正。發送“MPC 1”命令,設置1號壓力傳感器的多點修正值。使用for循環依次輸入各校準點和對應修正值后,發送“MPC ON”命令啟用多點修正,最后發送“RESET”重啟氣壓計,使設置生效。

圖13 PTB220校準程序

3 檢定實驗

選取一臺PTB220氣壓計(編號D2160055)進行實驗,其存儲的初始修正值如表3所示。

表3 初始修正值 (hPa)

按照JJG 1084-2013 《數字式氣壓計檢定規程》的步驟進行檢定,檢定結果如圖14所示。

圖14 檢定結果

由圖14可知,該氣壓計最大測量誤差為0.65 hPa,超過檢定規程中最大允許誤差0.3 hPa的要求,需要對傳感器進行校準。PTB210和PTB220氣壓計的校準可通過重新設置多點修正值實現,其用戶手冊給出的各點修正值計算方法如式(1)所示。

corr=preference-pmeasured

(1)

式中,corr為修正值,preference為標準表的示值,pmeasured為被檢表示值。

修正值反映的是氣壓計在校準點附近的偏差情況,以MPC_1為例,雖然表3中校準點不是整數值,但根據氣壓傳感器的工作原理,其在500 hPa上的修正值應與499.400 hPa基本一致。因此,可按照式(1)計算出各整數值氣壓點上修正值,即檢定結果的各點測量誤差取負值。將新的多點修正值寫入氣壓計后再次進行檢定,檢定結果如圖15所示。

4 結果分析

從第一次修正后的檢定結果可以看出,經過調整后的傳感器最大測量誤差為-0.25 hPa,雖然符合檢定規程的要求,但理論上修正后的氣壓計測量誤差應基本接近零值,不應出現較大誤差。通過對比表3中氣壓計的初始修正值可以發現,圖15中各檢定點的測量誤差基本等于初始修正值的取負值,由此判斷氣壓計的初始修正值可能已固化在氣壓計的處理程序中,按照式(1)得出的修正值調整氣壓計將造成過校正。

圖15 第一次修正后的檢定結果

因此,為使修正后的氣壓計示值更加接近標準值,在實際校準過程中,新的修正值應為氣壓計存儲的初始修正值減去對應檢定點測量誤差值,如式(2)所示。

corrnew=corrinitial-Δp

(2)

式中,corrnew為某校準點應輸入的新修正值;corrinitial為氣壓計存儲的初始修正值;Δp為檢定結果中對應檢定點的測量誤差值。

按照式(2)計算出各整數值氣壓點上修正值,如表4所示。

表4 新修正值 hPa

按表4重新設置PTB220氣壓計的多點修正值后,再次進行檢定,結果如圖16所示。

圖16 調整后的檢定結果

由圖16的檢定結果可以看出,在按照式(2)計算的多點修正值調整氣壓計后,其測量誤差最大不超過0.06 hPa,不僅滿足檢定規程的要求,而且相對于按式(1)修正的檢定結果,測量誤差更加接近零值,證明在對PTB220氣壓計進行調整時,應當引入初始修正值。

5 結束語

目前氣壓檢定校準系統已在實驗室應用,系統運行平穩,檢定流程控制準確,數據處理結果和生成證書格式正確,存在超差問題的氣壓計經系統校準之后測量誤差滿足要求,有效減輕了檢定人員工作強度,提高了檢定校準效率,減少了人為錯誤的發生。

系統使用中也暴露出一些問題,如:程序采用面向過程思想編寫,不利于系統的擴展、維護和移植,在后期的改進中需要進一步完善,以增強系統的健壯性。

猜你喜歡
測量誤差串口氣壓
一種新型多通道可擴展氣壓控制器設計
《瘋狂的計量單位》
氣壓差減重步行康復訓練系統設計
基于EM9000工控板高性能雙串口通信模型設計與實現
MCS—51單片機中的多串口通訊技術的應用
氣壓高度計的測量誤差分析及修正方法
運用數理統計方法測定取樣和分析測量誤差
全程健康教育對高壓氧治療引起氣壓傷的影響
微機串口的測試診斷
基于VC串口通信的實現
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合