- బ్లూటూత్ కమ్యూనికేషన్ కోసం అవసరమైన ప్యాకేజీలను వ్యవస్థాపించడం:
- బ్లూటూత్ ద్వారా రాస్ప్బెర్రీ పైతో పరికరాలను జత చేయడం:
- సర్క్యూట్ రేఖాచిత్రం:
- Android App BlueTerm తో LED ని నియంత్రించడం:
- ప్రోగ్రామింగ్ వివరణ:
రాస్ప్బెర్రీ పై IoT ప్రాజెక్టులకు బాగా ప్రాచుర్యం పొందింది ఎందుకంటే ఇంటర్నెట్ ద్వారా వైర్లెస్ కమ్యూనికేషన్ యొక్క అతుకులు సామర్థ్యం. రాస్ప్బెర్రీ పై 3 లో అంతర్నిర్మిత వై-ఫై మరియు బ్లూటూత్ ఉన్నాయి, మరియు బ్లూటూత్ చాలా ప్రాచుర్యం పొందిన వైర్లెస్ కమ్యూనికేషన్ ప్రోటోకాల్. కాబట్టి ఈ రోజు మనం బ్లూటూత్ ఉపయోగించి Android అనువర్తనం ద్వారా రాస్ప్బెర్రీ పై GPIO పిన్ను నియంత్రించబోతున్నాము.
ఇక్కడ మేము అంతర్నిర్మిత బ్లూటూత్ లేని రాస్ప్బెర్రీ 2 పై మోడల్ B ని ఉపయోగిస్తున్నాము, కాబట్టి మేము సాధారణ USB బ్లూటూత్ డాంగల్ ఉపయోగిస్తున్నాము. అలా కాకుండా GPIO నియంత్రణను ప్రదర్శించడానికి మాకు రెసిస్టర్ (220 ఆర్) మరియు ఒక LED మాత్రమే అవసరం. ఇక్కడ మేము వైర్లెస్ కమ్యూనికేషన్ కోసం RFCOMM బ్లూటూత్ ప్రోటోకాల్ను ఉపయోగిస్తున్నాము.
పైథాన్లో బ్లూటూత్ కోసం ప్రోగ్రామింగ్ సాకెట్ ప్రోగ్రామింగ్ నమూనాను అనుసరిస్తుంది మరియు బ్లూటూత్ పరికరాల మధ్య సమాచార మార్పిడి RFCOMM సాకెట్ ద్వారా జరుగుతుంది. RFCOMM (రేడియో ఫ్రీక్వెన్సీ కమ్యూనికేషన్) అనేది బ్లూటూత్ ప్రోటోకాల్, ఇది ఎమ్యులేటెడ్ RS-232 సీరియల్ పోర్టులను అందించింది మరియు దీనిని సీరియల్ పోర్ట్ ఎమ్యులేషన్ అని కూడా పిలుస్తారు. బ్లూటూత్ సీరియల్ పోర్ట్ ప్రొఫైల్ ఈ ప్రోటోకాల్ ఆధారంగా ఉంటుంది. RFCOMM బ్లూటూత్ అనువర్తనాలలో బాగా ప్రాచుర్యం పొందింది ఎందుకంటే విస్తృత మద్దతు మరియు బహిరంగంగా అందుబాటులో ఉన్న API. ఇది L2CAP ప్రోటోకాల్కు కట్టుబడి ఉంటుంది.
మేము మా మునుపటి ప్రాజెక్ట్లో బ్లూటూత్ మాడ్యూల్ HC-06 ను కూడా ఉపయోగించాము: రాస్ప్బెర్రీ పై ఉపయోగించి వాయిస్ కంట్రోల్డ్ LED లు. కొన్ని మంచి IoT ప్రాజెక్ట్లతో పాటు మా మునుపటి రాస్ప్బెర్రీ పై ప్రాజెక్ట్లను కూడా తనిఖీ చేయండి.
బ్లూటూత్ కమ్యూనికేషన్ కోసం అవసరమైన ప్యాకేజీలను వ్యవస్థాపించడం:
ప్రారంభించడానికి ముందు, రాస్ప్బెర్రీ పైలో బ్లూటూత్ కమ్యూనికేషన్ను ఏర్పాటు చేయడానికి మేము కొన్ని సాఫ్ట్వేర్లను ఇన్స్టాల్ చేయాలి. మీరు రాస్ప్బెర్రీ పైతో రాస్పియన్ జెస్సీ వ్యవస్థాపించిన మెమరీ కార్డును కలిగి ఉండాలి. రాస్ప్బియన్ OS ని ఇన్స్టాల్ చేయడానికి మరియు రాస్ప్బెర్రీ పైతో ప్రారంభించడానికి ఈ కథనాన్ని తనిఖీ చేయండి. కాబట్టి ఇప్పుడు మనం మొదట దిగువ ఆదేశాలను ఉపయోగించి రాస్పియన్ను నవీకరించాలి:
sudo apt-get update sudo apt-get update
అప్పుడు మేము కొన్ని బ్లూటూత్ సంబంధిత ప్యాకేజీలను వ్యవస్థాపించాలి:
sudo apt-get install బ్లూటూత్ బ్లూమాన్ బ్లూజ్
అప్పుడు రాస్ప్బెర్రీ పైని రీబూట్ చేయండి:
sudo రీబూట్
బ్లూజెడ్ అనేది ఓపెన్ సోర్స్ ప్రాజెక్ట్ మరియు అధికారిక లైనక్స్ బ్లూటూత్ ప్రోటోకాల్ స్టాక్. ఇది అన్ని కోర్ బ్లూటూత్ ప్రోటోకాల్లకు మద్దతు ఇస్తుంది మరియు ఇప్పుడు అధికారిక లైనక్స్ కెర్నల్లో భాగమైంది.
బ్లూటూత్ పరికరాలను నిర్వహించడానికి మరియు నియంత్రించడానికి డెస్క్టాప్ ఇంటర్ఫేస్ను బ్లూమాన్ అందిస్తుంది.
చివరగా మాకు బ్లూటూత్ కమ్యూనికేషన్ కోసం పైథాన్ లైబ్రరీ అవసరం, తద్వారా పైథాన్ భాషను ఉపయోగించి RFCOMM ద్వారా డేటాను పంపవచ్చు మరియు స్వీకరించవచ్చు:
sudo apt-get install పైథాన్-బ్లూటూత్
రాస్ప్బెర్రీ పై కోసం GPIO మద్దతు లైబ్రరీలను కూడా వ్యవస్థాపించండి:
sudo apt-get install python-rpi.gpio
ఇప్పుడు మేము రాస్ప్బెర్రీ పైలో బ్లూటూత్ కమ్యూనికేషన్ కోసం అవసరమైన ప్యాకేజీలను వ్యవస్థాపించాము.
బ్లూటూత్ ద్వారా రాస్ప్బెర్రీ పైతో పరికరాలను జత చేయడం:
రాస్ప్బెర్రీ పైతో మొబైల్ ఫోన్ వంటి బ్లూటూత్ పరికరాలను జత చేయడం చాలా సులభం. ఇక్కడ మేము మా Android స్మార్ట్ ఫోన్ను రాస్ప్బెర్రీ పైతో జత చేసాము. మేము ఇంతకుముందు పైలో బ్లూజెడ్ను ఇన్స్టాల్ చేసాము, ఇది మా బ్లూటూత్ పరికరాలను నిర్వహించడానికి “బ్లూటూత్క్ట్ల్” అనే కమాండ్ లైన్ యుటిలిటీని అందిస్తుంది. కానీ దీనికి ముందు, మీ USB బ్లూటూత్ డాంగల్ను రాస్ప్బెర్రీ పైతో కనెక్ట్ చేయండి మరియు దిగువ ఆదేశాన్ని ఉపయోగించడం ద్వారా అది కనుగొనబడిందో లేదో తనిఖీ చేయండి:
lsusb
ఇప్పుడు దిగువ ఆదేశం ద్వారా బ్లూటూత్క్ట్ యుటిలిటీని తెరవండి:
sudo బ్లూటూత్క్ట్ల్
'సహాయం' అని టైప్ చేయడం ద్వారా మీరు బ్లూటూత్క్ట్ యుటిలిటీ యొక్క అన్ని ఆదేశాలను తనిఖీ చేయవచ్చు. ప్రస్తుతానికి మనం ఇచ్చిన క్రమంలో క్రింద ఆదేశాలను నమోదు చేయాలి:
# స్కాన్ ఆన్లో # పేరెంట్పై # కనుగొనదగిన # ఏజెంట్పై # శక్తి
చివరి ఆదేశం “స్కాన్ ఆన్” తరువాత, మీరు జాబితాలో మీ బ్లూటూత్ పరికరాన్ని (మొబైల్ ఫోన్) చూస్తారు. మీ మొబైల్ బ్లూటూత్ ఆన్ చేసి, సమీప పరికరాల ద్వారా కనిపించేలా చూసుకోండి. అప్పుడు మీ పరికరం యొక్క MAC చిరునామాను కాపీ చేసి, ఇచ్చిన ఆదేశాన్ని ఉపయోగించి జత చేయండి:
జత
అప్పుడు మీరు మీ టెర్మినల్ కన్సోల్లో పాస్కోడ్ లేదా పిన్ కోసం ప్రాంప్ట్ చేయబడతారు, ఆపై పాస్కోడ్ను టైప్ చేసి ఎంటర్ నొక్కండి. ప్రాంప్ట్ చేసినప్పుడు అదే పాస్కోడ్ను మీ మొబైల్ ఫోన్లో టైప్ చేయండి మరియు మీరు ఇప్పుడు రాస్ప్బెర్రీ పైతో విజయవంతంగా జత చేస్తారు. ఈ మొత్తం ప్రక్రియను చివరిలో ఇచ్చిన మా వీడియోలో కూడా వివరించాము.
ముందే చెప్పినట్లుగా, మీరు మొబైల్ ఫోన్ను జత చేయడానికి డెస్క్టాప్ ఇంటర్ఫేస్ను కూడా ఉపయోగించవచ్చు. బ్లూమాన్ను ఇన్స్టాల్ చేసిన తర్వాత, క్రింద చూపిన విధంగా మీ రాస్ప్బెర్రీ పై డెస్క్టాప్ యొక్క కుడి వైపున బ్లూటూత్ చిహ్నాన్ని మీరు చూస్తారు, వీటిని ఉపయోగించి మీరు సులభంగా జత చేయవచ్చు.
సర్క్యూట్ రేఖాచిత్రం:
సర్క్యూట్ రేఖాచిత్రం చాలా సులభం, మేము రాస్ప్బెర్రీ పై యొక్క పిన్ 40 (GPIO 21) కు LED ని 220 ఓం రెసిస్టర్తో కనెక్ట్ చేసాము:
Android App BlueTerm తో LED ని నియంత్రించడం:
ఇప్పుడు మొబైల్ ఫోన్ను అన్వయించిన తర్వాత, బ్లూటూత్ సీరియల్ అడాప్టర్ను ఉపయోగించి రాస్ప్బెర్రీ పైతో కమ్యూనికేట్ చేయడానికి మేము Android అనువర్తనాన్ని ఇన్స్టాల్ చేయాలి. ఇంతకు ముందు చెప్పినట్లుగా RFCOMM / SPP ప్రోటోకాల్ బ్లూటూత్ ద్వారా సీరియల్ కమ్యూనికేషన్ను అనుకరిస్తుంది, కాబట్టి మేము ఈ ప్రోటోకాల్కు మద్దతు ఇచ్చే బ్లూటెర్మ్ యాప్ను ఇక్కడ ఇన్స్టాల్ చేసాము.
మీరు RFCOMM సాకెట్ ద్వారా కమ్యూనికేషన్కు మద్దతు ఇచ్చే ఇతర బ్లూటూత్ టెర్మినల్ అనువర్తనాన్ని కూడా ఉపయోగించవచ్చు.
ఇప్పుడు బ్లూటెర్మ్ యాప్ను డౌన్లోడ్ చేసి, ఇన్స్టాల్ చేసిన తర్వాత, టెర్మినల్ నుండి క్రింద ఇచ్చిన పైథాన్ ప్రోగ్రామ్ను రన్ చేయండి మరియు అదే సమయంలో బ్లూటెర్మ్ యాప్ నుండి జత చేసిన కోరిందకాయ పరికరాన్ని కనెక్ట్ చేయండి.
విజయవంతమైన కనెక్షన్ తర్వాత మీరు కనెక్ట్ చేయబడినట్లు చూస్తారు : క్రింద చూపిన విధంగా అనువర్తనం యొక్క కుడి ఎగువ మూలలో కోరిందకాయ :
ఇప్పుడు మీరు వరుసగా GPIO పిన్ను అధికంగా మరియు తక్కువగా చేయడానికి బ్లూటెర్మ్ అనువర్తనం నుండి '1' లేదా '0' ను నమోదు చేయవచ్చు, ఇది ఈ పిన్కు కనెక్ట్ చేయబడిన LED ని ఆన్ చేసి ఆఫ్ చేస్తుంది. ప్రోగ్రామ్ నుండి నిష్క్రమించడానికి 'q' నొక్కండి. మీ వాయిస్ని ఉపయోగించి GPIO ని నియంత్రించడానికి మీరు Google వాయిస్ టైపింగ్ కీబోర్డ్ను ఉపయోగించవచ్చు. చివరిలో ఇచ్చిన వీడియోలో పూర్తి డెమోని తనిఖీ చేయండి.
కాబట్టి మీరు బ్లూటూత్ ద్వారా Android అనువర్తనాన్ని ఉపయోగించి GPIO పిన్ను వైర్లెస్గా నియంత్రించవచ్చు. Arduino తో బ్లూటూత్ ఎలా ఉపయోగించాలో కూడా తనిఖీ చేయండి.
ప్రోగ్రామింగ్ వివరణ:
ఆండ్రాయిడ్ యాప్తో రాస్ప్బెర్రీ పై GPIO ని నియంత్రించడానికి పైథాన్ ప్రోగ్రామ్ చాలా సులభం మరియు స్వీయ వివరణాత్మకమైనది. బ్లూటూత్ RFCOMM కమ్యూనికేషన్కు సంబంధించిన కోడ్ గురించి మనం కొంచెం నేర్చుకోవాలి. మొదట మనం బ్లూటూత్ సాకెట్ లైబ్రరీని దిగుమతి చేసుకోవాలి, ఇది పైథాన్ భాషతో బ్లూటూత్ను నియంత్రించగలుగుతుంది; మేము మునుపటి విభాగంలో లైబ్రరీని ఇన్స్టాల్ చేసాము.
బ్లూటూత్ దిగుమతి
బ్లూటూత్ కమ్యూనికేషన్కు బాధ్యత వహించే కోడ్ క్రింద ఉంది:
server_socket = bluetooth.BluetoothSocket (బ్లూటూత్. డేటా = client_socket.recv (1024)
ఇక్కడ మనం వాటిని పంక్తిగా అర్థం చేసుకోవచ్చు:
server_socket = bluetooth.BluetoothSocket (bluetooth.RFCOMM): బ్లూటూత్ RFCOMM కమ్యూనికేషన్ కోసం సాకెట్ను సృష్టిస్తోంది.
server_socket.bind (("", పోర్ట్): - సర్వర్ స్క్రిప్ట్ను హోస్ట్ '' పై పోర్ట్కు బంధిస్తుంది.
server_socket.listen (1) : ఒక సమయంలో ఒక కనెక్షన్ను అంగీకరించడానికి సర్వర్ వింటుంది.
client_socket, address = server_socket.accept () : సర్వర్ క్లయింట్ యొక్క కనెక్షన్ అభ్యర్థనను అంగీకరిస్తుంది మరియు మాక్ చిరునామాను వేరియబుల్ చిరునామాకు కేటాయించండి , client_socket క్లయింట్ యొక్క సాకెట్
data = client_socket.recv (1024): క్లయింట్ సాకెట్ client_socket ద్వారా డేటాను స్వీకరించండి మరియు దానిని వేరియబుల్ డేటాకు కేటాయించండి. ఒకేసారి గరిష్టంగా 1024 అక్షరాలను స్వీకరించవచ్చు.
చివరగా అన్ని ప్రోగ్రామింగ్ తరువాత, దిగువ కోడ్ ఉపయోగించి క్లయింట్ మరియు సర్వర్ కనెక్షన్ను మూసివేయండి:
client_socket.close () server_socket.close ()
అన్ని ఇతర కోడ్ సులభం మరియు స్వీయ వివరణాత్మకమైనది. దిగువ పూర్తి కోడ్ను తనిఖీ చేయండి. ఈ ప్రాజెక్ట్ను సవరించడానికి ప్రయత్నించండి మరియు మీరు మరెన్నో విషయాలను వైర్లెస్గా నియంత్రించడానికి ఉపయోగించవచ్చు, రిలేస్ను ఉపయోగించడం వంటివి మీరు గృహోపకరణాలను నియంత్రించవచ్చు లేదా ఆండ్రాయిడ్ ఫోన్ ద్వారా రోబోట్ కారును కూడా నియంత్రించవచ్చు.