數(shù)控直流穩(wěn)壓電源畢業(yè)設計0507_第1頁
數(shù)控直流穩(wěn)壓電源畢業(yè)設計0507_第2頁
數(shù)控直流穩(wěn)壓電源畢業(yè)設計0507_第3頁
數(shù)控直流穩(wěn)壓電源畢業(yè)設計0507_第4頁
數(shù)控直流穩(wěn)壓電源畢業(yè)設計0507_第5頁
已閱讀5頁,還剩15頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

本文格式為Word版,下載可任意編輯——數(shù)控直流穩(wěn)壓電源畢業(yè)設計0507

電子信息專業(yè)本科生畢業(yè)論文設計

海南師范大學

本科生畢業(yè)論文

題目:數(shù)控直流穩(wěn)壓電源的設計

姓名:朱立鴻學號:202306302251專業(yè):電子信息科學與技術年級:2023級院別:物理與電子信息工程

完成日期:2023年5月

指導教師:嚴世勝(副教授)

電子信息專業(yè)本科生畢業(yè)論文設計

目錄

1.引言12.方案的論證與設計23.單元電路的設計23.1最小系統(tǒng)控制電路設計3

3.2D/A轉換電路設計33.3放大和輸出穩(wěn)壓電路的設計53.4液晶顯示電路設計.63.5系統(tǒng)供電電源設計7

3.6整機電路圖和系統(tǒng)仿真7

4.軟件程序設計95.4.1程序流程圖106.4.2程序代碼116.數(shù)據(jù)測量197.6.1數(shù)據(jù)測量值198.6.2誤差分析21

7.結論218.

電子信息專業(yè)本科生畢業(yè)論文設計

數(shù)控直流穩(wěn)壓電源的設計

:朱立鴻指導教師:嚴世勝副教授

(海南師范大學物理與電子信息工程,海口,571158)

摘要:該設計采用220V市用交流電輸入,輸出電壓為0~10V可調(diào),輸出最大電流為1A,可步進0.1V調(diào)整。電源的主控電路采用AT89C51單片機,并能夠通過液晶直觀地顯示出電壓。設計分析了各個模塊電路和整機的工作原理,給出了整機工作的硬件實現(xiàn)和主要的軟件流程設計。

電子信息專業(yè)本科生畢業(yè)論文設計

2.方案的論證與設計

通過查閱大量資料,得知顯示電路和控制電路是本設計的核心,對它的選擇有以下兩種方案:

方案一:采用純數(shù)字電路[2]

純數(shù)字電路的穩(wěn)壓電源避免了硬件之間的磨損,使得使用壽命大大提高,而且其輸出電壓也不會隨時間產(chǎn)生誤差。但是它的電路較為繁雜,制作時很困難,由于電路的繁雜產(chǎn)生的問題也會好多。方案二:采用單片機的方法

采用單片機的數(shù)字穩(wěn)壓電源是將數(shù)字電路和單片機很好地結合在一起,不但能夠達到數(shù)字電路的效果,而且能夠大大地簡化繁雜的純數(shù)字電路。

經(jīng)過對以上兩種設計方案的對比和全方位的綜合考慮,為了使電路的設計更加合理化,切合技術指標,決定采用方案二。

3.單元電路的設計

3.1系統(tǒng)設計方框圖

系統(tǒng)設計方框圖如圖1所示。該系統(tǒng)主要由單片機最小控制系統(tǒng)、顯示電路、獨立按鍵、D/A轉換電路、放大電路和穩(wěn)壓電路和系統(tǒng)供電電源等組成。外接220V的交流電源經(jīng)過整流濾波后給上述各部分單元提供工作電源,通過獨立鍵盤給單片機設定預輸出值,并通過DA0832轉化為模擬量,再經(jīng)過運算放大和穩(wěn)壓電路最終輸出預設電壓值,通過液晶能夠直觀的顯示出預設值。

圖1數(shù)控直流穩(wěn)壓電源設計方框圖

電子信息專業(yè)本科生畢業(yè)論文設計

3.2最小控制系統(tǒng)的設計

最小控制系統(tǒng)由STC單片機、晶振、獨立鍵盤和復位電路等組成[3]。如2所示。

、19管腳為晶振的2122232425262728

3938373635343332

晶振Y1X1和X2端,電

解電容C4S5RST管腳為高電

RST管腳出10按鈕,S2轉換確認鍵。S1~S3按鍵的作用是通過程序控制對輸入的電壓隨時可調(diào),且步進值能夠為0.1V增加或者減少。S4鍵的作用是按下啟動D/A轉化,將單片機的預設值轉化為模擬量輸出。

3.2D/A轉換電路設計

3.2.1DA0832芯片簡介

4S1為電壓調(diào)整113029

電子信息專業(yè)本科生畢業(yè)論文設計

