数控直流电压源.docx

上传人:b****3 文档编号:4972022 上传时间:2023-05-07 格式:DOCX 页数:20 大小:335.42KB
下载 相关 举报
数控直流电压源.docx_第1页
第1页 / 共20页
数控直流电压源.docx_第2页
第2页 / 共20页
数控直流电压源.docx_第3页
第3页 / 共20页
数控直流电压源.docx_第4页
第4页 / 共20页
数控直流电压源.docx_第5页
第5页 / 共20页
数控直流电压源.docx_第6页
第6页 / 共20页
数控直流电压源.docx_第7页
第7页 / 共20页
数控直流电压源.docx_第8页
第8页 / 共20页
数控直流电压源.docx_第9页
第9页 / 共20页
数控直流电压源.docx_第10页
第10页 / 共20页
数控直流电压源.docx_第11页
第11页 / 共20页
数控直流电压源.docx_第12页
第12页 / 共20页
数控直流电压源.docx_第13页
第13页 / 共20页
数控直流电压源.docx_第14页
第14页 / 共20页
数控直流电压源.docx_第15页
第15页 / 共20页
数控直流电压源.docx_第16页
第16页 / 共20页
数控直流电压源.docx_第17页
第17页 / 共20页
数控直流电压源.docx_第18页
第18页 / 共20页
数控直流电压源.docx_第19页
第19页 / 共20页
数控直流电压源.docx_第20页
第20页 / 共20页
亲,该文档总共20页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

数控直流电压源.docx

《数控直流电压源.docx》由会员分享,可在线阅读,更多相关《数控直流电压源.docx(20页珍藏版)》请在冰点文库上搜索。

数控直流电压源.docx

数控直流电压源

课程设计任务书

学生姓名:

专业班级:

电信0906班

指导教师:

工作单位:

信息工程学院

题目:

数控电压源的设计仿真与制作

初始条件:

运用所学的数电和模电知识,利用集成可逆计数器、D/A转换器、显示译码器、数码管、运算放大器等器件实现系统设计。

系统结构如下图所示。

(也可以利用FPGA或单片机系统设计实现)

 

要求完成的主要任务:

(包括课程设计工作量及技术要求,以及说明书撰写等具体要求)

1、课程设计工作量:

1周内完成对数控电压源的设计、仿真、装配与调试。

2、技术要求:

输出电压0~9.9V,步进电压值0.1V,输出纹波电压≤10mv,输出电流5A。

用两按钮开关作为电压调整键,与可逆计数器的加计数CPU时钟输入端和减计数CPD时钟输出端相连,可逆计数器采用两片十进制同步加/减计数器如74LS192级联而成。

数字显示电路采用两片二~十进制BCD码译码驱动器如74LS248和2个七段数码管组成。

D/A转换电路可采用DAC0832和集成运算放大器构成。

调整输出级采用运放作射极跟随器,使调整管的输出电压精确地与D/A转换器输出电压保持一致。

调整管可采用大功率达林顿管,确保电路的输出电流值达到设计要求。

稳压电源部分利用7815、7915、和7805设计实现15V、±5V工作电源和调整管所需输入电压,要求能提供5A的电流。

确定设计方案,按功能模块的划分选择元、器件和中小规模集成电路,设计分电路,画出总体电路原理图,阐述基本原理。

3、查阅至少5篇参考文献。

按《武汉理工大学课程设计工作规范》要求撰写设计报告书。

全文用A4纸打印,图纸应符合绘图规范。

时间安排:

第1—2天,查阅相关资料,学习设计原理。

第3—4天,方案选择和电路设计仿真。

第4—5天,电路调试和设计说明书撰写。

第6天,上交课程设计成果及报告,同时进行答辩。

指导教师签名:

年月日

系主任(或责任教师)签名:

年月日

目录

1.Proteus简介1

2.总体设计方案2

2.1总体设计思路2

2.2总体设计框图2

3.硬件单元电路设计2

3.1单片机最小系统设计2

3.2显示和按键控制电路设计4

3.3D/A转换电路设计5

3.3.1TLC5615的特点5

3.3.2TLC5615引脚说明5

3.3.3TLC5615的时序图6

3.4电源电路设计7

4.总体电路图8

5.软件仿真及结果分析8

6.程序设计9

7.实物安装及调试10

8.元器件清单11

9.心得与体会12

10.参考文献13

附录一:

C语言程序14

附录二:

本科生课程设计成绩评定表17

1.Proteus简介

Proteus是英国Labcenter公司开发的电路分析与实物仿真软件。

它运行于Windows操作系统上,可以仿真、分析(SPICE)各种模拟器件和集成电路,不仅具有其它EDA工具软件的仿真功能,还能仿真单片机及外围器件。

它是目前最好的仿真单片机及外围器件的工具。

