王 興, 高 菲*, 白 雪, 李彩霞, 崔志強, 董 佳
(1.太原科技大學,山西 太原 030024; 2.山西瑞諾風電子科技有限公司,山西 太原 030043;3.河北省科學院應用數學研究所,河北 石家莊 050081)
金屬在人們的日常生活中是重要的物質資源。純金屬元素還可以制作一些合金或高純金屬片、金屬棒并在工業上得到應用。高純金屬是電子工業、宇航、通信及高科技尖端產業中的重要基礎材料。隨著科技的發展,純金屬的需求量越來越大,產量越來越多,然而一些商家在純金屬制造環節混合摻雜以獲取更多的利潤,出現了金屬純度不足的問題。到目前為止,許多金屬特性方面的研究為金屬純度的檢測奠定了基礎,這些研究使用的方法多種多樣,例如用電極電導法測量金屬鹽溶液的電導率[1]、對金屬復合材料通電來研究其特性[2]等,同時也有了許多金屬純度檢測技術[3]。在檢測數據采集方面,國外對數據在線采集系統的研究比較豐富,例如在一種溫度在線監測系統的研究[4]中,采用光纖將溫度傳感器采集的數據傳輸給溫度在線監測系統,通過RS485串口完成溫度在線監測系統與計算機的通信,并已將該系統用于電力變壓器的溫度在線監測。針對現有的金屬純度檢測方法檢測準確率低、受人為因素影響較大等問題[5],筆者研究了超穩定恒流源金屬檢測裝置,使用電壓、溫度傳感器將實時檢測數據發送到主控電路板,采用串行通信方式接收檢測數據并以圖像的形式顯示在PC端,通過操作PC端實現對檢測過程的控制,從而可以便捷、智能、快速、有效地檢測金屬純度。以規則體積的金屬銅和鋁為例進行試驗,結果表明所研制的裝置可以有效識別銅和鋁并且得出純度,實現了數據的采集與上傳,同時也可以實現對其他金屬的純度檢測。
金屬純度智能檢測裝置總體由3個部分組成,分別是檢測部分、采集部分、控制部分。檢測部分包括兩個放置金屬待測物的水槽和正負極電極片;采集部分由電壓傳感器和熱電偶進行電壓的感知和溫度的測量,并由PC端完成對數據的采集和上傳;控制部分電路主板通過自身集成的I/O接口接收電壓傳感器和熱電偶的輸入信號,通過通信接口與PC端進行通信,PC端與云服務器連接,終端采集數據被存放在云端。
金屬純度智能檢測裝置基于物聯網的三層基本架構[6-7],分別為控制層、感知層和應用層,輸入電源為220 V交流電。控制層的主控電路板集成了電壓傳感器、熱電偶模塊、電流的輸出端口,以及通信接口。感知層包括電壓傳感器、熱電偶。應用層對感知層采集的數據進行處理。首先,PC端通過通信接口向控制層主控電路板發送信號來控制檢測部分和采集部分;主控電路板接收到信號后,輸出0~2 mA恒定電流到金屬檢測部分的水槽1和水槽2。其次,對于每個水槽,感知層的電壓傳感器和熱電偶分別采集金屬兩端的電壓和水溫,通過輸入端口輸入到CPU;主控電路板CPU接收到傳感器采集的數據信息后,將數據通過通信接口反饋給PC端,PC端將這些信息存儲在數據庫中并上傳到云端,同時通過編程軟件將數據以圖像的形式呈現出來方便進行比對。數據庫中的數據將作為比對時的參考值,云服務器可以對整個裝置進行實時監控[8]。設備工作原理圖如圖1所示,用到的通信接口包括RS232串口、USB接口和以太網口。

