一款基于STC12C5A60S2與PID算法的數(shù)控電源
一些開環(huán)式電源容易受負載的影響,當負載變化時,輸出電壓波動較大。為了解決這個問題,本系統(tǒng)設計一個電壓反饋電路,使系統(tǒng)為閉環(huán)系統(tǒng),即:輸出電壓經分壓電阻后得到適合單片機采集的電壓,經電壓跟隨器后輸入到STC12C5A60S2單片機的ADC0腳。系統(tǒng)利用單片機內置的ADC對輸出電壓進行實時測量,以調整PWM信號的占空比。系統(tǒng)電壓反饋電路如圖7所示。
本文引用地址:http://www.butianyuan.cn/article/249701.htm
2.5 按鍵控制與顯示電路設計
一個數(shù)控電源人機交互界面是必不可少的,它包括按鍵控制電路和顯示電路。
為了簡單便捷地輸入設置電壓,系統(tǒng)采用4個輕觸開關作為控制按鍵。按鍵功能分別為:步進增加、步進減小、輸出增加、輸出減小。
本系統(tǒng)要進行設置電壓、步進電壓的顯示,顯示電路通常有液晶顯示或數(shù)碼管顯示。數(shù)碼管成奉低、壽命長,但顯示內容過少、線路復雜且亮度受供電電源影響較大,故本系統(tǒng)選擇使用低功耗、無閃爍、可靠性高的LCD1602液晶。
系統(tǒng)按鍵控制與顯示電路如圖8所示。
3 系統(tǒng)軟件設計
3.1 總體軟件設計
該數(shù)控電源軟件設計主要包括:PWM信號產生程序、ADC采樣程序、PID控制算法程序、按鍵處理程序、數(shù)據(jù)顯示程序。系統(tǒng)總體流程圖如圖9所示。系統(tǒng)開始進入初始化程序,包括LCD1602初始化、PID程序初始化、PWM相關寄存器初始化等。單片機處于按鍵檢測狀態(tài),有按鍵輸入時,調用按鍵控制程序,輸出一定占空比的PWM,并將設定的電壓值顯示于LCD1602。另外,單片機對經BUCK電路輸出的電壓進行ADC釆集,與設定值比較得到PID控制的各項參數(shù),經PID算法,調節(jié)PWM占空比,最終得到與設定值非常接近的輸出電壓。
3.2 PID軟件設計
數(shù)控電源的PID算法系統(tǒng)組成形式如圖10所示。系統(tǒng)通過按鍵設定一定的電壓值r后,給出相應占空比值,同時單片機通過ADC采集輸出電壓,得到測量值z,與給定值對比得到偏差e,計算出PID算法中所需的P、I、D變量值,最終得到準確的被控量y。
4 實驗測試
按鍵沒定輸出電壓和實際輸出電壓測試,其結果如表1所示。數(shù)控電源輸出的紋波測試如表2所示。由表1可見,輸出電壓值越低,偏差越小;輸出電壓值越高,偏差越大,但均不大于0.1V。由表2可見,輸出電壓越高,紋波越大,但均小于1%。由此可見,系統(tǒng)有較高的精準度。
5 結論
測試結果表明,文中設計的基于STC12C5A60S2單片機的數(shù)控電源能夠較精確地輸出設定的電壓值,通過運用PWM技術和PID算法對輸出的電壓進行快速地調整,得到較精確的電壓值。系統(tǒng)控制精度高、反應速度快、輸出穩(wěn)定、操作簡單,具有一定的實用價值。
pid控制相關文章:pid控制原理
pwm相關文章:pwm是什么
pid控制器相關文章:pid控制器原理
塵埃粒子計數(shù)器相關文章:塵埃粒子計數(shù)器原理 晶振相關文章:晶振原理
評論