陳益飛
CHEN Yi-fei
(鹽城工學院,鹽城 224051)
單片微型計算機是隨著超大規(guī)模集成電路技術的發(fā)展而誕生的,由于它具有體積小、功能強、性價比高等特點,所以廣泛應用于電子儀表、家用電器、節(jié)能裝置、軍事裝置、機器人、工業(yè)控制等諸多領域,使產品小型化、智能化,既提高了產品的功能和質量,又降低了成本,簡化了設計。本文主要介紹單片機在溫度控制中的應用。
溫度是工業(yè)生產中常見的工藝參數之一,任何物理變化和化學反應過程都與溫度密切相關,因此溫度控制是生產自動化的重要任務。采用單片機作為鍋爐水溫閉環(huán)控制系統(tǒng)的控制核心,實現(xiàn)人工設定溫度,自動控制溫度,顯示水的實時溫度等功能。水溫測試方式采用數字溫度傳感器感知鍋爐中水的溫度,通過單片機與數字溫度傳感器通訊獲得實時溫度,并通過程序實現(xiàn)閉環(huán)控制。采用鍵盤掃描方式對目標溫度(0℃~80℃或20~60℃范圍內)進行人工設定,并用顯示器顯示水的實時溫度、給定溫度及溫度范圍。同時系統(tǒng)還通過繼電器電路控制加熱器件的導通與關閉,達到保持設定溫度基本不變的目的,并起到強弱點隔離作用,安全可靠。因此,單片機對溫度的控制問題是一個工業(yè)生產中經常會遇到的問題。
基于AT89S52單片機的鍋爐溫度控制系統(tǒng)的硬件設計和軟件開發(fā)的過程。硬件部分包括溫度傳感器DS18B20、LED數碼管顯示、報警電路以及按鍵功能。首先由溫度采集測控系統(tǒng)采用DS18B20滿足溫度測量,并將溫度信號轉換成電流,轉換為電壓信號,之后該信號經預處理后,進行A/D轉換,獲得的有關被監(jiān)控環(huán)境溫度的數字量,發(fā)送給單片機處理。它與其他形式的溫度傳感器相比,不需要進行冷端補償,而且它是以高阻抗恒流源形式輸出。傳輸線上的壓降不影響輸出電流值,可以進行遠距離傳輸。單片機對經A/D轉換之后的環(huán)境溫度進行接收,對接收到的環(huán)境溫度信號進行BCD碼轉換,發(fā)送給顯示模塊。之后,單片機將接收到的溫度數據與事先設定的溫度值進行對比,如果當前環(huán)境溫度超出了設定的溫度范圍,則進行調控。同時還要實現(xiàn)溫度報警功能,若超出了監(jiān)控溫度范圍則發(fā)出警告。此外還有復位電路,晶振電路等。鍋爐溫度測控系統(tǒng)原理框圖如圖1所示。
圖1 鍋爐溫度測控系統(tǒng)框圖
1.1 控制器模塊
采用AT89S52作為系統(tǒng)的控制器。單片機算術運算功能強,軟件編程靈活,自由度大,可用軟件編程實現(xiàn)各種算法,并且具有低功耗,高性能,技術成熟,成本低廉等有點,使其在各個領域應用廣泛。
1.2 水溫探測模塊
水溫探測模塊用于測量器皿中水的溫度。系統(tǒng)需要利用測溫傳感器檢測出水的實時溫度,是控制模塊做出正確的反應,控制水的溫度。
采用單總線可編程溫度傳感器DS18B20測溫度。DS18B20是數字溫度傳感器。它把溫度傳感器、外圍電路、A/D轉換器、微控制器和接口電路集成到一個芯片中構成的具有溫度測量、溫度控制和與微處理器數據連接能力的溫度傳感器組件稱為數字溫度傳感器。通過DS18B20數字可編程溫度傳感器可測溫范圍-55℃~+125℃,在-10~+85℃時精度為 0.5℃??删幊痰姆直媛蕿?~12位,對應的可分辨溫度分別為0.5℃、0.25℃、0.125℃和0.0625℃,可實現(xiàn)高精度測溫。在9位分辨率時最多在93.75ms內把溫度轉換為數字,12位分辨率時最多在750ms內把溫度值轉換為數字,速度更快。測量結果直接輸出數字溫度信號,以"一線總線"串行傳送給CPU,同時可傳送CRC校驗碼,具有極強的抗干擾糾錯能力。并且其所需輔助電路簡單,依靠程序直接讀取溫度,總費用低。
1.3 顯示模塊
使用液晶顯示屏顯示水溫。液晶顯示屏(LED)具有輕薄短小,低耗電量,無輻射危險,平面直角顯示以及影像穩(wěn)定不閃爍等優(yōu)勢,可視面積大,畫面效果好,分辨率高,抗干擾能力強等特點,且顯示更為人性化,電路焊接更為簡單。
1.4 水溫控制模塊
控制模塊用來控制加熱器件的導通與關閉,從而達到控制加熱時間,控制水溫的目的。采用繼電器驅動電路控制。繼電器是一種電子控制器件,它具有控制系統(tǒng)(又稱輸入回路)和被控制系統(tǒng)(又稱輸出回路),通常應用于自動控制電路中,它實際上是用較小的電流去控制較大電流的一種“自動開關”。故在電路中起著自動調節(jié)、安全保護、轉換電路等作用。電磁式繼電器一般由鐵芯、線圈、銜鐵、觸點簧片等組成的。只要在線圈兩端加上一定的電壓,線圈中就會流過一定的電流,從而產生電磁效應,銜鐵就會在電磁力吸引的作用下克服返回彈簧的拉力吸向鐵芯,從而帶動銜鐵的動觸點與靜觸點(常開觸點)吸合。當線圈斷電后,電磁的吸力也隨之消失,銜鐵就會在彈簧的反作用力返回原來的位置,使動觸點與原來的靜觸點(常閉觸點)吸合。這樣吸合、釋放,從而達到了在電路中的導通、切斷的目的。對于繼電器的“常開、常閉”觸點,可以這樣來區(qū)分:繼電器線圈未通電時處于斷開狀態(tài)的靜觸點,稱為“常開觸點”;處于接通狀態(tài)的靜觸點稱為“常閉觸點”。
1.5 超溫報警電路的設計
超溫報警電路由LED燈與電阻組成。當溫度超過設定的溫度控制范圍時,則燈亮,并且蜂鳴器鳴叫。
通常,鍋爐溫度控制都采用偏差控制法。偏差控制的原理是先求出實測爐溫對所需爐溫的偏差值,然后對偏差值處理獲得控制信號去調節(jié)鍋爐的加熱功率,以實現(xiàn)對爐溫的控制。在工業(yè)上,偏差控制又稱PID控制,這是工業(yè)控制過程中應用最廣泛的一種控制形式,一般都能收到令人滿意的效果。不同的控制對象,所采用的算法有所不同。例如對于熱慣性大、時間滯后明顯、耦合強、難于建立精確數學模型的大型立式淬火爐,可以采用人工智能模糊控制算法,通過對淬火爐電熱元件通斷比的調節(jié),實現(xiàn)對爐溫的自動控制,也可以采用仿人智能控制(SHIC)算法和PID控制算法的聯(lián)合控制方案,實際應用時應靈活運用。本系統(tǒng)采用的是Keil Elektronik Gmbh 開發(fā)的KeiluVision2工具軟件來進行系統(tǒng)軟件編寫和調試的。在嵌入式系統(tǒng)中,相對于匯編語言,C語言作為一種高級語言主要存在兩個不足:1)生成的可執(zhí)行代碼冗長,效率不高。對于這一點,隨著處理芯片運算速度的提高、集成ROM的擴大,特別編譯系統(tǒng)的不斷優(yōu)化,冗長已經不再是問題。這也是C在嵌入式系統(tǒng)中逐漸成為主流編程語言的主要原因之一。2)C生成的可執(zhí)行代碼在時序上不容易控制,比如本系統(tǒng)中要實現(xiàn)的時序控制。主程序的主要功能是負責溫度的實時顯示、讀出并處理DS18B20的測量的當前溫度值,從而比較溫度值的大小,去執(zhí)行加熱電路。這個程序在讀完鍵盤要判斷啟動鍵是否啟動,才能進行溫度讀取,最后通過LED顯示出來。
圖2 主程序流程圖
2.1 顯示程序的設計
顯示子程序采用動態(tài)掃描法實現(xiàn)四位共陽極數碼管的數值顯示,測量所得的A/D轉換數據放在22h內存單元中,測量數據在顯示時轉換為溫度值十進制BCD碼放在23h~25h內存單元中。
2.2 DS18B20程序
溫度轉換命令子程序主要是發(fā)溫度轉換開始命令,轉換時間約為750ms。
1)初始化:初始化是DSl8B20的底層基本操作之一。通過單線總線進行的所有操作都從一個初始化序列開始。初始化序列包括一個由CPU發(fā)出的復位脈沖及其后由DS18B20發(fā)出的存在脈沖。存在脈沖讓CPU知道DS18B20在總線上且已做好操作準備。
2)數據寫:數據寫是DSl8B20的底層基本操作之一,所有的指令、數據發(fā)送均由該操作完成。DSl8B20的寫操作都是逐位進行的,因此,采用C5l中的位右移操作來實現(xiàn)。
3)數據讀:數據讀是DSl8B20的底層基本操作之一,溫度值和其他狀態(tài)信息的傳回均由該操作完成。
2.3 鍵盤程序
通過鍵盤可以人為的控制溫度,使其更為人性化;編程也簡單明了。確定啟動鍵開啟后,通過控制溫度上升鍵和下降鍵人為的去調節(jié)溫度,再回到讀鍵盤這樣一個反復的動作。
為了檢驗該系統(tǒng)的性能,對其進行仿真實驗。首先通過KEIL C51軟件仿真實現(xiàn)程序調試的功能,再通過軟件PROTEUS進行軟硬件模擬連調。設目標溫度范圍為20~60℃,設定溫度為45℃,相應的鍋爐溫度調節(jié)時間結果記錄如表1所示。
表1 鍋爐溫度調節(jié)時間結果記錄
由表1分析可知,溫差相同時,升溫時間比降溫時間要快,原因在于升溫采用電阻絲加熱,而降溫采用的是12V普通風扇降溫,效率較低。若采用加熱致冷芯片來完成升溫和降溫則溫度穩(wěn)定時間會更少。
本次研究借助于經典控制理論和現(xiàn)代控制理論的結合,PID 控制算法是一種易于實現(xiàn)而且經濟實用的方法,具有很強的靈活性,但在被控制對象具有復雜的非線性時,難以滿足控制要求,而神經網絡PID 控制具有逼近任意非線性函數的能力,神經網絡PID實現(xiàn)對鍋爐溫度的測量、控制和顯示,提高了鍋爐監(jiān)控系統(tǒng)的效率?;贏T89S52單片機的溫度測控系統(tǒng)將LED顯示器件與控制、驅動集成電路裝在一起,形成一個功能部件,最后通過硬件焊接實現(xiàn)了鍋爐的溫度控制系統(tǒng)的設計。用戶只需用傳統(tǒng)工藝即可將其裝配成一個整機系統(tǒng)。這對于工業(yè)自動化大生產具有一定的實踐使用價值。
[1]楊恒主.ARM嵌入式系統(tǒng)設計及實踐[M].西安電子科技大學出版社,2005.
[2]田東風.WINDOWS CE應用程序設計[M].機械工業(yè)出版社,1990.
[3]傅曦.嵌入式系統(tǒng)Windows CE開發(fā)技巧與實例[M].化學工業(yè)出版社,2004.
[4]葉宏材.Windows CE.NET嵌入式工業(yè)用控制器及自動控制系統(tǒng)設計[M].清華大學出版社,2005.
[5]楊恒主.ARM嵌入式系統(tǒng)設計及實踐[M].西安電子科技大學出版社,2005.
[6]朱義君.ARM微控制器體系結構與開發(fā)實例[M].北京航空航天大學出版社,2005.
[7]金以慧.過程控制 [M].北京:清華大學出版社,2005:118-123.
[8]俞金壽,蔣慰孫.過程控制工程第3版 [M].北京:電子工業(yè)出版社,2007-07:68-80,240-250.
[9]施金良,賈碧.微機控制的熱絲法物質熔點測定儀[J].檢測與儀表,1998,3:36-38.
[10]孫瑩.單片機在熔點測試儀中的應用 [J].儀器儀表用戶,2002,9(2):28-30.