室内温度控制系统设计毕业论文

上传人:无*** 文档编号:41021768 上传时间:2021-11-18 格式:DOC 页数:44 大小:880.50KB
收藏 版权申诉 举报 下载
室内温度控制系统设计毕业论文_第1页
第1页 / 共44页
室内温度控制系统设计毕业论文_第2页
第2页 / 共44页
室内温度控制系统设计毕业论文_第3页
第3页 / 共44页
资源描述:

《室内温度控制系统设计毕业论文》由会员分享,可在线阅读,更多相关《室内温度控制系统设计毕业论文(44页珍藏版)》请在装配图网上搜索。

1、室内温度自动控制系统摘要在现代人类的生活环境中, 温度扮演着极其重要的角色。在人们的生产生活中, 无论生活在哪里, 从事什么工作,都要时时刻刻与温度打着交道。尤其是在18世纪工业革命以来,工业发展与农业生产都与能否掌握温度, 有着密不可分的联系。因此,温度的监测与控制与人类的生产生活有着十分重要的意义。我们通过STC12C5A60S2单片机和DALLAS公司DS18B20温度传感器对室内温度进行实时监测与控制实现温度的相对稳定具有极其重要的现实意义。通过该系统的设计制作实践对电子系统设计运动控制理论应用,研究新技术学习知识增强动手能力具有重要的现实意义。关键字:温度控制 DS18B20 单片机

2、 控制系统设计目录论文共 45 页1引言51.1项目概述51.2设计目的51.3设计任务51.4研究思路和方法62项目总体方案设计72.1系统原理框图与工作原理72.1.1国内外室温控制技术研究72.1.2系统原理框图设计73.系统硬件设计83.1电源模块83.2控制系统模块83.3温度检测93.3.1常用温度检测传感器93.3.2 DS18B20温度传感器电路113.4驱动模块123.4.1半桥驱动原理123.5升温模块123.6人机交互模块133.6.1 1602液晶显示133.6.2 红外遥控操作原理143.6.3红外接收电路144.系统软件设计154.1程序流程图154.2温度采集16

3、4.2.1DS18B20软件定义164.2.2温度的计算164.3红外遥控164.4电机的PWM控制224.5发热电阻丝的控制245.调试运行255.1温度传感器校准255.2温度调节时间265.3温度波动范围265.4系统参数276.系统优化286.1优化控制方式286.2美化外形结构286.3.扩展系统应用28结 论30致 谢31参考文献32附件一:原理图33附件二:源程序341引言1.1项目概述我们的项目开发针对的对象是收入水平不高,买不起空调,有希望能不受热受冷舒适的生活。并且本系统操作简单,成本低廉。本系统包括:温度采集、无线人机交互、自动控制、异常报警等四部分。1、温度采集温度采集

4、通过DS18B20将环境温度采集反馈回单片机并在显示界面上显示出来。2、无线人机交互使用者可以通过遥控器设置风速,温度等模式。3、自动控制通过使用者设置的风速、温度和采回来的环境温度通过单片机自动对加热和风速进行控制,起到自动控制环境温度的作用。4、异常报警对于在使用时产生异常,比如温度过高时,系统发起声光报警提示出现问题。1.2设计目的人们在日常的生活中,烈日炎炎的夏季会使人们感觉酷暑难耐,在白雪皑皑的冬季又会冷的瑟瑟发抖;于是人们就想买台空调,可是空调又太昂贵,对于大部分低收入阶层来说很难能承担起着部分费用。而夏日买的电风扇又在冬天又不能使用,冬日的电热炉有不能在热天使用;季节一交替就要将

