自制简易加湿器(PCB版)

PCB做出来了

下面是效果图:

 原理图:

 PCB layout:

 进度慢,没辙,课程压力太大了(作者菜)

PCB版本的改进了按键检测机制:添加了外部中断

下面是代码:

#include <Arduino.h>
#include <SimpleDHT.h>
#include "U8glib.h"
//#include <U2g2lib.h>
#define DHTpin 4 //自己按需求修改
#define Red_led 8
#define key_1 2
#define key_2 3
#define relay 5
U8GLIB_SSD1306_128X64 u8g(U8G_I2C_OPT_NONE);// 初始化i2c接口
SimpleDHT11 dht11(DHTpin);//初始化DHT11对象

String tmp;   
String hmp;
String KHS = "60";//显示阈值
int KH=60;        //实际阈值
void draw_hello(void) {
  u8g.setFont(u8g_font_unifont);
  u8g.drawStr( 0, 22, "Hello Baby!");
  
}

void draw_data(void) {
  //具体显示屏显示内容
  u8g.setFont(u8g_font_unifont);//设置字体
  u8g.drawStr( 0, 16, tmp.c_str());//写入字符串
  u8g.drawStr( 0, 32, hmp.c_str());
  u8g.drawStr( 15, 48, KHS.c_str());
}

void setup() {
  // put your setup code here, to run once:
  /*GPIO初始化*/
  pinMode(Red_led,OUTPUT);
  //pinMode(8, OUTPUT);//不知道干啥的
  pinMode(key_1,INPUT);
  pinMode(key_2,INPUT);
  pinMode(relay,OUTPUT);
  attachInterrupt( digitalPinToInterrupt(key_1), KEY1DOWN, CHANGE);
  attachInterrupt( digitalPinToInterrupt(key_2), KEY2DOWN, CHANGE);
  /*串口初始化*/
  Serial.begin(115200);
  draw_hello();
  delay(1500);
  /*Here is nothing!!*/
  /*这是一个空行*/
  // flip screen, if required
  // u8g.setRot180();
  // set SPI backup if required
  //u8g.setHardwareBackup(u8g_backup_avr_spi);
  // assign default color value
  
  if ( u8g.getMode() == U8G_MODE_R3G3B2 ) {
    u8g.setColorIndex(255);     // white
  }
  else if ( u8g.getMode() == U8G_MODE_GRAY2BIT ) {
    u8g.setColorIndex(3);         // max intensity
  }
  
  else if ( u8g.getMode() == U8G_MODE_BW ) {
    u8g.setColorIndex(1);         // pixel on
  }
  
  else if ( u8g.getMode() == U8G_MODE_HICOLOR ) {
    u8g.setHiColorByRGB(255,255,255);
  }
  
}

void loop() {
  /*led指示灯闪烁*/
  digitalWrite(Red_led,HIGH);
  delay(500);
  digitalWrite(Red_led,LOW);
  delay(500);
  //draw_hello();
  //delay(1200);
  /*DHT11读取并串口打印显示*/

  byte temperature = 0;
  byte humidity = 0;
  byte humidity_last = 0;
  int err = SimpleDHTErrSuccess;
  if ((err = dht11.read(&temperature, &humidity, NULL)) != SimpleDHTErrSuccess) {
    Serial.print("Read DHT11 failed, err="); Serial.println(err);delay(1000);
    return;
  }
  humidity_last = humidity;         
  //字符串拼接
  tmp += String("Temperature:");
  tmp += String(temperature);
  tmp += String("*C");

  hmp += String("Humidity:  ");
  hmp += String(humidity);
  hmp += String("RH%");
  Serial.print((int)temperature); Serial.print(" *C, "); 
  Serial.print((int)humidity); Serial.println(" H");
  if(humidity<KH){
    digitalWrite(relay,HIGH);
    //digitalWrite(A0,LOW);
    Serial.println("Warnning!");
  }
  if(humidity>=KH){
    //digitalWrite(A0,HIGH);
    digitalWrite(relay,LOW);
  }
  /*oled显示屏显示程序*/
  u8g.firstPage();  
  do {
    if(humidity != humidity_last){
      u8g.drawStr( 0, 16, tmp.c_str());
      u8g.drawStr( 0, 32, "                ");
      delay(1000);
    }
    draw_data();
  } while( u8g.nextPage() );
}

void KEY1DOWN(){
    KH++;
    KHS=String(KH);
}

void KEY2DOWN(){
    KH--;
    KHS=String(KH);
}

