基于STM32的半導(dǎo)體制冷片控制系統(tǒng)設(shè)計(jì)
摘要:一些醫(yī)療檢測(cè)儀器在檢測(cè)時(shí)需要模擬人體溫度環(huán)境以確保檢測(cè)的精確性,本文以STM32為主控制器,電機(jī)驅(qū)動(dòng)芯片DRV8834 為驅(qū)動(dòng)器,驅(qū)動(dòng)半導(dǎo)體致冷器(帕爾貼)給散熱片加熱或者制冷。但由于常規(guī)的溫度控制存在慣性溫度誤差的問(wèn)題,無(wú)法兼顧高精度和高速性的嚴(yán)格要求,所以采用模糊自適應(yīng)PID控制方法在線(xiàn)實(shí)時(shí)調(diào)整PID參數(shù),計(jì)算PID參數(shù)Kp、Ki、Kd調(diào)整控制脈沖來(lái)控制驅(qū)動(dòng)器的使能。從simulink仿真的和實(shí)驗(yàn)結(jié)果來(lái)看模糊PID控制系統(tǒng)精度高、響應(yīng)速度快,能達(dá)到預(yù)期效果。
本文引用地址:http://www.ex-cimer.com/article/201610/306603.htm溫度參數(shù)是工業(yè)生產(chǎn)中常用的被控對(duì)象之一,在化工生產(chǎn)、冶金工業(yè)、電力工程和食品加工等領(lǐng)域廣泛應(yīng)用,在醫(yī)療檢測(cè)設(shè)備中時(shí)常需要模擬人體溫度進(jìn)行成分檢測(cè)。采用直流電機(jī)驅(qū)動(dòng)芯片DRV8834驅(qū)動(dòng)帕爾貼的制冷和加熱過(guò)程。溫度隨時(shí)間的變化率和變化的方向不確定且可能大幅度的變化,要求系統(tǒng)的實(shí)際溫度快速和精確地跟蹤設(shè)定溫度以滿(mǎn)足加工工藝的要求。時(shí)間程序溫度控制系統(tǒng)具有強(qiáng)烈的非線(xiàn)性、強(qiáng)耦合、大時(shí)滯和時(shí)變等特點(diǎn),傳統(tǒng)PID控制雖然算法簡(jiǎn)單易于實(shí)現(xiàn)且調(diào)整時(shí)間較快、精度較高,但是抗干擾能力不強(qiáng),容易產(chǎn)生振蕩;模糊PID不需要精確的數(shù)學(xué)模型,能較好的處理時(shí)變、非線(xiàn)性、滯后等問(wèn)題,有很好的魯棒性,響應(yīng)速度快。
1 過(guò)程分析及常規(guī)控制方法
恒溫控制系統(tǒng)具有制冷、加熱等功能,箱體內(nèi)的溫度傳感器DS18B20通過(guò)不斷地檢測(cè)溫度,與設(shè)置的很定溫度作比較,當(dāng)室內(nèi)溫度低于設(shè)置溫度值時(shí),加熱模塊工作,使DRV 8834輸出正向直流,驅(qū)動(dòng)帕爾貼元器件,使其加熱;當(dāng)溫度高于設(shè)置溫度值時(shí),使DRV8834輸出反向直流,驅(qū)動(dòng)帕爾貼元器件,使其工作在制冷功能。使室內(nèi)溫度在設(shè)定值范圍內(nèi)震蕩,最終趨向于穩(wěn)定。同時(shí),控制系統(tǒng)將協(xié)調(diào)控制制冷和加熱系統(tǒng),以達(dá)到箱溫波動(dòng)值最小、高精度控溫的目標(biāo)。所以溫度控制成為恒溫控制系統(tǒng)的核心問(wèn)題。
2 模糊PID溫度控制系統(tǒng)的硬件電路設(shè)計(jì)
如圖1,系統(tǒng)主要包括以下幾個(gè)部分:
1)數(shù)字溫度傳感器:DS18B20是一種“一線(xiàn)總線(xiàn)”接口的溫度傳感器。與傳統(tǒng)的熱敏電阻等測(cè)溫元件相比,它是一種新型的體積小、適用電壓寬、與微處理器接口簡(jiǎn)單的數(shù)字化溫度傳感器,實(shí)現(xiàn)溫度的采集。
2)控制器:采用STM32模塊和存儲(chǔ)器構(gòu)成,以其豐富的外部資源和高達(dá)72 MHz的主頻完成大量的PID運(yùn)算。
3)加熱模塊:采用驅(qū)動(dòng)芯片DRV8834,是一款雙路橋式步進(jìn)器或者直流電機(jī)驅(qū)動(dòng)器。由于加熱器帕爾貼是由直流控制發(fā)熱或者制冷,所以用DRV8834用作直流電機(jī)驅(qū)動(dòng)器來(lái)驅(qū)動(dòng)帕爾貼。
DRV8834能夠驅(qū)動(dòng)兩個(gè)直流電機(jī)或者一個(gè)步進(jìn)電機(jī),每個(gè)H橋的電流輸出為1.5 A,2.2 A峰值電流,所以用1.5 A電流驅(qū)動(dòng)帕爾貼加熱元器件。該器件提供了帶有一個(gè)故障輸出引腳的內(nèi)部關(guān)斷功能,此功能用于過(guò)流保護(hù)、短路保護(hù)、欠壓閉鎖和過(guò)熱。另外,還提供了一種低功耗睡眠模式以節(jié)約電能和增加元器件使用壽命。
如圖2,nSLEEP引腳控制驅(qū)動(dòng)芯片的睡眠模式,低電平進(jìn)入睡眠模式,由STM32的I/O控制;AOUT1和AOUT2為橋A的兩個(gè)輸出端,(這里接帕爾貼的兩個(gè)輸入端),并且在A(yíng)OUT端串聯(lián)一個(gè)0.1歐姆的電阻和1uH的電感來(lái)模擬直流電機(jī)負(fù)載;VREFO為參考電壓的輸出;AVREF和 BVREF通過(guò)滑動(dòng)變阻器改變輸入的電壓,結(jié)合AISEN端的電阻設(shè)置斬波電流的輸出,斬波電流計(jì)算公式:
AENABL引腳是DRV8834芯片的使能芯片;DIR引腳控制橋電流的輸出方向,這里可以控制帕爾貼的加熱或制冷;nFAULT引腳在芯片正常工作時(shí)輸出高電平,當(dāng)輸出低電平時(shí)表示芯片過(guò)溫、過(guò)流或者欠壓以指示芯片的工作狀態(tài);VM輸入5 V電壓供電。
3 模糊PID溫度控制系統(tǒng)的軟件設(shè)計(jì)
3. 1 模糊控制基本原理
模糊控制是以模糊集合理論、模糊語(yǔ)言及模糊邏輯為基礎(chǔ)的控制,它是模糊數(shù)學(xué)在控制系統(tǒng)中的應(yīng)用,是一種非線(xiàn)性智能控制。
本文在常規(guī)PID基礎(chǔ)上,以溫度反饋值與目標(biāo)值的誤差e和誤差變化率ec作為輸入,一方面送入模糊控制器用模糊推理的方法計(jì)算PID參數(shù)的調(diào)整系數(shù),進(jìn)行在線(xiàn)自整定,以滿(mǎn)足不同e和ec對(duì)控制器參數(shù)的不同要求。
溫度控制的軟件設(shè)計(jì)主要包含3個(gè)部分:系統(tǒng)的初始化,模糊PID的計(jì)算,驅(qū)動(dòng)電路的控制。其控制流程如圖4所示。
其中系統(tǒng)初始化包含STM32系統(tǒng)時(shí)鐘的初始化,I/O口的初始化,數(shù)字溫度傳感器DS18B20的初始化,顯示模塊的初始化等。模糊PID的計(jì)算是 e(k)和ec(k)的值輸入到模糊控制規(guī)則表然后去模糊化算出Kp、Ki、Kd的當(dāng)前值。PID控制輸出的控制量是STM32定時(shí)器的計(jì)數(shù)值以控制 PWM輸出的占空比,PWM輸出連接到帕爾貼驅(qū)動(dòng)器的使能引腳控制電流的輸出的通斷,從而控制帕爾貼的發(fā)熱量。
3.2 模糊劃分及模糊化
設(shè)溫度偏差e的基本論域?yàn)閇-30℃,+30℃],溫度偏差變化率ec的基本論域?yàn)閇-12,+12],輸出u的基本論域?yàn)? [-0.4,+0.4],e、ec和u的語(yǔ)言變量E、EC和U,均劃分為7個(gè)變量等級(jí)(NB,NM,NS,Z,PS,PM,PB),各個(gè)變量的模糊論域范圍為:
{E)={-6,-5,-4,-3,-2,-1,0,1,2,3,4,5,6};
{Ec}={-6,-5,-4,-3,-2,-1,0,1,2,3,4,5,6};
{U}={-7,-6,-5,-4,-3,-2,-1,0,1,2,3,4,5,6,7}。
對(duì)于模糊控制器而言,溫度偏差及其變化率都是精確輸入量,為了對(duì)確定的精確量進(jìn)行模糊化,必須把它們轉(zhuǎn)換成模糊集合的隸屬函數(shù)。由于三角形函數(shù)計(jì)算較簡(jiǎn)單、性能較好,輸入/輸出變量的隸屬度函數(shù)都采用三角形分布。
3.3 模糊控制規(guī)則
確定模糊控制規(guī)則的原則必須是系統(tǒng)輸出響應(yīng)的動(dòng)、靜態(tài)特性達(dá)到最佳。當(dāng)誤差大或較大時(shí),選擇控制量以盡快消除誤差為主;而當(dāng)誤差較小時(shí),選擇控制量要注意防止超調(diào),以系統(tǒng)的穩(wěn)定性為主要出發(fā)點(diǎn)。
本研究根據(jù)實(shí)際運(yùn)行經(jīng)驗(yàn)進(jìn)行了試驗(yàn)、分析、歸納,并得出一系列控制規(guī)則為:
3.4 simulink的仿真對(duì)比
采用模糊自適應(yīng)PID控制與常規(guī)PID控制作對(duì)比,體現(xiàn)出模糊自適應(yīng)在溫度控制方面的優(yōu)越性。帕爾貼加熱散熱片可以看成是一個(gè)具有時(shí)滯特性的一階慣性環(huán)節(jié),其傳遞函數(shù)為:
其中k取4,τ取500,延時(shí)部分在simulink中串聯(lián)一個(gè)Transport Delay模塊,延時(shí)時(shí)間取3 s。
如圖5,上半部分為模糊自適應(yīng)PID控制,輸入的信號(hào)通過(guò)迷糊控制器算出Kp、Ki、Kd的修正值,然后加上Kp、Ki、Kd的經(jīng)驗(yàn)值來(lái)對(duì)傳遞函數(shù)起作用。下面半部分就為普通的PID控制。通過(guò)虛擬的示波器觀(guān)察兩種控制方法的控制效果。
紅色曲線(xiàn)為普通PID控制的輸出曲線(xiàn),黃色曲線(xiàn)為模糊自適應(yīng)PID控制的輸出曲線(xiàn),通過(guò)對(duì)比可以發(fā)現(xiàn),傳統(tǒng)的PID控制存在嚴(yán)重的超調(diào),并在預(yù)期值上下震蕩,調(diào)整時(shí)間長(zhǎng)。模糊自適應(yīng)PID控制很好的解決了這個(gè)問(wèn)題,以最快的時(shí)間最小的超調(diào)達(dá)到系統(tǒng)穩(wěn)定。
4 結(jié)束語(yǔ)
本次實(shí)驗(yàn)采用了常用的直流電機(jī)驅(qū)動(dòng)器通過(guò)適當(dāng)調(diào)整電路運(yùn)用到半導(dǎo)體制冷器件上,電路簡(jiǎn)單成本也較低。軟件設(shè)計(jì)上運(yùn)用PID模糊控制有效的解決了溫度控制的慣性和延遲問(wèn)題,實(shí)驗(yàn)基于STM32控制器充分利用其固件庫(kù)函數(shù)大大減少了開(kāi)發(fā)周期,提高了效率。此系統(tǒng)可以運(yùn)用在醫(yī)療設(shè)備、家用小電器等一些用到溫度控制的場(chǎng)合中,具有一定代表性。
- STM32單片機(jī)中文官網(wǎng)
- STM32單片機(jī)官方開(kāi)發(fā)工具
- STM32單片機(jī)參考設(shè)計(jì)
評(píng)論