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

CoroFence Thermaldetektor: PIR-Sensor & IoT-Integration mit Panasonic GridEye

Komponenten und Zubehör

Komponente Menge
Panasonic GridEye (AMG8833/AMG885x) 1
PIR-Bewegungsmelder (Reichweite ca. 7 m) 1
Summer (Buzzer) 1
RGB-LED 1
Arduino Nano 33 IoT 1
LiPo-Akku 3,7 V (wiederaufladbar) 1
Kunststoffgehäuse (Abzweigdose) 1

Apps und Onlinedienste

Über dieses Projekt

Aktuelle Pandemie-Lage

WHO empfiehlt: Händewaschen, Husten-/Nies-Etikette, Abstand halten. An Flughäfen werden thermische Scanner eingesetzt, um fiebernde Reisende zu detektieren.

Selbstbau-Thermaldetektor

Idee: Ein kompakter, batteriebetriebener Thermalscanner für Hauseingang, Labor, Büro oder Shuttle. Er warnt vor Personen mit erhöhter Körpertemperatur, bevor man in Kontakt kommt.

Eingangs-Sensoren

Panasonic GridEye

8×8 Thermopile-Array (64 Pixel), berührungslose Flächen-Temperaturmessung, 60° Sichtwinkel, I²C, 1/10 fps, Interrupt-Funktion. Ideal für Personenerkennung auf 1,5–5 m.

PIR-Sensor

Erkennt Bewegung bis ca. 10 m (typisch 5–12 m). Pyroelektrisches Element detektiert IR-Änderungen. Dient als Trigger: Thermalkamera nur bei Bewegung aktivieren → Stromsparen.

Gehäuse & Aufbau

Sensoren in einer Abzweigdose montieren: GridEye und PIR nach außen gerichtet, Elektronik innen.

CoroFence Thermaldetektor: PIR-Sensor & IoT-Integration mit Panasonic GridEye

Visuelle & akustische Ausgabe

Farb-Logik (Beispiel)


if (tempC < 16) setColor(0, 0, 255);       // Blau
else if (tempC < 20) setColor(80, 0, 80);  // Cyan
else if (tempC < 24) setColor(0, 255, 255); // Aqua
else if (tempC < 28) setColor(0, 255, 0);   // Grün
else if (tempC < 37) setColor(255, 255, 0); // Gelb
else if (tempC < 39) setColor(255, 20, 20); // Magenta
else { setColor(255, 0, 0); tone(buzzPin, 1000); } // Rot + Alarm

Test mit Bügeleisen

Zur Validierung des Hochtemperaturalarms diente ein Dampfbügeleisen (zufällig beim Haushalt entdeckt).

CoroFence Thermaldetektor: PIR-Sensor & IoT-Integration mit Panasonic GridEye

Daten-Visualisierung & Cloud

Live-Daten per Serial an Node.js-Terminal oder direkt an DasData-Plattform. Geplant: Erweiterte Modellierung & Alarmierung.

Code (Arduino / C++)


#include <Wire.h>
#include <SparkFun_GridEYE_Arduino_Library.h>

GridEYE grideye;
String heatData;
int ledState = 0;
unsigned long meetime = 0;
uint16_t seconds = 3142;

int bluePin = 8, greenPin = 9, redPin = 10, buzzPin = 11;
int inputPin = 12; // PIR
int pirState = LOW;
int val = 0;
float tempC = 0;

void setup() {
  pinMode(redPin, OUTPUT);
  pinMode(greenPin, OUTPUT);
  pinMode(bluePin, OUTPUT);
  pinMode(buzzPin, OUTPUT);
  pinMode(inputPin, INPUT);

  Wire.begin();
  grideye.begin();
  Serial.begin(115200);
}

void loop() {
  // Serielle Steuerung (optional)
  if (Serial.available() > 0) {
    char c = Serial.read();
    ledState = (c == '1') ? 1 : 0;
  }

  val = digitalRead(inputPin);
  if (val == HIGH) {
    if (pirState == LOW) {
      meetime = millis();
      Serial.println("Bewegung erkannt!");
      pirState = HIGH;
      getHeatmap();
      // Farb-Logik wie oben
      if (tempC < 16) setColor(0, 0, 255);
      else if (tempC < 16) setColor(80, 0, 80); // Bug im Original: <16 doppelt
      else if (tempC < 20) setColor(0, 255, 255);
      else if (tempC < 24) setColor(0, 255, 0);
      else if (tempC < 28) setColor(255, 255, 0);
      else if (tempC < 37) setColor(255, 20, 20);
      else { setColor(255, 0, 0); tone(buzzPin, 1000); }

      Serial.println(heatData);
      delay(1500);
    }
  } else {
    if (pirState == HIGH) {
      noTone(buzzPin);
      Serial.println("Bewegung beendet!");
      setColor(0, 0, 0);
      meetime = 0;
      pirState = LOW;
    }
  }
}

void getHeatmap() {
  heatData = "";
  float previousVal = 0;
  for (unsigned char i = 0; i < 64; i++) {
    tempC = grideye.getPixelTemperature(i);
    heatData += String(tempC) + ",";
    if (previousVal > 37) {
      Serial.println("Hohe Temperatur!");
      setColor(255, 0, 0);
      tone(buzzPin, 1000);
    }
    previousVal = tempC;
  }
  Serial.println();
}

void setColor(int red, int green, int blue) {
  #ifdef COMMON_ANODE
    red = 255 - red;
    green = 255 - green;
    blue = 255 - blue;
  #endif
  analogWrite(redPin, red);
  analogWrite(greenPin, green);
  analogWrite(bluePin, blue);
}

GitHub: https://github.com/dasdata/coronafence

Schaltplan

CoroFence Thermaldetektor: PIR-Sensor & IoT-Integration mit Panasonic GridEye

Herstellungsprozess

  1. Individuelle 4×4 Tic-Tac-Toe Visitenkarten-Platine – Design, Bau und Programmierung
  2. Multi-Position Temperatursensor-System für Smart-Home-Integration
  3. DIY Lötkolben-Controller für 862D+ – Präzision & Zuverlässigkeit
  4. MotionSense: Smarte Einbruchserkennung mit Arduino & ESP8266
  5. 3D-Drucker Brandschutz: Intelligentes Sensorsicherheitssystem
  6. Web-fähigen IoT-Messer mit Arduino, Yaler und IFTTT bauen
  7. Arduino-basierte abstoßende Magnetschwebung: Einfache Schaltung & DIY-Anleitung
  8. Fortgeschrittener ferngesteuerter Greifer-Roboter für präzises Handling
  9. Hochleistungs-Datenlogger für Arduino-Wetterballons
  10. ArduFarmBot Teil 2: IoT-Fernsteuerungsstation für Tomatenzucht