0 引言
恒溫晶體振蕩器是目前頻率穩定度最高的晶體振蕩器,作為精密時頻信號源被廣泛應用在全球定位系統、通信、計量、頻譜及網絡分析儀等電子儀器中?,F代通信的迅速發展對恒溫晶體振蕩器的穩定度提出了更高的要求。為了獲得較高的頻率穩定度,必須采用高品質的石英諧振器以及良好的控溫系統實現恒溫控制。傳統的PID控制算法簡單、魯棒性好、可靠性高,并且可以消除穩態誤差。而在實際中被控對象往往具有非線性、不確定性難以建立精確地數學模型,因此應用傳統的PID控制器難以達到理想的控制效果。鑒于模糊控制具有快速性的特點,同時還可以保持較小的超調量。文中將模糊控制與PID控制算法相結合,從而得到一種控制規則簡單,控制性能良好的控制方法。
1 恒溫晶體振蕩器硬件原理
由于晶體振蕩器的頻率溫度特性主要由石英諧振器的頻溫特性決定。因此在制作恒溫晶體振蕩器前,首先要選擇性能良好的高品質諧振器,不同切型的諧振器頻率溫度系數也不同,AT切諧振器的振蕩頻率與溫度的關系呈近似三次函數關系,具有零溫度系數點。因而把控制溫度設定在諧振器頻率溫度曲線拐點溫度處即可實現振蕩器輸出穩定頻率的目的。由高品質的諧振器和穩定的振蕩電路所組成的恒溫晶體振蕩器基本框圖如圖1所示。

它的工作原理是:在外層加熱電路中,控制芯片根據片內傳感器所測得的溫度對外槽內控制加溫至接近石英諧振器拐點溫度處實現基礎加溫控制;內層加熱電路中,控制芯片根據溫度傳感器所測得的溫度對內槽控制加溫,使內槽溫度穩定在石英諧振器拐點溫度處從而實現精確加溫控制。內槽在制作上選用導熱系數高的紫銅,提高內槽的傳熱性能;外槽在制作上選用導熱系數較低的聚氨酯泡沫塑料灌注,使其和元器件粘在一起,不僅保溫性好而且有防震的功能。
控溫部分采用單片機c8051f330來控溫,它主要通過軟件實現,結合硬件電路,構成數字化精確控溫。這里主要介紹控溫算法的實現以及MATLAB仿真測試結果。
2 PID控制器的控制原理
PID控制器是一種線性控制器,其原理如圖2。


式(1)中Kp為比例系數;Ti為積分時間常數;Td為微分時間常數。
在PID控制過程中,首先根據被控對象的數學模型確定PID,然后再用偏差e作為輸入,計算出控制量,并驅動相應的執行機構來減小誤差,直到被控對象穩定在允許的范圍內。
3 模糊PID控制器的控制設計
模糊PID控制器以偏差E和偏差變化率Ec作為輸入,可以滿足不同時刻的E和Ec對PID參數自整定的要求,利用模糊規則在線對PID參數進行修改,便構成了模糊自整定PID控制器,其結構如圖3所示。

3.1 模糊控制規則的設計
將偏差E和偏差變化率Ec作為模糊控制器的輸入,PID控制器的三個參數Kp、Ki、Kd作為輸出。根據項目實際情況,E和Ec模糊子集為{負大、負中、負小、零、正小、正中、正大},記為{NB、NM、NS、ZO、PS、PM、PB},將E和Ec量化到(-3,3)的區域內。同時Kp、Ki、Kd的模糊子集{負大、負中、負小、零、正小、正中、正大},記為{NB、NM、NS、ZO、PS、PM、PB},分別量化到(-0.4 0.4)(-0.06 0.06)(-3 3)區域內,輸入采用高斯型隸屬度函數,輸出采用三角形隸屬度函數,其隸屬函數如圖4、圖5所示。

