వ్యవసాయం, గ్రీన్ హౌస్, మెడికల్, ఇండస్ట్రీస్ హోమ్ మరియు కార్యాలయాలు వంటి అనేక ప్రదేశాలలో కొలిచేందుకు తేమ మరియు ఉష్ణోగ్రత చాలా సాధారణ పారామితులు. మేము ఇప్పటికే ఆర్డునో ఉపయోగించి తేమ మరియు ఉష్ణోగ్రత కొలతను కవర్ చేసాము మరియు ఎల్సిడిలో డేటాను ప్రదర్శించాము.
ఈ IoT ప్రాజెక్ట్లో మేము థింగ్స్పీక్ ఉపయోగించి ఇంటర్నెట్లో తేమ మరియు ఉష్ణోగ్రతను పర్యవేక్షించబోతున్నాము, ఇక్కడ థింగ్స్పీక్ సర్వర్ను ఉపయోగించి ఇంటర్నెట్లో ప్రస్తుత తేమ మరియు ఉష్ణోగ్రత డేటాను చూపిస్తాము. Arduino, DHT11 సెన్సార్ మాడ్యూల్, ESP8266 WIFI మాడ్యూల్ మరియు LCD ల మధ్య డేటా కమ్యూనికేషన్ల ద్వారా ఇది సాధించబడుతుంది. సెల్సియస్ స్కేల్ థర్మామీటర్ మరియు శాతం స్కేల్ తేమ మీటర్ ఒక ఎల్సిడి డిస్ప్లే ద్వారా పరిసర ఉష్ణోగ్రత మరియు తేమను ప్రదర్శిస్తుంది మరియు ప్రపంచంలో ఎక్కడి నుండైనా ప్రత్యక్ష పర్యవేక్షణ కోసం థింగ్స్పీక్ సర్వర్కు పంపుతుంది.
వర్కింగ్ మరియు థింగ్స్పీక్ సెటప్:
ఈ IoT ఆధారిత ప్రాజెక్ట్ నాలుగు విభాగాలను కలిగి ఉంది, మొదట తేమ మరియు ఉష్ణోగ్రత సెన్సార్ DHT11 తేమ మరియు ఉష్ణోగ్రత డేటాను గ్రహించింది . రెండవది, ఆర్డునో యునో DHT11 సెన్సార్ యొక్క డేటాను శాతం మరియు సెల్సియస్ స్కేల్లో తగిన సంఖ్యగా సంగ్రహిస్తుంది మరియు దానిని Wi-Fi మాడ్యూల్కు పంపుతుంది. మూడవదిగా Wi-Fi మాడ్యూల్ ESP8266 డేటాను థింగ్స్పీక్ యొక్క సెవర్కు పంపుతుంది. చివరకు థింగ్స్పీక్ డేటాను విశ్లేషిస్తుంది మరియు దానిని గ్రాఫ్ రూపంలో చూపిస్తుంది. ఉష్ణోగ్రత మరియు తేమను ప్రదర్శించడానికి ఐచ్ఛిక LCD కూడా ఉపయోగించబడుతుంది.
ఆర్డునో కోసం ఐయోటి ఆధారిత ప్రాజెక్టులకు థింగ్స్పీక్ చాలా మంచి సాధనాన్ని అందిస్తుంది. థింగ్స్పీక్ సైట్ను ఉపయోగించడం ద్వారా, మన డేటాను ఇంటర్నెట్ ద్వారా ఎక్కడి నుండైనా పర్యవేక్షించవచ్చు మరియు థింగ్స్పీక్ అందించిన ఛానెల్లు మరియు వెబ్పేజీలను ఉపయోగించి ఇంటర్నెట్ ద్వారా మన సిస్టమ్ను కూడా నియంత్రించవచ్చు. థింగ్స్పీక్ సెన్సార్ల నుండి డేటాను 'సేకరిస్తుంది', ప్రతిచర్యను ప్రేరేపించడం ద్వారా డేటాను 'విశ్లేషించండి మరియు విజువలైజ్ చేయండి' మరియు 'యాక్ట్స్'. ESP8266 WIFI మాడ్యూల్ ఉపయోగించి థింగ్స్పీక్ సర్వర్కు డేటాను ఎలా పంపించాలో ఇక్కడ వివరిస్తున్నాము:
1. మొదట, యూజర్ థింగ్స్పీక్.కామ్లో ఖాతాను సృష్టించాలి, ఆపై సైన్ ఇన్ చేసి ప్రారంభించండి క్లిక్ చేయండి.
2. ఇప్పుడు 'ఛానెల్స్' మెనూకు వెళ్లి, తదుపరి ప్రక్రియ కోసం అదే పేజీలోని న్యూ ఛానల్ ఎంపికపై క్లిక్ చేయండి.
3. ఇప్పుడు మీరు ఛానెల్ని సృష్టించడానికి ఒక ఫారమ్ను చూస్తారు, మీ ఎంపిక ప్రకారం పేరు మరియు వివరణను పూరించండి. ఫీల్డ్ 1 మరియు ఫీల్డ్ 2 లేబుళ్ళలో 'తేమ' మరియు 'ఉష్ణోగ్రత' నింపండి, రెండు ఫీల్డ్లకు చెక్బాక్స్లను టిక్ చేయండి. క్రింద ఉన్న 'పబ్లిక్ చేయండి' ఎంపిక కోసం చెక్ బాక్స్ను టిక్ చేసి, చివరకు ఛానెల్ని సేవ్ చేయండి. ఇప్పుడు మీ క్రొత్త ఛానెల్ సృష్టించబడింది.
4. ఇప్పుడు 'API కీలు' టాబ్పై క్లిక్ చేసి , రైట్ అండ్ రీడ్ API కీలను సేవ్ చేయండి, ఇక్కడ మనం రైట్ కీని మాత్రమే ఉపయోగిస్తున్నాము. మీరు ఈ కీని కోడ్లోని చార్ * api_key లో కాపీ చేయాలి.
5. దాని తరువాత, 'డేటా దిగుమతి / ఎగుమతి' పై క్లిక్ చేసి , నవీకరణ ఛానల్ ఫీడ్ GET అభ్యర్థన URL ను కాపీ చేయండి, అంటే:
api.thingspeak.com/update?api_key=SIWOYBX26OXQ1WMS&field1=0
ఉపయోగించి తెరవడానికి "api.thingspeak.com" 6. ఇప్పుడు వినియోగదారు అవసరం httpGet తో ఫంక్షన్ postUrl వంటి "నవీకరణ? Api_key = SIWOYBX26OXQ1WMS & field1 = 0" ఆపై డేటా ఫీడ్ లేదా నవీకరణ అభ్యర్థనను చిరునామా ఉపయోగించి డేటాను పంపండి.
డేటాను పంపే ముందు, వినియోగదారు ఈ ప్రశ్న స్ట్రింగ్ లేదా పోస్ట్యూర్ల్ను ఉష్ణోగ్రత మరియు తేమ డేటా ఫీల్డ్లతో క్రింద చూపిన విధంగా సవరించాలి. ఇక్కడ మేము సర్వర్కు GET అభ్యర్ధనను ఉపయోగించి పంపాల్సిన స్ట్రింగ్లోని రెండు పారామితులను జోడించాము, దాని తర్వాత డేటాను సర్వర్కు పంపడానికి httpGet ను ఉపయోగించాము. క్రింద పూర్తి కోడ్ను తనిఖీ చేయండి.
Sprintf (postUrl, "update? Api_key =% s & field1 =% s & field2 =% s", api_key, humidStr, tempStr); httpGet ("api.thingspeak.com", postUrl, 80);
ఈ ఆర్టికల్ చివరిలో వీడియో ప్రక్రియలో మొత్తం ప్రక్రియ ప్రదర్శించబడుతుంది.
ఈ ప్రాజెక్ట్ యొక్క పని DHT11 నుండి డేటాను పొందటానికి సింగిల్ వైర్ సీరియల్ కమ్యూనికేషన్ ఆధారంగా ఉంటుంది. మొదట Arduino DHT మాడ్యూల్కు ప్రారంభ సిగ్నల్ను పంపుతుంది, ఆపై DHT డేటాను కలిగి ఉన్న ప్రతిస్పందన సిగ్నల్ ఇస్తుంది. ఆర్డునో రెండు భాగాలలో డేటాను సేకరించి సంగ్రహిస్తుంది మొదట తేమ మరియు రెండవది ఉష్ణోగ్రత మరియు తరువాత 16x2 ఎల్సిడి మరియు థింగ్స్పీక్ సర్వర్కు పంపండి. థింగ్స్పీక్ డేటాను గ్రాఫ్ రూపంలో క్రింద ప్రదర్శిస్తుంది:
మీరు DHT11 సెన్సార్ మరియు ఆర్డునోతో దాని ఇంటర్ఫేసింగ్ గురించి ఇక్కడ మరింత తెలుసుకోవచ్చు.
సర్క్యూట్ వివరణ:
ఈ థింగ్స్పీక్ ఉష్ణోగ్రత మరియు తేమ పర్యవేక్షణ ప్రాజెక్టు కోసం కనెక్షన్లు చాలా సులభం. ఇక్కడ ఒక లిక్విడ్ క్రిస్టల్ డిస్ప్లే ఉష్ణోగ్రత మరియు తేమను ప్రదర్శించడానికి ఉపయోగించబడుతుంది, ఇది నేరుగా 4-బిట్ మోడ్లో ఆర్డునోతో అనుసంధానించబడి ఉంది. ఎల్సిడి పిన్లు ఆర్ఎస్, ఇఎన్, డి 4, డి 5, డి 6 మరియు డి 7 ఆర్డునో డిజిటల్ పిన్ నంబర్ 14, 15, 16, 17, 18 మరియు 19 లతో అనుసంధానించబడి ఉన్నాయి. ఈ ఎల్సిడి ఐచ్ఛికం.
DHT11 సెన్సార్ మాడ్యూల్ Arduino యొక్క డిజిటల్ పిన్ 12 కి అనుసంధానించబడి ఉంది. Wi-Fi మాడ్యూల్ ESP8266 యొక్క Vcc మరియు GND పిన్లు నేరుగా 3.3V కి అనుసంధానించబడి ఉన్నాయి మరియు Arduino యొక్క GND మరియు CH_PD కూడా 3.3V తో అనుసంధానించబడి ఉన్నాయి. ESP8266 యొక్క Tx మరియు Rx పిన్స్ నేరుగా Arduino యొక్క పిన్ 2 మరియు 3 లతో అనుసంధానించబడి ఉన్నాయి. ఆర్డునో యొక్క పిన్ 2 మరియు 3 లలో సీరియల్ కమ్యూనికేషన్ను అనుమతించడానికి సాఫ్ట్వేర్ సీరియల్ లైబ్రరీని కూడా ఇక్కడ ఉపయోగిస్తారు. మేము ఇప్పటికే ESP8266 Wi-Fi మాడ్యూల్ యొక్క ఇంటర్ఫేసింగ్ను Arduino కి వివరంగా కవర్ చేసాము.
ప్రోగ్రామింగ్ భాగం:
ఈ ప్రాజెక్ట్ యొక్క ప్రోగ్రామింగ్ భాగం అన్ని కార్యకలాపాలను నిర్వహించడానికి చాలా ముఖ్యమైన పాత్ర పోషిస్తుంది. మొదట మేము అవసరమైన లైబ్రరీలను చేర్చుకుంటాము మరియు వేరియబుల్స్ ప్రారంభించండి.
# "dht.h" ను చేర్చండి // dht కోసం లైబ్రరీతో సహా # చేర్చండి
ఇది మీ రైట్ API కీని ఎంటర్ చేసి కొన్ని తీగలను తీసుకోండి.
చార్ * api_key = "SIWOYBX26OXQ1WMS"; // థింగ్స్పీక్ స్టాటిక్ చార్ పోస్ట్యూర్ల్ నుండి మీ రైట్ API కీని నమోదు చేయండి; int humi, tem; శూన్యమైన httpGet (స్ట్రింగ్ ఐపి, స్ట్రింగ్ పాత్, పూర్ణాంక పోర్ట్ = 80);
లో గర్జన లూప్ () ఫంక్షన్ మేము ఉష్ణోగ్రత మరియు తేమ చదివి మరియు తరువాత LCD ఆ రీడింగులను చూపించు.
డేటాను సర్వర్కు పంపడానికి void send2server () ఫంక్షన్ ఉపయోగించబడుతుంది. Send2server ఫంక్షన్ టైమర్ అంతరాయ సేవా దినచర్య, ప్రతి 20 సెకన్లలో కాల్ చేస్తుంది. మేము నవీకరణ ఫంక్షన్ అని పిలిచినప్పుడు, టైమర్ అంతరాయ సేవా దినచర్య అంటారు.
void send2server () {char tempStr; చార్ humidStr; dtostrf (tem, 5, 3, tempStr); dtostrf (humi, 5, 3, humidStr); sprintf (postUrl, "update? api_key =% s & field1 =% s & field2 =% s", api_key, humidStr, tempStr); httpGet ("api.thingspeak.com", postUrl, 80); }