5、其封存起来,不利于设备的有效使用,在存储时候又要占据多余的空间,带来了不少麻烦。而在这种情况下我们发现为什么不将风扇和电热炉有效结合起来再加上一些传感器和控制器组成一个温度自动控制系统,这样价格便宜而且一年四季都能使用。还能自动调节不用过多的人为干预,为人们营造一个舒适的环境。同时我们还发现我们发现这样一个控制系统也可以推广到大棚种植等一些对温度有要求的环境。这样有很好的市场前景和研究意义。1.3设计任务从生物学角度室内温度一般冬天不应低于12,夏天以不高于26为宜。同时,还要尽量做到各点温度均匀并保持时间上的恒定。平均温差(外墙内壁的温度与室内任何一处的温度差)不天于2,垂直温差(高差每米相

6、差的度数)不大于3。在这种情况下才是健康的温度。为了能够人们身体健康,又能满足价格低廉、操作简单、适合任何人群使用的原则本设计将采用红外无线遥控,和单片机自动控制采用风扇和发热丝来实现温度的调节。1.4研究思路和方法通过温度传感器DS18B20对室内温度进行采集,并实时显示在1602的液晶界面上,通过红外遥控器来调节模式和调节温度。并通过电机和电热丝冰块来实现对于室内温度的调节。在检测系统的执行性能,我们采用对其功耗进行测量,了解在各个模式下功耗进行测量。设置不同的温度记录系统调节到相应温度需要的时间,和系统在保持这个温度时候的振荡情况。2项目总体方案设计2.1系统原理框图与工作原理2.1.1

7、国内外室温控制技术研究从国内外温室控制技术的主流方式来看, 室内温度控制技术大致有三种方式。(1)手动控制。通过人对室内温度的观测, 凭借长期积累的经验和直觉推测及判断,手动调节温室内环境。但这种控制方式的劳动生产率较低,并不能实现室内温度的自动控制。(2)自动控制。这种控制系统需要计算机根据传感器的实际测量值与温控系统事先设定的目标值进行比较, 有计算机完成室内温度的控制过程。计算机自动控制的温室控制技术实现了自动化控制。但由于计算机自动控制的实现方式有很多种形式, 所以要根据设计要求及经费预算选择适合的计算机自动控制。(3)智能化控制。这是在温室自动控制技术和生产实践的基础上,构建专家系统

8、,的温室信息自动采集及智能控制。这种控制方式相对前两种控制方式成本较高。2.1.2系统原理框图设计根据室内温度控制系统设计要求, 温控自动控制系统,本系统由温度采集模块、电源模块以及人机交互模块、控制系统模块、升温模块、电机驱动模块六个部分组成。图1.系统框图3.系统硬件设计3.1电源模块本系统电源部份共分为三个模块5V直流、12V直流和220V交流,12V直流为风扇模块供电,220V交流为发热丝供电,5V为其与控制系统供电。12V由电源适配器产生,12V直流电经LM7805稳压后得到5V直流为控制系统供电。LM7805稳压模块电路如图: 图2.LM7805稳压模块3.2控制系统模块控制系统主

9、要由STC公司生产的12C5A60S2作为主控制芯片,STC12C5A60S2/AD/PWM系列单片机是宏晶科技生产的单时钟/机器周期(1T)的单片机,是高速/低功耗/超强抗干扰的新一代8051单片机,指令代码完全兼容传统8051,但速度快8-12倍。内部集成MAX810专用复位电路,2路PWM,8路高速10位A/D转换(250K/S),针对电机控制,强干扰场合。控制系统的最小系统如图二,图3:单片机最小系统3.3温度检测3.3.1常用温度检测传感器(1)热敏电阻式温度传感器热敏电阻是开发早、种类多、发展较成熟的敏感元器件热敏电阻由半导体陶瓷材料组成, 热敏电阻是用半导体材料,大多为负温度系数

10、,即阻值随温度增加而降低。温度变化会造成大的阻值改变,因此它是最灵敏的温度传感器。但热敏电阻的线性度极差,并且与生产工艺有很大关系。制造商给不出标准化的热敏电阻曲线。热敏电阻体积非常小,对温度变化的响应也快。但热敏电阻需要使用电流源,小尺寸也使它对自热误差极为敏感。利用的原理是温度引起电阻变化若电子和空穴的浓度分别为n、p,迁移率分别为n、p,则半导体的电导为:=q(nn+pp)。因为n、p、n、p都是依赖温度T的函数,所以电导是温度的函数,因此可由测量电导而推算出温度的高低,并能做出电阻-温度特性曲线这就是半导体热敏电阻的工作原理热敏电阻包括正温度系数(PTC)和负温度系数(NTC)热敏电阻

11、,以及临界温度热敏电阻(CTR)。图4.热敏电阻(2)热电阻式温度传感器热电阻(thermal resistor)是中低温区最常用的一种温度检测器。热电阻测温是基于金属导体的电阻值随温度的增加而增加这一特性来进行温度测量的。它的主要特点是测量精度高,性能稳定。其中铂热电阻的测量精确度是最高的,它不仅广泛应用于工业测温,而且被制成标准的基准仪。热电阻大都由纯金属材料制成,目前应用最多的是铂和铜,此外,现在已开始采用镍、锰和铑等材料制造热电阻。金属热电阻常用的感温材料种类较多,最常用的是铂丝。工业测量用金属热电阻材料除铂丝外,还有铜、镍、铁、铁镍等。图5.Pt100热电阻式温度传感器(3)热电偶式

