針對目前砝碼檢定工作操作過程復(fù)雜、檢定效率低等問題,設(shè)計了一種基于 LabVIEW 的砝碼自動檢定系統(tǒng) g 在符合磚碼檢定規(guī)程的情況下,系統(tǒng)實現(xiàn)了檢定數(shù)據(jù)實時采集、數(shù)據(jù)處理、生成原始記錄、管理標(biāo)準(zhǔn)器、查詢歷史數(shù)據(jù)和電子秤控制等功能;相對現(xiàn)有 的磚碼檢定方法有操作簡單、高效、程序移植性好等優(yōu)點;系統(tǒng)由主控計算機、事口轉(zhuǎn)無線擴展卡、多臺電子秤設(shè)備及相應(yīng)的標(biāo)準(zhǔn)磚碼裝 置組成;通過使用串口轉(zhuǎn) Wi-Fi 模塊,系統(tǒng)可實現(xiàn)控制多臺電子秤設(shè)備的需求 z 實驗結(jié)果證明,系統(tǒng)運行穩(wěn)定可靠,采集數(shù)據(jù)準(zhǔn)確,容易擴展,且大幅度減輕了檢定人員的勞動強度,在計量檢定工作中具有一定的實用和推廣價值。
0.引言
質(zhì)量是七大物理基本量之一,硅碼是一種復(fù)現(xiàn)質(zhì)量值的實 物量具,被廣泛應(yīng)用于各部門。磚碼的計量檢定工作是通過衡量儀器對標(biāo)準(zhǔn)磚碼和被檢磚碼進(jìn)行稱量比較來實現(xiàn)的,它直接 關(guān)系到質(zhì)量量值傳遞的準(zhǔn)確性和一致性。在現(xiàn)有的磚碼檢定工 作中,檢定入員需反復(fù)讀取檢定數(shù)據(jù)并進(jìn)行復(fù)雜的處理計算, 工作效率低、容易出錯,且查詢歷史數(shù)據(jù)記錄過程繁瑣。
LabVIEW是美國國家儀器公司 (NATIONAL INSTRUMENTS ,簡稱ND 的軟件產(chǎn)品,是目前應(yīng)用最廣、發(fā) 展最快、功能最強的圖形化編程語言。與傳統(tǒng)的編程語言 C、 C++ 、Visual BASIC等相比具有編程簡單、直觀、開發(fā)效率 高等特點。本文結(jié)合計量工作的實際情況,對基于 LabVIEW 開發(fā)平臺【叫和串口轉(zhuǎn) Wi-Fi 通訊技術(shù)[叫的磚碼自動檢定系 統(tǒng)設(shè)計進(jìn)行研究,為磚碼檢定工作提供一種新的解決方案。
1.系統(tǒng)結(jié)構(gòu)及工作原理
硅碼自動檢定系統(tǒng)硬件平臺由電子天平、質(zhì)量比較器、串口轉(zhuǎn) Wi-Fi 擴展卡 NPort 5100 、主控計算機和若干擴展顯示 器構(gòu)成。采用集中分布式結(jié)構(gòu),系統(tǒng)可以分成三層:第一層為 電子秤數(shù)據(jù)采集層,第二層為無線傳輸層,第三層為控制管理 層。系統(tǒng)結(jié)構(gòu)示意圖如圖 1所示。
系統(tǒng)通過使用串口轉(zhuǎn) Wi-Fi 擴展卡 NPort 5100 來組建無 線數(shù)據(jù)采集網(wǎng)絡(luò),以完成地磅設(shè)備串口采集的數(shù)據(jù)與主控計算 機之間的通信傳輸,解決了布線困難等問題,提高了系統(tǒng)的靈 活性。該無線網(wǎng)絡(luò)是基于 AP 組建的基礎(chǔ)無線網(wǎng)絡(luò)(lnfa) .與主控計算機連接的 NPort 5100 設(shè)置為 AP 節(jié)點,與每臺電子秤設(shè)備連接的 NPort 5100 均設(shè)置為 STA 節(jié)點,網(wǎng)絡(luò)由 AP 創(chuàng)建, AP 作為整個網(wǎng)絡(luò)的中心,眾多 STA 加入已創(chuàng)建的無線網(wǎng)絡(luò) 進(jìn)行通信。目前系統(tǒng)適用于 METTLER TOLEDO 全系列電子 天平和質(zhì)量比較器。
檢定人員在電子秤內(nèi)置程序的提示下,按照規(guī)程規(guī)定的順 序,依次加載、卸載標(biāo)準(zhǔn)磚碼和被檢磚碼。電子秤通過串口轉(zhuǎn) Wi-Fi 擴展卡將數(shù)據(jù)發(fā)送至主控計算機,系統(tǒng)讀取數(shù)據(jù)后按 規(guī)程規(guī)定的算法來計算被檢磚碼的折算質(zhì)量值。同時系統(tǒng)將檢 定所需的其他相關(guān)數(shù)據(jù),如溫濕度、標(biāo)準(zhǔn)器信息和被檢磚碼的 送檢信息進(jìn)行保存。最終按檢定人員需求,可以實時打印檢定 記錄并從主控計算機或擴展顯示器上觀測檢定過程。
2.系統(tǒng)軟件設(shè)計及功能實現(xiàn)
2.1 軟件方案設(shè)計
軟件的主要設(shè)計依據(jù)是國家現(xiàn)行有效的硅碼檢定規(guī)程JJG
99-2006[7J 以及衡量儀器的 MT-SICS 指令集陽。系統(tǒng)采用模塊化設(shè)計,主要由六大功能模塊組成 z檢定/校準(zhǔn)模塊、簡易稱量模塊、標(biāo)準(zhǔn)器信息模塊、記錄查詢模塊、系統(tǒng)設(shè)置模塊 和幫助模塊。系統(tǒng)的功能模塊框圖如圖 2 所示。
2.2 蚊據(jù)自動采集與傳輸
系統(tǒng)采用 VISA (virtual instruments software architec? ture. 虛擬儀器軟件規(guī)范)接口模塊進(jìn)行編程。在 LabVIEW 中. VISA 作為測試程序和數(shù)據(jù)傳輸總線的中間層,為應(yīng)用程 序和儀器總線建立了信息通道,它可以連接不同標(biāo)準(zhǔn)的1/ 0設(shè) 備,是用來在基于計算機設(shè)備之間通信的函數(shù)庫。
為減少系統(tǒng)開銷,避免反復(fù)對設(shè)備通信口進(jìn)行打開或關(guān)閉 等操作,系統(tǒng)利用事件結(jié)構(gòu)來處理串口配置問題。系統(tǒng)中的串 口初始化參數(shù)應(yīng)當(dāng)和衡器設(shè)備中的串口通信參數(shù)保持嚴(yán)格一 致。利用 VISA Configure Serial Port 函數(shù)來配置以下通信參 數(shù) g 波特率為 9 600. 8 位數(shù)據(jù)位,無奇偶校驗位. 1 位停止 位,流控制為 XON/XOFF0 VISA 配置函數(shù)的終止符默認(rèn)為 氣 n' ,為了防止數(shù)據(jù)接收不全,將啟用終止符的輸入端設(shè)為 F. 即不啟用終止符。系統(tǒng)通信配置部分程序框圖如圖 3 所示。
由于主控計算機無法確定衡器會何時發(fā)送檢定數(shù)據(jù),且數(shù)據(jù)格式可能發(fā)生變化,所以系統(tǒng)采用輪詢的方法來實現(xiàn)對設(shè)備 的數(shù)據(jù)采集。在執(zhí)行采集操作前,利用 Byte at Port 屬性節(jié)點 返回接收緩沖區(qū)中已經(jīng)存在的字節(jié)數(shù),以保證讀取操作的穩(wěn) 定,且不遺漏數(shù)據(jù)包。數(shù)據(jù)收發(fā)模塊工作流程圖如圖 4 所示。
系統(tǒng)在默認(rèn)情況下處于自動讀取數(shù)據(jù)狀態(tài),而每次寫人數(shù)據(jù)是需要觸發(fā)信號的。程序中設(shè)置了寫人數(shù)據(jù)開關(guān),當(dāng)寫入數(shù)據(jù)開 關(guān)打開時,消息對話框中的信息將被寫入指定電子秤,程序可通 過衡器預(yù)設(shè)命令來進(jìn)行調(diào)試。系統(tǒng)每次啟動時自動巡檢設(shè)備端 口狀態(tài),若存在故障情況,系統(tǒng)會自動報警并關(guān)閉設(shè)備連接。
2.3 數(shù)據(jù)處理、顯示及檢定報表生成 在完成檢定數(shù)據(jù)的采集后,系統(tǒng)需對被檢磚碼的平均值、修正值、空氣浮力修正值等進(jìn)行計算,這些數(shù)據(jù)處理過程由程序內(nèi)置算法完成,并將計算結(jié)果填人記錄報表。由于檢定過程 中標(biāo)準(zhǔn)磚碼和被檢硅碼返回的數(shù)據(jù)格式不盡相同,系統(tǒng)還需利 用數(shù)據(jù)匹配和數(shù)據(jù)截取等 VI 來進(jìn)行數(shù)據(jù)預(yù)處理。數(shù)據(jù)處理模 塊工作流程如圖 5 所示。
系統(tǒng)利用接口數(shù)據(jù)的"值改變"事件來實現(xiàn)人機交互界面中的檢定數(shù)據(jù)實時顯示功能,但是由于 LabVIEW 的事件結(jié)構(gòu)中元法捕捉由程序修改而產(chǎn)生的"值改變"事件,因此系統(tǒng)將 無法響應(yīng)對應(yīng)的事件分支。為解決這一情況,通過調(diào)用控件的 "值信號"屬性節(jié)點來模擬產(chǎn)生"值改變"事件,該"值信號" 屬性節(jié)點只能寫人。人機交互界面中利用表格控件作為檢定數(shù) 據(jù)實時顯示的載體,將主控計算機采集到的數(shù)據(jù)經(jīng)過處理后創(chuàng) 建成一維數(shù)組,再將此一維數(shù)組根據(jù)不同的檢定方案進(jìn)行重 排,最終將重排后的二維數(shù)組通過雙層循環(huán)嵌套來寫入表格的 "值"屬性,以達(dá)到實時刷新人機交互界面的需求。數(shù)據(jù)實時 顯示部分程序框圖如圖 6 所示。
其中 : md 為經(jīng)空氣浮力修正的被檢磚碼質(zhì)量 Ckg); m 為標(biāo)準(zhǔn)磚碼的質(zhì)量 Ckg); .e.m ,為測量差值的平均值 Ckg); C 為空氣浮力修正因子 ;pa 為空氣密度 (kg/m3 ); po 為空氣密
度的標(biāo)準(zhǔn)值1. 2 kg/m3 ; p,為標(biāo)準(zhǔn)蔽碼的密度 (kg/m3 ) ; ρ 為
被檢磚碼的密度 (kg/m' )。
系統(tǒng)利用 LabVIEW 強大的 Office 報表生成功能來實現(xiàn)磚 碼自動檢定原始記錄的制作。根據(jù)蔽碼檢定規(guī)程的要求,預(yù)先
設(shè)計好相應(yīng)的記錄模板,供程序自動調(diào)用填寫。程序中通過編 寫?yīng)毩⒌氖录Y(jié)構(gòu)來處理記錄生成功能,主要使用 New Re port 、Append Report Text 、Word Edit Cell 、Word Format
Cell 、Word Table Alignment 、Save Report to File 、 Word Bring to Front 等 VI. 它們分別完成了新建報表、寫人報表文本、寫入報表表格、格式設(shè)置、表格對齊、保存至文件和調(diào)入 前面板顯示等功能。
2.4 標(biāo)準(zhǔn)器信息管理模塊
系統(tǒng)中的標(biāo)準(zhǔn)器信息管理模塊包含了對標(biāo)準(zhǔn)硅碼和標(biāo)準(zhǔn)衡器的管理。每當(dāng)系統(tǒng)啟動時,程序會自動掃描所有標(biāo)準(zhǔn)器的有 效期信息,若存在超期或即將超期問題,系統(tǒng)立即發(fā)出提醒, 以避免標(biāo)準(zhǔn)器的過期使用。即將超期的時間范圍可由檢定人員 預(yù)先設(shè)定,達(dá)到合理的提前預(yù)警功能。檢定人員可根據(jù)具體情 況隨時添加新的標(biāo)準(zhǔn)器信息。程序通過設(shè)置表格自定義項符號 來制作超期報警指示燈,顯示效果直觀。
2.5 系統(tǒng)可靠性設(shè)計 為提高系統(tǒng)采集數(shù)據(jù)的可靠性,在數(shù)據(jù)采集程序中利用輪詢設(shè)備機制,先把接收到的空信息排除,再將符合格式規(guī)范的 檢定數(shù)據(jù)存入臨時文件。同時通過設(shè)計事件觸發(fā)變量來傳遞有效的檢定數(shù)據(jù),保證最后階段數(shù)據(jù)處理、存儲和生成檢定記錄的準(zhǔn)確性。在數(shù)據(jù)發(fā)送與接收之間需加入一定的延時,因為設(shè) 備串口作為硬件底層,數(shù)據(jù)在上位機軟件和底層設(shè)備之間通訊 是需要時間的,加入的延時量應(yīng)遠(yuǎn)大于此時間量,以確保設(shè)備 返回數(shù)據(jù)的可靠接收。當(dāng)系統(tǒng)完成一次怯碼檢定工作后,運行 生成檢定原始記錄程序,為保證原始記錄數(shù)據(jù)的真實性,程序 將記錄的屬性值設(shè)置為只讀。
3.系統(tǒng)工作流程及試驗結(jié)果
硅碼自動檢定系統(tǒng)的使用流程大致描述如下2 登錄系統(tǒng)→輸入被檢樣品信息(包括送檢信息、本次檢定所使用的標(biāo)準(zhǔn)器 具信息)-依次輸入檢定次序→開始磚碼檢定,根據(jù)衡器提示 完成加載、卸載硅碼動作→系統(tǒng)自動錄入檢定數(shù)據(jù)→檢定結(jié)束,生成原始記錄報表并打印。
根據(jù) JJG 99-2006 磚碼檢定規(guī)程的要求,對某一批次送檢 磚碼 (50g 、 100 g、100 g 、200 g、500 g 、500 g) 進(jìn)行測試, 系統(tǒng)運行中的檢定模塊的人機交互界面如圖 7 所示。試驗結(jié)果 表明系統(tǒng)運行平采集無丟失,檢定結(jié)果準(zhǔn)確可靠。
4.結(jié)束語
目前本系統(tǒng)已在市級計量檢定測試中心的磚碼檢定工作中 投入使用,并取得預(yù)期效果。系統(tǒng)簡化了磚碼檢定工作的操作 過程,節(jié)約了人員的勞動力成本。工作人員僅需完成蔽碼的裝 卸動作,其余工作均可由系統(tǒng)自動處理,避免了現(xiàn)有硅碼檢定 工作中存在的檢定時間長、效率低、容易出錯和數(shù)據(jù)處理麻煩 等問題,使得磚碼檢定工作更加及時、準(zhǔn)確、可靠,提升了砝碼檢定的自動化技術(shù)水平。