本文主要论述了一种基于
51
单片机为核心控制器的数控直流电源的设计原理和实
现方法。该电源具有电压可预置、可步进调整、输出的电压信号和电流信号可同时显示功
能。文章介绍了系统的总体设计方案,其主要由微控制器模块、稳压控制模块、电压
/
电流
采样模块、显示模块、键盘模块、电源模块五部分构成。该系统原理是以
STC89C52
单片
机为控制单元,以数模转换芯片
DAC0832
输出参考电压控制电压转换模块
LM317
输
出电压大小,同时输出稳压、恒流采用模数转换芯片
ADC0832
对采样的电压、电流转换
为数字信号,再通过单片机实现闭环控制。文章最后对数控直流电源的主要性能参数进
行了测定和总结,并对其发展前景进行了展望。 单片机(
MCU
);数模转换器(
DAC
);模数转换器(
ADC
);闭环控制
惠州学院毕业论文Based on the 51 microcontrollernumerical DC
power supply designAuthor
:
Liu Xuezhi Major
:
Electronic information technology
Teacher
:
Huang Lin Title
:
Associate ProfessorAbstractThe method of this paper based on the 51 microcontroller core of the numerical
controller DC power supply design theory and realization. The power supply has some
functions such as presetting voltage, stepping adjustment, displaying the output voltage
signals and current signals at the same time. This paper introduces a general designing plan of
the system, which is mainly consisted of micro-controller module, DC Regulators module,
voltage/current sampling module, display module, keyboard module, power supply module.
The system is based on the principle of single-chip microcomputer to control the unit
STC89C52 to DAC0832 digital-to-analog converter chip reference voltage to control the
output voltage LM317 output voltage conversion module size, while the output voltage
regulator, current use of analog-to-digital converter ADC0832 chip sampling of voltage and
current converted to digital signals, and then through the single-chip closed-loop control to
achieve. Article on the main DC power supply CNC performance parameters were measured
and summarized, and their development prospects.Keywords microcontroller (MCU)
,
the Digital to Analog (DAC)
,
the Analog to
Digital (ADC)
,
the closed-loop control基于51单片机数控直流电源的设计1.
前言 ………………………………………………………………………………
1
1.1
研究背景及意义…………………………………………………………………
1
1.2
国内外研究现状…………………………………………………………………
1
1.3
课题的主要内容…………………………………………………………………
2
1.4
论文的总体结构…………………………………………………………………
3
2.
方案论证与设计基础知识…………………………………………………………
3
2.1
方案设计与论证 …………………………………………………………………
3
2.2
主控单片机
(MCU) ………………………………………………………………5
2.3
液晶显示屏(
1602
)……………………………………………………………
6
2.4
三端可调稳压器…………………………………………………………………
8
2.5
运算放大器
OP07 ………………………………………………………………9
2.6
数模转换芯片 …………………………………………………………………10
2.7
模数转换芯片 …………………………………………………………………11
3.
系统电路原理及硬件实现 ………………………………………………………
12
3.1
系统总体框图 …………………………………………………………………12
3.2
系统模块电路设计 ……………………………………………………………
13
3.2.1
单片机控制模块………………………………………………………………
13惠州学院毕业论文3.2.2
稳压控制模块…………………………………………………………………
14
3.2.3
电压与电流采样模块…………………………………………………………
15
3.2.4
显示模块………………………………………………………………………
18
3.2.5
电源模块………………………………………………………………………
19
3.2.6
键盘模块………………………………………………………………………
20
3.3
系统整体原理图 ………………………………………………………………
20
4.
系统的软件设计 …………………………………………………………………
21
4.1
软件设计思路 …………………………………………………………………
21
4.2
系统软件流程 …………………………………………………………………
21
4.2.1
主程序模块 ……………………………………………………………………
21
4.2.2
闭环比较程序模块 …………………………………………………………
23
5.
系统测试与误差分析 ……………………………………………………………
24
5.1
系统测试 ………………………………………………………………………
24
5.1.1
软件测试 ……………………………………………………………………
24
5.1.2
硬件测试 ……………………………………………………………………
24
5.1.3
系统整体测试 …………………………………………………………………
25
5.2
误差分析 ………………………………………………………………………
26
6.
设计总结和展望 …………………………………………………………………
27
致谢 …………………………………………………………………………………
29
参考文献 ……………………………………………………………………………
30
附录
1
系统整体原理图………………………………………………………………
31
附录
2
系统源程序……………………………………………………………………
32基于51单片机数控直流电源的设计1.1.1电源技术尤其是数控电源技术是一门实践性很强的工程技术,服务于各行各业。当
今电源技术融合了电气、电子、系统集成、控制理论、材料等诸多学科领域。直流稳压电源
是电子技术常用的仪器设备之一
,
广泛的应用于教学、科研等领域,是电子实验员、电子
设计人员及电路开发部门进行实验操作和科学研究所不可缺少的电子仪器。在电子电路
中,通常都需要电压稳定的直流电源来供电。而整个稳压过程是由电源变压器、整流、滤
波、稳压等四部分组成。然而这种传统的直流稳压电源功能简单、不好控制、可靠性低、干
扰大、精度低且体积大、复杂度高。普通的直流稳压电源品种有很多
,
但均存在以下二个
问题
:
输出电压是通过粗调
(
波段开关
)
及细调
(
电位器
)
来调节。这样
,
当输出电压需要精
确输出
,
或需要在一个小范围内改变时
,
困难就较大。另外
,
随着使用时间的增加
,
波段开
关及电位器难免接触不良
,
对输出会有影响。稳压方式均是采用串联型稳压电路
,
对过载
进行限流或截流型保护
,
电路构成复杂
,
稳压精度也不高。
在家用电器和其他各类电子设备中,通常都需要电压稳定的直流电源供电。但在实
际生活中,都是由
220V
的交流电网供电。这就需要通过变压、整流、滤波、稳压电路将交
流电转换成稳定的直流电。滤波器用于滤去整流输出电压中的纹波,一般传统电路由滤
波扼流圈和电容器组成,若由晶体管滤波器来替代,则可缩小直流电源的体积,减轻
其重量,且晶体管滤波直流电源不需直流稳压器就能用作家用电器的电源,这既降低惠州学院毕业论文了家用电器的成本,又缩小了其体积,使家用电器小型化。传统的直流稳压电源通常采
用电位器和波段开关来实现电压的调节,并由电压表指示电压值的大小。因此,电压的
调整精度不高,读数欠直观,电位器也易磨损。而基于单片机控制的直流稳压电源能较
好地解决以上传统稳压电源的不足。
随着科学技术的不断发展,特别是计算机技术的突飞猛进,现代工业应用的工控
产品均需要有低纹波、宽调整范围的高压电源,而在一些高能物理领域,更是急需电脑
或单片机控制的低纹波、宽调整范围的电源。1.2 从十九世纪
90
年代末起,随着对系统更高效率和更低功耗的需求,电信与数据通
讯设备的技术更新推动电源行业中直流
/
直流电源转换器向更高灵活性和智能化方向发1展。在
上世纪
80
年代的第一代分布式供电系统开始转向到上世纪末更为先进的第四代
分布式供电结构以及中间母线结构,直流
/
直流电源行业正面临着新的挑战,即如何在
现有系统加入嵌入式电源智能系统和数字控制。随着科学技术的迅速发展,人们对物质
需求也越来越来高,特别是一些高新技术产品。如今随着直流电源技术的飞跃发展
,
整流系统由以前的分立元件和集成电路控制发展为微机控制
,
从而使直流电源智能化
,
具有遥测、遥信、遥控的三遥功能
,
基本实现了直流电源的无人值守。并且,在当今科技快
速发展过程中,模块化是直流电源的发展趋势,并联运行是电源产品大容量化的一个
有效手段,可以通过设计
N+1
冗余电源系统,实现容量扩展,提高电源系统的可靠性、
可用性,缩短维修、维护时间,从而使企业产生更大的效益。如:扬州鼎华公司近些年基于51单片机数控直流电源的设计来结合美国
Sorensen Amrel
等公司的先进技术,成功开发了单机最大功率
120KW
智能
模块电源,可以并联
32
台(可扩展到
64
台),使最大输出功率可以达到
7600kW
以上。
智能模块电源采用电流型控制模式,集中式散热技术,实时多任务监控,具有高效、高
可靠、超低辐射,维护快捷等优点,机箱结构紧凑,防腐与散热也作了多方面的加强。
它的应用将会克服大功率电源的制造、运输及维修等困难。而且和传统可控硅电源相比
节电
20%-30%
节能优势,奠定了它将是未来大功率直流电源的首选。1.3 1
、如何实现对电源的输出控制
系统设计的目的是要用微处理器来替代传统直流稳压电源中手动旋转电位器,实
现输出电压在电源量程范围内步进可调,精度要求高。实现的途径很多,可以用
DAC
的模拟输出控制电源的基准电压或分压电阻,或者用其它更有效的方法,因此如何选
择简单有效的方法是本课题需要解决的首要问题。
2
、数控直流电源功能的完备
数控直流稳压电源要实现电压的键盘化输出控制,同时要具备输出、过压过流保护
及数组存贮与预置等功能。另外,根据要求电源还应该可以通过按键选择一些特殊的功
能。如何有效的实现这些功能也是课题所需研究解决的问题。
3
、性能指标
输出最大电压
:15V
输出最大电流
:1A2惠州学院毕业论文电压步进
:0.1V
电压分辨率
:0.02V
1.4
第一部分简要介绍课题的背景、意义、国内外研究现状,介绍本文的主要研究内容
,
包括实现的目标、功能的完备和性能指标。
第二部分提出了数控直流电源的总的设计思路和几种实现方案论证,以及相关系
统实现的功能,对这些方案的可行性进行比较分析,选择了一种基于
51
单片机系统的
数控直流电源的方案,并对该方案运用的基础知识和使用的器件作出扼要的介绍。
第三部分模块化详细阐述了基于
51
单片数控直流电源的系统整体结构和设计框图,
包括数据单片机控制模块、稳压控制模块、电压
/
电流采样模块、电源模块及键盘模块。
第四部分主要阐述了数控直流电源的软件系统的设计思路和软件设计流程。
第五部分对数控直流电源的性能参数进行测量与评估,以及对误差进行分析。
第六部分对本数控直流电源的给出了本课题的结论,并对其发展前景进行了展望。2.2.1根据
设计的要求:
1
、最高输出电压
15V
,最大输出电流
1A
。
2
、电压步进
0.1V
。
3
、纹波系数尽可能小,输出稳定。
4
、有限按键操作方便,
LCD
显示界面。基于51单片机数控直流电源的设计5
、闭环控制理论的嵌入式软件实现。
特色及基本技术路线:
1
、低成本解决方案。
2
、直观的实验效果。
3
、经典理论验证平台先硬件后软件,先局部后整体。
我设计出以下三个方案:
方案一:设计开关电源。在前期方案设计中采用
PWM
脉宽调制。它的功耗小,效率
高,稳压范围宽,电路形式灵活多样,功耗小,效率高。在制作过程中发现,
PWM3占空
比的线性变化使相应的电流呈非线性变化,经分析发现滤波电容的存在对占空比
很小的
PWM
波积分效果明显,导致电压的非线性变化更显著,特别是
PWM
占空比很
小时
(
希望得到输出的电压很小
)
,利用单片开关电源的
PWM
技术控制开关的占空比来
调整输出电压的,以达到稳定输出的目的。但用数字量控制的作用更加明显。
方案二:用
D/A
和运算放大器做电流源,即采用
D/A
输出调节晶体管的偏值电流
(电压)。采用此方案能有效的缩短调节时间,并能提高输出精度。设计方案,包括了
微控制器模块、稳压控制模块、显示模块、键盘模块、电源模块四部分构成
,
形成开环控制。
方案原理示意图见图
2-1
:惠州学院毕业论文 图
2-1
方案二原理框图采用常用的
51
芯片作为控制器,
P0
口和
DAC0832
的数据口直接相连,
DA
的电
压输出端接放大器
OP07
的输入端,设定放大器的放大倍数为
5
,输出到电压模块
LM3317
的电压分辨率
0.1V
。所以,当
MCU
输出数据增加
1
的时候,最终输出电压增
加0.1V
,当调节电压的时候,可以以每次
0.1V
的梯度增加或者降低电压。数码管显示
电路,该系统使用
3
个数码管,可以显示三位数,分别组成显示电路的十位、个位、小
数点位。本主电路的原理是通过
MCU
控制
DA
的输出电压大小,通过放大器放大,给
电压模块作为最终输出的参考电压,真正的电压,电流还是由电压模块
LM317
输出。4方案三:用
D/A
和运算放大器做电流源,即采用
D/A
输出调节晶体管的偏值电流51单片机
(8051)
掉电存贮
单元
(24C02)
三位数码管显示
单元
电压控制单
元(LM317)
按键电路
电源电路基于51单片机数控直流电源的设计(电压);使用电压
/
电流采样电路,通过
A/D
转换实现闭环控制。采用此方案是对方
案二的改进,能有效的缩短调节时间,进一步提高输出精度。设计方案,其主要由微控
制器模块、稳压控制模块、电压
/
电流采样模块、显示模块、键盘模块、电源模块五部分构成。
液晶屏显示电路,该系统使用
LCD1602
液晶显示屏,可以清晰地显示分别组成显示电
路的十位、个位、小数点位,同时还能显示英文名称和电压
/
电流单位。
方案原理示意图见图
2-2
。图
2-2
方案三原理框图依据设计要求中说提出的特色及基本技术路线,所以最后选用方案三。2.2(MCU)2.2.1 STC89C52
STC89C52
为
8
位单片机,程序存储器为
8K
,外部可扩展至
64KB
,内部
RAM
为
512B
,可扩展至
64KB
,
4
组可位寻址的
8
位输入
/
输出口,即图中
P0
,
P1
,
P2
,
P3
。51
单片机
(89C52)
掉电存贮
单元
(24C02)
LCD显示单元
电压控制单
元(LM317)
按键电路
电源电路
输出
电压/电流
采样惠州学院毕业论文有
40
个引脚,
32
个外部双向输入
/
输出(
I/O
)端口,同时内含
2
个外中断口,
3
个16
位可编程定时计数器
,2
个全双工串行通信口,
2
个读写口线,
STC89C52
可以按
照常规方法进行编程,也可以在线编程。其将通用的微处理器和
Flash
存储器结合在
一起,特别是可反复擦写的
Flash
存储器可有效地降低开发成本。在内5部功能及
管脚排布上与通用的
8xc52
相同,其主要用于会聚调整时的功能控制。图
2-3 STC89C52
引脚图2.2.2
主要管脚有:
XTAL1
(
19
脚)和
XTAL2
(
18
脚)为振荡器输入输出端口,外
接
12MHz
晶振。
RST/Vpd
(
9
脚)为复位输入端口,外接电阻电容组成的复位电路。
VCC
(
40
脚)和
VSS
(
20
脚)为供电端口,分别接
+5V
电源的正负端。
P0~P3
为
可编程通用
I/O
脚,其功能用途由软件定义,在本设计中,
P0
端口(
32~39
脚)
被定义为
N1
功能控制端口,分别与
N1
的相应功能管脚相连接,
13
脚定义为
IR
输
入端,
10
脚和
11
脚定义为
I2C
总线控制端口,分别连接
N1
的
SDAS
(
18
脚)和
SCLS
(
19
脚)端口,
12
脚、
27
脚及
28
脚定义为握手信号功能端口,连接主板
CPU
的相应功能端,用于当前制式的检测及会聚调整状态进入的控制功能。基于51单片机数控直流电源的设计2.3 1602
2.3.1 LCD1602
LCD1602
可以在
LCD
显示屏上完整显示
32
个英文字符和日文等一些字符
,
适合显
示英文文字信息量较小的地方
.
可以应用在计算器
,
频率计
,
信号发生器
,
时钟等产品上。6图
2-4 LCD16021
、显示容量
:16X2
个字符
.
2
、芯片工作电压
:4.5-5.5V
3
、工作电流
2MA(5.0V)
不包括背光电流
.
4
、模块最佳工作电压为
5V
5
、字符尺寸
:2.95X4.35(WXH)mm
6
、带有英文和日文字库
,
使用方便
.惠州学院毕业论文2.3.2表
2-1 LCD1602
引脚说明
编号符号引脚说明
1VSS
电源地
2VDD
电源正极
3VL
液晶显示偏压信号
4RS
数据/命令选择端(H/L)
5R/W
读/写选择端(H/L)
6E
使能信号
7D0Data 1/078D1Data 1/0
9D2Data 1/0
10D3Data 1/0
11D4Data 1/0
12D5Data 1/0
13D6Data 1/0
14D7Data 1/0
15BLA
背景光源正极
16BLK
背景光源负极2.4
LM317
是美国国家半导体公司的三端可调正稳压器集成电路。
LM317
的输出电压
范围是
1.2V
至37V
,负载电流最大为
1.5A
。它的使用非常简单,仅需两个外接电阻来
设置输出电压。此外它的线性调整率和负载调整率也比标 准的固定稳压器好。
LM317
内置有过载保护、安全区保护等多种保护电路。基于51单片机数控直流电源的设计
可调整输出电压低到
1.2V
。保证
1.0A
输出电流。典型线性调整率
0.01%
。典型负载调
整率
0.1%
。
80dB
纹波抑制比。输出短路保护。过流、过热保护。调整管安全工作区保护。标
准三端晶体管封装。电压范围
1.25V
至
37V
连续可调。
LM317
工作原理:
LM317
的输入最同电压为
30
多伏,输出电压
1.5----32V...
电流
1.5A...
不过在用的时候要注意功耗问题
...
注意散热问题。
LM317
有三个引脚
.
一个输入一
个输出一个电压调节。输入引脚输入正电压
,
输出引脚接负载
,
电压调节引脚一个引脚接
电阻
(200
左右
)
在输出引脚
,
另一个接可调电阻
(
几K)
接于地
.
输入和输出引脚对地要容。8LM317
标准应用电路图惠州学院毕业论文图
2-5 LM317
应用电路LM317
的输出电压:
Vout=1.25V(1+R2/R1)+IAdjR2
。因为
IAdj控制在小于
100uA
,
IAdjR2
这一项的误差在多数的应用中可以忽略,这时的输出电压为
Vout=1.25V(1+R2/R1)
。2.5
OP07OP07
低噪声高精度运算放大器图
2-6 OP07
引脚图基于51单片机数控直流电源的设计
92.5.1
1
、低的输入噪声电压幅度—
0.35 μVP-P (0.1Hz
~
10Hz)
2
、极低的输入失调电压—
10 μV
3
、极低的输入失调电压温漂—
0.2 μV/ ℃
4
、具有长期的稳定性—
0.2 μV/MO
5
、低的输入偏置电流—
± 1nA
6
、高的共模抑制比—
126dB
7
、宽的共模输入电压范围—
±14V
8
、宽的电源电压范围—
± 3V
~
± 22V
9
、可替代
725
、
108A
、
741
、
AD510
等电路
2.5.2
OP07
高精度运算放大器具有极低的输入失调电压,极低的失调电压温漂,非常低
的输入噪声电压幅度及长期稳定等特点。可广泛应用于稳定积分、精密绝对值电路、比较
器及微弱信号的精确放大,尤其适应于宇航、军工及要求微型化、高可靠的精密仪器仪
表中。2.6惠州学院毕业论文D/A
转换芯片
DAC0832
是采用
CMOS
工艺制成的单片直流输出型
8
位数
/
模转换
器。如图
2-6
所示,它由倒
T
型R-2R
电阻网络、模拟开关、运算放大器和参考电压
VREF
四大部分组成。
DAC0832
的逻辑框图和引脚排列。10图
2-7 DAC0832
引脚图D0~D7
:数字信号输入端。基于51单片机数控直流电源的设计ILE
:输入寄存器允许,高电平有效。
CS
:片选信号,低电平有效。
WR1
:写信号
1
,低电平有效。
XFER
:传送控制信号,低电平有效。
WR2
:写信号
2
,低电平有效。
IOUT1
、
IOUT2
:
DAC
电流输出端。
Rfb
:是集成在片内的外接运放的反馈电阻。
Vref
:基准电压(
-10~10V
)。
Vcc
:是源电压(
+5~+15V
)。
AGND
:模拟地
NGND
:数字地,可与
AGND
接在一起使用。2.72.7.1 A/D
ADC0832
ADC0832
是具有多路转换开关的
8
位串行
I\O AD
转换器,转换速度较高。正常情
况下,
ADC0832
与单片机的接口应为
4
条数据线,分别是
/CS
、
CLK
、
DO
和
DI
,但由于
DO
与DI
在通信时并未同时使用,并且与单片机的接口是双向的,在
/CS
变低后的前
3惠州学院毕业论文个时钟周期内
DI
端被检测,
DO
端呈高阻态。数据转换开始后,
DI
线被禁止,直到11下一次转换开始,所以在
I/O
口资源紧张时可以将
DI
和
DO
并联在一根数据线上使用。
图
2-8 ADC0832
引脚图2.7.2 ADC0832
1
、
CS_
片选使能,低电平芯片使能。
2
、
CH0
模拟输入通道
0
,或作为
IN+/-
使用。
3
、
CH1
模拟输入通道
1
,或作为
IN+/-
使用。
4
、
GND
芯片参考
0
电位(地)。
5
、
DI
数据信号输入,选择通道控制。
6
、
DO
数据信号输出,转换数据输出。
7
、
CLK
芯片时钟输入。
8
、
Vcc/REF
电源输入及参考电压输入(复用)。3.基于51单片机数控直流电源的设计3.1
系统的总体设计方案主要由微控制器模块、稳压控制模块、电压
/
电流采样模块、显示
模块、键盘模块、电源模块五部分构成。123-1
系统总体框图
输出显示
(LCD1602)
MCU
STC89C52
EEPROM
数据存储
(24C02)
数模转换
DAC0832
按键(三个)
电压
放大
OP07
可调
稳压
LM317
输出
模数转换
ADC0832
电压
跟随
器TS914
电压电路
电流放大并
转换成电压
(L272)
电压
采样
电流
采样
电源(+15V、-15V、+5V)
输入惠州学院毕业论文3.2 3.2.1
MCU
模块即为单片机部分,整个控制都是依靠单片机完成。从功能和价位以及本
题目要求来看,我选择
51
系列
STC89C52
作为本方案的控制核心,
P0
口接液晶显示
LCD1602
作为输出数据显示传输,同时
P20
、
P21
、
P22
是液晶
LCD
控制端口;
P1
口接
DAC0832
作为输出数据传输
,P30
为
DAC0832
控制端口;
P31
、
P32
、
P33
接三个独立键盘
作为输入数据传输;
P34
、
P35
接容量为
2K
的数据存贮器
24C02
,可以实现掉电数据贮
存和预置数据贮存;
P25
、
P26
、
P27
接
ADC0832
作为输入
/
输出数据传输。13基于51单片机数控直流电源的设计图
3-2
单片机控制电路3.2.2
本稳压控制模块设计主要是用
DAC0832
输出的参考电压去控制
LM317
输出大小
变化。其中
DAC0832
的基准电压
Verf
来源是通过调节
LM336-5V
基准源。 控制器
STC89C52
的
P1
口和
DAC0832
的数据口直接相连,
DA
的
/CS
和
/WR1
连接后接
P3.0
,
/WR2
和
/XEFR
接地,让
DA
工作在单缓冲方式下。
DA
的
8
脚接参考电压,参考
电压电路如图
3-3
所示,通过调节可调电阻调节
LM336
的输出电压为
5.12V
,
DAC
的
输出电流转换为电压的公式为:惠州学院毕业论文n
REF
f
n
REF
n
n
n
niV
BR
R
V
bbbbu
22
)22.......22(0
01
2
2
1
1?
=?
?
??+?++?+??=?
?
?
?所以在
DAC0832
的
11
脚输出电压的分辨率为
5.12V/256=0.02V
,也就是说
DA
输入数
据端每增加
1
,电压增加
0.02V
。
在此电路中,
R
为取样电阻,采用康铜丝绕制(阻值随温度的变化较小),阻值
为
0.35
,因而采样电阻的功率可以由
P=I2*R
算出。由图
3-3
和图
2-5
的
LM317
应用
电路分析可得,设运算放大器
OP07
的输入电压分别为
Ui1、
Ui2,输出电压为
Vo1。
DA
的14电压输出端接运算放大器
OP07
的输入端,该放大电路运用了典型的差分式放大电路,
并由差分放大公式
Uo1=Au(|Ui1-Ui2|)
且放大值
Au=
(
R17+R18
)
/R17
,得输出电压与输
入电压关系
Uo1=
(
R17+R18
)
/R17*(|Ui1-Ui2|)=
(
1K+4K
)
/1K*(|Ui1-Ui2|)=5*(|Ui1-Ui2|)
。
电源输出电压为
Uout=Uo1+Uref*(1+R22/R23)=Uo1+1.25*(1+R22/R23)=Uo1+1.8
,其
中Uref
为
R23
两端的电压,所以最小输出电压为
1.8V,
输出到电压模块
LM317
的电压分
辨率
=0.02V×5=0.1V
。当
MCU
输出数据增加
1
的时候,最终输出电压增加
0.1V
,当调
节电压的时候,可以以每次
0.1V
的梯度增加或者降低电压。基于51单片机数控直流电源的设计图
3-3
稳压控制电路3.2.3 15惠州学院毕业论文图
3-4 V/I
采样电路电压与电流采样模块是系统的重要组成部分,
ADC0832
是一个
8
位的逐次逼近型
ADC
,它与一个两通道的模拟器连接,能对来自端口的两路单端输入电压进行采样。其
中单端电压输入以
0V (GND)
为基准。对
ADC
的说明:以输入电压为标准,如果输入电
压大于设定的电压值,则减小
DA
输出电压一位数值,再采样回为比较,如此循环,
直到输入的电压等于设定的电压值或者接近设定的电压值(有时不可能完全相等)。同
理,如果输入电压小于设定的电压,则增大
DA
输出电压一位数值,再采样回为比较,
如此循环,直到输入的电压等于设定的电压值或者接近设定的电压值。这样,就能达到
闭环反馈的目的。基于51单片机数控直流电源的设计(
1
)电压采样电路
电压采样电路
(
如图
3-5
所示
)
是在输出回路中并联两个可调电阻,调节使
R12/
(
R11+R12
)
=1/5,
则从两个电阻之间采样电压为
0.2Uo(Uo
为电源输出电压
)
与系统
DA
转换
5Ui对应,然后通过运算放大器
TS914
连接成的电压跟随器,对采样到的电压输入
到模数转换器
ADC0832
转换成数字信号,输入到单片机系统进行处理。16图
3-5
电压采样电路(
2
)电流采样电路
电流采样电路
(
如图
3-6
所示
)
,为了提高系统控制的灵敏度,采用一级运算放大器
对采样电压进行放大,再送到
ADC
进行
A/D
转换。最后数据由单片机系统进行相应处
理,而且该芯片是采用串行数据传送方式,硬件电路简单。在输出回路中串联一个采样惠州学院毕业论文电阻,从采样电阻上得到一个反馈电压。由运算放大器
L272
组成的差分比例运算电路,
输出电压为
Uo=R16/R15*(Ui1-Ui2)=20*(Ui1-Ui2)
,
Ui1、
Ui2分
别为采样电阻
R19
两端的电压。
由于采样电阻阻值
(0.35Ω)很小,在该电
阻上的压降相应也小,即压降就为电流。其电流
控制电路图如图
3-6
所示,放大倍数
Au=R16/R15=60/3=20
,经运放过来的电压通过
A/
D
转换,送给单片机处理,从而实现压控稳流。17基于51单片机数控直流电源的设计图
3-6
电流采样电路3.2.4
显示的方式很多,主要分为两类:
LED
显示,
LCD
显示。前者显示亮度高,制作
成本低,适合做远距离显示,但由于其耗电较大,所用端口随显示的数据位数增加而
增加。如果采用动态扫描方式显示,则占用
CPU
的时间,如果采用静态显示则需要加
锁存器,耗费硬件制作时间,就该题目要求来说,需要设定电压显示,又与实际电压
比较再显示,
LCD
显示更为清晰、直观,从上面诸多因数来看,采用
LCD
显示比较理
想。
LCD
最常用的就是
1602
液晶模块。
LCD1602
可以在
LCD
显示屏上完整显示
32
个英
文字符和日文等一些字符
,
适合显示英文文字信息量较小的地方
,
可以清晰显示出同时还
能显示英文名称和电压
/
电流单位
,
电压
(
三位数字
:
十位、个位、小数位
)
,电流(三位数字:
个位、两位小数)。通过单片机编程控制第
4
脚
RS
数据
/
命令选择端
(H/L)
,第
5
脚
R/W
读
/
写选择端
(H/L)
,第
6
脚
E
使能信号,从而实现显示效果。它的显示运行原理如下:
读状态:输入:
RS
=
L
,
RW=H
,
E=H
;输出:
D0
~
D7=
状态字
写指令:输入:
RS
=
L
,
RW=L
,
D0
~
D7=
指令码,
E
=高脉冲;输出:无
读数据:输入:
RS
=
H
,
RW=H
,
E=H
;输出:
D0
~
D7=
数据
写数据:输入:
RS
=
L
,
RW=L
,
D0
~
D7=
数据,
E
=高脉冲;输出:无18惠州学院毕业论文图
3-7 LCD1602
显示电路3.2.5
电源模块是让
AC220V
电源通过变压器降压,整流滤波后得到要调节电源输入端
(
POWER-INPUT
);降压为
AC15V
整流滤波后经过三端稳压
7815
,
7915
得到
DC
±
15V
电压为运算放大器供电;同时,降压为
AC5V
整流滤波后经过三端稳压
7805
得到
DC+5V
电压为单片机和其它芯片提供工作电源。基于51单片机数控直流电源的设计图
3-8
电源电路193.2.6
系统中键盘模块设计三个按键
KEY1
、
KEY2
、
KEY3
,如图
3-9
所示,分别由单片机
P31
、
P32
、
P33
口输入。
KEY1
为翻页按键,最近设置的电压大小保存在
EEROM
里面,
比如
5
个电压,按一下
KEY1
,电压变为下一个,省去了反复设置电压的麻烦,
KEY2
为电压
+
,
KEY3
为电压
-
,按一下
KEY2
,当前电压增加
0.1V
,按一下
KEY3
,当前电
压减小
0.1V
。惠州学院毕业论文图
3-9
键盘电路3.3 本设计的数控直流电源是由
STC89C52
为主控模块,
DAC0832
为数模转换器,
ADC0832
为模数转换器,三端稳压可调
LM317
为控制输出芯片,键盘模块由三个独立
按键组成;系统实现闭环控制。系统主要由微控制器模块、稳压控制模块、电压
/
电流采样
模块、显示模块、键盘模块、电源模块五部分构成,具有电压可预置、可步进调整、输出的
电压信号和电流信号可同时显示功能。
系统整体原理图
(
见附录
1)
。204.基于51单片机数控直流电源的设计4.1
当系统
上电,立刻进行初始化,分别是端口初始化,
D/A
、
AD
初始化,定时器初
始化;然后系统默认电压,默认电流。基本思路:按键扫描
→
D/A
转换、电压
/
电流数
值显示
→
读
A/D
转换并比较纠正电压
/
电流数值显示
→
按键扫描,按前述循环。4.2 4.2.1
流程图如图
4-1
示,负责与各子程序模块的接口和检查键盘功能号。程序运行后,
开始检测是否有键按下,若有则进入设定按键功能。液晶
LCD1602
直接显示
CPU
设定
的数值,使
CPU
资源得到充分利用。同时系统不断采集外部数据,经过相关运算、分析,
然后发出命令对实际值进行相应的修正,控制输出电压可调、稳定。惠州学院毕业论文
21基于51单片机数控直流电源的设计图
4-1
主程序流程图
初始化
开始
调用闭环程序比较子程序
D/A子程序
A/D子程序
是空载
标志置数
取键号
是设置
是“+”
是“-”
调用电压设定
子程序
调用电压加
0.1V子程
序
调用电压减
0.1V子程
序
Y
Y
Y
Y
N
N
N
N惠州学院毕业论文
224.2.2
流程图如图所示,通过调用闭环比较子程序得出实际值与设定值的差值,如
果是实际值大于设定值则将原来的显示设定值减去这个差值再送去转换,如果是
实际值小于设定值则将原来的显示设定值加上这个差值再送去转换。图
4-2
闭环比较流程图
保护现场
实际—设定
差值大于1
负标志位为
0
显示设定值+差值
显示设定值-差值
把结果显示
保留显示设定值
恢复现场
返回
N
Y
Y
N基于51单片机数控直流电源的设计
235.5.1 5.1.1
1
、测试软件
程序编译器
keil uvision2
程序烧录器
STC-ISP V35
2
、编译结果
在编制完
C
语言后,即在
keil uvision2
界面下,进行了调试,结果如下:
根据提示,我找到了,程序在编写上的错误,加以改正,再次进行调试。通过上述
简单的测试,证明此次设计的程序基本上正确无误。然后,将烧录了程序的单片机
STC89C52
接到系统电路中,查看系统电路的运行情况;如果程序逻辑有问题可进一步
修改,直到系统正常运行。惠州学院毕业论文5.1.2
1
、
DAC0832
的参考电压的调试,调节滑动变阻器
R10
使三端稳压器
LM336-5.0
稳定输出电压为
5.12V
。由于三端稳压器
LM336-5.0
性能不稳定和输出要求精度高,必须
要细心、耐心调试,直到输出电压达到要求。
2
、运放
OP07
的正输入端电压是来自于
DAC0832
的输出。调试过程中,不但要测量
正输入端电压是否按
0.02V
步进,而且还要测量
OP07
的输出端电压是否为
0.1V
的步
进;由于电阻会存在误差,测试时又要考虑是否需要稍微增加或减少
DAC0832
的输入
参考电压
VERF,以
保证系统的精确度。243
、运放
OP07
采用双电源供电。如果双电源存在不平衡性会造成放大的误差,这时
候需要调零,细心、反复调节滑动电阻
R21
使放大系统达到平衡。
4
、数控电源的最终输出端没有达到步进为
0.1V
的指标,检查三端稳压器
LM317
性能的好坏和是否有误差;如果
LM317
性能良好,需要协调前面三个步骤的调试,使最
终的输出电压达到要求。
5.1.3
1
、测试工具
开关电源
T-50
系列
双踪示波器基于51单片机数控直流电源的设计数字万用表
2
、测量结果表
5-1
电压测试表系统理论值系统测量值
显示电压值(V)理论码值(bit)实测码值(bit)实测电压值(V)
误差
(V)
3.000011110000111103.20.2
4.500101101001011004.60.1
5.000110010001100015.10.1
5.500110111001101105.60.1
6.000111100001110116.00
6.501000001010000006.60.1
7.001000110010001017.20.2
7.501001011010010107.60.1
8.001010000010011118.00
8.501010101010101008.50
9.001011010010110019.20.2
10.001100100011000119.8-0.2
系统由于刚开启时在电压方面不稳定,存在一定误差,但是单片机立刻会对其进
行25控制,
使系统再次稳定。
3、精度分析
显示电压与实测电压的折线图如图5-1所示。
绝对误差:
?
U
=(0.2+0.1+……+0.2+0.2)/12=0.11V
相对误差:rA=
?
U
/
U
=(0.2/3.0+0.1/4.0+……+0.2/9.0+0.2/10)/12=1.8
%惠州学院毕业论文线性度: rL=?
Lmax/YFS=
0.2/15=1.3
%
灵敏度:K=0.1V图5-1显示电压与实测电压的折线图5.2 从
电路的原理框图可以看出,系统的误差来源于四个方面:
1、DAC0832的量化误差,DAC为8位D/A转换器,满量程为15V的量化误差为
1/2LMBS=(
1/2)*(1/28)*15V=29.30mV。按满度归一化的相对误差为
(1/2)*(1/28)
=0.20%
2、基准电压温漂引入的误差 LM336在0—40OC
范围内漂移不大于4mV,故相对误
差<=4mV/5V=0.08%。
3
、三端稳压器的电路引起的误差。26 0
2
4
6
8
10
12
123456789101112
显示电压值(V)
实测电压值(V)基于51单片机数控直流电源的设计 图
5-2 LM317
稳压电路Uout=VREF+(IR1+Iadj)R2=(1+R2/R1)VREF+IadjR2
改变电阻
R2
两端电压,即可改
变输出电压的大小。由于
Iadj
很小
(
只有
50μA)
,可写为
Uo=(1+R2/R1)VREF=1.25(1+R2/
R1)
。此时的误差为
50*100/15*106=0.033%
。
4
、其它器件和线路由于温漂、不稳定等原因引起的误差。6经
过几十天的艰苦奋战,我最终完成了毕业设计的基本要求。虽然过程是艰苦的,
但最终成功的喜悦同样令我快乐。
此设计用
D/A
和运算放大器做电源,即采用
D/A
输出调节晶体管的偏值电流(电
压)。采用此方案能有效的缩短调节时间,并能提高输出精度,经计算需要采用
8
位的
D/A
芯片。
为了争取时间,降低成本,我们的解决方案是采用的
51
单片机。改变电压的大小,惠州学院毕业论文当单片机通过闭环负反馈调节回路的
A/D
转换检测到电压没达到设定值时,将再次对
输出电压进行调制,直到输出电压达到设定值;电压值理论上是线性变化的,不会产
生高次谐波,基本实现了任务书中的各项要求和目标,达到了此次毕业设计预期目的。
但更重要的是培养了我的动手能力,使我进一步了解毕业设计的基本知识,能领会和
灵活运用毕业设计中目标任务、计划、过程控制、总结反馈等各个环节所涉及的内容,并
且具备了迅速接受新知识的能力,对新挑战具有一定的适应能力。271
、收集相关资料。一方面利用学校图书馆资源,另一方面利用网上资源。
2
、提高设计效率,遇到不解的疑惑与老师、其他同学及时沟通,以迅速解决设计中
遇到的问题。
3
、尽早落实工作,剩下时间专心致志做好毕业设计。
4
、同学之间相互学习、沟通、鼓励、支持。
本次设计过程中,对纹波也没有提出严格要求,所以常用的稳压集成电路就可以
满足要求。本设计输出的电压稳压精度高,可以用在对直流电压要求较高的设备上,或
在实验室中当作实验电源使用。在本次设计的过程中,我发现很多的问题,给我的感觉
就是很难,很不顺手,看似原理比较简单的电路,要动手把它给设计出来,是很难的
一件事,主要原因是我们没有经常动手设计过电路,还有资料的查找也是一大难题,
这就要求我们在以后的学习中,应该注意到这一点,更重要的是我们要学会把从书本
中学到的知识和实际的电路联系起来,这不论是对我们以后的就业还是学习,都会起
到很大的促进和帮助,我相信,通过这次的毕业设计,在下一阶段的学习中我会更加
努力,力争把功课学好,学精。同时,通过本次毕业设计,巩固了我们学习过的专业知
识,也使我们把理论与实践从真正意义上相结合了起来;考验了我们借助互联网络搜
集、查阅相关文献资料,和组织材料的综合能力;从中可以自我测验,认识到自己哪方
面有欠缺、不足,以便于在日后的学习中得以改进、提高。基于51单片机数控直流电源的设计放眼今后,直流稳压电源今后的发展方向之一将是以微处理器为核心的数控直流
稳压电源,它将利用最新的计算机技术、网络技术及数字化技术,充分发挥微处理器强
大的信息处理能力,使其突破传统直流稳压电源的概念,传统直流稳压电源的高稳定
性输出仅是这种数控直流稳压电源其众多功能之一。它的功能包括:控制的智能化,即
控制电路采用全数字化,控制手段用微处理器和单片机组成的软件控制方式,达到了
较高的智能化程度,并且进一步提高了电源设备的可靠性;将随着微处理器和监控软
件的引入,电源的自我监控能力普遍增强,可以实时地监控设备本身的各种运行参数
和状态,预警功能和故障诊断功能,有效地实现了实验电源的无人职守;随着互联网技
术应用日益普及和信息处理技术的不断发展,在管理上达到网络化,电源设备具备数
据处理和通信能28力
,通过其智慧型人机界面,使网络技术人员可以随时监视电源设备运行状态、各项技
术参数;具有远程开关机功能,使网络技术人员可定时开关电源。
随着科学技术的发展,直流稳压电源等仪表数字化、智能化、网络化将是发展方向。
高精度数控直流稳压电源的研制对准了这个发展方向,加上计算机技术的迅速发展,
使之具有非常广阔的发展空间。
大学四年就快画上一个句号了,毕业设计是我在学校交的最后一份答卷。在论文完
成之际,感受收获的喜悦的同时,心中充满了更是感激之情。
在此次毕业设计过程中,特别要感谢毕业设计指导老师黄琳副教授!感谢您在这
段日子了对我亲切的关怀和悉心的指导。由于本人自身知识有限,所以从课题的选择到
论文最终定稿这个过程中遇到了不少困难。在老师的耐心指导与督促之下,本论文经过
多番修改终于顺利地完成。这个过程由始至终都离不开老师的辛勤。借此机会,我也感
谢大学四年期间所有指导过我的老师,感谢他们对我无私的教诲和帮助,感谢他们的
谆谆教导。
在此同时也要非常感谢一直陪伴在我身边给予我精神支持和行动支持的同学们,惠州学院毕业论文正是由于你们的帮助和支持,我才能克服一个一个的困难和疑惑。同学在你们身上我也
学到了不少受益的知识。2
9[1]
邹红
.
数字电路与逻辑设计
[M].
北京
:
人民邮电出版社
,2008.3
[2]
李祥臣
.
模拟电子技术基础教程
. [M]
北京
:
清华大学出版社
,2005.3
[3]
童诗白
,
华成英
.
模拟电子技术基础
[M].
北京
:
高等教育出版社
,2006.1
[4]
邱关源
.
电路
(
第四版
) [M].
北京
:
高等教育出版社
,2006.4
[5]
李群芳
,
张士军
,
黄建
.
单片微型计算机与接口技术
(
第二版
) [M].
北京
:
电子工业出版社
, 2007.12
[6]
刘文涛
.
单片机语言
C51
典型应用设计
[M].
北京
:
人民邮电出版社
,2006.5
[7]
于永
,
戴佳
,
常江
. 51
单片机实例精讲
[M].
北京
:
电子工业出版社
,2007.4
[8]
曹凤
.
微机数控技术及其应用
[M].
四川
:
电子科技大学出版社
,2002.8
[9]
胡寿松
.
自动控制原理
[M]
.
北京
:
科学出版社
,2007.1
[10]
潘永雄
,
沙河
,
刘向阳
.
电子线路
CAD
实用教程
(
第二版
) [M].
陕西
:
西安电子科技大学出版
社
,2006.9
[11] Jun-Lian Zhang and Jian-Xun Jin. Analysis of DC Power Transmission Using High T_c
Superconducting Cables [J]
,
Journal of Electronic Science and Technology of China, 2008.
(
2
)
[12] S.Levialdi,NATO AST on Sigital image processing , 1980:105-145
[13] Power Integration. Inc.Topswich-GX ( TOP242-249) datasheets[R],2000
[14] Power Integration. Inc.National semiconductor datasheets[R].2005
[15] Clovis L.Tondo, Scott E.Gimpel. The C Answer Book Solutions to the Exercises in The C
Programming Language [R].2000基于51单片机数控直流电源的设计
301: 惠州学院毕业论文
31基于51单片机数控直流电源的设计2: #include <REG52.H>
#include <STDIO.H>
#include <INTRINS.H>
#include <MATH.H>
#define uchar unsigned char
#define uint unsigned int
#define _Nop() _nop_()
#define DAT P0
uchar go;
sbit K1=P3^1;//
第一个键
sbit K2=P3^2;//
第二个键
sbit K3=P3^3;//
第三个键
sbit WR2 = P3^0; //DAC
的控制端
//
位定义
#define Lcd_Data P0 //
定义数据端口
sbit RS = P2 ^ 0; //
定义连接端口
sbit RW = P2 ^ 1;
sbit E = P2 ^ 2;
sbit Busy = P0 ^ 7;
bit hold=0;
bit _Int=0;
bit k =0;
bit m=0; 惠州学院毕业论文bit fushu=0;
bit q=0;
//
全局变量定义
uint DAdat;//
存放送到
DA
的数据 32uint x;
//uchar ADdat;//
存放从
ADC
读出的数据
uchar vol; //
存放输入电压值
uchar keynum;
uchar kyreg;
uchar temp;//
存放功能状态
uchar hh;
///
数组定义
static code uchar Disp[]="0123456789-";
static code uchar Disp2[]="Error! ";
static code uchar Disp3[]="Vol is:";
//
函数声明
uchar keyread(void); //
读键函数
uchar keyread2(void); //
读键函数
2
uchar keyread3(void); //
读键函数
3
void reADC(void); //AD
反馈读数函数
uchar cmp(uchar ADdat,uchar DAdat); //
反馈比较函数基于51单片机数控直流电源的设计void lcdinit(); // LCD
初始化函数
void lcdcmd(uchar cmd); //LCD
写控制字函数
void lcddata(uchar dat); //LCD
写数据函数
void seDAC(uchar DAdata);// DAC
送数函数
void delay(uchar t); //
延时函数
void extint(void);
void volchange(); //
输出电压自增自减函数
/***********************DAC
送数
*********************/
main() //
主程序
{
unsigned int vol;
uchar i,j,l=0,a=0,b=0,e=0; 33 bit dian=0;
bit o=0,p=0;//
负数标志位、确认标志位
delay(255);
EA=1;
EX0=1;
PX0=1;
IT0=1;
//EX1=1;
//IT1=1;
pp:
a=b=0;dian=0;o=p=0,x=0; 惠州学院毕业论文
P1=0;
lcdinit();
lcdcmd(0x80);
for(j=0;j<7;j++) //
开机送
0V
并显示到
LCD
{
lcddata(Disp3[j]);
}
seDAC(128);
DAdat=128;
lcddata('0');
lcddata('0');
lcddata('.');
lcddata('0');
lcddata('V');
while(1)
{
while(!k)
{ delay(200); 34 i=keyread();
if(!m)
{
lcdcmd(0x1);
for(j=0;j<7;j++)
lcddata(Disp3[j]);
m=1;
}
else if(i==11){m=0;goto pp;} //
复位