基于51 内核智能晾衣杆设计

2022-08-17 09:17袁婧吴宇
电子制作 2022年14期
关键词:光敏串口机智

袁婧,吴宇

(江西理工大学电气工程与自动化学院,江西赣州,341000)

0 引言

随着经济的发展,人民生活会水平的提高,人民可支配的收入逐渐增多,对家居环境的要求也越来越高,因此智能家居的发展就显得尤为重要[1]。20 世纪80 年代出现智能家居开始,有许多智能化的居家电器慢慢地出现并且变得常见起来,其中就包括智能晾衣杆。由于无法受到阳光的正常照射的阳台在45%左右,因此可以设计一种智能晾衣杆根据天气自动控制晾衣杆收回,防止衣物淋湿的晾衣杆,解决了雨天不能及时收衣物的困扰;在阴天的时候收回晾衣杆,晴天的时候将衣物晾出去,使得晾晒衣物更加方便简洁,提高晾衣杆操作的可靠性、稳定性。多功能环保智能晾衣系统设计成功,不仅解决人们日常生活的难题,而且极大的方便居民的生活,具有良好的社会效益和经济效益[2]。

本次设计使用了机智云平台,机智云平台是广州杰升信息科技有限公司旗下品牌,是一款由机智云物联网公司推出的。相对于市场上同类的管理系统,其具有独一无二的优点:一是借助机智云平台,可以根据服务的场景布置不同的传感器,在云平台经过处理后反馈给用户;二是系统基于机智云平台,方便二次开发,可以根据功能需求属性等关联查询和上传图片检测对应目标[3]。

1 系统的组成及硬件

本次设计的智能晾衣杆系统使用了机智云平台、雨滴传感器、光敏传感器和电机等部分。用到了 L298N 电机驱动模块、ATK_ESP8266 的超高性价比的串口-无线模块和稳压芯片等。

系统的电源模块是为了给整个系统提供一个电源使得系统可以正常稳定地运行所以电源在整个设计中也是非常重要的一部分。电源电路一般采用LDO 电源芯片为系统供电,可以供3.3V、5V 等电源[4]。本次设计中电源有两个,3.3V 的电源接单片机,12V 的电源就接 L298N。电源模块的 VCC 接口接电源,GND 接口接地,3.3V 输出接单片机,12V 输出接 L298N 驱动模块。接线需要将VCC 接口接电源,GND 接口接地,3.3V 输出电压接单片机,12V电压输出接L298N 驱动模块。

图1 智能晾衣杆系统框图

芯片的选择:STC89C51 芯片可以使用其他开发者已经编写好的程序代码,不需要自己编写,非常的方便,但是直接引用可能会导致自己不理解程序的编写规则,没有亲自体验设计的详细过程,最终结果可能达不到预期的效果。而STC8A8K64S4A12 芯片需要自己编写程序代码,虽然有些复杂,但是我们也可以在编写过程中学习到很多,发现一些自己平时不太注意的问题,及时的进行改进,从而让自己得到提升。由于STC8A8K64S4A12 芯片的代码与STC15F2K60S2 芯片一致,所以在设计的过程中使用STC15F2K60S2 芯片。

图2 L298N 原理图

通过比较STC8A8K64S4A12 和STC89C5 两种芯片的优点以及缺点,选择STC8A8K64S4A12 芯片。STC8A8K64S4A12芯片的内部是自带晶振的,所以不需要再外接晶振,只需要电源和复位电路即可。其原理图如图3 所示。

图3 STC8A8K64S4A12 芯片原理图

雨滴传感器的主要功能是检测,它检测是否下雨及雨量的多少,广泛运用在智能灯光系统、汽车的自动刮水系统及智能天窗系统中。雨滴传感器的工作原理是当传感器检测到有雨水时,可以自动发生电平的转换,从而操控电机运行,带动晾衣杆及时将晾晒的衣物收回屋内,这样就可以避免衣物被雨水淋湿而给人们带来的二次清洗的麻烦。

图4 雨滴传感器电路图

光敏传感器的工作原理是当光敏传感器检测到日照充足时,其阻值就会相应地变换。经过测试,在室外光照强的照射下和光照弱的照射下,光敏电阻分别为小于320Ω 和大于15.6kΩ,知道光敏电阻在两种情况下的电阻值,就可以判断光照的强弱[5]。当光敏传感器检测到日照充足的时候,控制电动机操控晾衣杆伸出窗外,对衣物进行晾晒,而当光敏传感器检测到日照不足的时候,其阻值也会相应的做出改变,来控制电动机操控晾衣杆收回屋内,这样就可以在人们忘记收回衣物时帮助人们自动收回所晾晒衣物。

在本次设计中使用了直流电机,各个部分都通过不同的方式来最终目的是操控电机运作的,结果就是改变电机正反转从而带动晾衣杆动作,而不需要人为的提拉晾衣杆,可以说电机在本次研究中是十分重要的部件。其参数为电压12V,电流 2A,额定功率24W。

使用ATK_ESP8266 模块,采用串口与 MCU 进行通信,内置 TCP/IP 协议线,可以实现串口与无线的直接转换,其兼容 3.3V 和5V 单片机系统,可以很方便地与产品连接。该模块支持STA/AP/STA+AP 三种工作模式,可以实现远程控制和局域网络无线控制,方便设备操作。

图5 光敏传感器电路图

USB 转 ESP8266 模块的作用是把ESP8266 无线模块通过串口连接 PC 机的一种设备,它可以让调试 ESP8266无线模块变得更加方便。

稳压模块使用了AMS1117 芯片进行稳压,设计用于提供1A 输出电流且工作压差可低至1V。该稳压器是一个正向低压降稳压器,内部具有过热保护和限流电路,可以在过度受热时切断操作。

