《簡易數(shù)控充電器設(shè)計(jì)報(bào)告.doc》由會(huì)員分享,可在線閱讀,更多相關(guān)《簡易數(shù)控充電器設(shè)計(jì)報(bào)告.doc(8頁珍藏版)》請?jiān)谘b配圖網(wǎng)上搜索。
E題 簡易數(shù)控充電電源
一、題目要求
一、任務(wù)
設(shè)計(jì)并制作簡易數(shù)控充電電源。輸入交流200~240V,50Hz;輸出:當(dāng)負(fù)載電壓小于10V時(shí)為恒流充電狀態(tài),當(dāng)負(fù)載電壓為10V時(shí)為恒壓充電狀態(tài)。其原理示意圖如下所示。
二方案設(shè)計(jì)
1、基本要求
(1)輸出恒流時(shí):電流100mA(慢充)和200mA(快充)可設(shè)置;改變負(fù)載電阻,要求輸出電流變化的絕對值≤5mA;紋波電流≤2mA。
(2)輸出恒壓時(shí),改變負(fù)載電阻,輸出電壓波動(dòng)小于0.5V;輸出紋波電壓小于20mV。
(3)具有輸出電壓、電流的測量和數(shù)字顯示功能。
2、發(fā)揮部分
(1)輸出恒流時(shí): 改變負(fù)載電阻,要求輸出電流變化的絕對值≤3mA;紋波電流≤1mA。
(2)輸出恒壓時(shí):改變負(fù)載電阻,輸出電壓波動(dòng)小于0.2V;輸出紋波電壓小于10mV。
(3)具有過熱(≥60)保護(hù)功能,降溫后自動(dòng)恢復(fù)工作。
(4)其它。
二、方案選擇
繼
電器器
恒流電路
恒壓電路
單
片
機(jī)
1602顯示
負(fù)載
反饋電路
鍵盤
三、方案論證
1、恒流部分
下圖是一個(gè)最常用的恒流電路,這樣的電路更容易獲得穩(wěn)定及精確的電流值,R1 為取樣電阻,REF 是給定信號(hào),電路工作原理是:當(dāng)給定一個(gè)信號(hào)時(shí)REF,如果R1 上的電壓小于1REF,也就是OP07的-IN 小于+IN,OP07 加輸出大,使MOS 加大導(dǎo)通使R3 的電流加大。如果R1上的電壓大于REF 時(shí),-IN 大于+IN,OP07 減小輸出,也就降
了R3 上的電流,這樣電路最終維持在恒定的給值上,也就實(shí)現(xiàn)了恒流工作。如給定1REF 為10mV,R3 為0.1 歐時(shí)電路恒流為0.1A,改變。REF 可改變恒流值,REF 可用電位器調(diào)節(jié)輸入或用DAC
芯片由MCU 控制輸入,采用電位器可手動(dòng)調(diào)節(jié)輸出電流。如采用DAC 輸入可實(shí)現(xiàn)數(shù)控恒流電子負(fù)載。
2、恒壓部分
在定電壓工作模式時(shí),電子負(fù)載所流入的負(fù)載電流依據(jù)所設(shè)定的負(fù)載電壓而定,此時(shí)負(fù)載電流將會(huì)增加直到負(fù)載電壓等于設(shè)定值為止,即負(fù)載電壓保持設(shè)定值不變。
圖中 MOS 管上的電壓經(jīng) R6 與 R7 分壓后送入運(yùn)放 IN+與給定值進(jìn)行比較,如圖所示, IN-為 0.5V,那么 MOS 管上的電壓應(yīng)為1V。恒壓10V時(shí),使R6為4K歐,從而可以處理單片機(jī)輸出的電壓。
3、單片機(jī)部分
程序:#include
#include"lcd1602.h"
#include"maxim187.h"
#include"tlc5615.h"
#define uchar unsigned char
#define uint unsigned int
uchar tlc5615_buff[4],tlc5615_buff1[2];
uchar dis187_dujun[4],dis187_huyao[4];
uint num_5615=20,temp_dujun;
uint temp_huyao,temp_huyao1;
uint num_dujun,num_huyao;
uint dat187_dujun,dat187_huyao;
uchar flag;
sbit manchong=P3^3;
sbit kuaichong=P3^4;
sbit dujun=P3^0;
sbit huyao=P3^1;
void display_5615dujun()
{
tlc5615_buff[0]=temp_dujun%10;
tlc5615_buff[1]=temp_dujun/10%10;
tlc5615_buff[2]=temp_dujun/100%10;
tlc5615_buff[3]=temp_dujun/1000;
writecmd_lcd(0x80);
writedat_lcd(I);
writedat_lcd(n);
writedat_lcd(p);
writedat_lcd(u);
writedat_lcd(t);
writedat_lcd(:);
writedat_lcd(0x30+tlc5615_buff[3]);
writedat_lcd(0x30+tlc5615_buff[2]);
writedat_lcd(0x30+tlc5615_buff[1]);
writedat_lcd(0x30+tlc5615_buff[0]);
writedat_lcd(m);
writedat_lcd(V);
}
void display_5615huyao()
{
tlc5615_buff1[0]=temp_huyao1%10;
tlc5615_buff1[1]=temp_huyao1/10%10;
writecmd_lcd(0x80);
writedat_lcd(I);
writedat_lcd(n);
writedat_lcd(p);
writedat_lcd(u);
writedat_lcd(t);
writedat_lcd(:);
writedat_lcd(0x30+tlc5615_buff1[1]);
writedat_lcd(0x30+tlc5615_buff1[0]);
writedat_lcd(.);
writedat_lcd(0);
writedat_lcd(0);
writedat_lcd(V);
}
void display_187dujun()
{
writecmd_lcd(0xc0);
writedat_lcd(O);
writedat_lcd(u);
writedat_lcd(t);
writedat_lcd(p);
writedat_lcd(u);
writedat_lcd(t);
writedat_lcd(:);
writedat_lcd(0x30+dis187_dujun[3]);
writedat_lcd(0x30+dis187_dujun[2]);
writedat_lcd(0x30+dis187_dujun[1]);
writedat_lcd(0x30+dis187_dujun[0]);
writedat_lcd(m);
writedat_lcd(A);
}
void display_187huyao()
{
writecmd_lcd(0xc0);
writedat_lcd(O);
writedat_lcd(u);
writedat_lcd(t);
writedat_lcd(p);
writedat_lcd(u);
writedat_lcd(t);
writedat_lcd(:);
writedat_lcd(0x30+dis187_huyao[3]);
writedat_lcd(0x30+dis187_huyao[2]);
writedat_lcd(0x30+dis187_huyao[1]);
writedat_lcd(0x30+dis187_huyao[0]);
writedat_lcd(m);
writedat_lcd(V);
}
/*void init_time()
{
TMOD=0X01;
TH0=-5000/256;
TL0=-5000%256;
EA=1; ET0=1;
TR0=1;
}
void time0() interrupt 1
{
static uchar t;
TH0=-50000/256;
TL0=-50000%256;
t++;
if(t==5)
{
t=0;
AD_187();
if(flag==0)
{
num_dujun=num_187-temp_dujun;
if(num_dujun<0)num_dujun=-num_dujun;
if(num_dujun<0.05*temp_dujun)
{
dis_187[0]=num_187%10;
dis_187[1]=num_187/10%10;
dis_187[2]=num_187/100%10;
dis_187[3]=num_187/1000;
}
if((num_187<1.10*100)&&(num_187>0.90*100))
{
dis_187[0]=num_187%10;
dis_187[1]=num_187/10%10;
dis_187[2]=num_187/100%10;
dis_187[3]=num_187/1000;
}
}
else
{
num_huyao=num_187-temp_huyao;
if(num_huyao<0)num_huyao=-num_huyao;
if(num_huyao<0.05*temp_huyao)
{
dis_187[0]=num_187%10;
dis_187[1]=num_187/10%10;
dis_187[2]=num_187/100%10;
dis_187[3]=num_187/1000;
}
}
if(flag==1)
{
if((num_187<1.10*100)&&(num_187>0.90*100))
{
dis_187[0]=num_187%10;
dis_187[1]=num_187/10%10;
dis_187[2]=num_187/100%10;
dis_187[3]=num_187/1000;
}
}
}
if(num_187>=250)
{
flag=1;
}
else flag=0;
} */
void keyscan()
{
if(!manchong)
{
delayms(10);
if(!manchong)
{
while(!manchong);
num_5615=20;
}
}
if(!kuaichong)
{
delayms(10);
if(!kuaichong)
{
while(!kuaichong);
num_5615=41;
}
}
if(!dujun)
{
delayms(10);
if(!dujun)
{
while(!dujun);
flag=0;
}
}
if(!huyao)
{
delayms(10);
if(!huyao)
{
while(!huyao);
flag=1;
}
}
}
main()
{
init_lcd();
flag=0;
while(1)
{
if(flag==0) //恒流模塊處理
{
tlc_5615(num_5615);
temp_dujun=5.0/1024*1000*num_5615;
dat187_dujun=max_187();
if((dat187_dujun<1.10*temp_dujun)&&(dat187_dujun>0.90*temp_dujun))
{
dis187_dujun[0]=dat187_dujun%10;
dis187_dujun[1]=dat187_dujun/10%10;
dis187_dujun[2]=dat187_dujun/100%10;
dis187_dujun[3]=dat187_dujun/1000;
}
display_5615dujun();
display_187dujun();
}
else //恒壓模塊處理
{
tlc_5615(410);
temp_huyao=5.0/1024*1000*410;
temp_huyao1=10;
dat187_huyao=max_187();
if((dat187_huyao<1.10*temp_huyao)&&(dat187_huyao>0.90*temp_huyao))
{
dis187_huyao[0]=dat187_huyao%10;
dis187_huyao[1]=dat187_huyao/10%10;
dis187_huyao[2]=dat187_huyao/100%10;
dis187_huyao[3]=dat187_huyao/1000;
}
display_5615huyao();
display_187huyao();
}
keyscan();
delayms(100);
}
}
3電路總圖
四、實(shí)物展示
鏈接地址:http://m.zhongcaozhi.com.cn/p-6486886.html