arduino智能风扇

news/2024/10/28 20:31:54/

Arduino 智能风扇

文件

ArduinoIDE下载

https://www.arduino.cc

所需工具

● Arduino Uno开发板

https://detail.tmall.com/item.htm?spm=1139j.1.0.0.2fa62cadLV9YyO&id=22375863328&ns=1&abbucket=1

DHT11 温湿度模块

DHT11DHT22温湿度传感器模块SHT30/SHT3031 AM2302数字开关探头-tmall.com天猫

LCD1602 显示屏

LCD1602液晶显示屏模块蓝屏IIC/I2C接口转接板串行5V ph2.0防反接-淘宝网 (taobao.com)

1路5V继电器模块

【优信电子】1路5V继电器模块 光耦隔离/低电平吸合 智能小车-淘宝网 (taobao.com)

9v电池

南孚9V电池碱性方块万用表专用电池方形9伏大容量指针数字万用表红外线测温仪器通用电池方形官方旗舰店[367]-tmall.com天猫

1k电阻 2个

金属膜电阻器元件1%色环1K2k 10K 100K 47K470 10欧100欧120欧姆m-tmall.com天猫

直流电机

电动电机 四驱车马达 140马达玩具 手工制作diy 电压3V-淘宝网 (taobao.com)

小风扇

3叶小风扇叶片小马达usb风扇叶学生手工diy制作科学玩具迷你扇叶-淘宝网 (taobao.com)

面包板

MB-102830孔 优质面包板线路板实验板万能板165*55*10mm 红蓝线-淘宝网 (taobao.com)

触摸传感器

冠亲适用于Arduino电子积木 触摸型触摸传感器 触摸芯片-tmall.com天猫

若干条连接导线

杜邦线母对母 公对母 公对公10CM 20CM 30CM 15CM 40CM 连接线-淘宝网 (taobao.com)

首先,先了解arduino uno板以及面包板的工作原理

Arduino由一个基于单片机的开放源码的硬件平台和一套专门的开发环境组成。它可以用来开发交互产品,比如它可以读取大量的开关和传感器信号,并且可以控制各式各样的电灯、电机和其他物理设备。

在面包板的上下两侧分别有两列插孔,一般是作为电源引入的通路。上方第一行标有“+”的一列有5组插孔,每组5个(内部5个孔连通),均为正极。上方第二行标有“-”的一列有5组插孔,每组5个(内部5个孔连通),均为接地。面包板下方第一行与第二行结构同上。如需用到整个面包板,通常将“+”与“+”用导线连接起来,“-”与“-”用导线连接起来。

连接步骤

LCD1602 显示屏,连接如下:

● 将 “GND引脚” 连接到 “Arduino Uno 开发板” 的 “GND 引脚” ;

● 将 “VDD 引脚” 连接到 “Arduino Uno 开发板” 的 “VCC(5v) 引脚” ;

● 将 “V0 引脚” 接 “1K电阻” 到 “GND (或者接电位器) 引脚” ;

● 将 “RS 引脚” 连接到 “Arduino Uno 开发板” 的 “引脚 12” ;

● 将 “RW 引脚” 连接到 “Arduino Uno 开发板” 的 “GND 引脚”。此时, “LCD1602 显示屏” 处于读取状态;

● 将 “E(使能) 引脚” 连接到 “Arduino Uno 开发板” 的 “引脚 11” ;

● 将 “D4-D7 引脚” 分别连接到 “Arduino Uno 开发板” 的 “引脚10,9,8,7 引脚” ;

● 将 “BLA 引脚” 接 “1K电阻” 到 “VCC(5v) 引脚” ;

● 将 “BLK 引脚” 接 “GND 引脚” 。

然后将继电器模块连接到 Arduino Uno 开发板 。在继电器模块的输入端,连接如下:

● 将继电器模块的 “VCC 引脚” 连接到 “Arduino Uno 开发板” 的 “5V 引脚 " ;

