0引 言
啤酒發(fā)酵溫度的控制是決定產(chǎn)品品質(zhì)的關(guān)鍵因素,所以,必須對(duì)生產(chǎn)過程中的溫度進(jìn)行嚴(yán)格的控制。啤酒發(fā)酵是一個(gè)具有時(shí)變性、非線性的復(fù)雜生化反應(yīng)過程,使用冷卻酒精水通過熱交換器間接降溫的方法控制發(fā)酵溫度。傳統(tǒng)的手動(dòng)控制不僅控制質(zhì)量不穩(wěn)定,而且操作工人的勞動(dòng)強(qiáng)度也很大,人力資源浪費(fèi)問題十分嚴(yán)重,為此我們使用以AT89S52單片機(jī)為核心的控制系統(tǒng)來控制啤酒發(fā)酵溫度。采用單片機(jī)對(duì)溫度進(jìn)行控制,不僅具有控制方便、靈活和組態(tài)簡(jiǎn)單的優(yōu)點(diǎn),而且可以大幅度提高被控溫度的技術(shù)指標(biāo),從而可以顯著提高啤酒產(chǎn)品的質(zhì)量。
本文介紹基于AT89S52單片機(jī)的啤酒發(fā)酵溫度控制系統(tǒng)的硬件設(shè)計(jì)及工作原理、系統(tǒng)的軟件設(shè)計(jì)和抗干擾措施。
1 系統(tǒng)硬件設(shè)計(jì)及工作原理
控制系統(tǒng)硬件組成框圖如圖1所示。本系統(tǒng)主要由AT89S52單片機(jī)、溫度采集與A/D轉(zhuǎn)換電路、8155擴(kuò)展電路、液晶顯示接口、鍵盤接口、蜂鳴器報(bào)警電路、串口通信電路、DAC0832、電壓放大和V/I轉(zhuǎn)換等單元組成。
![]() |
AT89S52單片機(jī)為主控制器件。AT89S52是AT-MEL公司生產(chǎn)的低功耗、高性能CMOS 8位單片機(jī),它除正常工作外還可工作于低功耗的閑置和掉電模式,進(jìn)一步減少了芯片的功耗。其內(nèi)部除了配有8 K的Flash程序存儲(chǔ)器,還具有256字節(jié)的RAM、2個(gè)16位定時(shí)器/計(jì)數(shù)器,5個(gè)兩級(jí)中斷源結(jié)構(gòu),32位并行輸入/輸出口和一個(gè)全雙工的串行口,看門狗定時(shí)電路等。單片機(jī)首先根據(jù)已經(jīng)測(cè)量的數(shù)值計(jì)算出溫度偏差,然后進(jìn)行PID控制并計(jì)算出相應(yīng)的控制數(shù)據(jù)量,將控制數(shù)據(jù)量輸出到D/A轉(zhuǎn)換器。
AT89S52還負(fù)責(zé)按鍵處理、液晶顯示以及與上位機(jī)進(jìn)行通信等工作。本系統(tǒng)采用8155A芯片來擴(kuò)展鍵盤和液晶顯示,用.MAX232實(shí)現(xiàn)RS 232C標(biāo)準(zhǔn)接口通信電路。鍵盤主要負(fù)責(zé)溫度控制范圍和PID控制參數(shù)的輸入;液晶顯示器采用LCMl28X64:液晶顯示模塊,把溫度控制結(jié)果顯示在液晶屏上。
1.2數(shù)據(jù)采集電路的工作原理
溫度傳感器使用集成溫度傳感器LM35,它的靈敏度為10 mV/℃,即溫度為10℃時(shí),輸出電壓為100 mV。常溫下測(cè)溫精度為±O.5℃以內(nèi),消耗電流最大也只有70uA,采用雙電源供電時(shí),測(cè)量溫度范圍為一55~+150℃(金屬殼封裝)和一40~+110℃(T092封裝),無需進(jìn)行調(diào)整。本文采用±5 V雙電源供電方式,電路簡(jiǎn)單,不需要對(duì)LM35的輸出進(jìn)行調(diào)整。
將LM35的輸出電壓放大5倍(注:根據(jù)發(fā)酵溫度的變化范圍和溫度傳感器的靈敏度,將電壓放大器的電壓放大倍數(shù)整定為5倍),使放大器輸出電壓限制在不大于5 V的范圍(給定溫度對(duì)應(yīng)值要在5 V范圍之內(nèi)),以便與單片機(jī)的電平相匹配。放大電路采用集成運(yùn)放組成,如TLC2272等。
由于溫度信號(hào)為緩慢變化的信號(hào),對(duì)A/D轉(zhuǎn)換速度要求不高,可選用價(jià)廉的集成A/D芯片ADC0809。ADC0809是一種8路模擬輸入8位數(shù)字輸出的逐次逼近式A/D轉(zhuǎn)換器件,轉(zhuǎn)換時(shí)間為100us。ADC20809將經(jīng)過5倍電壓放大的電壓模擬量轉(zhuǎn)化成與其大小成正比的數(shù)字量,并送給單片機(jī)。 1.3蜂鳴器報(bào)警電路
系統(tǒng)時(shí)刻檢測(cè)發(fā)酵溫度值,出現(xiàn)異常時(shí)啟動(dòng)蜂鳴器報(bào)警。蜂鳴器報(bào)警電路由晶體管和蜂鳴器組成。由單片機(jī)I/O口輸出信號(hào)控制晶體管的導(dǎo)通或截止,晶體管導(dǎo)通,則蜂鳴器報(bào)警。
1.4驅(qū)動(dòng)電路
DAC0832輸出的0~5 V的電壓經(jīng)過放大器放大為O~10 V的電壓。由于DDZ-III型電動(dòng)角形閥的控制信號(hào)是4~20 mA直流電流信號(hào),因此需要將電壓信號(hào)轉(zhuǎn)換成相應(yīng)的電流信號(hào)。V/I轉(zhuǎn)換電路使用集成電路AD694,AD694是美國AD公司生產(chǎn)的V/I變換器,轉(zhuǎn)換精度高、使用方便、通過改變引腳的不同接法,可以選擇多種電壓輸入范圍,對(duì)應(yīng)輸出4~20 mA或O~20 mA電流信號(hào)。 DDZ-III型電動(dòng)角形閥以單相交流220 V電源為動(dòng)力,接受4~20 mA直流信號(hào),自動(dòng)地控制閥門的開度,從而達(dá)到對(duì)冷卻酒精水流量的連續(xù)調(diào)節(jié),實(shí)現(xiàn)發(fā)酵罐內(nèi)溫度的控制,使實(shí)際溫度向著給定溫度變化并最終達(dá)到給定溫度。
2軟件設(shè)計(jì)
本系統(tǒng)軟件設(shè)計(jì)采用結(jié)構(gòu)化和模塊化設(shè)計(jì)方法,便于功能擴(kuò)展,程序可采用匯編語言進(jìn)行編程。程序模塊主要包括:主程序、PID數(shù)據(jù)處理、按鍵處理、溫度采樣與A/D轉(zhuǎn)換、數(shù)字濾波、越限報(bào)警等子程序。本文重點(diǎn)介紹主程序流程圖和數(shù)據(jù)處理模塊。
2.1主程序
控制系統(tǒng)主程序的流程圖如圖2所示。本系統(tǒng)利用定時(shí)循環(huán)輪流對(duì)8個(gè)溫度進(jìn)行實(shí)時(shí)采樣,為了能夠?qū)崿F(xiàn)溫度的巡回測(cè)量,必須有相應(yīng)的程序來選擇溫度輸入通道。用戶可以通過鍵盤設(shè)定溫度的上限值和下限值、偏差e(k)絕對(duì)值的設(shè)定值M、PID控制的系數(shù)kp、ki、和kd等參數(shù)。
![]() |
2.2數(shù)據(jù)處理模塊
通常,溫度控制大多數(shù)采用PID控制方案,所謂PID控制,就是按設(shè)定值與測(cè)量值之間偏差的比例、偏差的積累和偏差變化的趨勢(shì)進(jìn)行控制。在工業(yè)上,PID控制又稱偏差控制,這是工業(yè)控制過程中應(yīng)用最廣泛的一種控制形式,一般都能收到令人滿意的效果。
本溫控系統(tǒng)采用的數(shù)字PID算法由軟件實(shí)現(xiàn),增量PID控制算法的優(yōu)點(diǎn)是編程簡(jiǎn)單,數(shù)據(jù)可以遞推使用,占用存儲(chǔ)空間少,運(yùn)算快。但是對(duì)于溫度這種響應(yīng)緩慢、滯后性大的過程,不能用標(biāo)準(zhǔn)的PID算法進(jìn)行控制。當(dāng)擾動(dòng)較大或者給定的溫度值大幅度變化時(shí),由于產(chǎn)生較大的偏差,加上溫控本身的慣性及滯后,在積分作用下,系統(tǒng)往往產(chǎn)生較大的超調(diào)和長(zhǎng)時(shí)間的振蕩。因此,為克服這種不良的影響,采用積分分離法對(duì)增量PID算法進(jìn)行改進(jìn)。當(dāng)偏差e(k)絕對(duì)值較大時(shí),暫時(shí)取消積分作用;當(dāng)偏差e(k)絕對(duì)值小于某一設(shè)定值M時(shí),才將積分作用投入。
(1)當(dāng)| e(k)|<M時(shí),用PlD控制。偏差小,說明系統(tǒng)溫度已經(jīng)接近設(shè)定值,此時(shí)加入了積分作用,可以消除系統(tǒng)靜差,保證系統(tǒng)的控制精度。根據(jù)遞增原理可得:式中:e(K)=r(K)一y(K)為第K時(shí)刻所得偏差信號(hào),其中rk是給定值,yk是實(shí)際輸出值;
kp為比例增益;ki為積分系數(shù);kd為微分系數(shù)。則增量式PID控制算法為:
(2)當(dāng)| e(k)|≥M時(shí),用PD控制。由于偏差大,說明系統(tǒng)溫度遠(yuǎn)離設(shè)定值,應(yīng)快速降溫,采用PD控制,可以提高系統(tǒng)的動(dòng)態(tài)響應(yīng)速度,避免產(chǎn)生過大的超調(diào),減小動(dòng)態(tài)誤差。
3抗干擾措施與實(shí)際測(cè)試結(jié)果
3.1控制系統(tǒng)的抗干擾措施
在硬件方面的抗干擾措施有:(1)在電源輸入端設(shè)置低通濾波器,濾去高次諧波成份;(2)在溫度傳感器兩端,以及其它地方使用壓敏電阻器,吸收不同極性的過電壓;(3)在運(yùn)行現(xiàn)場(chǎng)進(jìn)行電磁干擾試驗(yàn),對(duì)試驗(yàn)結(jié)果進(jìn)行概率統(tǒng)計(jì)分析,并通過精心選擇元器件、采用抗干擾技術(shù)使干擾源產(chǎn)生的電磁干擾降至最;(4)采用了AT89S52中的看門狗定時(shí)器,提高系統(tǒng)硬件抗干擾的能力。 在軟件方面的抗干擾措施有:(1)在程序設(shè)計(jì)時(shí),將各程序模塊分區(qū)存放,彼此之間空出一些存儲(chǔ)單元,在這些單元中填充FF(RST指令)。同時(shí)對(duì)程序中重要的跳轉(zhuǎn)和調(diào)用子程序指令前均加入3個(gè)NOP指令,以保證程序流向的正確性。(2)利用平均濾波法求取平均值。將最近6次采樣得到的溫度值,去除最大值和最小值,剩下的4個(gè)數(shù)據(jù)求算術(shù)平均值。
3.2實(shí)際測(cè)試結(jié)果
該控制系統(tǒng)在實(shí)驗(yàn)過程中,運(yùn)行狀況良好,達(dá)到了設(shè)計(jì)要求。以初始溫度4℃、設(shè)定溫度是18℃為例,啤酒發(fā)酵溫度控制的實(shí)驗(yàn)結(jié)果如圖3所示。







