基于混合最優(yōu)算法的高精度數(shù)控直流電源設計
4 軟件設計
本文引用地址:http://m.butianyuan.cn/article/86683.htm在數(shù)控恒流源閉環(huán)控制系統(tǒng)中,為保持負載電流恒定,并且負載電流隨設定值變化時沒有超調(diào),同時又希望系統(tǒng)有較好的抗擾動性能,本設計采用PID控制器來改善系統(tǒng)的性能。具體控制過程為:ATmega128經(jīng)A/D轉(zhuǎn)換器讀取實際輸出電流I,然后和設定的電流IS相比較,得出差值Ek=IS-I,主控制器根據(jù)Ek的正負大小,調(diào)節(jié)PID控制器,計算出本次電流調(diào)節(jié)的增量△Ik,然后根據(jù)前一次D/A芯片輸出的電流Iq-1,計算本次的輸出電流。PID控制器的參數(shù)由自行設計的混合最優(yōu)算法確定。
4.1 混合最優(yōu)算法設計
鑒于遺傳算法收斂慢,易早熟,且對參數(shù)依賴性大,而直接搜索法在局部有很好的搜索能力。本設計綜合利用兩種算法的優(yōu)良性能,克服各自的缺點,先用遺傳算法在給定的區(qū)域上作“全局粗略”搜索,然后用直接搜索法對其中部分較優(yōu)個體在這些個體所在極小區(qū)域作“局部精絀”搜索,找出它的極小值,反復進行,可以比較迅速地找出PID算法參數(shù)的全局最優(yōu)解。
控制器ATmega128主要用來實現(xiàn)遺傳算法參數(shù)自整定,數(shù)據(jù)存儲器存儲一些專家經(jīng)驗,用來初步確定整定目標域,同時也存儲遺傳算法的每代樣本數(shù)據(jù)及控制參數(shù)。
嚴格地說,遺傳算法的迭代何時停止,在理論上尚無定論。在許多應用實例中,若發(fā)現(xiàn)群體中個體的進化已趨于穩(wěn)定狀態(tài),則迭代終止。對于PID參數(shù)自整定,調(diào)節(jié)過程進入相對穩(wěn)定狀態(tài),則終止迭代算法。所以把迭代次數(shù)等于最大迭代數(shù)目M或者精度調(diào)節(jié)變化量小于某個預設值作為算法終止的條件,
混合最優(yōu)算法流程圖如圖4所示。
4.2 軟件實現(xiàn)
基于模塊化思想,系統(tǒng)軟件設計部分由C語言和匯編語言混合編寫而成,發(fā)揮了C語言高效運算和快速開發(fā)以及匯編語言的靈活的特點。系統(tǒng)軟件主要完成輸出設定、電流調(diào)整等功能。包括主程序、A/D采樣子程序、D/A輸出電流給定值及按鍵控制、PID算法子程序、混合最優(yōu)算法子程序、LCD顯示等其他子程序。
主程序流程圖如圖5所示。
5 系統(tǒng)功能測試
(1)系統(tǒng)輸出電流范圍為10mA~4000mA;
(2)具有3種步長可選的電流步進功能,可通過“+”、“-”按鍵方便地進行正負步進調(diào)整;
(3)可交替顯示電流的給定值和實測值,實際測量輸出電流誤差的絕對值≤測量值的0.1%+1mA;
(4)改變負載電阻,輸出電壓在10V以內(nèi)變化時,輸出電流的絕對值≤輸出電流值的0.1%+1mA;
(5)紋波≤0.15Ma
6 結論
本數(shù)控直流電流源系統(tǒng)以Atmega128為主控制器,采用軟硬件雙閉環(huán)反饋方法,使電源的穩(wěn)定性和輸出精度得到保證,并有普通穩(wěn)壓源實現(xiàn)了穩(wěn)流輸出。通過按鍵來設置電流源的輸出電流,設置步進級可選。在系統(tǒng)設計過程中,力求硬件電路參數(shù)合理,線路簡單,發(fā)揮軟件編程靈活的特點,通過多次調(diào)試,不斷提高系統(tǒng)的精度和電流的穩(wěn)定性,以滿足系統(tǒng)的設計要求。
評論