基于单片机的智能追光晾衣架的设计与仿真

2024-01-24 12:47郝国勇赵丽芝
电脑迷 2023年20期
关键词:晾衣架单片机

郝国勇 赵丽芝

【摘  要】 在生活中,人们经常发现这种现象:早上上班前晾晒的衣物,下午下班后回家仍然没有干爽。尤其是在城市高楼中,由于楼房朝向和楼间距的设置,导致一天中阳台能够照射到太阳的位置不一样,传统的晾衣竿只能固定在一个地方,这就使衣服获得晾晒的时间大幅地缩短。为解决这一问题,该设计使用传统的STC89C52单片机作为整个系统的控制核心,采用太阳跟踪技术,利用光强比较法,通过光照强度的变化,来控制上下两轴步进电机转动,带动晾衣架进行上下左右移动,一直到光照强度一致时停止,实现晾衣架追光的目的,从而保证衣物有充足的晾晒时间。

【关键词】 单片机;智能追光;晾衣架

一、智能追光晾衣架的整体设计方案

智能追光晾衣架采用STC89C52为控制核心,由雨滴采集电路、光照采集电路、人机界面电路、电机驱动电路等部分组成。通过采集雨滴信息和晾衣架前后左右四个方向光照值,通过单片机控制电机每隔0.5小时驱动电机将晾衣架进行前后左右移动,使晾衣架实现智能追光晾衣服的效果,同时通过操作人机界面,还可以实现手动、自动的调节,以及对电机的转速进行调节。

二、智能追光晾衣架的硬件电路设计

系统硬件电路主要包含单片机、光照采集及信号处理电路、人机界面电路、电机驱动电路,蓝牙模块控制电路等,如图1所示。

(二)智能追光晾衣架各单元电路设计

1. 光照数据采集及信号处理电路

光照数据采集及信号处理电路采用4路光敏电阻采集光强数据,工程安装时装在智能追光晾衣架外侧的四个边,用于采集晾衣架四周的光照强度,采集的信号经PCF8591的AIN0-AIN3四路模拟输入口送给PCF8591,PCF8591内部采用逐次逼近的方法分别对四路模拟的光照数据进行A/D转换,并将A/D转换以后的数据分别以ADC0_F、ADC1_B、ADC2_L、ADC3_R四組数据从PCF8591的SDL和SDA引脚送给89C52单片机的P1口的P1.0和P1.1。

2. 电机驱动电路

电机驱动电路采用ULN2803控制两台步进电机MOTO1和MOTO2,ULN2803的输入引脚1B-8B(PIN1-PIN8)按顺序分别接89C52单片机P2口的P2.0至P2.7,MOTO1和MOTO2选用4相步进电机。MOTO1用于控制智能追光晾衣架进行前后移动,按照顺时针方向分别和ULN2803的输出引脚1C-4C(PIN18-PIN15)连接,MOTO2用于控制智能追光晾衣架进行左右移动,按照顺时针方向分别和ULN2803的输出引脚5C-8C(PIN14-PIN11)连接。通过对比光照数据,89C52单片机从P2口输出高低电平,控制MOTO1和MOTO2按要求进行正转和反转,从而带动晾衣架进行前后左右移动,以实现追光效果。

3. 人机界面电路

人机界面电路主要由6个操作按键组成,按键功能如表1所示。

4. 雨滴检测电路

雨滴检测电路采用FC-37传感器,FC-37雨滴传感器包含收集雨滴的电路板和以LM393比较器为核心的雨滴信号处理电路板,有两个信号输出引脚DO和AO,分别接89C52单片机P3口的P3.0和P3.1,DO用于检测是否有雨,AO用于检测雨量大小。当未检测到雨滴时,FC-37雨滴传感器信号处理电路板DO输出高电平,LED指示灯D4不亮;当检测到有雨滴时,FC-37雨滴传感器信号处理电路板DO输出低电平,LED指示灯D4亮,RV2用于调节FC-37雨滴传感器的灵敏度。

三、智能追光晾衣架的软件设计

(一)主程序软件设计

智能追光晾衣架的软件设计流程图如图2所示,主程序中先对单片机进行上电复位操作,使单片机初始化,然后开始检测和控制工作,过程如下:

