耿 婧
(安徽國防科技職業學院,安徽 六安 237011)
智能小車大多是在現有玩具電動車的基礎上,加裝光電、紅外線等傳感器及金屬探測器,實現對其速度、位置、運行狀況的實時測量,并將測量數據傳送至單片機進行處理,然后由單片機根據檢測到的各種數據實現對電動車的智能控制。隨著單片機在不同領域投入使用,受運行時間、金屬材料等因素的影響,導致單片機負荷較高、溫度過熱,因此,單片機溫控技術引發廣泛關注[1]。
張安迪等[2]設計了在正常工作條件下以單片機為核心控制元件、熱電制冷器和加熱器為執行元件、溫度傳感器和鉑電阻為溫度檢測元件的溫度控制系統。此系統結構簡單,無需大量運算,易于實現,但具有較大的滯后性,會影響到整個溫控系統的穩定。孫萬麟等[3]以單片機、可編程分辨率的數字溫度傳感器和液晶顯示屏等為核心控制器件,設計了一款溫室多點溫度檢測系統,但是當要求精密控制溫度時,該方法很難實現。
模糊PID方法通過輸入誤差和誤差變化率兩個變量,動態調整PID控制器的參數,使得控制器的性能達到最優。本文基于模糊PID提出了智能小車單片機溫度控制技術。
AT89C51單片機是一種低損耗、高性能的八位微處理器,可以使用軟件編程實現各種控制算法和邏輯控制,不需要外部擴展存儲器,可使系統整體結構更為簡單。因此選用AT89C51單片機可以實現基于模糊PID方法的智能小車溫度控制。AT89C51單片機共40個引腳,32個并行口,其內部引腳圖,如圖1所示。

圖1 AT89C51單片機引腳圖
圖1中,串行口20為接地引腳,串行口40為電源引腳;串行口9為復位引腳,也是備用電源引腳,用于實現溫度控制的復位功能;串行口1~8、10~17、21~28和32~39均為I/O端口引腳,實現溫度數據的輸入和輸出;串行口18和19為時鐘引腳,實現晶振輸入功能;串行口29為輸出訪問外部存儲器選通信號;串行口30為溫度控制的脈沖輸入;串行口31為電源輸入。
對于常規控制器對溫度控制效果不佳的問題,提出了一種新的基于模糊PID的智能小車單片機溫度控制技術,從而有效地解決非精確的信號問題[4]。根據PID控制的特性,在智能小車單片機溫度控制的各個環節中,深入地分析溫度控制的要求,以達到對智能小車溫度控制的實優化時目標[5]。基于此,結合模糊PID溫度控制方法來實現對智能小車單片機溫度的有效控制。PID控制函數表示為:

式中:f(n)為控制器的輸出,gj(x)為控制器的第j個輸入,Ep為差分常數。
控制器輸入數據被定量地轉化為一組與模糊PID區間中的幾個模糊PID子集中相關的數值,通過模糊化得到對應的模糊PID子集中的歸屬[6]。在模糊論域中,利用“負值”(NB),“0”(Z0),“正大”(PB)等詞語來解釋“模糊性”。根據實際情況,一般選取4~8個模糊性的子集來覆蓋整個問題。采用AT89C51單片機作為控制器,輔助取樣、回饋、驅動、可控硅主要電路來實現對智能車的溫控。采用溫度傳感線路對電站高壓單片機的溫度狀態進行實時監測,通過數據傳輸至智能溫控器進行線路調節;通過A/D取樣,通過A/D變換器向溫控儀發送數據量;采用單片機對采樣器內的溫度值進行全面處理,在溫度超出安全范圍時,可啟動冷/暖風發生器,將其降溫至預定值,并能實現對溫度的調節,見圖2。

