ఎలక్ట్రానిక్ పరికరాలు మరియు మాడ్యూళ్ల మధ్య వైర్లెస్ కమ్యూనికేషన్ చాలా ముఖ్యం, వాటిని వరల్డ్ ఆఫ్ ఇంటర్నెట్ ఆఫ్ థింగ్స్లో 'ఫిట్' చేయడానికి. HTTP ప్రోటోకాల్ మరియు HTML భాష వెబ్ ద్వారా ప్రపంచంలో ఎక్కడైనా డేటాను బదిలీ చేయడం సాధ్యం చేసింది. Arduino తో Wi-Fi ని ఉపయోగించే కొన్ని ప్రాజెక్ట్లను మేము ఇప్పటికే కవర్ చేసాము , ప్రారంభించడానికి వాటిని చూడండి:
- Arduino మరియు ESP8266 WiFi మాడ్యూల్ ఉపయోగించి ఇమెయిల్ పంపుతోంది
- ఆర్డునో ఉపయోగించి వైఫై కంట్రోల్డ్ రోబోట్
- Arduino మరియు Wi-Fi ఉపయోగించి RGB LED ని నియంత్రించడం
ఇప్పుడు ఈ ట్యుటోరియల్లో, ఆర్డునో మరియు వై-ఫై మాడ్యూల్ ఉపయోగించి వెబ్కు డేటాను పంపే ప్రోగ్రామ్ను నిర్మిస్తున్నాము. దీని కోసం మనకు మొదట గ్లోబల్ లేదా లోకల్ సర్వర్ యొక్క IP చిరునామా అవసరం, ఇక్కడ సౌలభ్యం మరియు ప్రదర్శన ప్రయోజనం కోసం, మేము లోకల్ సర్వర్ని ఉపయోగిస్తున్నాము.
అవసరమైన భాగాలు:
- ఆర్డునో UNO
- ESP8266 Wi-Fi మాడ్యూల్
- USB కేబుల్
- వైర్లను కనెక్ట్ చేస్తోంది
- ల్యాప్టాప్
- విద్యుత్ పంపిణి
Wi-Fi మాడ్యూల్ ESP8266:
సర్క్యూట్ కనెక్షన్లు:
“ఆర్డునో నుండి వెబ్ వరకు పోస్ట్ డేటా” కోసం సర్క్యూట్ రేఖాచిత్రం క్రింద ఇవ్వబడింది. మాకు ప్రధానంగా Arduino మరియు ESP8266 Wi-Fi మాడ్యూల్ అవసరం. ESP8266 యొక్క Vcc మరియు GND పిన్లు నేరుగా 3.3V కి అనుసంధానించబడి ఉన్నాయి మరియు Arduino యొక్క GND మరియు CH_PD కూడా 3.3V తో అనుసంధానించబడి ఉన్నాయి. ESP8266 యొక్క Tx మరియు Rx పిన్స్ నేరుగా Arduino యొక్క పిన్ 2 మరియు 3 లతో అనుసంధానించబడి ఉన్నాయి. Arduino యొక్క పిన్ 2 మరియు 3 లలో సీరియల్ కమ్యూనికేషన్ను అనుమతించడానికి సాఫ్ట్వేర్ సీరియల్ లైబ్రరీ ఉపయోగించబడుతుంది. మేము ఇప్పటికే ESP8266 Wi-Fi మాడ్యూల్ యొక్క ఇంటర్ఫేసింగ్ను Arduino కి వివరంగా కవర్ చేసాము.
ఇక్కడ సాఫ్ట్వేర్ సీరియల్ లైబ్రరీని ఉపయోగించడం ద్వారా, మేము పిన్ 2 మరియు 3 లలో సీరియల్ కమ్యూనికేషన్ను అనుమతించాము మరియు వాటిని వరుసగా Rx మరియు Tx గా చేసాము. అప్రమేయంగా ఆర్డునో యొక్క పిన్ 0 మరియు 1 సీరియల్ కమ్యూనికేషన్ కోసం ఉపయోగించబడతాయి కాని సాఫ్ట్వేర్ సీరియల్ లైబ్రరీని ఉపయోగించడం ద్వారా, ఆర్డునో యొక్క ఇతర డిజిటల్ పిన్లపై సీరియల్ కమ్యూనికేషన్ను అనుమతించవచ్చు.
గమనిక: సీరియల్ మానిటర్లో ESP8266 యొక్క ప్రతిస్పందనను చూడటానికి, దయచేసి Arduino IDE యొక్క సీరియల్ మానిటర్ను తెరవండి.
పని వివరణ:
నెట్వర్క్ కనెక్టివిటీ కోసం మొదట మన వై-ఫై మాడ్యూల్ను వై-ఫై రౌటర్కు కనెక్ట్ చేయాలి. అప్పుడు మేము స్థానిక సర్వర్ను కాన్ఫిగర్ చేస్తాము, డేటాను వెబ్కు పంపండి మరియు చివరకు కనెక్షన్ను మూసివేస్తాము. ఈ ప్రక్రియ మరియు ఆదేశాలను క్రింది దశల్లో వివరించారు:
1. మొదట మనం AT ఆదేశాన్ని పంపడం ద్వారా Wi-Fi మాడ్యూల్ను పరీక్షించాలి, అది సరే ఉన్న ప్రతిస్పందనను తిరిగి ఇస్తుంది.
2. దీని తరువాత, మేము AT + CWMODE = mode_id ఆదేశాన్ని ఉపయోగించి మోడ్ను ఎంచుకోవాలి , మేము మోడ్ ఐడి = 3 ను ఉపయోగించాము. మోడ్ ఐడిలు:
1 = స్టేషన్ మోడ్ (క్లయింట్)
2 = AP మోడ్ (హోస్ట్)
3 = AP + స్టేషన్ మోడ్ (అవును, ESP8266 లో డ్యూయల్ మోడ్ ఉంది!)
3. ఇప్పుడు మనము ఇంతకుముందు కనెక్ట్ చేయబడిన Wi-Fi నెట్వర్క్ నుండి AT + CWQAP ఆదేశాన్ని ఉపయోగించి మా Wi-Fi మాడ్యూల్ను డిస్కనెక్ట్ చేయాలి , ఎందుకంటే ESP8266 డిఫాల్ట్ ఆటో గతంలో అందుబాటులో ఉన్న ఏదైనా Wi-Fi నెట్వర్క్తో కనెక్ట్ చేయబడింది
4. ఆ తరువాత, వినియోగదారు AT + RST ఆదేశంతో మాడ్యూల్ను రీసెట్ చేయవచ్చు. ఈ దశ ఐచ్ఛికం.
5. ఇప్పుడు మనం ఇచ్చిన ఆదేశాన్ని ఉపయోగించి ESP8266 ను Wi-Fi రౌటర్కు కనెక్ట్ చేయాలి
6. ఇచ్చిన ఆదేశాన్ని ఉపయోగించి ఇప్పుడు IP చిరునామాను పొందండి:
ఇది IP చిరునామాను తిరిగి ఇస్తుంది.
7. ఇప్పుడు AT + CIPMUX = 1 (బహుళ కనెక్షన్ కోసం 1 మరియు సింగిల్ కనెక్షన్ కోసం 0) ఉపయోగించి మల్టీప్లెక్స్ మోడ్ను ప్రారంభించండి.
8. ఇప్పుడు AT + CIPSERVER = 1, port_no (పోర్ట్ 80 కావచ్చు) ఉపయోగించి ESP8266 ను సర్వర్గా కాన్ఫిగర్ చేయండి. ఇప్పుడు మీ వై-ఫై సిద్ధంగా ఉంది. ఇక్కడ సర్వర్ను సృష్టించడానికి '1' మరియు సర్వర్ను తొలగించడానికి '0' ఉపయోగించబడుతుంది.
9. ఇప్పుడు ఇచ్చిన ఆదేశాన్ని ఉపయోగించడం ద్వారా వినియోగదారు స్థానికంగా సృష్టించిన సర్వర్కు డేటాను పంపవచ్చు:
ఐడి = ఐడి నం. ప్రసార కనెక్షన్
పొడవు = డేటా యొక్క గరిష్ట పొడవు 2 kb
10. సర్వర్కు ID మరియు పొడవు పంపిన తరువాత, మేము ఇలా డేటాను పంపాలి: Serial.println (“[email protected]”);
11. డేటాను పంపిన తరువాత ఇచ్చిన ఆదేశం ద్వారా కనెక్షన్ను మూసివేయాలి:
ఇప్పుడు డేటా స్థానిక సర్వర్కు ప్రసారం చేయబడింది.
12. ఇప్పుడు వెబ్ బ్రౌజర్లో అడ్రస్ బార్లో IP చిరునామాను టైప్ చేసి ఎంటర్ నొక్కండి. ఇప్పుడు యూజర్ వెబ్పేజీలో ప్రసారం చేసిన డేటాను చూడవచ్చు.
పూర్తి ప్రక్రియ కోసం క్రింది వీడియోను తనిఖీ చేయండి.
ప్రోగ్రామింగ్ కోసం దశలు:
1. పిన్ 2 & 3 లో సీరియల్ కమ్యూనికేషన్ను అనుమతించడానికి సాఫ్ట్వేర్ సీరియల్ లైబ్రరీని చేర్చండి మరియు కొన్ని వేరియబుల్స్ మరియు స్ట్రింగ్లను ప్రకటించండి.
# చేర్చండి
2. దీని తరువాత, మనకు కావలసిన పనులను నిర్వహించడానికి కొన్ని విధులను నిర్వచించాలి.
లో సెటప్ () ఫంక్షన్, మేము వంటి ESP8266 కోసం భాగంగా నిర్మిచబడిన సీరియల్ UART కమ్యూనికేషన్ ప్రారంభించడానికి client.begin (9600); 9600 బాడ్ రేటు వద్ద.
శూన్య సెటప్ () {Serial.begin (9600); client.begin (9600); wifi_init (); సీరియల్.ప్రింట్ల్న్ ("సిస్టమ్ రెడీ.."); }
3. wifi_init () ఫంక్షన్లో, రీసెట్, సెట్ మోడ్, రౌటర్కు కనెక్ట్ అవ్వడం, కనెక్షన్ను కాన్ఫిగర్ చేయడం వంటి కొన్ని ఆదేశాలను పంపడం ద్వారా మేము వైఫై మాడ్యూల్ను ప్రారంభిస్తాము. ఈ ఆదేశాలు పైన వివరించిన భాగంలో కూడా వివరించబడ్డాయి.
శూన్యమైన wifi_init () {connect_wifi ("AT", 100); connect_wifi ("AT + CWMODE = 3", 100); connect_wifi ("AT + CWQAP", 100); connect_wifi ("AT + RST", 5000);…………………
4. Connect_wifi () ఫంక్షన్లో, మేము ఆదేశాల డేటాను ESP8266 కు పంపుతాము, ఆపై ESP8266 Wi-Fi మాడ్యూల్ నుండి ప్రతిస్పందనను చదువుతాము.
void connect_wifi (స్ట్రింగ్ cmd, int t) {int temp = 0, i = 0; అయితే (1) {Serial.println (cmd);…………………
5. స్థానిక సర్వర్ లేదా వెబ్పేజీకి డేటాను పంపడానికి sendwebdata () ఫంక్షన్ ఉపయోగించబడుతుంది.
void sendwebdata (స్ట్రింగ్ వెబ్పేజీ) {int ii = 0; (1) {సంతకం చేయని పూర్ణాంకం l = వెబ్పేజీ.లెంగ్త్ (); సీరియల్.ప్రింట్ ("AT + CIPSEND = 0,"); client.print ("AT + CIPSEND = 0,");…………………
6. సెండ్వెబ్డేటా () ఫంక్షన్కు డేటా తీగలను పంపడానికి శూన్య పంపకం () ఫంక్షన్ ఉపయోగించబడుతుంది. అది వెబ్పేజీకి మరింత పంపబడుతుంది.
రద్దు పంపండి () {వెబ్పేజీ = "
సర్క్యూట్ డైజెస్ట్కు స్వాగతం
"; sendwebdata (వెబ్పేజీ); వెబ్పేజీ = పేరు; వెబ్పేజీ + = డాట్;…………………7. స్థానికంగా సృష్టించిన సర్వర్ యొక్క IP చిరునామాను పొందడానికి get_ip () ఫంక్షన్ ఉపయోగించబడుతుంది.
8. శూన్య లూప్ () ఫంక్షన్లో, పేజీని రిఫ్రెష్ చేయడానికి మేము వినియోగదారుకు సూచనలను పంపుతాము మరియు సర్వర్ కనెక్ట్ కాదా అని తనిఖీ చేస్తుంది. వినియోగదారు వెబ్పేజీని రిఫ్రెష్ చేసినప్పుడు లేదా అభ్యర్థించినప్పుడు, డేటా స్వయంచాలకంగా అదే IP చిరునామాకు ప్రసారం చేయబడుతుంది.
void loop () {k = 0; Serial.println ("దయచేసి మీ పేజీని రిఫ్రెష్ చేయండి"); అయితే (క <1000)………………
గది ఉష్ణోగ్రత & తేమ, గడియార సమయం, జిపిఎస్ కోఆర్డినేట్లు, హార్ట్ బీట్ రేట్ వంటి ఈ ప్రక్రియను ఉపయోగించి మేము ఆర్డునో నుండి వెబ్పేజీకి ఏదైనా డేటాను ప్రదర్శించవచ్చు.