当前位置: 首页 > news >正文

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

摘 要 :在网络信息技术的推动下,智能家居得到了广泛应用,文章根据当前的市场动态,针对基于单片机的智能晾衣系统设计展开论述,具体包括两个方面的内容———硬件设计和软件设计。
关键词 :单片机;智能晾衣系统;硬件设计;软件设计

引言

结合当前晾衣架系统研究发展现状,本文设计了一种智能晾衣架系统,可以帮助人们摆脱传统繁琐的晾衣程序。本次系统操作十分简单,占地空间比较小,具有美观实用的特点。本文主要从硬件设计和软件设计两个方面进行论述,为当前单片机的智能晾衣系统进一步优化设计提供借鉴。

1 硬件设计

本次单片机采用了光照和雨滴两个天气信号,然后控制旋转衣架。整个系统主要利用步进电机进行控制,在天晴的时候,可以把衣架转出,进行衣物的晾晒;在没有阳光或者在下雨的时候,就会自动转到室内,防止衣服被淋湿。

1.1 整体设计图

本次整体设计图如图 1 所示,整个系统在实际运行过程中,利用光照传感器和雨滴传感器感知周围的天气,然后进行判断,做出相应的动作。设计人员设计出光照和雨滴的阈值;单片机就会控制衣架来回转动,从而实现智能控制。

1.2 光照传感器

为了对外部光照强度进行精准的测量,保证系统正常运行,在本次设计中,主要利用光敏电阻测量光照,随着光照逐渐的增强,光敏电阻逐渐减小,通过实际测量,可以分析光敏电阻的电子变化范围。在光照强度增强到很大的情况下,光敏电阻就会达到几百兆欧姆。在黑暗的条件下,光敏电阻的阻值为几兆欧姆。为了实现最为理想控制效果,保证光敏电阻阻值与实际操作向匹配,本次设计采用 10K 电阻,作为上拉电阻。根据实际实验的情况,在光照强度达到很大的条件下,光敏电阻值就非常小;在光照强度达到很小的条件下,就是周围非常黑暗,光敏电阻值就会很大。电压信号输出以后,通过电容滤波,就会保证信号波形更加平滑,提升了单片机信号处理的速度,避免由于光照强度不稳定导致系统出现误判的问题,如图2 所示。

1.3 雨滴传感器设计

这种传感器又被称为雨滴检测传感器,主要是为了是否下雨、对雨滴冲击量、静电电容量以及光亮变的进行精确的检测,为系统做出下一步的动作提供帮助。在本次系统使用的雨滴传感器中,一旦有雨滴滴落在检测极板上,相应的电阻就会出现新的变化,传感器就会对输出的电压进行检测。在雨滴传感器运行过程中,主要利用上拉 10K 电阻的方式,把电阻变化转化成电压变化,实现信号的调控。通过 LED的指示说明,可以明确整个电路运行的基本情况。如图 3 所示。

1.4 衣架位置传感器

本次设计主要采用红外传感器对衣架的具体位置进行 判断,在衣架运动到红外传感器范围内,红外传感器就会发出 信号,单片机就会读取衣架的具体位置。 为了保证信号能够正常运行,本次设计在室内和室外分 别安装一个红外检测传感器。在衣架位于室内时,为了保证位 置在相应的范围内,红外传感器就对衣架的位置进行判断,防 止出现移动过度或者不到位的问题。

1.5 STM32 控制器

STM32 控制器性能很强,可以投入少量的成本,属于一种低耗能的单片机。本次设计主要采用 STM32F103C8T6 单片机。在 STM32 系列单片机运用过程中,主要采用集成 AD模块,通过控制器运行,就能实现 AD 转化和音频数据编码,对红外发射电路进行控制。

1.6 步进电机驱动电路设计

本次系统步进电机主要采用 ULN2003 驱动,具有耐高压和高性能的特点,主要由 NPN 复合晶体管组成,芯片运行原理图如图 4 所示。

在单片机运行过程中,主要利用 IO 控制输出驱动,进行信号输入。ULN2003 输出的信号就会传输到步进电机的引脚上。如图 5 所示。

1.7 液晶显示屏

本次设计主要采用 Nokia5110 液晶,具有很高的性价比,接口简单便利,效果好,稳定性比较强。

2 软件设计

