基于单片机的温控光控智能窗帘设计探讨

摘 要: 文章使用的核心原件是 AT89C52 单片机,以此为基础进行模块化的设计,在整个设计中通过加入光检测模块和温度检测模块,从而对室内的温度和光照强度进行检测,然后将检测得到的数据传输给单片机,单片机对电机的继电圈的通断进行控制,从而通过电机的正转和反转,从而实现对窗帘开合的设置。并且光检测模块和温度检测模块检测得到的数据可以传输给 LCD 显示器,还可以通过手动控制的方式对窗帘的开合进行设置,从而实现对窗帘开合的多模式的控制。文章使用的单片机的温控光控智能窗帘设计具有很好的抗干扰能力、稳定性,并且具结构简单,能够满足家居需求。
关键词: 单片机;温控;光控;智能窗帘

1 引言

随着人们生活水平的提高以及科学技术的飞速发展,在计算机技术、网络技术、通信技术等方面的技术也在突飞猛进,基本利用各种技术实现了生活智能化,使得人们的居住环境向着安全化、智能化和舒适化的方向发展,家居的智能化也在向着这个方向发展 。人们对家居生活的舒适度要求越来越高,能够根据温度、阳光进行自动开合的智能窗帘成了家庭生活的新宠儿。所以,文章主要是对基于单片机的温控光控智能窗帘进行设计方面的讨论。
文章选择使用的单片机为 AT89C52 控制芯片,使用的光照传感器为 BH1750FVI,温度传感器为 DHT11,温度传感器和光照传感器将收集到的数据传输给单片机,单片机将得到数据信号进行转化,输出的为电机信号,由电机驱动对电路的直流或者是交流进行控制,实现窗帘的自动拉合。并且用户也可以根据得到的显示信息进行手动控制,实现窗帘的手动控制。

2 智能窗帘在硬件方面的设计

智能窗帘的整合硬件系统主要分为八个不同的部分,包括温度检测部分、光线强度检测装置、输入部分、单片机部分、电机驱动模块、显示部分、射频部分和电机控制部分。其各个部分之间的关系如图 1 所示。

光照强度检测使用的装置是 BH1750FVI 光照强度传感器,是一种由两线相互串联形成总线,在连接接口而形成的电路 。这个传感器可以根据光线的强度对环境的光照强度进行检测,具有很高的分辨率,能够接受很大范围的光照强度,并且其接受光照的误差今仅在 20% 左右。
温度检测模块使用的 DHT11 湿度温度传感器,一般该模块能够将温度湿度的信息转换成数字信号,在电路中不需要通过 A/D 进行转换即可得到信息数据,并且转换的温度的量程在 0℃~ 50℃。
电机部分使用的直流电机对串联的开合进行自动的控制,这样能够实现对串联开合的简便控制,本设计使用了驱动电路,主要原因是单片机集成电路输出的总电流太小,不能带动电机的工作,所以需要使用驱动电机
本系统中使用的键盘模块的主要作用是在温控光控的基础上添加手动控制,从而使得自动化窗帘能够在自动控制的基础上有手动控制的功能。一般将返回功能和菜单切换功能显示在 LCD 的显示屏上,有助于手动对时间和窗帘的开合进行控制。
光控和温控的电机程序才是设计的主要关键部分,单片机的正转或者是反转主要是根据光照和温度所检测到的数值的变化。一般在这样程序的初始端时,会把整个程序初始化,对当前的光照强度、温度进行检测,若是不符合条件则需要返回初始值,若是符合设定的条件,电机就会正转,从而实
现将窗帘打开的自动化控制。所以在整个运行过程中接触到开关,电机的运行就会停止,若是没有接触到行程开关,电机的运行就不会停止,电机保持正转的方向,直到接触到行程开关之后。若是窗帘处于打开的状态,经过光照检测器的检查,光照强度高于设定值或者是温度高于设定值,电机就会开启反转的状态,窗帘闭合。当行程开关接触时,电机的运动就会停止,从而实现窗帘的温控、光控自动化控制。

