摘要:設計一種適用于工業測量領域的溫度變送器。該系統以單片機技術為核心,將 8 路 Pt100 溫度傳感器輸出信號轉變為與所測溫度呈線性關系的 8 路 4~20 mA 電流信號,支持 RS485 總線,其采用的數據傳輸方式與硬件電路設計能將所測溫度以數字信號向外輸出,支持工業的局域網絡。
1 引言
溫度變送器主要應用于工業過程中溫度參數的測量和控制,是一種不可或缺的測量設備。其工作原理是將接收到的溫度信號轉化為后置電路可接收并傳送的標準信號或者是滿足通信協議要求的信號。傳統的溫度變送器在需要改變量程范圍時,一般通過對兩個電位器進行調零和調滿處理來達到相應效果[1]。但是這樣做很可能會產生溫度漂移現象而導致測量結果不準確。隨著計算機技術的發展,利用微型計算機改造傳統的測量儀器,研發更加先金的智能儀表已經成為儀表開發的新方向。本課題給出了以單片機為核心利用軟測量技術實現溫度變送的設計方案。
2 系統設計
系統主要由前向通道、主機電路、后向通道、通訊電路以及供電電源電路構成。系統的總體結構框圖如圖 1 所示。
3 電路設計
系統硬件電路是以 AT89C55 單片機為主控芯片,以 Pt100 測溫金屬熱電阻作為溫度傳感器,并配合電源電路和其他外圍電路組成。
3.1 前向通道
前向通道由檢測電路、多路模擬開關、放大器和 A/D 轉換器四部分組成。檢測電路的主要作用是對來自傳感器、變送器的信號進行濾波處理,同時將該非電壓信號轉變成電壓信號。本設計采用 8 路惠斯登電橋來接收 8 路來自溫度傳感器的輸出信號以實現檢測電路的功能。
測溫熱電阻 Pt100 采用 3 線連接的方式接入電路,其主要優點是可以利用橋路對稱平衡的特點來克服長距離傳輸時,由 Pt100 引線電阻引起的信號偏差、供電電源電壓波動、以及橋路電阻溫度漂移的影響等問題導致的誤差。
CD4052 多路模擬開關的供電電源為 3~20 V,#大通道數為 4[2],設計中通過加入多路模擬開關來接收多路輸入的模擬信號,并按照時分多路連接的原理,分別將信號傳送至后級的電路中去,使得多路輸入的模擬信號可以共用同一套后級電路,以此來降低設計成本。
放大電路采用差動放大器放大來自前級電路的雙端信號。本設計采用的 ICL7135A/D 轉換器是美國 INTERSIL 公司生產的一款雙向積分式的 A/D 轉換器,抗干擾能力強。
3.2 主機電路
AT89C55 是一種內存為 256 Byte 的 8 位單片機,有 6 個中斷源和兩級的優先中斷級,32 根可編程 I/O 接口線,1 個 WDT 硬件定時器,工作電壓 4~5.5 V,16 位定時器/計數器,可重復編程,重復次數可達 1 000 次,采用 0~24 MHz 的石英晶體元件[3]。8 位單片機足以滿足要求。
3.3 后向通道
后向通道的主要作用是擔任信號的輸出通道,從而實現單片機對外部設備的控制。單片機處理完的數字信號需要經 D/A 轉換電路處理轉化為模擬信號,再經由電流轉換電路將信號線性的轉變為 4~20 mA 的后置電路可接收的標準電流信號輸出。D/A 轉換電路是由一個 8 路模擬開關 CD4051、1 個 D/A 轉換器 TLC5615 以及 8 套模擬保持電路構成[4]。其中,U1 TLC5615 是一種 10 位的串行輸入 D/A 轉換器。
CD4051 可根據單片機的 P2.4、P2.5 和 P2.6 三個引腳的高低電平狀態,使 D/A 轉換的模擬電壓輸出到不同的保持電路中去。當三個引腳均為低電平時,TLC5615 的模擬輸出電壓通過 CD4051 接通 X0 通道,向輸出保持電容 C1 充電。如果電容 C1 為 0.01μF 時,充電可在 10 s 內完成,當三個引腳的電平發生變化時,開關將會切換到其他的通道,此時這個輸出的回路就會對電壓信號起到保持的作用。D/A 轉換器的輸出方式為動態刷新,每 2 ms 打開一路,從 0 路到 7 路反復進行,不停止。
3.4 通信接口
通信接口的設計采用 RS485 總線。MAX485、MAX487 以及 MAX1487 是用于 RS485 總線通信的低功耗收發器,每個器件中都具有一個驅動器和一個接收器[5]。本設計中采用的 MAX487 工作在 5 V 單電源下,額定電流為 300 mA,采用半雙工的通訊方式工作,負載數為 32,有 8 個引腳。實際應用時將單片機控制端 RE 與 DE 連接在一起與單片機 P1.7 引腳相連。P1.7 高電平時為發送狀態,低電平時則為接收狀態。
4 軟件設計
根據系統結構和功能需求軟件設計過程中的重點是數據采集、處理和通信服務兩個部分。整機軟件流程圖如圖 2 所示。
4.1 初始化
初始化程序僅需在開機時運行一次。系統的初始化就是將變量賦予一個默認值,再將被控制的元器件賦予成默認狀態,將系統還原成一開始的狀態。初始化程序主要的作用就是用來實現各種硬件的功能配置,其中包括:定時器/計數器、串行通信、中斷系統、RAM 等。
4.2 檢測周期的實現
根據工業上的需要,本設計將檢測周期設定為 0.1 s。定時器的工作方式為方式 2,當 M0 和 M1 為 10 時,T1 和 T0 就會在方式 2 的狀態下進行工作。在方式 2 的工作中,定時器/計數器為 8 位,可以自動的恢復為初始值狀態,作為一種 8 位計數器,TL1 計數在溢出的時候,就會將置“1”溢出標志 TF1,同時也將 TH1 中的常數送到 TL1,此時,初始值開始重新計數。
本次設計規定從 6 開始計數,頻率為 1 2 MHz,T0 的溢出周期為 250 μs,每計 250 個數就會有一次溢出,每次計數時間為 1 μs,內部 RAM 的 30H 單元中,地衣個字節記錄溢出的次數,31H 單元記錄時間,單位 ms。每次溢出次數達到 4 次時,31H 單元+1。8 路信號按序單好輸入單片機,一個周期輸入 8 次。
4.3 數據采集與數據處理
設計中用到的 9 路數據通道,其中,0 路是動態零點數據,另外的 1~8 路是溫度數據。然后,要對信號進行穩零的處理,#后就是溫度的計算,并且要通過 A/D 轉換器來打開下一個流程的通道。
4.4通信服務
通信服務的任務是對來自網絡的所有信息進行響應服務。串行通信在接到信息后,CPU 便會被迫進入中斷程序中,并且執行通信服務的程序。
在通信服務程序中,必須要分析判斷接收的命令是否為主機調度的命令,若不是,則要退出中斷服務,若是,則根據通信協議,針對不同的命令做出相應的不同的反映。主機只能夠通過從機專屬的通信地址來發送命令,并且,在主機發出命令之后,要等待從機進行響應。如若本次連接超時,則主機將自動的中斷本次通信,重新發送控制命令。
5 結語
基于 Pt100 和單片機的溫度變送器能夠實現將 8 路 Pt100 溫度傳感器輸出的信號轉變為相應的 8 路 4~20 mA 電流信號,以滿足后級 DCS 等系統的應用,同時要能夠支持 RS485 總線,并且能將 8 路傳感器輸出的信號轉變為數字信號在局域網絡中共享。