本次软件设计主要采用 C 语言。根据只能晾衣系统的要求,单片机会自动采集光照和雨滴两个天气信号,通过步进电机衣架的旋转,在天气晴朗没有下雨的条件下,系统就会把衣架转到室外,进行衣物的晾晒;在没有阳光、下雨的条件或者天黑的条件下,系统就会把衣架转到室内,防止被雨淋湿。

2.1 系统整体分析

如遇下雨天气,系统动作会进行转移到室内的操作;如遇未下雨阳光充足的天气,则将进行转移到室外的操作。系统会根据天气情况,做出相应的动作,为人们提供便利,减少了人为的操作。

2.2 软件算法

经过系统初始化、外设初始化计算以后,设计人员主要根据阳光与雨滴设计相应的阈值,从而进一步分析光照强度和雨滴强度,让系统做出判断,是否出去晾晒。在阳光强度没有达到要求、下雨以及天黑等条件下,系统不会晾晒衣物。但是根据系统实际运行的情况,需要进行定期的检查,防止被东西卡住。算法流程图如图 6 所示。

2.3 软件容错处理

本次系统主要采用时间累计的方式,对系统故障进行判断,根据实际实验的结果,衣架从而完成整个移动动作的时间大概为 20 秒,一旦累计时间超出了设计的时间( 30 秒),证明衣架位置传感器没有检测到衣架的位置,说明出现了故障,需要维护人员及时调整。

3 结束语

综上所述,通过对单片机智能晾衣系统的设计分析,系统会根据外面的天气情况做出转移到室内和转移到室外的动作,真正实现了无人操作,满足智能家居的设计要求。为了满足实际使用的要求,在未来设计中,还可以增加前后伸缩和上下伸缩的设计,不断完善现有系统性能,为客户提供更加便利的服务。

相关文章:

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

摘 要 :在网络信息技术的推动下,智能家居得到了广泛应用,文章根据当前的市场动态,针对基于单片机的智能晾衣系统设计展开论述,具体包括两个方面的内容———硬件设计和软件设计。 关键词 :单片机&#xff…...

Python实战项目:天气数据爬取+数据可视化(完整代码)

一、选题的背景 随着人们对天气的关注逐渐增加,天气预报数据的获取与可视化成为了当今的热门话题,天气预报我们每天都会关注,天气情况会影响到我们日常的增减衣物、出行安排等。每天的气温、相对湿度、降水量以及风向风速是关注的焦点。通过…...

知识改变命运 数据结构【链表面试题】

