北工大电子工程设计报告小型温度控制系统文档格式.docx
- 文档编号:21737913
- 上传时间:2023-02-01
- 格式:DOCX
- 页数:29
- 大小:767.71KB
北工大电子工程设计报告小型温度控制系统文档格式.docx
《北工大电子工程设计报告小型温度控制系统文档格式.docx》由会员分享,可在线阅读,更多相关《北工大电子工程设计报告小型温度控制系统文档格式.docx(29页珍藏版)》请在冰豆网上搜索。
1.2设计概述
本报告所涉及的小型温度控制系统为教学实验系统,所以只提出功能、指标和采用元件的设计要求。
(1)温度控制范围:
0℃~100℃
(2)测温元件:
半导体温度传感器AD592
(3)温度控制执行元件:
半导体制冷片
(4)核心控制部件:
C8051F系列单片机
小型温度控制系统基本组成如图所示:
图1.1系统整体功能框图
需要说明的是本报告是在第一阶段——简单电路的模块化实现的基础上,通过更加复杂电路的设计与实现,并配合相关软件设计,共同完成温度控制任务。
一般来说一个比较复杂的电路系统,可以按照电路实现的功能或电路的类型分为若干个模块。
其中有些模块与其它模块之间的界面清晰,入口参数和出口参数明确,能够独立工作,这类电路模块可以称之为独立电路模块。
为了简化系统电路的设计工作,并且使系统便于组装、调试,这类电路模块可以单独进行设计、实现和调试、检测。
本阶段的设计任务仍然采取模块化的方法,分模块进行设计与焊接、调试。
这样可以有效降低模块设计的难度,分模块调试,也是调试更加方便,降低了系统失败的风险。
本阶段上上阶段已完成电源模块、变送器模块和驱动器模块的设计与实现的基础上。
继续完成单片机模块、AD模块、DA模块、键盘显示模块的设计与实现。
并在各模块的基础上完成软件设计,实现环境温度的采集与显示,环境温度的闭环控制两大功能,成功完成了预期目标。
2简单电路的模块化设计与实现
2.1单片机应用电路设计与实现
2.1.1基本要求
片选信号:
6个
地址信号:
4个
数据总线:
AD0~AD7
控制信号:
WR,RD
安装:
独立电路板结构
2.1.2设计方案
采用以MCS-51(C8051F023)为核心的单片机做为控制芯片。
MCS-51系列单片机有众多性能优异的兼容产品、成熟的开发环境、世界上最大的单片机客户群、高性价比、畅通的供货渠道,是初学者的首选机型。
本电路直接采用成品单片机最小系统版,最小系统版内置晶振与复位电路,可以简化设计,方便焊接,也增加了设计与实现的成功率。
是单片机模块更加可靠。
图2.1典型的51单片机的最小系统电路图
本次设计采取总线结构,把单片机的P1口作为数据总线接口,P1、P2口联合使用作为地址总线接口。
通过总线结构设计,可以有效减轻软件设计难度,也是单片机控制的多个功能部件更加协调一致的工作。
如图2.2所示,控制系统在数据/地址传输上采用数据/地址分离设计;
在控制上采用部分译码电路。
数据/地址分离电路设计:
单片机模块P3口为数据/地址复用端口,为了得到低8位地址,采用74LS373锁存器构成典型的数据/地址分离电路。
地址译码电路设计:
采用74LS138构成部分译码电路。
具体电路图如下:
图2.3单片机系统设计电路图
为便于各模块协调一致的工作,电路设计统一接口模式,方便调试与查错,单片机模块安装接口如图2.4所示。
图2.4单片机模块装结构图
2.1.3单片机系统的调试
调试平台:
电子工程设计训练调试台
调试内容:
地址译码电路输出检测
适用电路:
部分地址译码电路
测试设备:
JTAG适配器
单片机应用系统板
150MHz数字双踪示波器
调试方法:
1、检查电路连线无误后,将电路板安装在测试台上
2、断开译码电路负载,运行测试程序,检查各输出引脚是否有输出,各个输出之间相对位置关系是否正确;
3、用示波器观察CS0~CS5引脚,应有图示的波形输出。
如果没有输出或者彼此关系错乱,都表明电路中存在故障。
CS0~CS5输出波形图如图2.5所示:
CS0:
CS1:
CS2:
CS3:
图2.5单片机模块调试波形图
调试程序:
#include"
C8051F020.h"
absacc.h"
data_define.c"
#defineC1XBYTE[0x0000]
#defineC2XBYTE[0x2000]
#defineC3XBYTE[0x4000]
#defineC4XBYTE[0x6000]
Init_Device.c"
voidmain(void)
{
Init_Device();
while
(1)
{C1=0;
C2=0;
C3=0;
C4=0;
}}
2.1.4调试中遇到的问题
刚开始调试的时候,我们用示波器观察CS0~CS5的波形,但是并没有得到正确的波形。
后经检查,发现老师提供的测试程序的译码地址与我们的硬件电路并不匹配,查电路设计图后,修改程序译码地址,最终得到正确波形。
完成了单片机模块的设计与调试。
表2.1常见故障及原因
故障现象
故障原因
输出全部没有变化
74LS373未接电源
74LS373漏接+5V
74LS373漏接地线
未接ALE或ALE无效
输出关系混乱
AD0~AD3接错
对应引脚无输出
AD0~AD3漏接
2.2模/数转换电路设计与实现
2.2.1实验要求
输入信号范围:
0V~+5V
分辨率:
8bit
精度:
1LSB
转换时间:
<
1ms
独立电路板结构
2.2.2设计方案
本次设计AD转换电路采用芯片ADC0804,芯片主要参数如下:
工作电压:
+5V,即VCC=+5V。
模拟输入电压范围:
0~+5V,即0≤Vin≤+5V。
8位,即分辨率为1/2=1/256,转换值介于0~255之间。
100us(fCK=640KHz时)。
转换误差:
±
1LSB。
参考电压:
2.5V,即Vref=2.5V。
模数转换器,是将模拟电信号转变成计算机能识别的数字信号。
在模数转换中,应根据测量精度要求,考虑转换电路的精度和分辨率,并力求降低成本。
模数转换有多种方法可以实现,如采用电压/频率变换器,以频率或脉宽来计算温度,也可以采用A/D变换器或其它方法。
如采用A/D变换器,应考虑转换器输入阻抗和变送器输出阻抗对信号的衰减可能引起的测试误差,并尽量降低这一误差。
板间连接应注意保护。
根据课设要求,温度0~100的变化是用电压0~5V表示的,转成数字表示,即0~FFH。
AD电路模块电路图如图2.6所示
图2.6
AD模块工作的时序图如图2.7所示。
图2.7
2.2.3电路主要参数计算
(1)转换精度:
A/D转换器也采用分辨率和转换误差来描述转换精度。
分辨率是指引起输出数字量变动一个二进制码最低有效位(LSB)时,输入模拟量的最小变化量。
他反映了A/D转换器对输入模拟量微小变化的分辨能力。
在最大输入电压一定时,位数越多,量化单位越小,分辨率越高。
转换误差通常用输出误差的最大值形式给出,常用最低有效位的倍数表示,反映A/D转换器实际输出数字量和理论输出数字量之间的差异。
(2)转换时间:
转换时间是指转换控制信号(vL)到来,到A/D转换器输出端得到稳定的数字量所需要的时间。
转换时间与A/D转换器类型有关,並行比较型一般在几十个纳秒,逐次比较型在几十个微秒,双积分型在几十个毫秒数量级。
实际应用中,应根据数据位数、输入信号极性与范围、精度要求和采样频率等几个方面综合考虑A/D转换器的选用。
(3)8位数模转换电路主要技术指标:
分辨率---8位:
表示能够分辨的最小电压变化
DATA为1时的Vi表示最小电压变化
误差---±
1LSB
转换时间---100微秒
为便于各模块协调一致的工作,电路设计统一接口模式,方便调试与查错,模数装换模块安装接口如图2.8所示。
图2.8模数转换电路安装结构图
2.2.4模数转换电路模块的调试
改变设置温度,运行A/D测试程序,检查模/数转换结果。
一般为0~5伏特之间改变,相应数为0~255.
调试源程序为:
#defineCS1XBYTE[0x2000]
#defineTIMER0x8000
voiddelay(void);
unsignedcharx;
while
(1){CS1=x;
delay();
x=CS1;
}
}
voiddelay(void)
unsignedinti;
for(i=0;
i<
TIMER;
++i);
一般故障检测方法为:
查数据线是否漏接,若A/D转换结果数值不随设置温度正比变化检查数据线是否错接;
查Vin(-)是否接GND;
查Vin(+)是否有变化,如无变化,逆向检查直至变送器输出。
若电源连接正常,查CLK-IN引脚是否有锯齿波信号输出,若没有输出检查相关元件连接是否正确,若频率过高(正常约为640KHz)检查元件参数是否有误。
如果元件连接及元件参数无误仍无信号输出,则ADC0804损坏。
若CLK-IN引脚有正常的锯齿波信号输出,可修改测试程序,将延时子程序或延时函数去掉,加快程序循环的时间,检查转换控制信号、和数据读取控制信号WR/RD是否正常。
若上述控制信号正常,则可能是ADC0804损坏。
2.3显示与键盘控制电路设计与实现
2.3.1基本要求:
1、4位7段数码显示,前3位含小数点
2、0~9数字输入键及若干功能设置按键控制
3、独立电路板安装结构
2.3.2设计方案:
单片机与LED显示器有两种接口方法。
动态显示电路方案:
电路简单,成本低,控制程序复杂,适用于显示位数较多的场合。
可使用智能芯片8279完成。
本阶段我们用74LS273设计显示数据输出电路,然后用74LS244设计键盘状态读入电路,最后设计出总的实验电路图,显示模块的电路原理图如图2.9所示。
图2.9显示模块电路原理图
矩阵键盘电路方案:
按键较多时,成本低,控制程序较直读电路复杂,适用于显示位数较多的场合。
键盘电路的电路图如图2.10所示。
图2.10键盘模块电路图
键盘模块工作的时序图如图2.11所示。
图2.11键盘模块工作时序图
为便于各模块协调一致的工作,电路设计统一接口模式,方便调试与查错,键盘显示模块安装接口如图2.12所示。
图2.12键盘显示模块安装结构图
2.3.3显示模块模块的调试
(1)显示电路模块调试源程序:
#defineDP1XBYTE[0x0000]
#defineDP2XBYTE[0x0001]
#defineDP3XBYTE[0x0002]
#defineDP4XBYTE[0x0003]
unsignedchartable[]={0xC0,0xF9,0xA4,0xB0,0x99,
0x92,0x82,0xF8,0x80,0x90};
voiddisplay(unsignedcharx,y);
unsignedchari,num=0;
DP1=DP2=DP3=DP4=0xff;
while
(1)
{
for(num=0;
num<
10;
++num)
i++;
if(i<
=4)display(i,num);
else{i=1;
display(i,num);
delay();
}
(2)显示模块故障检测方法:
运行显示模块测试程序,如果电路工作正常,在4个数码管上应有数字0-9滚动显示。
否则,说明电路存在故障,可以根据故障现象,按照下面的方法进行检查。
全黑:
数码管未接电源,74LS237未接电源或地,74LS237触发控制信号(CK)不正常,数据线全部漏接
全亮:
74LS237的CLR引脚未接高电平
乱显示且无规律、无变化:
74LS237触发控制信号(CK)不正常
二次译码信号线上无信号:
一次译码信号线漏接或信号线上无信号,二次译码电路74LS138的E2、E3连接错误,二次译码电路74LS138漏接电源或地线,地址信号(74LS138的A、B、C输入)不正常,访问地址错误
2.3.4键盘模块的调试
运行键盘控制电路的测试程序,如果电路工作正常,在键盘上每按1个键,都会通过2位数码显示管,显示相应的行编码和列编码。
否则,说明电路存在故障。
调试源程序如下
#defineDP1XBYTE[0x7000]
#defineDP2XBYTE[0x7100]
#defineDP3XBYTE[0x7200]
#defineDP4XBYTE[0x7300]
unsigned
chartable[]={0xC0,0xF9,0xA4,0xB0,0x99,0x92,0x82,0xF8,0x80,0x90};
voiddisplay(unsignedcharx,unsignedchary)
{DP3=table[x];
DP4=table[y];
voidmain(void){
unsignedcharl_val,r_val,r_state,temp,cont,x,c;
intkey;
DP1=DP2=DP3=DP4=0xff;
while
(1){
key=0x0004;
for(x=1;
x<
5;
x++,key++){
c=XBYTE[key];
if(r_state=~c&
0x1f){
for(cont=1,temp=0x01;
cont<
6;
++cont,temp=temp<
<
1)
if((r_state&
temp)!
=0){
r_val=cont;
l_val=x;
display(l_val,r_val);
}}}
}}
2.4数/模(D/A)转换电路设计与实现
2.4.1基本要求:
输入范围:
00H~0FFH
对应输出:
-10V~+10V
误差:
1%FSR
响应时间:
电源供电:
+5V,±
12V
2.4.2设计方案
D/A的作用是把输入的模拟信号转化为数字信号。
有电流开关型、脉宽调制型等。
在这里,我们采用DAC0832构成D/A电路。
DAC0832是8位乘算型电流输出的典型产品,具有MCU兼容接口,使用方便,价格低,能满足设计要求。
数模转换器是整个控制系统将计算机输出的数字信号转化成模拟信号的重要部件,它的特性直接影响温度转换的精度。
其转换的精度主要由数模转换器的位数和Vref。
DAC0832工作原理及特性如图2.13所示:
图2.13模数装换工作原理
数模转换电路如图2.14所示:
图2.14数模转换模块电路图
原理分析:
DAC0832的Iout1和Iout2作为输入信号输入到LM358的输入端。
由电流-电压转换电路可知:
LM358的1号管脚输出为:
,此管脚作为输入信号输入到U2BLM358的反相输入端。
则U2BLM358输出端输出为:
V=-Vout1*R3/R1-5*R3/R2
取电阻参数:
R1=5K,R2=10K,R3=20K。
因为Vout1的取值为(-5V—0V),R3/R1=4,故-Vout1*R3/R2的范围为(0V—20V),又因为-5*R3/R2=-10V所以总输出范围:
V={0—20V}-10V={-10V—10V}。
为便于各模块协调一致的工作,电路设计统一接口模式,方便调试与查错,数模装换模块安装接口如图2.15所示。
图2.15数模转换模块安装结构图
2.4.3数模转换模块的调试
数/模转换电路板
(1)调试方法:
2、断开电路负载,运行测试程序,检查各节点信号是否正确。
如果有问题,按照故障诊断预案进行诊断分析,并且排除故障。
3、用示波器观察LM3587号管脚。
正确的输出波形如图2.16所示
图2.16数模转换测试波形图
(2)调试程序:
#defineCS2XBYTE[0x4000]
{unsignedcharx;
while
(1)
{++x;
CS2=x;
/*delay();
*/}
{inti;
for(i=0;
++i);
(3)故障检查:
根据第二级运放输出信号波形判断故障原因
部分节点无信号或全部节点无信号的故障原因:
第二级运放无信号输出:
连线有误或运放损坏
二级运放皆无信号输出:
连线有误或未接电源或运放损坏或D/A电路故障
断开第一级运放输出与Rfb的连线,测量Iout1引脚有锯齿波输出为运放损坏,否则为D/A电路故障
调试中遇到的问题:
调试时由于接线问题,没能获得正确波形。
纠正接线问题后,发现输出波形正确但是幅值不对。
经细心观察,实际输出波形为正确波形幅值的0.1倍,初步判断为示波器的衰减探头打到了X10位置。
检查示波器探头,果不其然。
纠正错误后波形输出终于正常。
3整体电路的调试与功能实现
在分模块电路设计完成之后,就要进行整系统联合的功能调试,整体调试主要实现两个功能。
分别是环境温度显示功能和闭环温度控制功能。
通过整体功能的调试与实现,进一步深化对系统设计的理解,增强系统调试能力与发现问题、解决问题的能力。
3.1环境温度显示功能的实现
调试过程:
连接电路并运行程序。
观察测温系统数字显示,应跟随调试台设置温度变化并与调试台设置温度接近。
若测量温度与设置温度相差过大的调试,则需调整变送器。
调试台设置低端温度,变送器进行零点校准,调试台设置高端温度,变送器进行满度校准。
调试源程序见附录一,调试结果如图3.1所示。
图3.1温度显示功能实现图
3.2闭环温度控制功能的实现
通过键盘切换到环境温度显示功能。
通过键盘切换到闭环温度控制功能。
通过键盘设定目标控制温度,观察实际温度时候能变化到目标控制温度。
可以通过改变程序来调节控制精度。
调试源程序见附录二,调试结果如图3.2所示。
图3.2闭环控制功能实现图
4收获和体会
第二阶段我们一共完成了测温系统中的单片机,A/D转换,D/A转换,显示键盘电路一共四块电路板。
虽然有了第一阶段的一些经验积累,没有那么手忙脚乱,但是这四块板子的难度相比第一阶段来说是更加的高。
第二阶段我们主要面临的问题有以下几点。
第一点就是电路板需要焊接的线数量非常大,非常密集。
这就意味着排线的难度大幅增加,同时在焊接过程中很容易出现失误。
在单片机这块的焊接中,我们就出现了把芯管脚搞反,结果在插针焊接的时候错了很多,要更改起来特别困难。
另外在布线的结构上我们也存在很大的问题,这就让焊接的线变得很多很乱,在测试电路的时候出现问题,查线排除故障进行的非常缓慢。
另外在显示键盘电路这块板子上,一开始四个数码管只有两个亮,我们以为是数码管的问题,但更换之后问题依然存在。
于是再进行电路检查,查了三四遍线路都认为没有问题这让我们觉得非常奇怪,后来在和其他组同学的电路板对比之后发现少了两根地线没有接,还是我们焊接时候的粗心大意造成的。
最让我们组头痛的就是测温系统,将6块板子组合在一起进行测试。
在之前我们每块板子单个都通过了测试,可是没有想到进行测温系统测试的时候竟然没有成功。
经过推断我们认为问题肯定是出现在单片机上,但是不论是查线还是测试输出波形都查不出问题所在。
在我们非常着急头痛走投无路的时候,老师给予了我们巨大的帮助。
本学期电子工程设计课程圆满结束,在这学期我们第一次尝试去完成一个功能完善的电子系统。
在这个过程中遇到了诸多的困难,但我们都顽强的克服了,我们的
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 北工大 电子 工程设计 报告 小型 温度 控制系统