- Súčasti sú povinné
- Modul čítačky RFID EM18
- Infračervený teplomer MLX90614
- Schéma zapojenia
- Vysvetlenie kódu
- Ukladanie údajov senzorov do hárka Excel z radiča Arduino
Od vypuknutia Covid-19 sa infračervené teplomery používajú ako skríningový nástroj na skenovanie ľudí na letiskách, železničných staniciach a v ďalších preplnených zariadeniach. Tieto skeny sa používajú na identifikáciu potenciálnych pacientov s Covid-19. Vláda stanovila ako povinnosť všetkých skenovať pred vstupom do kancelárie, školy alebo na akékoľvek iné preplnené miesto.
V tomto výučbe teda budeme budovať bezkontaktný systém monitorovania teploty založený na RFID pomocou bezkontaktného teplotného snímača s Arduino. Keď zamestnanci naskenujú RFID kartu, zmeria telesnú teplotu zamestnancov pomocou bezkontaktného infračerveného teplomeru a zaznamená meno a teplotu tohto zamestnanca priamo do excelového listu. Na zostavenie tohto projektu použijeme Arduino Nano, MLX90614, čítačku EMID RFID a ultrazvukový snímač. Ultrazvukový senzor sa používa na výpočet vzdialenosti medzi teplomerom a osobou. Teplomer bude merať teplotu iba vtedy, keď je vzdialenosť menšia ako 25 CM. Je to niečo ako dochádzkový systém založený na RFID, ktorý tiež zaznamenáva telesnú teplotu každého človeka.
Súčasti sú povinné
- Arduino Nano
- EM-18 RFID modul
- MLX90614 Bezkontaktný snímač teploty
- Ultrazvukový senzor
- Nepál
- Prepojovacie drôty
Modul čítačky RFID EM18
Jednou z najbežnejšie používaných čítačiek RFID na čítanie značiek 125 kHz je čítačka RFID EM-18. Tento lacný modul čítačky RFID sa vyznačuje nízkou spotrebou energie, nízkym tvarovým faktorom a ľahkým používaním. Čítací modul EM-18 môže poskytovať výstup cez dve komunikačné rozhrania, tj. RS232 a WEIGAND26.
Čítačka RFID EM18 je vybavená vysielačom a prijímačom, ktorý prenáša rádiový signál. Keď sa značka RFID dostane do rozsahu signálu vysielača, tento signál zasiahne transpondér, ktorý je vo vnútri karty. Značka čerpá energiu z elektromagnetického poľa generovaného modulom čítačky. Transpondér potom transformuje rádiový signál na použiteľnú formu energie. Po získaní energie transpondér prenáša všetky informácie, napríklad špecifické ID, vo forme RF signálu do modulu RFID. Potom sa tieto dáta odoslali do mikrokontroléra pomocou komunikácie UART.
Ak sa chcete dozvedieť viac informácií o RFID a štítkoch, pozrite si naše predchádzajúce projekty založené na RFID.
Infračervený teplomer MLX90614
Predtým, ako pokračujeme v tutoriále, je dôležité vedieť, ako senzor MLX90614 funguje. Na trhu je k dispozícii veľa teplotných snímačov a snímače DHT11 a LM35 používame vo veľkej miere pre mnoho aplikácií, pri ktorých sa musí merať vzdušná vlhkosť alebo teplota.
Predtým sme tento snímač používali v IR termálnej pištoli, ktorá dokáže snímať teplotu konkrétneho objektu (nie okolia) bez priameho kontaktu s objektom. Tu opäť používame ten istý senzor na výpočet teploty objektu. MLX90614 je jeden taký senzor, ktorý využíva IR energiu na detekciu teploty objektu. Ak sa chcete dozvedieť viac informácií o obvode infračervených a infračervených senzorov, kliknite na odkaz.
Senzor MLX90614 je vyrobený integrovaným systémom Melexis Microelectronics, má v sebe zabudované dve zariadenia, jedným je infračervený termopilný detektor (snímacia jednotka) a druhým je zariadenie na úpravu signálu DSP (výpočtová jednotka). Funguje na základe zákona Stefana-Boltzmanna, ktorý hovorí, že všetky objekty vyžarujú infračervenú energiu a intenzita tejto energie bude priamo úmerná teplote daného objektu. Snímacia jednotka v snímači meria, koľko IR energie emituje cieľový objekt, a výpočtová jednotka ju prevádza na hodnotu teploty pomocou 17-bitového zabudovaného ADC a výstupy prenáša prostredníctvom komunikácie I2C protokol. Senzor meria teplotu objektu aj teplotu okolia na kalibráciu hodnoty teploty objektu. Vlastnosti snímača MLX90614 sú uvedené nižšie, ďalšie informácie nájdete v údajovom liste MLX90614.
Schéma zapojenia
Schéma zapojenia pre bezkontaktný snímač teploty na báze RFID pomocou Arduina je uvedená nižšie:
Ako je znázornené na schéme zapojenia, zapojenia sú veľmi jednoduché, pretože sme ich použili ako moduly, môžeme ich priamo vytvoriť na doske. Keď niekto naskenuje štítok, LED pripojená k pinu BUZ modulu čítačky EM18 sa rozsvieti vysoko. RFID modul odosiela dáta do radiča sériovo; preto je kolík vysielača modulu RFID pripojený k kolíku prijímača Arduino. Pripojenia sú ďalej klasifikované v nasledujúcej tabuľke:
Arduino Nano |
EM18 RFID modul |
5V |
Vcc |
GND |
GND |
5V |
SEL |
Rx |
Tx |
Arduino Nano |
MLX90614 |
5V |
Vcc |
GND |
GND |
A5 |
SCL |
A4 |
SDA |
Arduino Nano |
Ultrazvukový senzor (HCSR-04) |
5V |
Vcc |
GND |
GND |
D5 |
Trig |
D6 |
Echo |
Vysvetlenie kódu
Musíme napísať Arduino kód, ktorý dokáže načítať údaje z ultrazvukového snímača MLX90614, čítacieho modulu RFID EM18 a odosielať meno a teplotu osoby do hárka Excel. Pre tento kód si musíte stiahnuť knižnice Wire a MLX90614. Po stiahnutí knižníc ich pridajte do svojho Arduino IDE.
Celý kód pre toto bezkontaktné sledovanie telesnej teploty je uvedený na konci stránky. Tu bude ten istý program vysvetlený malými úryvkami.
Ako obvykle, spustite kód zahrnutím všetkých požadovaných knižníc. Tu sa používa knižnica Wire na komunikáciu pomocou protokolu I2C a knižnica Adafruit_MLX90614.h sa používa na čítanie údajov senzora MLX90614.
#include
Potom definujeme kolíky ultrazvukového snímača, ku ktorým sme vytvorili pripojenie
const int trigPin = 5; const int echoPin = 6;
Potom definujte premenné na uloženie údajov modulu RFID, ultrazvukového senzora a senzora MLX90614.
dlhé trvanie; int vzdialenosť; String RfidReading; float TempReading;
Vo vnútri funkcie void setup () inicializujeme sériový monitor pre ladenie a teplotný snímač MLX90614. Taktiež nastavte piny Trig a Echo ako výstupné a vstupné piny.
void setup () {Serial.begin (9600); // Inicializuje sériovú komunikáciu so sériovým monitorom pinMode (trigPin, OUTPUT); pinMode (echoPin, INPUT); mlx.begin (); Initialize_streamer (); }
Vo funkcii void loop () vypočítajte vzdialenosť medzi osobou a snímačom. Ak je vzdialenosť menšia alebo rovná 25 cm, zavolajte funkciu reader () a naskenujte štítok.
void loop () {digitalWrite (trigPin, LOW); delayMicroseconds (2); digitalWrite (trigPin, HIGH); delayMicroseconds (10); digitalWrite (trigPin, LOW); duration = pulseIn (echoPin, HIGH); vzdialenosť = trvanie * 0,0340 / 2; if (vzdialenosť <= 25) {čítačka (); }
Funkcia void reader () sa používa na načítanie karty štítku RFID. Akonáhle sa karta priblíži k modulu čítačky, čítací modul načíta sériové údaje a uloží ich do vstupnej premennej.
void reader () {if (Serial.available ()) {count = 0; while (Serial.available () && count <12) {input = Serial.read (); počet ++; oneskorenie (5);
V ďalších riadkoch porovnajte naskenované údaje karty s preddefinovaným ID štítku. Ak sa ID štítku zhoduje s naskenovanou kartou, potom prečítajte teplotu osoby a pošlite teplotu a meno osoby do hárka programu Excel.
if (vstup == tag) flag = 1; else príznak = 0; počet ++; RfidReading = "Ashish"; }} if (flag == 1) {temp_read (); Write_streamer (); }
Vo vnútri funkcie temp_read () si prečítajte údaje senzora MLX90614 v stupňoch Celzia a uložte ich do premennej „TempReading“ .
void temp_read () {TempReading = mlx.readObjectTempC ();}
Keď je hardvér a softvér pripravený, je čas nahrať program do vašej dosky Arduino Nano. Hneď ako sa váš program nahrá, ultrazvukový senzor začne počítať vzdialenosť. Ak je vypočítaná vzdialenosť menšia ako 40 cm, načíta sa teplota a karta.
Ukladanie údajov senzorov do hárka Excel z radiča Arduino
Teraz na odoslanie údajov do hárka programu Excel použijeme PLX-DAQ. Jedná sa o softvér Excel Plug-in, ktorý vám pomáha zapisovať hodnoty z Arduina priamo do hárku programu Excel na vašom notebooku alebo počítači. Použite odkaz na stiahnutie súboru. Po stiahnutí rozbaľte súbor a nainštalujte ho kliknutím na súbor.exe. Na vašej pracovnej ploche vytvorí priečinok s názvom PLS-DAQ.
Teraz otvorte súbor „PLX-DAQ tabuľkový procesor“ z priečinka na pracovnej ploche. Ak sú vo vašom programe Excel zakázané makrá, zobrazí sa bezpečnostný blok, ako je znázornené na nasledujúcom obrázku:
Kliknutím na Možnosti-> Povoliť obsah -> Dokončiť -> OK povolíte makrá. Potom získate nasledujúcu obrazovku:
Teraz zvoľte prenosovú rýchlosť ako „9600“ a port, ku ktorému je vaše Arduino pripojené, a potom kliknutím na Pripojiť spustite streamovanie dát. Vaše hodnoty by sa mali začať zaznamenávať, ako je to znázornené na obrázku nižšie.
Takto môžete zostaviť bezkontaktné skríningové zariadenie a uložiť údaje do hárka Excel.
Pracovné video a kompletný kód sú uvedené na konci stránky.