基于单片机的智能温控风扇设计

摘 要 : 本次设计是基于单片机的智能温控风扇 STC89C52 单片机为核心 可以实现对风扇的有效控制 可以根据需要设置不同的温度 ,如果温度在设定值最大值和最小值之间时则启动风扇弱风档, 如果温度超过设定的数值时将会变到大风档 如果温度低于最小值时风扇停止转动, 启动什么风挡由外部温度决定 测得的温度值保存在温度传感器 DS18B20 内部 ROM 断电后保存的数值不变 基于单片机的智能温控风扇可以满足人们的不同需要, 具有一定的实用意义
关键词 : 单片机 ; 温度传感器 ; 智能控制

0 引 言

21 世纪是电子信息化的时代 温度控制器在各个领域都获得了广泛的应用, 其最大的优势就是可以实时监测温度变化并进行自动控制, 能够智能全面地满足人们的实际需要 。基于单片机的智能温控风扇是应用单片机系统设计研发的一个小型控制系统。 温控风扇能够随着温度的改变 自行调整 档位高低, 继而控制风速的大小 用户也可以根据自己的具体需要来手动设定档位值, 呈现出实用性和个性化的十足优势 ,可应用于家庭、 宾馆等各类对温度经常提出高端要求的真实场所。 系统的效率高 成本低 而且其使用寿命长 能够带来可观的经济效益, 因而具有广阔的发展前景和市场潜力 。本文即针对这一课题展开完整详尽论述。

1 系统整体设计

系统设计框图如图 1 所示 由图 1 可知 整个系统包括5 个模块 分别是键盘输入模块 数字温度传感模块 电机控制模块、 温度的测量和显示模块以及单片机最小系统 具体来说, 系统应用温度传感器 DS18B20 测量环境温度 转化成数字信号后输入给 STC89C52 单片机 并在 LED 数码管上显示相应的温度。 也可以通过键盘按键来进行最大 最小值的设定, 再由单片机控制完成指定设置功能

2 硬件电路设计

2.1 单片机最小系统电路设计

STC89C52 STC 公司生产的一种 CMOS 8 位微控制器。 STC89C52 不但使用了 MCS-51 系列单片机的经典内核 ,而且加入了众多的改进, 使求获得更为强大的应用拓展实用功能。 STC89C52 在拥有灵活的 8 位处理器的同时 更可以实现在系统可编程 Flash 因此该单片机已然成为当下常规嵌入式系统开发的主流首选。主控制最小系统电路如图 2 所示

2.2 温度采集电路

除主控电路外 本文还重点设计了温度采集电路 电路中, 选用了 DS18B20 温度传感器 可以做到一根总线上挂多个 DS18B20 DS18B20 温度传感器是通过内部的时钟电路发挥作用, 最终实现温度的测量 单片机 I /O 口和 DS18B20温度传感器的连接如图 3 所示

2.3 独立按键连接电路

本次研发中 特征设计方面还有 3 个独立按键 分别连接单片机的 P2.0 P2.1 口和 P2.2 另一端接地 如图 4 所示。 按下 P22 键可以自行设置温度 而按下 P21 键可以使设置的温度上限值升高, 按下 P20 键则可使设置的温度下限值减小。 而且 用户还可以根据自己的实际需要设置调控温度 ,简单方便。

3 系统软件设计

软件设计中 程序实现流程如图 5 所示 解析图 5 可知 : 程序初始化函数可实现对 DS18B20 的初始化处理 与此同时温度读取函数将提供对数据的读取和转化功能, 而键盘扫描函数则是根据用户的需求来设定温度可控的上限、 下限值 此后, 温度处理函数还将对采集得到的温度数据进行分析整理 ,其结果数据即可成为风扇控制函数发出指令来操纵对风扇电机的启停及转速调节等行为动作的实施依据。

4 仿真与分析

本次研究中 针对上述软硬件的关键主题设计 选用了Proteus 进行仿真 仿真系统结构设计如图 6 所示
由仿真实验结果可以表明 系统在先期设定了温度后 风扇电机可以根据温度的升高降低而相应地控制电机风速的变化。 当温度低于下限值时 风扇停止转动 ; 当超过上限值时 ,风扇转速提高, 风速达到最大

