新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 利用ATmega16L設(shè)計(jì)的溫度控制系統(tǒng)

利用ATmega16L設(shè)計(jì)的溫度控制系統(tǒng)

作者: 時(shí)間:2010-04-22 來源:網(wǎng)絡(luò) 收藏

  (4)增量式PID處理程序 該具有滯后性、時(shí)變性和非線性,不可能建立該系統(tǒng)的精確數(shù)學(xué)模型,因此如果使用常規(guī)的線性控制理論,要達(dá)到滿意的控制效果非常困難。采用 增量式數(shù)字PID控制器,可解決這個(gè)難題。

  增量式PID是指數(shù)字控制器的輸出只是控制量的增量,由于計(jì)算機(jī)輸出的是增量,所以誤動(dòng)作時(shí)對(duì)輸出的影響較小??刂圃隽康拇_定僅與最近的k、k-1、k-2次的采樣有關(guān),所以能夠較容易地通過加權(quán)處理而獲得較好的控制效果。另外,對(duì)于數(shù)字,由于A/D轉(zhuǎn)換器位數(shù)的限制,其輸出控制量受最小和最大值的限制,系統(tǒng)加入抗積分飽和法對(duì)其優(yōu)化。圖5為增量式PID控制算法程序流程。

  以下是增量式PID控制的程序代碼:

  (5)串行通信程序 系統(tǒng)與上位計(jì)算機(jī)之間采用RS-488的串行數(shù)據(jù)傳輸方式。單片機(jī)采用中斷方式接收數(shù)據(jù),而發(fā)送數(shù)據(jù)則采用查詢方式。

  (6)顯示處理程序 LCD-TC1602A LCD接口采用4位控制方式,使用4位數(shù)據(jù)線D4~D7控制時(shí)序分兩次傳送,先傳送高4位數(shù)據(jù),再傳送低4位數(shù)據(jù)。

  (7)數(shù)據(jù)讀寫處理程序 ATmega16單片機(jī)內(nèi)部集成有512 B的EEPROM,它是作為一個(gè)獨(dú)立的數(shù)據(jù)空間而存在的。ATmesa16單片機(jī)通過對(duì)相關(guān)寄存器的操作實(shí)現(xiàn)對(duì)EEPROM按字節(jié)讀寫。

  (8)看門狗處理程序 ATmega16單片機(jī)內(nèi)部集成有硬件看門狗,看門狗由片內(nèi)獨(dú)立的振蕩器驅(qū)動(dòng),設(shè)置看門狗的步驟為:先初始化并打開看門狗,然后把喂狗指令放在循環(huán)程序中。

  4 系統(tǒng)測(cè)試分析

  各個(gè)模塊測(cè)試完成后,將下位機(jī)由測(cè)試端的硬件通過串口與PC機(jī)連接,構(gòu)成完整的測(cè)試系統(tǒng)。在上位機(jī)中運(yùn)行Visual Basic編寫的監(jiān)控程序,通過下位機(jī)的鍵盤設(shè)置加熱爐為80℃.單擊“打開通信端口”,選擇所要通信的端口后,單擊“開始測(cè)溫”,這時(shí)下位機(jī)就會(huì)向上位機(jī)發(fā)送實(shí)時(shí)溫度值,并實(shí)時(shí)繪出溫度趨勢(shì)曲線。

  當(dāng)單擊“結(jié)束”時(shí),整個(gè)系統(tǒng)停止工作。上位機(jī)顯示的溫度趨勢(shì)曲線如圖6所示,測(cè)試結(jié)果顯示,該系統(tǒng)對(duì)加熱爐溫度的采集和控制比較準(zhǔn)確。

  5 結(jié)束語

  充分AVR ATmega16單片機(jī)的內(nèi)部資源,系統(tǒng)集成 度高,系統(tǒng)增量式PID算法改變PWM的輸出值,然后控制可控硅的開關(guān),最終使被控對(duì)象的溫度值趨向于給定的溫度值。該系統(tǒng)操作容易、可靠性好,具有較高的實(shí)用價(jià)值。就其采樣頻率和分辨率來說屬于中速類型,適合于對(duì)數(shù)據(jù)采樣頻率要求不是特別高的應(yīng)用場合。


上一頁 1 2 下一頁

評(píng)論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