- ఉపయోగించిన హార్డ్వేర్ భాగాలు:
- CP2102 USB-TTL కన్వర్టర్ ఉపయోగించి ప్రోగ్రామింగ్ ESP-01 మాడ్యూల్:
- CP2102 మాడ్యూల్తో ESP-01 యొక్క కనెక్షన్:
- అలెక్సా హోమ్ ఆటోమేషన్ కోసం ESP-01 మాడ్యూల్ యొక్క ప్రోగ్రామింగ్
- సర్క్యూట్ రేఖాచిత్రం
- హోమ్ ఆటోమేషన్ కోసం అమెజాన్ అలెక్సా యాప్ను సెటప్ చేయండి
అమెజాన్ ఎకో లేదా గూగుల్ హోమ్ వంటి స్మార్ట్ స్పీకర్లు ఈ రోజుల్లో ప్రాచుర్యం పొందాయి మరియు ఆ స్మార్ట్ స్పీకర్ను ఉపయోగించి ఏదైనా ఉపకరణాన్ని నియంత్రించడానికి అనుకూల నైపుణ్యం లేదా చర్యను సమగ్రపరచగల సామర్థ్యం రెండూ ఉన్నాయి. మేము ఇంతకుముందు రాస్ప్బెర్రీ పై మరియు అలెక్సాను ఉపయోగించి మా స్వంత స్మార్ట్ స్పీకర్ను నిర్మించాము మరియు ఈ రాస్ప్బెర్రీ పై స్మార్ట్ స్పీకర్ ఉపయోగించి గృహోపకరణాలను కూడా నియంత్రించాము.
ఇంటి ఆటోమేషన్ ఇప్పుడు చాలా సాధారణమైంది మరియు ప్రజలు తమ ఇంటిలోని ప్రతిదాన్ని ఆటోమేట్ చేయడానికి IoT ని ఉపయోగిస్తున్నారు. ఇక్కడ ఈ ట్యుటోరియల్ లో మేము ఒక రియల్ అమెజాన్ ఎకో ఉపయోగిస్తుంది స్పీకర్ డాట్ మరియు ఒక కస్టమ్ నైపుణ్యం సృష్టించడానికి AC గృహోపకరణాలు నియంత్రించడానికి లైట్లు, అభిమానులు, TV స్, సాకెట్స్ వంటి ఒక అమెజాన్ ఎకో డాట్ స్పీకర్ ఉపయోగించి. ఎకో డాట్ స్పీకర్ను ఎసి ఉపకరణాలతో కనెక్ట్ చేయడానికి ఇక్కడ మనం ఆర్డునో యుఎన్ఓ మరియు ఇఎస్పి 8266-01 వై-ఫై మాడ్యూల్ని ఉపయోగిస్తాము. ఈ ట్యుటోరియల్ తరువాత, మీరు అలెక్సా అయినప్పటికీ ఏదైనా ఉపకరణాన్ని నియంత్రించగలుగుతారు.
ఉపయోగించిన హార్డ్వేర్ భాగాలు:
- ఆర్డునో UNO
- ESP-01 మాడ్యూల్
- అమెజాన్ అలెక్సా ఎకో డాట్
- CP2102 USB-TTL కన్వర్టర్
- బ్రెడ్బోర్డ్
- 5 వి రిలే మాడ్యూల్
- ఎసి ఉపకరణాలు
- జంపర్స్
CP2102 USB-TTL కన్వర్టర్ ఉపయోగించి ప్రోగ్రామింగ్ ESP-01 మాడ్యూల్:
ఇక్కడ ESP-01 CP2102 USB-TTL కన్వర్టర్ ఉపయోగించి ప్రోగ్రామ్ చేయబడింది; దీనిని Arduino UNO బోర్డు ఉపయోగించి కూడా ప్రోగ్రామ్ చేయవచ్చు. ఇక్కడ నా విషయంలో, నేను CP2102 మాడ్యూల్ ఉపయోగించాను మరియు దీన్ని చేయడానికి దశలు క్రింద వివరించబడ్డాయి.
ESP-01 మాడ్యూల్
ESP8266 ESP-01 అనేది Wi-Fi మాడ్యూల్, ఇది IoT అనువర్తనాల రూపకల్పనలో బాగా ప్రాచుర్యం పొందింది మరియు ఇది Arduino UNO వంటి మైక్రోకంట్రోలర్లను ఇంటర్నెట్తో కనెక్ట్ చేయడానికి అనుమతించడానికి ఉపయోగించబడుతుంది. ఈ మాడ్యూల్ ఒక చిన్న కంప్యూటర్ లాగా పనిచేయగల చిప్ (SOC) లోని స్వీయ-నియంత్రణ వ్యవస్థ. ఇది ముందే ఇన్స్టాల్ చేయబడిన AT ఫర్మ్వేర్తో వస్తుంది, అందువల్ల మేము దీనిని Arduino IDE ఉపయోగించి ప్రోగ్రామ్ చేయవచ్చు. లింక్ను అనుసరించడం ద్వారా మీరు ఆర్డునో ఐడిఇని ఉపయోగించి ESP-01 వై-ఫై ట్రాన్స్సీవర్ మరియు దాని ప్రోగ్రామింగ్ గురించి మరింత తెలుసుకోవచ్చు.
పిన్ వివరణ:
విసిసి: 3.3 వి డిసితో సరఫరా చేయగల ఇఎస్పి -01 యొక్క విద్యుత్ సరఫరా పిన్
GND: ESP-01 యొక్క గ్రౌండ్ రిఫరెన్స్ పిన్
TXD: UART ట్రాన్స్మిటర్ పిన్గా ఉపయోగించబడుతుంది
RXD: UART రిసీవర్ పిన్గా ఉపయోగించబడుతుంది
రీసెట్: ఇది మాడ్యూల్ను రీసెట్ చేయడానికి ఉపయోగించబడుతుంది మరియు ఇది చురుకైన తక్కువ పిన్.
CH_PD: ఇది చిప్ ఎనేబుల్ పిన్, ఇది క్రియాశీల హై పిన్.
GPIO0: ఈ పిన్ రెండు ప్రయోజనాలకు ఉపయోగపడుతుంది. ఒకటి సాధారణ ప్రయోజనం ఇన్పుట్ / అవుట్పుట్ మరియు మరొకటి ESP-01 యొక్క ప్రోగ్రామింగ్ మోడ్ను ప్రారంభించడం
GPIO2: ఇది సాధారణ ప్రయోజన ఇన్పుట్ / అవుట్పుట్ పిన్.
CP2102 మాడ్యూల్తో ESP-01 యొక్క కనెక్షన్:
క్రింద ఉన్న బొమ్మ CP2102 USB-TTL కన్వర్టర్ యొక్క పిన్అవుట్ రేఖాచిత్రాన్ని చూపిస్తుంది. దిగువ పట్టిక ప్రకారం ESP-01 మాడ్యూల్ను CP2102 USB-TTL కన్వర్టర్ మాడ్యూల్తో కనెక్ట్ చేయండి.
ESP-01 మాడ్యూల్ |
CP2102 మాడ్యూల్ |
వీసీసీ |
3.3 వి |
GND |
GND |
RXD |
TXD |
TXD |
RXD |
CH_PD |
3.3 వి |
రీసెట్ చేయండి |
కనెక్షన్ లేదు |
GPIO0 |
GND |
GPIO2 |
కనెక్షన్ లేదు |
పై కనెక్షన్ విజయవంతంగా పూర్తయిన తర్వాత, సర్క్యూట్ క్రింద ఉన్నట్లుగా ఉండాలి:
అప్పుడు ప్రోగ్రామింగ్ కోసం CP2102 మాడ్యూల్ను మా PC కి కనెక్ట్ చేయండి. కోడ్ను ESP-01 కు అప్లోడ్ చేసే ముందు, మొదట, కమ్యూనికేషన్ పోర్ట్ కోసం తనిఖీ చేయండి. దీని కోసం ప్రారంభ-> కి వెళ్లి పరికర నిర్వాహికి కోసం శోధించండి. అప్పుడు COM లు మరియు పోర్టులపై క్లిక్ చేయండి. ఈ ఐచ్చికం క్రింద మనం క్రింద ఉన్న చిత్రంలో చూపిన విధంగా “ సిలికాన్ ల్యాబ్స్ CP21xx USB-UART బ్రిడ్జ్ ” వంటి USB-TTL కన్వర్టర్ పేరుతో COM పోర్ట్ పొందాలి :
పై దశలను విజయవంతంగా పూర్తి చేసిన తరువాత, ఆర్డునో IDE ని తెరిచి, టూల్స్ మెను నుండి బోర్డును “ జెనెరిక్ ESP8266 మాడ్యూల్ ” గా ఎంచుకోండి మరియు మునుపటి దశలో మనకు లభించిన COM పోర్ట్ను ఎంచుకోండి.
అలెక్సా హోమ్ ఆటోమేషన్ కోసం ESP-01 మాడ్యూల్ యొక్క ప్రోగ్రామింగ్
ఈ ప్రాజెక్ట్ చివరిలో పూర్తి కోడ్ ఇవ్వబడుతుంది. ESP-01 మాడ్యూల్లో అప్లోడ్ చేయాల్సిన కోడ్ యొక్క స్టెప్వైస్ వివరణ ఇక్కడ ఉంది. అవసరమైన అన్ని లైబ్రరీలను చేర్చడం మొదటి దశ. మీరు ఇక్కడ లింక్ నుండి “fauxmoESP.h” లైబ్రరీని డౌన్లోడ్ చేసుకోవచ్చు.
# చేర్చండి # చేర్చండి
ఈ దశలో, ఇంటర్నెట్తో ESP-01 ను కనెక్ట్ చేయడానికి అవసరమైన అన్ని ఆధారాలను మేము నిర్వచించాలి. ప్రోగ్రామ్లో మీ నెట్వర్క్ SSID మరియు పాస్వర్డ్ డేటాను నవీకరించండి.
# SSID ని నిర్వచించండి "*******" # పాస్ నిర్వచించండి "*******"
తరువాత మేము అలెక్సా నుండి నియంత్రించాల్సిన పరికరాల పేరును నిర్వచించండి. నా విషయంలో, నేను నా పరికర పేర్లను " బెడ్ రూమ్ లైట్ ", " బెడ్ రూమ్ ఫ్యాన్ " మరియు " స్మార్ట్ సాకెట్ " గా తీసుకున్నాను.
# పరికరం 1 "బెడ్ రూమ్ లైట్" ను నిర్వచించండి # పరికరం 2 "బెడ్ రూమ్ అభిమాని" # పరికరాన్ని నిర్వచించండి "స్మార్ట్ సాకెట్"
ఫంక్షన్ WiFi.mode స్టేషన్ మోడ్ వలె ESP-01 మాడ్యూల్ను సెటప్ చేయడానికి ఉపయోగించబడుతుంది మరియు ESF -01 మాడ్యూల్ను ఇంటర్నెట్కు కనెక్ట్ చేయడానికి WiFi.begin ఫంక్షన్ ఉపయోగించబడుతుంది, ఇది నెట్వర్క్ యొక్క SSID మరియు పాస్వర్డ్ను దాని వాదనలుగా తీసుకుంటుంది.
WiFi.mode (WIFI_STA); WiFi.begin (ssid, pass);
తరువాతి భాగం ఏమిటంటే, సర్వర్ను సృష్టించడం, అలెక్సా పరికరం కోసం పోర్ట్ నంబర్ను ప్రారంభించడం, పరికరాన్ని ప్రారంభించడం వంటి ఫాక్స్మో క్లాస్ యొక్క అన్ని విధులను ప్రారంభించడం. అప్పుడు మనం ఇంతకు ముందు సృష్టించిన fauxmo.addDevice ని ఉపయోగించి అన్ని పరికరాలను జోడించండి.
fauxmo.createServer (నిజం); fauxmo.setPort (80); fauxmo.enable (నిజం); fauxmo.addDevice (పరికరం 1); fauxmo.addDevice (పరికరం 2); fauxmo.addDevice (పరికరం 3);
తరువాత, మా వాయిస్ ఆదేశాలను ముందే నిర్వచించిన పరికర పేర్లతో పోల్చడానికి ఒక ఫంక్షన్ రాయండి. కమాండ్ సరిపోలితే, సీరియల్.ప్రింట్ ఉపయోగించి ఆర్డునో సీరియల్ టెర్మినల్స్కు ఒక అక్షరాన్ని పంపండి .
fauxmo.onSetState ((సంతకం చేయని చార్ device_id, const char * device_name, bool state, సంతకం చేయని చార్ విలువ) {if (strcmp (device_name, device1) == 0) {if (state) Serial.print ("1"); లేకపోతే సీరియల్.ప్రింట్ ("2");}}
లో గర్జన లూప్ () ఫంక్షన్, fauxmo.handle ఫంక్షన్ కేవలం అలెక్సా నుండి వచ్చే డేటా కోసం తనిఖీ చేస్తుంది మరియు అది ఉపయోగించి చర్యలు తీసుకునే onSetstate () ఫంక్షన్.
void loop () {fauxmo.handle (); }
ఇప్పుడు ఇచ్చిన పూర్తి కోడ్ను ESP-01 మాడ్యూల్కు అప్లోడ్ చేయండి మరియు విజయవంతంగా అప్లోడ్ చేసేలా చూసుకోండి.
ఆర్డునో కోడ్:
ఆ తరువాత, ఆర్డునోలో కోడ్ను అప్లోడ్ చేసే సమయం వచ్చింది. Arduino కోసం కోడ్ చాలా సులభం. ఇది దాని UART టెర్మినల్స్ ద్వారా ESP-01 మాడ్యూళ్ళ నుండి పంపిన అక్షరాలను మాత్రమే స్వీకరిస్తుంది మరియు రిలేకి టర్న్ ఆన్ / ఆఫ్ సిగ్నల్ పంపడానికి పోలుస్తుంది. Arduino కోసం పూర్తి ప్రోగ్రామ్ క్రింద చూపబడింది:
చార్ డేటా; void setup () {Serial.begin (115200); పిన్ మోడ్ (7, U ట్పుట్); పిన్మోడ్ (6, OUTPUT); పిన్మోడ్ (5, OUTPUT); డిజిటల్ రైట్ (7, తక్కువ); డిజిటల్ రైట్ (6, తక్కువ); డిజిటల్ రైట్ (5, తక్కువ); } శూన్య లూప్ () {if (Serial.available ()> 0) {data = Serial.read (); సీరియల్.ప్రింట్ (డేటా); సీరియల్.ప్రింట్ ("\ n"); if (డేటా == '1') డిజిటల్ రైట్ (7, HIGH); లేకపోతే (డేటా == '2') డిజిటల్ రైట్ (7, తక్కువ); లేకపోతే (డేటా == '3') డిజిటల్ రైట్ (6, HIGH); లేకపోతే (డేటా == '4') డిజిటల్ రైట్ (6, తక్కువ); లేకపోతే (డేటా == '5') డిజిటల్ రైట్ (5, HIGH); లేకపోతే (డేటా == '6') డిజిటల్ రైట్ (5, తక్కువ); }}
విజయవంతంగా అప్లోడ్ చేసిన తరువాత, అర్డునో, నెక్స్ట్కు కోడ్ క్రింద ఇవ్వబడిన స్కీమాటిక్స్ ప్రకారం హార్డ్వేర్ను కనెక్ట్ చేస్తుంది.
సర్క్యూట్ రేఖాచిత్రం
అలెక్సాను ఉపయోగించి హోమ్ ఆటోమేషన్ కోసం సర్క్యూట్ రేఖాచిత్రం క్రింద చూపబడింది:
ఇక్కడ మేము అన్ని భాగాలను పెర్ఫ్బోర్డ్లో కరిగించాము, తద్వారా ఇది ఆర్డునో షీల్డ్గా పనిచేస్తుంది.
అదేవిధంగా, మేము పెర్ఫ్బోర్డ్లో రిలే మాడ్యూల్ను కూడా నిర్మించాము:
హోమ్ ఆటోమేషన్ కోసం అమెజాన్ అలెక్సా యాప్ను సెటప్ చేయండి
హార్డ్వేర్ సెటప్ మరియు కోడింగ్ విజయవంతంగా పూర్తయిన తరువాత, ఇప్పుడు అలెక్సా ఆండ్రాయిడ్ అనువర్తనాన్ని సెటప్ చేయడానికి సమయం ఆసన్నమైంది. మొదట, మేము ఈ అనువర్తనం ద్వారా సమీపంలోని ఏదైనా స్మార్ట్ పరికరాల కోసం శోధించాలి. అలా చేయడానికి మీ అలెక్సా పరికరాన్ని ఆన్ చేసి, ఆపై మీ అలెక్సా అనువర్తనాన్ని తెరిచి, “ పరికరాలు ” ఎంపికపై క్లిక్ చేసి, ఆపై “ పరికరాన్ని జోడించు ” అని అడిగే “+” గుర్తుపై క్లిక్ చేయండి. అప్పుడు “ పరికరాన్ని జోడించు ” పై క్లిక్ చేయండి, పరికర రకంలో “ ఇతర ” క్లిక్ చేసి, ఆపై పరికరాలను కనుగొనండి ఎంచుకోండి. అప్పుడు మీ అలెక్సా అనువర్తనం 45 సెకన్ల వరకు పట్టే పరికరం కోసం శోధించాలి.
గమనిక: ప్రత్యామ్నాయంగా మేము కూడా పరికరాల్లో వాయిస్ కమాండ్ ఉపయోగించి "కనుగొనవచ్చు అలెక్సా, కనుగొనడంలో పరికరాలు "
పరికర ఆవిష్కరణ పూర్తయిన తర్వాత, మేము కోడ్లో ఇచ్చిన 3 కొత్త పరికరాలను పేరు ద్వారా పొందాలి. నా విషయంలో, ఇవి బెడ్ రూమ్ లైట్ , బెడ్ రూమ్ ఫ్యాన్ మరియు స్మార్ట్ సాకెట్ . ఇప్పుడు సెటప్ పరీక్షకు సిద్ధంగా ఉంది, “ అలెక్సా, బెడ్ రూమ్ లైట్ ఆన్ చేయండి ” అని చెప్పి పరీక్షించండి మరియు అది “సరే” అని మీ అభిప్రాయాన్ని తిరిగి ఇవ్వాలి మరియు కాంతి ఆన్ చేయాలి. అదేవిధంగా, మేము అన్ని ఇతర ఆదేశాలను పరీక్షించవచ్చు.
అమెజాన్ ఎకో డాట్ నియంత్రిత గృహోపకరణాల కోసం పూర్తి సెటప్ ఈ విధంగా కనిపిస్తుంది:
ప్రదర్శన వీడియోతో ESP-01 కోసం పూర్తి కోడ్ క్రింద ఇవ్వబడింది.