隨著技術的發展,半導體雷射器在各個領域的應用日益擴展。在軍事方面可用作雷射引信、深海光通信等,半導體雷射器是惟一能夠用於彈上引信的雷射器;在產業和技術方面半導體雷射器是光纖通信系統的惟一實用化光源;在醫療和生命科學研究方面進行的雷射手術治療、生命科學研究也都與半導體雷射器密不可分。但是,半導體雷射器的輸出功率隨溫度有很大的變化,顯然這不是人們所希望的。因此如何精確控制其工作溫度相當重要。
該文介紹具有代表性的基於Fuzzy-PID參數自整定的半導體雷射器恆溫控制系統的設計實現。溫控系統本身為一個大滯後系統,純滯後可引起系統不穩定,且半導體雷射器的閾值電流對溫度變化相當靈敏,因此對其溫度控制系統的精度要求較高。設計中採用的Fuzzy-PID複合控制方式極大的彌補了單純採用PID算法的不足,既具有模糊控制魯棒性強、動態響應好、上升時間快、超調小的特點,又具有PID控制器的動態跟蹤品質和穩態精度。對PID參數的模糊自適應整定進一步完善了PID控制的自適應性能,在實際應用中取得了很好的效果。
筆者所設計的小型半導體雷射器的實用恆溫控制系統由傳感器、AT89C51單片機、執行機構(可控恆流源、半導體製冷器)及其他一些外圍電路如鍵盤、顯示及保護電路等構成閉環控制迴路。
控制部分採用自整定Fuzzy-PID的複合控制使單片機輸出PWM脈衝,進而控制執行機構輸出到半導體雷射器的電流量,實現小型半導體雷射器的實用恆溫控制系統。上述提及的「參數自整定」是指系統中由於採用了模糊自適應PID控制算法,系統就可以在沒有操作者幹預的情況下根據控制系統的實際響應情況,運用模糊推理,自動實現對PID參數的最佳調整,從而以優化方式改變PWM輸出波形的佔空比,合理的控制恆流源的輸出,使小型雷射器工作溫度保持恆定,從根本上實現自動控制,這也是設計該恆溫控制系統的關鍵所在。
系統各部分電路均採用常規器件,成本低,維修方便。
採用DALLAS最新單線數字溫度傳感器DS18B20。DS18B20支持「一線總線」接口,測量溫度範圍為-55~+125℃。現場溫度直接以「一線總線」的數字方式傳輸,大大提高了系統的抗幹擾性。
DS18B20為3引腳晶片,如圖2所示。DQ為數位訊號輸入/輸出端;GND為電源地;VDD為外接供電電源輸入端(在寄生電源接線方式時接地)。DS18B20內部結構主要由4部分組成:64位光刻ROM、溫度傳感器、非揮發的溫度報警觸發器TH和TL、配置寄存器。
DS18B20的3腳接+5V,1腳接地,2腳接系統中單片機89C51的一個I/O口,用於將採集到的溫度送入單片機中進行處理,2腳和3腳之間接一個4.7K的上拉電阻,即可完成溫度採集部分硬體電路。
DS18B20規定了自己的通訊協議,能夠將採集 到的溫度以數字量的形式存儲在內部存儲器中。根據DS18B20的通訊協議,主機控制DS18B20完成溫度轉換必須經過3個步驟:每一次讀寫之前都要對DS18B20進行復位,復位成功後發送一條ROM指令,最後發送RAM指令,這樣才能對DS18B20進行預定的操作。復位要求主CPU將數據線下拉500μs,然後釋放,DS18B20收到信號後等待16~60μs左右後發出60~240μs的存在低脈衝,主CPU收到此信號表示復位成功。
DS18B20雖然具有測溫系統簡單、測溫精度高、連接方便、佔用口線少等優點,但在對DS18B20進行讀寫編程時,必須嚴格保證上述的讀寫時序,防止當程序讀該DS18B20時,由於某個DS18B20接觸不好或斷線沒有返回信號,而使程序進入死循環。採用此種溫度傳感器在一般的精度要求下完全能夠達到要求,且因其硬體實現簡單,應用將愈加廣泛。
圖2溫度傳感器
採用「4NIC朝陽電源」。該電源具有輸入極性保護、過流保護、過壓保護、過熱保護、輸出電壓大範圍可調等優點。通過PWM輸出的脈衝對其進行控制完全能滿足半導體製冷器所要實現的恆溫控制要求。
圖3恆流源電路
這是一種熱電製冷器。根據熱電效應技術的特點,當製冷器有電流流過時,在它的兩個面上將分別產生吸熱和放熱現象。並且電流流向相反時,吸熱面和放熱面也相反。因此只要控制流過製冷器電流的大小和方向,就能對雷射器進行製冷或加熱,從而控制雷射器的工作溫度。特別適用於有限空間的製冷或加熱。
系統採用TEC1系列。該產品冷卻或加熱速度快,其冷卻或加熱速度可通過調節工作電流來控制,便於系統中通過Fuzzy-PID參數自整定實現的自動恆溫控制。
圖4半導體製冷器
鍵盤用作控制信息的輸入。系統採用4個按鍵,分別實現系統復位、功能轉換、設定溫度逐次加1、設定溫度逐次減1。系統中初始設定溫度為25℃,用戶可根據需要自行加減。
系統採用3位共陽極LED靜態顯示當前溫度值。顯示數據只用一個I/O口,從而節省了單片機埠資源。
掉電保護電路是為防止系統因為意外掉電導致丟失數據而設計的。集成電路7805為一個單一的+5V穩壓塊,和備用電源分別通過二極體接到單片機的電源端;當穩壓電源略高於+5V時,備用電源不工作,同時555定時器接成單穩形式;為防止幹擾產生誤動作,應用了光電耦合器TIL113。
整個系統的硬體組成相對簡單,但較小的硬體開銷需要相對複雜的軟體進行補償,下面較為詳細地分析軟體的設計。
單片機控制是一種採樣控制,系統採用的增量式PID控制算法為:
由於該控制算法不需要累加,控制增量Δu(k)僅與最近的k次採樣有關,所以誤動作時影響小,而且較容易通過加權處理獲得比較好的控制效果。這也是系統採用此增量式PID控制算法作為模糊PID控制器中PID調節器部分算法的主要理由。
自適應模糊PID控制器以誤差e和誤差變化ec作為輸入,可以滿足不同時刻的e和ec對PID參數自整定的要求。利用模糊控制規則在線對PID參數進行修改,便構成了自適應模糊PID控制器。
模糊自整定PID是在PID算法的基礎上,通過計算當前系統誤差e和誤差變化率ec,利用模糊規則進行模糊推理,查詢模糊矩陣表進行參數調整。
模糊控制設計的核心是總結工程設計人員的技術知識和實際操作經驗,建立合適的模糊規則表,得到針對kp、ki、kd 3個參數分別整定的模糊控制。
kp、ki、kd的模糊規則表建立以後根據如下方法進行3參數的自適應校正,將系統誤差e和誤差變化率ec變化範圍定義為模糊集上的論域。
其模糊子集為e,ec={NB,NM,NS,O,PS,PM,PB},子集中元素分別代表負大,負中,負小,零,正小,正中,正大。設e、ec和kp、ki、kd均服從正態分布,因此可得出各模糊子集的隸屬度賦值表和各參數模糊控制模型,應用模糊合成推理使在線運行過程中完成對PID參數的在線自校正。
由於C語言編制的函數便於進行模塊化的處理,且對於數據的運算相對簡單,更加有利於程序的移植及系統的擴展,所以在系統Fuzzy-PID控制算法部分採用C語言實現。系統將整個控制算法作為一個函數以備彙編語言調用。這裡就涉及到一個彙編與C51混合編程的問題。系統中採用的是基於ASM51無參數化調用C51函數的原理來實現彙編與C51的混合編程。
所謂無參數化調用是指讓C51子函數不帶任何參數,就可以從根本上避開調用參數的傳遞和返回值的安排等繁瑣易出錯的問題,只需要簡單地在彙編語言開頭說明一下外部C51子函數(「EXTRNcode(〈C51模塊名稱〉)」)。至於C51函數中需要使用的外部參數值及其返回值,完全可以通過加入C51的〈absacc.h〉頭文件來解決。
引進該頭文件後,程式設計師就可對8051系列單片機的存儲器進行絕對地址的訪問。把對參數值和返回值的操作轉化為對存儲器絕對地址的操作,象純彙編操作一樣,不用定義C51函數與彙編接口的參數和返回值的配置,從而提高了調用效率。
對於〈absacc.h〉頭文件中的函數原型,可查找C51編譯器中的help文件,選擇合適的數據類型來定義需要用到的絕對地址空間。系統中Fuzzy-PID控制算法涉及到的數據均以DWORD類型定義。
圖5模擬自適應PID控制
整個程序主體部分採用彙編語言編寫,在控制算法部分調用了C語言編寫的函數。
軟體設定定時器T0為5s定時,在無鍵盤響應時每隔5 s響應一次,以用來獲得DS18B20溫度傳感器採集的數據;設定定時器T1為嵌套在T0中的定時中斷,初值由PID算法子程序提供,以用來輸出PWM波形控制執行機構的動作。
溫度為25℃時,採用Fuzzy-PID控制所得到的經數據處理後的溫度控制曲線;給出了Fuzzy-PID控制誤差曲線。該溫度控制系統具有很好的動態品質,上升時間快,超調較小,且在工作1 h內,即可將控溫精度控制在±0.1℃,經測定,半導體雷射器的輸出光功率波動小於1.5‰,其可信度高。
筆者在半導體雷射器的溫度控制系統中,設計並使用了這套精密恆溫控制系統。需要指出的是,系統可控制的溫度範圍僅受所採用的溫度傳感器及相應的執行機構功能的限制,而與控制部分算法無關。由此可知,系統的溫度控制範圍較大,用戶可根據需要自行改變預定的控制溫度值。到目前為止,系統已經作為一個經濟實用的產品投入生產。
打開APP閱讀更多精彩內容聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容圖片侵權或者其他問題,請聯繫本站作侵刪。 侵權投訴