5 结合语

基于单片机的智能温控风扇采用 DS18B20 传感器 将检测到的温度转化为数字信号, 单片机对输入的数字信号进行分 析处理,当温度高于上限值时,风扇全速旋转; 当温度低于 下限时, 风扇停转 ; 当温度处于上限值与下限之间时 风扇开始平稳转动。 系统以单片机和 DS18B20 传感器为核心 具有温度显示和控制风扇转速的功能。

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

一文学会用Helm部署rancher 高可用集群

rancher集群架构图 Helm部署rancher 高可用集群 Helm简介 Helm是Kubernetes的一个包管理工具,用来简化Kubernetes应用的部署和管理。可以把Helm比作CentOS的yum工具。 Helm有如下几个基本概念: Chart: 是Helm管理的安装包,里面包含需要部署的安装包资源。可以把Chart比作C…

什么牌子的开放式耳机好?五大优质机型,新手必看!小白闭眼入系列

音乐技术的不断进步为耳机市场的发展有了更多的选择,开放式耳机成为音乐爱好者们新的一个选择。从最初的基础音质到如今的高解析度音频,开放式耳机经历了一次次的技术革新和升级。这类耳机以开放式不入耳的设计,舒适的佩戴体验著称&#xff0…

44.商城系统(二十五):k8s基本操作,ingress域名访问,kubeSphere可视化安装

上一章我们已经配置好了k8s集群,如果没有配置好先去照着上面的配。 一、k8s入门操作 1.部署一个tomcat,测试容灾恢复 #在主机器上执行 kubectl create deployment tomcat6 --image=tomcat:6.0.53-jre8#查看k8s中的所有资源 kubectl get all kubectl get all -o wide#查看po…

探索 PrimeVue——开源项目的卓越之旅

