基于多線程溫度控制專家系統(tǒng)
摘要:針對常規(guī)模糊溫度控制存在有較大穩(wěn)態(tài)誤差、在設(shè)定點附近易產(chǎn)生振蕩等不足,在此提出將專家系統(tǒng)引入模糊控制,以達到精確控溫的目的。介紹了一種以80C196KB單片機為控制核心,以多線程和專家系統(tǒng)為算法的控制方法,并介紹了簡單的多線程和專家知識在溫度控制上的應(yīng)用。應(yīng)用結(jié)果表明,基于多線程的溫度控制專家系統(tǒng),穩(wěn)態(tài)誤差小、控制精度高,控制方案有效、可行。
關(guān)鍵詞:單片機;多線程;專家系統(tǒng);溫度控制
0 引言
隨著科學(xué)技術(shù)的發(fā)展,溫度的自動控制已經(jīng)廣泛地應(yīng)用在生產(chǎn)和生活中,因此對自動控溫方法的研究具有很強的實際意義。由于溫度具有大慣性和純延滯的非線性特性,實際溫度控制過程的復(fù)雜性又使溫度控制系統(tǒng)的參數(shù)不易確定,因此實際的溫度控制系統(tǒng)是一個復(fù)雜的自動控制系統(tǒng),用一般的控制理論難以得到較為滿意的結(jié)果。以此為目的,在此設(shè)計了基于80C196KB單片機為核心的溫度控制系統(tǒng),通過多線程和專家系統(tǒng)優(yōu)化程序的算法,對溫度進行閉環(huán)控制,從而達到精確控溫的目的。
1 硬件系統(tǒng)設(shè)計
圖1為系統(tǒng)原理框圖,通過圖示可以看出,硬件系統(tǒng)分為:溫度采樣及放大、顯示、按鈕輸入、溫度控制四個部分。系統(tǒng)首先通過AD590采樣將溫度信號轉(zhuǎn)化為電壓信號,電壓信號經(jīng)過放大通過80C196KB單片機對其進行A/D采樣,通過采樣的結(jié)果,可以算得控制系統(tǒng)的溫度并顯示出來,然后將實際溫度與設(shè)定的溫度(設(shè)定溫度可以通過輸入按鈕進行輸入)進行比較,根據(jù)比較的結(jié)果控制加熱電阻和風(fēng)扇的占空比,從而達到閉環(huán)控溫的目的。
2 軟件系統(tǒng)設(shè)計
在軟件設(shè)計中,采用了多線程的編程結(jié)構(gòu)并結(jié)合專家知識,對整個系統(tǒng)的控制性能進行改善。
2.1 多線程結(jié)構(gòu)
多線程是指“同時”存在幾個執(zhí)行體,按幾條不同的執(zhí)行線索共同工作的情況。多線程實現(xiàn)單個進程中的并發(fā)計算,各線程間共享進程空間的數(shù)據(jù),并利用這些共享單元來實現(xiàn)數(shù)據(jù)交換、實時通信與必要的同步操作。在單片機編程里面,多線程可以通過編寫中斷子程序進行實現(xiàn)。一個中斷子程里面可以包含優(yōu)先級不同的線程,優(yōu)先級高的排在該中斷子程的開始,優(yōu)先級最低的排在最后。執(zhí)行順序如下:屏蔽其他線程→讀系統(tǒng)共用資源→執(zhí)行操作→改寫系統(tǒng)共用資源→開放所有線程→返回主進程。
2.2 專家系統(tǒng)
在該系統(tǒng)中,加熱電阻的控制脈沖和風(fēng)扇的控制脈沖是控制溫度關(guān)鍵,其脈寬的設(shè)置決定了系統(tǒng)溫度控制的精度和穩(wěn)定性,而脈寬的設(shè)置是由專家知識進行判定的。
2.2.1 專家系統(tǒng)概述
所謂專家系統(tǒng),是指具有專家知識,能夠像專家一樣解決特定領(lǐng)域復(fù)雜問題的計算機軟件系統(tǒng)。其特征如下:
(1)系統(tǒng)功能的針對性。ES通過犧牲通用問題求解能力而換得在某一狹窄領(lǐng)域高水平處理問題的能力。
(2)符號推理啟發(fā)性。ES主要處理不良結(jié)構(gòu)問題,需運用多種啟發(fā)性經(jīng)驗知識。這些啟發(fā)式知識往往具有不完全性和不確定性,因此ES常要采用不精確推理等非常規(guī)推理方法。
(3)透明性。ES可向用戶解釋其推理過程,并能回答一些關(guān)于它自身的問題。
(4)靈活性。由于ES知識庫采用了獨立于程序的外部顯式表示方法,用戶很容易對其進行修改或補充。
2.2.2 脈寬控制
從經(jīng)驗可以知道,當(dāng)實際溫度和目標(biāo)相差(下面統(tǒng)一稱作△T)甚遠時,希望電阻發(fā)熱量大些或者風(fēng)扇轉(zhuǎn)速高些;而△T較小時。希望電阻發(fā)熱量小些或者風(fēng)扇轉(zhuǎn)速低些。
評論