Industriële fabricage
Industrieel internet der dingen | Industriële materialen | Onderhoud en reparatie van apparatuur | Industriële programmering |
home  MfgRobots >> Industriële fabricage >  >> Manufacturing Technology >> Productieproces

CoroFence - Thermische Detector🖖

Componenten en benodigdheden

Panasonic GridEye
× 1
PIR-sensor, 7 m
× 1
Zoemer
× 1
LED, RGB
× 1
Arduino Nano 33 IoT
× 1
Oplaadbare batterij, 3,7 V
× 1
Kunststof behuizing, aansluitdoos
× 1

Apps en online services

Arduino IDE
DasData Maker-gegevensopslagkanaal

Over dit project

Huidige wereldwijde pandemische crisis

Zoals de Wereldgezondheidsorganisatie (WHO) aanbeveelt om de verspreiding van infecties te voorkomen, omvat "regelmatig handen wassen, mond en neus bedekken bij hoesten en niezen, grondig koken van vlees en eieren. Vermijd nauw contact met iedereen die symptomen van luchtwegaandoeningen vertoont, zoals hoesten en niezen".

Het werd een normale gewoonte tijdens het reizen door luchthavens om thermische scanners te hebben om mogelijke geïnfecteerde reizigers te ontdekken.

Zelfgemaakte thermische detector

Hoewel we in de huidige situatie worden uitgedaagd om ons werk op afstand als beschermingslaag voort te zetten, moeten we contact met anderen vermijden totdat de situatie onder controle is.

Het belangrijkste idee is om een ​​thermische cameradetector te bouwen die gemakkelijk buiten uw huis/lab/kantoor/shuttle kan worden ingezet... zodat u in uw veilige zone kunt worden beschermd.

Ingangssensoren

  • Rasteroog

"In tegenstelling tot conventionele thermische sensoren die alleen de temperatuur van een bepaald contactpunt meten, kan Grid-EYE, gebaseerd op Panasonic's MEMS-technologie, de temperatuur van het gehele gespecificeerde gebied meten zonder enig contact; met andere woorden, het is een "contactloze thermozuil-arraysensor". 64 pixels zorgen voor een nauwkeurige temperatuurmeting over een kijkhoek van 60°, geleverd door een siliconenlens. Grid-EYE maakt gebruik van een I²C-communicatie-interface, waardoor temperatuurmetingen mogelijk zijn met snelheden van 1 of 10 frames/sec. Er is ook een onderbrekingsfunctie beschikbaar."

  • Afmetingen:11,6 x 4,3 x 8,0 mm (L x H x B)
  • Bedrijfsspanning:3,3 V of 5,0 V (afhankelijk van P/N)
  • Temperatuurbereik van meetobject:-20°C tot 100°C (afhankelijk van P/N)
  • Gezichtsveld (FoV):60°
  • Aantal pixels:64 (verticaal 8 x horizontaal 8)
  • Externe interface:I²C (snelle modus)
  • Framesnelheid:10 frames/sec of 1 frame/sec

Wat deze sensor perfect maakt voor menselijke detectie vanaf 1,5 meter en een doel heeft tot 5/7 meter.

  • PIR

We hebben ook een trigger nodig omdat we ook de thermische camera willen activeren wanneer beweging wordt gedetecteerd. Daarom is een PIR-sensor de perfecte keuze.

"PIR-sensor detecteert een mens die zich binnen ongeveer 10 m van de sensor beweegt. Dit is een gemiddelde waarde, aangezien het werkelijke detectiebereik tussen 5 m en 12 m ligt. PIR is in wezen gemaakt van een pyro-elektrische sensor, die niveaus van infraroodstraling kan detecteren . Voor tal van essentiële projecten of items die moeten worden ontdekt wanneer een persoon het gebied heeft verlaten of is binnengekomen. PIR-sensoren zijn ongelooflijk, ze zijn plat te bedienen en hebben minimale inspanning, een breed lensbereik en zijn eenvoudig te gebruiken."

Voeg dingen bij elkaar zoals hieronder:

Als de connectiviteit is voltooid (zie onderstaande afbeelding), bereidt u de box als volgt voor op ingangssensoren:

Visuele en geluidsuitvoer

  • RGB LEED

We willen graag onmiddellijke temperatuurfeedback krijgen met een standaard RGB-led die wordt geprogrammeerd om enkele kleuren weer te geven als we in de thermische camera komen.

  • Zoemer

Wanneer de temperatuur boven de normale 37°C komt, laten we een geluidsalarm afgaan om u op de hoogte te stellen van mogelijke gevaren.

Laatste testen:

Terwijl de temperatuur normaal is en aanwezigheid wordt gedetecteerd, tonen we een groen licht

// verschillende kleuren kunnen worden ingesteld
if (tempC<16) {
setColor(0, 0, 255); // blauw
} else if(tempC <15) {
setColor(80, 0, 80); // cyaan
} else if(tempC <30) {
setColor (0, 255, 255); // aqua
} else if(tempC <36) {
setColor(0, 255, 0); // groen
} else if(tempC <38) {
setColor(255, 255, 0); // geel
} else if(tempC <39) {
setColor(255, 20, 20); // magenta
}

