寧超 杜平萍 魯長海

摘要:太陽輻射表是農業氣象領域的新興重要觀測設備,它的數據通過數字萬用表來讀取,精度只能達到0.01mV,本位采用6位半數字萬用表的方法讀取太陽輻射表數據,不但采集精度提高至0.001mV,而且通過根據數字萬用表接口設計擴展數據線,實現同時采集20路輻射表數據的功能,并可以利用軟件將測量數據計算和保存,取代人工記錄,大大提高了太陽輻射表觀測業務能力。
關鍵詞:太陽輻射表;多路數據采集
中圖分類號: TP399 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 文獻標識碼: ?A ? ? ? ? ? ? ? ? ? ?DOI編號: ? 10.14025/j.cnki.jlny.2019.16.076
太陽直接輻射是用太陽輻射表(簡稱輻射表或直射表)測量[1]。此輻射表可廣泛應用于太陽能利用、氣象、農業、建筑材料及生態考察部門[2]。
目前,遼寧省太陽輻射表觀測實驗現狀存在以下不足:一是實驗數據讀取為人工讀數,這種測量方法一人只能讀取一臺設備的數據,不能實現一對多的觀測需求;二是萬用表讀數精度有限,影響輻射能量計算的準確性;三是實驗數據沒有專用計算軟件進行處理,存在著很多重復性勞動,工作量大效率低。對此,本文提出使用6位半數字萬用表配合專用擴展數接口實現太陽輻射表的多路采集與實驗數據記錄存儲功能。
1設計多路采集數據線
根據Keithley2000高精度數字多用表的擴展接口,設計并制作滿足20路太陽輻射表測量的多路采集數據線,其選用HDB44母頭焊接40根鍍錫純銅導線,其性能滿足測量太陽輻射表的0.001mV的要求[2],焊點處用熱封套管做絕緣處理,且每一對導線都做數字標記,用來分清線序,如圖1所示。
2設計多路數據處理軟件
為了能夠最大限度地減輕實驗人員的工作量,需要將采集到的多路輻射數據進行自動化處理。實現20通路的輻射數據并行測量和實時數據采集。所以,多路數據處理軟件的設計理念是依照輻射表實驗規程編寫底層數據計算邏輯代碼,并實現使用簡單,運行穩定的操作界面。該軟件使用python3.7作為開發環境,所以環境特別適合觀測人員學習使用,通過短時間學習就能夠解決業務中的很多問題[3]。本文利用numpy、pyqt4等關鍵包輔助實現各種功能,例如,將采集數據.dat文件中的字符串內容轉化成計算機可處理的數據格式,并提取滿足規程的60行測量數據,代碼如下:
for i in range(ll):
list_arr[i] = list_arr[i].split()
a = np.array(list_arr)
a = a[0:60, :]
dat文件的數據提取為計算機數字格式之后,就需要根據規程設計比對數據處理函數的代碼,用numpy.std方法代表求矩陣fij的樣本標準偏差:s=numpy.std(fij, axis=1,ddof=1)。
因為該軟件需要具備同時處理20個輻射表的能力,所以需要20行的信息顯示欄,即要布置20個pyqt4模塊下的textlabel。但因為每次試驗的輻射表數量無法確定,所以具體使用幾行信息欄的textlabel數量是不定的,那么,在程序設計中就需要通過條件語句解決這個問題,并使用eval這個函數實現不確定數量的邏輯迭代功能,具體代碼如下:
for i in range(len(true_index)):
if abs(self.stability[i]) < lim:
eval(“self.lineEdit”+str(true_index[i]+20)+ “.setText(‘合格)”)
else:
eval(“self.lineEdit”+str(true_index[i]+20)+ “.setText(‘不合格)”)
這里true_index是實際參與實驗的輻射表數量,通過函數eval()遍歷每一個參與實驗的輻射表所對應的信息欄,并寫入合格或不合格。
3結語
太陽輻射表的多通道采集方法以及數據處理軟件使用方便簡單,具有良好的人機交互特性,使得太陽輻射表的觀測、數據比對校準效率顯著提升,而且可以實現一人操作多臺設備的情形,通過計算機計算完全消除了人為誤差。與其他面向對象的編程語言相比,python特別適合應用到計量檢定數據處理領域,其編程方式簡單,數學函數豐富,計量人員不用投入太多時間學習開發語言就可以完成軟件的編寫,節省大量時間。目前,已經有大量利用python解決數學模型可視化,科研數據處理可視化的研究工作,但鮮有將其利用在計量檢定數據處理中,所以,本文為其他檢定業務的數據處理提供了有效的解決辦法。
參考文獻
[1]黃思源,劉鈞.新型自動氣象站觀測業務技術.北京:氣象出版社,2008.
[2]張文煜.大氣探測原理與方法.北京:氣象出版社,2007.
[3]Eric Matthes.Python編程從入門到實踐.北京:人民郵電出版社,2017.
作者簡介:寧超,本科學歷,中級工程師,研究方向:氣象裝備技術保障。