黃 東 趙 勇 張天開 王顯靜
(青島理工大學自動化工程學院,山東 青島 266033)
鍋爐測溫在生產過程中隨處可見,但通過現場工人設置的方法對鍋爐溫度進行控制時,由于鍋爐較多且生產環境惡劣或是有一定危險時,操作相對較麻煩,容易對工人人身安全造成威脅,因此需要一套遠程控制系統對鍋爐溫度進行控制。
微機電系統、片上系統、無線通信技術和低功耗嵌入式技術的飛速發展,孕育出了無線傳感器網絡(Wireless Sensor Networks,WSNs)。WSNs是一種由傳感器節點構成的網絡,可將傳感器的信息通過無線網絡發送給上位機[1]。因此將WSNs技術與監控軟件相結合運用到鍋爐監控中是溫控系統未來的發展趨勢。基于此,筆者設計了一種以CC2530和NTC熱敏電阻為核心的智能化鍋爐溫控系統,利用低功耗的WSNs實現了鍋爐溫度的采集、顯示和測溫節點與協調器間的數據傳輸。
鍋爐溫控系統的結構框圖如圖1所示。傳感器使用NTC熱敏電阻,分壓電路將NTC電阻值轉換成電壓值;CC2530的AD轉換器采集電壓信號并將其轉換成實際溫度;單片機控制LCD顯示相關信息;串行時鐘芯片DS1302實時顯示和記錄系統時間;基于I2C總線的AT24C02用來保存用戶設定數據。每個測溫節點通過ZigBee發送測量數據至鍋爐監控系統或接收溫度等設定值,并將溫度設定值與測量值進行比較,輸出控制信號驅動光耦,以控制繼電器的斷開與吸合。根據需要任意設定測溫節點數目,ZigBee測溫節點與ZigBee協調器自組網形成無線網絡,ZigBee協調器通過串口通信方式與上位機進行通信[2]。

圖1 鍋爐溫控系統結構框圖
最小系統CC2530內嵌業界標準的增強型8051CPU,共有21個數字輸入/輸出引腳,可以配置成普通通用數字I/O信號或外設I/O信號。ADC支持14位的模擬數字轉換,具有8個可配置通道,轉換結果可通過DMA寫入存儲器。同時,CC2530結合了黃金單元ZigBee 協議棧(Z-StackTM),提供了一個強大和完整的ZigBee 解決方案。引腳P1_2和P1_1模擬I2C總線時序、讀寫AT24C02,P1_2和P1_1分別模擬I2C的SCL時鐘線和SDA數據線。本系統中射頻電路都是由TI官方提供,最小系統CC2530的電路如圖2所示。

圖2 最小系統CC2530的電路
系統電源電路的主要功能是為各模塊提供不同的電源。整流芯片DB107將降壓后的220V交流電轉換成直流電,為整個測溫節點提供電源(圖3)。由于系統各模塊需要的電壓不同,系統電源電路模塊需要提供不同的穩壓電路:LM7812為光耦和繼電器提供12V穩壓電源;MC34063輸出5V電壓為液晶12864供電;同時,5V電壓通過降壓芯片ASM1117后輸出3.3V電壓為CC2530供電[3]。

圖3 系統電源電路
NTC熱敏電阻是一種以過渡金屬氧化物為主要原材料,采用電子陶瓷工藝制成的熱敏半導體陶瓷組件,其電阻值隨溫度的升高而降低。電阻溫度特性可以近似地表示為:
RT=RNexp[B(1/T-1/TN)]
(1)
式中B——NTC熱敏電阻特定的材料常數;
RN、RT——NTC在額定溫度TN和溫度T時的電阻值,Ω;
T——溫度, K;
TN——額定溫度, K。
由于B值隨溫度變化,因此式(1)只能以一定的精度來描述額定溫度或電阻值附近的有限范圍[4]。本系統選用B=3950的NTC熱敏電阻CWF2-502F3950,基于精確的R-T曲線,采用查表方式對溫度進行精確的測量[5]。
從R-T關系表中可以查出NTC的測溫范圍為-55~125℃,電阻值的變化范圍為242.64~250 062Ω,這么大的變化范圍給ADC測量帶來了困難,因此系統采用由NTC熱敏電阻和精密電阻Rm(10kΩ)構成的串聯分壓電路測量鍋爐溫度,測量電路如圖4所示。CC2530的ADC有14位的精度,表中溫度對應的ADC轉換后的數字量為:

(2)

