




已阅读5页,还剩8页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
计算机控制系统实践 计算机控制系统实践课程设计报告设计题目:基于AT89C52RC的温度控制系统指导老师:报告人 :学号 :报告日期 :摘要本报告中所述温度控制系统,是基于AT89C52RC控制器的闭环温度控制系统。控制系统通过数字温度传感器DS18B20采集水温传递给控制器。经过控制器对数据的分析与处理,实现对继电器的控制,从而实现对加热器的启动与停止。通过对温度控制系统的设计,我们掌握了对一个简单闭环系统的设计。并实际动手完成了这一过程,使得自己对知识的学习从理论过渡到了实际应用之中。一、系统设计方案:图1 系统方案结构图1.1传感器DS18B20:DS18B20数字温度计提供9-12位摄氏温度测量而且有一个由高低电平触发的可编程的不因断电而改变的报警功能。DS18B20由一个单线接收或发送信息,因此处理器和DS18B20之间只由一根数据线连接。它的测量范围是-55125,并且在-1085之间,精度为5。除此之外,DS18B20可以从单数据线上汲取能量,除去了对外部电源的需求。DS18B20常用的封装有SOIC、T0-9以及不锈钢密封封装。因本系统需测量水温,故选择不锈钢密封封装的DS18B20。图2 DS18B20外围电路图1.2 驱动芯片ULN2003因51单片机灌/拉电流比较小(大约在20mA左右),本项目所选用继电器为SRD-05VDC-SL-C其线圈的电流大约是72mA。所以在单片机管脚与继电器线圈之间需加入一个驱动芯片。为此,本项目选用集成芯片ULN2003作为继电器的驱动芯片。ULN2003是一个单片高电压、高电流的达林顿晶体管阵列集成电路。它是由7对NPN达林顿管组成的,它的高电压输出特性和阴极箝位二极管可以转换感应负载。单个达林顿对的集电极电流是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位非自动重装计数,计时间隔3ms。当温度小于30时进行加热,当温度大于30时停止加热。总结通过此次对于温度控制系统的设计,使我了解了设计闭环控制系统的大致流程。通过对系统所需器件的选型、焊接与调试,使自己的实际动手能力得到了锻炼。此外,通过对控制系统的设计还锻炼了我们的编程能力,以及使用软件绘制电路原理图的能力。在制作过程中,我们也遇到了一些问题,通过查找资料,小组讨论以及小组答疑的形式这些问题也都得到了解决。在老师的耐心指导下,通过我们的共同努力,最终完成了这个项目。温度控制系统的设计让我们能有机会把自己学过的东西应用于实际之中,解决实际问题,这让我们受益匪浅。附录1 温度控制系统电路原理图附录2 AT89C52RC程序#include reg52.h#include#include #define uchar unsigned char #define uint unsigned intsbit relay=P20; / 继电器线圈sbit ds=P27; / DS18B20数据线sbit ledrun=P25; / 加热指示灯int tempValue1;unsigned int temp;bit heat_flag=0;uchar code th0=(65535-3000)/256;uchar code tl0=(65535-3000)%256; void delay(unsigned int i)unsigned int j; while(i-) for(j=0;j0) i-; ds = 1; i = 4; while(i0) i-;void dsWait()unsigned int i; while(ds); while(ds); i = 4; while(i 0) i-;bit readBit()unsigned int i; bit b; ds=0; i+; ds=1; i+; i+; b=ds; i=8; while(i0) i-; return b;unsigned char readByte()unsigned int i; unsigned char j, dat; dat = 0; for(i=0; i8; i+) j = readBit(); dat = (j 1); return dat;void writeByte(unsigned char dat)unsigned int i; unsigned char j; bit b; for(j = 0; j = 1; if(b) ds = 0; i+; i+; ds = 1; i = 8; while(i0) i-; else ds = 0; i = 8; while(i0) i-; ds = 1; i+; i+; void sendChangeCmd()dsInit(); dsWait(); delay(1); writeByte(0xcc); writeByte(0x44); void sendReadCmd()EA=0; dsInit(); dsWait(); delay(1); writeByte(0xcc); writeByte(0xbe); EA=1;int getTmpValue() unsigned int tmpvalue; int value; float t; unsigned char low, high;EA=0; sendReadCmd(); low = readByte(); high = readByte(); tmpvalue = high; tmpvalue 0 ? 0.5 : -0.5); return value;EA=1;void Init_timer0()TMOD=0x01;TH0=th0;TL0=tl0;EA=1;ET0=1;TR0=1;void timer0() interrupt 1TR0=0;if(heat_flag=1)relay=1;Ledrun=1;elserelay=0;Ledrun=0;TH0=th0;TL0=tl0; TR0=1;void m
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 综合内容与测试教学设计-2025-2026学年高中物理粤教版选修2-3-粤教版2005
- 心脏的考试题及答案解析
- 2025年急诊医学抢救技能演练考题答案及解析
- 2025年全球公共卫生应急响应演练答案及解析
- 2025年老年病科老年病诊疗常规操作测评答案及解析
- 2025年护理实践护理实践常见问题分析答案及解析
- 中小学课外阅读作业设计与评估方案
- 工程勘察设计与施工合同书
- 双减政策背景下小学课业减负方案
- 苗圃基地合资合作合同范例
- 医院新入职员工礼仪培训
- 学校课后延时服务费分配细则
- 儿科停水停电应急预案演练脚本
- 2025年专业医疗机构感染控制与消毒作业外包服务合同书
- 高档小区宠物管理办法
- 2024注册安全工程师《历年计算题型》
- 2025年江苏省开发区运行现状及投资战略研究报告
- 少儿口才培训教案 课件
- 2024年药品监管业务知识技能竞赛考试题库(含答案)
- 试油hse管理制度
- 疼痛科质量控制管理
评论
0/150
提交评论