● 将继电器模块的 “OUT引脚” 连接到 “Arduino Uno 开发板”的 “引脚 3” ;

● 将继电器模块的 “GND 引脚” 连接到 “Arduino Uno 开发板” 的 “GND 引脚”。

然后,按照以下方式连接DHT11温湿度传感器:

● 将 “DHT11” 的 “引脚 1(即VCC引脚)” 连接到 “Arduino Uno 开发板” 的 “5V 引脚” 。

● 将 “DHT11 的 “引脚 2(数据引脚)” 连接到 “Arduino Uno 开发板” 的 “引脚 2” 。

● 将 “DHT11” 的 “引脚 3(数据引脚)” 置空。

● 将 “DHT11” 的 “引脚 4(接地引脚)” 连接到 “Arduino Uno 开发板” 的 “GND 引脚” 。

然后按照以下步骤将触摸传感器与“Arduino Uno 开发板”相连

●将 “触摸传感器“的 “VCC” 连接到 “Arduino Uno 开发板” 的 “5v引脚”

●将 “触摸传感器“的 “GND” 连接到 “Arduino Uno 开发板” 的 “GND引脚”

●将 “触摸传感器“的 “IN” 连接到 “Arduino Uno 开发板” 的 “4号引脚

最后按照以下步骤将继电器和电机相连和电池相连

● 将继电器的“常闭端”连接到直流电机的负极即黑线

● 将继电器的“公共端”连接到电池的负极

● 将直流电机的正极(红线)连接到电池正极

成品展示

此程序需要引用两个 “库文件” ,分别为:

● <LiquidCrystal.h> //直接在Arduino编译软件中添加

● <dht11.h> //需要在Arduino编译软件中另外增加库文件链接:https://pan.baidu.com/s/1k2ukli_xloLktTn5UXw3yA?pwd=6666

提取码:6666

代码展示

#include<LiquidCrystal.h>

#include<dht11.h>

#defineDHT11PIN 2 //定义温湿度针脚号为2号引脚

dht11DHT11;

LiquidCrystallcd(12, 11, 10, 9, 8, 7); //设置接口

intincomedate = 0;

intrelayPin = 3; //继电器引脚

intledPin = 13; // 设置指示灯为板载测试灯

intKEY = 4; // 连接触摸传感器到数字接口4

voidsetup()

{

Serial.begin(9600); //连接到电脑串口监视器

pinMode(relayPin, OUTPUT); //继电器输出模式

pinMode(DHT11PIN,OUTPUT); //温湿度模块输出模式

pinMode(ledPin, OUTPUT); //设置连接到指示灯的管脚为输出模式

pinMode(KEY, INPUT); //设置触摸传感器的连接管脚为输入模式

lcd.begin(16,2);

lcd.clear(); //清屏

delay(1000); //延时1000ms

}

voidloop ()

{

int chk = DHT11.read(DHT11PIN); //将读取到的值赋给chk

inttem=(float)DHT11.temperature; //将温度值赋值给tem

inthum=(float)DHT11.humidity;

Serial.print("Humidity:"); //打印出Humidity:

Serial.print(hum);

Serial.print("Tempeature:");

Serial.print(tem); //使屏幕显示文字//打印出湿度结果

Serial.println("%");

delay(200);

lcd.setCursor(0, 0) ; //设置光标位置为第1行第1个位置

lcd.print("Tempeature:");

lcd.print(tem); //使屏幕显示温度

lcd.setCursor(0, 1) ;

lcd.print("Humidity:");

lcd.print(hum); //使屏幕显示湿度

if (tem >16 ||digitalRead(KEY)==LOW) //如果温度大于16摄氏度或者触摸传感器为低电平

{

digitalWrite(ledPin, HIGH);

digitalWrite(relayPin, HIGH); //继电器开,风扇开

Serial.println(" OPEN!");

} else

{

digitalWrite(ledPin, LOW);

digitalWrite(relayPin,LOW);

Serial.println("CLOSE!");

}

delay(500); //延时0.1秒,这里也就是刷新速度。

}

