概述

基于Arduino的温控风扇系统,经DS18B20温度采集,将数据传送到Arduino,通过PWM调节占空比进而控制电机转速,经过驱动电路驱动电机,由电机的计数模块得到电机转速并用LCD1602显示。

设计方案


高电平时电压为U,占空比为 ,则单个周期内平均电压为 ,所以占空比越大,直流电机转速越快。所用直流电机转一圈输出41个脉冲,设一个脉冲的频率为fHz,则电机转速为:v=f/41*60 r/min。

硬件设计

温度采集电路:在此设计中将DS18B20接在Arduino的10号脚上实现温度的采集。

电机计数模块:通过电机发射脚和接收脚将位移转换成周期性的电信号,再把这个电信号转变成计数脉冲,用脉冲的个数表示位移的大小。将信号反馈给Arduino单片机

驱动电机模块:本设计由Arduino的9口输出PWM脉冲,通过8550驱动直流电机,以实现温控风扇转速的调节。当环境温度升高时,占空比变大,因此转速变快,温度减小时,转速变慢,由于8550时低通的,编程时需要注意。

软件设计

#include <OneWire.h>
#include <DallasTemperature.h>
#include <LiquidCrystal.h>
#include <Servo.h>
#define ONE_WIRE_BUS 10//
LiquidCrystal lcd(12, 11, 7, 6, 5, 4);// 初始连接在单总线上的单总线设备
OneWire oneWire(ONE_WIRE_BUS);
DallasTemperature sensors(&oneWire);
Servo myservo;  // 定义舵机对象,最多八个
double x;//温度传感器传入值
int Speed;
int Speeds;
int speedss;
unsigned long period;
unsigned char flag=0;
int M=3;
void setup() {pinMode(9,OUTPUT);pinMode(3,INPUT);Serial.begin(9600);        attachInterrupt(0, freqDetect, RISING);Serial.begin(9600);Serial.println("Dallas Temperature IC Control Library Demo");sensors.begin();lcd.begin(16, 2);
}void loop() {//获取温度sensors.requestTemperatures();Serial.print("Temperature for the device 1 (index 0) is: ");Serial.println(sensors.getTempCByIndex(0));delay(1000);  lcd.setCursor(0, 0);lcd.print(sensors.getTempCByIndex(0));
//控制转速x=1024/10*(sensors.getTempCByIndex(0)-25);//温度从25到35speedss= map(x, 0, 1023, 0, 180);Speeds=180-speedss;analogWrite(9,Speeds);
// 测转速并显示
if(1==flag){noInterrupts();flag=0;Speed=60000000/(41*period);Serial.println(Speed);Serial.print(" r/min");interrupts();delay(1000);lcd.setCursor(0, 1);lcd.print("     ");lcd.setCursor(0, 1);lcd.print( Speed);delay(1000);}
}
//测周期
void freqDetect()
{static unsigned long lastTime;period = micros()-lastTime;flag=1;lastTime = micros();
}

结果




v=411/41*60=601 r/min