圖1 設備工作原理圖
目前,常用的檢測方法有以下3種:① 當有標準金屬作為參考時,比較被測金屬和標準金屬在相同檢測環境下的電壓曲線偏差;② 當沒有標準金屬時,以數據庫中的數據作為參考,比對在相同溫度、相同電流下待測金屬電壓數據與數據庫中該金屬電壓數據的差距;③ 當數據庫中沒有可以參考的數據時,被檢測金屬自建標準曲線,將兩個待測金屬的實時測量數據進行比對。若兩個待測金屬的數據接近,那么兩個待測金屬都合格;如果兩個待測金屬數據差距較大,那么分別與其他待測金屬進行比較。最后將合格的數據在數據庫中記錄,并上傳到云端。檢測方法流程如圖2所示。

圖2 檢測方法流程圖
主控電路板是整個裝置的核心模塊,檢測模塊和PC端通過主控電路板進行數據通信。它集成了CPU、電源、電壓傳感器、熱電偶、I/O單元、串口模塊等。主要完成的工作有:主控電路板控制電流輸入到檢測裝置;通過RS232串口、USB接口和以太網接口這3種通信接口與PC端連接,完成數據通信并對采集到的電壓、溫度數據進行處理。當采用以太網接口進行數據傳輸時,根據網絡協議發送數據包。控制模塊功能示意圖如圖3所示。

圖3 控制模塊功能示意圖
主控電路板上添加了電壓傳感器和熱電偶模塊[9]。電壓傳感器感知到被測金屬的電壓信號后,利用內部的模數轉換器將電壓模擬信號轉換成方便傳輸的數字信號,發送給主控電路板。熱電偶通過測量由自身的溫度梯度形成的熱電動勢來得到被測金屬所在水槽的水溫,并將水溫數據傳送給主控電路板[10]。主控電路板與PC端控制程序通過RS232串口進行通信,將采集到的數據傳輸到PC端,PC端采用串行通信方式對數據進行處理,在顯示屏幕上顯示電壓傳感器單元采集到的兩個金屬的實時電壓數據和熱電偶單元傳輸的兩個水槽中水的溫度數據。
測量模塊由2個水槽、2對電極片、金屬待測物組成。控制主板與水槽連接,接收數據,通過RS232串口和PC端的USB接口實現串行通信。利用標準待測金屬或數據庫中的數據,根據3種測量方法進行檢測。
金屬純度智能檢測裝置采用分布式模塊化設計總體架構,實現了各個模塊之間的協同運行,實現了電壓信號和溫度信號的采集、變換、存儲和監控。在本設計中采用Visual Basic+SQL Server 為整體架構,結合串口通信技術開發出電壓采集上位機系統。該系統包括數據庫讀寫模塊、數據參數采集模塊、電壓曲線顯示模塊、串口通信模塊、歷史數據查詢模塊、用戶管理模塊和系統幫助模塊。系統結構如圖4所示。

圖4 系統結構圖
軟件主界面分為數據參數采集區、檢測數據分析區、曲線顯示區,還有參數設置、用戶管理、故障報警、查詢打印、系統幫助等功能按鈕。其中,兩個參數采集區分別顯示兩個水槽檢測過程中的電流電壓數據、溶液溫度、電路狀態;檢測數據分析區提供了檢測過程中兩條曲線電壓數據的最大差值、最小差值、平均差值和實時電流與設定電流之間的差值、兩個水槽的溶液溫度之差;曲線顯示區根據下位機發送的數據動態更新電壓數據并顯示不同顏色的兩條曲線,分別表示標準金屬電壓數據隨電流變化的檢測曲線和被測金屬電壓數據隨電流變化的檢測曲線?!皡翟O置”按鈕用于設置電流的自動取值間隔,還可以對電流大小進行調節?!坝脩艄芾怼卑粹o可供用戶進行登錄操作和完成用戶信息的更新與刪除,通過數據庫讀寫模塊可以完成歷史數據的查詢、更新、刪除。“系統幫助”按鈕為用戶提供了系統的操作方法和指導,幫助用戶學會使用系統軟件。軟件主監控界面如圖5所示。

