基于ATmega16單片機的實時溫度采集與分析系統
摘要:溫度是工農業生產中很重要的的參數,它直接影響到產品的質量與性能。提出了一種基于ATmega16單片機與溫度傳感器相結合的實時溫度采集與分析系統。本系統介紹了以ATmega16單片機為核心,以及自動化控制裝置GTJJ4-10A固態繼電器和數字溫度傳感器DS18B20,報警與指示電路等,在分析中基于MFC的軟件處理。其中包括溫度曲線的繪制,以及溫度值的保存,顯示歷史記錄等。在經過燒水溫度的測試,該系統穩定可靠便于分析。溫度誤差0.5℃,可以滿足工農業生產的要求。
關鍵詞:ATmega16單片機;DS18B20溫度傳感器;固態繼電器;溫度曲線繪制
隨著計算機技術尤其是單片微型機技術的發展,溫度對人們的生活與工作影響很大,所以要實時采集溫度并且對其進行分析。為此,實現實時準確的測量監控。采用串口傳送數據并且在PC機上進行分析。由于單片機的控制方便、簡單和靈活等優點,采用了高性能avr單片機來控制GTJ4-10A固態繼電器,最總實現溫度的控制。從而最總在PC機上繪制溫度曲線并保存數據和分析溫度的數據。
1 系統組成及基本原理
本系統由溫度采集模塊,固態繼電器控制模塊,單片機模塊,PC機軟件處理模塊。4個模塊加起來實現溫度的控制,以及溫度采集和溫度經過軟件處理的分析。它們的邏輯關系如圖1所示。
本系統的任務是對某種特定環境的溫度進行采集并進行保存和再顯示,通過單片機去控制固態繼電器,從而控制其溫度值的大小,再通過PC機實時顯示當前的溫度,并對當前的溫度進行分析與保存。便于與以后的溫度值進行對比等應用。首先由ATmega16單片機控制GTJ4-10A固態繼電器從而控制交流電,再達到控制溫度值的大小,這個時候通過DS18B20溫度傳感器對當前的溫度值進行采集。將采集的數據結果通過Tx送給單片機,單片機將達到的溫度值一方面通過串行通訊端口送給計算機,另一方面將溫度數據進行對比分析,再通過IO控制GTJ4-10A固態繼電器。從而實現了溫度值控制。另一方面PC機得到的溫度值送給MFC軟件繪制溫度曲線,同時通過保存按鈕將溫度值以及采集當前溫度的時間記錄下來。然后再經過顯示按鈕將溫度值和時間顯示出來。這就是對溫度的實時采集與分析。
2 硬件部分設計
本系統主要采用高性能AVR單片機,GTJ4-10A固態繼電器,DS18B20溫度傳感器,報警輸出電路。主要系統電路圖略。
2.1 ATmega16單片機簡介
ATmega16是基于增強的AVR RISC結構的低功耗8位CMOS微控制器。由于其先進的指令集以及單時鐘周期指令執行時間,ATmega16的數據吞吐率高達1 MIPS/MHz,從而可以減緩系統在功耗和處理速度之間的矛盾。ATmega16AVR內核具有豐富的指令集和32個通用工作寄存器。所有的寄存器都直接與運算邏單元(ALU)相連接,使得一條指令可以在一個時鐘周期內同時訪問兩個獨立的寄存器。這種結構大大提高了代碼效率,并且具有比普通的CISC微控制器最高至10倍的數據吞吐率。因此可以很好進行數據傳送以及對繼電器的控制和溫度的采集。
2.2 溫度采集模塊
DS18B20采用Dallas獨有的單總線協議,溫度轉換結果可選擇為9-12位,最大轉換時間在轉換結果為12位時為750 ms,可通過讀取DS18B 20的狀態值判斷其是否轉換完畢。其測溫范圍為-55~+125℃,精度在范圍內為±0.5℃。
評論