用单片机通过继电器来控制电热水器的实验
用单片机设计一个电路来控制家用电器中的电热水器。家用电热水器使用的是交流220V电源,单片机的I/0口不能直接控制这样高的电压,必须通过外接电路。下面简要介绍通过最常用的电磁式继电器的控制电路。
电磁式继电器一般由铁芯、线圈、衔铁、触点**等组成的。只要在线圈两端加上一定的电压,线圈中就会流过电流,从而产生电磁效应,衔铁就会在电磁力吸引的作用下克服返回弹簧的拉力吸向铁芯,从而带动衔铁的动触点与静触点吸合,从而接通原来断开的电路:当线圈断电后,电磁的吸力也随之消失,衔铁就会在弹簧的反作用力返回原来的位置,使动触点与静触点断开。这样吸合、释放,从而达到了在电路中的导通、切断的目的。
继电器通常应用于自动控制电路中,它实际上是用较小的电压和电流去控制较大的电压和电流的一种“自动开关”。
故在电路中起着自动调节、安全保护、转换电路等作用。在本应用中,由于单片机属于低压小电流器件,所以通过继电器达到控制高压大电流的电热水器的目的。 以上电路中,向单片机的P1.7口写出“1”(高电平5V),三极管Q1截止,+5V加不到继电器的线包线圈,继电器不吸合,220V与电热水器不接通,所以电热水器不加热:向单片机的I/0口写出“0”(低电平OV),三极管Q1导通,+5V通过三极管8550加到继电器线包线圈,继电器吸合,220V接通电热水器,这时电灯开始加热。
在下图电路继电器选型时,要根据电热水器功率选择触点电流足够大的型号。例如1000瓦的电热水器,工作电流大约5A,所以要选择触点电流:远大于5A的继电器型号(比如1OA的型号)o进行图3所示控制220V电热水器的实验时,要注意安全,初学者一定要在专业人员的指导下进行,防止触电事故的发生。
如果让单片机同时连接上图和下图两个电路,用P2.0读取按键,用P1.7控制继电器。写一个程序,要求按键被按下一次,电热水器加热1小时左右。程序如下: #include<reg52.h>
sbitRelay=P1^7;//继电器的控制变量Relay定义为P1.7口
sbitKey=P2^O;//按键的状态变量Key定义为P2.0口
//主程序
voiDMAin(void)
{
unsignedinti;
for(;;){
if(Key==0){//检测按键是否按下,如果按下
Key=0,执行以下程序
Relay=0;//使继电器吸合,电热水器开始加热
for(i=0;i<3600;i++){//执行3600次,每次1
秒,共1小时
delay();//延时0.5秒
delay();//延时0.5秒
}
Relay=1://延时时间到,使继电器释放断开触点,
//电热水器结束加热
}
}
我国许多地方的电费,已经开始对峰、谷时间段实行不同的电价。在用电高峰期实行高电价,而在用电低峰(如深夜]实行非常低的电价。
如果我们用时钟芯片设计一个电路,用单片机读取实时时钟(也是通过I/0口读取),同时通过下图电路中的继电器控制家时里的电热水器,使电热水器自动在电价低廉的夜间加热,电价高昂的白天断开,就能够省出相当多的电费了。
|