驱动模块使用L298N 电机驱动模块。L298N 驱动板可以驱动两路直流电机,但本次设计只需要控制一个电机即可,所以只使能一个通道即可,使能端ENA 高电平有效,需要设置IN1 和IN2,确定电机的转动方向。

稳压模块接12V 输入电压,3.3V 输出电压接单片机,12V 电压输出接L298N 驱动模块。

2 机智云的运用

本次设计使用了独立 MCU 的方式,创建了四个数据点,分别为两个只读数据点和两个可写数据点,分别代表着电机的正反转和光敏传感器和雨滴传感器的信息。

机智云平台主要目的是为了给开发者们提供物联网设备的自助开发工具、后台技术支持服务、设备远程操控管理、数据存储分析、第三方数据整合、硬件社交化等技术 服务,它不仅面向企业开发者,同时也面向个人开发者。

本次设计使用了手机 APP 来调试,对于机智云的调试,需要在有无线路由器有信号并能连接到网络时,将 USB 转ESP8266 模块和ESP8266 连接,也就是电源和串口的四根线相连接,ESP8266 通过调试工具供给稳定电源,再进行APP 的设置。在手机 APP 上需要单独再注册和登陆,并将设备进行配置,然后就可以和电脑上的数据点配合使用完成相应的功能。

我们需要进入机智云官网进行数据点修改。本次设计使用了四个数据点,其中,两个可写的数据点分别代表着电机的正转和电机的反转,两个只读的数据点分别代表光敏传感器和雨滴传感器接受的数据,数据点fout01 代表电机的正转,数据点fout02 代表电机的反转,数据点fin01 是读取光敏传感器的数据,数据点fin02 是读取雨滴传感器的数据的。

创建数据点时,需要填写数据的标识名,并选择数据的读写类型和数据类型。需要注意的是在MCU 硬件方案选择处需要填写一个产品密码,这个密码我们可以在“基本信息”选项中查看完整密码,填写产品密码之后点击“生成代码包”,这样就完成了机智云的创建。

对于机智云的调试,需要在有无线路由器有信号并能连接到网络时,将USB 转ESP8266 模块和ESP8266 连接,也就是电源和串口的四根线相连接,ESP8266 通过调试工具供给稳定电源,再进行APP 的设置。

3 软件的设计

本设计的系统流程图如图6 所示。

图6 程序流程图

本设计的程序流程是首先对单片机进行初始化,这里用电脑模拟代替单片机;其次读取雨滴传感器的状态;再次读取光敏传感器的状态;然后读取云消息状态并设置反馈状态;接下来由两个传感器状态和 云消息状态决定电机运行状态,最后由串口中断函数完成云消息的接收和反馈。

■3.1 程序设计

由于使用了机智云平台,我们不需要自己编写程序,只需要在机智云平台下载然后在Keil 中打开,并修改头文件即可。

可以知道,如果需要修改内容则需要在串口驱动程序中修改底层串口,串口通信在工作时一般需要设置数据格式,波特率和工作方式。但是对STC15 芯片和STC8A8K64 S4A12 串口相关寄存器进行比较可发现,这两款芯片的寄存器设置都是相同的,STC8A8K64S4A12 完全可以应用STC15 的程序,两者的功能与地址一致,所以在这里不需要修改底层串口。

头文件的更改也是很简单的,只需要在工具栏的搜索那里填写“STC15F2K60S2”并搜索,然后将其改为“STC8.h”就可以了。

同时,我们需要更改程序的对象,在左边工程列表中找到文件夹“MCU_STC15F2K60S2_source”并点击右键,然后在“Device”中选择需要的“STC8A8K64S4A12”即可。

■3.2 I/O 口的配置

本次设计IO 口的配置需要用到P4 口,所以需要对P4口进行设置。将P4.2 和P4.3 设置为输入,输入的是传感器状态;P4.0 和P4.1 为输出,输出高3.3V 电平和低电平;外接传感器作为电源的输出。

还需要进行两处修改。第一处的修改是打开Keil 软件,找到gizwits_prodct.c 程序,搜索“user handle”,并对这几处进行修改,第一个“user handle”处改为 P20=0,第二个“user handle”处改为 P20=1,第三个“user handle”处改为 P21=0,第四个“user handle”处改为P21=1。

第二处修改是搜索“userHandle”程序并对P4 口和P2 口进行相关的设置。添加如下程序:“P4M0=0x33;P4M1=0x00;P2M0=0x33;P2M1=0x00;P4=0xfe;”这些程序设置了P4 的输入输出状态。还需添加“currentDataPoint.valuefin01=P42;currentDataPoint.valuefin02=P43;”这两句程序是为了将P4 高6 位设置为准双向输入I/O 口。

4 总结

针对智能晾衣杆的设计主要是以51 单片机为基础,使用了机智云、雨滴传感器和光敏传感器,并使用了电机来操控晾衣杆。智能晾衣系统最大的特点就是操作简单、价格低、占地面积小、省时省力,达到了节约时间、便捷的目的。[5]该设计中用到了遥控系统,可以远程操控晾衣杆,同时也实用了传感器,可以在天气不适合晾晒衣物时自动检测并使晾衣杆回到屋内,防止衣物被雨淋湿,通过遥控的方式或者通过传感器来控制,不需要人们亲自在现场操控,极大地节省了人们的时间和精力,使得晾衣杆的实用性增强,并且变得更加的方便简洁。

猜你喜欢
光敏串口机智
鸣律
鲜木耳真的有毒吗
机智的妈妈
机智的警察
这个世界需要你啊,机智的少年
MCS—51单片机中的多串口通讯技术的应用
吃了这些药要注意防晒
机智的回答
全国计算机等级考试机房准备工作探讨
微机串口的测试诊断