基于51单片机的智能晾衣架系统设计

1.功能介绍
设计基于51单片机的智能晾衣架。主要功能如下:
(1)控制晾衣架的升降。
(2)具有限位开关功能。
(3)具有无线遥控功能。
(4)能够指示运行状态。
(5)具有智能模式,可以根据环境光线控制晾衣架的升降
(6)具有智能模式,可以根据环境湿度控制晾衣架的升降

2.硬件设计
(1)总体硬件框图
原理:采用8位的STC89C51单片机做控制器,程序采用C语言编程。利用直流电机正反转,实现控制晾衣架的开关。无线遥控是由SC2262/SC2272 编码解码芯片组成的无线发送接收模块,通过SC2272接收输出端D0、D1、D2、D3输出信号控制单片机,再利用单片机控制继电器的吸和驱动直流电机的正反转,实现晾衣架的开合,同时用行程开关检测晾衣架位置,实现晾衣架的防过卷。
基于51单片机的智能晾衣架系统设计_第1张图片
(2)单片机最小系统
单片机最小系统主要由单片机、时钟电路、复位电路组成。
基于51单片机的智能晾衣架系统设计_第2张图片
(3)无线遥控电路
无线遥控主要由两部分组成,一为无线遥控电路,二为无线解码电路。
a.无线遥控电路
遥控电路采用sc2262芯片作为编码器,并采用用2V电池供电,按下按键后电池的正极才会和芯片和发射模块的电源端连通并发出信号,这样设计也是为了保证电池的耐用。遥控电路的作用是将每个按键定义的码值编码成无线传输信号,并通过红外发光管将信号发送出去。
基于51单片机的智能晾衣架系统设计_第3张图片
b.无线解码电路
解码电路由sc2272芯片作为解码器,接收电路输出端通过npn三极管9013将输出的高电平转变成低电平,单片机可以更好的识别低电平变化。解码电路的作用为接收红外无线信号,将光信号解析成电信号,并传送给单片机
基于51单片机的智能晾衣架系统设计_第4张图片
(4)光线检测电路
光纤检测电路采用了光敏传感器,通过光敏电阻的特性,光线暗时电阻变大,三极管的基极电压变低,三极管截止,发射极被10k电阻拉低电平,输出低电平;光线亮时电阻变小,三极管的基极电压变高,三极管导通,发射极被电源拉高,输出高电平。
基于51单片机的智能晾衣架系统设计_第5张图片
(5)温湿度检测传感器
温湿度检测传感器采用了常用的DHT11数字传感器,它应用专用的数字模块采集技术和温湿度传感技术,具有极高的可靠性与卓越的长期稳定性,而且应用广泛,编程简单。
基于51单片机的智能晾衣架系统设计_第6张图片
(6)电机正反转控制电路
采用两个继电器的吸和状态控制直流电动机的旋转方向,带动晾衣架的开合,两个继电器采用5V继电器,通过9012三极管驱动继电器的吸和,原理图如下。
基于51单片机的智能晾衣架系统设计_第7张图片
(7)整体硬件原理图
基于51单片机的智能晾衣架系统设计_第8张图片
3.软件设计
(1)软件流程图
基于51单片机的智能晾衣架系统设计_第9张图片
(2)主函数代码
由于源码比较多,想详细了解源码可进行下载。

void main()//主函数 
{
	uc testnum;
	light=0;
	buzz=1;
	led_zhishi=0;
	Timer0_Init();
	while(1)//进入死循环
	{
		work();//调用工作函数 
		display();
		if (FlagStartRH == 1)	 //温湿度转换标志检查
		{
            testnum = RH();
 			FlagStartRH = 0;
			humidity = U8RH_data_H;	 //读出湿度,只取整数部分
			if(humidity>=80)
			flag_HH=1;
			else 
			flag_HH=0;
			TR0 = 1;
		}
		display();
	}
}

//定时器0中断
void Timer0_ISR (void) interrupt 1 using 0
{
	ui RHCounter;
	TL0 = 0xb0;
	TH0 = 0x3c;     //定时器赋予初值

	//每5秒钟启动一次温湿度转换
    RHCounter ++;
    if (RHCounter >= 20)
    {
       FlagStartRH = 1;
	   RHCounter = 0;
	   TR0=0;
    }
}

源码+电路图 下载:关注公众号,首页回复“晾衣架”获取资料
在这里插入图片描述

你可能感兴趣的:(单片机应用)