3 结束语

文章设计的温度光照强度智能窗帘的设计功能概括如下:1)根据温度光照强度对窗帘的开合进行控制;2)可以显示温度时间等数据;3)具有定时功能,可以根据时间设定控制窗帘的开合;4)也可以通过遥控器和按键等手动操作方式对窗帘的开合进行手动化控制。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://xiahunao.cn/news/3224646.html

如若内容造成侵权/违法违规/事实不符,请联系瞎胡闹网进行投诉反馈,一经查实,立即删除!

相关文章

【目标跟踪】CoTracker 环境配置

配置 CoTracker 环境 首先下载 conda,然后安装虚拟环境。 1.创建环境:如果环境不存在,你需要创建一个新的 conda 环境。可以使用以下命令创建名为 cotracker 的环境: conda create -n cotracker python3.x 其中 3.x 是你想要安…

coze搭建工作流和Agent

coze搭建工作流和Agent Agent LLM 记忆感知规划使用工具 LLM是大语言模型,prompt提示词影响LLM的输出质量 描述需求——>背景——>解决思路,提示词文档。 当有明确的需求和实现需求的路径时,可以通过搭建工作流来完成标准化任务为…

JVM内存泄露的ThreadLocal详解

目录 一、为什么要有ThreadLocal 二、ThreadLocal的使用 三、实现解析 实现分析 具体实现 Hash冲突的解决 开放定址法 链地址法 再哈希法 建立公共溢出区 四、引发的内存泄漏分析 内存泄漏的现象 分析 总结 错误使用ThreadLocal导致线程不安全 一、为什么要有Thr…

【JavaEE】 简单认识CPU

🐵本篇文章将对cpu的相关知识进行讲解 一、认识CPU 下图是简略的冯诺依曼体系结构图 上图中,存储器用来存储数据,注意在存储器中都是以二进制的形式存储数据的,CPU就是中央处理器,其功能主要是进行各种算术运算和各种…

Java版Flink使用指南——分流导出

大纲 新建工程编码Pom.xml自定义无界流分流 测试工程代码 在之前的案例中,我们一直使用的是单个Sink来做数据的输出。实际上,Flink是支持多个输出流的。本文我们就来讲解如何在Flink数据输出时做分流处理。 我们将基于《Java版Flink使用指南——自定义无…

公司内部配置GitLab,通过SSH密钥来实现免密clone、push等操作

公司内部配置GitLab,通过SSH密钥来实现免密clone、push等操作。以下是配置SSH密钥以实现免密更新的步骤: 1.生成SSH密钥 在本地计算机上打开终端或命令提示符。输入以下命令以生成一个新的SSH密钥:ssh-keygen -t rsa -b 4096 -C "your…

自动驾驶事故频发,安全痛点在哪里?

大数据产业创新服务媒体 ——聚焦数据 改变商业 近日,武汉城市留言板上出现了多条关于萝卜快跑的投诉,多名市民反映萝卜快跑出现无故停在马路中间、高架上占最左道低速行驶、转弯卡着不动等情况,导致早晚高峰时段出现拥堵。萝卜快跑是百度 A…

Mac VSCode 突然闪退、崩溃、打不开了

1、 思路历程 VSCode 作为前端常用开发工具,其重要性就不一一描述了。 所以 VSCode 突然打不开了,真的是让我一脸懵逼。 本来以为问题不大,于是 : 1、重启了一下VSCode 2、关机重启了一下电脑; 3、清理了一下缓存&am…

RequestContextHolder多线程获取不到request对象

RequestContextHolder多线程获取不到request对象,调用feign接口时,在Feign中的RequestInterceptor也获取不到HttpServletRequest问题解决方案。 1.RequestContextHolder多线程获取不到request对象 异常信息,报错如下: 2024-07-0…

设计模式8-桥模式