圖2 模糊PID溫度控制設備結構
如圖2所示,單片機溫度自動控制設備具有高溫報警、自動跳閘、實時溫度數據監管、風機啟動、停止、鐵芯高溫報警等功能,一旦溫度超過標準,報警燈就會自動跳閘[7]。單片機的動力性能和承載能力決定智能小車的驅動方式,根據單片機的負載與功率需求,綜合研究其功率、扭矩、轉速等參數,確定智能小車最佳的驅動方式。基于以單片機為控制器的小車動態性能,得到其轉彎半徑為:

式中:au,an代表兩個主動輪的直線中心,tL代表兩個主動盤的中心,tR代表單片機的轉向。單片機在運動時,會產生方向偏差e和角度偏差m。當小車行駛時,其驅動力需要對抗各種阻力,例如:摩擦力W、斜面阻尼Q、加速阻尼C。基于上述受力干擾計算單片機的整體驅動能力為:

式中:μ為小車的重量,P為最大負荷;在單片機工作過程中最少的接觸是智能小車行駛過程中的地面摩阻系數ηi,最大的坡度d。單片機的傳動馬達的額定轉矩H與單片機驅動力Z之間的控制關系為:

式中:L是驅動輪的直徑,a為最大的加速度。因此,汽車PID控制中心質心轉速為:

單片機是一個復雜的多耦合的復雜非線性體系,其動態特性很難通過單一的方法獲得。根據電機的原理,得出了溫度ΔT和電樞的電壓U的關系:

進一步根據PID的尺寸調節智能小車溫度控制參數。假定一次體系的主要功能是換熱,所以得到了一個最優的換熱器計算公式為:

根據該方程推導出PID溫度控制的傳輸方程為:

PID參數的調節對PID的控制效果具有很大的影響,PID控制器在進行參數整定過程中,要求對其進行數學模型化,并采用比例調節、積分調節、微分調節等方法,根據設定值的大小,采用相關的控制方法[8]。PID調整過程的工藝參數可以按下列方法進行:采用比例系數Kp來確定PID的積分項與差,此時的PID是單純的比例控制,觀察到該體系的動力學特性,當曲線繞著給定的中心振蕩時,該體系的變化趨勢沒有變化,逐漸減小。當處于振動時,應將Kp的值增加到60%,使之成為參考。在調節時,必須對各控制點進行微分調節,以保證微分運動達到0。當無過調節、過調節少、上升速度較低時,則要增加比例系數,增加積分的數量。當出現了過度的曲線緩慢的錯誤清除速度時,需要增加積分的作用來減少積分的數量[9]。如果在經過一段波動后,控制曲線出現了過大的變化,或者出現了不穩定的情況,那么應該減少比例因素,并提高積分的數量[10]。調整因子和調整時刻都要經過數次調整,在調整數值比較大的情況下,要增加一定的誤差,再經過反復調整才能保持穩定性。
在熱靶標定中,使用標稱功率的熱靶加熱,其標稱電流約1A。將目標溫度表的測點值與一個溫控對象的階躍響應相結合,從而得到一個溫度場的數學模式。加熱對象的工作環境是非常復雜的,它的工作方式經常會改變[11]。通過對熱靶進行標定,得到了與一次加熱器相同的溫升曲線,發現熱靶管熱控制有一定的延遲,其延遲系數算法為:

式中:e-2τ為PID開環的功率;?為躍響系數。根據采樣時的偏差m,對PID控制設備進行離散求解。選取合適的采樣周期T,對該公式進行數值采樣,該公式可以由線性控制方程替代。
在PID調節時,由于各個參量的改變,會使整個控制的穩定性和其他溫度參量產生改變。因此為保障熱靶加熱性能,需要對于PID控制穩定運行進行反復調試,導出在固定時間范圍內的調試算法,具體為:

