Industrielle Fertigung
Industrielles Internet der Dinge | Industrielle Materialien | Gerätewartung und Reparatur | Industrielle Programmierung |
home  MfgRobots >> Industrielle Fertigung >  >> Manufacturing Technology >> Herstellungsprozess

Arduino-basiertes Luftqualitäts- und Komfort-Sensorkit

Komponenten und Zubehör

Arduino Nano R3 × 1
DHT11 Temperatur- & Feuchtigkeitssensor (3 Pins) × 1
Luftqualitätssensor (MQ135) × 1
0,96″ I2C OLED-Display × 1

Benötigte Werkzeuge und Maschinen

Apps und Onlinedienste

Über dieses Projekt

Oft fühlt man sich morgens nach dem Aufwachen schlapp, obwohl man gut geschlafen hat. Ursache kann eine schlechte Luftqualität im geschlossenen Schlafzimmer sein.

Arduino-basiertes Luftqualitäts- und Komfort-Sensorkit

Dieses kostengünstige Luftqualitäts-Messgerät überwacht die Raumluft mit dem MQ135-Sensor, misst Temperatur und Luftfeuchtigkeit per DHT11 und zeigt die Werte auf einem OLED-Display an. Ein unterhaltsames und nützliches Projekt.

Verkabelung

Arduino-basiertes Luftqualitäts- und Komfort-Sensorkit
Arduino-basiertes Luftqualitäts- und Komfort-Sensorkit
Arduino-basiertes Luftqualitäts- und Komfort-Sensorkit
Arduino-basiertes Luftqualitäts- und Komfort-Sensorkit

Anschlüsse:

Programmierung

Für den Code müssen folgende Bibliotheken installiert werden:

Der Code enthält zwei Hauptfunktionen: sendSensor() und air_sensor().

Arduino-basiertes Luftqualitäts- und Komfort-Sensorkit
Arduino-basiertes Luftqualitäts- und Komfort-Sensorkit

In air_sensor() müssen Sie die gasLevel-Grenzwerte möglicherweise an Ihren Sensor anpassen. Dazu versorgen Sie den MQ135 24 Stunden lang mit 5 V in sauberer Umgebung („Einbrennen“), da der Sensor bei Lieferung verunreinigt ist. Danach justieren Sie die Schwellenwerte an Ihrem Aufstellort.

Code

Arduino Luftqualitäts-Monitor

#include <SPI.h>
#include <Wire.h>
#include <Adafruit_GFX.h>
#include <Adafruit_SSD1306.h>
#include <Fonts/FreeSans9pt7b.h>
#include <Fonts/FreeMonoOblique9pt7b.h>
#include <DHT.h>

#define SCREEN_WIDTH 128
#define SCREEN_HEIGHT 64
#define OLED_RESET 4
Adafruit_SSD1306 display(SCREEN_WIDTH, SCREEN_HEIGHT, &Wire, OLED_RESET);

#define sensor A0
#define DHTPIN 2
#define DHTTYPE DHT11

int gasLevel = 0;
String quality = "";
DHT dht(DHTPIN, DHTTYPE);

void sendSensor() {
  float h = dht.readHumidity();
  float t = dht.readTemperature();
  if (isnan(h) || isnan(t)) {
    Serial.println("Failed to read from DHT sensor!");
    return;
  }
  display.setTextColor(WHITE);
  display.setTextSize(1);
  display.setFont();
  display.setCursor(0, 43);
  display.println("Temp :");
  display.setCursor(80, 43);
  display.println(t);
  display.setCursor(114, 43);
  display.println("C");
  display.setCursor(0, 56);
  display.println("RH :");
  display.setCursor(80, 56);
  display.println(h);
  display.setCursor(114, 56);
  display.println("%");
}

void air_sensor() {
  gasLevel = analogRead(sensor);
  if (gasLevel < 181) {
    quality = " GOOD!";
  } else if (gasLevel > 181 && gasLevel < 225) {
    quality = " Poor!";
  } else if (gasLevel > 225 && gasLevel < 300) {
    quality = "Very bad!";
  } else if (gasLevel > 300 && gasLevel < 350) {
    quality = "ur dead!";
  } else {
    quality = " Toxic";
  }
  display.setTextColor(WHITE);
  display.setTextSize(1);
  display.setCursor(1, 5);
  display.setFont();
  display.println("Air Quality:");
  display.setTextSize(1);
  display.setCursor(20, 23);
  display.setFont(&FreeMonoOblique9pt7b);
  display.println(quality);
}

void setup() {
  Serial.begin(9600);
  pinMode(sensor, INPUT);
  dht.begin();
  if (!display.begin(SSD1306_SWITCHCAPVCC, 0x3c)) {
    Serial.println(F("SSD1306 allocation failed"));
  }
  display.clearDisplay();
  display.setTextColor(WHITE);
  display.setTextSize(2);
  display.setCursor(50, 0);
  display.println("Air");
  display.setTextSize(1);
  display.setCursor(23, 20);
  display.println("Quality monitor");
  display.display();
  delay(1200);
  display.clearDisplay();
  display.setTextSize(2);
  display.setCursor(20, 20);
  display.println("BY Abid");
  display.display();
  delay(1000);
  display.clearDisplay();
}

void loop() {
  display.clearDisplay();
  air_sensor();
  sendSensor();
  display.display();
}

Gehäuse und benutzerdefinierte Teile

Dies ist ein 3D-gedrucktes Gehäuse für das Projekt. Ein 3D-Drucker ist nicht zwingend erforderlich; Sie können auch ein Gehäuse aus Karton oder anderen Materialien bauen.

Schaltplan

Arduino-basiertes Luftqualitäts- und Komfort-Sensorkit

Herstellungsprozess

  1. Winzige PM2.5 & VOC Sensoren ermöglichen Echtzeit-Personal-Luftqualitätsmonitoring
  2. Bosch Sensortec stellt KI-fähigen BME688 Luftqualitätssensor vor, um Virusübertragungsrisiko zu senken
  3. Renesas erweitert Indoor Air Quality Sensor Plattform mit eingebetteter KI für verbesserte Geruchserkennung
  4. Raspberry Pi Luftqualitäts- & Wetterstation mit InfluxDB & Grafana bauen
  5. Luftqualität messen mit OpenSensors: Arduino & Python Anleitung
  6. DIY Luftqualitätsmonitor: Kosteneffektiver EPA-konformer Detektor
  7. Helium-basierter solarbetriebener Luftqualitätssensor: Design- und Deployments-Guide
  8. LoRa-basiertes Smart-City-Luftqualitäts-Monitoring-System
  9. Monitor-Ambilight selbst bauen mit Arduino Nano & WS2812B LEDs
  10. Fortschrittlicher kohlenstoffbasierter NO₂-Sensor verbessert Innenraumluftüberwachung