圖5 軟件主監控界面圖
用戶在對PC端屏幕按鈕進行操作時,這些操作會轉換成指令,主控電路板針對不同的指令做出不同的反饋。通過發送指令申請反饋電流電壓數據、申請修改檢測電流數據。部分指令發送與反饋設計如表1所示。

表1 指令設計表
其中,電流設置指令值有6位,恒流源電路數據采集反饋信息包括20位,分別是恒流源電路輸出電流值6位、恒流源電路輸出電壓值6位、溫度數據4位、恒流源電路狀態及故障碼4位。
主控電路板與計算機間通過數據信號線按位發送或接收字節數據[7]。計算機的USB接口與RS232串口連接,采用半雙工模式與控制主板進行串行通信。串口在發送讀取指令和設置指令時需要調用延時指令,停止數據的讀取。
計算機編程軟件接口采用MSComm控件。為了實現實時數據采集[10],避免因為接收緩沖區的大小限制產生溢出而導致接收數據不完整,造成數據讀取的失敗,串口接收數據采用事件驅動方式。當接收到事件驅動時,將Input獲取到的字符賦值到臨時變量S中,并判斷是否是起始字符;將臨時變量S數據累加保存到SS中,在接收到結束字符后對SS中的數據進行進一步轉換處理。根據通信指令的設計區分接收到的數據中每位數據位,并將實時電壓、電流、溫度數據顯示在PC端。串口接收數據指令流程如圖6所示。

圖6 串口接收數據指令流程圖
兩個端口進行通信時,端口的波特率、數據位、停止位和奇偶校驗位要保持一致。當數據從 CPU 經過串行端口發送出去時,字節數據轉換為串行的位數據;在接收數據時,串行的位數據被轉換為字節數據。在金屬純度智能檢測裝置中,通過PC端應用程序接收主控電路板反饋的串口通信數據并顯示。PC端應用程序要使用串口進行通信時,必須在使用之前向操作系統申請資源打開串口,在通信完成后關閉串口。主控電路板與PC端進行通信的指令協議如表2所示。

表2 通信指令協議表
為金屬純度智能檢測裝置設計了一種純度識別算法,可根據采集到的電壓數據有效地識別金屬純度。
進行對比的兩個金屬電壓數據的最大、最小偏差為
(1)
進行對比的兩個金屬電壓數據的平均偏差為
(2)
式中:Umetali和Umetalj分別為參與比對的兩個金屬在同一電流狀態下的電壓數據。
該純度識別算法流程如下。



④ 若當前最大偏差、最小偏差、平均偏差皆小于數據庫中的值,則該金屬純度與進行對比的數據庫中數據對應的金屬純度相符,可與更高純度的金屬數據進行對比,從而進一步精確判斷。為了提高識別精確度及識別效率,若在4個數值點以內最大偏差和最小偏差不滿足條件,則提高精度再次測量;否則,該金屬純度低于與之進行比較的數據對應的金屬純度。
⑤ 將數據檢測結果添加至數據庫中,方便進行測量對比。
上述提高測量精度的方法包括:采用更高精度的電壓傳感器、熱電偶;穩定現場測試的環境,避免由于溫度的改變造成數值的波動等。
金屬純度智能檢測裝置的主要的通信位于PC端與主控電路板之間。PC端對被測金屬的數據變化進行實時監測,用戶可以在PC端觀察到純度檢測模塊金屬電壓數據、輸出電流、溫度數據的實時變化,也可以通過PC端顯示屏對檢測電流的大小進行調節。智能檢測的檢測工作[11-12]分為兩種,一種是離線檢測,另一種是在線檢測。在線檢測是在檢測過程中實時進行的,離線檢測則是等檢測過程完成后對采取的樣本進行操作。筆者采用智能在線監測和控制技術,將信號檢測、數據處理和計算機控制融合在一起,實現檢測過程智能化和自動化。
用戶通過PC端軟件界面可進行電流的參數設置,通過Visual Basic編程設計來控制電流按設定的取值間隔自動變化,主控電路板接收PC端傳出的電流值,將電流調節為接收到的電流值,并根據串口通信協議做出反饋,同時將電流輸入到金屬檢測部分。主控電路板將電壓數據通過USB接口發送給PC端,PC端通過Visual Basic通信接口接收數據,用Visual Basic程序檢測接收到的電壓數據是否穩定,待穩定后對數據進行采集,在軟件的曲線繪制界面繪制采集到的被檢測金屬電壓數據隨電流自動連續取值變化的曲線圖。
電壓傳感器檢測到的電壓數據模擬信號,需要通過控制單元模數轉換器(ADC)轉換成計算機能接收的數字信號傳給主控電路板,然后通過端口送入計算機[13]。熱電偶通過自身的溫度梯度形成的熱電動勢得到被測金屬所在水槽的水溫,并將水溫數據傳送給主控電路板[14]。用戶設置的電流信號為通過計算機端口輸出的數字量信號,通過控制單元數模轉換電路(DAC)轉換成模擬量信號后輸出。模擬信號與數字信號轉換原理如圖7所示。