圖4 測量電路
將式(2)的計算結果以表格形式保存在內存中。
在ADC進行數據采集的過程中不可能每一個數值都在整數溫度對應的ADC數值上,因此若采集的數據在兩個數據中間就要對其進行進一步的精確定位,這就要求知道采集的數據在表的具體位置,因此要對數據進行搜索、查找。如果出現非整數溫度的情況,可以利用線性插值法提高測量溫度的精度[6]。
插值求得的溫度值實際是直線L擬合溫度曲線T,這樣的做法難免有一定的誤差,但可以控制在允許的范圍內,線性插值原理如圖5所示。

圖5 線性插值原理
已知點(X1,Y1)和(X2,Y2),求(Xi,Yi)。由兩點可以得到直線L的方程為:

(3)
點(X1,Y1)和(X2,Y2)為相鄰溫度點,所以有X2-X1=1,則:

(4)
這樣將ADC轉換來的數值代入式(4)就可得到相應的溫度值。
插值計算出來的值是小數,需要對其進行特殊處理:基于定點計算思想,首先把數據規格化,將小數點定在第六位(即計算數值放大64倍)進行計算,得到的溫度數據縮小64倍后就是實際溫度值。小數點定的位數越高,計算精度越高。插值計算是分段的,因此在處理過程中分段越細致,擬合的曲線越接近實際溫度曲線[7]。
ZigBee協調器的工作流程如圖6所示。協調器負責ZigBee網絡的建立、允許測溫節點加入網絡和數據收發與處理。同樣,監控軟件通過建立的網絡將數據傳輸到測溫節點。協調器在不采集狀態時處于休眠狀態,即測溫節點不被查詢[8]。

圖6 ZigBee協調器的工作流程
ZigBee測溫節點工作流程如圖7所示。測溫節點一旦被查詢就開始采集溫度,采集到溫度濾波后傳送到CC2530,再發送數據到上位機。如果溫度值超過設定值,CC2530控制繼電器動作。

圖7 ZigBee測溫節點工作流程
鍋爐監控系統由LabVIEW編寫,用VISA開發串口通信模塊。加載窗口,設定相關串口通信參數。打開串口后可以利用上位機接收、上傳、顯示和保存數據[9],上位機工作流程如圖8所示。

圖8 上位機工作流程
將整個系統安裝完畢后,測量鍋爐降溫過程中的溫度。為了減小人為測量誤差,將標準溫度計(精度0.1℃)測溫觸點和NTC熱敏電阻固定在一起。系統供電后,通過監控軟件設置ZigBee測溫節點系統時間及溫度上/下限值等,并將設置信息存入AT24C02。同時,在相同時刻讀取溫度計溫度和監控軟件顯示溫度(保留兩位小數點),這里僅列出部分測量結果(表1)。

表1 測溫結果 ℃
從表1可以看出:ZigBee測溫節點的測溫誤差控制在2.00℃以內,測量結果達到了設計要求。
筆者介紹的鍋爐控溫系統結合了NTC熱敏電阻和ZigBee無線通信技術的優點,構成了智能無線網絡化的監控系統,其測量精度較高,數據傳輸速度穩定,同時可以根據用戶的要求設置測溫節點的數目,滿足了鍋爐測溫需求,也可應用于智能家居及農業生產等領域。
[1] 馬正華,王順先,周炯如.爐溫遠程監控系統的設計[J].中國科技論文,2012,7(7):567~570.
[2] 唐洪富,張興波.基于STC系列單片機的智能溫度控制器設計[J].電子技術應用,2013,39(5):86~88.
[3] 童詩白,華成英.模擬電子技術基礎[M].北京:高等教育出版社,2001:20~264.
[4] 梅小雨,許昌,魏艷紅.基于對數的NTC熱敏電阻測溫系統的設計[J].自動化與儀表,2011,26(5):54~57.
[5] 周以琳,李金亮,楊勇,等.NTC熱敏電阻R-T特性的高精度補償[J].青島科技大學學報(自然科學版),2010,31(1):80~82.
[6] 趙軍,謝作品,吳珂.NTC熱敏電阻線性化新方法[J].電測與儀表,2006,43(1):12~14.
[7] 程雙雙,姜平,肖紅升,等.NTC熱敏電阻分段曲線擬合[J].煤礦機械,2009,30(10):41~43.
[8] 李新慧,俞阿龍,潘苗.基于CC2530的水產養殖監控系統的設計[J].傳感器與微系統,2013,32(3):85~88.
[9] 吳后平,張振東,郭輝.基于LabVIEW的汽車壓力空調開關性能檢測系統[J].儀表技術與傳感器,2014,(1):64~66.