说说本机功能: 1、基本功能:实现空气加湿; 2、基本功能:当水烧干或者低于一定液位,自动停止加湿功能; 3、基本功能:按键轻触开关,界面显示当前环境温湿度数据; 4、一般功能:水烧干或者低于一定液位,自动断电并指示灯亮起; 5、一般功能:检测当前环境湿度有温度; 6、一般功能:显示当前环境湿度及设定湿度,以及显示当前环境温度; 7、一般功能:通过按键设定要求的湿度,加湿器根据设定值调节环境湿度; 8、高级功能(选作):水汽加热。加热后可以作为熏脸器使用,具有美容润肤的功效; 9、能显示在20分钟内的室内湿度变化曲线。同时会显示出一种当前设定的温度线给用户对比参考(因界面原因,湿度只能以0-10来表示0%-100% 时间未作显示,只是给用户以参考)。 系统简介: 1、本系统用24V的适配器供电,安全,可放置于桌面。 2、有三个界面,每个界面下有三个提示语,对应前三个按键的功能(除了曲线界面任意键退出外)。 3、工作的大致情况是 a、当湿度未达到设置时,风速加湿会开,加热跟随系统设定; b、当湿度达到设置时,风速将减半处理,加热跟随系统设定; c、当湿度大于设置值5%时,系统进入待机状态(关闭加湿、风扇、加热); d、随后湿度只有降到小于设置值的2%时,方才开启加湿,加热跟随系统设定; e、当水位小于最小水位值(用红外对管来做检测)时,系统进入待机状态(关闭加湿、风扇、加热);
### 回答1: 5V加湿器原理图PCB图表示了加湿器的电路连接方式和组成部分。加湿器通常包括以下几个主要部分: 1. 电源电路:一般是使用5V的直流电源供电,可以通过插座或USB口连接。 2. 控制电路:主要是一个微控制器或芯片,用于控制加湿器的运行。它接收来自传感器的湿度信号并根据设定的湿度值控制加湿器的运行状态。 3. 湿度传感器:用于检测环境中的湿度水平。常见的湿度传感器有电容式湿度传感器和电阻式湿度传感器。 4. 水箱和水泵:水箱用于存储水源,水泵用于将水源送到加湿器的加热器或超声波雾化器。 5. 加热器或超声波雾化器:用于将水源转化为蒸汽或雾化,并将其释放到空气中。 6. 风扇:用于将蒸汽或雾化的水分均匀地分布到空气中。 在PCB图中,这些组成部分将通过连接线路连接起来。例如,电源连接线将连接电源电路和其他部分,控制信号线将连接微控制器和其他传感器部分。 除了这些主要部分外,还可能存在其他电子元件,例如电容器、电阻器和连接线等。这些元件在PCB图中标明了它们的位置和连接方式。 总之,5V加湿器原理图PCB图提供了加湿器的电路连接方式和关键组成部分的布局,使得我们可以更好地理解加湿器的工作原理和实现方式。 ### 回答2: 5V加湿器的原理图和PCB图如下: 原理图: 原理图是用符号和线条表示电气和电子元件之间的连接关系的图纸。5V加湿器的原理图主要包括以下关键元件: 1. 供电电源:原理图中会标明5V的直流电源,用来供给整个加湿器的工作。 2. 湿度传感器:用来感知环境中的湿度,根据湿度的变化来控制加湿器的启停。 3. 控制器:负责加湿器的整体控制,接收湿度传感器的信号,判断是否需要加湿,控制电路的工作。 4. 加湿器模块:包括水箱、喷嘴等部件,接收来自控制器的指令,根据指令将水转化为水蒸气,并将水蒸气释放到环境中。 PCB图: PCB图是指印制电路板的布局图,用来展示电子元件在电路板上的位置和连接方式。5V加湿器PCB图上会显示以下主要元件的位置: 1. 控制器:通常位于PCB的中央位置,用来方便与其他元件的连接。 2. 湿度传感器:通常紧邻加湿器的外壳,方便感知环境湿度。 3. 电源接口:用来连接供电电源的插槽,位于PCB边缘的一个位置。 4. 加湿器模块接口:用来连接加湿器模块的插座,通常位于PCB上方或下方,便于连接喷嘴、水箱等部件。 以上是5V加湿器的原理图和PCB图简要说明,具体的原理图和PCB图设计可能会根据不同厂商和产品而有所差异。 ### 回答3: 5V加湿器的原理图主要包括以下几个部分: 1. 电源模块:负责将外界输入的交流电转换成所需的5V直流电源供给整个加湿器电路使用。此模块通常包括整流桥、滤波电容和稳压电路。 2. 控制模块:主要由微处理器或控制芯片组成,用于控制加湿器的各项功能。控制模块通常包括温湿度传感器、按钮开关和显示屏等,通过读取温湿度传感器的数据来判断当前环境湿度,并根据设定值控制加湿器的工作。 3. 驱动模块:负责驱动加湿器中的加热元件和风扇。加热元件通过加热器接收电能将水加热,使其转化为蒸汽,从而增加室内湿度。风扇则通过旋转产生气流,将湿润的空气均匀分布到室内。 4. 保护模块:用于保护加湿器及其电路免受过电流、过压、过温等异常情况的损害。保护模块通常包括过流保护器、过压保护器和过温保护器等,一旦检测到异常情况,会自动断开电路以保护整个系统。 5V加湿器PCB图即为以上各个模块在电路板上的布局图,通过布线和连接元件将各个模块连接起来,形成一个完整的电路。 总之,5V加湿器的原理图PCB图是一个包含电源模块、控制模块、驱动模块和保护模块等部分的电路图,通过合理组合和布局这些模块,实现加湿器的正常工作。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值