1. 上电复位:单片机将所有的I/O口以及电机复原到初始状态。

2. 天气监测,如果有雨,FC-37雨滴传感器信号处理电路板DO输出低电平,89C52单片机P3口的P3.0引脚接收到低电平,控制电机进行行程归零复位,同时89C52单片机P3口的P3.1引脚根据接收到的AO的值判断雨量的大小,控制电机的转速,进而控制智能追光晾衣架的回收速度,以避免衣服被淋湿,如果没雨,继续下一步骤。

3. 检测白天还是晚上,如果是白天继续执行下面的动作,如果是晚上控制电机进行行程归零复位,不执行后续动作。

4. 检测控制方式,如是手动控制方式,按照手动控制模式继续执行后续动作,如果是自动控制模式,按照自动控制模式继续执行后续动作,系统默认为自动控制模式。

(二)手动控制方式软件设计

89C52单片机P3口的P3.3引脚侦测到S2按一下,程序转入手动控制模式,89C52单片机点亮LED灯D1,并继续通过P3口的P3.3、P3.4、P3.5、P3.6引脚继续检测S3、S4、S5、S6的触发情况。当侦测到S3被按下时控制MOTO1正转,带动智能追光晾衣架向前移动,当侦测到S4被按下时控制MOTO1反转,带动智能追光晾衣架向后移动,当侦测到S5被按下时控制MOTO2正转,带动智能追光晾衣架向左移动,当侦测到S6被按下时控制MOTO2反转,带动智能追光晾衣架向右移动。

(三)自动控制方式的软件设计

89C52单片机P3口的P3.3引脚侦测到S2按两下,程序转入自动控制模式,89C52单片机每隔0.5小时采集和检测当前晾衣架四边的光照值,单片机将接收到光照值数据包ADC0_F、ADC1_B、ADC2_L、ADC3_R进行比较,根据比较结果来控制执行电动机做出相应的响应,例如,ADC2_L系统设定的阈值时,89C52单片机输出数组{0x80,0x40,0x20,0x10}来控制P2口的P2.4-P2.7脚的高低电平,从而通过ULN2803控制MOTO2向右移动。

(四)电动机转速

当需要对当前的电动机转速进行调节时,单片机首先检测速度调节按钮S1是否按下,如果检测到按下,则再进一步检测S3、S4、S5、S6的触发情况,然后根据触发情况来调节MOTO1或MOTO2的转速。例如,当侦测到S3按下时,89C52单片机继续侦测当前MOTO1的转速是否为最高速,如果是则返回,如果不是,将通过增大输出信号的占空比来提高MOTO1的转速。

四、智能追光晾衣架的仿真测试

仿真测试采用PROTEUS软件,如图3所示,在自动模式下,89C52单片机根据采集光照参数,在PCF8591和ULN2803的共同作用下控制MOTO1和MOTO2实现正反转。

五、结语

文章讲述的是采用89C52单片机、PCF8591和UL  N2803制作的一个智能追光晾衣架,实现了基本功能,是有一定的实用价值。同时还将继续探究扩展其他功能,比如增加压力传感器实现超重报警;增加蓝牙、红外等无线控制方式,实现手机无线控制;以及设置Zigbee节点,加入已有的智能家居网络,实现联网控制等等。

参考文献:

[1] 张玮伟. 一种智能晾衣架的设计与实现[J]. 电子技术,2022,51(05):210-211.

[2] 赵雪章,曾绍稳,乔海晔. 单片机及接口技术[M]. 北京:电子工业出版社,2020.

[3] 刘雪枫,朱兆优,周程. 基于15单片机的步进电机驱动平台通用系统设计[J]. 科技广场,2014(03):65-68.

猜你喜欢
晾衣架单片机
判断:一边高,一边低
基于单片机的SPWM控制逆变器的设计与实现
基于单片机的层次渐变暖灯的研究
基于单片机的便捷式LCF测量仪
小议PLC与单片机之间的串行通信及应用
妈妈的晾衣架
装睡的秘诀
基于单片机的平衡控制系统设计
关于智能晾衣架的市场调研及分析报告
Microchip推出两个全新PIC单片机系列