圖7 模擬信號與數字信號轉換原理圖
根據PC端呈現的實驗數據曲線,同種金屬的曲線基本吻合,選取0.6~1.2 mA電流區間的電壓數據進行分析,不同銅塊偏差不超過2%,不同鋁塊偏差不超過1%。實驗數據如表3所示,電壓曲線對比如圖8所示。

表3 同種金屬數據對比表

圖8 電壓曲線對比圖
如圖8所示,上方的兩條線表示不同鋁塊的電壓數據曲線,下方的兩條線表示不同銅塊的電壓數據曲線。可以看出,同種金屬的曲線重合度較高,不同種金屬的曲線差別較大。
選取不同金屬之間差距最小的一組數據進行分析,在0.6~1.2 mA的電流區間里,最小偏差為9.94%,最大偏差達19.58%。實驗數據如表4所示。

表4 不同金屬數據對比表
測量了摻雜鋁塊的金屬電壓值曲線,并選取0.6~1.2 mA的電流區間與純鋁塊數據進行對比分析。純度為98%的鋁塊與純鋁塊最小偏差為5.15%,最大偏差為11.17%;純度為99.5%的鋁塊與純鋁塊最小偏差為3.34%,最大偏差為5.95%。根據同種金屬對比實驗中結果可得出,同種金屬不同個體的最大偏差小于2%,而摻雜之后的金屬與純金屬對比時,最小偏差超過了3%,且純度越低偏差越大。由此,可以識別出摻雜金屬與純金屬。實驗數據如表5所示,電壓曲線對比如圖9所示。

表5 純金屬與摻雜金屬數據對比表
如圖9所示,上、中、下三條線分別表示純鋁、99.5%純度鋁、98%純度鋁的電壓數據曲線。因此能夠得出結論,金屬純度智能檢測裝置可以識別純度98%以上的金屬。

圖9 摻雜金屬電壓曲線對比圖
隨著純金屬需求量的增加,純金屬的產量越來越大,為了避免一些商家在純金屬制造環節混合摻雜導致金屬純度不夠,設計了金屬純度智能檢測裝置。它包括了PC端、金屬檢測端、控制電路主板這3個主要部分,提供了3種檢測金屬純度的方法,通過實驗驗證了該方法的可行性,通過檢測多種金屬,保存金屬的數據曲線,從而可以建立各種金屬的數據庫,方便對更多的金屬進行檢測。利用Visual Basic編程設計軟件將控制功能、調度策略集成在PC端的面板上,實現了金屬純度檢測過程的智能化、可視化,具有高效性、便攜性、實時性、可操作性。