设计模式8-Bridge 桥模式 由来与目的模式定义结构代码推导1. 类和接口的定义2. 平台实现3. 业务抽象4. 使用示例总结1. 类数量过多,复杂度高2. 代码重复3. 不符合单一职责原则4. 缺乏扩展性改进后的设计1. 抽象和实现分离(桥接模式)2. 抽象类…

24/7/10总结

flex布局 父项常见属性 justify-content:设置主轴上的子元素排列方式 flex-wrap:设置子元素是否换行 align-items:设置侧轴上的子元素的排列方式(单行) 拉伸要把子盒子里的高度给去掉 如果两个align-items都是center并且主轴是y轴就是这种效果…

【鸿蒙学习笔记】使用动画

官方文档:使用动画 目录标题 属性动画:通用属性发生改变时而产生的属性渐变效果animationanimateTo自定义属性动画 AnimatableExtend 转场动画:是页面或组件的切换动画 , 显示/隐藏 切换时的动画出现/消失转场:实现一个组件出现或…

Allegro纠纷管理:构建和谐交易的桥梁

在Allegro这个欧洲领先的电商平台,每天都有成千上万的交易发生,纠纷可能源于多种原因,包括但不限于商品描述不符、运输损坏、未收到货、退货退款问题等。纠纷留言便成为了连接买卖双方,解决争议的桥梁。在Allegro平台上&#xff0…

部署前端项目

常见部署方式有:静态托管服务、服务器部署 1. 静态托管服务 使用平台部署代码,比如 GitHub。 | 创建一个仓库,仓库名一般是 yourGithubName.github.io。 | 将打包后的静态文件文件上传到仓库。 | 在“Settings”(选项&#xff0…

初始化线程的4种方式

1. 继承Thread 缺点:无法获取线程的运算结果。 public class ThreadTest{public static void main(String[] args){Thread01 thread new Thread01();thread.start();}public static class Thread01 extends Thread{public void run(){System.out.println("当前…

PageDTO<T>,PageQuery,BeanUtils,CollUtils的封装

一、PageDTO<T> import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.fasterxml.jackson.annotation.JsonIgnore; import com.tianji.common.utils.BeanUtils; import com.tianji.common.utils.CollUtils; import com.tianji.common.utils.…

koa + http-proxy-middleware 搭建一个带转发的静态服务器

背景 由于工作中碰到写普通页面&#xff08;未使用脚手架&#xff09;&#xff0c;需要发起接口请求&#xff0c;但普通页面又无法对接口发起正常请求&#xff0c;故编写一个Koa搭建的带转发功能的静态服务器。 起步 新建一个文件夹&#xff0c;在文件夹下打开 cmd 或者 git …

AI提示词:AI辅导「数学作业」

辅导孩子作业对许多家长来说可能是一件头疼的事&#xff0c;但这部分工作可以在一定程度上交给AI来完成。 打开ChatGPT4,输入以下内容&#xff1a; # Role 数学辅导专家## Profile - author: 姜小尘 - version: 02 - LLM: Kimi - language: 中文 - description: 专门为小学生…

iOS 开发技巧 - 使用本地 json 文件

前言 使用本地 json 文件的场景&#xff0c;在我们开发功能的阶段&#xff0c;服务端接口字段定义好了后&#xff0c;有些接口响应很慢&#xff0c;请求到响应可能要 几十秒甚至一分钟&#xff0c;我们需要频繁调用接口来调试功能&#xff1b;还有就是调用一些我们需要付费的三…

宿州降本 提质 增效 数据采集监控平台提高生产自动化水平

在当今竞争激烈的市场环境中&#xff0c;企业追求降本、提质、增效已成为发展的关键。而我们的[数据采集监控平台名称]数据采集监控平台&#xff0c;正是助力企业实现这一目标的强大工具。 LP-SCADA数据采集监控平台是工业4.0中主要的数据采集系统之一&#xff0c;主要针对产线…