基于SPCE061A的水溫監(jiān)控系統(tǒng)設(shè)計
摘要:采用單片機SPCE061A作為溫度監(jiān)控核心部件,結(jié)合PT100傳感器完成對水溫的采樣,通過數(shù)字濾波技術(shù)消除系統(tǒng)的干擾還原當前的溫度值,并且對采集到的溫度值進行比例積分微分運算處理,實現(xiàn)了一種水溫監(jiān)控系統(tǒng)的設(shè)計。測試結(jié)果表明,該系統(tǒng)具有良好的溫控能力。
關(guān)鍵詞:SPCE061A;單片機;溫度控制;PID;Pt100
溫度控制無論在工業(yè)控制領(lǐng)域還是消費電子領(lǐng)域應用都非常廣泛,如工業(yè)控制中的鍋爐、加熱爐的控制,消費電子領(lǐng)域的熱水器、飲水機的控制。內(nèi)部都涉及到溫度控制。且目前控制算法的豐富也為溫度控制提供了便利條件,應用較為普遍地有比例積分微分(PID)控制、模糊控制等。
1 系統(tǒng)硬件設(shè)計
本系統(tǒng)以SPCE061A為控制核心,包括傳感器電路、鍵盤和顯示電路、繼電器控制電路和UART通信電路4大模塊。利用SPCE061A自帶的10位A/D轉(zhuǎn)換器,結(jié)合PT100溫度傳感器完成對水溫的采樣,通過數(shù)字濾波等技術(shù)消除系統(tǒng)的干擾因素還原當前的溫度值,通過數(shù)碼管顯示出來,并且對采集到的溫度值進行PID運算處理.實現(xiàn)對水溫的控制。除此之外,系統(tǒng)還要實現(xiàn)PC機與單片機的上下位機通信功能,在PC機上實時顯示溫度加熱曲線。系統(tǒng)整體框圖如圖1所示。
1.1 SPCE061A核心控制器
SPCE061A是一款16位u'nspTM內(nèi)核的微控制器,該微控制器不僅能夠?qū)崿F(xiàn)基本控制功能同時還具有一些DSP功能。該芯片內(nèi)嵌32k的Flas-hROM和2 k字的SRAM,同時還集成了ADC、DAC、AGC放大電路等,是一顆功能強大的SOC芯片。該芯片擁有8路10位精度的ADC,其中一路為音頻轉(zhuǎn)換通道,另外7路可作為普通的AD轉(zhuǎn)換通道。它可以實現(xiàn)簡單的加減運算,為了處理復雜的算術(shù)運算還添加了硬件乘法器,能夠進行n項內(nèi)積運算。最高系統(tǒng)時鐘可達到49 MHz,較高的處理速度使SPCE061A能夠非常容易快速地進行復雜的算術(shù)邏輯運算。本系統(tǒng)所采用的是61板,而61板就是SPCE061的開發(fā)系統(tǒng),61板除了具有單片機最小系統(tǒng)外,還有電源電路、音頻電路、復位電路和按鍵等。
1.2 傳感器電路
傳感器電路包括測量電橋和放大電路兩部分,如圖2所示。
本系統(tǒng)的溫度傳感器采用鉑熱電阻溫度傳感器PT100,鉑熱電阻的物理化學性能在高溫和氧化性介質(zhì)中很穩(wěn)定,它能用作工業(yè)測溫元件,且此元件線性較好,在0~100℃時,最大非線性偏差小于0.5℃。R2、R3、R和PT100組成傳感器測量電橋,為了保證電橋輸出電壓信號的穩(wěn)定性,電橋的輸入電壓通過TL431穩(wěn)至2.5 V。從電橋獲取的差分信號通過兩級運放放大后輸入單片機。電橋的一個橋臂采用可調(diào)電阻R3,通過調(diào)節(jié)R3可以調(diào)整輸入到運放的差分電壓信號大小,通常用于調(diào)整零點。
放大電路采用LM358集成運算放大器,為了防止單級放大倍數(shù)過高帶來的非線性誤差,放大電路采用兩級放大,如圖2所示,前一級約為10倍,后一級約為3倍。溫度在0~100℃變化,當溫度上升時,PT100阻值變大,輸入放大電路的差分信號變大,放大電路的輸出電壓AV對應升高。[!--empirenews.page--]
1.3 鍵盤和顯示電路
鍵盤直接使用61板自帶的按鍵,不需要另外連接硬件即可使用。顯示電路采用LED鍵盤模組來實現(xiàn),LED鍵盤模組采用DC 5 V供電,集成了LED、KEY、數(shù)碼管功能,作為SPCE061A外圍器件的擴展模塊來使用。LED模塊擴展了6位8段數(shù)碼管,最大顯示數(shù)據(jù)為999 999;有8個發(fā)光二極管,8個按鍵(可以組成1x8KEY也可組成2x4KEY),1個電位器,可以提供0~5 V的模擬電壓信號或者0~3.3 V的模擬電壓,與模組輸入的VDD有關(guān)。鍵盤和顯示電路主要用來設(shè)定和顯示實時溫度。
1.4 繼電器控制電路
本系統(tǒng)的主要功率器件為一個交流220 V/1 000 W的電加熱器,采用繼電器來驅(qū)動該加熱器。繼電器選擇OMRONG6B—1174P型繼電器,該繼電器具有觸發(fā)電壓低(DC:5 V),可控功率大(AC:8 A,250 V),以及反應時間短等優(yōu)點。采用NPN8050三極管驅(qū)動繼電器,當控制端Ctrl加載高電平信號時三極管導通,繼電器工作,當控制端Ctrl為低電平信號時三極管截止,繼電器停止工作。繼電器的周圍有續(xù)流保護電
路和工作指示電路,功率驅(qū)動部分電路如圖3所示。Ctrl為繼電器控制信號輸入端,通過單片機的IOA7控制。J2為控制加熱器的開關(guān)接口。
2 系統(tǒng)軟件設(shè)計
系統(tǒng)程序的控制思想:設(shè)置目標溫度后,系統(tǒng)采樣水溫,并通過預設(shè)溫度,當前溫度,歷史偏差等進行PID運算產(chǎn)生four輸出參數(shù),通過該參數(shù)控制加熱時間,從而調(diào)節(jié)加熱器的平均功率,實現(xiàn)系統(tǒng)的PID控制。整體功能通過主程序和中斷服務程序配合實現(xiàn)。中斷服務包括IRQ5_2Hz中斷,IRQ5_4Hz中斷,IRQ2_TimerB中斷以及IRQ6_TMB2(1 024 Hz)中斷。這里主要介紹主程序流程和主要子程序流程。系統(tǒng)首先初始化I/O、TimerB、UART等部件,之后進入主循環(huán),進行溫度采樣和相關(guān)處理。本系統(tǒng)軟件設(shè)計的核心思想就在于PID控制的實現(xiàn),在系統(tǒng)運行過程中通過按KEY3鍵重新設(shè)置目標溫度。主程序流程如圖4所示。
[!--empirenews.page--]
2.1 A/D轉(zhuǎn)換子程序
A/D轉(zhuǎn)換:每間隔1s執(zhí)行一次溫度采樣操作.每次采樣執(zhí)行18次A/D轉(zhuǎn)換;在IRQ5_2Hz中斷服務程序中完成,IRQ5_2Hz用以提供1 s時間以確定AD采樣的時間間隔,A/D轉(zhuǎn)換子程序流程圖如圖5所示。
2.2 溫度PID控制的實現(xiàn)
本方案利用位置式PID算法,將溫度傳感器采樣輸入作為當前輸入,然后與設(shè)定值進行相減得偏差,然后再對之進行PID運算產(chǎn)生輸出結(jié)果four,然后讓four控制定時器的時間進而控制加熱器。IRQ2_TimerB提供溢出頻率為64 Hz的中斷信號,配合主程序的PID運算結(jié)果four確定加熱時間,實現(xiàn)加熱器功率調(diào)節(jié),該部分子程序流程圖如下圖6所示。
3 系統(tǒng)運行性能測試
本系統(tǒng)的關(guān)鍵之處在于PID控制。對于PID系統(tǒng)來說,系統(tǒng)性能的好壞主要取決于PID控制的參數(shù)的設(shè)定。由PID控制原理知:比例(P)控制能迅速反應誤差,減小穩(wěn)態(tài)誤差:比例作用的加大,會引起系統(tǒng)的不穩(wěn)定。積分(I)控制的作用,只要系統(tǒng)有偏差存在,積分作用不斷地積累,輸出控制量以消除誤差;積分作用太強會使系統(tǒng)超調(diào)加大,甚至使系統(tǒng)出現(xiàn)振蕩。微分(D)控制可以減小超調(diào)量,克服振蕩,使系統(tǒng)的穩(wěn)定性提高,同時加快系統(tǒng)的動態(tài)響應速度,減小調(diào)整時間,從而改善系統(tǒng)的動態(tài)性能。
本系統(tǒng)能夠?qū)崿F(xiàn)的基本功能如下:
1)溫度的實時采集顯示:
2)對溫度的變化能夠做出及時的處理,能夠應用PID調(diào)節(jié);
3)通過UART實現(xiàn)上下位機通信。并在上位機上顯示溫度的變化曲線。
在系統(tǒng)調(diào)試過程中,通過改變關(guān)鍵的PID系統(tǒng)參數(shù)Kp、Kd,觀察系統(tǒng)運行性能的變化,以使系統(tǒng)處于最佳運行狀態(tài),以下是測試過程及測試結(jié)果。
1)Kp=1.5、Kd=1.0(溫升:20~40℃)對應的曲線如圖7所示,由圖形可以看出來,由于過大,造成超調(diào)量過大。
[!--empirenews.page--]
2)Kp=1.2、Kd=1.0(溫升:40~60℃)對應的曲線如圖8所示,由圖形可以看出來,由于過小,系統(tǒng)的快速性不好,反應比較遲鈍。
3)Kp=1.3、Kd=1.0(溫升:30~50℃)對應的曲線如圖9所示,由圖形可以看出來,由于過小,系統(tǒng)的超調(diào)量比較大,而且預測性不好,造成溫度長時間超調(diào)。
4)Kp=1.3、Kd=2.0((溫升:50~70℃))對應的曲線如圖10所示,由圖形觀察可知:選擇適中,系統(tǒng)的超調(diào)量很小,而且超調(diào)維持時間很短就會恢復平衡點。
通過以上幾次的測量曲線分析,最終選擇Kp=1.3、Kd=2.0。此時溫度控制指標如下:靜態(tài)誤差:T≤0.5℃;分辨率:0.1℃;超調(diào)量:T≤0.5℃。這樣的情況下,系統(tǒng)運行情況可以達到最好。
4 結(jié)論
基于16位單片機SPCE061A的DSP功能以及快速的處理能力,本系統(tǒng)的數(shù)據(jù)采集和運算處理十分的方便簡單,另外由于IDE支持標準的C語言函數(shù)庫,使得復雜的數(shù)學運算變得輕而易舉,大大減小了編程的難度。另外采用VC實現(xiàn)上下位機相互通信,在上位機直接顯示溫度的變化曲線,直接觀察控制的性能,并根據(jù)曲線適當?shù)男薷南到y(tǒng)的PID參數(shù),使控制達到最優(yōu)化。