- భాగాలు అవసరం
- సర్క్యూట్ రేఖాచిత్రం
- మాట్లాబ్ కమాండ్ విండో ఉపయోగించి బ్లూటూత్ కమ్యూనికేషన్
- మాట్లాబ్ GUI ని ఉపయోగించి బ్లూటూత్ కమ్యూనికేషన్
ఎంబెడెడ్ సిస్టమ్స్లో స్వల్ప శ్రేణి వైర్లెస్ కమ్యూనికేషన్ కోసం బ్లూటూత్ సరళమైన మరియు అత్యంత ప్రాచుర్యం పొందిన ప్రోటోకాల్. బ్లూటూత్ డేటాను ఒక పరికరం నుండి మరొక పరికరానికి బదిలీ చేయడానికి మాత్రమే కాకుండా, పరికరాలను వైర్లెస్గా నియంత్రించడానికి కూడా ఉపయోగించబడుతుంది. దాదాపు ప్రతి ఎలక్ట్రానిక్ గాడ్జెట్కు ఇప్పుడు బ్లూటూత్ మద్దతు ఉంది కాబట్టి మీ ఎంబెడెడ్ అప్లికేషన్లో బ్లూటూత్ కంట్రోల్ ఎంపికను కలిగి ఉండటం తెలివైన ఎంపిక.
ఇక్కడ ఈ ట్యుటోరియల్లో, వైర్లెస్గా కమ్యూనికేట్ చేయడానికి మాట్లాబ్లో బ్లూటూత్ను ఎలా ఉపయోగించాలో నేర్చుకుంటాము . మేము కంప్యూటర్ యొక్క అంతర్నిర్మిత బ్లూటూత్ను MATLAB తో ఒక వైపు మరియు HC-05 ను Arduino తో మరొక వైపు ఉపయోగిస్తాము. MATLAB మరియు Arduino మధ్య బ్లూటూత్ ద్వారా కమ్యూనికేషన్ను సెటప్ చేయడానికి రెండు మార్గాలు ఉన్నాయి, ఒకటి కమాండ్ విండోను ఉపయోగిస్తుంది మరియు మరొకటి MATLAB GUI ని ఉపయోగిస్తోంది. రెండు పద్ధతుల యొక్క ఆర్డునో కోడ్ ఒకే విధంగా ఉంటుంది. మీరు MATLAB కి కొత్తగా ఉంటే, MATLAB తో సరళమైన LED బ్లింక్ ప్రోగ్రామ్తో ప్రారంభించడం మరియు MATLAB లో ఉపయోగించే ప్రాథమిక పరిభాషను నేర్చుకోవడం మంచిది. మీరు మరిన్ని మ్యాట్లాబ్ ప్రాజెక్ట్లను మరింత అన్వేషించవచ్చు:
- MATLAB మరియు Arduino మధ్య సీరియల్ కమ్యూనికేషన్
- మాట్లాబ్ మరియు ఆర్డునో ఉపయోగించి DC మోటార్ కంట్రోల్
- మాట్లాబ్ మరియు ఆర్డునో ఉపయోగించి స్టెప్పర్ మోటార్ కంట్రోల్
- MATLAB ఉపయోగించి చిత్ర ప్రాసెసింగ్తో ప్రారంభించండి
భాగాలు అవసరం
- మాట్లాబ్ ఇన్స్టాల్ చేసిన ల్యాప్టాప్ (ప్రాధాన్యత: R2016a లేదా అంతకంటే ఎక్కువ వెర్షన్లు)
- ఆర్డునో UNO
- బ్లూటూత్ మాడ్యూల్ (HC-05)
- LED (ఏదైనా రంగు)
- రెసిస్టర్ (330 ఓం)
- జంపర్ వైర్లు
HC-05 మరియు ఆర్డునోతో దాని ఇంటర్ఫేసింగ్ గురించి మరింత తెలుసుకోవడానికి, ఈ క్రింది కథనాలను తనిఖీ చేయండి.
- ఆర్డునో ఉపయోగించి బ్లూటూత్ కంట్రోల్డ్ సర్వో మోటార్
- ఆర్డునో మరియు బ్లూటూత్ ఉపయోగించి వాయిస్ కంట్రోల్డ్ LED లు
- ఆర్డునో మరియు బ్లూటూత్ ఉపయోగించి సెల్ ఫోన్ కంట్రోల్డ్ ఎసి
సర్క్యూట్ రేఖాచిత్రం
MATLAB మరియు Arduino మధ్య బ్లూటూత్ కమ్యూనికేషన్ కోసం స్కీమాటిక్స్ క్రింద ఇవ్వబడింది:
మాట్లాబ్ కమాండ్ విండో ఉపయోగించి బ్లూటూత్ కమ్యూనికేషన్
Arduino మరియు MATLAB మధ్య బ్లూటూత్ కమ్యూనికేషన్ను సెటప్ చేయడానికి ఇది సరళమైన పద్ధతి. ఇక్కడ, ఆర్ట్వినోతో అనుసంధానించబడిన హెచ్సి -05 ను కనెక్ట్ చేయడానికి మ్యాట్లాబ్ ల్యాప్టాప్ యొక్క బ్లూటూత్ను ఉపయోగిస్తుంది. మొదట మనం మాట్లాబ్ (ల్యాప్టాప్ యొక్క బ్లూటూత్ ఉపయోగించి) నుండి వచ్చే సీరియల్ ఇన్కమింగ్ డేటాను చదవడానికి ఆర్డునోను కోడ్ చేయాలి.
MATLAB నుండి ప్రసారం చేయబడిన ఈ బ్లూటూత్ డేటాను Arduino కి అనుసంధానించబడిన దేనినైనా నియంత్రించడానికి ఉపయోగించవచ్చు. MATLAB ని ఉపయోగించి LAPTOP నుండి నియంత్రించగలిగే ఒక LED ని Arduino కి ఇక్కడ కనెక్ట్ చేసాము.
మొదట, Arduino UNO లో ఇచ్చిన Arduino కోడ్ను అప్లోడ్ చేసి, ఆపై MATLAB కమాండ్ విండోలో కోడింగ్ ప్రారంభించండి.
# చేర్చండి
అప్పుడు, MATLAB మరియు Arduino మధ్య బ్లూటూత్ కమ్యూనికేషన్ కోసం కమాండ్ విండోలో కింది MATLAB కోడ్ను కాపీ చేసి పేస్ట్ చేయండి.
instrhwinfo ('బ్లూటూత్', 'HC-05'); bt = బ్లూటూత్ ('HC-05', 1); ఫోపెన్ (బిటి);
దిగువ కోడ్లో, ఆర్డునోకు '0' పంపడం ద్వారా LED ని ఆపివేయడానికి fprintf (bt, '0') కమాండ్ ఉపయోగించబడుతుంది. ఇప్పుడు, మీరు LED ని ఆన్ చేయాలనుకుంటే, దిగువ ఆదేశాన్ని ఉపయోగించి '0' కు బదులుగా '1' పంపండి.
fprintf (బిటి, '1');
అందుబాటులో ఉన్న హార్డ్వేర్ గురించి సమాచారాన్ని తనిఖీ చేయడానికి, క్రింద ఉన్న ఆదేశాన్ని ఉపయోగించండి
instrhwinfo ('రకం', 'పరికరం పేరు');
ఉపయోగించిన బ్లూటూత్ పోర్ట్ తెరవడానికి
ఫోపెన్ (బిటి);
బ్లూటూత్ ఉపయోగించి మాట్లాబ్ నుండి ఆర్డునోకు డేటాను పంపే పూర్తి ప్రక్రియను అర్థం చేసుకోవడానికి క్రింది వీడియోను తనిఖీ చేయండి.
మాట్లాబ్ GUI ని ఉపయోగించి బ్లూటూత్ కమ్యూనికేషన్
మాట్లాబ్ జియుఐని ఉపయోగించి బ్లూటూత్ కమ్యూనికేషన్ను ప్రదర్శించడానికి , ఆర్టునోకు కనెక్ట్ చేయబడిన ఎల్ఇడిని ఆన్ చేయడానికి, ఆపివేయడానికి మరియు బ్లింక్ చేయడానికి మేము మ్యాట్లాబ్లో మూడు గ్రాఫికల్ బటన్లను సృష్టిస్తాము. ఆ గ్రాఫికల్ బటన్లపై క్లిక్ చేయడం ద్వారా మాట్లాబ్ నుండి హెచ్సి -05 వరకు బ్లూటూత్ ద్వారా డేటా పంపబడుతుంది. MATLAB నుండి HC-05 కు బ్లూటూత్ ప్రసారం చేసిన డేటాను స్వీకరించడానికి మరియు అందుకున్న డేటా ప్రకారం LED ని నియంత్రించడానికి Arduino కోడ్ను కలిగి ఉంది. Arduino కోడ్ మునుపటి మాదిరిగానే ఉంటుంది, తేడా ఏమిటంటే, ఇంతకుముందు మేము MATLAB యొక్క కమాండ్ విండో ద్వారా '1' మరియు '0' డేటాను పంపుతున్నాము మరియు ఇప్పుడు అదే డేటా మూడు గ్రాఫికల్ బటన్లపై క్లిక్ చేయడం ద్వారా పంపబడుతుంది.
GUI ని ప్రారంభించడానికి, కమాండ్ విండోలో క్రింది ఆదేశాన్ని టైప్ చేయండి
గైడ్
పాపప్ విండో తెరుచుకుంటుంది, ఆపై క్రింద ఉన్న చిత్రంలో చూపిన విధంగా కొత్త ఖాళీ GUI ని ఎంచుకోండి,
ఇప్పుడు , ON, OFF మరియు బ్లింక్ LED చెయ్యడానికి మూడు మీటలతో ఎంచుకోండి క్రింద చూపిన విధంగా,
పున ize పరిమాణం చేయడానికి లేదా పుష్బటన్ల ఆకారాన్ని మార్చడానికి, దానిపై క్లిక్ చేయండి మరియు మీరు బటన్ మూలలను లాగగలుగుతారు. పుష్బటన్పై డబుల్ క్లిక్ చేయడం ద్వారా మీరు నిర్దిష్ట బటన్ యొక్క రంగు, స్ట్రింగ్ మరియు ట్యాగ్ను మార్చవచ్చు. దిగువ చిత్రంలో చూపిన విధంగా మేము మూడు పుష్బటన్లను అనుకూలీకరించాము.
మీకు నచ్చిన విధంగా బటన్లను అనుకూలీకరించవచ్చు. ఇప్పుడు మీరు దీన్ని సేవ్ చేసినప్పుడు, MATLAB యొక్క ఎడిటర్ విండోలో ఒక కోడ్ ఉత్పత్తి అవుతుంది. మాట్లాబ్ జియుఐని ఉపయోగించి బ్లూటూత్ డేటాను స్వీకరించడంలో మీ ఆర్డునో చేత మీరు చేయాలనుకుంటున్న పని ప్రకారం ఈ కోడ్ను సవరించండి. కాబట్టి క్రింద మేము MATLAB కోడ్ను సవరించాము. MATLAB ట్యుటోరియల్తో ప్రారంభించడంలో మీరు కమాండ్ విండో, ఎడిటర్ విండో మొదలైన వాటి గురించి మరింత తెలుసుకోవచ్చు.
MATLAB నుండి బ్లూటూత్ ద్వారా LED ని నియంత్రించడానికి పూర్తి MATLAB కోడ్, ఈ ప్రాజెక్ట్ చివరిలో ఇవ్వబడుతుంది. డౌన్లోడ్ కోసం మేము ఇక్కడ GUI ఫైల్ (.fig) మరియు కోడ్ ఫైల్ (.m) తో సహా ఉన్నాము, వీటిని ఉపయోగించి మీ అవసరానికి అనుగుణంగా మీరు బటన్లను అనుకూలీకరించవచ్చు. Arduino తో కనెక్ట్ చేయబడిన LED ని నియంత్రించడానికి మేము చేసిన కొన్ని ట్వీక్స్ క్రింద ఉన్నాయి.
పంక్తి నంబర్లో ఈ క్రింది కోడ్ను కాపీ చేసి పేస్ట్ చేయండి. MATLAB ని ల్యాప్టాప్ యొక్క బ్లూటూత్కు సెటప్ చేయడానికి లేదా కనెక్ట్ చేయడానికి 74.
అన్నీ క్లియర్; గ్లోబల్ బిటి; instrhwinfo ('బ్లూటూత్', 'HC-05'); bt = బ్లూటూత్ ('HC-05', 1); ఫోపెన్ (బిటి);
ఇక్కడ, డేటాను ప్రసారం చేయడానికి బ్లూటూత్ పోర్టును తెరవడానికి ఫోపెన్ (బిటి) ఉపయోగించబడుతుంది.
ఇప్పుడు, మీరు క్రిందికి స్క్రోల్ చేసినప్పుడు, GUI లో మూడు పుష్బటన్ల కోసం మూడు ఫంక్షన్లు సృష్టించబడినట్లు మీరు చూస్తారు. ఇప్పుడు మీరు క్లిక్పై చేయాలనుకుంటున్న పని ప్రకారం ఫంక్షన్లలో కోడ్ రాయండి.
లో LED ON బటన్ యొక్క ఫంక్షన్, కాపీ మరియు LED ఆన్ కేవలం ఫంక్షన్ ముగింపు ముందు కోడ్ క్రింద అతికించండి. దిగువ కోడ్లో, ల్యాప్టాప్ యొక్క బ్లూటూత్ ఉపయోగించి MATLAB నుండి HC-05 కు '1' పంపించడానికి fprintf (bt, '1') ఉపయోగించబడుతుంది. ఆర్డునో ఈ డేటాను '1' ను హెచ్సి -05 ద్వారా స్వీకరిస్తుంది మరియు ఎల్ఈడీని దాని 11 వ పిన్ హైగా చేయడం ద్వారా మెరుస్తుంది.
గ్లోబల్ బిటి; fprintf (బిటి, '1');
లో LED ఆఫ్ బటన్ యొక్క ఫంక్షన్, కాపీ మరియు LED ఆఫ్ చెయ్యడానికి కేవలం ఫంక్షన్ ముగింపు ముందు కోడ్ క్రింద అతికించండి. దిగువ కోడ్లో, ల్యాప్టాప్ యొక్క బ్లూటూత్ ఉపయోగించి MATLAB నుండి HC-05 కు '0' పంపడానికి fprintf (bt, '0') ఉపయోగించబడుతుంది. ఆర్డునో HC-05 ద్వారా '0' అందుకుంటుంది మరియు దాని 11 వ పిన్ను తక్కువ చేయడం ద్వారా LED ని ఆపివేస్తుంది.
గ్లోబల్ బిటి; fprintf (బిటి, '0');
లో BLINK బటన్ యొక్క ఫంక్షన్, LED బ్లింక్ చేయడానికి కోడ్ క్రింద ఉపయోగించండి. LED ని 10 సార్లు రెప్ప వేయడానికి A for loop ఉపయోగించబడుతుంది.
గ్లోబల్ బిటి; i = 1:10 fprintf (bt, '1') కోసం; విరామం (0.5); fprintf (బిటి, '0'); విరామం (0.5); ముగింపు
MATLAB GUI కోడింగ్తో పూర్తి చేసి, సర్క్యూట్ రేఖాచిత్రం ప్రకారం హార్డ్వేర్ను సెటప్ చేసిన తర్వాత,.m ఫైల్లో సవరించిన కోడ్ను అమలు చేయడానికి రన్ బటన్ పై క్లిక్ చేయండి.
MATLAB ప్రతిస్పందించడానికి కొన్ని సెకన్ల సమయం పట్టవచ్చు, MATLAB BUSY సూచనను చూపించే వరకు ఏ GUI బటన్పై క్లిక్ చేయవద్దు, ఇది క్రింద చూపిన విధంగా మీరు స్క్రీన్ యొక్క ఎడమ దిగువ మూలలో చూడవచ్చు,
ప్రతిదీ సిద్ధంగా ఉన్నప్పుడు , LED- ఆన్, LED OFF మరియు BLINK బటన్ పై క్లిక్ చేసి వరుసగా LED, OFF మరియు Blink చేయండి. ఈ ప్రాజెక్ట్ కోసం అన్ని కోడ్ ఫైళ్ళను ఇక్కడ నుండి డౌన్లోడ్ చేసుకోవచ్చు లేదా మీరు క్రింద ఇచ్చిన కోడ్ను ఉపయోగించవచ్చు.
MATLAB GUI ని ఉపయోగించి MATLAB నుండి Arduino కు బ్లూటూత్ ద్వారా డేటాను పంపే పూర్తి ప్రక్రియను అర్థం చేసుకోవడానికి క్రింది వీడియోను తనిఖీ చేయండి.