式中:E(i)為在時間域熱靶的熱輻射方程,b是恒定的。由于高溫靶在不穩定的條件下,其受熱輻射強度會受到外部條件的影響。當外界環境不同時,PID控制不能迅速、準確地調整相同的設定值。通過MATLAB擬合方法,得到了所有的數據點集。通過這種方法,可以在一定的時間區間中獲得一個熱靶熱函數。利用多個參量進行擬合,得出了開環系數E(i)=100,在加熱時,外界的溫度越高,對外界熱量的吸收越大,反之則越低。因此,在車內氣溫降低、車外氣溫升高時,維持熱量平衡所需的電能也會增加[12]。儀表接收到的溫度訊號需要通過自動調節的開啟和關閉來完成高溫的自動警報和自動斷電,采用主機界面顯示、聲音報警等方法進行溫度控制,具體步驟如圖3所示。

圖3 智能型熱靶溫控處理步驟優化設計
通過通信技術把物體的溫度信息寫入單片機,通過單片機來完成溫度的檢測。采用直流固態保護器的驅動電路,使其能對熱靶進行加熱[13]。由于高溫靶在不穩定的外部條件下,其受熱輻射強度會受到外部條件的影響。在熱靶目標受熱過程中,外部環境的溫度越高,對外部的熱吸收的作用越大,其散熱性能就越差。因而,在外部條件較差的情況下,當熱靶目標設備保持熱均衡所需要的電力較大、外部條件較高時,保持熱靶目標設備熱靶均衡所需要的電力較少。所以,在外部環境溫度的初值存在差異的情況下,同一PID參數無法快速精確地將溫度調節到同一設置值的位置。
為保障智能小車單片機溫度控制效果,必須設置偏差的控制范圍,基于此需要計算模糊偏差率,具體算法如下:

經過計算得到熱靶加熱誤差準確度,然后將其離散,從而達到連續的程度。為了實現模糊控制,需要將熱靶加熱輸入從基本論域轉換為模糊集合理論,再用量化因子來實現。通過以上PID模糊性過程,可以得到一個包含大、小、中的輸入值和輸出數值,從而得到屬于功能的曲線,如圖4所示。

圖4 輸入變量隸屬函數曲線
圖4展示了一個依賴于輸出的變數,根據設計穩定性、持續響應時間、穩態準確度等方面的要求,利用PID進行動態、動態、穩態的精確調節,得到了PID控制器的溫控規則:存在較大的錯誤時,必須增加響應速率,避免錯誤,降低連續的響應[14]。PID的選擇要以最大和最小為約束,保證偏移的量值都在中等范圍內的同時,保證溫度的上升速度是不變的,因此,此時要選用隸屬函數曲線最短的兩個最大值和一個最大值。如果有較大的偏差,可以選擇兩個較大的參數值,以保證在接近設定的條件下單片機的穩定運行。將控制分為數據采集、輸出控制、數據交互和人機界面四大模塊。采用AVR芯片內的ID變換電路,實現對熱靶信號的模擬,并對高溫數據和低溫數據進行數字化處理[15]。
采用模糊PID控制算法,對采集樣本進行控制運算,再利用MCU內的A/D變換實現模擬信號;數據交換部分采用USB與AVR單片機上的芯片相結合,實現對游動和磁盤信息的采集;智能溫控將采集到的數據進行轉換,設定成對應的溫度計,并與各種溫差進行比較,最后調節溫度值,實現PID自動調節。本方案的核心內容是通過單片機采集到溫度數據,并根據此方法進行計算,再通過單片機進行控制,設備的功能模塊分配如圖5所示。
圖5智能小車單片機溫度控制設備結構配置優化
在設計中要充分地考慮噪聲的影響,在布線時要注意噪聲的隔離,增設了一個硬體濾波器,并加入了A/D轉換中的軟件濾波,使得噪聲降到最低,提高A/D轉換精度:該方法需要將溫度的模擬值轉換成數值的電壓,然后用單片機對數據進行處理和運算。因此A/D轉換的精確度將會對MCU的運算精度產生很大的影響。根據各溫度信號和A/D參考電壓的變化情況,選擇合適的A/D模塊可以有效地改善整體的控制性能在單片機控制的范圍內。在溫度調節過程中,很多因素都會對溫度的精確控制有很大的影響,所以在進行溫度調節時應充分考慮各種影響因素,采取合理的措施以確保溫度的精確。下面將對溫控體系中包含的各個因素進行分析:測溫電路精度的測定、測溫電路的溫值信號控制回路的輸入,控制的精度依賴于測溫電路的精確程度。但在實際運行過程中,溫控設備因其導熱問題的復雜性而表現出較大的非線性時滯和不均化特征,且溫控設備的延時主要是容積延時,延時大小取決于加熱體結構、容量大小、溫度元件和溫度傳感器的設定。絕大多數的熱水器都是采用強迫式的方式來進行加熱,較少采用自然冷卻。在過程控制方面,通常把電熱元件的動態特性看成是一條單一的滯后鏈條,它是一條、兩條或多條的慣性連接。