12、温度传感器热电偶(thermocouple)是温度测量仪表中常用的测温元件,它直接测量温度,并把温度信号转换成热电动势信号,通过电气仪表(二次仪表)转换成被测介质的温度。各种热电偶的外形常因需要而极不相同,但是它们的基本结构却大致相同,通常由热电极、绝缘套保护管和接线盒等主要部分组成,通常和显示仪表、记录仪表及电子调节器配套使用。图6.热电偶(4)数字式温度传感器数字式温度传感器具有体积小、价格便宜操作方便的优点。本系统采用了美国DALLAS公司生产的单总线数字温度传感器,一线制器件独特的接口,使分布式温度检测得以简化。每片DS18B20都有唯一的产品号能够实现温度的多点检测。测量范围为-55

13、度+125度,12位的数字值分辨率为0.0625度,完全能够满足我们日常所需温度值。图7.数字式温度传感器DS18B203.3.2 DS18B20温度传感器电路我们温度检测部分采用了DS18B20进行温度采集,传感器采集电路如下图图8.DS18B20温度采集电路3.4驱动模块3.4.1半桥驱动原理制冷风扇为12V直流电机我们采用MOS管制作半桥进行驱动,图9.半桥驱动电路原理图10.IRF32053.5升温模块升温模块我们采用了电吹风发热丝采用220V交流供电,功率达到750W,可以升高到300度左右,我们通过电吹风将温度吹到空气中到达升高周围温度的作用。图11.发热丝3.6人机交互模块3.6

14、.1 1602液晶显示1602液晶也叫1602字符型液晶,它是一种专门用来显示字母、数字、符号等的点阵型液晶模块。它由若干个5X7或者5X11等点阵字符位组成,每个点阵字符位都可以显示一个字符,每位之间有一个点距的间隔,每行之间也有间隔,起到了字符间距和行间距的作用,正因为如此所以它不能很好地显示图形。通过1602液晶能够将我们采集的温度进行实时显示,并对其中的参数进行设置。 图12.1602液晶显示电路 图13.1602液晶3.6.2 红外遥控操作原理我们使用红外遥控器对系统进行设置。专用遥控器作为控制信号发出装置,当按下遥控器的设置键后,红外接收探头,接收红外信号频率为38kHz,周期约2

15、6s,一体化红外接收装置接收到遥控器发出的设置控制信号,然后将信号送到专用的解码芯片中进行解码,解码后将信号送到单片机,由单片机查表判断这个信号是不是设置信号,当确认是设置信号后,启动设置子程序,那么以后接收到的红外信号就可以对系统进行设置了。图14.红外一体式接收头HS00383.6.3红外接收电路红外接收电路连接到单片机中断口,当红外接收头接收到红外信号后引发中断对系统参数进行设置图15.红外接收电路4.系统软件设计4.1程序流程图开始红外外初始化PWM初始化1602初始化初始化工作状态温度是否正常采集温度风扇风速和发热丝工作状态Yes断开发热丝电能No显示状态会温度图16.程序设计流程图

16、4.2温度采集4.2.1DS18B20软件定义指令的宏定义定义#define skip_ROM 0xcc /跳过,允许总线控制器不用提供64位ROM编码就使用储存器操作命令#define read_ROM 0x33 /只有在总线上存在单只DS18B20时候才能使用,允许读出8位系列编码、唯一的序列号和8位CRC吗#define match_ROM 0x55 /匹配命令,后跟64位ROM序列,让总线控制器在多点上定位一只特定的DS1820#define search_ROM 0xf0 /初次启动系统不知道有多少只DS1820,搜索从机的64位编码#define alarm_searh 0xec

17、/只有最近一次测温后遇到符合报警条件的情况,DS1820才响应这条命令,报警条件在高于TH或低于TL /只要不掉电,警报一直保持,直到不为报警条件为止#define w_scrat 0x4e /写暂存存储器#define r_scrat 0xbe /读暂存存储器#define c_scrat 0x48 /复制暂存存储器#define c_temper 0x44 /温度变换#define r_EPROM 0xb8 /重新调出#define r_Power 0xb4 /读电源DS18B20的一次温度转换后,温度值储存在TH和TL中4.2.2温度的计算在软件中采用了12位存储温度值,最高位为符号位,

