- భాగాలు అవసరం
- EM18 RFID రీడర్ మాడ్యూల్
- MLX90614 పరారుణ థర్మామీటర్
- సర్క్యూట్ రేఖాచిత్రం
- కోడ్ వివరణ
- Arduino కంట్రోలర్ నుండి ఎక్సెల్ షీట్లో సెన్సార్ డేటాను నిల్వ చేస్తుంది
కోవిడ్ -19 వ్యాప్తి చెందినప్పటి నుండి, విమానాశ్రయాలు, రైల్వే స్టేషన్లు మరియు ఇతర రద్దీగా ఉండే సంస్థలలో ప్రజలను స్కాన్ చేయడానికి పరారుణ థర్మామీటర్లను స్క్రీనింగ్ సాధనంగా ఉపయోగిస్తున్నారు. కోవిడ్ -19 యొక్క సంభావ్య రోగులను గుర్తించడానికి ఈ స్కాన్లను ఉపయోగిస్తున్నారు. కార్యాలయం, పాఠశాల లేదా ఇతర రద్దీ ప్రదేశంలోకి ప్రవేశించే ముందు ప్రతి ఒక్కరినీ స్కాన్ చేయడం ప్రభుత్వం తప్పనిసరి చేసింది.
కాబట్టి ఈ ట్యుటోరియల్లో, ఆర్డునోతో కాంటాక్ట్లెస్ టెంపరేచర్ సెన్సార్ ఉపయోగించి RFID ఆధారిత కాంటాక్ట్లెస్ టెంపరేచర్ మానిటరింగ్ సిస్టమ్ను నిర్మించబోతున్నాం. ఉద్యోగులు RFID కార్డును స్కాన్ చేసినప్పుడు, ఇది కాంటాక్ట్ కాని ఇన్ఫ్రారెడ్ థర్మామీటర్తో ఉద్యోగుల శరీర ఉష్ణోగ్రతను కొలుస్తుంది మరియు ఆ ఉద్యోగి పేరు మరియు ఉష్ణోగ్రతను నేరుగా ఎక్సెల్ షీట్లోకి లాగిన్ చేస్తుంది. ఈ ప్రాజెక్ట్ను నిర్మించడానికి మేము ఆర్డునో నానో, MLX90614, EM18 RFID రీడర్ మరియు అల్ట్రాసోనిక్ సెన్సార్లను ఉపయోగిస్తాము. అల్ట్రాసోనిక్ సెన్సార్ థర్మామీటర్ మరియు వ్యక్తి మధ్య దూరాన్ని లెక్కించడానికి ఉపయోగిస్తారు. దూరం 25 CM కంటే తక్కువగా ఉన్నప్పుడు మాత్రమే థర్మామీటర్ ఉష్ణోగ్రతను కొలుస్తుంది. ఇది RFID ఆధారిత హాజరు వ్యవస్థ వంటిది, ఇది ప్రతి వ్యక్తి యొక్క శరీర ఉష్ణోగ్రతను కూడా నమోదు చేస్తుంది.
భాగాలు అవసరం
- ఆర్డునో నానో
- EM-18 RFID మాడ్యూల్
- MLX90614 కాంటాక్ట్లెస్ టెంపరేచర్ సెన్సార్
- అల్ట్రాసోనిక్ సెన్సార్
- బ్రెడ్బోర్డ్
- జంపర్ వైర్లు
EM18 RFID రీడర్ మాడ్యూల్
125 kHz ట్యాగ్లను చదవడానికి విస్తృతంగా ఉపయోగించే RFID రీడర్లలో ఒకటి EM-18 RFID రీడర్. ఈ తక్కువ-ధర RFID రీడర్ మాడ్యూల్ తక్కువ విద్యుత్ వినియోగం, తక్కువ రూపం కారకం మరియు ఉపయోగించడానికి సులభమైనది. EM-18 రీడర్ మాడ్యూల్ రెండు కమ్యూనికేషన్ ఇంటర్ఫేస్ల ద్వారా అవుట్పుట్ను అందించగలదు, అంటే RS232 మరియు WEIGAND26.
EM18 RFID రీడర్ రేడియో సిగ్నల్ను ప్రసారం చేసే ట్రాన్స్సీవర్ను కలిగి ఉంది. ట్రాన్స్మిటర్ సిగ్నల్ పరిధిలో RFID ట్యాగ్ వచ్చినప్పుడు, ఈ సిగ్నల్ కార్డ్ లోపల ఉన్న ట్రాన్స్పాండర్ను తాకుతుంది. ట్యాగ్ రీడర్ మాడ్యూల్-సృష్టించిన విద్యుదయస్కాంత క్షేత్రం నుండి శక్తిని ఆకర్షిస్తుంది. ట్రాన్స్పాండర్ అప్పుడు రేడియో సిగ్నల్ ను శక్తి యొక్క ఉపయోగపడే రూపంలోకి మారుస్తుంది. శక్తిని పొందిన తరువాత, ట్రాన్స్పాండర్ ఒక నిర్దిష్ట ID వంటి అన్ని సమాచారాన్ని RF సిగ్నల్ రూపంలో RFID మాడ్యూల్కు బదిలీ చేస్తుంది. అప్పుడు ఈ డేటా UART కమ్యూనికేషన్ ఉపయోగించి మైక్రోకంట్రోలర్కు పంపబడుతుంది.
RFID మరియు ట్యాగ్ల గురించి మరింత తెలుసుకోవడానికి, మా మునుపటి RFID ఆధారిత ప్రాజెక్టులను తనిఖీ చేయండి.
MLX90614 పరారుణ థర్మామీటర్
మేము ట్యుటోరియల్తో కొనసాగడానికి ముందు, MLX90614 సెన్సార్ ఎలా పనిచేస్తుందో తెలుసుకోవడం ముఖ్యం. మార్కెట్లో చాలా ఉష్ణోగ్రత సెన్సార్లు అందుబాటులో ఉన్నాయి మరియు వాతావరణ తేమ లేదా ఉష్ణోగ్రతను కొలవవలసిన అనేక అనువర్తనాల కోసం మేము DHT11 సెన్సార్ మరియు LM35 ని విస్తృతంగా ఉపయోగిస్తున్నాము.
మేము ఇంతకుముందు ఈ సెన్సార్ను ఐఆర్ థర్మల్ గన్లో ఉపయోగించాము, ఇది వస్తువుతో నేరుగా సంబంధం లేకుండా ఒక నిర్దిష్ట వస్తువు యొక్క ఉష్ణోగ్రతను (పరిసర కాదు) గ్రహించగలదు. ఇక్కడ మనం మళ్ళీ ఒక వస్తువు యొక్క ఉష్ణోగ్రతను లెక్కించడానికి అదే సెన్సార్ను ఉపయోగిస్తున్నాము. MLX90614 అటువంటి సెన్సార్, ఇది ఒక వస్తువు యొక్క ఉష్ణోగ్రతను గుర్తించడానికి IR శక్తిని ఉపయోగిస్తుంది. ఇన్ఫ్రారెడ్ మరియు ఐఆర్ సెన్సార్ సర్క్యూట్ గురించి మరింత తెలుసుకోవడానికి, లింక్ను అనుసరించండి.
MLX90614 సెన్సార్ను మెలెక్సిస్ మైక్రోఎలక్ట్రానిక్స్ ఇంటిగ్రేటెడ్ సిస్టమ్ తయారు చేస్తుంది, దీనిలో రెండు పరికరాలు పొందుపరచబడ్డాయి, ఒకటి ఇన్ఫ్రారెడ్ థర్మోపైల్ డిటెక్టర్ (సెన్సింగ్ యూనిట్) మరియు మరొకటి సిగ్నల్ కండిషనింగ్ DSP పరికరం (గణన యూనిట్). ఇది స్టీఫన్-బోల్ట్జ్మాన్ చట్టం ఆధారంగా పనిచేస్తుంది, ఇది అన్ని వస్తువులు IR శక్తిని విడుదల చేస్తాయని మరియు ఈ శక్తి యొక్క తీవ్రత ఆ వస్తువు యొక్క ఉష్ణోగ్రతకు నేరుగా అనులోమానుపాతంలో ఉంటుందని పేర్కొంది. సెన్సార్లోని సెన్సింగ్ యూనిట్ లక్ష్యంగా ఉన్న వస్తువు ద్వారా ఎంత IR శక్తిని విడుదల చేస్తుందో కొలుస్తుంది మరియు గణన యూనిట్ దానిని 17-బిట్ అంతర్నిర్మిత ADC ఉపయోగించి ఉష్ణోగ్రత విలువగా మారుస్తుంది మరియు I2C కమ్యూనికేషన్ ద్వారా డేటాను ఉత్పత్తి చేస్తుంది ప్రోటోకాల్. ఆబ్జెక్ట్ ఉష్ణోగ్రత విలువను క్రమాంకనం చేయడానికి సెన్సార్ ఆబ్జెక్ట్ ఉష్ణోగ్రత మరియు పరిసర ఉష్ణోగ్రత రెండింటినీ కొలుస్తుంది. MLX90614 సెన్సార్ యొక్క లక్షణాలు క్రింద ఇవ్వబడ్డాయి, మరిన్ని వివరాల కోసం MLX90614 డేటాషీట్ చూడండి.
సర్క్యూట్ రేఖాచిత్రం
ఆర్డునో ఉపయోగించి RFID ఆధారిత నాన్-కాంటాక్ట్ ఉష్ణోగ్రత సెన్సార్ కోసం సర్క్యూట్ రేఖాచిత్రం క్రింద ఇవ్వబడింది:
సర్క్యూట్ రేఖాచిత్రంలో చూపినట్లుగా, కనెక్షన్లు చాలా సులభం, ఎందుకంటే మేము వాటిని గుణకాలుగా ఉపయోగించాము, మేము వాటిని నేరుగా బ్రెడ్బోర్డ్లో నిర్మించగలము. ఎవరైనా ట్యాగ్ను స్కాన్ చేసినప్పుడు EM18 రీడర్ మాడ్యూల్ యొక్క BUZ పిన్కు కనెక్ట్ చేయబడిన LED అధికంగా మారుతుంది. RFID మాడ్యూల్ సీరియల్లోని నియంత్రికకు డేటాను పంపుతుంది; అందువల్ల RFID మాడ్యూల్ యొక్క ట్రాన్స్మిటర్ పిన్ Arduino యొక్క స్వీకర్త పిన్కు అనుసంధానించబడి ఉంది. కనెక్షన్లు క్రింది పట్టికలో మరింత వర్గీకరించబడ్డాయి:
ఆర్డునో నానో |
EM18 RFID మాడ్యూల్ |
5 వి |
విసిసి |
GND |
GND |
5 వి |
SEL |
Rx |
Tx |
ఆర్డునో నానో |
MLX90614 |
5 వి |
విసిసి |
GND |
GND |
A5 |
ఎస్సీఎల్ |
ఎ 4 |
SDA |
ఆర్డునో నానో |
అల్ట్రాసోనిక్ సెన్సార్ (HCSR-04) |
5 వి |
విసిసి |
GND |
GND |
డి 5 |
ట్రిగ్ |
డి 6 |
ఎకో |
కోడ్ వివరణ
అల్ట్రాసోనిక్ సెన్సార్, MLX90614, EM18 RFID రీడర్ మాడ్యూల్ నుండి డేటాను చదవగలిగే ఒక ఆర్డునో కోడ్ను మనం వ్రాయాలి మరియు ఒక వ్యక్తి యొక్క పేరు మరియు ఉష్ణోగ్రతను ఎక్సెల్ షీట్కు పంపవచ్చు. ఈ కోడ్ కోసం, మీరు వైర్ మరియు MLX90614 లైబ్రరీలను డౌన్లోడ్ చేసుకోవాలి. లైబ్రరీలను డౌన్లోడ్ చేసిన తర్వాత, వాటిని మీ ఆర్డునో IDE కి జోడించండి.
ఈ కాంటాక్ట్లెస్ శరీర ఉష్ణోగ్రత పర్యవేక్షణ కోసం పూర్తి కోడ్ పేజీ చివరిలో ఇవ్వబడుతుంది. ఇక్కడ అదే ప్రోగ్రామ్ చిన్న స్నిప్పెట్లలో వివరించబడుతుంది.
ఎప్పటిలాగే, అవసరమైన అన్ని లైబ్రరీలను చేర్చడం ద్వారా కోడ్ను ప్రారంభించండి. ఇక్కడ వైర్ లైబ్రరీ I2C ప్రోటోకాల్ ఉపయోగించి కమ్యూనికేట్ చేయడానికి ఉపయోగించబడుతుంది మరియు MLX90614 సెన్సార్ డేటాను చదవడానికి Adafruit_MLX90614.h లైబ్రరీ ఉపయోగించబడుతుంది.
# చేర్చండి
మేము కనెక్షన్ చేసిన అల్ట్రాసోనిక్ సెన్సార్ యొక్క పిన్నులను నిర్వచించాము
const int triPin = 5; const int echoPin = 6;
ఆ తరువాత, RFID మాడ్యూల్, అల్ట్రాసోనిక్ సెన్సార్ మరియు MLX90614 సెన్సార్ డేటాను నిల్వ చేయడానికి వేరియబుల్స్ను నిర్వచించండి.
దీర్ఘకాలం; పూర్ణాంక దూరం; స్ట్రింగ్ RfidReading; ఫ్లోట్ టెంప్ రీడింగ్;
శూన్య సెటప్ () ఫంక్షన్ లోపల, డీబగ్గింగ్ కోసం సీరియల్ మానిటర్ మరియు MLX90614 ఉష్ణోగ్రత సెన్సార్ను మేము ప్రారంభిస్తాము. అలాగే, ట్రిగ్ మరియు ఎకో పిన్లను అవుట్పుట్ మరియు ఇన్పుట్ పిన్లుగా సెట్ చేయండి.
శూన్య సెటప్ () {Serial.begin (9600); // సీరియల్ మానిటర్ పిన్మోడ్ (ట్రిగ్పిన్, అవుట్పుట్) తో సీరియల్ కమ్యూనికేషన్ను ప్రారంభించండి; పిన్మోడ్ (ఎకోపిన్, ఇన్పుట్); mlx.begin (); ప్రారంభించు_స్ట్రీమర్ (); }
శూన్య లూప్ () ఫంక్షన్ లోపల, వ్యక్తి మరియు సెన్సార్ మధ్య దూరాన్ని లెక్కించండి మరియు దూరం 25 సెం.మీ కంటే తక్కువ లేదా సమానంగా ఉంటే, ట్యాగ్ను స్కాన్ చేయడానికి రీడర్ () ఫంక్షన్కు కాల్ చేయండి.
శూన్య లూప్ () {డిజిటల్ రైట్ (ట్రిగ్పిన్, తక్కువ); delayMicroseconds (2); డిజిటల్ రైట్ (ట్రిగ్పిన్, హై); delayMicroseconds (10); డిజిటల్ రైట్ (ట్రిగ్పిన్, తక్కువ); వ్యవధి = పల్స్ఇన్ (ఎకోపిన్, హై); దూరం = వ్యవధి * 0.0340 / 2; if (దూరం <= 25) {రీడర్ (); }
శూన్య రీడర్ () ఫంక్షన్ RFID ట్యాగ్ కార్డు చదవడానికి ఉపయోగించబడుతుంది. కార్డును రీడర్ మాడ్యూల్ దగ్గరకు తీసుకువచ్చిన తర్వాత, రీడర్ మాడ్యూల్ సీరియల్ డేటాను చదివి ఇన్పుట్ వేరియబుల్లో నిల్వ చేస్తుంది.
void reader () {if (Serial.available ()) {count = 0; అయితే (Serial.available () && count <12) {input = Serial.read (); లెక్కింపు ++; ఆలస్యం (5);
తదుపరి పంక్తులలో, స్కాన్ చేసిన కార్డ్ డేటాను ముందే నిర్వచించిన ట్యాగ్ ID తో పోల్చండి. ట్యాగ్ ఐడి స్కాన్ చేసిన కార్డుతో సరిపోలితే, ఆ వ్యక్తి యొక్క ఉష్ణోగ్రత చదివి, వ్యక్తి యొక్క ఉష్ణోగ్రత మరియు పేరును ఎక్సెల్ షీట్కు పంపండి.
if (ఇన్పుట్ == ట్యాగ్) ఫ్లాగ్ = 1; else జెండా = 0; లెక్కింపు ++; RfidReading = "ఆశిష్"; flag} if (ఫ్లాగ్ == 1) {temp_read (); రైట్_స్ట్రీమర్ (); }
టెంప్_రెడ్ () ఫంక్షన్ లోపల, సెల్సియస్లోని MLX90614 సెన్సార్ డేటాను చదివి 'టెంప్ రీడింగ్' వేరియబుల్లో నిల్వ చేయండి.
void temp_read () {TempReading = mlx.readObjectTempC ();}
హార్డ్వేర్ మరియు సాఫ్ట్వేర్ సిద్ధమైన తర్వాత, ప్రోగ్రామ్ను మీ ఆర్డునో నానో బోర్డ్లోకి అప్లోడ్ చేసే సమయం వచ్చింది. మీ ప్రోగ్రామ్ అప్లోడ్ అయిన వెంటనే, అల్ట్రాసోనిక్ సెన్సార్ దూరాన్ని లెక్కించడం ప్రారంభిస్తుంది. లెక్కించిన దూరం 40 సెం.మీ కంటే తక్కువగా ఉన్నప్పుడు, అది ఉష్ణోగ్రత మరియు కార్డును చదువుతుంది.
Arduino కంట్రోలర్ నుండి ఎక్సెల్ షీట్లో సెన్సార్ డేటాను నిల్వ చేస్తుంది
ఇప్పుడు ఎక్సెల్ షీట్కు డేటాను పంపడానికి, మేము PLX-DAQ ను ఉపయోగించబోతున్నాము. ఇది ఎక్సెల్ ప్లగ్-ఇన్ సాఫ్ట్వేర్, ఇది మీ ల్యాప్టాప్ లేదా పిసిలోని ఎక్సెల్ షీట్లోకి నేరుగా ఆర్డునో నుండి విలువలను వ్రాయడానికి మీకు సహాయపడుతుంది. ఫైల్ను డౌన్లోడ్ చేయడానికి లింక్ను ఉపయోగించండి. డౌన్లోడ్ చేసిన తర్వాత ఫైల్ను ఎక్స్ట్రాక్ట్ చేసి, దాన్ని ఇన్స్టాల్ చేయడానికి.exe ఫైల్పై క్లిక్ చేయండి. ఇది మీ డెస్క్టాప్లో PLS-DAQ అనే ఫోల్డర్ను సృష్టిస్తుంది.
ఇప్పుడు డెస్క్టాప్ ఫోల్డర్ నుండి 'PLX-DAQ స్ప్రెడ్షీట్' ఫైల్ను తెరవండి. మీ ఎక్సెల్ లో మాక్రోలు నిలిపివేయబడితే, క్రింద ఉన్న చిత్రంలో చూపిన విధంగా మీరు భద్రతా బ్లాక్ను చూస్తారు:
క్లిక్ > ఐచ్ఛికాలు కంటెంట్ ప్రారంభించు -> ముగించు -> సరి మ్యాక్రోల్లో ప్రారంభించు. దీని తరువాత మీరు ఈ క్రింది స్క్రీన్ను పొందుతారు:
ఇప్పుడు బాడ్ రేట్ను “9600” గా ఎంచుకోండి మరియు మీ ఆర్డునో కనెక్ట్ చేయబడిన పోర్ట్ను ఎంచుకుని, ఆపై డేటా స్ట్రీమింగ్ను ప్రారంభించడానికి కనెక్ట్పై క్లిక్ చేయండి. మీ విలువలు దిగువ చిత్రంలో చూపిన విధంగా లాగిన్ అవ్వడం ప్రారంభించాలి.
ఈ విధంగా మీరు కాంటాక్ట్లెస్ టెంపరేచర్ స్క్రీనింగ్ పరికరాన్ని నిర్మించవచ్చు మరియు ఎక్సెల్ షీట్లో డేటాను నిల్వ చేయవచ్చు.
పేజీ చివరిలో పని చేసే వీడియో మరియు పూర్తి కోడ్ ఇవ్వబడతాయి.