Om een ​​geluidsalarm en rode kleur te activeren, moet je het goed testen met een stoomstrijkijzer voor kleding, zoals later werd ontdekt tijdens het doen van huishoudelijke dingen.

Leef lang en voorspoedig

Als alternatief kunt u de temperatuur in een NodeJS-interface bekijken en de gegevens van uw Arduino op seriële verbinding krijgen met deze terminaltoepassing.

Verder plan is om de data-integratie met das platform uit te breiden en te beginnen met modelleren.

Volg de livestream op @dasData

https://dasdata.co/camera/

Ik hoop dat je veilig zult zijn waar je ook bent deze periode in de Galaxy!

Code

  • coronafence
coronafenceC/C++
#include #include GridEYE grideye;String heatData;int ledState;unsigned long meettime; uint16_t seconden =3142; // max ==65535int bluePin =8;int greenPin =9;int redPin =10;int buzzPin =11; // kies de pin voor de LEDint inputPin =12; // kies de invoerpin (voor PIR-sensor) in pirState =LAAG; // we beginnen, ervan uitgaande dat er geen beweging is gedetecteerd.int val =0; // variabele voor het lezen van de pin statusfloat tempC; void setup () { pinMode (redPin, OUTPUT); pinMode (groene pin, UITGANG); pinMode (bluePin, UITGANG); pinMode (buzzPin, UITGANG); // verklaar LED als output pinMode (inputPin, INPUT); // verklaar sensor als invoer // Start uw favoriete I2C-object Wire.begin(); // Bibliotheek gaat uit van "Wire" voor I2C, maar je kunt iets anders doorgeven met begin() als je van grideye.begin() houdt; Serieel.begin(115200); } void loop() { char receiverVal; if(Serial.available()> 0) {ontvangstwaarde =Serial.read(); if (receiveVal =='1') { ledState =1; } anders ledState =0; } val =digitalRead(inputPin); // lees invoerwaarde als (val ==HOOG) {// controleer of de invoer HOOG is // digitalWrite (ledPin, HOOG); // zet LED AAN als (pirState ==LAAG) {metime =millis(); Serial.println("Beweging gedetecteerd!"); // We willen alleen afdrukken op de uitvoerwijziging, niet de status pirState =HIGH; getHeatmap(); if (tempC<16) { setColor (0, 0, 255); // blauw } else if (tempC <16) { setColor (80, 0, 80); // cyaan} else if (tempC <20) { setColor (0, 255, 255); // aqua} else if (tempC <24) { setColor (0, 255, 0); // groen} else if (tempC <28) { setColor (255, 255, 0); // geel } else if (tempC <37) { setColor (255, 20, 20); // magenta } // lees de bytes die binnenkomen van de client:// char thisChar =client.read(); // echo de bytes terug naar de client:// char msg [10] =""; Serial.println(heatData); vertraging (1500); } } else { // digitalWrite (ledPin, LOW); // zet LED UIT als (pirState ==HIGH) { // we hebben zojuist noTone (buzzPin) uitgeschakeld; // Stop geluid... Serial.println ("Beweging beëindigd!"); setColor (0, 0, 0); // geen meettime =0; // We willen alleen afdrukken op de uitvoerwijziging, niet de status pirState =LAAG; } } }void getHeatmap(){ // Druk de temperatuurwaarde van elke pixel af in drijvende-komma graden Celsius // gescheiden door komma's heatData =""; float vorigeVal =0; for (unsigned char i =0; i <64; i++) { if(previousVal>37) { // we hebben zojuist Serial.println aangezet ("Hoge temperatuur!"); setColor (255, 0, 0); // rode toon (buzzPin, 1000); // Stuur 1KHz geluidssignaal...} tempC =grideye.getPixelTemperature(i); heatData +=tempC + String(","); vorigeVal =tempC; } // Eindig elk frame met een linefeed Serial.println(); // Geef verwerkingstijd om te kauwen} ongeldig setColor (int rood, int groen, int blauw){ #ifdef COMMON_ANODE rood =255 - rood; groen =255 - groen; blauw =255 - blauw; #endif analogWrite(redPin, rood); analogWrite(greenPin, groen); analogWrite(bluePin, blauw); }
coronafence
Code voor Arduino IDE, Visual Studio 2019, NodeJS https://github.com/dasdata/coronafence

Schema's


Productieproces

  1. Tic Tac Toe-spelvisitekaartje
  2. Multitemperatuursensor
  3. DIY-soldeerboutbesturing voor 862D+
  4. MotionSense
  5. 3D-printer brandveiligheid
  6. IoT-meter met Arduino, Yaler en IFTTT
  7. Arduino afstotende elektromagnetische levitatie
  8. Grijperbot met afstandsbediening
  9. Arduino aangedreven weerballon datalogger
  10. ArduFarmBot - Part 2:Remote Station an IoT Implementation
  11. Enkele LED Matrix Arduino Flip Clock