实验结论:通过运行程序,湿温度感应到温度传到显示屏,当温度大于16摄氏度时,风扇会转动,或者触碰触摸传感器时,风扇也会转动。


http://www.ppmy.cn/news/147548.html

相关文章

基于STM32水温炉温温度控制系统电路设计-分享

(1)、主控制器采用STM32单片机 (2)、必须要有温度检测装置&#xff0c;采用DS18B20 (3)、要有加热装置&#xff0c;采用220V交流电供电 (4)、要能够设置报警的温度上限值以及温度加热的下限值 (5)、要有声光报警装置&#xff0c;用于报警温度上限 (6)、要能够自动加热使温…

家庭装修工作分解结构

1000家庭装修1100各功能区装修确定1110门厅1120客厅1121客厅的环境1122客厅的色彩1123客厅的自然采光1124客厅的空间分隔1300卧室1310卧室的功能1320卧室的色彩1400书房 1500儿童房1600餐厅 1610餐厅 的环境1620餐厅的色彩1700厨房餐厅 的环境厨房的色彩厨房的通风1800卫生间卫…

EasyExcel实现excel区域三级联动(模版下载)

序号 前言需求不通过excel,实现省市区级联实战pom.xml配置controller配置service类业务处理类测试 前言 首先&#xff0c;我们先来了解一下java实现模板下载的几种方式 1、使用poi实现2、使用阿里的easyexcel实现 今天社长就给大家说一下easyexcel的实现模板下载的之旅。在这里…

【数据结构】——树习题

目录 题1题2题3题4题5题6题7题8题9 题1 1、设高度为h的二叉树上只有度为0和度为2的结点&#xff0c;则该二叉树中所包含的结点数至少为&#xff08;&#xff09;&#xff0c;最多为&#xff08;&#xff09;。 A、h &#xff1b;2h-1 B、2h-1 &#xff1b; 2h-1 C、2h1&#xf…

什么是代购系统

随着国内外市场的不断开放和消费升级&#xff0c;越来越多的消费者开始选择海外代购&#xff0c;寻求更具性价比和个性化的商品选购方式。因此&#xff0c;代购业务也如雨后春笋般发展起来&#xff0c;成为了一个广受欢迎的行业。 代购系统是为了满足消费者的需要而诞生的&…

【KKT】∇f(x)+λ∇g(x)=0中λ的讨论

Karush-Kuhn-Tucker (KKT)条件 〇、问题背景 在阅读 Karush-Kuhn-Tucker (KKT)条件 时&#xff0c;不太能理解 ∇ f \nabla f ∇f 的方向&#xff0c;以及 ∇ g \nabla g ∇g 的方向&#xff1a; 为什么 ∇ f \nabla f ∇f 是指向可行域内部&#xff0c; ∇ g \nabla g ∇g…

手把手教你rtsp流媒体分析(引导篇,欢迎订阅专栏)

系列音视频开发 文章目录 系列音视频开发前言一、RTSP是什么&#xff1f;二、RTP是什么&#xff1f;三、RTCP是什么&#xff1f;四、RTSP 源码学习五、H265 RTSP流总结 前言 在安防行业中&#xff0c;onvif协议与gb协议是两种标准&#xff0c;gb是国内安防行业的标准&#xff…

安装sqoop

解压&#xff1a; sqoop-1.4.7.bin__hadoop-2.6.0.tar.gz tar -zxvf sqoop-1.4.7.bin__hadoop-2.6.0.tar.gz ln -s sqoop-1.4.7.bin__hadoop-2.6.0.tar.gz sqoop 替换 lib中commons-lang3.jar删除替换为commons-lang-2.6.jar 备注&#xff1a; https://mvnrepository.com/可…