虽然目前国内推广刚起步,但已受到单片机爱好者、从事单片机教学的教师、致力于单片机开发应用的科技工作者的青睐。

该软件的特点是:

(1)实现了单片机仿真和SPICE电路仿真相结合。

具有模拟电路仿真、数字电路仿真、单片机及其外围电路组成的系统的仿真、RS232动态仿真、I2C调试器、SPI调试器、键盘和LCD系统仿真的功能;有各种虚拟仪器,如示波器、逻辑分析仪、信号发生器等。

(2)支持主流单片机系统的仿真。

目前支持的单片机类型有:

ARM7(LPC21xx)、8051/52系列、AVR系列、PIC10/12/16/18系列、HC11系列以及多种外围芯片。

(3)提供软件调试功能。

在硬件仿真系统中具有全速、单步、设置断点等调试功能,同时可以观察各个变量、寄存器等的当前状态,因此在该软件仿真系统中,也必须具有这些功能;同时支持第三方的软件编译和调试环境,如KeilC51uVision2、MPLAB等软件。

(4)具有强大的原理图绘制功能。

总之,该软件是一款集单片机和SPICE分析于一身的仿真软件,功能极其强大

其功能特点如下:

(1)原理布图

(2)PCB自动或人工布线

(3)SPICE电路仿真

具有3大功能模块:

(1)—个易用而又功能强大的ISIS原理布图工具;

(2)PROSPICE混合模型SPICE仿真;

(3)ARESPCB设计.

随着科技的发展,“计算机仿真技术”已成为许多设计部门重要的前期设计手段。

它具有设计灵活,结果、过程的统一的特点。

可使设计时间大为缩短、耗资大为减少,也可降低工程制造的风险。

相信在单片机开发应用中PROTEUS也能茯得愈来愈广泛的应用。

2.总体设计方案

2.1总体设计思路

采用AT89C51系列单片机作为整机的控制单元,通过改变输入数字量来改变输出电压值(D/A转换后电压值),经集成运放放大和射极输出器输出,间接地改变输出电压的大小,并用PROTUES进行仿真。

2.2总体设计框图

经过方案论证和比较后,最终确定的系统框图如图1所示,主要由主电源、辅助电源、D/A转换、集成运放、射极输出器、单片机最小系统、显示及按键等组成。

图1电路总体设计图

3.硬件单元电路设计

3.1单片机最小系统设计

单片机最小系统是能补足单片机工作的最简单电路,它由单片机、电源、晶体振荡器、复位电路等构成。

它是本系统的处理单元也是控制单元,负责处理信号、外设的接口与控制,同时它也是所有软件的载体。

本系统采用AT89C52是美国Atmel公司生产的低电压、高性能CMOS8位单片机,片内含8KB的可反复檫写的程序存储器和12B的随机存取数据存储器(RAM),器件采用Atmel公司的高密度、非易失性存储技术生产,兼容标准MCS-51指令系统,片内配置通用8位中央处理器(CPU)和Flash存储单元,功能强大的AT89C52单片机可灵活应用于各种控制领域。

AT89C52单片机属于AT89C51单片机的增强型,与Intel公司的80C52在引脚排列、硬件组成、工作特点和指令系统等方面兼容。

主要管脚有:

XTAL1(19脚)和XTAL2(18脚)为振荡器输入输出端口,外接12MHz晶振。

RST/Vpd(9脚)为复位输入端口,外接电阻电容组成的复位电路。

VCC(40脚)和VSS(20脚)为供电端口,分别接+5V电源的正负端。

P0~P3为可编程通用I/O脚,其功能用途由软件定义。

其管脚如下图所示:

图2AT89C52单片机管脚图

本设计中,P0端口(32~39脚)被定义为N1功能控制端口,分别与N1的相应功能管脚相连接。

单片机正常工作时,都需要有一个时钟电路和一个复位电路。

本设计中选择了内部时钟方式和按键电平复位电路,来构成单片机的最小电路。

如图3所示。

图3单片机最小系统

3.2显示和按键控制电路设计

采用四位LED数码管动态显示输出电压的大小。

此电路原理简单,电路连接方便,可用单片机直接驱动,其中U2,U3为位驱动,RP1是P0的上拉电阻。

图4数码管显示电路

本系统用两只按键KEY1、KEY2来实现“+”、“-”步进控制,每当按下KEY1时输出电压增加0.1v,同时数码管显示的数值也增加0.1,同理每当按下KEY2时输出电压减少0.1v,同时数码管显示的数值也减少0.1,另外用一只按键KEY3实现电路复位清零。

图5按键控制电路

3.3D/A转换电路设计

目前,数模转换器从接口上可分为两大类:

并行接口数模转换器和串行接口数模转换器。