根據上述的模糊性和模糊度推斷,所述的輸入是一種包含了ΔSP、ΔSD的模糊度的集合,因此,必須將其解模糊化,才能將其轉化為清晰的數值。由于模糊PID具有較為平穩的熱性能,因此利用最大從屬度方法進行了解模約,便于進行計算。利用最大隸屬度法對溫度變化進行解模糊化管理,選擇與其最大值相關的模糊化,然后利用定量變換得到明確量,如公式(13):

上述公式的辨識模糊度是利用規則庫表達式推演出智能小車運行溫度的上下限幅度,基于該數值進行溫度控制,由此保證智能小車運行安全。
設定0℃為起始溫度,目標溫度為25℃,30s后將目標溫度升至30℃。得出PID的初始值為Kp0=0.00016。在此基礎上,對各種影響因子的影響進行了仿真調整。通過以下實驗來檢驗智能小車單片機溫控的合理性。把需要進行交換機的資料裝置作為外接裝置,主要包含Windows應用程式、其他主機。只有在確定了外置裝置以后,才能對智能小車單片機進行溫度的自動調節。在S7-200PLC中選定測點數量,然后單擊“確認”,彈出一個組態信息,把這個檔案改成名字,然后在裝置所選的連線界面上填上一個位址。將串行通訊的參數設定為:速率為9800bit/s,傳輸8bit的數據。同時,單片機溫控儀的各項指標如表1所示。

表1 單片機溫控儀參數設置
為避免因車輛外部環境的改變而對電站高壓單片機的溫度調節試驗產生的不利影響,將車輛的車溫設定在25℃左右,規范小車溫度變化幅度范圍,具體如表2所示。

表2 智能小車溫度變化情況
用文獻[3]改進溫室多點溫度檢測方法及本文方法進行檢測,在相同環境下,對比文獻[3]方法與本文方法的實際應用情況,結果如圖6所示。

圖6 兩種溫度自動控制結果對比
從圖6可以看出,相對于文獻[3]方法而言,本文方法在實際應用過程中更符合表2中的標準值范圍,進一步對比文獻[3]改進溫室多點溫度檢測方法和本文模糊控制算法在相同干擾環境下的熱靶溫控偏差,具體如圖7所示。

圖7 兩種方法熱靶溫控偏差對比結果
基于圖7的檢測結果可知,在干擾環境下,本文方法在實際應用過程中溫控偏差明顯更低,進一步對比分析了相同環境下兩種方法的響應時間,具體檢測結果,如圖8所示。

圖8 單片機溫控響應時間
基于圖8的對比檢測結果可知,相對于文獻[3]方法而言,本文方法在相同環境下控制響應更加迅速,且溫度控制的穩定性也更好,由此證實,本文方法可以更加快速、準確地對智能小車溫度進行有效控制,保證溫度控制的有效性和合理性,充分滿足研究要求。
為了更好地提高智能小車單片機溫度控制效果,結合模糊PID技術進行了優化研究。通過實驗驗證了本文方法控制的溫度均在標準范圍內,在干擾環境中溫控偏差更低。不僅克服了運行過程中存在的波動過大等問題,而且溫度控制響應時間短,可以更好地實現對溫度的有效控制。