您好,欢迎来到易妖游戏网。
搜索
您的当前位置:首页2021年度基于的温度控制设计报告

2021年度基于的温度控制设计报告

来源:易妖游戏网




基于ds1b20温度控制设计汇报







摘要
本文关键介绍了一个基于ATC51单片机测温系统,具体描述了利用数字温度传感器DS18B20开发测温系统过程,

,

软件编程和各模块系统步骤进行了详尽分析,对各部分电路也一一进行了介绍,该系统能够方便实现温度采集和显示,并可依据需要任意设定上下限温度,它使用起来相当方便,含有精度高、量程宽、 灵敏度高、 体积小、 功耗低等优点,适合于我们日常生活和工、农业生产中温度测量,也能够看成温度处理模块嵌入其它系统中,作为其它主系统辅助扩展。DS18B20ATC52结合实现最简温度检测系统,

有广泛应用前景。
该系统结构简单,抗干扰能力强,适合于恶劣环境下进行现场温度测量,






目录

第一章概述......................................................................................................................................4
第二章单片机人机接口系统软件设计..........................................................................................6
2.1 ATC52............................................................................................................................6
2.2系统组成..........................................................................................................................7
2.4显示按键电路设计..........................................................................................................7
第三章温度测量模块设计..............................................................................................................8
3.1DS18B20介绍....................................................................................................................8
3.2 DS18B20内部结构........................................................................................................10
4.2风扇PWM驱动....................................................................................................................13
4.3制冷片控制和程序设计..................................................................................................13
第五章温度测量试验和分析........................................................................................................14
5.1基础任务..........................................................................................................................14
第六章温度控制试验和分析........................................................................................................15
总结..................................................................................................................................................16
参考 文献....................................................................................................................................17
附录一..............................................................................................................................................18






测控电路和电子电力技术等课程,是多门课程综合性设计。

1.课程设计任务分解





温度测控系统设计

风扇控制电路设计智能测控系统设计 温度控制系统设计

1.1课程设计任务分解

2.关键仪器设备元件

DS18B20, 单片机实训板、 可编程控制器试验台、场效应管、


3.课程设计基础步骤

课程 计步

软件设计和加温系统组装和箱作部分是课程设计三大关键模块。

电路设计和焊接部分关键是18B20接口电路、

光电隔离和场效应管驱动电路和驱动电路接口。

软件设计关键包含键盘扫描程序、四位数码管动态显示程序、

任意浮点数显示程序、输入参数合成、 计时器程序、 风扇控制程序、

制冷片控制程序和串口通讯程序等。

加温系统组装调试和箱作关键完成加温系统中制冷片、散热片、

风扇组装和上电试运行,箱作关键是用硬纸箱板根据参考尺寸15厘米,

做一个15X15X15箱子就能够,同时考虑加温系统安装和温度传感器部署。



温度测量试验关键是在一系列标准温场下,用传感器测量数据和标准玻璃温度计数据对比,分析测量精度,依据仪器引用误差定设备等级。

温度控制试验分加温和降温两部分,经过设定一个比现场温度低或高温度,然后系统开始工作,并根据一定时间间隔将温度和加/降温时间数值统计出来。分析温度系统工作效率。 当达成设定值后,将其稳定住,并根据一定时间间隔采集数据,分析系统稳定性。







第二章单片机人机接口系统软件设计

2.1ATC52

ATC52是一个低功耗、高性能CMOS8位微控制器,

8K

Flash

使用Atmel企业高密度非易失性存放器技术制造。片上Flash许可程序存放器在系统可编程,亦适于常规编程器。在单芯片上,

8

CPU

,

Flash,

使得ATC52为众多嵌入式控制应用系统提供高灵活、超有效处理方案。

ATC52含有以下标准功效:
8k字节Flash, 256字节RAM,32 I/O 口线,看门狗定时器, 2
个数据指针,三个16 位定时器/计数器,一个6向量2级中止结构,
全双工串行口, 片内晶振立即钟电路。 另外,ATC52可降至0Hz 静态逻辑操作, 支持2种软件可选择节电模式。空闲模式下, CPU 停止工作,
直到下一个中止或硬件复位为止。8 位微控制器 8K字节在系统可编程 Flash
ATC52

2.2系统组成

DS18B20

来完成温度测量全过程,系统关键由ATC52单片机、电源、 时钟、 加热、 测温、 显示、 键盘、 报警、复位等电路组成,系统组成框图图3所表示系统组成





2.2系统组成

2.4显示按键电路设计

显示电 74HC595 LED

数码显示器组成,用于显示三位温度值,两位整数,一位小数。

