室内温度报警控制系统设计
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
室内温度报警控制系统
设计
TYYGROUP system office room 【TYYUA16H-TYY-TYYYUA8Q8-
课程设计说明书
设计名称:计算机控制技术课程设计
题目:室内温度报警控制系统设计
学生姓名:
专业:电气工程与自动化
班级:11自动化(2)
学号:XXXXXXXXXXXX
指导教师:陈广义
日期:年月日
课程设计任务书
专业年级班
一、设计题目
室内温度报警控制系统设计
二、主要内容
设计基于DS18B20的数字式室内变电站温度控制系统,控制程序主要包括主程序、读出温度子程序、按键子程序、控制风机子程序等。要求能检测、显示及通过控制排气风机来降低室内温度。
三、具体要求
1.对室内温度进行检测及控制。温度显示范围:゜C~+゜C,精度误差在゜C以内
2.温度控制范围:室温~60゜C
3.能设置温度上限,下限,并可随时修改
4.LED数码管直读显示实测温度,设置温度上限温度,下限温度(用键控制设定温度)
5.温度等于上限时,报警;根据所测温度所在的界限控制三台风机的运行状态。
6.温度控制(风机)启/停键控制系统的启动和停止
四、进度安排
1.课程设计报告。
2.程序清单(电子版)
六、总评成绩
指导教师签名日期年月日
系主任审核日期年月日
目录
1、设计方案论述
1.1简述
1.2控制方法介绍
1.3设计功能介绍
2、控制系统设计
2.1系统硬件电路设计
2.2.1电路图、各部分的作用说明
2.1.2元件、器件介绍
2.2系统软件设计
2.2.1流程图
2.2.2说明
3、系统调试
过程叙述
4、总结
5、参考文献
1、设计方案论述
1.1简述
本课题为室内温度报警控制系统设计:由于控制对象为室内空气、有较大的流动性,且对温度控制的精度要求不高,所以利用简单开关式温度控制方法。
该系统利用数字式温度传感器测温,采用温度开关控制算法来控制三台风机的工作状态,来达到调节室内温度的目的。
1.2控制方法介绍
简单的开关式温度控制:通过设定温度上、下限温度进行简单的开关报警与控制。这种方法的缺点是不能进行温度的精确控制,适合于要求不高的场合。
1.3设计功能介绍
显示功能:前三个数管在非设定状态时显示三台风机的运行状态,第三个数码管在设定状态时用来指示现在修改的参数。后三个数码管显示测量温度值并在设定状态期间显示上、中、下三个不同的温度设定值。
温度设定功能:当按键一第一次被按下就进入温度下限设定状态,第三个数码管显示最低一横指示现在在修改下限。后三个数码管则显示当前下限值。进入设定状态后,通过按第二、三个键就可以在允许的范围内设定下限或上限值。中限值由上下限之和除2产生。按键一第二次被按下则显示中限温度但不可进行修改,第三个数码管显示中间一横指示现在在显示中限;按键一第三次被按下则显示上限值,第三个数码管显示中间一横指示当前在修改上限。
温度控制功能:温度控制功能:本系统有三路继电器输出,分别控制三组电机的启动与关闭。测量温度T与设定温度T上、T中、T下以及电机工作状态关系如下:当T>T上时,三台电机同时工作。
当T中 当T下 当T 0-全部停机,I-1台风机工作,II-2台风机工作,III-3台风机工作。 但为了防止风机频繁切换,所以当温度从一个界限降到另一个界限时并不立即关掉一台风机,而是要降到下一个界限减一度的时候才关掉一台风机。 2、控制系统设计 系统硬件电路设计 2.1.1电路图、各部分的作用说明 按键电路由四个按键组成用于温度的设定、温控系统的开关。 显示电路由六个数码管组成用于各种数据及状态的显示。 而测温电路主要由DS18B20组成。 2.1.2元件、器件介绍 本电路的单片机采用Atmel公司的AT89S52单片机。最小系统该单片机、按键和显示组成。 而温度传感器采用的是DS18B20。DS18B20采用数字化技术,能以数字形式直接输出被测温度值,具有测温误差小、分辨力高、抗干扰能力强、能够远程传输数据、用户可设定温度上、下限、有越限自动报警功能、自带串行总线接口等优点,适配各种微控制器(MCU),含微处理器(uP)和单片机(uC),是研制和开发具有高性价比的新一代温度测控系统所必不可少的核心器件。 系统软件设计 2.2.1流程图 1、总流程图 2、温控程序流程图 3、读键程序流程图 4、按键判断流程图 5、选择键处理流程图 6、加键处理流程图 7、减键处理流程图 8、温控控制键处理流程图 9、Time0中断服务程序流程图 2.2.2说明 系统开机首先要进行初始化,包括个变量的初始化和中断程序的初始化,最后开系统中断开始工作。 本系统的中断服务程序的主要工作是更新各个时间标志和调用显示程序。根据设定是每1毫秒发生一次中断。 本系统的测温间隔由DEF_CHECK_INTERVAL这个预定义设定。具体时间间隔是DEF_CHECK_INTERVAL*250毫秒。如果测温时间间隔已到相应的标志位 flag_check_interval就要置位以便进入测温程序。 而检测按键的间隔则由flag_50ms这个为变量来控制。每当这个标志置1便可以进入检测按键程序。 检测按键程序采用了软件去抖动,就是第一次检测到有按键被按下后就保存该键值并开始计时50毫秒,50毫秒已到就再次检测按键,如果这次检测到的按键与已保存的键值相等就确定该键值是用户按下产生的。然后在把这个键值和上次有效键值比较,如果相等就是说这个是重复键。为了预防用户按下按键不放参数变化过快的现象,我们还要判断100毫秒标志位有没有置位,如果100毫秒标志为1则把这个键值传送个按键判断程序,如果为0则当无效键处理。如果新建值和上次有效键键值不相等,就是说这个键是新键,马上把这个键值传送个按键判断程序。 按键判断程序接收到键值就根据该键值调用相应的按键处理程序。 温控程序则是以温度和现在开动风机的数量来控制三台风机的状态。 显示程序负责人机对话。前三个数管在非设定状态时显示三台风机的运行状态,第三个数码管在设定状态时用来指示现在修改的参数。后三个数码管显示测量温度值并在设定状态期间显示上、中、下三个不同的温度设定值。 3、系统调试 在确定硬件能正常工作后系统调试工作主要就是软件的调试了。 我们首先调试显示程序。从最简单的单个数码管的显示开始,然后逐步向前。而不是把整个显示程序写好在调试。这样可能会有很多错误,一下子就被吓得没信心了。 显示程序调试成功后我们接着就可以进行按键程序的编写及调试了。也是从最简单的工作做起,就是直接检测有没有按键,成功后再加软件去抖动,然后再加重复键和新键的处理程序。一步一步,最后一个较完美的按键程序就完成了。 做完按键我们就分开两路一些同学搞DS18B20的程序,另外一些同学则负责温度控制程序。但是还没有测出温度是没有温度值的,所以温控程序的开发就用读随机的方法模拟“可变的温度值”。