- అవసరమైన పదార్థాలు:
- లైన్ అనుచరుడి భావనలు
- రాస్ప్బెర్రీ పై లైన్ అనుచరుడు రోబోట్ సర్క్యూట్ రేఖాచిత్రం మరియు వివరణ:
- మీ రాస్ప్బెర్రీ PI ని ప్రోగ్రామింగ్:
- రాస్ప్బెర్రీ పై లైన్ అనుచరుడు చర్య:
మనందరికీ తెలిసినట్లుగా, రాస్ప్బెర్రీ పై అనేది ARM మైక్రోప్రాసెసర్ ఆధారంగా ఒక అద్భుతమైన అభివృద్ధి చెందుతున్న వేదిక. అధిక గణన శక్తి మరియు అభివృద్ధి ఎంపికలతో ఇది ఎలక్ట్రానిక్స్ అభిరుచులు లేదా విద్యార్థుల చేతుల్లో అద్భుతాలను చేయగలదు. రాస్ప్బెర్రీ పై గురించి మరియు ఇది ఎలా పనిచేస్తుందో తెలుసుకోవడానికి, రాస్ప్బెర్రీ పైని ఉపయోగించి లైన్ ఫాలోయర్ రోబోను నిర్మించడానికి ప్రయత్నిద్దాం.
మీకు రోబోటిక్స్ పట్ల ఆసక్తి ఉంటే “ లైన్ ఫాలోయర్ రోబోట్ ” అనే పేరు మీకు బాగా తెలుసు. ఈ రోబోట్ జత సెన్సార్ మరియు మోటారులను ఉపయోగించడం ద్వారా ఒక పంక్తిని అనుసరించగలదు. సాధారణ రోబోను నిర్మించడానికి రాస్ప్బెర్రీ పై వంటి శక్తివంతమైన మైక్రోప్రాసెసర్ను ఉపయోగించడం సమర్థవంతంగా అనిపించకపోవచ్చు. కానీ, ఈ రోబోట్ మీకు అనంతమైన అభివృద్ధికి అవకాశం ఇస్తుంది మరియు కివా (అమెజాన్ గిడ్డంగి రోబోట్) వంటి రోబోట్లు దీనికి ఉదాహరణ. మీరు మా ఇతర లైన్ ఫాలోయర్ రోబోట్లను కూడా తనిఖీ చేయవచ్చు:
- 8051 మైక్రోకంట్రోలర్ ఉపయోగించి లైన్ ఫాలోయర్ రోబోట్
- ఆర్డునో ఉపయోగించి లైన్ ఫాలోయర్ రోబోట్
అవసరమైన పదార్థాలు:
- రాస్ప్బెర్రీ పై 3 (ఏదైనా మోడల్ పనిచేయాలి)
- IR సెన్సార్ (2 సంఖ్యలు)
- DC గేర్ మోటార్ (2 సంఖ్యలు)
- ఎల్ 293 డి మోటార్ డ్రైవర్
- ఛైసెస్ (మీరు కార్డ్బోర్డ్లను ఉపయోగించి మీ స్వంతంగా కూడా నిర్మించవచ్చు)
- పవర్ బ్యాంక్ (ఏదైనా అందుబాటులో ఉన్న విద్యుత్ వనరు)
లైన్ అనుచరుడి భావనలు
లైన్ ఫాలోయర్ రోబోట్ ఐఆర్ సెన్సార్ సహాయంతో ఒక లైన్ ట్రాక్ చేయగలదు. ఈ సెన్సార్లో ఐఆర్ ట్రాన్స్మిటర్ మరియు ఐఆర్ రిసీవర్ ఉన్నాయి. ఐఆర్ ట్రాన్స్మిటర్ (ఐఆర్ ఎల్ఇడి) కాంతిని ప్రసారం చేస్తుంది మరియు రిసీవర్ (ఫోటోడియోడ్) ప్రసారం చేయబడిన కాంతి తిరిగి వచ్చే వరకు వేచి ఉంటుంది. ఒక IR కాంతి ఉపరితలం ద్వారా ప్రతిబింబిస్తేనే తిరిగి వస్తుంది. అయితే, అన్ని ఉపరితలాలు IR కాంతిని ప్రతిబింబించవు, తెలుపు రంగు ఉపరితలం మాత్రమే వాటిని పూర్తిగా ప్రతిబింబిస్తుంది మరియు క్రింద ఉన్న చిత్రంలో చూపిన విధంగా నలుపు రంగు ఉపరితలం వాటిని పూర్తిగా గమనిస్తుంది. IR సెన్సార్ మాడ్యూల్ గురించి ఇక్కడ మరింత తెలుసుకోండి.
రోబోట్ లైన్తో ట్రాక్లో ఉందో లేదో తనిఖీ చేయడానికి ఇప్పుడు మేము రెండు ఐఆర్ సెన్సార్లను ఉపయోగిస్తాము మరియు రోబోట్ ట్రాక్ నుండి బయటకు వెళితే దాన్ని సరిచేయడానికి రెండు మోటార్లు. ఈ మోటార్లు అధిక కరెంట్ అవసరం మరియు ద్వి-దిశాత్మకంగా ఉండాలి; అందువల్ల మేము L293D వంటి మోటారు డ్రైవర్ మాడ్యూల్ని ఉపయోగిస్తాము. IR సెన్సార్ నుండి విలువల ఆధారంగా మోటారులను సూచించడానికి రాస్ప్బెర్రీ పై వంటి గణన పరికరం కూడా మాకు అవసరం. అదే యొక్క సరళీకృత బ్లాక్ రేఖాచిత్రం క్రింద చూపబడింది.
ఈ రెండు ఐఆర్ సెన్సార్లు లైన్ యొక్క ఇరువైపులా ఒకటి ఉంచబడతాయి. సెన్సార్లు ఏవీ బ్లాక్ లైన్ను గుర్తించకపోతే అవి క్రింద చూపిన విధంగా ముందుకు సాగాలని మోటారులను పిఐ నిర్దేశిస్తుంది
ఎడమ సెన్సార్ బ్లాక్ లైన్లో వస్తే, కుడి చక్రం ఒంటరిగా తిప్పడం ద్వారా ఎడమవైపు తిరగమని పిఐ రోబోట్ను నిర్దేశిస్తుంది.
కుడి సెన్సార్ బ్లాక్ లైన్లో వస్తే, ఎడమ చక్రం ఒంటరిగా తిప్పడం ద్వారా రోబోట్ను కుడివైపు తిరగమని పిఐ ఆదేశిస్తుంది.
రెండు సెన్సార్లు బ్లాక్ లైన్లో వస్తే, రోబోట్ ఆగిపోతుంది.
ఈ విధంగా రోబోట్ ట్రాక్ వెలుపల రాకుండా లైన్ను అనుసరించగలదు. ఇప్పుడు సర్క్యూట్ మరియు కోడ్ ఎలా ఉంటుందో చూద్దాం.
రాస్ప్బెర్రీ పై లైన్ అనుచరుడు రోబోట్ సర్క్యూట్ రేఖాచిత్రం మరియు వివరణ:
ఈ రాస్ప్బెర్రీ పై లైన్ ఫాలోయర్ రోబోట్ యొక్క పూర్తి సర్క్యూట్ రేఖాచిత్రం క్రింద చూపబడింది
మీరు చూడగలిగినట్లుగా, సర్క్యూట్లో రెండు ఐఆర్ సెన్సార్ మరియు రాస్ప్బెర్రీ పైకి అనుసంధానించబడిన ఒక జత మోటార్లు ఉంటాయి. పూర్తి సర్క్యూట్ మొబైల్ పవర్ బ్యాంక్ చేత శక్తినిస్తుంది (పై సర్క్యూట్లో AAA బ్యాటరీ ద్వారా ప్రాతినిధ్యం వహిస్తుంది).
రాస్ప్బెర్రీ పైలో పిన్స్ వివరాలు ప్రస్తావించబడనందున, మేము ఈ క్రింది చిత్రాన్ని ఉపయోగించి పిన్నులను ధృవీకరించాలి
చిత్రంలో చూపిన విధంగా PI యొక్క ఎగువ ఎడమ మూలలో పిన్ + 5V పిన్, సర్క్యూట్ రేఖాచిత్రం (రెడ్ వైర్డ్) లో చూపిన విధంగా IR సెన్సార్లకు శక్తినివ్వడానికి మేము ఈ + 5V పిన్ను ఉపయోగిస్తాము. అప్పుడు మేము బ్లాక్ వైర్ను ఉపయోగించి గ్రౌండ్ పిన్లను ఐఆర్ సెన్సార్ మరియు మోటార్ డ్రైవర్ మాడ్యూల్ యొక్క మైదానానికి అనుసంధానిస్తాము. పసుపు వైర్ వరుసగా సెన్సార్ GPIO పిన్స్ 1 మరియు 2 మరియు 3 అవుట్పుట్ పిన్ కనెక్ట్ ఉపయోగిస్తారు.
మోటార్స్ నడపడానికి, మాకు నాలుగు పిన్స్ (A, B, A, B) అవసరం. ఈ నాలుగు పిన్లు వరుసగా GPIO14,4,17 మరియు 18 నుండి అనుసంధానించబడి ఉన్నాయి. నారింజ మరియు తెలుపు తీగ కలిసి ఒక మోటారుకు కనెక్షన్ను ఏర్పరుస్తాయి. కాబట్టి మనకు రెండు మోటార్లు అలాంటి రెండు జతలు ఉన్నాయి.
చిత్రంలో చూపిన విధంగా మోటార్లు L293D మోటార్ డ్రైవర్ మాడ్యూల్కు అనుసంధానించబడి ఉన్నాయి మరియు డ్రైవర్ మాడ్యూల్ పవర్ బ్యాంక్ ద్వారా శక్తిని పొందుతుంది. పవర్ బ్యాంక్ యొక్క భూమి రాస్ప్బెర్రీ పై యొక్క మైదానానికి అనుసంధానించబడిందని నిర్ధారించుకోండి, అప్పుడు మాత్రమే మీ కనెక్షన్ పని చేస్తుంది.
మీ రాస్ప్బెర్రీ PI ని ప్రోగ్రామింగ్:
మీరు మీ అసెంబ్లీ మరియు కనెక్షన్లను పూర్తి చేసిన తర్వాత మీ రోబోట్ ఇలా ఉండాలి.
ఇప్పుడు, మా బోట్ను ప్రోగ్రామ్ చేసి, దాన్ని అమలు చేయడానికి సమయం ఆసన్నమైంది. ఈ బోట్ యొక్క పూర్తి కోడ్ ఈ ట్యుటోరియల్ దిగువన చూడవచ్చు. రాస్ప్బెర్రీ పైలో ప్రోగ్రామ్ మరియు రన్ కోడ్ గురించి మరింత తెలుసుకోండి. ముఖ్యమైన పంక్తులు క్రింద వివరించబడ్డాయి
మేము లైబ్రరీ నుండి GPIO ఫైల్ను దిగుమతి చేయబోతున్నాము, క్రింద ఫంక్షన్ PI యొక్క GPIO పిన్లను ప్రోగ్రామ్ చేయడానికి అనుమతిస్తుంది. మేము “GPIO” ను “IO” అని పేరు మార్చుకుంటున్నాము, కాబట్టి ప్రోగ్రామ్లో మనం GPIO పిన్లను సూచించదలిచినప్పుడల్లా 'IO' అనే పదాన్ని ఉపయోగిస్తాము.
RPi.GPIO ని IO గా దిగుమతి చేయండి
కొన్నిసార్లు, మేము ఉపయోగించడానికి ప్రయత్నిస్తున్న GPIO పిన్స్ కొన్ని ఇతర విధులను చేస్తున్నప్పుడు. అలాంటప్పుడు, ప్రోగ్రామ్ను అమలు చేస్తున్నప్పుడు మాకు హెచ్చరికలు అందుతాయి. దిగువ కమాండ్ హెచ్చరికలను విస్మరించి ప్రోగ్రామ్తో కొనసాగమని PI కి చెబుతుంది.
IO.setwarnings (తప్పుడు)
మేము PI యొక్క GPIO పిన్లను బోర్డులోని పిన్ నంబర్ ద్వారా లేదా వాటి ఫంక్షన్ నంబర్ ద్వారా సూచించవచ్చు. బోర్డులోని 'పిన్ 29' లాగా 'GPIO5' ఉంది. కాబట్టి మనం ఇక్కడ పిన్ను '29' లేదా '5' ద్వారా ప్రాతినిధ్యం వహించబోతున్నాం.
IO.setmode (IO.BCM)
మేము 6 పిన్లను ఇన్పుట్ / అవుట్పుట్ పిన్లుగా సెట్ చేస్తున్నాము. మొదటి రెండు పిన్స్ ఐఆర్ సెన్సార్ చదవడానికి ఇన్పుట్ పిన్స్. తరువాతి నాలుగు అవుట్పుట్ పిన్స్, వీటిలో మొదటి రెండు కుడి మోటారును నియంత్రించడానికి మరియు తరువాతి రెండు ఎడమ మోటారును నియంత్రించడానికి ఉపయోగిస్తారు.
IO.setup (2, IO.IN) #GPIO 2 -> ఎడమ IR ను IO.setup (3, IO.IN) #GPIO 3 -> కుడి IR IO.setup (4, IO.OUT) #GPIO 4 - > మోటార్ 1 టెర్మినల్ A IO.setup (14, IO.OUT) #GPIO 14 -> మోటార్ 1 టెర్మినల్ B IO.setup (17, IO.OUT) #GPIO 17 -> మోటార్ లెఫ్ట్ టెర్మినల్ A IO.setup (18, IO.OUT) #GPIO 18 -> మోటార్ లెఫ్ట్ టెర్మినల్ B.
IR సెన్సార్ తెల్లటి ఉపరితలంపై ఉంటే “ట్రూ” ను అందిస్తుంది. కాబట్టి రెండు సెన్సార్ ట్రూ చెప్పినంతవరకు మనం ముందుకు సాగవచ్చు.
if (IO.input (2) == ఒప్పు మరియు IO.input (3) == నిజం): # తెలుపు ముందుకు సాగండి IO.output (4, ట్రూ) # 1A + IO.output (14, తప్పుడు) # 1B- IO. అవుట్పుట్ (17, నిజం) # 2A + IO.output (18, తప్పుడు) # 2B-
మొదటి ఐఆర్ సెన్సార్ బ్లాక్ లైన్ పైకి వస్తే మనం సరైన మలుపు తిరగాలి. అతను ఐఆర్ సెన్సార్ చదవడం ద్వారా ఇది జరుగుతుంది మరియు పరిస్థితి సంతృప్తి చెందితే మేము కుడి మోటారును ఆపి, దిగువ కోడ్లో చూపిన విధంగా ఎడమ మోటారును ఒంటరిగా తిప్పుతాము
elif (IO.input (2) == తప్పుడు మరియు IO.input (3) == నిజం): # కుడివైపు తిరగండి IO.output (4, ట్రూ) # 1A + IO.output (14, ట్రూ) # 1B- IO.output (17, నిజం) # 2A + IO.output (18, తప్పుడు) # 2B-
రెండవ ఐఆర్ సెన్సార్ బ్లాక్ లైన్ మీదుగా వస్తే మనం లెఫ్ట్ టర్న్ చేయాలి. అతను ఐఆర్ సెన్సార్ చదవడం ద్వారా ఇది జరుగుతుంది మరియు పరిస్థితి సంతృప్తి చెందితే మేము ఎడమ మోటారును ఆపి, దిగువ కోడ్లో చూపిన విధంగా కుడి మోటారును ఒంటరిగా తిప్పుతాము
elif (IO.input (2) == ఒప్పు మరియు IO.input (3) == తప్పు): # ఎడమవైపు తిరగండి IO.output (4, ట్రూ) # 1A + IO.output (14, తప్పుడు) # 1B- IO.output (17, నిజం) # 2A + IO.output (18, నిజం) # 2B-
సెన్సార్ రెండూ బ్లాక్ లైన్ మీదుగా వస్తే, రోబోట్ ఆగిపోవాలి. దిగువ కోడ్లో చూపిన విధంగా మోటారు యొక్క టెర్మినల్లు రెండూ నిజమని చెప్పడం ద్వారా ఇది చేయవచ్చు
else: # ఇంకా ఉండండి IO.output (4, ట్రూ) # 1A + IO.output (14, ట్రూ) # 1B- IO.output (17, ట్రూ) # 2A + IO.output (18, ట్రూ) # 2B-
రాస్ప్బెర్రీ పై లైన్ అనుచరుడు చర్య:
మీ రాస్ప్బెర్రీ పైకి లైన్ ఫాలోయర్ కోసం పైథాన్ కోడ్ను అప్లోడ్ చేసి దాన్ని అమలు చేయండి. మాకు పోర్టబుల్ విద్యుత్ సరఫరా అవసరం, ఈ సందర్భంలో ఒక పవర్ బ్యాంక్ ఉపయోగపడుతుంది కాబట్టి నేను అదే ఉపయోగించాను. నేను ఉపయోగిస్తున్నది రెండు యుఎస్బి పోర్ట్లతో వస్తుంది కాబట్టి ఈ క్రింది చిత్రంలో చూపిన విధంగా పిఐని మరియు మరొకటి పవర్ మోటార్ డ్రైవర్కు శక్తినిచ్చాను.
ఇప్పుడు మీరు చేయాల్సిందల్లా మీ స్వంత బ్లాక్ కలర్ ట్రాక్ను సెటప్ చేసి దానిపై మీ బోట్ను విడుదల చేయండి. మీరు ఏదైనా బ్లాక్ కలర్ మెటీరియల్ని ఉపయోగించగల ట్రాక్ను సృష్టించడానికి నేను బ్లాక్ కలర్ ఇన్సులేషన్ టేప్ను ఉపయోగించాను, కానీ మీ గ్రౌండ్ కలర్ చీకటిగా లేదని నిర్ధారించుకోండి.
బోట్ యొక్క పూర్తి పనిని క్రింద ఇచ్చిన వీడియోలో చూడవచ్చు. మీరు ప్రాజెక్ట్ అర్థం చేసుకున్నారని మరియు ఒకదాన్ని నిర్మించడం ఆనందించారని ఆశిస్తున్నాము. మీకు ఏవైనా ప్రశ్నలు ఉంటే వాటిని క్రింది వ్యాఖ్య విభాగంలో పోస్ట్ చేయండి.