- అవసరమైన పదార్థాలు:
- లైన్ అనుచరుడి భావనలు
- సర్క్యూట్ రేఖాచిత్రం మరియు వివరణ:
- ప్రోగ్రామింగ్ PIC మైక్రోకంట్రోలర్:
- పిఐసి లైన్ అనుచరుడు చర్య:
లైన్ ఫాలోయర్ రోబోట్ అనేది చాలా మంది విద్యార్థులు / అభిరుచి గలవారు నిర్మించడానికి సరళమైన ఇంకా మనోహరమైన రోబోట్. ఈ ట్యుటోరియల్లో ఒక లైన్ ఫాలోయర్ రోబోట్ ఎలా పనిచేస్తుందో మరియు PIC మైక్రోకంట్రోలర్ PIC16F877A ఉపయోగించి ఎలా నిర్మించవచ్చో నేర్చుకుంటాము. PIC16F877A అనేది మైక్రోచిప్ నుండి 40-పిన్ బహుళార్ధసాధక MCU, మేము ఈ IC ని మా పూర్తి PIC ట్యుటోరియల్ సిరీస్లో ఉపయోగించాము. మీరు క్రొత్తవారైతే, ఈ ఐసి యొక్క ప్రాథమికాన్ని తెలుసుకోవడానికి మరియు మైక్రోకంట్రోలర్కు ప్రోగ్రామ్లను ఎలా అప్లోడ్ చేయాలో తెలుసుకోవడానికి ఇక్కడ మీరు ఈ పిఐసి ట్యుటోరియల్లను చూడవచ్చు. మేము ఇప్పటికే మా ట్యుటోరియల్లో ఈ సమాచారాన్ని కవర్ చేసినందున, వాటిని క్రింది వివరణలో దాటవేస్తాము.
మీకు రోబోటిక్స్ పట్ల ఆసక్తి ఉంటే “ లైన్ ఫాలోయర్ రోబోట్ ” అనే పేరు మీకు బాగా తెలుసు. ఈ రోబోట్ జత సెన్సార్ మరియు మోటారులను ఉపయోగించడం ద్వారా ఒక పంక్తిని అనుసరించగలదు. ఈ రోబోట్ మీకు అనంతమైన అభివృద్ధికి అవకాశం ఇస్తుంది మరియు కివా (అమెజాన్ గిడ్డంగి రోబోట్) వంటి రోబోట్లు దీనికి ఉదాహరణ. మీరు మా ఇతర లైన్ ఫాలోయర్ రోబోట్లను కూడా తనిఖీ చేయవచ్చు:
- 8051 మైక్రోకంట్రోలర్ ఉపయోగించి లైన్ ఫాలోయర్ రోబోట్
- ఆర్డునో ఉపయోగించి లైన్ ఫాలోయర్ రోబోట్
- రాస్ప్బెర్రీ పై ఉపయోగించి లైన్ ఫాలోయర్ రోబోట్
అవసరమైన పదార్థాలు:
- PIC16F877A
- IR సెన్సార్ (2 సంఖ్యలు)
- DC గేర్ మోటార్ (2 సంఖ్యలు)
- ఎల్ 293 డి మోటార్ డ్రైవర్
- ఛైసెస్ (మీరు కార్డ్బోర్డ్లను ఉపయోగించి మీ స్వంతంగా కూడా నిర్మించవచ్చు)
- పవర్ బ్యాంక్ (ఏదైనా అందుబాటులో ఉన్న విద్యుత్ వనరు)
లైన్ అనుచరుడి భావనలు
లైన్ ఫాలోయర్ రోబోట్ ఐఆర్ సెన్సార్ సహాయంతో ఒక లైన్ ట్రాక్ చేయగలదు. ఈ సెన్సార్లో ఐఆర్ ట్రాన్స్మిటర్ మరియు ఐఆర్ రిసీవర్ ఉన్నాయి. ఐఆర్ ట్రాన్స్మిటర్ (ఐఆర్ ఎల్ఇడి) కాంతిని ప్రసారం చేస్తుంది మరియు రిసీవర్ (ఫోటోడియోడ్) ప్రసారం చేయబడిన కాంతి తిరిగి వచ్చే వరకు వేచి ఉంటుంది. ఒక IR కాంతి ఉపరితలం ద్వారా ప్రతిబింబిస్తేనే తిరిగి వస్తుంది. అయితే, అన్ని ఉపరితలాలు IR కాంతిని ప్రతిబింబించవు, తెలుపు రంగు ఉపరితలం మాత్రమే వాటిని పూర్తిగా ప్రతిబింబిస్తుంది మరియు క్రింద ఉన్న చిత్రంలో చూపిన విధంగా నలుపు రంగు ఉపరితలం వాటిని పూర్తిగా గమనిస్తుంది. IR సెన్సార్ మాడ్యూల్ గురించి ఇక్కడ మరింత తెలుసుకోండి.
రోబోట్ లైన్తో ట్రాక్లో ఉందో లేదో తనిఖీ చేయడానికి ఇప్పుడు మేము రెండు ఐఆర్ సెన్సార్లను ఉపయోగిస్తాము మరియు రోబోట్ ట్రాక్ నుండి బయటకు వెళితే దాన్ని సరిచేయడానికి రెండు మోటార్లు. ఈ మోటార్లు అధిక కరెంట్ అవసరం మరియు ద్వి-దిశాత్మకంగా ఉండాలి; అందువల్ల మేము L293D వంటి మోటారు డ్రైవర్ మాడ్యూల్ని ఉపయోగిస్తాము. ఐఆర్ సెన్సార్ నుండి విలువల ఆధారంగా మోటార్లు సూచించడానికి మాకు పిఐసి వంటి మైక్రోకంట్రోలర్ అవసరం. అదే యొక్క సరళీకృత బ్లాక్ రేఖాచిత్రం క్రింద చూపబడింది.
ఈ రెండు ఐఆర్ సెన్సార్లు లైన్ యొక్క ఇరువైపులా ఒకటి ఉంచబడతాయి. సెన్సార్లు ఏవీ బ్లాక్ లైన్ను గుర్తించకపోతే అవి పిఐసి మైక్రోకంట్రోలర్ మోటార్లు క్రింద చూపిన విధంగా ముందుకు సాగాలని నిర్దేశిస్తుంది
ఎడమ సెన్సార్ బ్లాక్ లైన్లో వస్తే, మైక్రోకంట్రోలర్ కుడి చక్రం ఒంటరిగా తిప్పడం ద్వారా రోబోట్ను ఎడమవైపు తిరగమని ఆదేశిస్తుంది.
కుడి సెన్సార్ బ్లాక్ లైన్లో వస్తే, మైక్రోకంట్రోలర్ ఎడమ చక్రం ఒంటరిగా తిప్పడం ద్వారా రోబోట్ను కుడివైపు తిరగమని ఆదేశిస్తుంది.
రెండు సెన్సార్లు బ్లాక్ లైన్లో వస్తే, రోబోట్ ఆగిపోతుంది.
ఈ విధంగా రోబోట్ ట్రాక్ వెలుపల రాకుండా లైన్ను అనుసరించగలదు. ఇప్పుడు సర్క్యూట్ మరియు కోడ్ ఎలా ఉంటుందో చూద్దాం.
సర్క్యూట్ రేఖాచిత్రం మరియు వివరణ:
ఈ పిఐసి ఆధారిత లైన్ ఫాలోయర్ రోబోట్ కోసం పూర్తి సర్క్యూట్ రేఖాచిత్రం క్రింద చూపబడింది
సర్క్యూట్ పైన చూపిన విధంగా రెండు ఐఆర్ సెన్సార్లు మరియు ఒక జత డిసి గేర్ మోటార్లు, మోటారు డ్రైవర్ మాడ్యూల్ను ఉపయోగిస్తుంది. ఈ ప్రాజెక్ట్లో ఉపయోగించిన మోటారు డ్రైవర్ మాడ్యూల్ L293D, మాకు మోటారు డ్రైవర్ అవసరం ఎందుకంటే పిఐసి మైక్రోకంట్రోలర్ యొక్క అవుట్పుట్ పిన్ మోటార్లు నడపడానికి తగినంత కరెంట్ను కలిగి ఉండదు. ఈ మాడ్యూల్ సర్క్యూట్లో చూపిన విధంగా పవర్ సోర్స్ (5 వి) నుండి నేరుగా శక్తినిస్తుంది. మాడ్యూల్ నాలుగు పిన్స్ (ప్రతి మోటారుకు రెండు) కలిగి ఉంటుంది, ఇవి మోటారుల దిశను నియంత్రించడానికి PIC కి అనుసంధానించబడి ఉంటాయి. మాకు రెండు ఐఆర్ సెన్సార్లు కూడా ఉన్నాయి, ఇవి పిఐసి మైక్రోకంట్రోలర్కు ఇన్పుట్గా పనిచేస్తాయి. ఈ సెన్సార్లు అధికంగా ఉంటాయి (1) అవి తెల్లటి ఉపరితలంపై ఉంటే మరియు నల్ల ఉపరితలంపై ఉన్నప్పుడు తక్కువ (0) కి వెళ్తాయి. పూర్తి పిన్ కనెక్షన్లు క్రింది పట్టికలో వివరించబడ్డాయి.
ఎస్ |
నుండి కనెక్ట్ చేయబడింది |
సంబంధం కలిగిఉన్నది |
1 |
ఐఆర్ సెన్సార్ లెఫ్ట్ అవుట్ పిన్ |
RD2 (పిన్ 21) |
2 |
IR సెన్సార్ రైట్ అవుట్ పిన్ |
RD3 (పిన్ 22) |
4 |
మోటార్ 1 ఛానల్ ఎ పిన్ |
RC4 (పిన్ 23) |
5 |
మోటార్ 1 ఛానల్ బి పిన్ |
RC5 (పిన్ 25) |
6 |
మోటార్ 2 ఛానల్ ఎ పిన్ |
RC6 (పిన్ 26) |
7 |
మోటార్ 2 ఛానల్ బి పిన్ |
RC7 (పిన్ 27) |
వాస్తవ హార్డ్వేర్లో నేను పవర్ బ్యాంక్ను ఉపయోగించాను, ఇది + 5 వి యొక్క అవుట్పుట్ను నేరుగా దాని యుఎస్బి పోర్ట్ ద్వారా ఇస్తుంది; అందువల్ల నేను 7805 వోల్టేజ్ రెగ్యులేటర్ను దాటవేసి, పిఐసి, సెన్సార్లు మరియు మోటారులను ఉపయోగించుకున్నాను. సర్క్యూట్లో చూపిన విధంగా మీరు రెగ్యులేటర్తో పాటు 12 వి బ్యాటరీని ఉపయోగించుకోవచ్చు.
ప్రోగ్రామింగ్ PIC మైక్రోకంట్రోలర్:
మీరు మీ హార్డ్వేర్తో సిద్ధమైన తర్వాత ప్రోగ్రామింగ్ ప్రారంభించడానికి సమయం ఆసన్నమైంది. ఈ PIC లైన్ అనుచరుడు రోబోట్ ప్రాజెక్ట్ యొక్క పూర్తి ప్రోగ్రామ్ ఈ పేజీ చివరిలో ఇవ్వబడింది. అయితే ముఖ్యమైన భాగాలు క్రింద వివరించబడ్డాయి.
కింది పంక్తుల ద్వారా I / O పిన్లను ప్రారంభించండి. 2 ఐఆర్ సెన్సార్ పిన్స్ ఇన్పుట్గా మరియు నాలుగు మోటారు పిన్లు అవుట్పుట్ పిన్లుగా పనిచేస్తాయి.
TRISD2 = 1; TRISD3 = 1; // బాత్ IR సెన్సార్ పిన్లను ఇన్పుట్ TRISC4 = 0 గా ప్రకటించారు; TRISC5 = 0; // మోటారు 1 పిన్స్ అవుట్పుట్ TRISC6 = 0 గా ప్రకటించబడ్డాయి; TRISC7 = 0; // మోటారు 2 పిన్స్ అవుట్పుట్గా ప్రకటించబడ్డాయి
ఇప్పుడు, మేము ఐఆర్ సెన్సార్ రెండింటి స్థితిని చదివి, తదనుగుణంగా మోటారును నియంత్రించాలి. ఉదాహరణకు రెండు సెన్సార్లు ఎక్కువగా ఉంటే (బ్లాక్ లైన్ కింద రావు) అప్పుడు మేము ఈ క్రింది ప్రోగ్రామ్లో చూపిన విధంగా రెండు మోటార్లు ముందుకు కదిలిస్తాము.
if (RD2 == 1 && RD3 == 1) // రెండు సెన్సార్ బాల్ లైన్ కంటే ఎక్కువ కాదు {RC4 = 0; ఆర్సి 5 = 1; // మోటార్ 1 ఫార్వర్డ్ RC6 = 1; ఆర్సి 7 = 0; // మోటార్ 2 ఫార్వర్డ్}
ఎడమ సెన్సార్ బ్లాక్ లైన్పైకి వస్తే, మోటారు 1 ని ఇంకా పట్టుకుని, మోటారు 2 ను ఫార్వర్డ్ దిశలో తిప్పడం ద్వారా కుడి మలుపు తిప్పుతాము. ఈ రకమైన మలుపును అవకలన మలుపు అంటారు.
else if (RD2 == 0 && RD3 == 1) // ఎడమ సెన్సార్ బ్లాక్ లైన్ పైన ఉంది {RC4 = 1; ఆర్సి 5 = 1; // మోటార్ 1 స్టాప్ RC6 = 1; ఆర్సి 7 = 0; // మోటార్ 2 ఫార్వర్డ్}
అదేవిధంగా, కుడి సెన్సార్ బ్లాక్ లైన్పైకి వస్తే , బోట్ రెండవ మోటారును ఇంకా పట్టుకుని, మొదటి మోటారును ఒంటరిగా ముందుకు తిప్పడం ద్వారా ఎడమ మలుపు తీసుకునేలా చేస్తుంది.
else if (RD2 == 1 && RD3 == 0) // కుడి సెన్సార్ బ్లాక్ లైన్ పైన ఉంది {RC4 = 0; ఆర్సి 5 = 1; // మోటార్ 1 ఫార్వర్డ్ RC6 = 1; ఆర్సి 7 = 1; // మోటార్ 2 స్టాప్}
చివరగా రెండు సెన్సార్లు బ్లాక్ లైన్ కింద వస్తే బోట్ ఆపడానికి సమయం. రెండు మోటారుల యొక్క అన్ని పిన్లను అధికంగా చేయడం ద్వారా ఇది చేయవచ్చు. అదే చేయవలసిన కోడ్ క్రింద చూపబడింది
else // బ్లాక్ సెన్సార్ పై రెండు సెన్సార్ {RC4 = 1; ఆర్సి 5 = 1; // మోటార్ 1 స్టాప్ RC6 = 1; ఆర్సి 7 = 1; // మోటార్ 2 స్టాప్}
అంటే ప్రోగ్రామ్ సిద్ధంగా ఉంది మరియు పిక్కిట్ వంటి ఏదైనా ప్రోగ్రామర్ను ఉపయోగించి పిఐసికి అప్లోడ్ చేయవచ్చు.
పిఐసి లైన్ అనుచరుడు చర్య:
హార్డ్వేర్ మరియు కోడ్ సిద్ధమైన తర్వాత, కొంత చర్యకు సమయం. ఇంతకుముందు చెప్పినట్లుగా, నేను బోట్ను శక్తివంతం చేయడానికి పవర్ బ్యాంక్ను ఉపయోగించాను, కాబట్టి నేను చేయాల్సిందల్లా హార్డ్వేర్ను సెటప్ చేసిన మరియు ఇప్పటికే అప్లోడ్ చేసిన కోడ్ను కలిగి ఉన్న బాట్ను పవర్ బ్యాంక్ను కనెక్ట్ చేయండి.
PIC పెర్ఫ్ బోర్డు మా PIC ట్యుటోరియల్ సిరీస్ కోసం తయారు చేయబడింది, దీనిలో PIC మైక్రోకంట్రోలర్ను ఎలా ఉపయోగించాలో నేర్చుకున్నాము. పికిట్ 3 ను ఉపయోగించి ప్రోగ్రామ్ను ఎలా బర్న్ చేయాలో మీకు తెలియకపోతే మీరు MPLABX మరియు XC8 ఉపయోగించి ఆ PIC మైక్రోకంట్రోలర్ ట్యుటోరియల్లకు తిరిగి వెళ్లాలనుకోవచ్చు, ఎందుకంటే నేను ఆ ప్రాథమిక సమాచారాన్ని వదిలివేస్తాను.
ఇప్పుడు, బోట్ను నల్ల రేఖపైకి లాంచ్ చేయండి మరియు మీరు దానిని అనుసరించి చూడాలి.
ఆ సందర్భంలో మీరు ప్రారంభంలో కొన్ని ఇబ్బందులను ఎదుర్కొంటారు. చక్రాలు సరసన తిరుగుతుంటే, చక్రం వ్యతిరేక దిశలో తిరుగుతున్న మోటారు యొక్క ధ్రువణతను మార్చుకోండి. బోట్ లైన్ నుండి వైదొలిగితే, ఐఆర్ సెన్సార్ను మార్చుకోండి మరియు అన్నీ మంచిగా ఉండాలి.
బోట్ యొక్క పూర్తి పనిని క్రింద ఇచ్చిన వీడియోలో చూడవచ్చు. మీరు ప్రాజెక్ట్ను ఇష్టపడుతున్నారని మరియు ఇలాంటిదే నిర్మించడాన్ని ఆస్వాదించారని ఆశిస్తున్నాము. ఇది పని చేయడంలో మీకు సమస్య ఉంటే, దాన్ని పరిష్కరించడానికి మీరు వాటిని క్రింది వ్యాఖ్య విభాగంలో పోస్ట్ చేయవచ్చు లేదా సాంకేతిక విషయాలను చర్చించడానికి మా ఫోరమ్లను ఉపయోగించవచ్చు.