基于ATmega16L單片機的溫度控制系統(tǒng)設計
以下是增量式PID控制的程序代碼: 本文引用地址:http://www.ex-cimer.com/article/173433.htm
(5)串行通信程序 系統(tǒng)與上位計算機之間采用RS-488的串行數(shù)據傳輸方式。單片機采用中斷方式接收數(shù)據,而發(fā)送數(shù)據則采用查詢方式。
(6)顯示處理程序 LCD-TC1602A LCD接口設計采用4位控制方式,使用4位數(shù)據線D4~D7控制時序分兩次傳送,先傳送高4位數(shù)據,再傳送低4位數(shù)據。
(7)數(shù)據讀寫處理程序 ATmega16單片機內部集成有512 B的EEPROM,它是作為一個獨立的數(shù)據空間而存在的。ATmesa16單片機通過對相關寄存器的操作實現(xiàn)對EEPROM按字節(jié)讀寫。
(8)看門狗處理程序 ATmega16單片機內部集成有硬件看門狗,看門狗由片內獨立的振蕩器驅動,設置看門狗的步驟為:先初始化并打開看門狗,然后把喂狗指令放在循環(huán)程序中。
4 系統(tǒng)測試分析
各個模塊測試完成后,將下位機由測試端的硬件通過串口與PC機連接,構成完整的溫度測試系統(tǒng)。在上位機中運行Visual Basic編寫的監(jiān)控程序,通過下位機的鍵盤設置加熱爐溫度為80℃.單擊“打開通信端口”,選擇所要通信的端口后,單擊“開始測溫”,這時下位機就會向上位機發(fā)送實時溫度值,并實時繪出溫度趨勢曲線。
當單擊“結束”時,整個系統(tǒng)停止工作。上位機顯示的溫度趨勢曲線如圖6所示,測試結果顯示,該系統(tǒng)對加熱爐溫度的采集和控制比較準確。
5 結束語
充分利用AVR ATmega16單片機的內部資源,系統(tǒng)集成 度高,系統(tǒng)利用增量式PID算法改變PWM的輸出值,然后控制可控硅的開關,最終使被控對象的溫度值趨向于給定的溫度值。該系統(tǒng)操作容易、可靠性好,具有較高的實用價值。就其采樣頻率和分辨率來說屬于中速類型,適合于對數(shù)據采樣頻率要求不是特別高的應用場合。
評論