1. 删除链表中等于给定值 val 的所有节点。 OJ链接 public ListNode removeElements(ListNode head, int val) {if (headnull) {return null;}ListNode curhead.next;ListNode prehead;while(cur!null) {if(cur.valval) {pre.nextcur.next;curcur.next;}else {precur;curcur.ne…...

计算机毕业设计 医院问诊系统 Java+SpringBoot+Vue 前后端分离 文档报告 代码讲解 安装调试

🍊作者:计算机编程-吉哥 🍊简介:专业从事JavaWeb程序开发,微信小程序开发,定制化项目、 源码、代码讲解、文档撰写、ppt制作。做自己喜欢的事,生活就是快乐的。 🍊心愿:点…...

掌握CSS的:any-link伪类:统一链接样式的高效方法

在网页设计中,链接是用户导航和交互的重要组成部分。CSS提供了多种伪类选择器来定义链接的不同状态,例如:link用于选择未访问的链接,:visited用于选择已访问的链接。然而,有时候我们需要同时为所有状态的链接设置统一的样式&#…...

虚幻5|角色武器装备的数据库学习(不只是用来装备武器,甚至是角色切换也很可能用到)

虚幻5|在连招基础上,给角色添加武器并添加刀光|在攻击的时候添加武器并返回背后(第一部分,下一部分讲刀光)_unreal 如何给角色添加攻击-CSDN博客 目的:捡起各种不同的武器,捡起的武器跟装备的武器相匹配 …...

防火墙技术与地址转换

文章目录 前言一、四种区域二、实验拓扑图基础配置防火墙配置测试结果 前言 防火墙是计算机网络中的一种安全设备或软件功能,旨在监控和控制进出网络的网络流量。其核心目的是保护内部网络免受外部攻击或不必要的访问。防火墙通过设定一系列安全规则,允…...

C++11中的Lambda表达式

文章目录 C11中的Lambda表达式1.lambda表达式形式2.向lambda传递参数3.使用捕获列表4.lambda捕获和返回1.值捕获2.引用捕获3.隐式捕获4.可变lambda5.指定lambda的返回类型 C11中的Lambda表达式 1.lambda表达式形式 lambda表达式具有以下形式 [capture list] (parameter list)…...

Unity图形系统

Unity的图形系统是一个复杂且功能强大的模块,它支持多种渲染技术和API,能够满足从移动设备到高端游戏机和桌面平台的各种需求。以下是关于Unity图形系统的详细解析: 渲染流程与技术 Unity的渲染流程可以分为应用程序阶段(CPU&…...

Ceph篇之利用shell脚本实现批量创建bucket桶

Ceph创建bucket桶 在 Ceph 中创建桶(bucket)需要使用 Ceph 对象网关(RGW)。 注:如果查看shell批量创建脚本请直接参见目录3 1. 利用radosgw-admin工具创建桶 确保 Ceph 集群和对象网关已正确配置 确保你的 Ceph 集群…...

周末总结(2024/08/17)

工作 人际关系核心实践: 要学会随时回应别人的善意,执行时间控制在5分钟以内 坚持每天早会打招呼 遇到接不住的话题时拉低自己,抬高别人(无阴阳气息) 朋友圈点赞控制在5min以内,职场社交不要放在5min以内 职场的人际关系在面对利…...

SQL高级编程:掌握自定义函数和过程的艺术

标题:SQL高级编程:掌握自定义函数和过程的艺术 在SQL的世界里,数据操作不仅仅局限于简单的查询和更新。通过自定义函数(User-Defined Functions, UDFs)和存储过程(Stored Procedures)&#xff…...

python监听环境内是否有声音

python监听环境内是否有声音 首先使用pyaudio打开麦克风,并开始录音。然后使用一个while循环来不断读取麦克风录取的音频数据,然后使用numpy来分析音频数据是否有声音。当检测到有声音时,会打印"有声音"并退出循环。最后关闭录音流…...

合并两个有序链表--力扣

题目如下: 将两个升序链表合并为一个新的 升序 链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。 示例如下: 示例 1: 输入:l1 [1,2,4], l2 [1,3,4] 输出:[1,1,2,3,4,4]示例 2: 输入:l1 [], l2 …...

【自用】Python爬虫学习(三):图片下载、使用代理、防盗链视频下载、多线程与多进程

Python爬虫学习(三) 使用BeautifulSoup解析网页并下载图片模拟用户登录处理使用代理视频下载,防盗链的处理多线程与多进程 使用BeautifulSoup解析网页并下载图片 目的:对某网站的某个专栏页面的图片进行下载得到高清图。 思路&am…...

#Datawhale AI夏令营第4期#AIGC方向Task3

在之前的任务中,我们已经对baseline进行了精读,并生成了,我们自己的八图故事。 在Task3中,我们的主要任务有两个:part1:工具初探一ComfyUI应用场景探索;Part2:Lora微调。 微调是一…...

【docker综合篇】关于我用docker搭建了6个应用服务的事

最近一直在捣鼓docker,利用测试服务器,本着犯错就重来(重装系统)的大无畏精神,不断尝试,总结经验,然后在网上搜寻一些关于docker有关的服务镜像,并搭建起来。看着一个个服务在我的服务器跑起来,…...

【sgCreateAPIFunction】自定义小工具:敏捷开发→自动化生成API接口方法代码片段脚本(接口方法代码生成工具)

sgCreateAPIFunction源码 <template><!-- 前往https://blog.csdn.net/qq_37860634/article/details/141159084 查看使用说明 --><div :class"$options.name"><div class"sg-head">接口方法生成工具<el-dropdown:show-timeou…...

Vue2图片懒加载(vue-lazyload)

参考文档&#xff1a;vue-lazyload 安装插件 npm install vue-lazyload # or yarn add vue-lazyload # or pnpm add vue-lazyload使用 使用方式 一&#xff1a; 所有懒加载图片的占位图使用同一张默认图片 引入并注册 // main.js import VueLazyload from vue-lazyload Vue…...

Jenkins-拉取代码

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 文章目录 前言一、Jenkins环境配置&#xff08;一&#xff09;配置Maven环境&#xff08;1&#xff09;Maven下载&#xff08;2&#xff09;将Maven上传服务器&#xff08;3&…...

在软件开发中正确使用MySQL日期时间类型的深度解析

在日常软件开发场景中&#xff0c;时间信息的存储是底层且核心的需求。从金融交易的精确记账时间、用户操作的行为日志&#xff0c;到供应链系统的物流节点时间戳&#xff0c;时间数据的准确性直接决定业务逻辑的可靠性。MySQL作为主流关系型数据库&#xff0c;其日期时间类型的…...

【Oracle APEX开发小技巧12】

有如下需求&#xff1a; 有一个问题反馈页面&#xff0c;要实现在apex页面展示能直观看到反馈时间超过7天未处理的数据&#xff0c;方便管理员及时处理反馈。 我的方法&#xff1a;直接将逻辑写在SQL中&#xff0c;这样可以直接在页面展示 完整代码&#xff1a; SELECTSF.FE…...

基于uniapp+WebSocket实现聊天对话、消息监听、消息推送、聊天室等功能,多端兼容

基于 ​UniApp + WebSocket​实现多端兼容的实时通讯系统,涵盖WebSocket连接建立、消息收发机制、多端兼容性配置、消息实时监听等功能,适配​微信小程序、H5、Android、iOS等终端 目录 技术选型分析WebSocket协议优势UniApp跨平台特性WebSocket 基础实现连接管理消息收发连接…...

【Redis技术进阶之路】「原理分析系列开篇」分析客户端和服务端网络诵信交互实现(服务端执行命令请求的过程 - 初始化服务器)

服务端执行命令请求的过程 【专栏简介】【技术大纲】【专栏目标】【目标人群】1. Redis爱好者与社区成员2. 后端开发和系统架构师3. 计算机专业的本科生及研究生 初始化服务器1. 初始化服务器状态结构初始化RedisServer变量 2. 加载相关系统配置和用户配置参数定制化配置参数案…...

五年级数学知识边界总结思考-下册

目录 一、背景二、过程1.观察物体小学五年级下册“观察物体”知识点详解&#xff1a;由来、作用与意义**一、知识点核心内容****二、知识点的由来&#xff1a;从生活实践到数学抽象****三、知识的作用&#xff1a;解决实际问题的工具****四、学习的意义&#xff1a;培养核心素养…...

Java入门学习详细版(一)

大家好&#xff0c;Java 学习是一个系统学习的过程&#xff0c;核心原则就是“理论 实践 坚持”&#xff0c;并且需循序渐进&#xff0c;不可过于着急&#xff0c;本篇文章推出的这份详细入门学习资料将带大家从零基础开始&#xff0c;逐步掌握 Java 的核心概念和编程技能。 …...

JVM 内存结构 详解

内存结构 运行时数据区&#xff1a; Java虚拟机在运行Java程序过程中管理的内存区域。 程序计数器&#xff1a; ​ 线程私有&#xff0c;程序控制流的指示器&#xff0c;分支、循环、跳转、异常处理、线程恢复等基础功能都依赖这个计数器完成。 ​ 每个线程都有一个程序计数…...

前端开发者常用网站

Can I use网站&#xff1a;一个查询网页技术兼容性的网站 一个查询网页技术兼容性的网站Can I use&#xff1a;Can I use... Support tables for HTML5, CSS3, etc (查询浏览器对HTML5的支持情况) 权威网站&#xff1a;MDN JavaScript权威网站&#xff1a;JavaScript | MDN...

Linux安全加固:从攻防视角构建系统免疫

Linux安全加固:从攻防视角构建系统免疫 构建坚不可摧的数字堡垒 引言:攻防对抗的新纪元 在日益复杂的网络威胁环境中,Linux系统安全已从被动防御转向主动免疫。2023年全球网络安全报告显示,高级持续性威胁(APT)攻击同比增长65%,平均入侵停留时间缩短至48小时。本章将从…...

Python学习(8) ----- Python的类与对象

Python 中的类&#xff08;Class&#xff09;与对象&#xff08;Object&#xff09;是面向对象编程&#xff08;OOP&#xff09;的核心。我们可以通过“类是模板&#xff0c;对象是实例”来理解它们的关系。 &#x1f9f1; 一句话理解&#xff1a; 类就像“图纸”&#xff0c;对…...