该显示电路是ATC52单片机串行口工作于方法0经典应用。 74HC595 是一个8

位串入并出移位寄存器,74HC1类似,但其性能优于74HC1,因为74HC595


电路中,74HC595SER 端和ATC51RXD 端相连,用以接收来自ATC51

串行输入信号;74HC595SRCLK 端和ATC51TXD 端相连,

用以接收来自ATC51同时移位时钟脉冲信号;74HC595锁存信号RCLK

则由ATC51P2.0 控制;74HC5959位输出Q8用于多片74HC595级联。

本系统中因为按键个数较少,为简化系统设计而采取式按键。

三个按键分别连接到ATC52P0.0,P0.1,P0.2

ATC52单片机共有四个并行I/O:P0~P3口。其中P0口有三种用途:

用作8位数据总线DB;

P2口共同组成16位地址总线AB,P0口为低8AB;


用作通常I/O口。




P0口内部结构可知,其输出驱动级为开漏电路,所以当P0口用作通常I/O口时,需外接上拉电阻。

按键功效以下:
⑴K1:加热控制键。按下K1,CPU实施指令“CLRP1.1” ,P1.1口电平拉低,74LS04反相后变高,使发光管D1点亮,继电器J动作,J1闭合,加热器开始加热。

K2:严禁加热键。按下K2,CPU实施指令“SETBP1.1” ,P1.1口电平拉高,74LS04反相后变低,发光管D1熄灭,继电器动作,J1断开,加热器停止加热。

K3:恒温控制键。按下K3,CPU将目前温度值读入并储存、比较,当温度高于储存值时,实施K2键功效;当温度低于储存值时,实施K1键功效。


3.1 DS18B20介绍

DALLAS最新单线数字温度传感器DS18B20是一个新型“一线器件” ,其体积更小、更适适用于多个场所、 且适用电压更宽、 更经济。DALLAS半导体企业数字化温度传感器DS18B20是世界上第一片支持“一线总线”接口温度传感器。温度测量范围为-55+125摄氏度,可编程为9位~12

,

0.0625

,

分辨率设定参数和用户设定报警温度存放在EEPROM,掉电后仍然保留。被测温度用符号扩展16位数字量方法串行输出;其工作电源既能够在远端引入,也能够采取寄生电源方法产生;多个DS18B20能够并联到3根或2根线上,CPU只需一根端口线就能和很多DS18B20通信, 占用微处理器端口较少,



可节省大量引线和逻辑电路。所以用它来组成一个测温系统,含有线路简单,在一根通信线,能够挂很多这么数字温度计,十分方便。

其最大特点是单总线数据传输方法,DS18B20 数据I/O均由同一条线来完成。DS18B20电源供电方法有2:外部供电方法和寄生电源方法。工作于寄生电源方法时,VDD GND均接地,她在需要远程温度探测和空间受限场所尤其有用,原理是当1W ire 总线信号线DQ为高电平时,窃取信号能量给DS18B20供电,同时一部分能量给内部电容充电,DQ为低电平时释放能量为DS18B20供电。

,

软件控制变得复杂(尤其是在完成温度转换和拷贝数据到E2PROM), 同时芯片性能也有所降低。所以,在条件许可场所,尽可能采取外供电方法。

不管是内部寄生电源还是外部供电,I/O口线要接5KΩ左右上拉电。

在这里采取前者方法供电。图3.1所表示:

3.1 DS18B20和单片机接口原理图




3.2DS18B20 内部结构


DS18B20 内部整体结构DS18B20内部由 位光刻ROM、温度传感器、
暂存器、EEPROM 等组成,其整体结构图1所表示。

DS18B20暂存器结构DS18B20内部有一个9字节数据暂存器,

EEPROM

循环冗余检验码存放和内部计算中间结果暂存等,DS18B20暂存器结构图2所表示。

3.3温度驱动模块
加热测温电路由加热器、继电器、 DS18B20 等组成。系统上电复位时,P1 口为高电平,继电器J不动作,J1 断开,加热器不工作。

依据DS18B20 工作原理,当总线上只有一个DS18B20,不需要对DS18B20ID



,

DS18B20

ROM

编码,而只要使用一条“跳过ROM”命令,然后就可直接对DS18B20

存放器进行操作。在这种情况下,单片机开启DS18B20开始进行温度转换、

读取温度数据步骤图3.3



3.3温度转换、读取数据步骤

第四章温度控制模块设计

4.1光电隔离控制电路设计

光电 耦合 器亦 光电 隔离 ,


光电耦合器以光为媒介传输电信号。它对输入、




