基于单片机的晾衣架控制系统设计

本文详细描述了一款基于单片机的晾衣架控制系统,包括系统方案论证(两种方案对比后选择方案二)、工作原理、硬件电路设计(含单片机、按键、光线检测、雨滴传感器等)、软件编程和实际应用。系统能根据环境变化自动控制晾衣架伸缩,实现智能晾晒和收衣物功能。
摘要由CSDN通过智能技术生成

博主主页:单片机辅导设计
博主简介:专注单片机技术领域和毕业设计项目。
主要内容:毕业设计、简历模板、学习资料、技术咨询。


主要介绍

  本次所设计的晾衣架系统不仅能够根据环境变化实现晾衣架的自动伸缩控制,而且具有体积小、重量轻,灵活方便、适用范围广、操作比较便捷等特点。
  结果表明,这款基于单片机的晾衣架控制系统彻底改变了人们的晾衣习惯,实现了足不出户就可以收晾衣物,再也不用担心外出时衣物淋雨了。
  整套系统在运行中表现出极好的智能型和便捷性,备受消费者的青睐。

关键词:单片机;光敏电阻;雨滴传感器;步进电动机;晾衣架

一、系统方案设计

1.1 系统方案论证

  本设计为实现晾衣架控制系统设计提出两种方案:
  方案一:
  本方案设计主要由单片机主控电路、按键电路、光线检测、电机控制执行部分组成。主要用到的元器件有:STC89C52单片机、小马达电动机、光敏电阻等等。STC89C52单片机作为本方案的主控芯片,光敏电阻是用来识别所处环境为白天还是夜晚的光线强弱状态。
连接电源按下开关后,初始状态是自动模式,通过光敏电阻自动识别当前所处环境的光线强弱,即白天还是夜晚。当时识别出是白天,光照比较强时,电动机正转代表晾衣架伸展,用手触碰相应的限位开关,电动机停止转动代表伸展到最大;当时光敏电阻识别出是夜晚光照强度比较弱时,电动机反转代表晾衣架收缩,用手触碰相应的限位开关,电动机转动停止代表收缩到最里面,以防止发生过卷。
  方案二:
  本次方案设计主要由单片机主控电路、雨滴检测、光线检测、按键电路、指示灯电路、电机控制执行部分组成,主要用到的元器件有:STC89C52单片机、FC-37雨滴传感器、光敏电阻、LED指示灯、微动步进电动机等等。STC89C52单片机作为本方案的主控芯片,雨滴传感器主要是用来检测所处环境中是否存在下雨的情况;光敏电阻是用来识别所处环境为白天还是夜晚的光线强弱状态;由于雨滴传感器和光敏电阻输出信号都是电压信号,单片机无法直接处理,所以本方案使用型号为LM393的电压比较器能够将光敏电阻和雨滴传感器所输出的电压信号转化为数字量信号,然后传送给单片机进行数据处理。另外,整个系统还设计了手动模式和自动模式,用户可以根据所处环境和自己的需求对当前晾衣架所处的状态进行自由的切换,电动机方面采用了比较方便的微动式步进电动机,为了直观的看到当前系统所处于的模式和状态,设计了指示灯电路以便于观察。
  连接电源按下开关后,初始状态是手动模式,用户可根据自己的需求进行收晾衣物,按下切换按钮后,系统更换为自动模式。通过光敏电阻自动识别当前所处环境的光线强弱,即白天还是夜晚。当时识别出是白天,光照比较强且雨滴传感器未检测到有雨水时,电动机正转拉动电动机上的端子(代表晾衣架上所晾的衣物)向左移动代表晾衣架伸展,当电动机上的端子移动到最左面触碰相应的限位开关,电动机转动停止代表伸展到最大;当时识别出是夜晚光照比较弱或者是在白天时雨滴传感器检测到有雨水时,电动机反转拉动端子向右移动代表晾衣架伸展,当电动机上的端子移动最右面自动触碰相应的限位开关,电动机转动停止代表收缩到最里面,电动机转动停止以防止发生过卷。
  根据上述两种方案的介绍,对于本系统设计我选择方案二,因为方案一实现的电动机正反转并不能完全实现自动化,自动检测到光线后,还需要手动按一下限位开关来实现电动机正反转的停止,方案二所采用的微动式步进电动机可以实现自动停止正反转;同时,方案一只有光照检测模块,没有雨滴检测部分,这样实现出来的功能不能够完全满足用户的要求,而方案二在方案一的基础上添加了雨滴检测装置。显而易见,方案二更符合我们的实际需求,具有易操作、智能化、实用性强等优势。

1.2 系统工作原理

  下面介绍一下本系统的原理及总体框图,总体框图如1.1所示。
在这里插入图片描述

图1.1 系统总体框图
  本系统利用光敏电阻和雨滴传感器来检测当前环境,由按键电路调整当前系统所处的状态,指示灯电路和微动步进电机将信号发送给单片机,再由单片机检测指示灯电路和微动步进电动机以实现晾衣架的控制;雨滴传感器和光敏电阻将检测到的电压信号输入给LM393电压比较器中,再由电压比较器输入到单片机中进行数据处理。在自动模式下,当且仅当白天不下雨的时候,晾衣架才会打开进行晾晒衣服,其他任何情况下晾衣架的状态都是收衣物状态,这样实现了智能晾衣架的设定。

二、实物展示

实物展示图如图4.2、4.3所示。
在这里插入图片描述

程序

#include <REGX52.H>					//包含单片机内部寄存器的头文件
#define uchar unsigned char 		//宏定义
#define uint unsigned int

//定义微动电机管脚
sbit EN=P2^1;	      	 //使能    
sbit A1=P2^0;			 //A相
sbit B1=P2^2;			 //B相

//定义限位开关管脚
sbit switch1=P3^3;		  //控制电机往左边的开关
sbit switch2=P3^4;		  //控制电机往右边的开关

//定义LM393两个输出管脚
sbit LM393_A=P1^0;		  //连接的是水滴传感器,水多,输出为0
sbit LM393_B=P1^1;		  //连接的是光敏电阻,光强为1

//定义按键
sbit key1=P3^5;			  //连接IO口
sbit key2=P3^6;
sbit key3=P3^7;

bit key1_flag=0;		  //按键标
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值