肖 克,吳雙雙,柏文琦,林海軍,葉 源
(1.湖南省計量檢測研究院,湖南 長沙 410014; 2.湖南師范大學(xué),湖南 長沙 410081)
潤滑油蒸發(fā)損失是指潤滑油在一定使用條件下,因揮發(fā)而損失的質(zhì)量占總質(zhì)量的比值,它表征了潤滑油產(chǎn)品耐高溫性能的強弱,是衡量產(chǎn)品質(zhì)量優(yōu)劣的關(guān)鍵指標(biāo)。實際生產(chǎn)應(yīng)用中,潤滑油的蒸發(fā)損失由專業(yè)的測定儀器在國家標(biāo)準規(guī)定的實驗條件下測得。目前,國內(nèi)研制的潤滑油蒸發(fā)損失測定儀大多基于國標(biāo)NB/SH/T 0059—2010,該標(biāo)準通過將一定質(zhì)量的潤滑油樣品置入專業(yè)測定儀器中,在(245±0.5) ℃的穩(wěn)定加熱條件下對潤滑油加熱蒸餾1 h,測量實驗前后樣品的質(zhì)量,從而計算出實驗過程中潤滑油的蒸發(fā)損失值。文獻[1]研究表明,在潤滑油蒸發(fā)損失的測定環(huán)節(jié)中,實驗溫度的控制精度及穩(wěn)定性直接影響測量結(jié)果的準確度。因此,潤滑油蒸發(fā)損失測定儀內(nèi)部加熱設(shè)備的溫度控制技術(shù)是整個儀器的核心技術(shù)。當(dāng)今市面上,潤滑油蒸發(fā)損失測定儀的高端市場主要被美國、西歐等國家地區(qū)的產(chǎn)品所占據(jù),這些產(chǎn)品溫度控制性能良好、測量結(jié)果穩(wěn)定。其中,R&P公司通過引入模糊PID控制技術(shù),實現(xiàn)了溫度控制誤差不大于0.1 ℃,但價格昂貴。國內(nèi)自研的儀器雖然價格低,但大多采用常規(guī)PID控制技術(shù),溫控誤差一般約為0.5 ℃,控制性能與進口產(chǎn)品相比仍有一定差距,其產(chǎn)品主要集中在中低端市場。
潤滑油蒸發(fā)損失測定儀的溫度控制難點在于其系統(tǒng)本身的固有特性,由于儀器的加熱設(shè)備是由電熱絲、加熱槽、坩堝等共同構(gòu)成的電熱爐,該類系統(tǒng)的溫度具有典型的大滯后特征[2],從傳遞函數(shù)的結(jié)構(gòu)上分析,大滯后系統(tǒng)的滯后環(huán)節(jié)等同于在系統(tǒng)中增加若干極點,這使得系統(tǒng)響應(yīng)產(chǎn)生滯后,容易導(dǎo)致震蕩、發(fā)散等控制等問題。工業(yè)上對于大滯后系統(tǒng)的常用控制方法有Smith控制和Dahlin控制。Smith控制通過預(yù)估閉環(huán)系統(tǒng)的動態(tài)特性實現(xiàn)超前補償[3-6],在一定程度上避免了系統(tǒng)因滯后性導(dǎo)致的控制失調(diào)。而Dahlin控制則通過設(shè)計出一階慣性環(huán)節(jié)和純滯后環(huán)節(jié)相串聯(lián)的數(shù)字控制器,在保證控制器純滯后時間與被控對象滯后時間一致的條件下,較好地解決了系統(tǒng)的滯后問題[7]。Smith控制與Dahlin控制都較為依賴于系統(tǒng)的數(shù)學(xué)建模[8-9],一旦建立的系統(tǒng)模型與實際系統(tǒng)有偏差,控制器難以達到理想效果[10-11]。在潤滑油蒸發(fā)損失測定儀電熱爐的溫度控制應(yīng)用中,系統(tǒng)存在一定的非線性[2],其精確的數(shù)學(xué)模型難以建立,因此,單一的Smith控制和Dahlin控制不適用于本文的應(yīng)用場景。針對以上大滯后、非線性系統(tǒng)的控制問題,李俊紅等[12]通過引入動態(tài)矩陣控制,借助PLC實現(xiàn)了對電加熱鍋爐等大時滯系統(tǒng)的溫度控制,取得了較好的動態(tài)性能,但缺點在于控制精度不佳,張皓等[13]利用前饋控制原理,借助Smith預(yù)估器,并結(jié)合模糊PID算法實現(xiàn)了對工農(nóng)業(yè)生產(chǎn)過程中涉及到的非線性、大滯后系統(tǒng)的溫度控制;賀自名等[14]則設(shè)計了基于Smith變論域模糊自適應(yīng)PID控制器,對電阻加熱式真空蒸發(fā)鍍膜過程的溫度控制做了仿真測試,上述兩種控制方法均取得了不錯的控制效果,但僅限于仿真,均未結(jié)合實物做相關(guān)實驗驗證;近些年興起的基于神經(jīng)網(wǎng)絡(luò)的控制也被研究者應(yīng)用于大滯后、非線性系統(tǒng)的溫度控制,其中,凡占穩(wěn)等[15]設(shè)計了基于神經(jīng)元PID的真空爐自適應(yīng)溫度控制器,其控制器在調(diào)節(jié)時間、超調(diào)量、穩(wěn)態(tài)誤差及魯棒性等方面均有著不錯的表現(xiàn),但該類方法需要大量的訓(xùn)練樣本,且當(dāng)神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)較為復(fù)雜時,難以在算力有限的嵌入式設(shè)備上實現(xiàn),在實際應(yīng)用中有一定的局限性。
為克服上述常用溫度控制方法缺陷,有效提升潤滑油蒸發(fā)損失測定儀電熱爐溫度控制性能,進而提高儀器測量準確度,同時降低儀器生產(chǎn)成本,本文設(shè)計了一種基于Bang-Bang控制、模糊控制和PID控制相結(jié)合的復(fù)合溫度控制算法,并利用PT100、AD7793、STM32F103和固態(tài)繼電器等設(shè)計出相應(yīng)的溫度采集、控制電路,實現(xiàn)潤滑油蒸發(fā)損失測定儀的電熱爐溫度能夠在35 min內(nèi)達到目標(biāo)值245 ℃,且控制誤差≤0.2 ℃。
本文將潤滑油蒸發(fā)損失測定儀電熱爐的目標(biāo)控制溫度與實測溫度之間的偏差及偏差變化率作為決策變量,并根據(jù)偏差絕對值的大小和設(shè)定的閾值選擇合適的控制方法,實現(xiàn)對電熱爐溫度的精確控制,控制方法原理結(jié)構(gòu)如圖1所示。
圖1 模糊-PID復(fù)合控制
圖中,模式選擇的總體控制策略為:粗大偏差啟用全功率控制,中等偏差采用模糊控制,細小偏差執(zhí)行PID控制。控制輸出量為PWM脈寬占空比,由STM32內(nèi)部定時器產(chǎn)生,結(jié)合固態(tài)繼電器能夠?qū)崿F(xiàn)對電熱爐加熱功率的調(diào)控,從而達到溫度控制的目的。
根據(jù)上述控制原理,給出控制方法的具體數(shù)學(xué)表達式。設(shè)定在采樣時刻n,采用系統(tǒng)目標(biāo)溫度Td減去電熱爐實測溫度T(n),得到溫度偏差e(n),按式(1)計算前后兩個采樣時刻的溫度偏差變化率;按式(2)計算系統(tǒng)在采樣時刻n的控制輸出:
式中:ec(n)——前后兩個采樣時刻的溫度偏差變化率,℃/s;
e(n-1)——前一采樣時刻的溫度偏差值,℃;
TS——系統(tǒng)采樣時間,s。
式中:u(n)——控制策略輸出值,即PWM脈寬占空比,%;
fBang-Bang(e(n))——Bang-Bang控制輸出值,%;
ffuzzy(e(n),ec(n))——模糊控制輸出值,%;
fPID(e(n))——PID控制輸出值,%;
M1、M2——設(shè)定的偏差閾值,℃。
當(dāng)電熱爐的溫度偏差絕對值|e(n)| >M1,即當(dāng)前溫度遠離目標(biāo)值時,為使溫度快速接近目標(biāo)值,控制策略采用Bang-Bang控制。此時,若采樣值遠小于目標(biāo)值,控制器輸出PWM脈寬的極大值A(chǔ)RR,對應(yīng)電熱爐滿功率輸出;若采樣值遠大于目標(biāo)值,控制器輸出PWM脈寬的極小值0,對應(yīng)電熱爐停止加熱,即Bang-Bang控制的表達式為:
當(dāng)M2<|e(n) |≤M1,即當(dāng)前溫度較接近目標(biāo)值時,為保證系統(tǒng)調(diào)節(jié)速度的同時,減小超調(diào)量,控制策略采用模糊控制。為減少主控制器STM32的計算負荷,模糊控制器選用七級的二維輸入、單輸出結(jié)構(gòu),輸入變量的模糊化及輸出變量的解模糊均采用最大隸屬度法。根據(jù)總結(jié)的模糊控制規(guī)則,給出模糊運算中用到的模糊控制決策,如表1所示。
表1 模糊控制決策表
表中,E、EC分別表示溫度的偏差和偏差變化率模糊化后的模糊變量,計算時由實際變量經(jīng)過模糊因子映射到模糊域后,四舍五入并取整得到,即E= int[e(n)·ke+0.5],EC= int[ec(n)·kec+0.5],其 中ke、kec分別表示溫度偏差和偏差變化率的模糊因子;U表示控制輸出的模糊量;離散量{-3,-2,-1,0,1,2,3}分別表示輸入量模糊化后的模糊子集“負大”、“負中”、“負小”、“零”、“正小”、“正中”、“正大”。
考慮到電熱爐內(nèi)沒有制冷設(shè)備,其輸出的加熱控制量是非負的,因此,將上述的離散量加3,用非負的離散量{0,1,2,3,4,5,6}將輸出模糊量U平均分成7個等級,其中“0”表示停止加熱,“6”表示滿功率加熱,則每一級對應(yīng)的實際輸出量為ARR/7。模糊決策表預(yù)先存入STM32的內(nèi)存中,實際模糊運算時先由控制根據(jù)模糊化后的E、EC查表得出U,然后再解模糊得到實際輸出量。此時模糊控制表達式為:
當(dāng)|e(n)|≤M2,即當(dāng)前溫度非??拷繕?biāo)溫度時,為提高控制器的控制精度,控制策略采用PID控制。其中,PID控制器的類型選用數(shù)字增量式,其控制輸出的具體表達式為:
式中:KP——PID控制器的比例度盤;
Ti——積分時間;
Td——微分時間。
為將上述復(fù)合溫度控制方法應(yīng)用于潤滑油蒸發(fā)損失測定儀電熱爐的溫度控制,本文設(shè)計了基于STM32的溫度控制系統(tǒng),系統(tǒng)的原理框圖如圖2所示。
圖2 溫度控制系統(tǒng)原理框圖
由圖可以看出,溫度控制系統(tǒng)主要包含溫度傳感器PT100、采集電路、主控芯片STM32以及控制電路等。電熱爐的溫度信息由溫度傳感器PT100實時采集,并通過采集電路傳遞給控制器STM32,STM32根據(jù)采集的溫度信息和內(nèi)部的溫度復(fù)合控制程序計算出控制量,控制電路根據(jù)STM32輸出的控制量實時調(diào)整電熱爐加熱絲的輸出功率,達到控制電熱爐溫度的目的。
傳感器PT100測量溫度,關(guān)鍵在于其阻值的測量。本文采用恒流源法測量PT100兩端電阻,溫度采集電路如圖3所示。
圖3 溫度采集電路
圖中,U2為AD轉(zhuǎn)換芯片,選用ADI公司的AD7793。AD7793是一款 24位 Σ-Δ型 ADC,片內(nèi)集成有高增益、低噪聲的儀表放大器,同時內(nèi)置兩路匹配的可編程激勵電流源,尤其適用于測量PT100的電阻值。AD7793通過SPI通信接口(即圖中端口 CS1、SCLK1、DOUT1、DIN1)與主控制器STM32之間進行通信,完成自身工作模式的設(shè)定及測量結(jié)果的傳輸。U3為穩(wěn)壓芯片ADR391,用于為ADC提供穩(wěn)定的2.5V基準電壓,防止電路噪聲對電阻值的測量產(chǎn)生干擾。
PT100采用三線制接法與AD7793連接。IOUT1、IOUT2為AD7793的激勵電流輸出端,文中均設(shè)置為1 mA。AIN+與AIN-分別是AD芯片的正、負模擬輸入端,以差分的形式采集PT100兩端電壓。RL1、RL2為PT100的引線電阻,當(dāng)引線長度相等(即引線電阻相等)時,AD7793輸出的電流經(jīng)過相同的引線電阻時引起的電壓降相等,從而可以抵消引線電阻對測量結(jié)果帶來的影響。PT100兩端電壓采集完成后,主控芯片STM32根據(jù)采集的電壓和芯片設(shè)定的激勵電流求出PT100的電阻,結(jié)合PT100的阻值-溫度對應(yīng)關(guān)系式求解出電熱爐當(dāng)前的溫度值。根據(jù)AD7793數(shù)據(jù)手冊,為保證AD7793在緩沖模式下的濾波效果,AIN-端的電位必須在100 mV以上。因此,引入電阻R0以提高AD7793模擬輸入端的電位,本文R0取120 Ω。
由主控制器STM32直接輸出的控制量屬于弱電信號,需借助控制電路來執(zhí)行對電熱爐的溫度控制功能。系統(tǒng)的控制電路如圖4所示,主要由STM32的內(nèi)部定時器和外部固態(tài)繼電器構(gòu)成。
圖4 溫度控制電路
圖中,主控制器STM32經(jīng)復(fù)合溫度控制算法輸出的直接控制量為PWM波形,接至固態(tài)繼電器的控制端。固態(tài)繼電器接收到PWM波后,根據(jù)PWM波的占空比在控制周期內(nèi)調(diào)整輸出端的接通時間,以此改變電熱絲的加熱功率,從而實現(xiàn)系統(tǒng)的溫度控制。
PWM波形由主控制器STM32內(nèi)部定時器的自動重裝載值寄存器ARR和比較寄存器CCR的值決定,其中ARR的值決定PWM波形的周期,設(shè)定好以后不再更改;CCR的值即上文控制器的PWM脈寬輸出值u,決定PWM波形占空比,它由復(fù)合控制算法的計算結(jié)果實時在線更新。
電熱爐溫度復(fù)合控制程序主要包含電阻采集、溫度轉(zhuǎn)換、控制決策等子程序,圖5為溫度控制主程序流程圖。從圖中可以看出,整個溫度控制主程序在初始化完成后,首先執(zhí)行電阻采集子程序,由PT100、AD7793和STM32完成PT100兩端的電阻采樣。電阻采集完成后,執(zhí)行溫度轉(zhuǎn)換子程序,程序功能主要包含PT100的阻值-溫度轉(zhuǎn)換、PT100的非線性誤差校準以及轉(zhuǎn)換溫度的滑窗濾波處理。溫度轉(zhuǎn)換完成后,STM32根據(jù)目標(biāo)溫度和采樣時間計算當(dāng)前采樣時刻的溫度偏差e(n)和偏差變化率ec(n),并由|e(n) |和M1、M2的大小進行模式判斷,執(zhí)行后續(xù)的復(fù)合溫度控制算法。
圖5 復(fù)合溫度控制程序流程圖
圖6 復(fù)合控制與傳統(tǒng)控制對比
從圖中可以看出,對比3種控制方法,傳統(tǒng)的模糊控制調(diào)節(jié)時間短,但存在明顯穩(wěn)態(tài)誤差,PID控制存在較大超調(diào)量且調(diào)節(jié)時間較長,本文設(shè)計的復(fù)合溫度控制方法具有較快的動態(tài)調(diào)節(jié)速度和較小的穩(wěn)態(tài)誤差,控制性能最佳。
為防止偶然性誤差,在復(fù)合控制方法下,重復(fù)10次實驗,給出具體實驗數(shù)據(jù)如表2所示。
表2 復(fù)合控制10次重復(fù)性實驗
由表可知,采用本文設(shè)計的復(fù)合控制方法,潤滑油蒸發(fā)損失測定儀電熱爐溫度能夠穩(wěn)定在目標(biāo)值245 ℃附近,調(diào)節(jié)時間小于35 min,穩(wěn)態(tài)誤差小于0.2 ℃,達到設(shè)計預(yù)期。
為驗證復(fù)合溫度控制方法的抗干擾能力,在實驗溫度控制穩(wěn)定后,加入一個的外部干擾,觀察控制器的抗干擾能力,抗干擾測試結(jié)果如圖7所示。
圖7 抗干擾側(cè)視圖
從溫度曲線可以看出,加入擾動后,系統(tǒng)在復(fù)合溫度控制下,能夠自動調(diào)整回穩(wěn)態(tài)值,且調(diào)節(jié)過程較為平緩,具有良好的抗干擾能力。同樣,給出10次重復(fù)性實驗數(shù)據(jù),如表3所示。
表3 抗干擾的10次重復(fù)性實驗
從表中數(shù)據(jù)可以看出,在受到外界干擾后,本文設(shè)計的復(fù)合溫度控制方法能夠在700 s內(nèi)重新調(diào)整回目標(biāo)值,且穩(wěn)態(tài)誤差小于0.2 ℃。
內(nèi)部加熱系統(tǒng)的溫度控制精準度和穩(wěn)定性是評價潤滑油蒸發(fā)損失測定儀性能的重要因素,本文提出了一種基于Bang-Bang控制、模糊控制以及PID控制的復(fù)合溫度控制方法,設(shè)計出相應(yīng)的溫度控制系統(tǒng),實現(xiàn)了對潤滑油蒸發(fā)損失測定儀電熱爐溫度的快速且精確的控制。實驗結(jié)果表明,本文設(shè)計的控制方法能夠在35 min內(nèi)控制電熱爐溫度達到245 ℃并保持穩(wěn)定,穩(wěn)態(tài)誤差在0.2 ℃以內(nèi),且具有良好的抗干擾能力,有效提升了潤滑油蒸發(fā)損失測定儀電熱爐溫度控制水平,大大提高了儀器的測量性能。該溫度復(fù)合控制方法可適用于控制系統(tǒng)且存在大滯后及強干擾的情況。