并行接口数模转换器的引脚多,体积大,占用单片机的口线多;而串行数模转换器的体积小,占用单片机的口线少,为减少线路板的面积和占用单片机的口线,可采用TCL5615串行数模转换器产生可变基准电压。

TLC5615串行数模转换器简介:

TLC5615为美国德州仪器公司1999年推出的产品,是具有串行接口的数模转换器,其输出为电压型,最大输出电压是基准电压值的两倍。

带有上电复位功能,即把DAC寄存器复位至全零。

3.3.1TLC5615的特点

(1)10位CMOS电压输出;

(2)5V单电源供电;

(3)与CPU三线串行接口;

(4)最大输出电压可达基准电压的二倍;

(5)输出电压具有和基准电压相同极性;

(6)建立时间125μs;

(7)内部上电复位;

(8)低功耗,最大仅175mW。

3.3.2TLC5615引脚说明

TLC5615有小型和塑料DIP封装,DIP封装的TLC5615芯片引脚排列如图6所示。

图6TLC5615引脚排列图

引脚功能说明如下:

——脚1DIN:

串行数据输入端;

——脚2SCLK:

串行时钟输入端;

——脚3CS:

芯片选用通端,低电平有效;

——脚4DOUT:

用于级联时的串行数据输出端;

——脚5AGND:

模拟地;

——脚6REFIN:

基准电压输入端;

——脚7OUT:

DAC模拟电压输出端;

——脚8VDD:

正电源端。

3.3.3TLC5615的时序图

图7TLC5615的时序图

TLC5615的时序分析:

TLC5615的时序如图7所示。

由时序图可以看出,当片选CS为低电平时,输入数据DIN由时钟SCLK同步输入或输出,而且最高有效位在前,低有效位在后。

输入时SCLK的上升沿把串行输入数据DIN移入内部的16位移位寄存器,SCLK的下降沿输出串行数据DOUT,片选CS的上升沿把数据传送至DAC寄存器。

当片选CS为高电平时,串行输入数据DIN不能由时钟同步送入移位寄存器;输出数据DOUT保持最近的数值不变而不进入高阻状态。

由此要想串行输入数据和输出数据必须满足两个条件:

第一时钟SCLK的有效跳变;第二片选CS为低电平。

这里,为了使时钟的内部馈通最小,当片选CS为高电平时,输入时钟SCLK应当为低电平。

串行数模转换器TLC5615的使用有两种方式,即级联方式和非级联方式。

如不使用级联方式,DIN只需输入12位数据。

DIN输入的12位数据中,前10位为TLC5615输入的D/A转换数据,且输入时高位在前,低位在后,后两位必须写入数值为零的低于LSB的位,因为TLC5615的DAC输入锁存器为12位宽。

如果使用TL5615的级联功能,来自DOUT的数据需要输入16位时钟下降沿,因此完成一次数据输入需要16个时钟周期,输入的数据也应为16位。

输入的数据中,前4位为高虚拟位,中间10位为D/A转换数据,最后2位为低于LSB的位即零。

实际电路中TLC5615与单片机连接如下图所示:

图8D/A转换电路

TLC5615的SCLK脚与P3.0连接,CS脚与P3.1连接,DIN脚与P3.2连接,DAC输出的电压经集成运算放大器UA741放大后,输出0~10V电压。

为了满足输出电压的要求,应使集成运放的放大倍数为2倍,即Auf=2。

实际使用时,通过调整RV1的阻值,来满足放大倍数的要求。

集成运放放大的电压经Q41构成射极跟随器放大,作为最终电压输出。

其中TL431可等效为一只稳压二极管,它为TLC5615提供2.5V基准电压。

3.4电源电路设计

本系统采用两种电源(主电源和辅助电源)供电,如图4所示,电源变压器带有中心抽头,经LM7812、LM7912得到大小相等、极性相反的±12V,一路经LM7805得到+5V电压:

其中+12V为主电源,作为射极输出器的电源;±12V作为集成运放的电源;+5V作为单片机系统及显示电路电源用。

电路图如下图所示:

图9电源电路图

4.总体电路图

根据以上的分析和设计,本系统的完整电路图如下图所示:

图10基于AT89C52单片机的数控电压源电路

5.软件仿真及结果分析

按图设计完成后,检查无误后开始仿真,最初计数器示数为0,输出电压为0mV。

然后按加或减法计数按钮,两位数码管上可显示出0~99中的任意数,图中电压表的示数即为对应的输出电压值,对应的从0~9.9v,步长为0.1v变化。

下图为数码管某一示数对应电压表的示数:

图11软件仿真结果

通过软件仿真,所设计的电路图符合实验要求,在误差允许范围内,基本实现了数控电压源的功能。

6.程序设计