18、负温度S=1,正温度S=0,00AAH为+85C,0032H为+25C,FF92H为-55C。TL = R_byte();/将低位温度值对出TH = R_byte(); /将高位温度值对出temp = (TL | (TH 8);/将温度值存在一个unsigned int型的16位变量中temp = (temp * 625);将数据转换为实际温度值4.3红外遥控红外的遥控器的编码为引导码、低8位用户编码、高8位用户编码、8位数据码、8位键数据码的反码。通过一个红外解码器连接在单片机的中断口,只要一有数据就会触发中断,单片机就会读取数据,判断数据是不是本系统遥控器发出的。通过检验读出操作按键的编码

19、值,在程序中比较编码值判断进行的相应操作并执行。void IR_IN() interrupt 0 uchar j,k,N=0; EX0 = 0; delay_m(15); if (IRIN=1) EX0 =1; return; /确认IR信号出现 while (!IRIN) /等IR变为高电平,跳过9ms的前导低电平信号。 delay_m(1); for (j=0;j4;j+) /收集四组数据 for (k=0;k=30) EX0=1; return; /0.14ms计数过长自动离开。 /高电平计数完毕 IRCOMj=IRCOMj 1; /数据最高位补“0” if (N=8) IRCOMj =

20、 IRCOMj | 0x80; /数据最高位补“1” N=0; /end for k /end for j if (IRCOM2!=IRCOM3) EX0=1; return; switch(IRCOM2 = 0x47) /按mode键进入模式调节,按一下调节风速,按两下调节温度范围, /按三下返回工作模式case 1:N1+; if(N1 = 1)L1602_string(1, 1, LCD_ID_3);L1602_string(2, 1, LCD_ID_4);Tplayer(11, FF);else if(N1 = 2)L1602_string(1, 1, LCD_ID_5);L1602_

21、string(2, 1, LCD_ID_6);Tplayer(4, TTi);Tplayer(12, TTm);elseN1 = 0;IRCOM2 = 0xaa;break;default :break;if(N1 != 0)switch(IRCOM2)/如果进入调节模式,调节温度,与风速case 0x15 : Ch+;/光标所在位置的标志位控制的设置if(Ch 2)Ch = 1;break;case 0x07 : Ch-;/光标所在位置的标志位控制的设置if(Ch 1)Ch = 2;break;case 0x40 : if(N1 = 2 & Ch = 1)/如果当按下Ch+键在温度调节模式调

22、节最低温度事数值+if(TTi = TTm)TTi = 0;if(N1 = 2 & Ch = 2)if(TTm 40)TTm = 0;if(TTi 40)TTi = 0; break; case 0x44 : /按下CH键if(N1 = 2 & Ch = 1) if(TTi TTi)TTm-;Tplayer(12, TTm);if(N1 = 1)FF-;Dianji();Fare();if(TTm 1)TTm = 40;if(TTi 4)FF = 1;CCAP0H = CCAP0L = 0X44;Tplayer(11, FF);else if(N1 = 1 & FF 1)FF = 4;CCAP

23、0H = CCAP0L = 0X00;Tplayer(11, FF); 4.5发热电阻丝的控制通过控制继电器的通断来实现发热电阻丝的工作发热这样程序就通过给驱动继电器给高低电平来实现注:采集温度,当温度发生异常声光报警,加热是红灯提示,不发热时黄灯提示,并显示实时温度下面是实现的共功能函数void Fare()if(TT = TTi & TT = TTm)JRE = 1;在工作是的工作状态的LED灯指示和声光报警程序通过下面的函数来实现如果温度void Xianshi()delay_m(130);TT = DS18b() / 10000;/采集温度if(TT = 80) /R如果温度大于100

24、度发出声光警报BEEP = 0;elseBEEP = 1;if(TT = TTm) HT = 0;LT = 1;elseLT = 0;HT = 1;if(!N1)M_D(7, TT);5.调试运行5.1温度传感器校准我们通过DS18B20进行温度采集,并通过1602液晶进行显示,为了提高我们采集温度的精度与可信度我们用水银温度计对温度进行了校准,由于我们对室内温度进行测量人对温度在一度范围内感知不明显我们在测量温度时只对温度的整数部分进行了显示;在校准过程中我们认为水银温度计的温度为标准温度;同时我们对成都地区的温度为例进行调节温度变化范围是050,我们对0到56度范围内的温度进行了校准,每次

25、温度递增7度由于温度不宜控制在用温度计测量时会有小数部分不是严格的递增7度结果如下表1:表1.实际温度与系统测得温度比较实际温度(度)072143211285353424492561系统测得温度(度)0714212835424956通过数据表格我们可以发现系统测得温度与实际温度存在一度的误差,原因是因为人们对一度温度变化不太敏感我们只对温度整数部分进行了显示而未显示小数部分造成的,。由于我们对室内温度进行调节温度要求不高不要求精确测量。理论上温度能够误差能够控制在-0.0625度0.0625度范围内。5.2温度调节时间为了确定我们的系统能否对目标范围内的温度进行调节,我们设定目标温度然后进行了

26、调节,我们规定如果系统能够在60S时间内进行控制达到稳定状态就表示调节成功否则失败进行报警。下表为调节时间表2.上升到目标温度所需时间原始温度(度)设定温度(度)第一次完成时间(s)第二次完成时间(s)第三次完成时间(s)平均时间(S)192615111714.3192914.91717.116.3193317.217.716.517.2通过表格我们发现在目标温度在可控范围内是能够在20S内达到目标温度,远小于60S我们认为我们设计的系统温度控制是成功的。5.3温度波动范围为了检测温度是否能够在我们的目标范围内我们进行调节我们选用九组实验数据进行实验温度递增5度,统计实验结果如下:表3.设定温

27、度波动情况设定温度(度)最小温度(度)稳定温度(度)最大温度(度)000154561091011151415162019202125242526302930313534353640394041通过表格我们发现实际温度会在设定温度左右一度进行波动,我们分析波动是原因首先我们只对温度整数部分进行了显示造成的即使只有零点几度也会使温度在目标左右一度波动。其次,由于传感器温度采集的滞后性实际温度已经达到目标温度但我采集温度还没有到达使温度会有一定量的超调。同时,我们采用的散热丝也会有余热不会在我们一停止加热就不加热这也会导致继续加热或制冷给系统带来一定的超调。5.4系统参数工作参数:额定电压 220V

28、,制冷范围:1m*1m*1m,发热丝额定功率750W控制部分各个档位功耗如表四,表四.控制系统部分功耗档位电流(mA)电压(V)功率(w)平均功率(w)01425125.102170122.0410.2603140121.6804120121.446.系统优化6.1优化控制方式本系统出于设计简洁功能突出,使用方便,经济廉价,适用于收入不高的人群的需求。我们采用的继电器控制发热电阻丝的工作,只能通过继电器的通断来决定发热电阻丝的工作状态。发热量很难控制,这样对于温度的控制有滞后给系统调节带来振荡,并且继电器导通电流比较小限制了发热丝发热量,同时由于继电器采用机械触点寿命短影响系统稳定性。为了避免

29、这些问题的发生可采用晶闸管来作为电阻丝的驱动,这样不仅可以有效提高发热丝发热量也,可以对发热电阻的发热量进行控制和调节,再加上PID算法的控制就能提高系统的响应速度,降低调节时间,减少系统振荡增强系统稳定性。6.2美化外形结构本系统由于资金技术的限制在外形结构上不是很令人满意,发热丝并没有进行相应的隔离保护存在一定的安全隐患。在今后结构上可以对外形的结构进行优化,让其能有简洁流畅的外观和艺术气息,提升产品的产品形象;有利于消费者对其的认同感和使用欲望。同时要进行相应的隔离保护去除安全隐患。6.3.扩展系统应用本系统为小范围温度控制设计,只对单点温度进行了测量与本地显示在实际的生产应用过程中存在

30、很多不足,为提高本系统适用能力扩展系统应用以适应大棚、仓库、粮仓等不同需求我们可通过一下方面进行改进。(1) 温度多点测量在实际的生产生活中往往需要对很大一片空间进行温度控制,而对某一点的温度进行采集完全没有参考价值,对实际应用不够合理。为满足这样的需求我们可以用多个温度传感器利用RFID组成传感器网络对这一片区域进行温度检测再控制多个加热装置分别进行加热或制冷。这样可以解决温度控制范围较小的问题。(2) 温度控制系统的远程管理本系统只对温度进行了本地显示这对我们生产生活带来不便我们要了解一片空间的温度就需要到现场查看不利于提议管理。在程序设计中可以采用一些小型的嵌入式操作系统(比如uCOS-

31、II、freertos等),提高其的实时性能,并能加强多任务工作时良好的工作稳定性。同时在其基础上建立文件系统和增加以太网接口从而能将使用数据储存起来也能同步到云端,通过基于移动客户端或PC应用端实现远程控制与其他的设备连接实现智能家具的功能。(3) 完善制冷功能本系统用于制冷现在通过吹风的方式并不能将温度降低到比室外温度低很多,这就限制了系统的应用范围。为了满足人们对制冷的需求提高系统适应性能我们可以为本系统加装制冷装置,这样就可以让温度随我们的要求变化了。通过这三方面的改进将大大增加温度控制范围、优化用户体验、完善系统功能对粮仓、大棚、长途列车等的温度控制用较好的应用前景温度控制是人们利用

32、科技改造自然的典型,我们这次的工程实践只是做了一个小小的尝试,对温度控制方面还用很多不了解的地方还用很多需要学习的地方。我想通过我们的不断努力不断学习我们将更好的控制温度更好的让科技服务于大众。结 论本次工程实践的训练我们设计的是室内温度智能控制系统。通过实践我们完成了对温度的精确采集、实时显示、稳定控制,实现了对室内温度的有效控制对改善人们的生产生活具有重要意义。这次实践我们从需求分析、方案确定、电路设计制作、程序设计、系统调试一步步走来完成了对测控系统的设计与制作,对一个完整的测控系统的各个环节有了新的认识。培养了工程实践能力与创新能力,增强了动手能力。我们通过此次实践验证了自动控制理论,

33、提出了一种切实可行的室内温度自动控制系统解决方案。对我们的生活和工业生产具有积极作用。致 谢本课程设计的完成是在我们的指导老师严寒冰老师的细心指导下进行的。在每次设计遇到问题时老师不辞辛苦的讲解才使得我们的设计顺利的进行。从设计的选题到资料的搜集直至最后设计的修改的整个过程中,花费了严老师很多的宝贵时间和精力,在此向老师表示衷心地感谢!老师严谨的治学态度,开拓进取的精神和高度的责任心都将使学生受益终生!同时我们的设计也得到了控制工程学院测控教研室各位老师的大力支持为我们提出了宝贵的改进意见使我们的设计能够日臻完善,在这里我们表示衷心的感谢。 还要感谢和我们一小组的同学,在我们平时设计中和我们一

34、起探讨问题,大家分工合作才有了今天的设计成果没有你们的帮助我们不可能这样顺利地结稿,在此表示深深的谢意。参考文献1.郑郁正,孟芳,文斌.单片微型计算机原理及接口技术.北京:高等教育出版社.2012.72.胡向东,刘京诚,余成波.传感器与检测技术.北京:机械工业出版社,2009.13 孙余凯.典型自动控制电路识图与应用快捷入门.北京:电子工业出版社,2010.84 赵家贵.新编传感器电路设计手册.北京:中国计量出版社,2002.9。附件附件一:原理图附件二:源程序#include #include #include #include #include #include #include ucha

35、r LCD_ID_116 = Temper:-C ;uchar LCD_ID_216 = Wind speed:- ;uchar LCD_ID_316 = Spe regul mode ;uchar LCD_ID_416 = Wind speed:- ;uchar LCD_ID_516 = Temper mode ;uchar LCD_ID_616 = min:-C max:-C;sbit IRIN = P32; /红外接收器数据线sbit BEEP = P33; /蜂鸣器驱动线sbit HT = P12; /高温指示灯驱动sbit LT = P11; /低温指示灯驱动sbit JRE = P

36、14;sbit KEY = P15; /功能选择模式按键sbit UP = P16; /设置温度+sbit Dwon = P17; /设置温度-sbit S1 = P30;sbit S2 = P16;sbit S3 = P15;void Xianshi();void Fare();void Jianpan();void Dianji();void delay1(int ms) unsigned char y; while(ms-) for(y = 0; y250; y+) _nop_(); _nop_(); _nop_(); _nop_(); unsigned long int DS18b()

37、;uchar IRCOM5;uchar FF = 1, N1 = 0, Ch = 1, TTi = 20, TTm = 26;uchar TT = 30;void IR_INIT()IE = 0x81; /允许总中断,使能INT0外部中断TCON = 0x01; /触发方式为脉冲负边沿触发void delay_m(uchar x);void PWM_Init(void);void Tplayer(uchar add, unsigned long int TT)/第二行显示uchar shi, ge;shi = TT / 10;ge = TT % 10;write_com(0x80+0x40+a

38、dd);write_date(0x30+shi);write_date(0x30+ge); void M_D(uchar add, unsigned long int time) /第一行显示uchar shi, ge;shi = time / 10;ge = time % 10;write_com(0x80+add);write_date(0x30+shi);write_date(0x30+ge);void main()PWM_Init();CCAP0H = CCAP0L = 0X00;BEEP = 0;HT = 0;LT = 1;IR_INIT();IRIN=1; /hongI/O口初始化

39、 delay1(10); /延时 L1602_Init(); /初始化LCD L1602_string(1, 1, LCD_ID_1);L1602_string(2, 1, LCD_ID_2);M_D(7, TT);Tplayer(11, FF);Xianshi();while(1)Xianshi();Fare();/起初设想使用PWM控制,但是由于使用的继电器只能对低频做出响应实际这个函数是没有实质的意义Jianpan();if(Ch = 2 & N1 = 2)write_com(0x80+0x40+13);write_com(0x0f);if(Ch = 1 & N1 = 2)write_c

40、om(0x80+0x40+5);write_com(0x0f);if(N1 != 2)write_com(0x0c);void IR_IN() interrupt 0 uchar j,k,N=0; EX0 = 0; delay_m(15); if (IRIN=1) EX0 =1; return; /确认IR信号出现 while (!IRIN) /等IR变为高电平,跳过9ms的前导低电平信号。 delay_m(1); for (j=0;j4;j+) /收集四组数据 for (k=0;k=30) EX0=1; return; /0.14ms计数过长自动离开。 /高电平计数完毕 IRCOMj=IRC

41、OMj 1; /数据最高位补“0” if (N=8) IRCOMj = IRCOMj | 0x80; /数据最高位补“1” N=0; /end for k /end for j if (IRCOM2!=IRCOM3) EX0=1; return; switch(IRCOM2 = 0x47) /按mode键进入模式调节,按一下调节风速,按两下调节温度范围, /按三下返回工作模式case 1:N1+; if(N1 = 1)L1602_string(1, 1, LCD_ID_3);L1602_string(2, 1, LCD_ID_4);Tplayer(11, FF);else if(N1 = 2)

42、L1602_string(1, 1, LCD_ID_5);L1602_string(2, 1, LCD_ID_6);Tplayer(4, TTi);Tplayer(12, TTm);elseN1 = 0;IRCOM2 = 0xaa;break;default :break;if(N1 != 0)switch(IRCOM2)/如果进入调节模式,调节温度,与风速case 0x15 : Ch+;/光标所在位置的标志位控制的设置if(Ch 2)Ch = 1;break;case 0x07 : Ch-;/光标所在位置的标志位控制的设置if(Ch 1)Ch = 2;break;case 0x40 : if

43、(N1 = 2 & Ch = 1)/如果当按下Ch+键在温度调节模式调节最低温度事数值+if(TTi = TTm)TTi = 0;if(N1 = 2 & Ch = 2)if(TTm 40)TTm = 0;if(TTi 40)TTi = 0; break; case 0x44 : /按下CH键if(N1 = 2 & Ch = 1) if(TTi TTi)TTm-;Tplayer(12, TTm);if(N1 = 1)FF-;Dianji();/if(N1 = 2)/Fare();if(TTm 1)TTm = 40;if(TTi 0;b-);/*函数功能:采集温度,当温度发生异常声光报警,加热是红灯提示,不发热时黄灯提示,并显示实时温度输入:无输出:无*/void Xianshi()delay_m(130);TT = DS18b() / 10000;/采集温度if(TT = 80) /R如果温度大于100度发出声光警报BEEP = 0;elseBEEP = 1;if(TT = TTm) HT = 0;LT = 1;elseLT = 0;HT = 1;if(!N1)M_D(7, TT);/*函数功能:通过P1.4口调节发热电阻丝的状态输入:无输出:无*/void Fare()if(TT = TTi & TT

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

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!