3.2 模糊PID控制器所遵循的調整規則
PID參數模糊自整定是找出PID三個參數與偏差E和偏差變化率Ec之間的模糊關系,在運行中不斷檢測E和Ec,根據模糊推理對三個參數進行在線修改,以滿足不同E和Ec對控制參數的不同要求,從而使被控對象具有良好的動、靜態性能。模糊PID控制器的調整規則是:
(1)當E較大時,為加快系統響應速度,應取較大的Kp和較小的Kd,由于積分太強會使系統超調加大,因而要對積分作用加以限制,通常取Ki=0或者較小值;
(2)當E和Ec中等大小時,為減少系統超調和保證一定的響應速度,Kp應適當取小些,同時對Kd的取值對系統影響很大,也應取小些,Ki的取值要適當;
(3)當E較小時,為減小穩態誤差,Ko與Ki應取得大些,在這種情況下,Kd的取值要適當,取值不當會引起系統震蕩。其原則是:當Ec較小時,Kd取大些,當Ec較大時,Kd取較小的值,通常Kd為中等大小。
根據PID參數整定規則,可設計一個2輸入3輸出地Mamdani型模糊控制器。真值的計算采用Mamdani算法,合成法采用Z-N算法。解模糊化采用面積中心(Centroid)法。根據工程技術人員技術知識和實際操作經驗基礎上,列出輸出變量Kp、Ki、Kd的控制規則如表1、2、3所示。


根據表1、2、3整理出49條模糊控制規則進行Kp、Ki、Kd 3個參數的自整定。采用中心法解模糊化后,在MATLAB模糊控制規律觀察器中可調整相應輸入組合分別得出相應的解模糊輸出Kp、Ki、Kd的值。
3.3 模糊推理
Mamdani推理法是一種在模糊控制中普遍使用的方法,可用Mamdani提出的推理法來解決這個問題.用一個由X到Y得模糊關系Ra→ε來表示模糊條件語句:ifA then B,當輸入為A*時,輸出B*可由下式求得:
![]()
其中表示模糊關系的合成的運算。模糊Ra→ε關系根據Mamdani定義:
μRA→B(x,y)=[μA(A)∧μB(y)]所以根據上式控制器的輸出B*的隸屬度函數為:
![]()
3.4 去模糊化
把模糊量轉換為精確量的過程稱為清晰化,又稱為去模糊化,或成為模糊判決。為了獲得準確的控制量,就要求模糊方法能夠很好地輸出隸屬度函數的計算結果。本文采用工業控制中廣泛使用的去模糊化方法一加權平均法,是取隸屬度的加權平均值輸出地清晰值。假設輸出模糊集可表示為U=∑uU(xi)/xi,按公式計算,最后輸出清晰量:

4 模糊PID控制系統仿真及結果分析
由于恒溫晶體振蕩器控制系統加熱部分本身具有滯后性、非線性、時變性的特點,將其近似為一個二階滯后環節的描述為:

4.1 模糊PID控制系統仿真
在Matlab的Command Window窗口運行Fuzzy函數進入模糊邏輯,確定模糊控制器類型,編輯輸入輸出變量的隸屬度函數,建立模糊控制規則,生成*.fis文件并導入到仿真系統中的模糊控制器命名為md.fis。接下來返回到Command Window窗口,輸入Simulik進入Simulik環境下。建立如圖6所示的完整模型。然后再雙擊Fuzzy Logic Controller圖標,在彈出對話框中輸入md即可。仿真實驗結果如圖7所示。

4.2 PID控制系統仿真
在Matlab的Simulink環境中建立如圖8所示的PID控制仿真框圖,得到仿真結果如圖9所示。

由仿真結果可明顯看出模糊自整定PID調節較之常規PID調節,系統的快速性和穩定性得到了提高,總結起來模糊自整定PID主要有以下幾個優點:
(1)模糊自整定PID算法初值為零,不需要人工給定初始整定值,也能通過自整定獲得參數的最優值,且實現簡單,而常規PID算法需要操作者根據以往的累積經驗以及實際的系統輸出經多次試調之后獲得較優值。
(2)模糊自整定PID算法的超調量和調整時間均小于常規PID算法。
(3)模糊自整定PID控制器使系統的快速性和各項性能指標得到顯著提高,說明了該方法的有效性。
5 結束語
文中設計了一種基于模糊PID控制算法的恒溫晶體振蕩器。該系統利用c8051f300單片機為控制核心實現了晶體振蕩器溫度的實時控制,并用Matlab進行了仿真。仿真結果表明,該系統既能保證溫度調節的快速性,又能滿足系統達到晶體諧振器拐點溫度時系統的穩定性,可以保證頻率穩定度的恒溫控制。
