在工業(yè)控制領(lǐng)域,溫度控制的應(yīng)用非常廣泛,控制精度的高低直接影響到產(chǎn)品的質(zhì)量及使用壽命,研究和設(shè)計(jì)高性能的溫度控制系統(tǒng)具有非常重要的意義。目前控制算法的多樣化也為溫度控制提供了便利條件,應(yīng)用較為普遍的有比例積分微分(PID)控制、模糊控制等。本文根據(jù)某溫控設(shè)備的控制要求設(shè)計(jì)了一種以單片機(jī)為核心的監(jiān)控系統(tǒng)。系統(tǒng)采用熱電偶溫度傳感器測溫,利用位置式PID算法,實(shí)現(xiàn)了溫度的實(shí)時(shí)監(jiān)測、超限報(bào)警、顯示與控制等功能。 1 系統(tǒng)硬件設(shè)計(jì) 本系統(tǒng)主要由熱電偶溫度傳感器、OP27低噪聲精密運(yùn)算放大器、雙積分型A/D轉(zhuǎn)換器ICL7135、可編程定時(shí)/計(jì)數(shù)接口芯片8253、AT89C51單片機(jī)等器件組成。系統(tǒng)框圖如圖1所示。 1.1 電源模塊 電源模塊分模擬電源和數(shù)字電源兩大部分,分別對本機(jī)的模擬電路和數(shù)字電路供電,地線各自獨(dú)立,按A/D轉(zhuǎn)換器的要求只在A/D轉(zhuǎn)換器處將模擬地和數(shù)字地相連。數(shù)字電源和模擬電源都采用三端穩(wěn)壓塊穩(wěn)壓,在個(gè)別要求電源精度較高的場合選用低溫漂穩(wěn)壓二極管進(jìn)行二級穩(wěn)壓。 1.2 溫度采集模塊 溫度數(shù)據(jù)采集模塊以熱電偶溫度傳感器為核心部件,將溫度變化量轉(zhuǎn)化為電壓信號,經(jīng)精密運(yùn)算放大器OP27進(jìn)行放大,放大后的電壓信號輸出到ICL7135雙積分型A/D轉(zhuǎn)換器進(jìn)行高精度模數(shù)轉(zhuǎn)換。A/D轉(zhuǎn)換后,往往要進(jìn)行相應(yīng)的換算,得到系統(tǒng)所需要的數(shù)據(jù)。之后將數(shù)據(jù)送往單片機(jī),此信號一部分送往顯示模塊,以提供實(shí)時(shí)數(shù)據(jù)的顯示;另一部分送往控制模塊,將實(shí)時(shí)數(shù)據(jù)與目標(biāo)數(shù)據(jù)對比,繼而進(jìn)行控制。圖中采用8253接口電路是為系統(tǒng)升級為具有多路溫度檢測控制功能而設(shè)置的。 1.3 輸出控制 輸出控制電路主要包括驅(qū)動(dòng)和執(zhí)行兩部分。可用達(dá)林頓陣列ULN2003來作驅(qū)動(dòng),進(jìn)而控制交流固態(tài)繼電器(AC-SSR)中的雙向可控硅的關(guān)斷和導(dǎo)通,以便切斷或接通加熱電源。原理是采用雙向可控硅交流“調(diào)功”方式控制加熱電熱絲發(fā)熱量,即在每一個(gè)控制周期時(shí)間內(nèi),改變加在電熱負(fù)載上交流電壓半波的個(gè)數(shù)來調(diào)節(jié)電熱絲的發(fā)熱量。 1.4 顯示與報(bào)警 顯示模塊由LED數(shù)碼管和驅(qū)動(dòng)電路組成。報(bào)警系統(tǒng)采用聲光報(bào)警由發(fā)光二極管,揚(yáng)聲器及驅(qū)動(dòng)電路組成,當(dāng)單片機(jī)發(fā)出超限報(bào)警信號,將驅(qū)動(dòng)發(fā)光二極管和揚(yáng)聲器實(shí)現(xiàn)報(bào)警。 1.5 看門狗電路 為了防止系統(tǒng)受干擾而使程序丟失,或走進(jìn)死循環(huán)而使系統(tǒng)死機(jī),應(yīng)加入看門狗電路,以保證系統(tǒng)的可靠性和穩(wěn)定性。本系統(tǒng)采用常用的集成看門狗電路X5045,X5045是一種集看門狗、電壓監(jiān)控和串行E2PROM三種功能于一體的可編程電路。 2 系統(tǒng)軟件設(shè)計(jì) 系統(tǒng)程序的控制思想如下:設(shè)置目標(biāo)溫度后,系統(tǒng)對爐溫采樣,并通過預(yù)設(shè)溫度、當(dāng)前溫度、歷史偏差等進(jìn)行PID運(yùn)算產(chǎn)生輸出參數(shù),通過該參數(shù)控制加熱時(shí)間,從而調(diào)節(jié)加熱器的平均功率,實(shí)現(xiàn)系統(tǒng)的PID控制。整體功能通過主程序、串行通信中斷服務(wù)程序、PID控制子程序等配合實(shí)現(xiàn)。這里主要介紹主程序流程和PID控制子程序流程。系統(tǒng)首先初始化I/O、8253、定時(shí)器、UART等部件,然后進(jìn)入主循環(huán),進(jìn)行溫度采樣和相關(guān)處理。本系統(tǒng)軟件設(shè)計(jì)的核心思想就在于實(shí)現(xiàn)PID控制,在系統(tǒng)運(yùn)行過程中通過按相應(yīng)鍵重新設(shè)置目標(biāo)溫度。主程序流程如圖2所示。 本方案利用位置式PID算法,將溫度傳感器采樣輸入作為當(dāng)前輸入,接著與設(shè)定值進(jìn)行相減得偏差,再進(jìn)行PID運(yùn)算產(chǎn)生輸出結(jié)果,然后控制定時(shí)器的時(shí)間進(jìn)而控制加熱器。由中斷定時(shí)器提供溢出頻率為64 Hz的中斷信號,配合主程序的PID運(yùn)算結(jié)果來確定加熱時(shí)間,實(shí)現(xiàn)加熱器功率調(diào)節(jié),該部分子程序流程圖如圖3所示。 上位機(jī)軟件使用Delphi,由于Delphi不提供串口通信的ActiveX控件,僅有API函數(shù)可以使用,但API函數(shù)編程較為復(fù)雜,因此可將微軟公司提供的Ac-tiveX控件Microsoft Communication Control 6.0(簡稱MSComm控件)引入到Delphi開發(fā)環(huán)境中,這樣用戶便可以像使用Delphi控件一樣方便地利用MSComm控件進(jìn)行計(jì)算機(jī)串口的通信編程。下面給出上位機(jī)命令的發(fā)送與數(shù)據(jù)接收的部分源程序: 3 系統(tǒng)調(diào)試 本系統(tǒng)的關(guān)鍵之處在于PID控制。對于PID系統(tǒng)來說,系統(tǒng)性能的好壞主要取決于PID控制參數(shù)的設(shè)定。由PID控制原理知;比例(P)控制能迅速反應(yīng)誤差,減小穩(wěn)態(tài)誤差;比例作用的加大,會(huì)引起系統(tǒng)的不穩(wěn)定。積分(I)控制的作用,只要系統(tǒng)有偏差存在,積分作用不斷地積累,輸出控制量以消除誤差;積分作用太強(qiáng)會(huì)使系統(tǒng)超調(diào)加大,甚至使系統(tǒng)出現(xiàn)振蕩。微分(D)控制可以減小超調(diào)量,克服振蕩,使系統(tǒng)的穩(wěn)定性提高,同時(shí)加快系統(tǒng)的動(dòng)態(tài)響應(yīng)速度,減小調(diào)整時(shí)間,從而改善系統(tǒng)的動(dòng)態(tài)性能。本系統(tǒng)要達(dá)到的目標(biāo)就是:反應(yīng)速度盡可能快,超調(diào)量盡可能小,穩(wěn)態(tài)誤差趨近于0。 為能在上位機(jī)上實(shí)時(shí)顯示溫度的變化曲線,調(diào)節(jié)PID系統(tǒng)關(guān)鍵參數(shù)KP,KD使系統(tǒng)處于最佳運(yùn)行狀態(tài)就顯得尤為重要。圖4給出了在4種情況下溫度隨時(shí)間變化的調(diào)試曲線。由圖可知:在KP=1.5,KD=1.0(溫升:20~40℃)時(shí),超調(diào)量過大;在KP=1.2,KD=1.0(溫升:40~60℃)時(shí),由于參數(shù)過小,系統(tǒng)的快速性不好,反應(yīng)比較遲鈍;在KP=-1.3,KD=1.0(溫升:30~50℃)時(shí),由于參數(shù)過小,系統(tǒng)的超調(diào)量比較大,而且預(yù)測性不好,造成溫度長時(shí)間超調(diào);在KP=1.3,KD=2.0(溫升:50~70℃)時(shí),選擇適中,系統(tǒng)的超調(diào)量很小,而且超調(diào)維持時(shí)間很短就會(huì)恢復(fù)平衡點(diǎn)。此時(shí)溫度控制指標(biāo)如下:靜態(tài)誤差:T≤0.5℃;分辨率:0.1℃;超調(diào)量:T≤0.5℃。這樣的情況下,系統(tǒng)運(yùn)行情況可以達(dá)到最好。 4 結(jié) 語 以單片機(jī)AT89C51為中心,設(shè)計(jì)了一種溫度監(jiān)控功能系統(tǒng)。該系統(tǒng)簡潔,溫度數(shù)據(jù)采集和運(yùn)算處理十分方便簡單,擴(kuò)展為多路溫度監(jiān)控系統(tǒng)容易。利用單片機(jī)的串行中斷,采用Delphi編制上下位機(jī)通信程序,在上位機(jī)直接實(shí)時(shí)顯示溫度的變化曲線,便于直接觀察控制的性能。通過調(diào)試找到了使控制最優(yōu)的PID參數(shù),在此情況下,系統(tǒng)運(yùn)行良好,表明了本系統(tǒng)設(shè)計(jì)的可行性和有效性。 |