DAC0832是8分辯率的D/A轉換集成芯片。與微處理器完全兼容。這個DA芯片以其價格低廉、接口簡單、轉換控制簡單等優(yōu)點,在單片機應用系統(tǒng)中得到廣泛的應用。D/A轉換器由8位輸入鎖存器、8位DAC寄放器、8位D/A轉換電路及轉換控制電路構成[4]。

3.2.2DA0832的主要特性

DA0832分辯率(LSB)為8位,電流穩(wěn)定時間為1us,有三種工作方式,即直通方式、單緩沖方式和雙緩沖方式。工作方式的設置由19管腳ILE、2管腳WR和18管腳WR2決定,本設計采用直通方式,將2管腳和18管腳全部接地為低電平。另外DA0832采用單電源供電(+5V~15V),且在滿量程內(nèi)呈線性變化。

3.2.3DA0832在設計中的應用

采用0832將單片機預設的電壓值轉化為模擬量,其電路連接如下圖4所示。

10113029

39383736353433322122232425262728

圖4DA0832與單片機的連接

DA0832的8位數(shù)據(jù)線D0~D17與單片機的P1口連接,1管腳(CS)和17管腳(Xfer)接地,8管腳(Vref)的參考電壓為5V,則LSB=5V/2^8=0.02V,即最小分表率為0.02V。11管腳(Iout1)和12管腳(Iout2)為電流輸出端,本設計中將Iout2接地,采用Iout1輸出,然后接運算放大LM324將輸出電流轉化為電壓。經(jīng)過LM324轉化后的電壓值也為5V。為了達到與單片機預設電壓范圍0~10V同步,

電子信息專業(yè)本科生畢業(yè)論文設計

輸出端電壓需要經(jīng)過兩級放大。第一級不放大,直接將D/A輸出的電流轉化為電壓,其次級放大,放大倍數(shù)n=Rf/R1=2K/1K=2.由于DA0832轉換后的電壓的范圍為0~5V,即DA0832的8位輸入端全為高電平1時,輸出電壓為5V,輸入端全為低電平0時,輸出電壓為0V,且呈線性變化。為此為了使輸出與液晶顯示同步,必需經(jīng)過放大倍數(shù)n=2的二級放大。

3.3放大和輸出穩(wěn)壓電路的設計

由于DA0832芯片為電流輸出型,為了得到輸出電壓,必需經(jīng)過運放轉化為電壓。設計采用運放LM324放大器放大。LM324芯片的主要特性有:可單雙電源工作,單電源工作范圍為3V~32V,雙極性電源工作范圍為16V,設計采用雙極性電源,且電源電壓為12V;每個集成LM324芯片內(nèi)裝4個運放器[5]。采用反向輸入,放大和穩(wěn)壓電路如圖5。

765416151413117

圖5放大電路和穩(wěn)壓電路

U3的輸出端I0ut1接U2的13管腳(IN-),Iout2接U2的12管腳(IN+),然后接地。第一級只是轉化0832輸出的電流為電壓,沒有進行放大。LM324第一級的輸出端14經(jīng)過1K的電阻接其次級放大的輸入端2(IN-),也是反向輸入,兩次反向后最終輸出的電壓為正向。由于三端穩(wěn)壓LM317的工作電壓范圍為1.26~37V,達不到輸出為0V的設計要求,為此在其次級放大采用求和反向放大,-12V的電壓

電子信息專業(yè)本科生畢業(yè)論文設計

經(jīng)過10K的電位器分壓后輸出反向電壓為-1.25V,在液晶顯示為0的狀況下使其LM317調(diào)整穩(wěn)壓后的電壓達到0V。LM317主要特性有基準電壓標準值為1.25V,ADJ調(diào)整端電流標準值為50uA,最大為100uA。

為此,為保證額定的輸出電壓值,調(diào)整端R1的電阻阻值R=1.25V/10mA=125Ω。尋常實際的取值在120~200Ω之間。輸出電壓值計算公式為:Uo=

1.25(1Rw/R)IadjRw。

3.4液晶顯示電路設計

顯示部分采用液晶LCD1602,LCD1602顯示容量是為162個字符,芯片工作電壓為4.5~5.5V。接口信號說明如表1。

表1液晶接口說明

編號12345678

液晶LCD1602與STC單片機的連接電路圖如圖6。LC1602D的8位數(shù)據(jù)接口與單片機的P0口相連,由于STC單片機P0口沒有內(nèi)接電阻,為此外接了10K上拉排阻。這是由于單片機P口的輸出電流十分微弱,不足以驅(qū)動液晶顯示數(shù)據(jù)而連接的。1602的控制端RS、R/W、E端分別與STC的P20、P21、P22連接。VCOM為液晶顯示亮度調(diào)整端,外接10K的電位器。BLA-和BLA+分別為液晶背光源正極和負極,BLA-接地,BLA+接+5V。液晶的顯示由單片機的程序去控制。