基于Arduino的温控风扇相关推荐

  1. 【毕设狗】【单片机毕业设计】基于单片机的温控风扇的设计–仿真设计

    实物链接: 基于单片机的温控风扇的设计-实物设计 软件安装: Keil:点击下载 Proteus:点击下载 AD:点击下载 Visio:点击下载 设计简介: 本设计是基于单片机的温控风扇设计,主要实现 ...

  2. 基于单片机的温控风扇

    设计简介: 本设计是基于单片机的温控风扇,主要实现以下功能: 可通过LCD1602显示温度和档位: 可通过按键调整三档温度和档位: 可通过按键切换模式. 标签:51单片机.LCD1602.MX1508 ...

  3. 【电路】基于单片机智能睡眠枕系统设计-基于单片机音乐喷泉制作设计-基于单片机智能温控风扇调速系统设计-基于单片机智能自动循迹小车控制系统设计-基于数字电路的4人投票系统设计(仿真,报告)毕设课设资料

    1620基于单片机智能睡眠枕系统设计-文档+PPT+PCB图+原理图+源码 智能睡眠枕主要由lcd屏幕.蓝牙.压力传感器.蜂鸣器.单片机等等组成,用户可通过四个独立按键进行操控(四个按键从左至右为1. ...

  4. 23、基于51单片机温控风扇红外遥控智能温度控制系统设计

    毕设帮助.开题指导.技术解答(有偿)见文末. 目录 摘要 一.硬件方案 二.设计功能 三.实物图 四.原理图 五.PCB图 六.Proteus仿真 七.程序源码 八.资料包括 摘要 本设计为一种温控风 ...

  5. 基于STM32的温控风扇的设计程序

    这周末有空,自己完成一个用STM32开发板加上一个电脑散热风扇,以及DS18B0完成了一温控和手动的风扇.主要功能是:1.自动模式,利用温度控制风扇的转速以及风扇的开关: 2.手动模式,通过按键控制风 ...

  6. 基于数字电路交通灯信号灯控制系统设计-基于单片机病房温度监测与呼叫系统设计-基于STM32的无线蓝牙心电监护仪系统设计-基于STM32的智能蓝牙温控风扇控制设计-基于STM32的智能温室控制系统设计

    1617基于数字电路交通灯信号灯控制系统设计(仿真电路,论文报告)  摘  要:交通灯控制系统在城市交通控制中发挥着重要的作用,本次课程设计就是以城市交通灯控制系统为背景的,主要通过运用学过的数字电路 ...

  7. 基于STM32的智能温室控制系统仿真电路设计(温控补光)-基于STM32的智能蓝牙温控风扇控制系统设计-基于STM32的无线蓝牙心电监护仪系统设计【毕设课设分享】

    1609 基于STM32的智能蓝牙温控风扇控制系统设计-毕设课设 1.LCD1602液晶显示当前温度,温度上下限值,风扇等级,自动手动模式: 2.设置有4个按键,按键1可以设置自动和手动2种模式切换: ...

  8. 基于stc89c51单片机的温控风扇(程序代码+原理图)

    基于stc89c51单片机的温控风扇(程序代码+原理图) 自动模式下,通过读取ds18b20的温度,并且通过红外人体感应,判断是否有人,如果有人就智能自动设置风扇的pwm输出,达到智能调温的作用,如果 ...

  9. 基于Blinker ESP8266 远程电压电流、功率计、温湿度计、ADC接口测温、温控风扇、低电压保护、低压报警功能。用来监测我的太阳能充电。SSD1306可轮番显示电压信息和温度信息。APP图表

    ESP8266系列文章目录 目录 ESP8266系列文章目录 经过不断的努力,处女之作终于做出来了.用的Arduino 经过一段时间不断熟练了,做了一些更新:2022.10.30   可以直接主页下载 ...

最新文章

  1. #define WIN32_LEAN_AND_MEAN 的作用
  2. 你的机器人女友到了,请签收
  3. apache+tomcat​现在我们实现session共享
  4. 使用VC++2015 实现XP按钮效果
  5. 深度linux安装双,Deepin 20正式发布,新的外观和感觉,双内核安装
  6. 依赖注入底层反射原理_Spring中反射与反射的原理(转载)
  7. Java多线程精讲(非高并发-授课专用)附synchronized
  8. Java黑皮书课后题第4章:*4.17(一个月的天数)编写一个程序,提示用户输入一个年份和一个月份名称的前3个字母(第一个字母使用大写形式),显示该月中的天数。如果月份非法则显示出错信息
  9. ubuntu下部署mongodb以及设置允许远程连接
  10. HTTPS 能否避免流量劫持?
  11. java 如何捕获线程中的异常处理_如何捕获Java中另一个线程抛出的异常?
  12. extjs java 教程,JAVA开发工具 - 在IntelliJ IDEA下开发ExtJS应用指南
  13. android 存储空间监控,浅谈 Android 内存监控(中)
  14. python周报第十九周
  15. Jupyter notebook、JypterLab的本地安装与使用
  16. 软件测试-----经常问道的面试题目
  17. Matlab实现均值滤波
  18. html中div圆角效果,div+css实现圆角即网页上常用的圆角效果
  19. GD32 NAND U盘
  20. VCRedist.exe静默安装方法(转)

热门文章

  1. java压缩zip格式文件下载
  2. python取百度歌曲
  3. ICP和公安网备案以及网站底部添加相应备案号
  4. TF2.0深度学习实战(一):分类问题之手写数字识别
  5. leica[.m00]如何转成rinex[2.0x,3.0x]格式
  6. Webstorm,Eclipse常用快捷键
  7. Eclipse 简介和插件开发天气预报
  8. 图片怎么转换文字?识别渠道一览
  9. metabase编译
  10. markdown字体大小设置_markdown中数学公式字体大小的方法