基于51单片机的数控电源设计
基于51单片机的智能充电器的设计.doc
基于51单片机的智能充电器的设计1. 引言智能充电器的设计是将充电器与微控制器相结合,实现充电过程的自动化和优化。
本文将介绍一种基于51单片机的智能充电器的设计方案。
该充电器能够根据电池的状态智能调整充电电流和充电时间,提高充电效率和电池寿命。
2. 设计方案智能充电器的设计方案如下:2.1 硬件设计充电器的硬件主要包括电源模块、控制模块、显示模块和充电模块。
2.1.1 电源模块电源模块提供稳定的直流电源供给整个系统,可以使用变压器和整流电路来获得所需要的直流电压。
2.1.2 控制模块控制模块使用51单片机作为主控芯片,通过各种传感器检测充电电流、充电电压和电池状态。
根据检测结果,控制模块可以自动调整充电电流和充电时间,以最佳的方式完成充电过程。
2.1.3 显示模块显示模块用于显示充电器的状态信息,可以使用液晶显示屏或LED灯来实现。
2.1.4 充电模块充电模块是将电能传输到电池上进行充电的部分,可以采用一定的充电控制电路来控制充电过程。
2.2 软件设计智能充电器的软件设计主要包括充电算法和控制逻辑。
2.2.1 充电算法充电算法根据电池的充电状态和特性,计算出最佳的充电电流和充电时间。
常见的充电算法包括恒压充电、恒流充电和多段充电等。
2.2.2 控制逻辑控制逻辑负责监测电池的电压、充电电流和充电时间,并根据充电算法决定是否需要调整充电参数。
控制逻辑还可以实现保护功能,比如过流保护、过温保护和反接保护等。
3. 实现过程智能充电器的实现过程可以分为硬件设计和软件开发两个步骤。
3.1 硬件设计在硬件设计阶段,需要根据设计方案选择合适的电源模块、传感器、显示模块和充电模块。
然后进行硬件电路的布局和连接,确保电路正常工作。
3.2 软件开发在软件开发阶段,首先需要编写51单片机的控制程序。
根据充电算法和控制逻辑编写相关的代码,并与硬件进行连接和测试。
然后进行功能测试和性能优化,确保系统的稳定性和可靠性。
4. 总结本文介绍了一种基于51单片机的智能充电器的设计方案。
基于89C51单片机的数控直流电源外围电路设计
输 出 电流调节 范 围等 ; 另一 种是 质量 指标 , 用 来衡 量 输 出直 流 电压 的稳 定 程 度 , 包括稳压 系数 ( 或 电压
收 稿 日期 : 2 0 1 2 — 1 1 - 2 8 修 回 日期 : 2 0 1 3 01 - 4 ) 5
6 8
波 电压等 。测 试 电路如 图 1所示 。
调 压器 电流表
信息工程 、 通信工程、 机 电一体 化、 电气 自动化等 电 类 专业 学 生必然 涉 及到 的一 个 电工 电子课 程设 计项 目。全 国大学 生 电子设 计竞 赛 曾于 第一 届 A题 、 第
二届 A题 和 第七 届 F题 ( 电流源 ) , 全 国首 届 高 职 院
设计 , 发现 许 多很难 读懂 的问题 。例 如 , 给 出参 数设 计 输 出达 2 O V 电压 , 但 运放 直接 驱动 达林 顿管 明显
无 法 输 出达 2 2 V 以上 。又 如 , 通 篇 无 关 紧 要 的 内
容, 唯 独缺 少 比较放 大环 节 设 计 及 关 键 电路 的完 整 连接 , 也 就 是说 D A C输 出到 调 整 管 之 间 内容 匮乏 ,
数
字
通
信
第4 0卷
1 . 2 质 量 指标
极管 Q 4的发 射结 , 只 能 实现 电压 到 电流 的 转换 功 能 。这 类 电路 虽 然 也能 实 现 电压 或 电流 调节 , 但 当
纹 波 电压 : 是 指ቤተ መጻሕፍቲ ባይዱ叠加在 输 出 电压 . . 上 的交 流分
量 。在额 定输 出 电压 和 负 载 电流 下 , 用 示 波 器 观测
1 ) 输 出 电流 , , ( 即额 定负 载 电流 ) , 它 的最 大值
基于AT89S51单片机的数控电源设计
( . 阳师范学院物理与电子工程学院 , 1绵 四川绵阳 610 2 汕头大学工学院机械电子工程系研究生院, 2O 0;. 广东汕头 550 ) 100
摘
要 :该项设 计的主要 目的是设计一种数 控 电源。它利 用单片机 A 8 S 1作 为主控 芯 片, 制数 字/ T9 5 控 模拟
1 设 计 说 明
直流 稳 压 电源是 常用 的电子设 备 , 能保证 在 电 网 电压 波 动 或负 载 发 生变 化 时 , 出稳 定 的 电压 。 随 它 输 着 数 控稳 压 电源 在 电子装 置 中 的普 遍 使 用 , 通 稳 压 电源 在 工 作 时产 生 的误 差 , 影 响 整 个 系 统 的精 确 普 会
电路来 实现 输 出电压 的控制 。 按 照工 作原 理 , 字集 成 电路可 以划分 为标准 逻辑 器件 、 处理 器 和可 编程 逻辑 器 件 。标 准 逻辑 器 件 数 微 是传 统 数字 系统设 计 中使用 的主要器 件 , 但是 它 的集 成 度较 低 , 件 功 能确 定 , 用 它 设计 系统 导致 电路 器 使 使 用数量 多 , 同时更改设 计 困难 。微处 理器 和可编程 逻辑 器 件都 可 以克服 上 述缺 点 , 可 编程 逻 辑器 件 工 但
21 02年 5月
绵阳师范学院学报
J u a fMin a gNoma nv r o r lo a y n r lU ies n
M a ., 01 y 2 2 V0 . No 5 1 31 .
第3 1卷
第 5期
基 于 A 8 片 机 的 数 控 电 源 设 计 T 95 S 1单
转换 器的输 出电流的大 小, 通过 第一级运算放 大器把输 出的 电流信 号转换成 电压信 号 , 再经过 第二 级运 算放 大器 放 大至相应 的倍 数 , 最后 经过 L 1 M3 7恒流输 出电压 。此设 计通过键 盘电路 与单片机 P 3口的 高三位连接 , 读入控制
基于51单片机的12V数控电源设计
基于51单片机的12V数控电源设计2008年08月14日星期四下午 01:54忙了三天终于把数控电源搞定了.这次做的数控电源设计思想没什么新意,就是一个数模转换(ADC0809)和一个模数转换(DAC0832),再加上两个单片机分别控制0809和0832,组成一个反馈网络,来得到输入的数字相对应的电压,电压范围很小,只有0~12.75V.显示部分采用四段共阴数码管,为什么不用共阳的?哎,只因为最开始买零件的时候没有注意到单片机的驱动能力问题,买了一堆很不实用的零件.所以...之所以用两片单片机,也是因为觉得之前的单片机都没什么用了,以后改学430了,这些旧的单片机就用来做成一些实用的东西吧.呵呵,省得浪费.整块板子做出来之后有10*7cm那么大,用洞洞板焊的.实测电路输出精度+/-0.05V在12V范围内.硬件设计:第一块单片机P0口接数码管代码段的驱动,P2.4~P2.7接四位的位选线,P2.0~P2.3节四个独立操作按键 [模式] [加] [减] [确定] ,P1口接ADC0809的八位数据输出.P3.0~P3.3口接0809的控制线.P3.5~P3.7和第二块单片机的P2.0,P2.1,P2.2相连,用来控制数模输出增减.三根控制线作用分别为 [输出改变允许控制Control_1] [增减信号Control_2] [增减速度控制Control_speed]第二块单片机除了前面的三根控制线,就只剩下和DAC0832的控制线了,看电路图.用0832输出控制LM317可调三端稳压器的输出电压:DAC0809所需时钟脉冲由NE555产生系统电源:5V 12V GND -12V程序清单:第一块单片机:(接0809,四段数码管,四个独立按键)#include<reg51.h>#define uchar unsigned charint i=0,a=0;//定义循环算子uchar hold=5;//当前操作数[0-led1][1-led2][2-led3][3-led4][4-快速调节][5-无] uchar Get_data=0;//模数转换得到的结果int Get_data2=0;//将Get_data*5用以方便转化 (做电压表时用)//uchar led[]={0x3F,0x06,0x5B,0x4F,0x66,0x6D,0x7D,0x07,0x7F,0x6F,0x00};//阳极驱动不带小数点uchar led[]={0xC0,0xF9,0xA4,0xB0,0x99,0x92,0x82,0xF8,0x80,0x90,0xFF};//阴极驱动//uchar point[]={0xBF,0x86,0xDB,0xCF,0xE6,0xED,0xFD,0x87,0xFF,0xEF,0x00};//阳极驱动带小数点uchar point[]={0x40,0x79,0x24,0x30,0x19,0x12,0x02,0x78,0x00,0x10,0xFF};uchar V_list[]={30,36,60,66,90,100,120,180,240};//电压值列表uchar V_index=6;//预置电压索引.uchar num[4]={10,5,0,0};//显示缓存uchar V_num=100;//显示的电压对应在0~255电之间的值,预置压数5Vuchar time=0;//控制模数转换频率变量uchar times=0;//控制按键允许速度变量uchar scan_grant=1;//允许输入uchar hide_flag=0;//隐藏标志[0隐藏][1显示]和hold配合用于控制某一位数码管的亮灭uchar hide_time=0;//用于控制数码管闪烁快慢//uchar zhengshu,xiaoshu_1,xiaoshu_2;void delay(int s);void key_mode();void key_add();void key_sub();void key_confirm();void display();void ADC();void convert();//将get_data填入到num[]数组中void scan_key();//键盘扫描函数void compare();//比较函数(Control_1 Control_2)[00-正确][11-加][10减]//定义位选线sbit led_1=P2^7;sbit led_2=P2^6;sbit led_3=P2^5;sbit led_4=P2^4;sbit mode=P2^0;sbit add=P2^1;sbit sub=P2^2;sbit confirm=P2^3;//0809四根控制线sbit ALE=P3^0;sbit START=P3^1;sbit OE=P3^2;sbit EOC=P3^3;//两根控制线sbit Control_1=P3^6;//变化控制线[1变化][0不变] sbit Control_2=P3^7;//增减控制线[1增][0减] sbit Control_speed=P3^5;//控制变化速度sbit close=P3^4;//当电压稳定时为0;void main(){//初始化led_1=0;led_2=0;led_3=0;led_4=0;//初始化定时器TMOD=0x01; //定时器0,方式1TH0=0x3c;TL0=0xb0;ET0=1; //允许定时器0中断TR0=1; //启动定时器0运行EA=1; //全部中断允许Control_1=0;Control_2=0;while(1){time++;if(time>=10){time=0;//扫描键盘if(hold==5){ADC();//模数转换compare();//转换结果比较,修改控制变量}else{Control_1=0;Control_2=0;}}if(scan_grant==0)scan_key();convert();scan_grant=1;EA=1;}hide_time++;if(hide_time>=80){hide_time=0;if(hide_flag==1){hide_flag=0;}else{hide_flag=1;}}display();}}//延时函数void delay(int s){for(i=0;i<s;i++){}}//按键处理------------------------------------ void key_mode(){delay(1000);if(mode==0){hold++;if(hold>=6){hold=1;}}}void key_add()//加函数{delay(1000);if(add==0){if(hold==0)//当前操作数[0-led1 即num[0]]{}if(hold==1)//当前操作数[1-led2 即num[1]]{if(V_num<=235){V_num=V_num+20;}//加1Vif(hold==2)//当前操作数[2-led3 即num[2]]{if(V_num<=253){V_num=V_num+2;}//加0.1V}if(hold==3)//当前操作数[3-led4 即num[3]]{if(V_num<=254){V_num++;}//加0.05V}if(hold==4)//当前操作数[4-快速调节即V_index] {if(V_index<=7){V_index++;}V_num=V_list[V_index];}if(hold==5)//当前操作数[5-无]{}}}void key_sub()//减函数{delay(1000);if(sub==0){if(hold==0)//当前操作数[0-led1 即num[0]]{}if(hold==1)//当前操作数[1-led2 即num[1]]{if(V_num>=20){V_num=V_num-20;}//减1V}if(hold==2)//当前操作数[2-led3 即num[2]]{if(V_num>=2){V_num=V_num-2;}//减0.1V}if(hold==3)//当前操作数[3-led4 即num[3]]{if(V_num>=1){V_num--;}//减0.05V}if(hold==4)//当前操作数[4-快速调节即V_index] {if(V_index>=1){V_index--;}V_num=V_list[V_index];}if(hold==5)//当前操作数[5-无]{}}}void key_confirm(){delay(1000);if(confirm==0){hold=5;}}//------------------------------------------------------------- void display(){/* led_1=1;if(num[0]==0)//如果第一位是0的话就不显示,led[10]是空{P0=led[10];}else{P0=led[num[0]];}delay(100);led_1=0;P0=0xFF;led_2=1;P0=point[num[1]];delay(100);led_2=0;P0=0xFF;led_3=1;P0=led[num[2]];delay(100);led_3=0;P0=0xFF;led_4=1;P0=led[num[3]];delay(100);led_4=0;P0=0xFF;*/if(hide_flag==1){if(hold==4){delay(400);return;}if(hold!=1){led_1=1;if(num[0]==0)//如果第一位是0的话就不显示,led[10]是空 {P0=led[10];}else{P0=led[num[0]];}delay(100);led_1=0;P0=0xFF;led_2=1;P0=point[num[1]];delay(100);led_2=0;P0=0xFF;}if(hold!=2){led_3=1;P0=led[num[2]];delay(100);led_3=0;P0=0xFF;}if(hold!=3){led_4=1;P0=led[num[3]];delay(100);led_4=0;P0=0xFF;}}if(hide_flag==0){led_1=1;if(num[0]==0)//如果第一位是0的话就不显示,led[10]是空 {P0=led[10];}else{P0=led[num[0]];}delay(100);led_1=0;P0=0xFF;led_2=1;P0=point[num[1]];delay(100);led_2=0;P0=0xFF;led_3=1;P0=led[num[2]];delay(100);led_3=0;P0=0xFF;led_4=1;P0=led[num[3]];delay(100);led_4=0;P0=0xFF;}}void ADC(){START=0;OE=0;START=1;delay(65);START=0;while(EOC==1){}OE=1;delay(65);Get_data=P1;OE=0;// convert();}void convert(){//基准电压要为12.8V/* Get_data2=Get_data*5;num[0]=Get_data2/1000;Get_data2=Get_data2%1000;num[1]=Get_data2/100;Get_data2=Get_data2%100;num[2]=Get_data2/10;Get_data2=Get_data2%10;num[3]=Get_data2; */Get_data2=V_num*5;//Get_data2=Get_data*5;num[0]=Get_data2/1000;Get_data2=Get_data2%1000;num[1]=Get_data2/100;Get_data2=Get_data2%100;num[2]=Get_data2/10;Get_data2=Get_data2%10;num[3]=Get_data2;}void scan_key()//键盘扫描后函数分配{if(mode==0)key_mode();if(add==0)key_add();if(sub==0)key_sub();if(confirm==0)key_confirm();}void compare()//比较函数(Control_1 Control_2)[00-正确][11-加][10减] {Control_1=0;Control_2=0;if(V_num<(Get_data-1)){Control_1=1;Control_2=0;if((Get_data-V_num)>=10){Control_speed=1;close=1;}else{Control_speed=0;close=0;}}if(V_num>(Get_data+1)){Control_1=1;Control_2=1;if((V_num-Get_data)>=10){Control_speed=1;close=1;}else{Control_speed=0;close=0;}}}//中断函数://定时器中断T0用于消除按键等待//定时器中断T1用于进入AD转换函数//--------------------------------------------------------------------//-------------------------定时器中断服务程序-------------------------//--------------------------定时器0工作方式1--------------------------//任务://1:限定进入按键扫描程序的时间间隔,避免在短时间内多次进入键盘扫描而造成误操作//--------------------------------------------------------------------void clear_key() interrupt 1 using 1{times=times+1;if(times==7)//这个数字决定了按键上限速度.{times=0;scan_grant=0;//允许输入EA=0;}TH0=0x3c; //计数器初值重载TL0=0xb0;}第二块单片机(接0832)#include<reg51.h>#define uchar unsigned charint i;sbit CS12=P3^0;//控制线sbit WR12=P3^1;//控制线sbit led=P2^2;//控制led亮灭sbit Control_1=P2^1;//变化控制线1 [1变化][0不变]sbit Control_2=P2^0;//加减控制线2 [1增][0减]sbit Control_speed=P2^3;//变化速度控制uchar out=0;//输出数据uchar a=0;void delay(int s);void main(){P1=0;WR12=0;CS12=0;Control_1=1;Control_2=1;Control_speed=1;while(1){for(a=0;a<=20;a++){delay(1000);}//根据控制信号线决定加减.if(Control_1==1){if(led==0){led=1;}else{led=0;}if(Control_2==1){if(out<=254)if(Control_speed==0){out++;}if(Control_speed==1){out=out+10;}}if(Control_2==0){if(out>=1)if(Control_speed==0){out--;}if(Control_speed==1){out=out-10;}}//写操作WR12=0;CS12=0;P1=out;delay(100);CS12=1;WR12=1;}if(Control_1==0) {led=1;}/*if(out>=255) {out=255;}if(out<=1){out=0;}*/}}void delay(int s) {for(i=0;i<s;i++) {}}。
基于单片机的数控直流稳压电源设计
基于单片机的数控直流稳压电源设计一、概述随着科技的飞速发展,电子设备在我们的日常生活和工业生产中扮演着越来越重要的角色。
这些设备的稳定运行离不开一个关键的组件——电源。
在各种电源类型中,直流稳压电源因其输出电压稳定、负载调整率好、效率高等优点,被广泛应用于各种电子设备和精密仪器中。
传统的直流稳压电源通常采用模拟电路设计,但这种方法存在着电路复杂、稳定性差、调整困难等问题。
为了解决这些问题,本文提出了一种基于单片机的数控直流稳压电源设计方案。
本设计采用单片机作为控制核心,通过编程实现对电源输出电压的精确控制和调整。
相比于传统的模拟电路设计,基于单片机的数控直流稳压电源具有以下优点:单片机具有强大的计算和处理能力,能够实现复杂的控制算法,从而提高电源的稳定性和精度单片机可以通过软件编程实现各种功能,具有很强的灵活性和可扩展性单片机的使用可以大大简化电路设计,降低成本,提高系统的可靠性。
本文将详细介绍基于单片机的数控直流稳压电源的设计原理、硬件电路和软件程序。
我们将介绍电源的设计原理和基本组成,包括单片机控制模块、电源模块、显示模块等我们将详细介绍硬件电路的设计和实现,包括电源电路、单片机接口电路、显示电路等我们将介绍软件程序的设计和实现,包括主程序、控制算法、显示程序等。
1. 数控直流稳压电源的应用背景与意义随着科技的快速发展,电力电子技术广泛应用于各个行业和领域,直流稳压电源作为其中的关键组成部分,其性能的稳定性和可靠性直接影响着整个系统的运行效果。
传统的直流稳压电源多采用模拟电路实现,其调节精度、稳定性以及智能化程度相对较低,难以满足现代电子设备对电源的高性能要求。
开发一种高性能、智能化的数控直流稳压电源具有重要意义。
数控直流稳压电源通过引入单片机控制技术,实现了对电源输出电压和电流的精确控制。
它可以根据实际需求,通过编程灵活调整输出电压和电流的大小,提高了电源的适应性和灵活性。
同时,数控直流稳压电源还具备过流、过压、过热等多重保护功能,有效提高了电源的安全性和可靠性。
基于单片机的高性能数控恒流源设计与实现
基于单片机的高性能数控恒流源设计与实现数控恒流源是一种功能比较强大的电子元器件。
它能够为其他电子元器件提供稳定的电流输出,这对很多电子设备的正常运行起到了重要的保障作用。
在工业生产领域,尤其是半导体、电路板等领域,数控恒流源的应用相当广泛。
在本文中,我将介绍一种基于单片机的高性能数控恒流源,让我们一起来看看吧。
一、设计原理该数控恒流源主要由单片机、操作界面、甄别功放和恒流稳压器四部分组成。
单片机和操作界面相连,利用程序控制电流的大小,同时可以显示电流大小和一些操作信息。
甄别功放是用来放大输出电流的,而恒流稳压器则是保证输出电流的稳定性。
二、具体实现1. 单片机电路在本设计中,我们选择了AVR单片机,主要是因为其性价比高以及易于编程的特点。
使用单片机所需的周边电路如晶振、电源电路等,这里就不再赘述。
2. 操作界面我们选择了一个12864的液晶显示器,以及四个按键,分别为上、下、左、右。
通过这些按键来选择电流大小和操作模式等。
3. 甄别功放甄别功放主要是用来放大输出电流的,我们选择了OPA548T 作为甄别功放。
其最大音量及输出功率分别为24V和200W,应该足够满足在工业生产领域的需求。
4. 恒流稳压器稳压芯片使用的是LM317,它可以输出1.2V至37V的电压,并可以有一个电流稳定的输出。
在本设计中,我们将其设置为输出1A的电流。
并用一个调节电阻来实现输出电流的调节。
三、总结本文介绍了一种基于单片机的高性能数控恒流源。
它具有功能强大、精度高、控制方便等优点。
在工业生产领域中,它有着广泛的应用。
希望本文能够对大家在这一领域里的设计和实现提供一些启示和帮助。
基于51单片机的直流数控电源设计
基于51单片机的直流数控电源设计标题:基于51单片机的直流数控电源设计正文:一、设计背景随着科技的不断发展和进步,电子技术在工业、医疗、交通、家庭等领域中的应用越来越广泛。
而在这些领域中,直流电源的需求十分重要。
传统的直流电源虽然能够满足一定程度上的需求,但相较于智能化、高效化的直流数控电源却存在种种不足。
针对这一情况,基于51单片机的直流数控电源应运而生。
本文将对其设计进行阐述。
二、数控电源的基本要求在电源设计之初,需要制定基本的电源要求。
一方面,直流数控电源应能够提供充足的电源输出(常规为50V),同时具备较强的稳定性和可靠性;另一方面,电源应兼顾功率控制和电流控制的需求,在使用真空管、半导体器件等时,对于转换效率和响应时间也有一定的要求。
三、电路设计技术指标明确后,进入电路设计阶段。
本设计基于51单片机+PWM实现,其主要流程包括:输入、心形预放大、PWM使能/停止、保护电路、过流保护等。
1. 输入:本设计采用串口输入,是最常用的方式。
2. 心形预放大:通常,用三极管实现预放大。
3. PWM使能/停止:使用PWM实现电流和电压的调节,从而实现精准控制。
4. 保护电路:在设计之初,应加入防爆、过压、恒流等保护。
5. 过流保护:过流保护在实际使用中十分重要,可以避免硬件损坏,保证智能化的数控电源的长期使用效果。
四、实现流程当数控电源运行后,按下电源开关,开启电源,中间的方型LED灯亮,表明电源运行正常。
通过上位机串口调节不同的参数,包括电荷电压、电流限制、电流保护等。
电压的调节基于DAC输出,电流的调节由微控制器PWM实现。
当实现各项参数的设定后,按下返回键,数据将被保存至EEPROM浮点存储器中,在下次开机后可实现自动恢复设置。
五、结尾数控电源的设计是目前智能化电源控制的重点研究方向,本设计采用基于51单片机、PWM和保护电路相结合的方案,实现业内对于电源的要求。
在未来的发展中,数控电源的应用将逐渐普及,有望在智能工厂、汽车电子等领域发挥出更大的作用。
基于单片机的数控直流稳压电源
基于单片机的数控直流稳压电源在电子设备中,直流稳压电源是非常重要的一部分,它能够为其他电路、芯片或者整个系统提供稳定可靠的电源供应。
而基于单片机的数控直流稳压电源技术则能够在一定程度上提升电源的稳定性和可调性,本文将介绍基于单片机的数控直流稳压电源的原理和设计。
1. 引言直流稳压电源在各种电子设备中都起着至关重要的作用。
传统的直流稳压电源主要采用稳压二极管、稳压管等元件,无法实现精准的控制和调节。
而基于单片机的数控直流稳压电源通过单片机的控制和监测,能够实现电源输出的精确控制和稳定性。
2. 设计原理基于单片机的数控直流稳压电源采用了反馈控制的原理,通过单片机对电源输出进行监测和调节。
其基本原理如下:首先,将输入交流电源经过整流和滤波,得到稳定的直流电压。
然后,通过单片机的模数转换功能,将电源输出电压转换为数字信号。
单片机通过比较这个数字信号与设定值,计算出控制电源输出的PWM 信号。
接下来,PWM信号经过数模转换后,通过放大电路驱动功率开关管。
功率开关管的导通与截止控制决定了电源的输出电压。
单片机通过不断调整PWM信号的占空比,实现对电源输出电压的精确调节。
同时,通过单片机监测电源输出电压的实际值,并与设定值进行比较,若存在偏差,则单片机通过反馈控制的方式调整PWM信号,使电源输出电压保持在设定值附近,从而实现直流稳压电源的功能。
3. 设计步骤基于单片机的数控直流稳压电源的设计步骤如下:3.1 硬件设计根据需要设计输出电压范围和电流容量,选取适当的元器件。
包括整流滤波电路、模数转换电路、功率开关管和放大电路等。
3.2 软件设计编写单片机的控制程序,实现电源输出的精确控制和稳定性。
包括模数转换、PWM控制和反馈控制等功能。
3.3 系统集成将硬件电路和单片机控制程序进行集成,进行系统调试和优化。
通过实验和测试,不断优化电源的稳定性和可调性。
4. 应用示例基于单片机的数控直流稳压电源的应用非常广泛。
例如,可以应用于实验室、工业自动化、通信设备等领域。
基于51单片机控制的开关电源设计
基于51单片机控制的开关电源设计一、引言开关电源是一种将交流电转换为直流电的电子设备,广泛应用于各个领域。
本文将以基于51单片机控制的开关电源设计为题,介绍设计的原理和实现过程。
二、设计原理开关电源的设计主要包括输入电路、滤波电路、变压器、整流电路、滤波电路、稳压电路以及控制电路。
其中,控制电路起到控制和调节输出电压的作用。
在本设计中,我们采用了51单片机作为控制电路的核心,通过编程控制电路的开关状态,实现对输出电压的精准调节。
三、设计过程1. 输入电路的设计:输入电路主要用于将交流电转换为直流电,并对电压进行稳压处理。
我们选择了整流桥和滤波电容作为输入电路的核心元件,通过整流和滤波,将交流电转换为平稳的直流电。
2. 变压器的设计:变压器是开关电源的重要组成部分,用于提高或降低输入电压的大小。
我们根据实际需求选择合适的变压器,使得输出电压与输入电压之间满足所需的关系。
3. 整流电路的设计:整流电路用于将输入电压转换为脉冲电压,我们选择了二极管桥整流电路,通过将输入电压进行整流,得到脉冲电压。
4. 控制电路的设计:控制电路是整个开关电源设计中最关键的部分,我们选择了51单片机作为控制电路的核心。
通过编程,我们可以控制开关管的开关状态,从而实现对输出电压的调节和稳定。
5. 输出电路的设计:输出电路主要用于输出稳定的直流电压。
我们选择了稳压电路和滤波电容作为输出电路的核心元件,通过稳压和滤波,得到稳定的输出电压。
四、实现效果通过以上的设计过程,我们成功实现了基于51单片机控制的开关电源。
通过编程控制,我们可以实现对输出电压的精确调节和稳定控制。
该开关电源具有输出电压稳定、效率高、响应速度快等特点,适用于各种电子设备的供电需求。
五、总结本文以基于51单片机控制的开关电源设计为题,介绍了设计的原理和实现过程。
通过该设计,我们可以实现对输出电压的精确调节和稳定控制,满足各种电子设备的供电需求。
希望本文能为读者提供有关开关电源设计的参考和借鉴,同时也希望读者能够通过自己的努力和创新,设计出更加高效和稳定的开关电源。
基于51单片机的数控电源设计
基于51单片机的数控电源设计本文介绍了以51系列单片机为控制单元,以数模转换器DAC0832输出参考电压,以该参考电压控制电压转换模块LM350的输出电压大小。
该电路设计简单,应用广泛,精度较高等特点。
引言目前所使用的直流可调电源中,几乎都为旋纽开关调节电压,调节精度不高,而且经常跳变,使用麻烦。
利用数控电源,可以达到每步0.1V的精度,输出电压范围0~15V,电流可以达到2A。
系统结构图1:硬件系统结构图对选用芯片说明DAC0832是一款常用的数摸转换器,它有两种连接模式,一种是电压输出模式,另外一种是电流输出模式,为了设计的方便,选用电压输出模式,如电路图所示,Iout1和Iout2之间接一参考电压,VREF输出可控制电压信号。
它有三种工作方式:不带缓冲工作方式,单缓冲工作方式,双缓冲工作方式。
该电路采用单缓冲模式,由电路图可知,由于/WR2=/XFER=0,DAC寄存处于直通状态。
又由于ILE=1,故只要在选中该片(/CS=0)的地址时,写入(/WR= 0)数字量,则该数字信号立即传送到输入寄存器,并直通至DAC寄存器,经过短暂的建立时间,即可以获得相应的模拟电压,一旦写入操作结束,/WR1和/CS 立即变为高电平,则写入的数据被输入寄存器锁存,直到再次写入刷新。
AT24C02是一款常用的可掉电保存数据的ROM,2K比特容量,采用I2C总线操作,关于它的具体操作方法参考相关资料。
点击查看原始图片图2:主硬件电路图图3:参考电压电路图硬件电路设计采用常用的51芯片作为控制器,P0口和DAC0832的数据口直接相连,DA的/CS和/WR1连接后接P2.0,/WR2和/XEFR接地,让DA工作在单缓冲方式下。
DA的11脚接参考电压,参考电压电路如图2所示,通过调节可调电阻调节LM336的输出电压为5.12V,所以在DAC的8脚输出电压的分辨率为 5.12V/256=0.02V,也就是说DA输入数据端每增加1,电压增加0.02V。
基于51单片机的开关电源设计
基于单片机的开关电源设计摘要【摘要】本次设计的主要目的是实现一个开关电源,开关电源在日常生活中应用非常广泛,比如电视机、电脑、冰箱以及其他常用的电子产品都需要开关电源,如今是数字化时代,用单片机实现电子产品十分方便,所以在这次设计中使用了单片机实现。
在这次设计文档中,详细阐述了开关电源与线性电源的比较,方案论证,总体结构设计,并附以相关电路图表示,最后生成相关了PCB电路图【关键词】线性,半导体,开关,储能,转换,控制,滤波,分压,抖动【Abstract】This design of Zhuyaomude is to achieve a switching power supply,switching power supply is widely used in daily life in,such as televisions,computers,Bingxiangyiji other Changyong of electronic products require power supply,Ru Jin Hua Shi Dai digital, electronic products achieved with Dan Pianji very convenient,so the design used in this MCU. In this design document,detailed in the switching power supply with linear power supply comparison,program demonstration,the overall structural design,along with the relevant circuit that generates the final circuit diagram related to the PCB【Keywords】Linear,semiconductors,switches,energy storage,conversion,control, filtering,partial pressure,jitter目录......................................................................................................................................................................I I 摘要......................................................................................................................................................................绪论 (1)第一章概述 (2)1.1课题来源及意义 (2)1.2课题基本要求 (2)第二章开关电源方案设计 (4)2.1开关电源工作原理 (4)2.2开关电源与线性电源的比较 (4)2.2.1线性电源的缺点 (4)2.2.2开关电源的优点 (5)2.3方案论证 (5)2.3.1方案1 (5)2.3.2方案2 (6)2.3.3方案3 (6)2.3.4方案分析 (6)2.3.5总体结构设计 (6)2.4难点分析 (7)2.4.1如何提高电源工作频率 (7)2.4.2储能电感的绕制 (8)2.4.3标度转换技术 (9)2.5控制技术选择 (10)2.5.1电压型控制技术 (10)2.5.2电流型控制技术 (10)2.5.3电流控制型技术的优势 (11)2.6开关变换器结构分析与选择 (11)2.6.1降压变换电路分析 (11)2.6.2升压型变换电路 (13)2.6.3Buck-Boost型变换器 (13)2.7开关电路器件参数选择 (14)2.7.1功率开关管的选择 (14)2.7.2滤波电容的选择 (15)目录2.7.3储能电感的选择 (15)2.7.4续流二极管的选择 (16)第三章硬件电路设计 (17)3.1电源电路设计 (17)3.1.1整流滤波电路 (17)3.1.2开关变换电路 (17)3.1.3分压电阻的计算 (18)3.1.4保护电路 (18)3.2控制电路设计 (19)3.2.1反馈电路设计 (20)3.2.2四位数码显示电路设计 (21)3.2.3单片机与键盘接口电路设计 (22)第四章软件设计 (23)4.1总体编程思想 (23)4.1.1键盘防抖动子程序 (23)4.1.2数码显示子程序 (24)4.1.3采样子程序 (25)4.1.4中断处理程序设计 (26)4.1.5PID控制算法 (27)4.1.6数字滤波 (28)第五章系统调试 (29)5.1硬件模块调试 (29)5.1.1整流滤波电路的调试 (29)5.1.2AD转换的调试 (29)5.1.3脉冲输出电路的调试 (29)5.1.4功率开关管的调试 (29)5.2电源性能指标的测试 (30)5.2.1开关电源的技术指标 (30)5.2.2输出电压的测试 (31)5.2.3最大输出电流的测试 (32)5.2.4过流保护的测试 (32)5.2.5电压调整率的测试 (32)5.2.6纹波电压的测试 (33)物理与电子工程系毕业论文第六章结论 (34)参考文献 (35)致谢 (36)附录 (37)附录绪论开关电源是利用现代电子电力技术控制功率开关管(MOSFET;三极管)的导通和关断的时间比来稳定输出电压的一种新型稳压电源。
基于51单片机的数控直流稳压电源设计
数控直流稳压电源就是能用数字来控制电源输出电压的大小,而且能使输出的直流电压能保持稳定、精确的直流电压源。
本文介绍了利用D/A转换电路、辅助电源电路、去抖电路等组成的数控稳压电源电路,详述了电源的基本电路结构和控制策略。
它与传统的稳压电源相比,具有操作方便,电压稳定度高的特点,其结构简单、制作方便、成本低,输出电压在1-10V之间连续可调,其输出电压大小以0.5V步进,输出电压的大小调节是通过“ ”、“-”两个键操作的,而且可以根据实际要求组成具有不同的输出电压值的稳压源电路。
该电源控制电路选用89C51单片机控制主电路采用串联调整稳压技术具有线路简单、响应迅速、稳定性好、效率高等特点。
关键词:稳压电源、单片微型机;数控直流、D/A转换;第一章绪论 (3)1.1数控直流稳压电源的产生背景 (3)1.2系统开发的意义 (4)1.3系统主要功能 (5)1.4研究中拟解决的主要问题 ............................................. 错误!未定义书签。
第二章系统总体方案设计 ......................................................... 错误!未定义书签。
2.1系统概述.......................................................................... 错误!未定义书签。
2.2系统整体概述.................................................................. 错误!未定义书签。
2.2.1控制部分................................................................ 错误!未定义书签。
2.2.2显示部分................................................................ 错误!未定义书签。
基于单片机的数控恒流源设计
本科毕业论文(设计)题目(中文)基于单片机的数控恒流源设计a(英文)Design of constant current voltage source based on SCM完成日期 2016 年 4 月摘要恒流源是一种高精度的电源,具有响应速度快,恒流精度高,能长期稳定工作,适合各种性质负载等优点,而具有了越来越广泛的应用。
本文主要论述了一种基于51单片机为控制核心的数控直流源的设计与实现。
本电源具有可预设电流,电流步进,显示电流的功能。
主要由单片机控制模块、键盘输入模块、A/D转换模块、恒流源模块、D/A转换模块和显示模块六部分组成。
系统由单片机设定预置电流信号,经过D/A转换器TLC5615输出模拟电压信号,该信号控制达林顿管的基极,使其集电极输出相应的电流。
再通过A/D转换芯片,实时把采样电路上的模拟信号转换成数字信号,形成反馈,显示出实际的输出电流。
关键词:压控恒流源;单片机;数控电源AbstractConstant current source is a kind of common power source with high precision with fast response, high precision of constant current. It can also work stably for a long time and has various properties of the load. So now it is used more and more widely. This paper mainly discusses the design and implementation of a digital constant current source based on51 MCU as the control core of the system. The power supply has a preset current, current step, current display function. It has 6 parts: Control module, keyboard input module, A/D transform module, D /A transform module , display module and constant current source module. The current signal set by the SCM. Then it through D / A converter TLC5615 , which output to the voltage analog signal and control the Darlington tube base, and output the corresponding current. Finally through the A/D conversion chip, real-time sampling circuit analog signal is converted into digital quantity, feedback form, show the actual output current.Keywords: voltage controlled constant current source; single chip microcomputer; digital power supply目录上海师范大学本科毕业论文(设计)诚信声明…………………………………上海师范大学本科毕业论文(设计)选题登记表…………………………………上海师范大学本科毕业论文(设计)指导记录表 (Ⅳ)中文摘要及关键词 (Ⅴ)英文摘要及关键词 (Ⅵ)1 前言 (1)1.1 研究背景及意义 (1)1.2 国内外研究现状 (1)2 基本原理与方案对比 (2)2.1 总体框图 (2)2.2 恒流源方案对比 (3)2.2.1 晶体管恒流源 (3)2.2.2场效应管恒流源 (4)2.2.3集成电路恒流源 (5)2.2.4 总结.................................................................................52.3 单片机简介 (6)2.4 液晶显示屏简介 (8)2.5 数模转换芯片 (9)2.6 模数转换芯片 (9)3各模块实现………………………………………………………………………103.1 键盘模块 (10)3.2 液晶显示模块 (11)3.3D/A转换模块 (12)3.4 A/D转换模块 (12)3.5恒流源模块 (13)3.6 电路整体工作原理 (14)4 系统软件实现 (15)4.1综述 (15)4.2键盘输入流程图 (16)4.3A/D转换流程图 (17)4.4D/A转换流程图 (18)4.5液晶显示流程图 (19)5 整体测试与分析…………………………………………………………………206 总结与展望………………………………………………………………………22参考文献……………………………………………………………………………23附录A 仿真原理图…………………………………………………………………24附录B 程序部分……………………………………………………………………251 前言1.1 研究背景及意义随着电子技术的发展,我们身边出现了越来越多的智能化数字化的精密电子设备,消费者在关注设备的性能、价格、功能、设计的同时,设备的质量和稳定性越来越成为人们关注的重点。
基于51单片机的步进电机控制系统设计与实现
基于51单片机的步进电机控制系统设计与实现步进电机控制系统是基于51单片机的一种控制系统,它主要用来控制步进电机的转动方向和转速等参数。
下面详细解释一下这个系统的设计和实现。
1. 系统硬件设计步进电机控制系统的硬件主要包括51单片机、驱动电路、步进电机和电源等部分。
其中,驱动电路是控制步进电机的关键,它通常采用L298N芯片或ULN2003芯片等常用的驱动模块。
在硬件设计方面,主要需要考虑以下几个方面:(1)步进电机的种类和规格,以便选择合适的驱动电路和电源。
(2)驱动电路的接线和参数设置,例如步进电机的相序、脉冲频率和电流大小等。
(3)电源的选取和参数设置,以满足系统的供电要求和安全性要求。
2. 系统软件设计步进电机控制系统的软件设计主要包括编写控制程序和调试程序。
其中,控制程序是用来实现步进电机的正转、反转、加速和减速等控制功能,而调试程序则用来检测系统的电路和程序的正确性和稳定性。
在软件设计方面,主要需要考虑以下几个方面:(1)确定控制程序的算法和流程,例如使用“循环控制法”或“PID控制法”等控制方法。
(2)选择编程语言和编译器,例如使用汇编语言或C语言等。
(3)编写具体的控制程序和调试程序,并进行测试和调试,以确保程序的正确性和稳定性。
3.系统实现步进电机控制系统的实现主要包括硬件组装和软件烧录两个部分。
在硬件组装方面,需要按照硬件设计图纸进行零部件的选取和电路的组装,同时进行电源和信号线的接入。
在软件烧录方面,需要使用专用的编程器将程序烧录到51单片机的芯片中,并进行相应的设置和校验。
总之,基于51单片机的步进电机控制系统是一个功能强大、应用广泛的控制系统,可以实现精密控制和自动化控制等多种应用,具有很高的实用价值和研究价值。
基于单片机的数控恒流源设计
基于单片机的数控恒流源设计作者:郭燕来源:《教育界》2012年第15期【摘要】文章利用单片机的智能测控特点,设计一种基于C51系列单片机的数控恒流源。
单片机控制模块设定电流源输出,改善电流调节精度,消除小电流输出的非线性。
压控电流源是整个设计的核心,恒流调节,抑制纹波电流,还实现步进功能,提高电流的测量精确度。
【关键词】单片机 LCD 恒流源1 引言恒流源是仪器仪表和电子电路领域广泛运用的一种电子设备。
本文介绍了一种基于C51系列单片机的数控恒流源。
通过键盘预置电流值,经单片机将数据送至液晶显示部分和D/A转换模块,将对应电压量送至恒流源模块,作为其可控输入电压量。
恒流源模块负载输出端的电压通过差放,再经过A/D转换送至单片机进行比较,输出到显示。
通过单片机的控制,实现电流的步进控制和输入输出的改变。
2数控恒流源硬件设计1.单片机控制模块:C51系列单片机,硬件结构简洁明了,特殊功能寄存器功能规范且软件指令系统易于掌握。
2.显示模块:采用LCD,显示信息量大,且汉字可显,人机交互性强,选择它既可以减少IO口的资源,又可以使硬件精简。
3.数模转换模块:A/D模块选用TLC549,D/A模块选用TLC5620。
4.电源模块:由电源变压器、整流电路、滤波电路和稳压电路组成。
5.恒流源模块:压控恒流源,通过改变恒流源的外围电压,利用电压的大小控制输出电流的大小。
电压控制电路采用数控方式,利用单片机送出数字量,经D/A转换转变成模拟信号,再送到大功率三极管进行放大。
单片机系统对输出电流进行实时监控,采用数字方式作为反馈调整,由程序控制调节功率管的输出恒定电流。
当改变负载大小时,基本上不影响电流的输出,采用闭环控制系统使其维持电流恒定。
如图1所示:图1恒流源部分3 软件仿真与测试3.1 模块调试1. 液晶显示模块液晶显示器LCD1602的程序调试:(1)让第一行显示“setting:”,第二行显示“measure:”;(2)让第一行显示“setting:mA”,第二行显示“measure:mA”,中间空5个字符;(3)让第一行显示“se tting:0123mA”,第二行显示“measure:4567mA”。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
基于51单片机的数控电源设计
本文介绍了以51系列单片机为控制单元,以数模转换器DAC0832输出参考电压,以该参考电压控制电压转换模块LM350的输出电压大小。
该电路设计简单,应用广泛,精度较高等特点。
关键词:单片机(MCU),数模转换器(DA),掉电存储器(EEPROM)。
引言
目前所使用的直流可调电源中,几乎都为旋纽开关调节电压,调节精度不高,而且经常跳变,使用麻烦。
利用数控电源,可以达到每步0.1V的精度,输出电压范围0~15V,电流可以达到2A。
系统结构
图1:硬件系统结构图
对选用芯片说明
DAC0832是一款常用的数摸转换器,它有两种连接模式,一种是电压输出模式,另外一种是电流输出模式,为了设计的方便,选用电压输出模式,如电路图所示,Iout1和Iout2之间接一参考电压,VREF输出可控制电压信号。
它有三种工作方式:不带缓冲工作方式,单缓冲工作方式,双缓冲工作方式。
该电路采用单缓冲模式,由电路图可知,由于/WR2=/XFER=0,DAC寄存处于直通状态。
又由于ILE=1,故只要在选中该片(/CS=0)的地址时,写入(/WR=0)数字量,则该数字信号立即传送到输入寄存器,并直通至DAC 寄存器,经过短暂的建立时间,即可以获得相应的模拟电压,一旦写入操作结束,/WR1和/CS立即变为高电平,则写入的数据被输入寄存器锁存,直到再次写入刷新。
AT24C02是一款常用的可掉电保存数据的ROM,2K比特容量,采用I2C总线操作,关于它的具体操作方法参考相关资料。
图2:主硬件电路图
图3:参考电压电路图
硬件电路设计
采用常用的51芯片作为控制器,P0口和DAC0832的数据口直接相连,DA的/CS和/WR1连接后接P2.0,/WR2和/XEFR接地,让DA工作在单缓冲方式下。
DA的11脚接参考电压,参考电压电路如图2所示,通过调节可调电阻调节LM336的输出电压为5.12V,所以在DAC的8脚输出电压的分辨率为5.12V/256=0.02V,也就是说DA输入数据端每增加1,电压增加0.02V。
DA的电压输出端接放大器OP07的输入端,放大器的放大倍数为 R8/(R8+R9)=1K/(1K+4K)=5,输出到电压模块LM350的电压分辨率=0.02V×5=0.1V。
所以,当MCU输出数据增加1的时候,最终输出电压增加0.1V,当调节电压的时候,可以以每次0.1V的梯度增加或者降低电压。
本电路设计三个按键,KEY1为翻页按键,最近设置的电压大小保存在EEROM里面,比如10个电压,按一下KEY1,电压变为下一个,省去了反复设置电压的麻烦,KEY2为电压+,KEY3为电压+,按一下KEY2,当前电压增加0.1V,按一下KEY3,当前电压减小0.1V。
限于篇幅原因,未画出数码管显示电路,该系统使用3个数码管,可以显示三位数,一个小数位,比如可以显示12.5V,采用动态扫描驱动方式。
本主电路的原理是通过MCU控制DA的输出电压大小,通过放大器放大,给电压模块作为最终输出的参考电压,真正的电压,电流还是由电压模块LM350输出。
为了达到2A的输出电流,LM350必须选用金属外壳封装,并且带稍大面积的散热片。
软件流程
软件系统
软件的设计主要完成三方面的功能:
1.设置电压并且保存,主要是对EEROM的操作。
2.把设置的电压送到DA,主要是对DA的操作。
3.中断显示,把设置的电压显示到LED数码管上。
该数控电压源实现保存最近10电压功能,当打开电源的时候,它显示和输出的必须是上次使用电压大小,所以在EEROM中使用11个地址保存数据,第一个地址保存当前电压编号,大小为1~10。
第2个地址~第11个地址连续保存10个电压大小数据。
电压编号的大小分别对应到相应地址电压大小。
对软件流程做一下说明:当电源打开的时候,MCU进行复位,寄存器清零。
接着电源应该显示和输出上次关机前的电压大小,这时候MCU先读取EEPROM中保存的电压编号,根据电压编号读出对应电压,把该数据送到DA,在转换成BCD码送到显示部分。
这时候程序循环检测是否有按键信号,如果KEY1按下,电压编号指向下一个,保存该电压编号,读对应电压,把他送到DA并且显示。
如果KEY2按下,当前电压数据加1,相对应输出电压(POWER—OUT引脚)增加0.1V,保存设置电压数据。
如果KEY3按下,电压数据减1,输出电压
减少0.1V,保存设置电压数据。
结语
该数控电压源经过时间实际使用说明,具有精度高,使用方便,硬件电路简单等特点。
如果要作成产品,还需要增加电流测量和显示部分,对这部分电路请参考相关资料。
本文主要对如何控制功率输出电压大小做出个例子,该电路对测量领域,以及马达调速方面都可以扩展使用。
参考文献:
1.陆坤.奚大顺等《电子设计技术》电子科技大学出版社. 1997.5
2.马忠梅.籍顺心等《单片机的C语言应用程序设计》北京航空航天大学出版社2001.5。