符號VSSVDD

VLRSR/WED0D1

引腳說明電源地電源正極液晶顯示偏壓信號數(shù)據(jù)/命令選擇端讀/寫選擇端(H/L)

使能信號數(shù)據(jù)輸入D0端數(shù)據(jù)輸入D1端

編號910111213141516

符號D2D3D4D5D6D7BLABLK

引腳說明數(shù)據(jù)輸入D2端數(shù)據(jù)輸入D3端數(shù)據(jù)輸入D4端數(shù)據(jù)輸入D5端數(shù)據(jù)輸入D6端數(shù)據(jù)輸入D7端背光源正極背光源負極

電子信息專業(yè)本科生畢業(yè)論文設計

圖6LCD1602與單片機連接電路圖

3.5系統(tǒng)供電電源設計

控制系統(tǒng)STC單片機和DA0832工作需要+5V的電源,而運算放大器LM324需要12V的雙極性電源,為此需要設計出滿足上述芯片工作需要的電源。電

圖7系統(tǒng)供電電源

系統(tǒng)供電電源外接220V交流電,經(jīng)過雙18V變壓器T1降壓和整流橋整流變?yōu)橹绷?,接著用電容C1、C2、C3、C4濾波,最終用三端穩(wěn)壓芯片7812、7912、7805穩(wěn)壓后再經(jīng)電容C5、C6、C7、C8濾波就可得到+12V,-12V,+5V的電源。

3.6整機電路圖和系統(tǒng)仿真

電子信息專業(yè)本科生畢業(yè)論文設計

整機電路圖見附錄一。系統(tǒng)仿真采用仿真軟件Proteus,圖8、9分別為預設0V和10.0V輸出電壓的仿真結果。

1K

1234567891011121314+5VP0.0/AD0P0.1/AD1P0.2/AD2P0.3/AD3P0.4/AD4P0.5/AD5P0.6/AD6P0.7/AD7P2.0/A8P2.1/A9P2.2/A10P2.3/A11P2.4/A12P2.5/A13P2.6/A14P2.7/A15P3.0/RXDP3.1/TXDP3.2/INT0P3.3/INT1P3.4/T0P3.5/T1P3.6/WRP3.7/RD

C4U130pF19XTA

L1

R8

VSSVDDVEERSRWED0D1D2D3D4D5D6D7

LCD1393837363534333221222324252627281011121314151617+5V1234567810K161514131211109

X1C3C2+5V30pF922uFCRYSTAL18

XTAL2

RST

29PSEN30ALE31EA

+5v

S1+5V

S2S3S4

+5V

U31234567891020CSVCC19WR1ILE(BY1/BY2)18GNDWR217DI3XFER16DI2DI415DI1DI514DI0DI613VREFDI712RFBIOUT211GNDIOUT1DAC0832

12345678

P1.0P1.1P1.2P1.3P1.4P1.5P1.6P1.7AT89C51+12VDBG_TRACE=1

+12V

+5V

U4:A4312

R211.5k4

R202k

32

U4B+0.571Volts

11

LM324

10k

R22

-12V-12v

圖8預設值為0V時的仿真圖-8-

11

電子信息專業(yè)本科生畢業(yè)論文設計

圖9預設值為10V時的仿真圖

從上述仿真圖8得知,當液晶的預設電壓為0V時,系統(tǒng)最終的輸出為0.57V,是由AD0832轉換的精度決定的。從圖9可知,通過按鍵把液晶的顯示值電壓設為10.0V時,系統(tǒng)最終的輸出為9.75V,誤差值為0.25V。

4.軟件程序設計

電子信息專業(yè)本科生畢業(yè)論文設計

4.1程序設計流程圖

程序設計流程圖[6]如圖10所示。程序開始以后,首先液晶初始化,顯示液晶

初試的預設電壓值。然后進行按鍵檢測,假使沒有按鍵按下,顯示液晶當前的初試電壓;假使有按鍵按下,進入電壓檢測中斷程序,確認當前液晶的調(diào)整值。接著檢測D/A是否啟動,啟動以后進行數(shù)模轉換,將轉換后的模擬量送給系統(tǒng)最終輸出端。

圖10程序設計流程圖

電子信息專業(yè)本科生畢業(yè)論文設計

4.2程序代碼

下面C代碼嚴格依照上述程序流程出分塊寫出,然后用Keil51編譯通過。第一塊為Keil51的位聲明;其次塊為延時子程序;第三塊為液晶的初始化程序;第四塊為電壓檢測中斷程序;最終為主程序[7]。

//Keil51位聲明//

