采用8051单片机的变化空调机智能控制的设计与实现
扫描二维码
随时随地手机看文章
本文阐述了用8051单片机根据环境温度的变化实现空调机智能控制的设计方法。
空调机广泛应用于日常生活中。本文充分挖掘了单片机系统稳定、成本低、适宜于工业控制的特点,实现了用8051单片机根据室温变化,智能控制空气压缩机,以达到调节室温的目的。本系统具有精度高、易于控制、成本低等优点。
系统原理与硬件电路
空调机的控制系统由开关键、温度下调键、温度上调键组成。按下开关键后,系统检测环境温度并显示。温度上调键和温度下调键用于设定温度,根据实际需要,温度可调范围为10~35℃,当第一次按下任意设定键时都显示最高温度35℃,按下相应的键可以依次增加或减少1℃,并可以循环显示:如当上调到35℃时,再按一次上调温度键,则返回到最低设定温度10℃。当设定温度低于系统检测到的环境温度时,压缩机开始运转,使室温降低;当室温低于设定温度,压缩机停止运转;当按下温度设定键10秒后,自动解除温度设定模式,回到室温显示模式。采用定时器中断的方式,每隔50ms自动比较室温和设定温度,以决定压缩机的启动或者关闭,系统原理图如下图所示。
本系统采用8051单片机作为核心控制芯片,外围部件由显示设备、石英晶振、键盘电路、模数转换设备、温度传感器、压缩机组成。温度传感器选择AD590集成温度传感器,模数转换设备采用8位CMOS逐次逼近型A/D转换器ADC0804,温度用两个七段BCD数码管显示。P3.0连接压缩机,并通过置位复位控制其开关。各部分连接的电路如下图所示。
1.温度传感器AD590
AD590是美国Analog DevICes公司生产的二端式集成温度-电流传感器,具有体积小、重量轻、线性度好、性能稳定等优点,它的测量范围-55~150℃;线性电流输出±1A/K;线性度好,满刻度范围±O_3℃;电源电压范围4~30V,当电源电压在5-10v之间,电压稳定度为1%时,所产生的误差只有±0.01℃;电阻采用激光修刻产生,使在±25℃(298K),器件输出±298.2μA。
使用时,先调AD590可变电阻R,使其输出电流通过10k电阻,从而获得10mV/K的电压,AD590测量的是绝对温度,为测出摄氏温度,须使AD590输出偏置为2.732V,使基准电压为25V,这样通过两个串联电阻R2=9.1kΩ,R3=1kΩ时,对+25V电压分压,从而获得2.73V的偏置,A为增益可调数据放大器,输出电压VT=10mV/℃,调节放大器增益,可获得所需要的输出电压,AD590简化电路如下图所示。
2.A/D转换器ADG0804
ADC0804是8位CMOS逐次逼近型A/D转换器,转换时间100μs,工作温度0~70℃,完全可以满足系统要求。其中,引脚RD、WR和单片机RD、WR相连,CS直接接地,ADC0804被选中,Vin(+)连接AD590,vin(一)和AGND接地,其他引脚连接情况可参考系统电路图。ADC0804直接和8051的P0口相连,其地址为#OFFH。
3.控制电路
采用8051的P2.1连接开关键,P2.2和P2.3分别连接上调和下调温度键。当某一按键被软件置零时,引发相应动作。
4.显示电路
用8051的P1口连接两个七段BCD共阳极数码管。由于连接的数码管只有两个,因此不用扩展P1口,用两个BcD七段显示译码器74Ls47直接驱动共阳极数码管。因此可以把要显示的数据直接送P1口,作为信号驱动数码管,就可以显示相应字形,使用方便。
软件设计
用单片机内部RAM存储区中#30H存放设定温度,#31H存放环境温度。
1.温度转换及显示原理
由于ADC0804输出最高值为#FFH,本电路实际测量最大温度T=51℃,ADC0804的转换值和温度关系为:FFH*x=51,则x=0.2。环境温度TO的值为:转换值乘以0.2,在实际应用中可用除以5来完成,若余数为3或4,则进位,若余数为0、1或2,则舍去。测量误差≤2/5=0.4℃。
2.中断程序
系统上电复位后,初始化TIMEO,选择定时方式1,并送初值#OE40AH给TO,使TO每隔50ms产生一次中断,通过比较室温和设定温度,以决定P3.0口的通断。
3.系统防止干扰的软件实现
在实际工作中,由于电磁场或电源、机械等干扰,可能使系统发生异常,导致程序在执行过程中“跑飞”,使系统工作出现混乱,后果不堪设想。为防止意外发生,尽量减小由此造成的不良影响,尽快使系统恢复正常工作,本系统采用软件方法,加入程序陷阱。基本原理为:在内部ROM存储空间填满长跳转指令LJMP和空操作指令NOP,一旦程序乱飞到该区,就会重新返回主程序入口,使系统迅速恢复正常工作。主程序和TO中断流程分别如下图所示。
结论
本文用8051系列单片机实现了对空调机的控制,系统稳定可靠,使用方便。用软件实现系统监控,节约成本,易于实现,基本能够满足日常生活需要。