系统程序设计采用C语言编程,设计的关键是对直流电压源步进电压的控制和显示。

设计框图如图12所示。

图12软件设计流程图

当电源打开的时候,MCU进行复位,寄存器清零,输出电压为0V,并在数码管上显示(这里为0)。

这时候程序循环检测是否有按键信号,如果KEY1按下,则输出电压增加0.1V;如果KEY2按下,则输出电压减省0.1V。

若用户按KEY3,则复位清零,单片机返回初始状态,输出电压为0V,并等待下一次按键。

7.实物安装及调试

电路组装好以后,要检查一遍接线情况,在确定安装接线无误的情况下,就可进行电路通电调试。

首先测量电源输出电压是否达到要求;在初始化状态下,调节集成运放μA741的外接调零电位器,使集成运放输出电压为零。

调节射极输出器的偏置电阻RV2使输出电压为零;在输入数值最大的情况下,调节输出集成运放的负反馈电阻RV1,使其输出电压为9.9V,测量射极输出器的输出电压,如果正常(9.9V),说明设计组装基本成功。

8.元器件清单

名称

含义

型号

R1、R2、R4、R5

电阻

1K

R3

电阻

10K

C1

电容

10uf

C2、C3

电容

30pf

U1

单片机

AT89C52

U2、U3

反相器

74HC04

U4

D/A转换器

TLC5615

U5

并联稳压管

TL431

U6

运算放大器

UA741

Q1

三极管

ZTX453

RP1

电阻

10K

RV1

电位器

15K

RV2

电位器

20K

X1

数码管

CRYSTAL

KEY1、KEY2、KEY3

按键

BUTTON

L1

稳压管

LM7812

L2

稳压管

LM7912

L3

稳压管

LM7805

C4、C5

电容

1000uf

C6、C7

电容

3.3uf

VD1-VD4

二极管

1N4004

 

9.心得与体会

10.参考文献

[1]谭浩强.C程序设计.第三版.北京:

清华大学出版社,2007

[2]唐竞新.数字电子电路[M].第1版.北京:

清华大学出版社,2003

[3]伍时和.数字电子技术基础.第1版.北京:

清华大学出版社,2009

[4]蒋辉科等编著.单片机原理与应用设计.北京航空航天大学出版社,2007

[5]李广弟.单片机基础.第二版.北京:

北京航空航天大学出版社,2002

[6]李群芳.单片微型计算机与接口技术.电子工业出版社,2005.1

附录一:

C语言程序

#include

#include

#defineucharunsignedchar

#defineuintunsignedint

#defineNop()_nop_()

#define_Nop()_nop_()

uintaa,shi,ge;

sbitwela1=P2^0;/*定义数码管位选*/

sbitwela2=P2^1;

sbitkey1=P1^0;/*定义控制按键*/

sbitkey2=P1^3;

sbitCLK=P3^0;/*定义DAC控制端口*/

sbitCS=P3^1;

sbitDIN=P3^2;

/*定义数码管显示字符跟数字的对应数组关系*/

ucharduma[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0x7f};

voiddelay(charc)/*延时1ms*/

{

chara,b;

for(a=c;a>0;a--)

for(b=110;b>0;b--);

}

voidkeyscan1()/*按键1进行加1*/

{

if(key1==0)

{

aa++;

}

while(key1==0);//等待按键释放

}

voidkeyscan2()/*按键2进行减1*/

{

if(key2==0)

{

aa--;

}

while(key2==0);//等待按键释放

}

voidxs()/*数码管显示*/

{

shi=aa/10;ge=aa%10;

wela1=0;

P0=duma[shi];

delay(5);

wela1=1;

wela2=0;

P0=duma[ge];

delay(5);

wela2=1;

}

voidTLC5615(uintda)

{

uchari;

CLK=0;

CS=0;

for(i=0;i<12;i++)

{

if((da&0x200)!

=0)

DIN=1;

elseDIN=0;

Nop();

CLK=1;

Nop();

Nop();

CLK=0;

da=(da<<1);/*左移一位*/

}

CS=1;

}

uintVolage_to_TL5615da(uintVolage)

{

/*将电压转换为TLC5615的输出数据*/

uintda;floattt;

tt=Volage*0.05/5*1024;da=tt+0.5;/*对结果进行4舍5入*/

returnda;

}

voidmain()

{

aa=00;

while

(1)

{

TLC5615(Volage_to_TL5615da(aa));/*输出电压*/

keyscan1();keyscan2();

xs();

}

}

附录二:

本科生课程设计成绩评定表

姓名

性别

专业、班级

课程设计题目:

课程设计答辩或质疑记录:

 

成绩评定依据:

 

最终评定成绩(以优、良、中、及格、不及格评定)

 

指导教师签字:

年月日

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 解决方案 > 学习计划

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2