‘壹’ 如何用LM317和单片机构成数控直流稳压电源
给你提供个思路缺兆辩吧!!
数模转猜搭换
—>
运放
固定增益放大—>控伏缺制
LM317
‘贰’ 用51单片机做数控直流稳压电源
你那样要加补偿功能吧 要不电压变化怎么平衡啊 我也学习下 不太懂
‘叁’ 我用单片机设计数控直流稳压电源需要买那些器件啊
最简单的是变压器+LM317+DA+AD,就是效率低,网上有这种Proteus的仿真
复杂点的可以把LM317换成集成的DCDC芯片,比如常见的LM2596adj,输出更稳定的可以用ST的L5972或者TI的STP5430等等都可以做到,当然用分离元件也是可以的,
再难点的可以做隔离式开关电源,没有基础还是建议别做这种隔离的。
‘肆’ 用单片机制作一个数控稳压电源 要求 基本功能实现: 可输出电压:范围0~30V,步进0.1V,纹波不大于10m
建议你去robot360上问问,之前在那边看到过一些参加过电子大赛的朋友在上面发帖的。
‘伍’ 求C51单片机程序的注释,(数控直流稳压电源的设计)
本人估计,你是用proteus仿真做的吧,因为DAC0832的工作脉冲你是靠IO口取反来实现的,以下是我对程序的注释,由于你没给出原理图,有不合理之处在所难勉.
有些地方我认为没必要说的就不细说,不明再问
#include<reg51.h>
#include<absacc.h> //头文件,可使用其中定山纤凳义的宏来访问绝对地址
#define dac0832 XBYTE[0X7fff] //DAC位置定义,跟据实际原理图而定
unsigned char code shu[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90}; //数码管码值表
float s;
/*******************DAC0832控制位的定义,视实际原理图而定*************/
sbit ALE=P3^0; //DAC0832 ALE脚工作脉冲位定义
sbit START=P3^1; //DAC0832 START位定义
sbit EOC=P3^2; //转换结束标志位
sbit OE=P3^3; //输出允许位
sbit SHCP=P2^0; //数码管驱动芯片(如595)位定义
sbit DS=P2^1; //同上
sbit STCP=P2^2; //同上
sbit P11=P3^5;
sbit P12=P3^7;
sbit clk=P2^6; //DAC0832 工作脉冲
/************************************************/
unsigned char j,k,m,n,i,a;
unsigned int b;
void delay(unsigned char t)
{ while(t--);
}
void display() //静态数码管的显示
{
j=0x01;
for(i=0;i<8;i++)
{ if((shu[m]&j)==0)
{ DS=0;}
else {DS=1;}
SHCP=1;
SHCP=0;
j<<=1;
}
P12=0;
P11=1;
STCP=0;
STCP=1;
delay(200);
j=0x01;
for(i=0;i<8;i++)
{ if((shu[n]&j)==0)
{ DS=0;}
else {DS=1;}
SHCP=1;
SHCP=0;
j<<=1;
}
P11=0;
P12=1;
STCP=0;
STCP=1;
delay(200);
}
void main()
{
P2=0X87;
/////////定时器1初始化////////////////
TMOD=0X20;
TH1=0X06;
TL1=0X06;
EA=1;
ET1=1;
TR1=1;
while(1)
{
//DAC0832地址锁存脉冲
ALE=1;
ALE=0;
//DAC0832 开始转换脉冲
START=1;
START=0;
while(EOC==0); //逗旅等待转换完毕
OE=1; //开始读
k=P1; //读数据
a=P1; //读数据
b=a*6;
m=b/1000; //取千位竖轮数
n=b%1000/100; //取百位数
dac0832=k;
display(); //数码管显示
}
}
void time() interrupt 3 //DAC0932脉冲
{
clk=!clk; //位取反
‘陆’ 如何用LM317和单片机构成数控直流稳压电源
LM317是纯模拟器件,没有数控引脚,它的反馈控制端ADJ极其灵敏,用单片机和D/A之类的器件是无法控制LM317的,只能用电阻分压的方法调节其输出电压。如果步进电压较大些、输出电压范围再小些,还可以考虑用数字电位器实施控制,但是2~15V、步进电压0.1V至少需要13000个抽头的数字电位器,实际产品却远没有那么多抽头的。
‘柒’ 基于单片机的数控稳压电源
第二个运放与Q1、Q2联合组成了电压跟随器,主要任务是电流放大或称为扩流,这一级的电压放大倍数基本等于1,稳压电源的任务是要向负载提供满足电压要求的功率输出,那么满足额定电流输出的任务就由本级完成。
‘捌’ 可调直流稳压电源的设计
用这个电路稍加改动就可以满足你的需求:
(原设计指标:输出电压0~12V,按照0.1V的步进量连续可调,供电电压双15伏,需改动:电源直接换,步进量改成1伏即可)
图 数控步进直流稳压电源原理图
本模块介绍的数控步进直流稳压电源是由PIC16F877单片机控制的直流输出电源。该电源的输出电压能在0~12V的范围内,按照0.1V的步进量连续可调,电路原理图如图所示。
图中变压器从电网中取出电压信号,经过桥式整流器后得到直流电压,该电压接到三端可调稳压器LM317的输入端,作为供电电压。MAX518的D/A输出端A1经过运算放大器组的运算后,接到LM317的电压调整端。图中所示的电阻值为用仿真软件得到的精确值,实际制作电路时,可用可调电阻得到某些特殊的阻值。
本应用实例的原理为:PlC16F877单片机送出一个液磨8位数据Dn给数/模转换器MAX518,由后者输出一个对应模拟量D/A11=5×Dn/255V(MAX518的参考电压为5V);该模拟量经过LM324组电路以及LM3l7稳压电路变换后,得到对应的输出量VOUT;当PIC16F877送出的8位数据Dn按照预定的规律变化时,输出量VOUT也按照预定拦唤规律变化;同时为了人机交互方便,把VOUT的值显示在LED上,并通过键闹衡斗盘选择步进加或步进减。
‘玖’ 求单片机控制的直流稳压电源设计思路。。
不要用脉宽,数字开关电源对环路设计的要求很高的
我建议,且要求上说了,用运放
其实不要考虑太多
不难得
我给个思路
单片机输出--D/A--正负电源运放(把5v变成+12到-12,具体值待定)--直接去驱动可调三端稳压管(正负管)的参考
其实就是看负载,我觉得你直接给个大功率运放输出就可以了
有问题可以找我
qq
275005039