#includereg51.h#defineucharsignedchar#defineuintsignedintsbitlcdrs=P2^0;sbitlcdwr=P2^1;sbitlcden=P2^2;sbitS1=P2^4;sbitS2=P2^5;sbitS3=P2^6;sbitS4=P2^7;

ucharcodeVoltageDat[]={Voltage:00.0V};ucharcodeCurrentDat[]={Current:0.00I};

ucharcount,S1num,V_point,V_ge,V_shi,I_point,I_ge,I_shi;ucharS1_OK=0,Confirm=0,DA0832,VCC,Power;//延時1ms子程序開始//voiddelay(uintz){}

//寫指令子函數(shù)//

voidlcd_write_com(ucharcom){

lcdrs=0;//lcdrs=0即設置寫指令狀態(tài)lcdwr=0;//寫狀態(tài)

uintx,y;

for(x=0;x121;x++)

for(y=0;yz;y++);

電子信息專業(yè)本科生畢業(yè)論文設計

沖}

lcden=0;//從這句開始將en置1然后又置零,是將其顯示為高脈

P0=com;//將要寫的指令傳給P0口delay(5);lcden=1;delay(5);

lcden=0;//en的高脈沖設置完畢

//寫數(shù)據(jù)子函數(shù)//

voidlcd_write_dat(ucharx_pos,uchary_pos,uchardat){

x_pos=0x0f;//X位置范圍0~15//y_pos=0x01;//Y位置范圍0~1//if(y_pos==1)x_pos+=0x40;x_pos+=0x80;lcd_write_com(x_pos);}

//液晶初始化子函數(shù)//

voidlcd_init(){

ucharnum;

lcd_write_com(0x38);//顯示162,57點陣,8位數(shù)據(jù)接口。lcd_write_com(0x0c);//顯示開/關及光標設置

lcdrs=1;//lcdrs=1即設置寫數(shù)據(jù)狀態(tài)lcdwr=0;//寫狀態(tài)

lcden=0;//從這句開始將en置1然后又置零,是將其顯示為高脈沖P0=dat;//將要寫的數(shù)據(jù)傳給P0口delay(5);lcden=1;delay(5);

lcden=0;//en的高脈沖設置完畢

電子信息專業(yè)本科生畢業(yè)論文設計

lcd_write_com(0x06);//設置讀寫一個字符后指針自動加1或減1及整屏左

移動

lcd_write_com(0x01);

lcd_write_com(0x80);//設置數(shù)據(jù)指針位置,即從什么位置開始顯示,for(num=0;num14;num++){}

lcd_write_com(0x80+0x40);//設置數(shù)據(jù)指針位置for(num=0;num14;num++){}

lcd_write_dat(num,1,CurrentDat[num]);delay(5);

lcd_write_dat(num,0,VoltageDat[num]);delay(5);

}

//電壓檢測中斷程序//

ucharkeyscan()//等待調(diào)時間的子函數(shù),S1S2S3為功能鍵按,S1閃爍調(diào)整位置的功能鍵,S2增加1,S3減少1{

if(S1==0){

delay(5);//鍵盤按鍵消抖if(S1==0){

S1num++;//S1增加功能鍵按下的次數(shù)while(!S1);//按鍵松手檢測if(S1num==1){

lcd_write_com(0x80+11);

電子信息專業(yè)本科生畢業(yè)論文設計

}

lcd_write_com(0x0f);//光標閃爍,表示可以調(diào)整時間

if(S1num==2)//假使S1即其次次按下,光標向前移動{}

if(S1num==3)//假使S1即第三次按下,光標向前移動{}

if(S1num==4)//假使S1即第四次按下,光標向前移動{}

if(S1num==5)//假使S1即第五次按下,光標向前移動{}

if(S1num==6)//假使S1即第六次按下,光標向前移動{}

if(S1num==7)//假使S1即第七次按下,則定時器開始計時,S1num

lcd_write_com(0x80+0x40+8);lcd_write_com(0x80+0x40+10);lcd_write_com(0x80+0x40+11);lcd_write_com(0x80+8);lcd_write_com(0x80+9);

清零,光標不閃爍

}

}

{}

S1num=0;S1_OK=1;

lcd_write_com(0x0c);

電子信息專業(yè)本科生畢業(yè)論文設計

if(S1num!=0){

if(S2==0){

delay(5);

if(S2==0)//在S2按下時,實現(xiàn)加1調(diào)整{

while(!S2);//電壓增加調(diào)整if(S1num==1){}

if(S1num==2){}

if(S1num==3){

V_shi++;if(V_shi==3)

V_shi=0;V_ge++;if(V_ge==10)

V_ge=0;V_point++;if(V_point==10)

V_point=0;

lcd_write_dat(11,0,0x30+V_point);lcd_write_com(0x80+11);

lcd_write_dat(9,0,0x30+V_ge);lcd_write_com(0x80+9);

lcd_write_dat(8,0,0x30

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論