简单温度控制系统设计报告_第1页
简单温度控制系统设计报告_第2页
简单温度控制系统设计报告_第3页
简单温度控制系统设计报告_第4页
简单温度控制系统设计报告_第5页
已阅读5页,还剩8页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

计算机控制系统实践课程设计报告设计标题:基于AT89C52RC的温度控制系统地图老师:报告者:学号:报告日期:摘要信息本报告所述的热量控制系统是基于AT89C52RC控制器的闭环温度控制系统。控制系统通过数字温度传感器DS18B20获取水温传递给控制器。通过控制器的数据分析和处理,控制继电器,实现加热器的启动和停止。通过温度控制系统的设计,掌握了简单闭环系统的设计。实际进行了这一过程,将自己的知识学习从理论转换为实际应用。首先,系统设计:图1系统方案图1.1传感器DS18B20:DS18B20数字温度计提供9-12位摄氏度的温度测量,具有不随断电而变化的可编程警报功能。DS18B20通过一条单线接收或发送信息,因此处理器和DS18B20之间只有一条数据线连接。其测量范围为-55 125,精度为-10 85。此外,DS18B20还通过从单根数据线中抽取能源,消除了对外部电源的需要。DS18B20常用的软件包包括SOIC、T0-9和不锈钢密封包。该系统需要测量水温,因此选择不锈钢密封包的DS18B20。图2 DS18B20周围的电路图1.2驱动程序芯片ULN2003在本主题中选择的继电器是SRD-05VDC-SL-C线圈中的电流约为72mA,因为51单片机的充电/满电流约为20mA。微控制器针脚和继电器线圈之间需要驱动芯片。为此,该项目使用集成芯片ULN2003作为继电器驱动芯片。ULN2003是单芯片高电压、大电流达林顿晶体管阵列集成电路。由7对NPN达林顿管组成,高压输出特性和阴极钳二极管转换感应负载。单个darlington对的集电极电流为500mA。达林顿管能承受更大的电流。该电路主要用于继电器驱动器、锤驱动器、灯驱动器、显示驱动器(LED气体放电)、线路驱动器和逻辑缓冲区。ULN2003中的每台都有一个2.7k串行电阻器,与TTL或5V CMOS设备直接连接图3达林顿管的内部电路在温度控制系统中,ULN2003用于驱动继电器的线圈,如图4所示:图4 ULN2003和继电器周边电路1.3中继SRD-05VDC-SL-C该项目在硬件功能方面可以分为主回路和次回路。电路的主要设备是加热器。二次电路是单片机控制电路。这是控制强大电气系统的典型弱点。我们使用来自单片机的控制信号作为单电路开关的操作信号。实现此转换的设备是继电器。根据单片机参数和主电路电流、电压大小选择了SRD-05VDC-SL-C继电器。该继电器线圈的电源电压是带单刀双投开关的直流5v电压。将节点连接到火线以控制加热的开始和停止。继电器图5图5 SRD-05VDC-SL-C继电器物理图二、编程2.1程序系统方框图设计图6程序流程图系统通电后,设备初始化,包括继电器、指示灯和中断初始化。然后系统进入环路,控制器命令DS18B20继续收集和处理温度信息。最后,从中断判断,中断使用16位非自动重新安装计数,计时间隔3毫秒。温度小于30 时加热,温度大于30 时停止加热。总结通过此次温度控制系统设计,了解了闭环控制系统设计的大致过程。通过系统所需设备的选择、焊接和调试,锻炼了自己的实际实践能力。通过控制系统的设计,还锻炼了使用我们的编程能力和软件绘制电路原理图的能力。制作过程中出现了一些问题,通过查找资料、小组讨论、小组响应格式等,也解决了这些问题。在老师的耐心指导下,通过我们的共同努力,终于完成了这个项目。温度控制系统将我们所学的应用到实际中,提供了解决实际问题的机会。附录1温度控制系统电路图附录2 AT89C52RC计划# include“reg 52 . h”#include#include#define uchar unsigned char#define uint unsigned intsbit relay=P2 0;/继电器线圈sbit ds=p2 7;/DS18B20数据线sbit led run=p2 5;/加热指示灯Int tempValue1Unsigned int tempbit heat _ flag=0;uchar code th0=(65535-3000)/256;uchar code tl0=(65535-3000)% 6;Void delay(unsigned int I)unsigned int j;While(i -)for(j=0);J125j);Void dsInit()unsigned int I;ds=0;I=100while(i0)I-;ds=1;I=4;while(i0)I-;Void dsWait()unsigned int I;while(ds);while( ds);I=4;while(I 0)I-;位元读取位元()unsigned int I;位元b;ds=0;I;ds=1;I;I;B=dsI=8;while(i0)I-;return b;Unsigned char readByte()unsigned int I;Unsigned char j,datdat=0;for(I=0);i8;I)j=read bit();dat=(j 7)|(dat 1);Return datVoid writeByte(unsigned char dat)unsigned int I;unsigned char j;位元b;for(j=0);j 8;j)B=dat0x01dat=1;If(b)ds=0;I;I;ds=1;I=8;while(i0)I-;Elseds=0;I=8;while(i0)I-;ds=1;I;I;Void sendChangeCmd()ds init();ds wait();delay(1);write byte(0x cc);write byte(0x44);Void sendReadCmd()EA=0;ds init();ds wait();delay(1);write byte(0x cc);write byte(0x be);EA=1;Int getTmpValue()Unsigned int tmpvalueInt valuefloat t;Unsigned char low,highEA=0;SendReadCmd();low=read byte();high=read byte();Tmpvalue=hightmp value=8;Tmpvalue |=lowValue=tmpvalueT=value * 0.0625Value=t * 100 (value 0?0.5 :-0.5);Return valueEA=1;Void Init_timer0()TMOD=0x01TH0=th0TL0=tl0EA=1;ET0=1;TR0=1;Void timer0() interrupt 1TR0=0;If(heat_flag=1)relay=1;ledrun=1;Elserelay=0;ledrun=0;TH0=th0TL0=tl0TR0=1;Void main()

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论