馬麗萍
(江蘇聯(lián)合職業(yè)技術(shù)學(xué)院無錫機(jī)電分院,江蘇無錫214028)
在儀表的整個系統(tǒng)中,溫度控制系統(tǒng)的準(zhǔn)確性直接影響檢測結(jié)果的精度和準(zhǔn)確度[1]。本文介紹了食品安全中快速檢測的恒溫控制設(shè)備,通過對加熱絲上的加熱功率控制,使測試樣本溫度得到相對應(yīng)的控制,同時為了減小硬件電路中對恒溫控制的一些不利因素,這里選用了相對精密的電器元件和更為準(zhǔn)確高效的c程序來實(shí)現(xiàn)最終的要求。可以精確地把儀器設(shè)定的溫度恒定控制,很好地滿足食品行業(yè)上溫度的苛刻要求,對食品的安全和生產(chǎn)會有很大的幫助,同時也符合我國當(dāng)前發(fā)展的需求[2]。
本儀表利用按鍵設(shè)定所需的溫度,采用溫度傳感器pt100進(jìn)行采集溫度數(shù)據(jù),通過1602液晶屏實(shí)時顯示,同時該儀表采用了轉(zhuǎn)換精度為24位的ADS1256芯片,將采集到的電信號通過A/D傳遞到微處理器上進(jìn)行PID運(yùn)算處理,微處理器通過端口輸出相應(yīng)的控制信號,對加熱電路上的加熱絲進(jìn)行加熱控制,最終實(shí)現(xiàn)對食品反應(yīng)液上的恒溫控制[3]。
本系統(tǒng)由五個模塊組成,分別為按鍵設(shè)定溫度模塊、LCD顯示溫度模塊、溫度數(shù)據(jù)檢測模塊、溫度控制模塊、微控制器數(shù)據(jù)處理模塊。本溫度控制系統(tǒng)的設(shè)計框圖如圖1所示。
圖1 系統(tǒng)整體設(shè)計框圖
按鍵設(shè)定溫度模塊由三個獨(dú)立按鍵組成,分別是上調(diào)、下調(diào)、設(shè)置三個按鍵。通過針對檢測中所需的溫度要求,可以使用三個按鍵來設(shè)置所需的溫度值。溫度數(shù)據(jù)檢測模塊采用了鉑電阻pt100進(jìn)行溫度測量,通過精度為24位的ADS1256芯片將電路中采集到的電壓信號轉(zhuǎn)換為數(shù)字信號傳送到微控制器上,提高了在溫度檢測中的測量精度。微處理器接收到溫度采集模塊送入的數(shù)據(jù)后,將信號處理后送到外接顯示電路的LCD上進(jìn)行溫度實(shí)時監(jiān)控。同時微處理器將處理后的數(shù)據(jù)送入溫度控制電路,通過輸出端口,將已處理的數(shù)據(jù)對光耦隔離器進(jìn)行開關(guān)觸發(fā),從而實(shí)現(xiàn)對電路中加熱絲功率的控制,最終實(shí)現(xiàn)恒溫的要求。微控制器數(shù)據(jù)處理主要通過軟件編程對各個模塊的參數(shù)進(jìn)行設(shè)定和檢測。這些參數(shù)有按鍵設(shè)定目標(biāo)溫度、溫度檢測電路中的采集到的溫度、PID運(yùn)算數(shù)據(jù)等。通過微處理器進(jìn)行PWM波輸出實(shí)現(xiàn)對溫控電路的恒溫加熱控制[4]。
圖2 溫度檢測電路圖
圖2中主要由ADS1256芯片、鉑電阻Pt100、運(yùn)放器構(gòu)成了溫度檢測電路。
圖2中選用了A級精度pt100作為采集溫度的傳感器,同時為了防止放大電路中單級放大倍數(shù)過高帶來的非線性誤差,此電路采用兩級放大,電路選用了兩片LM358集成運(yùn)算放大器對pt100上的點(diǎn)電位進(jìn)行電信號放大,電路中的運(yùn)放倍數(shù)前一級約為10倍,后一級約為3倍。在隨著溫度不斷變化時,若溫度上升,Pt100阻值變大,輸入放大電路的差分信號變大,放大電路的輸出電壓對應(yīng)升高。OUT端口輸出的信號通過A/D芯片將信號數(shù)據(jù)送入單片機(jī)中進(jìn)行數(shù)據(jù)處理。
圖3 溫度控制電路圖
在如圖3的溫度控制電路中,單片機(jī)收到溫度檢測模塊采集到的數(shù)據(jù)信息,數(shù)據(jù)經(jīng)過其內(nèi)部運(yùn)算處理后,端口輸出PWM波至溫度控制電路,通過觸發(fā)光耦隔離器件的開關(guān)來控制溫控電路中加熱絲的功率。其中單片機(jī)在控制輸出PWM波中,通過系統(tǒng)中閉環(huán)內(nèi)部自校正的PID控制程序,將測量到的溫度數(shù)據(jù)進(jìn)行運(yùn)算處理,控制PID的輸出,最終來控制溫度控制電路中輸入PWM波的占空比,來實(shí)現(xiàn)對溫度的動態(tài)控制。該控溫電路中為了防止控制電路部分的沖擊電流對單片機(jī)造成損壞,電路中選用了光耦隔離器,來進(jìn)行保護(hù)。同時選用了兩片MOSFETS,進(jìn)行控制電壓信號的接通,若光耦開關(guān)一端接收到高電平信號,則將接入電壓接通R2,U1和U2的S和G端口接到公共地,把加熱電阻R1短路,斷開加熱。若光耦開關(guān)一端接入低電平,則分別接通R2,U1和U2的S和D端口接到加熱電阻R1上進(jìn)行加熱,光耦一端如此交替的接收到單片機(jī)上送入的PWM波來進(jìn)行控溫。該溫控電路如圖3所示。
在整個系統(tǒng)設(shè)計中單片機(jī)控制部分同時接入了按鍵和1602液晶顯示器,溫控系統(tǒng)中溫度值的設(shè)定需要通過按鍵與單片機(jī)之間進(jìn)行人機(jī)交互,因此在單片機(jī)最小系統(tǒng)上的并行IO口增加按鍵,通過按鍵來實(shí)現(xiàn)人機(jī)之間的交互信息。而1602液晶顯示器經(jīng)過單片機(jī)內(nèi)部編寫好的驅(qū)動程序驅(qū)動,能夠?qū)ο到y(tǒng)中整體的控制情況進(jìn)行實(shí)時的監(jiān)控,把人機(jī)交互變得更加友好。
圖4 主程序設(shè)計流程圖
在設(shè)計單片機(jī)的主程序中,主要包含了系統(tǒng)的各個部分初始化程序、按鍵掃描程序、采集溫度程序、顯示溫度程序、溫度數(shù)據(jù)的增量式PID處理程序、PWM控制輸出程序等其他程序。程序主要的設(shè)計流程圖如圖4所示。
流程圖中的各個部分初始化包括了按鍵初始化、定時器初始化、A/D轉(zhuǎn)換芯片初始化、顯示部分初始化。這個部分使得程序中的參數(shù)初始化完成。按鍵掃描程序進(jìn)行循環(huán)掃描,判斷按鍵按下的次數(shù),得到所要設(shè)定的溫度值。采集溫度程序可以將ADS1256芯片的外部輸入端口采集到的模擬信號進(jìn)行數(shù)字信號處理,通過顯示溫度程序控制單片機(jī)的外部LCD的顯示。而程序中最重要是PID程序,該部分采用了增量式PID算法,將采集到的溫度數(shù)據(jù)加入到PID內(nèi)部參數(shù),再進(jìn)行PID處理并輸出運(yùn)算后的結(jié)果。同時將結(jié)果傳送到PWM控制輸出程序中,控制溫控電路中的加熱功率,進(jìn)而使溫度達(dá)到設(shè)定的要求。
在本單片機(jī)控制系統(tǒng)中,針對溫度偏差進(jìn)行了溫度上的累加,因此不需要給出控制量的具體數(shù)值,只需要給出一個增量值就可以完成所要的要求。本設(shè)計中選用了增量式PID控制算法,可以完成運(yùn)算控制,相對其他控制算法簡單又不失精確。增量式PID控制器系統(tǒng)結(jié)構(gòu)如圖5所示。
圖5 PID算法控制結(jié)構(gòu)圖
其標(biāo)準(zhǔn)公式[5]為:
PID算法進(jìn)一步改進(jìn)后:
算法中參數(shù)的確定:公式中的PID參數(shù)為采樣周期T、比例系數(shù)Kp、積分時間系數(shù)Ti、微分時間系數(shù)Td,這些參數(shù)的整定采用的是試湊法[6-8]。根據(jù)各個參數(shù)的調(diào)節(jié)規(guī)律,首先對Kp進(jìn)行選取,通過調(diào)節(jié)Kp來加快系統(tǒng)的快速性,在有靜差的情況下有利于減小靜差,Kp也不宜過大,若選取較大時,會使系統(tǒng)出現(xiàn)較大的超調(diào)量,并且產(chǎn)生震蕩,使得系統(tǒng)的穩(wěn)定性變壞。接著對采樣周期T進(jìn)行選取,先粗選一個采樣周期T,通過在單片機(jī)上的多次調(diào)試,直到選取到一個滿意的周期T。增大積分時間參數(shù)Ti有利于減小超調(diào),減小震蕩,使系統(tǒng)的靜差慢慢減小,系統(tǒng)變得更加的穩(wěn)定。而增大微分時間參數(shù)Td有利于加快系統(tǒng)響應(yīng),使超調(diào)量減少,但同時會使系統(tǒng)抑制能力減弱,因此本文中的軟件設(shè)計中沒有用到微分時間參數(shù)Td,這里選取Td=0。經(jīng)過多次的選取、觀察和調(diào)試,得到了相應(yīng)參數(shù)值。
根據(jù)設(shè)計程序中PID運(yùn)算已經(jīng)得出相應(yīng)靜差值Δu(k),因?yàn)镻WM只能在開度范圍中動態(tài)的變化,因此需要給運(yùn)算結(jié)果設(shè)定限制條件。由程序中設(shè)定的定時器進(jìn)行計數(shù)與PID得出靜差值進(jìn)行比較,可以算出對應(yīng)的占空比,這樣恒溫電路中加熱絲的加熱功率大小就會根隨程序中的PID運(yùn)算結(jié)果動態(tài)變化而將控制的溫度逐漸的逼近設(shè)定的溫度,最終實(shí)現(xiàn)恒溫控制。
圖6 實(shí)驗(yàn)數(shù)據(jù)的結(jié)果圖
根據(jù)對設(shè)計電路中的PID算法的要求,要對增量式PID公式中的各個參數(shù)進(jìn)行選取。為了準(zhǔn)確快速的對溫度進(jìn)行控制,要首先對Kp進(jìn)行選取,其他的Ki,Kd均為0。對控制后的溫度進(jìn)行觀察檢查是否實(shí)現(xiàn)溫度控制的快速性;接著對Ti上進(jìn)行選取,判斷系統(tǒng)是否能夠在快速性的基礎(chǔ)上減小超調(diào)。通過了多次的測量數(shù)據(jù)和多次的仿真繪圖,得出了 Kp=100、Ki=0.1、Kd=0。即可完成所需要的功能,對于控制效果相對理想。經(jīng)過多次測量的出多組測量數(shù)據(jù)(設(shè)定的參考溫度為34℃,室內(nèi)溫度選取為13℃)。
在實(shí)驗(yàn)測量結(jié)果中任意選取4組測量數(shù)據(jù)作為比較,其溫度變化的曲線如圖6所示,通過圖6可以顯示出溫度控制系統(tǒng)的工作特性。
從圖6中不難看出四次測量的溫度變化較為平滑,說明該系統(tǒng)的控溫相對穩(wěn)定,并且最終能夠?qū)崿F(xiàn)設(shè)定的溫度動態(tài)穩(wěn)定,圖6中前6分鐘加熱部分呈現(xiàn)線性最大加熱功率,6~10分鐘呈現(xiàn)出PWM波控制加熱功率,曲線上10分鐘后的部分,溫度相對穩(wěn)定在所設(shè)定的溫度上,誤差為±0.1℃,說明該系統(tǒng)控溫可以相對準(zhǔn)確的實(shí)現(xiàn)。
筆者對本文中的溫度控制系統(tǒng)進(jìn)行了實(shí)驗(yàn)研究,在環(huán)境溫度13℃時,可將溫度控制在34℃。如果對于實(shí)際應(yīng)用上對快速性的高要求,接下來還可以對溫控模塊上的電路進(jìn)行改善和優(yōu)化,使電路能夠接入更大的輸入功率,使加熱絲加熱功率增大,減少加熱時所用的時間,以此滿足實(shí)際中的應(yīng)用。
本文中的溫控系統(tǒng)具有測量速度快、抗干擾能力強(qiáng)、測量精準(zhǔn)、功耗低。電路配上功能強(qiáng)大的單片機(jī)系統(tǒng),很好的實(shí)現(xiàn)了智能的恒溫功能,使系統(tǒng)穩(wěn)定,并對測量后的結(jié)果能夠及時的監(jiān)控顯示,實(shí)時性很好。對于多數(shù)的溫控場合,此系統(tǒng)是完全可以被應(yīng)用到所需要的地方,也可以作為其他溫度控制借鑒的實(shí)例。
[1] 周良,黎海文,吳一輝.具有溫度補(bǔ)償?shù)男⌒蜕治鰞x溫度控制系統(tǒng)的研究[J].傳感技術(shù)學(xué)報,2008,21(11):1831-1834.
[2] 王大輝.生化分析儀溫度控制系統(tǒng)研究[D].長春:長春理工大學(xué),2008.
[3] 盧思祺.MCS-51單片機(jī)溫度控制系統(tǒng)的設(shè)計[J].科技向?qū)В?013(17):25-30.
[4] 郭天祥.新概念51單片機(jī)C語言教程[M].北京:電子工業(yè)出版社,2010.
[5] 劉艷春,趙立雙.基于增量式PID控制算法的恒溫控制系統(tǒng)[J].信息技術(shù),2014(2):167-169.
[6] 葉巍翔,徐凱,劉佳卓,馬丁,國華.用于生化傳感檢測的自適應(yīng)增量恒溫控制系統(tǒng)[J].南開大學(xué)學(xué)報(自然科學(xué)版),2014,47(2):18-23.
[7] Xu G Q,Yung SP.The exponential decay rate for a Timo shenko beam with boundary damping[J].Journal of Optimization Theory and Applications,2004,123(3):669-693.
[8] Dey C,Mudi R K,Lee PK,etal.A PID controller with dynamic set-point weighting[C/OL]//IEEE International Conference on Industrial Technology,Mumbai,India,December11-13,2006.[2013-04-06].http://ieeex-plore:ieee.org/xpls/abs_all.jsp?arnumber=4237628.