嗨,大家好,我是徐小夕。之前一直在社区分享零代码&低代码的技术实践,也陆陆续续设计并开发了多款可视化搭建产品,比如: H5-Dooring(页面可视化搭建平台)V6.Dooring(可视化大屏搭…

【数学建模】—【Python库】—【Numpy】—【学习】

目录 ​编辑 1. NumPy安装 2. ndarray对象 1. 创建ndarray 1.从列表或元组创建: 2.使用内置函数创建: 2. ndarray属性 3. 数组运算 1. 基本运算 2. 数学函数 3.统计函数 4. 数组索引与切片 1. 一维数组索引与切片 2.多维数组索引与切片 5.…

如何在 CentOS 上卸载 Nginx?

本章教程,主要介绍如何彻底卸载删除nginx 一、停止nginx服务 sudo systemctl stop nginx二、卸载nginx服务 sudo yum remove nginx三、查找nginx相关文件 sudo find / -name *nginx*将nginx相关文件进行删除 四、删除nginx相关文件 这里是常见的一些nginx相关文件 s

机器学习/pytorch笔记:time2vec

1 概念部分 对于给定的标量时间概念 t,Time2Vec 的表示 t2v(t)是一个大小为 k1的向量,定义如下: 其中,t2v(t)[i]是 t2v(t)的第 i 个元素,F是一个周期性激活函数,ω和 ϕ是可学习的参数。 以下是个人理解&am…

Shark!一个基于遗传算法的自动因子挖掘平台

DolphinDB 推出的 CPU-GPU 异构计算平台 Shark,将 DolphinDB 上的复杂指标计算能力无缝切换到 GPU 算力平台,大幅提升了计算性能。Shark 最新版本给开发者提供了两个主要功能:因子挖掘和因子计算。通过使用遗传算法,因子挖掘功能能…

编程哲学——抽象

主要参考资料: App Image Format: https://docs.espressif.com/projects/esp-idf/zh_CN/release-v4.4/esp32s3/api-reference/system/app_image_format.html# 目录 简介抽象:从现实到模型类和对象:现实与模型的映射封装:隐藏复杂性继承&#…

年薪超过30万的网工,需要具备什么技能?

网工是一个各行各业都需要的职业,工作内容属性决定了它不会只在某一方面专精,需要掌握网络维护、设计、部署、运维、网络安全等技能。 那么,网络工程师的技术水平体现在哪些方面?今天就跟你唠唠这个。 01 先来测测你的网络设计能力…

Flutter 像素编辑器#05 | 缩放与平移

theme: cyanosis 本系列,将通过 Flutter 实现一个全平台的像素编辑器应用。源码见开源项目 【pix_editor】。在前三篇中,我们已经完成了一个简易的图像编辑器,并且简单引入了图层的概念,支持切换图层显示不同的像素画面。 《Flutt…

Docker - Oracle Database 23ai Free

博文目录 文章目录 说明命令NavicatSYSTEMPDBADMIN 扩展公共用户本地用户 说明 Oracle 官方镜像仓库 Database 23ai Free | Oracle Docker 官方没有提供 Oracle Database 相关镜像, 但是 Oracle 官方镜像仓库有提供, 打开上面的链接, 选择 Database, 选择合适的版本, 如 enter…

Elasticsearch:使用 Llamaindex 的 RAG 与 Elastic 和 Llama3

这篇文章是对之前的文章 “使用 Llama 3 开源和 Elastic 构建 RAG” 的一个补充。我们可以在本地部署 Elasticsearch,并进行展示。我们将一步一步地来进行配置并展示。你还可以参考我之前的另外一篇文章 “Elasticsearch:使用在本地计算机上运行的 LLM 以…

Android frida 实战: 分析全民K歌的判断逻辑

本篇进入 Android frida 实战,旨在分析学习全民K歌这个 app 演唱页面的判断逻辑。 版本:8.22.38.278 此 app 为腾讯推出的面向国内的社交娱乐类应用软件,主要功能是提供用户唱歌、录制和分享自己演唱的歌曲。当非 vip 用户演唱某 vip 歌曲等功…

三元前驱体废水回收镍钴工艺:环保与经济效益的双重胜利

在全球新能源产业迅猛发展的背景下,锂离子电池作为绿色能源的核心组件,其需求量激增,带动了上游材料市场,尤其是三元前驱体材料的蓬勃发展。然而,伴随着行业的快速扩张,三元前驱体生产过程中产生的含镍钴废…

Qt开发 | Qmake与CMake | Qt窗口基类 | VS Qt项目与QtCreator项目相互转化 | Qt架构 | Qt学习方法

文章目录 一、Qmake与CMake介绍1.Qmake2.CMake3.使用qmake还是cmake? 二、Qt3个窗口基类的区别三、vs qt与QtCreator项目相互转化方法1.QtCreator项目转VS Qt2.VS Qt项目转QtCreator项目 四、Qt架构介绍与学习方法详解 一、Qmake与CMake介绍 Qmake和CMake都是构建系…

干货分享 | TSMaster 中不同总线报文消息过滤的操作方式

TSMaster软件平台支持对不同总线(CAN、LIN、FlexRay)报文和信号的过滤,包括全局接收过滤、数据流过滤、窗口过滤、字符串过滤、可编程过滤,针对不同的总线信号过滤器的使用方法基本相同。今天重点和大家分享一下关于TSMaster中报文…

全国首场以AI数字内容风控为主题的大会正式官宣,首批演讲嘉宾和议题揭晓!

曾经我们感叹的“AI迎来了iPhone时刻”,如今已变成“iPhone迎来了AI时刻”。前段时间,苹果全球开发者大会的召开,以及闻声而起的资本市场,无一不再次佐证了AI的无穷想象。 从OpenAI直播演示GPT-4o和谷歌的I/O开发者大会2024&…

Unity踩坑记录

1. 如果同时在父物体和子物体上挂载BoxCollider&#xff0c;那么当使用&#xff1a; private void OnTriggerEnter2D(Collider2D collision){if (collision.CompareTag("CardGroup")){_intersectCardGroups.Add(collision.GetComponent<CardGroup>());}} 来判…

【linux学习十七】文件服务管理

一、FTP FTP server:FTP(File Transfer Protocol,文件传输协议 )是 TCP/IP 协议组中的协议之一 软件包&#xff1a;vsftpd/安装 yum -y install vsftpd//准备文件 touch /var/ftp/abc.txt //注释:FTP服务器的主目录:“/var/ftp/”&#xff0c;是FTP程序分享内容的本机目录…