Fabrication industrielle
Internet des objets industriel | Matériaux industriels | Entretien et réparation d'équipement | Programmation industrielle |
home  MfgRobots >> Fabrication industrielle >  >> Manufacturing Technology >> Processus de fabrication

CoroFence : Détecteur Thermique Avancé PIR + Capteur Grid-EYE & IoT

Composants et fournitures

Composant Quantité
Panasonic Grid-EYE (AMG8833) 1
Capteur PIR (portée 7 m) 1
Buzzer 1
LED RGB 1
Arduino Nano 33 IoT 1
Batterie LiPo 3,7 V rechargeable 1
Boîtier plastique (boîte de dérivation) 1

Applications et services en ligne

À propos du projet

Contexte : Crise Pandémique Mondiale

L'OMS recommande : lavage des mains, port du masque, distanciation. Dans les aéroports, des caméras thermiques détectent les voyageurs fébriles.

Détecteur Thermique Maison

Pour travailler en sécurité depuis chez soi, voici un détecteur thermique déployable à l'entrée de votre domicile, bureau, labo... Vous restez dans votre zone sûre.

Capteurs d'entrée

Grid-EYE (Panasonic AMG8833)

Contrairement aux capteurs thermiques ponctuels, le Grid-EYE (technologie MEMS) mesure la température sur une zone complète sans contact : matrice 8×8 = 64 pixels, angle de vue 60°, plage -20°C à 100°C, interface I²C, 1 ou 10 images/seconde. Idéal pour détecter une présence humaine à 1,5-5 m.

CoroFence : Détecteur Thermique Avancé PIR + Capteur Grid-EYE & IoT

Capteur PIR

Détecte le mouvement jusqu'à ~10 m (5-12 m réel). Déclenche l'activation de la caméra thermique seulement en cas de présence, économisant l'énergie.

CoroFence : Détecteur Thermique Avancé PIR + Capteur Grid-EYE & IoT

Montage

Assemblage des capteurs dans le boîtier :

CoroFence : Détecteur Thermique Avancé PIR + Capteur Grid-EYE & IoT

Sorties visuelles et sonores

CoroFence : Détecteur Thermique Avancé PIR + Capteur Grid-EYE & IoT

Tests finaux

Température normale + présence détectée → LED verte

CoroFence : Détecteur Thermique Avancé PIR + Capteur Grid-EYE & IoT

Échelle de couleurs :


if (tempC < 16)       setColor(0, 0, 255);      // Bleu
else if (tempC < 15)  setColor(80, 0, 80);      // Cyan
else if (tempC < 30)  setColor(0, 255, 255);    // Azur
else if (tempC < 36)  setColor(0, 255, 0);      // Vert
else if (tempC < 38)  setColor(255, 255, 0);    // Jaune
else if (tempC < 39)  setColor(255, 20, 20);    // Magenta
else                  setColor(255, 0, 0);      // Rouge + buzzer

Test de l'alarme avec un fer à repasser (vapeur) :

CoroFence : Détecteur Thermique Avancé PIR + Capteur Grid-EYE & IoT

Interface de visualisation

Visualisation temps réel via Node.js + liaison série. Prochaine étape : intégration plateforme DasData pour modélisation.

CoroFence : Détecteur Thermique Avancé PIR + Capteur Grid-EYE & IoT

Suivi en direct : https://dasdata.co/camera/

Vivez longtemps et prospérez, où que vous soyez dans la Galaxie !

Code : CoroFence


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

GridEYE grideye;
String heatData;
int ledState;
unsigned long meetime;
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;

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() {
  // Commande série optionnelle (1 = activer LED)
  if (Serial.available() > 0) {
    char c = Serial.read();
    ledState = (c == '1') ? 1 : 0;
  }
  
  val = digitalRead(inputPin);
  
  if (val == HIGH) {  // Mouvement détecté
    if (pirState == LOW) {
      meetime = millis();
      Serial.println("Mouvement detecte !");
      pirState = HIGH;
      getHeatmap();
      
      // Couleur selon température max détectée
      if (tempC < 16) setColor(0, 0, 255);
      else if (tempC < 16) setColor(80, 0, 80);
      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);
      
      Serial.println(heatData);
      delay(1500);
    }
  } else {  // Fin de mouvement
    if (pirState == HIGH) {
      noTone(buzzPin);
      Serial.println("Mouvement termine !");
      setColor(0, 0, 0);
      meetime = 0;
      pirState = LOW;
    }
  }
}

void getHeatmap() {
  heatData = "";
  float previousVal = 0;
  for (unsigned char i = 0; i < 64; i++) {
    if (previousVal > 37) {
      Serial.println("Temperature elevee !");
      setColor(255, 0, 0);  // Rouge
      tone(buzzPin, 1000);  // 1 kHz
    }
    tempC = grideye.getPixelTemperature(i);
    heatData += String(tempC) + ",";
    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);
}

Code complet (Arduino IDE, VS2019, NodeJS) : GitHub dasdata/coronafence

Schéma de câblage

CoroFence : Détecteur Thermique Avancé PIR + Capteur Grid-EYE & IoT

Processus de fabrication

  1. Carte de Visite PCB Tic-Tac-Toe 4×4 Personnalisée – Guide de Conception, Fabrication et Programmation
  2. Système de Capteur de Température Multi-Position pour Intégration Domotique
  3. Contrôleur DIY pour fer à souder 862D+ — Précision et fiabilité
  4. MotionSense : Détection d'intrusion intelligente avec Arduino et ESP8266
  5. Prévention incendie imprimante 3D : Système de sécurité à capteur intelligent
  6. Créer une jauge IoT connectée au Web avec Arduino, Yaler et IFTTT
  7. Lévitation magnétique répulsive avec Arduino : circuit simple et guide DIY
  8. Robot préhenseur télécommandé avancé pour manipulation de précision
  9. Enregistreur de données Arduino haute performance pour ballon météo