在光電積分式測色系統設計中,通常選用硅光電池作為光電探測器,硅光電池能夠把光信息(能量)直接轉化成電信息(能量),便于對被測信號進行處理。由于標準光源照明體燈管壁溫度較高,對探測器內部的溫度影響很大,硅光電池受溫度影響產生電壓漂移,這勢必會影響到測量的精度和穩定性。通過研究硅光電池的光電轉換特性隨溫度變化的規律,設計了使用數字溫度傳感器DSl8820的一種V—T曲線控制補償方法,對測色系統進行適當的電壓補償,使其達到更好的性能指標。 1 硅光電池特性 在測色系統中,經過光電探測器把采集到的被測樣本的光信號轉換為電信號,采集輸出的電信號極其微弱,需要對這些電信號進行轉換和放大處理,在這些環節中引起溫度漂移的原因主要有2點: (1)硅光電池的溫度特性對輸出電壓有很大影響; (2)在放大電路中,任何參數的變化,如電源電壓的波動、元件的老化、半導體元件參數隨溫度變化而產生的變化,都將產生輸出電壓的漂移。 硅光電池的溫度特性是指開路電壓和短路電流隨溫度變化的情況。由于它關系到應用光電池的儀器設備的溫度漂移,影響測量精度或控制精度等重要指標,因此溫度特性是硅光電池的重要特性之一。從圖1中可以看出硅光電池開路電壓隨溫度上升而明顯下降,短路電流隨溫度上升卻是緩慢增加的。因此,在采用硅光電池作為檢測元件時,應考慮溫度漂移的影響,并采用相應的補償措施。 ![]() 2 DSl8820實時溫度采集 DSl8820是DALLAS公司生產的單線式智能數字溫度傳感器,具有3引腳TO一92小體積封裝形式,其中:DQ為數字信號輸入/輸出端;GND為電源地;VDD為外接供電電源輸入端(在寄生電源接線方式時接地)。DSl8820內部結構主要由4部分組成:64位ROM、溫度傳感器、非揮發的溫度報警觸發器TH和TL、配置寄存器。 DSl8820的測溫原理如圖2所示:每次測量前,首先將一55℃所對應的基數分別置人減法計數器1和溫度寄存器中。減法計數器1對低溫度系數晶振產生的脈沖信號進行減法計數,當減法計數器1的預置值減到0時,溫度寄存器的值將加1,減法計數器l的預置將重新被裝入,減法計數器1重新開始對低溫度系數晶振產生的脈沖信號進行計數,如此循環直到減法計數器2計數到0時,停止溫度寄存器值的累加,此時溫度寄存器中的數值即為所測溫度。斜率累加器用于補償和修正測溫過程中的非線性,其輸出用于修正減法計數器的預置值,只要計數門仍未關閉就重復上述過程,直至溫度寄存器值達到被測溫度值。 ![]() 3 V—T曲線控制溫度補償的設計方案 光源產生的熱量和探測器的機械結構使得光電探測器內部溫度隨測量時間的增加不斷升高,硅光電池采集的三路模擬信號的電壓值隨之逐漸下降。針對這種現象通常采用分時間段對這三路信號的電壓值進行補償。實驗表明,時間與電壓值的關系并不能作為準確的控制3路模擬信號電壓值補償的依據:一方面,按時間變化采集的3路模擬信號的電壓值并不是完全線性的;另一方面,硅光電池的溫度特性才是產生溫度漂移最主要的原因。 這里采用溫度傳感器DSl8820獲取實時溫度,結合電壓值分析得出溫度補償系數進行電壓補償,實現電壓一溫度曲線(V—T曲線)控制補償。根據溫度傳感器的測溫原理,設計了一種實現V—T曲線補償的方法,系統總體框圖如圖3所示。按照式(1),結合實際測量數據分析得到適當的溫度補償系數K,實現溫度上升時,對實測電壓進行適當的補償,使補償后的實測電壓值具有良好的穩定性。 式中,V0為電壓初始值;V為電壓實測值;T為實測溫度;T0為溫度初始值;K為溫度補償系數。 ![]() 3.1 溫度補償系數的選擇 V一T曲線控制溫度補償的核心在于溫度補償系數K的選擇,根據式(1)得到: ![]() 在測色系統中,把調零后第一次測量標準白板時獲得的電壓值和溫度值作為式(2)中的電壓和溫度的初始值。連續測量標準白板,能夠獲取不同溫度時3路模擬信號的電壓值,隨著溫度的升高,硅光電池產生的電壓漂移會反應在這些電壓值中。結合實測數據計算電壓值隨溫度線性變化的曲線斜率,所得的曲線斜率即為溫度補償系數K。將溫度補償系數K引入到電壓補償中,對于每次測量所得的電壓值,都可以結合實測的溫度對電壓測量值進行補償,得到實際的電壓值。如式(3)所示: ![]() 式中,Vt為實際的電壓值;V為電壓測量值;T為溫度實測值;T0為溫度初始值;K為溫度補償系數。 3.2 硬件實現 WSC—Y型測色色差計選用STC89C58RD+新一代超強抗干擾/高速/低功耗單片機作為主處理器完成主要的測控任務。單片機單總線上掛接的DSl8820采用外接VDD供電方式(而未用寄生供電),系統中CPU采用22 MHz晶振,DQ端為P1.1。系統主要部分硬件電路如圖4所示。 3.3 軟件實現 DSl8820簡單的硬件接口是以相對復雜的接口編程為代價的。由于DSl8820通過單總線與單片機進行通信,所以DSl8820與單片機的接口協議是通過嚴格的時序來實現的。單片機控制DSl8820完成溫度轉換必須經過3個步驟:初始化、ROM操作指令、存儲器操作指令。必須先啟動DSl8820開始轉換,再讀出溫度轉換值。另外,DSl8820在實際應用中應注意從測溫結束到將溫度值轉換成數字量需要一定的轉換時間,所以在讀取溫度結束后需要延時1 s后,再對數據進行處理,這是必須要保證的,否則將導致轉換錯誤,輸出錯誤的溫度值。基于DSl8820的通信協議編寫溫度傳感器控制程序,對DSl8820的操作的程序流程圖如圖5所示。 ![]() 3.3.1 初始化子程序 測溫系統采用P1.1作為為通信端口,在DS18820初始化的過程中,單片機首先發出1個復位脈沖,保持低電平時間要大于480μs,然后單片機釋放總線,等待DSl8820的應答脈沖,P1.1口收到0則初始化成功,收到1則初始化失敗。這樣,單片機與溫度傳感器就完成了1次初始化通信。 3.3.2 讀取溫度數據 使用默認的12位轉換精度,外接供電電源,完成一次轉換并讀取溫度值的程序如下: ![]() 3.3.3 V—T曲線控制補償子程序 溫度補償函數的實現如下: ![]() 4 實驗結果分析與結論 將V—T曲線控制補償電路的設計方案應用到測色系統后,先將色差計預熱30 min后,使光源趨于穩定,對儀器定標,每隔5 min測量專用工作白板1次。測量中,白板保持不動,測量結果良好。表1和表2分別是對系統進行溫度補償前和溫度補償后,測量同一塊標準白板半小時的測量結果。 ![]() 由測量數據可見,在對系統進行溫度補償后,測色系統的測量準確度大大提高,誤差明顯變小。引入溫度傳感器后,測色系統的測色色差△E均小于O.15,測量的重復性完全達到了國家計量院規定的15 min內△E<0.2的要求。根據測色系統的現實要求,采用靈活的溫度補償技術,和切實可行的電壓補償方法,有效地完成了測色系統的穩定性控制。實驗結果表明,在使用了數字溫度傳感器對測色系統的實測電壓進行補償之后,減少了測量誤差,提高了儀器的穩定性和準確度。 |