输出电信号有良好隔离作用。光耦合器通常由三部分组成:光发射、光接收及信号放大。 输入电信号驱动发光二极管(LED,使之发出一定波长光,被光探测器接收而产生光电流,再经过深入放大后输出。这就完成了电—光—电转换,从而起到输入、输出、 隔离作用。 因为光耦合器输入输出间相互隔离,电信号传输含有单向性等特点,所以含有良好电绝缘能力和抗干扰能力。

对于开关电路,往往要求控制电路和开关电路之间要有很好电隔离,这对于通常电子开关来说是极难做到,但采取光电耦合器就很轻易实现了。图4.1中所表示电路就是用光电耦合器组成开关电路。

在图4.1,在光电耦合器输入端加电信号使发光源发光,
光强度取决于激励电流大小,此光照射到封装在一起受光器上后,
因光电效应而产生了光电流,由受光器输出端引出,
这么就实现了电一光一电转换。

4.1光电隔离控制电路设计

4.2风扇PWM驱动



4.2

PWM






由单片机控制光电耦合器开关来控制场效应管导通。导通后给风扇很大电流以驱动风扇转动

4.2风扇电路
4.3制冷片控制和程序设计
制冷(制热)工作原理
半导体温差致冷是建立在法国物理学家Peltien帕尔帖效应(即温差效应)

其接点会产生放热和吸热现象,即其两端形成温差而实现制冷和制热。图
基础上具体应用。当电流流经两种不一样性质导体形成接点时,


4.3 制冷片工作原理
依据上述原理,利用半导体材料制成致冷器称为半导体致冷器,其工作原理图图1所表示。为了便于叙述起见, 以一对N/P型半导体材料组成电偶对介绍工作原理,所谓电偶对就是掼NP结数量。图1N/P型半导体元件经过铜导流片连接起来,当由N经过铜导流片到P通以正向直流电时,在电场作用下,N型半导体中电子和P型半导体中空穴背向导流(朝接头)运动, 即在导流片接头处N型和P型分别产生电子、空穴。 电子、



空穴产生能量来自晶格振动热能,于是在导流片上产生吸热现象,而在N/P型另一端产生放热现象,从而产生温差。当放热高温侧热量能有效地放热时,吸热低温侧不停地吸热,使其起到致冷作用。

第五章温度测量试验和分析

5.1基础任务
1温度测量精度:±1℃;
2温度控制精度:±3℃;
3制冷片输出功率可调;
4测量温度值LED显示;

5 控制温度值可经过键盘设定;

2.数据处理和误差分析(最大引用误差)
DS18B20测量范围为-55℃ ~+ 125 ℃ ; -10~+85℃范围内,

±

0.5°

C

,

经过数字转换用数码管显示出来温度和实际温度相差不大。而玻璃温度计本身测量误差就大,人在读温度时候因为光线折射,读取温度就更不正确,所以DS18B20和玻璃温度计测量值有很大差异。相比较而言DS18B20温度测量值更正确。





第六章温度控制试验和分析

*基础任务

1.升温

温度测量数值表

序号

1

2

7

8

9

系统测量值

28.1

27.3

28.4

28.6

28.9

时间

50s

54s

49s

59s

58s

56s

56s

55s

56s

温度测量数值表

序号

1

2

3

4

5

6

7

8

9

系统测量值

32

31.9

31.8

31.7

31.6

31.5

31.4

31.3

31.2

时间

106s

110s

113s

114s

116s

118s

120s

121s

122s

3.恒温

3 温度控制性能数据表

控制温度值:32℃ 时间:分钟

时间

10

20

30

40

50

60

70

80

90

系统测量值

31.8

31.9

32.1

32.1

32.3

32.1

31.9

32

32.2





总结

经过这几天单片机课程设计,我最终完成了数字温度计设计。

在此次设计过程中,我发觉很多问题,即使学过单片机设计,

不过真并不太懂实际设计。经过这次设计真让我长进了很多,

单片机课程设计关键就在于软件算法设计,需要有很巧妙程序算法,

只有我们去试着做了,才能真正掌握, 只学习理论有些东西是极难了解,
即使以前写过几次程序,但我觉写好一个程序并不是一件简单事,有好多东西,


要理论联络实际,把我们所学理论知识用到实际当中,学习单机片机更是如此,

程序只有 ,

这就是我在这次课程设计中最大收获。





参考 文 献

[1] 李朝青. 单片机原理及接口技术.北京航空航天大学出版社,[2] [3] 马忠梅等.单片机C语言应用程序设计(第4版), 江世明. 基于Proteus单片机应用技术.电子工业出版社,

[5] [4]





附录一

//安装目录下EXE文件打开后可在电脑上显示目前温度值温控系统程序

#define uint unsigned int

sbitDS=P2^2; //define interface

sbitdula=P2^6;
sbitwela=P2^7;
sbitli=P3^1;
sbitwai=P3^0;
sbithot=P3^2;
sbitup=P3^5;

sbit down=P3^6;
unsigned char code table[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d, 0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71};




unsignedchar code table1[]={0xbf,0x86,0xdb,0xcf,0xe6,0xed,0xfd, 0x87,0xff,0xef};
uint temp; // variable of temperature
uint aa=25,bb=0,cc=0,dd=0;
voiddelay(uint count) //delay
{
uint i;
while(count)
{
i=200;
while(i>0)
i--;

} count--;
}

{
uint i;
DS=0;
i=103;
while(i>0)i--;
DS=1;
i=4;
while(i>0)i--;

}

bit tmpreadbit(void) //read a bit






{
uint i;
bit dat;
DS=0;i++; //i++ for delay
DS=1;i++;i++;
dat=DS;
i=8;while(i>0)i--;
return (dat);
}

uchartmpread(void) //read a byte date
{

dat=0; uchar i,j,dat;

{ j=tmpreadbit();
dat=(j<<7)|(dat>>1); //读出数据最低位在最前面,这么刚好一个字节在DAT
}
return(dat);
}

voidtmpwritebyte(uchar dat) //write a byte to ds18b20
{
uint i;

uchar j;
bit testb;






for(j=1;j<=8;j++)
{
testb=dat&0x01;
dat=dat>>1;
if(testb) //write 1
{
DS=0;
i++;i++;
DS=1;
i=8;while(i>0)i--;
}
else
{ DS=0; //write 0
i++;i++;
}

}
}

voidtmpchange(void) //DS18B20 begin change
{
dsreset();

delay(1);
tmpwritebyte(0xcc); // address all drivers on bus





tmpwritebyte(0x44); // initiates a single temperature conversion }

uinttmp() //get the temperature
{
float tt;
uchar a,b;
dsreset();
delay(1);
tmpwritebyte(0xcc);
tmpwritebyte(0xbe);
a=tmpread();

temp=b; b=tmpread();

tt=temp*0.0625;

temp=tt*10+0.5;
return temp;
}

voidreadrom() //read the serial
{
uchar sn1,sn2;
dsreset();

delay(1);
tmpwritebyte(0x33);





sn1=tmpread();
sn2=tmpread();
}

voiddelay10ms() //delay
{
uchar a,b;
for(a=10;a>0;a--)
for(b=60;b>0;b--);
}

void display(uint temp) //显示程序
{ uchar A1,A2,A2t,A3,ser;
A1=temp/100;
A2t=temp%100;
A2=A2t/10;
A3=A2t%10;
dula=0;
P0=table[A1]; //显示百位
dula=1;
dula=0;

wela=0;
P0=0x7e;






wela=1;
wela=0;
delay(1);

dula=0;
P0=table1[A2]; //显示十位
dula=1;
dula=0;

wela=0;
P0=0x7d;
wela=1;
wela=0;
delay(1);
dula=0;

P0=0x7b;
wela=1;
wela=0;
delay(1);
}
voidxianshi(uint temp1)
{

uint A5,A6;
A5=temp1/10;






A6=temp1%10;
P0=table[A5];
dula=1;
dula=0;
P0=0xef;
wela=1;
wela=0;
delay(1);

P0=table[A6];
dula=1;
dula=0;

}

P0=0xdf;
wela=1;



void keyscan()
{
if(up==0)
{
delay(10);
if(up==0)
{
aa++;
if(aa==50)



{
aa=0;
}

}
}
if(down==0)
{
delay(10);
if(down==0)
{

if(aa==0) {
aa--;
}
}

}

voidmain()
{

uchar a; while(1)



{
keyscan();
tmpchange();
bb=tmp();
bb=bb/10;
cc=aa-1;

dd=aa+1;

if(bb>dd)
{
for(a=10;a>0;a--)
{ xianshi(aa);
li=0;
wai=1;
hot=1;
}
}

if(bb<cc)
{
for(a=10;a>0;a--)

{

xianshi(aa);






display(tmp());
P1=0xf0;
li=0;
wai=0;
hot=0;
}
}
if(bb>=cc&&bb<=dd)
{
for(a=10;a>0;a--)
{
xianshi(aa);
display(tmp());P1=0x00;
hot=1;
}

}

}

}



Copyright © 2019- vipyiyao.com 版权所有 湘ICP备2023022495号-8

违法及侵权请联系:TEL:199 18 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务