基于單片機的可編程直流穩(wěn)壓電源設(shè)計
隨著電力電子技術(shù)的迅速發(fā)展,直流電源應(yīng)用非常廣泛,其好壞直接影響著電氣設(shè)備或控制系統(tǒng)的工作性能。直流穩(wěn)壓電源是電子技術(shù)常用的設(shè)備之一,廣泛的應(yīng)用于教學(xué)、科研等領(lǐng)域。傳統(tǒng)的多功能直流穩(wěn)壓電源功能簡單、難控制、可靠性低、干擾大、精度低且體積大、復(fù)雜度高。而基于單片機控制的直流穩(wěn)壓電源能較好地解決以上傳統(tǒng)穩(wěn)壓電源的不足。其良好的性價比更能為人們所接受,因此,具有一定的設(shè)計價值。
本文引用地址:http://m.butianyuan.cn/article/177195.htm一、系統(tǒng)設(shè)計
(一) 方框圖設(shè)計。
該電路采用單片機(AT89C51)作為主控電路,由三端集成穩(wěn)壓器(LM317)作為穩(wěn)壓輸出部分。另外,電路還增加參考電壓電路、D/A轉(zhuǎn)換電路、電壓放大電路、顯示電路等部分電路。其方框圖如圖1所示:
圖1 用單片機制作的直流穩(wěn)壓可調(diào)電源框圖
整個電路的運行需要模擬電壓源提供+5V,±15V的模擬電壓,以便使電路中的集成數(shù)字芯片能夠正常工作。電路運行時,首先由單片機設(shè)置初始電壓值,并送顯示電路顯示。然后將電壓值送D/A轉(zhuǎn)換電路進行數(shù)模轉(zhuǎn)換,再經(jīng)放大電路進行電壓放大,最終反饋到三端集成穩(wěn)壓器(LM317)輸出模擬電壓。
(二) 硬件設(shè)計。
本電路的硬件組成部分主要由單片機(AT89C51)、變壓器、整流電路、濾波電路、穩(wěn)壓器(LM317)、參考電壓電路、D/A轉(zhuǎn)換電路(DA0832)、放大電路、顯示電路等組成。
硬件電路如圖2所示,整個電路通過單片機(AT89C51)控制,P0口和DAC0832的數(shù)據(jù)口直接相連,DA的CS和WR1連接后接P26,WR2和XFER接地,讓DA工作在單緩沖方式下。DA的11腳接參考電壓,通過調(diào)節(jié)可調(diào)電阻使LM336的輸出電壓為5.12V,所以在DAC的8腳輸出電壓的分辨率為5.12V/256=0.02V,也就是說DA輸入數(shù)據(jù)端每增加1,電壓增加0.02V。
圖2 單片機控制直流電壓輸出電路圖
DA的電壓輸出端接放大器OP07的輸入端,放大器的放大倍數(shù)為(R8+R9) /R8=(1K+4K) /1K=5,輸出到電壓模塊LM317的電壓分辨率為0.02V×5=0.1V.所以,當(dāng)MCU輸出數(shù)據(jù)增加1的時候,最終輸出電壓增加0.1V,當(dāng)調(diào)節(jié)電壓的時候,可以以每次0.1V的梯度增加或者降低電壓。
本電路設(shè)計兩個按鍵,S1為電壓增鍵,S2為電壓減鍵,按一下S1,當(dāng)前電壓增加0.1v,按一下S2,當(dāng)前電壓減小0.1V.
顯示部分由三位共陽數(shù)碼管和74LS164串入并出模塊組成,電路如圖3所示,可以顯示三位數(shù),一位顯示十位,一位顯示個位,另外還有一個小數(shù)位,比如可以顯示12.5v,采用動態(tài)掃描驅(qū)動方式。本主電路的原理就是通過MCU控制DA的輸出電壓大小,通過放大器放大,給電壓模塊作為最終輸出的參考電壓,真正的電壓,電流還是穩(wěn)壓模塊LM317輸出。
圖3 顯示部分
(三) 軟件設(shè)計。
在本電路中由于CPU的工作任務(wù)是單一的,因此,源程序的工作過程為:系統(tǒng)上電復(fù)位后,默認輸出9V電壓,然后掃描S1,S2鍵,當(dāng)S1或S2鍵有按下時,程序跳轉(zhuǎn)至相應(yīng)的按鍵處理子程序,經(jīng)按鍵子程序處理后,再嵌套調(diào)用顯示子程序,完成顯示與輸出操作后返回主程序,繼續(xù)掃描此兩鍵,程序運行原理如下:
程序設(shè)計需要考慮的主要問題有兩個方面:一方面要找出數(shù)字量Dn與輸出電壓的關(guān)系,這是程序設(shè)計的依據(jù);另一方面要建立顯示值與輸出電壓值的對應(yīng)關(guān)系,這是程序設(shè)計是否成功的標志。因為在本系統(tǒng)中,顯示的輸出電壓值不是之前從輸出電路中通過檢測得到的,因此顯示與輸出并不存在直接聯(lián)系。但為了使顯示值與實際輸出值相一致,在程序編寫時,必須人為地為兩者建立某種關(guān)系。采用的方法是:在程序存儲器中建立TAB1和TAB2兩張表格,TAB1放101個Dn值,數(shù)值從小到大順序排列,其值分別對應(yīng)輸出電壓0~10v,TAB2存放數(shù)碼顯示器0~9字符所對應(yīng)的數(shù)據(jù)。TAB1表格的數(shù)據(jù)指針存放在內(nèi)存RAM中23H單元,內(nèi)存20H, 21H和22H三個單元分別存放數(shù)碼顯示器小數(shù)點一位,個位和十位的字符數(shù)據(jù)指針。在主程序中初始化后之后首先給23H賦予40的偏移量,這個偏移量指向TAB表中的Dn為145,此值對應(yīng)的輸出電壓為9V,由于這個原因,必然要求顯示器顯示的字符為“05.0”,為此,須分別給20H, 21H和22H賦予0,5和0的偏移量,這三個偏移量分別指向TAB2中0,5和輸出兩者之間就建立了初步的對應(yīng)關(guān)系。為了使兩者保持這種對應(yīng)的關(guān)系,在K1和K2按鍵處理子程序中,必須使23H, 20H, 21H和22H四個數(shù)據(jù)指針保持“同步”地變化,即為當(dāng)K有鍵時, 23H單元增加1指向下一Dn時, 20H單元也相應(yīng)增加1指向下一字符,并且20H單元(小數(shù)點一位指針)、21H單元(個位指針)和22H元(十位指針)應(yīng)遵循十進制加法的原則,有進位時相應(yīng)各位應(yīng)作出相應(yīng)地變化;當(dāng)K2有鍵時,23H單元減1指向前一Dn時, 20H單元也相應(yīng)減1指向前一字符,并且20H, 21H, 22H三個單元的數(shù)據(jù)指針應(yīng)遵循十進制減法原則,有借位時相應(yīng)的各位須作出相應(yīng)地變化。按照這一算法只要控制TAB1表格數(shù)據(jù)指針不超出表格的長度就能使顯示值與輸出值保持一一對應(yīng)的關(guān)系,即顯示器能準確地顯示出電源輸出電壓值的大小,達到電路設(shè)計的目的。由于理論計算與實際情況還存在著一定的差異,為了使顯示值更加接近實際輸出值,本電路需要對輸出電壓進行校正。
二、調(diào)試與分析
調(diào)試儀器:數(shù)字萬用表、電烙鐵、斜口鉗、尖嘴鉗、吸錫器、鑷子。
硬件調(diào)試:首先檢查整個電路,電路連接完好,沒有明顯的錯接,漏連。接上電源,電源指示類亮,數(shù)碼管顯示初始電壓值+5V,用萬用表的兩只表筆測試LM317的輸出電壓為4.96V。當(dāng)按下S1鍵一次,數(shù)碼顯示電壓值變?yōu)?.9V,萬用表讀數(shù)變?yōu)?.85V.再按下S2鍵一次,數(shù)碼顯示電壓值變?yōu)?.0V,萬用表讀數(shù)再次變?yōu)?.96V.通過改變顯示電壓值,用萬用表測得幾組輸出電壓數(shù)據(jù)見表1:
表1 電壓調(diào)試所測數(shù)據(jù)對比分析表單位:V
系統(tǒng)平均誤差Δd=0.41V.
誤差原因分析:(1)工作電源不夠穩(wěn)定,不能為數(shù)字集成塊提供精確工作電壓;(2)電路參數(shù)設(shè)定不夠精確;(3)提供給D/A轉(zhuǎn)換的參考電壓不夠精確,使得轉(zhuǎn)換過程存在誤差;(4)單片機的P0口傳輸給D/A轉(zhuǎn)換的數(shù)據(jù)不夠準確,使得輸出出現(xiàn)誤差;(5)系統(tǒng)缺少電壓電流采樣電路。
三、結(jié)語
在本文中,實現(xiàn)了以單片機為核心的直流穩(wěn)壓電源的智能控制,達到了預(yù)期的目的和要求。
評論