- పదార్థాలు అవసరం
- లైన్ అనుచరుడి భావనలు
- సర్క్యూట్ వివరణ
- MSP430 ఉపయోగించి లైన్ ఫాలోయర్ రోబోట్ యొక్క పని
- సర్క్యూట్ రేఖాచిత్రం
- ప్రోగ్రామింగ్ వివరణ
లైన్ ఫాలోయర్ రోబోట్ దాని సరళత కారణంగా విద్యార్థులు మరియు ప్రారంభ జనాభాలో ప్రసిద్ధ రోబోటిక్స్ ప్రాజెక్టులలో ఒకటి. మీరు మీ మైక్రోకంట్రోలర్ను ఎలా ప్రోగ్రామ్ చేస్తారనే దానిపై ఆధారపడి ఇది నలుపు లేదా తెలుపు అనే పంక్తిని అనుసరిస్తుంది. ఇక్కడ మేము టెక్సాస్ ఇన్స్ట్రుమెంట్స్ నుండి MSP430 లాంచ్ప్యాడ్ను ఉపయోగించి లైన్ ఫాలోయర్ రోబోట్ను తయారు చేస్తాము, ఇది బ్లాక్ లైన్ను అనుసరిస్తుంది. మీరు MSP430 లాంచ్ప్యాడ్కు క్రొత్తగా ఉంటే, దయచేసి MSP430 ట్యుటోరియల్తో చూస్తూ ఉండండి.
పదార్థాలు అవసరం
- టెక్సాస్ ఇన్స్ట్రుమెంట్స్ నుండి MSP430G2 లాంచ్ప్యాడ్
- L298D మోటారు డ్రైవర్ మాడ్యూల్
- వైర్లను కనెక్ట్ చేస్తోంది
- IR సెన్సార్ గుణకాలు
- చట్రం, చక్రం, రోలర్ కోస్టర్
- ఎనర్జియా IDE
- విద్యుత్ సరఫరా (3.3 వి) మరియు 5 వి -12 వి
లైన్ అనుచరుడి భావనలు
లైన్ అనుచరుడి భావన కాంతికి సంబంధించినది. మేము నలుపు మరియు తెలుపు ఉపరితలం వద్ద కాంతి ప్రవర్తనను ఉపయోగించాము. తెల్లని ఉపరితలంపై కాంతి పడిపోయినప్పుడు అది పూర్తిగా ప్రతిబింబిస్తుంది మరియు నల్ల ఉపరితల కాంతి నల్ల ఉపరితలం ద్వారా గ్రహించబడుతుంది. కాంతి యొక్క ఈ వివరించిన ప్రవర్తన ఈ లైన్ అనుచరుడు రోబోట్లో ఉపయోగించబడుతుంది.
ఈ MSP430 ఆధారిత లైన్ ఫాలోయర్ రోబోట్లో మేము ఫోటో ట్రాన్స్మిటర్లను మరియు ఫోటో డయోడ్లు అని పిలువబడే IR రిసీవర్లను ఉపయోగించాము. కాంతిని పంపడానికి మరియు స్వీకరించడానికి అవి ఉపయోగించబడతాయి. IR పరారుణ లైట్లను ప్రసారం చేస్తుంది. పరారుణ కిరణాలు తెల్లటి ఉపరితలంపై పడినప్పుడు, అది తిరిగి ప్రతిబింబిస్తుంది మరియు కొన్ని వోల్టేజ్ మార్పులను ఉత్పత్తి చేసే ఫోటోడియోడ్లచే పట్టుకోబడుతుంది. IR కాంతి నల్ల ఉపరితలంపై పడినప్పుడు, కాంతి నల్ల ఉపరితలం ద్వారా గ్రహించబడుతుంది మరియు కిరణాలు తిరిగి ప్రతిబింబించవు, అందువల్ల ఫోటో డయోడ్ ఎటువంటి కాంతి లేదా కిరణాలను అందుకోదు. IR సెన్సార్ల గురించి మరింత తెలుసుకోవడానికి, లింక్ను అనుసరించండి.
ఇక్కడ ఈ MSP430 ఆధారిత లైన్ ఫాలోయర్ రోబోట్లో సెన్సార్ తెల్లని ఉపరితలాన్ని గ్రహించినప్పుడు MSP 1 ఇన్పుట్గా పొందుతుంది మరియు ఇంద్రియాలకు బ్లాక్ లైన్ MSP 0 ఇన్పుట్గా పొందుతుంది.
సర్క్యూట్ వివరణ
మేము మొత్తం లైన్ అనుచరుడు రోబోట్ను సెన్సార్ విభాగం, నియంత్రణ విభాగం మరియు డ్రైవర్ విభాగం వంటి వివిధ విభాగాలుగా విభజించవచ్చు.
సెన్సార్ విభాగం: ఈ విభాగంలో ఐఆర్ డయోడ్లు, పొటెన్షియోమీటర్, కంపారిటర్ (ఆప్-ఆంప్) మరియు ఎల్ఇడి ఉన్నాయి. పోలిక యొక్క ఒక టెర్మినల్ వద్ద రిఫరెన్స్ వోల్టేజ్ను సెట్ చేయడానికి పొటెన్టోమీటర్ ఉపయోగించబడుతుంది మరియు ఐఆర్ సెన్సార్లు రేఖను గ్రహించి, కంపారిటర్ యొక్క రెండవ టెర్మినల్ వద్ద వోల్టేజ్లో మార్పును అందిస్తాయి. అప్పుడు కంపారిటర్ రెండు వోల్టేజ్లను పోల్చి, అవుట్పుట్ వద్ద డిజిటల్ సిగ్నల్ను ఉత్పత్తి చేస్తుంది. ఇక్కడ ఈ సర్క్యూట్లో మేము రెండు సెన్సార్ల కోసం రెండు కంపారిటర్లను ఉపయోగించాము. LM358 ను కంపారిటర్గా ఉపయోగిస్తారు. LM358 రెండు తక్కువ శబ్దం Op-amp ని నిర్మించింది.
నియంత్రణ విభాగం: లైన్ ఫాలోయర్ రోబోట్ యొక్క మొత్తం ప్రక్రియను నియంత్రించడానికి MSP430 లాంచ్ప్యాడ్ ఉపయోగించబడుతుంది. కంపారిటర్ల యొక్క అవుట్పుట్లు MPS430 లాంచ్ప్యాడ్ యొక్క డిజిటల్ పిన్ P1_3 మరియు P1_4 లకు అనుసంధానించబడి ఉన్నాయి. MSP430 లాంచ్ప్యాడ్ ఈ సంకేతాలను చదువుతుంది మరియు లైన్ ఫాలోయర్ను నడపడానికి డ్రైవర్ సర్క్యూట్కు ఆదేశాలను పంపుతుంది.
డ్రైవర్ విభాగం: డ్రైవర్ విభాగంలో మోటారు డ్రైవర్ మరియు రెండు డిసి మోటార్లు ఉంటాయి. మోటారు డ్రైవింగ్ కోసం మోటారు డ్రైవర్ ఉపయోగించబడుతుంది ఎందుకంటే MSP430 లాంచ్ప్యాడ్ మోటారుకు తగినంత వోల్టేజ్ మరియు కరెంట్ను సరఫరా చేయదు. కాబట్టి మోటారుకు తగినంత వోల్టేజ్ మరియు కరెంట్ పొందడానికి మేము మోటారు డ్రైవర్ సర్క్యూట్ను జోడించాము. ఇక్కడ మేము DC మోటార్స్ డ్రైవింగ్ కోసం L298d డ్రైవర్ను ఉపయోగించాము. MSP430 లాంచ్ప్యాడ్ ఈ మోటారు డ్రైవర్కు ఆదేశాలను పంపుతుంది మరియు అది మోటార్లు నడుపుతుంది.
మేము వేర్వేరు మైక్రోకంట్రోలర్ను ఉపయోగించి లైన్ ఫాలోయర్ రోబోట్లను అభివృద్ధి చేసాము:
- 8051 మైక్రోకంట్రోలర్ ఉపయోగించి లైన్ ఫాలోయర్ రోబోట్
- ఆర్డునో ఉపయోగించి లైన్ ఫాలోయర్ రోబోట్
- రాస్ప్బెర్రీ పై ఉపయోగించి లైన్ ఫాలోయర్ రోబోట్
- PIC మైక్రోకంట్రోలర్ ఉపయోగించి లైన్ ఫాలోయర్ రోబోట్
MSP430 ఉపయోగించి లైన్ ఫాలోయర్ రోబోట్ యొక్క పని
లైన్ అనుచరుడి పని చాలా ఆసక్తికరంగా ఉంటుంది. లైన్ ఫాలోయర్ రోబోట్ సెన్సార్ను ఉపయోగించడం ద్వారా బ్లాక్ లైన్ను గ్రహించి, ఆపై సిగ్నల్ను MSP430 లాంచ్ప్యాడ్కు పంపుతుంది. అప్పుడు MSP430 లాంచ్ప్యాడ్ సెన్సార్ల అవుట్పుట్ ప్రకారం మోటారును నడుపుతుంది.
ఇక్కడ ఈ ప్రాజెక్ట్లో మేము ఎడమ సెన్సార్ మరియు కుడి సెన్సార్ అనే రెండు ఐఆర్ సెన్సార్ మాడ్యూళ్ళను ఉపయోగిస్తున్నాము. ఎడమ మరియు కుడి సెన్సార్ రెండూ తెల్లగా ఉన్నప్పుడు రోబోట్ ముందుకు కదులుతుంది.
ఎడమ సెన్సార్ బ్లాక్ లైన్లో వస్తే రోబోట్ ఎడమ వైపు తిరగండి.
కుడి సెన్సార్ సెన్స్ బ్లాక్ లైన్ అయితే రెండు సెన్సార్ తెల్లని ఉపరితలం వద్ద వచ్చే వరకు రోబోట్ కుడి వైపు తిరగండి. తెల్లటి ఉపరితలం వచ్చినప్పుడు రోబోట్ మళ్లీ ముందుకు సాగడం ప్రారంభిస్తుంది.
రెండు సెన్సార్లు బ్లాక్ లైన్లో వస్తే, రోబోట్ ఆగిపోతుంది.
సర్క్యూట్ రేఖాచిత్రం
ఈ MSP430 లైన్ ఫాలోయర్ రోబోట్ కోసం సర్క్యూట్ చాలా సులభం. కంపారిటర్ల అవుట్పుట్ నేరుగా MSP430 లాంచ్ప్యాడ్ యొక్క డిజిటల్ పిన్ నంబర్ p1_3 మరియు P1_4 లకు అనుసంధానించబడి ఉంది. మరియు మోటారు డ్రైవర్ యొక్క ఇన్పుట్ పిన్ IN1, IN2, IN3 మరియు IN4 లు వరుసగా MSP430 లాంచ్ప్యాడ్ యొక్క డిజిటల్ పిన్ P1_5, P2_0, P2_1, P2_2 వద్ద అనుసంధానించబడి ఉన్నాయి. మోటారు డ్రైవర్ OUT1 మరియు OUT2 యొక్క అవుట్పుట్ పిన్ వద్ద ఒక మోటారు అనుసంధానించబడి ఉంది, మరియు మరొక మోటారు OUT3 మరియు OUT4 వద్ద అనుసంధానించబడి ఉంది. ఇక్కడ మేము మోటార్ డ్రైవర్ మాడ్యూల్ మినహా మొత్తం సర్క్యూట్ కోసం 3.3v సరఫరాను ఉపయోగించాము. మేము మోటార్ డ్రైవర్ మాడ్యూల్కు 8 విని సరఫరా చేసాము. వినియోగదారు 5v-12v ను ఉపయోగించవచ్చు.
నేను పెర్ఫ్ బోర్డ్లో నిర్మించినట్లు మీరు మీ స్వంత IR మాడ్యూల్ను కూడా నిర్మించవచ్చు. IR మాడ్యూల్ కోసం సర్క్యూట్ క్రింద ఉంది:
ప్రోగ్రామింగ్ వివరణ
ఈ ఆర్టికల్ చివరిలో పూర్తి ప్రోగ్రామ్ మరియు వీడియో చూడవచ్చు.
ఒక ప్రోగ్రామ్లో, మొదట, మేము సెన్సార్ మరియు మోటారుల కోసం ఇన్పుట్ మరియు అవుట్పుట్ పిన్ను నిర్వచించాము. లైన్ అనుచరుడి దిశ కోసం కొన్ని మాక్రోలను నిర్వచించి, ఆపై సెన్సార్ అవుట్పుట్ను ఎంచుకోవడానికి డైరెక్టివ్ రాయండి
గమనిక: సెన్సార్ తక్కువ లేదా చురుకుగా అధికంగా ఉండవచ్చు కాబట్టి మొదట సెన్సార్ యొక్క అవుట్పుట్ ఏమిటో తనిఖీ చేసి, ఆపై యాక్టివ్లామోడ్ను వ్యాఖ్యానించడం లేదా అన్కమెంట్ చేయడం ద్వారా డైరెక్టివ్ను ఎంచుకోండి. క్రియాశీల HIGH కోసం, activeLowMode స్థూలని వ్యాఖ్యానించండి.
# l_sensor P1_3 ను నిర్వచించండి # r_sensor P1_4 int pins = {P1_5, P2_0, P2_1, P2_2}; # ముందుకు నిర్వచించండి 0x05 # ఎడమవైపు నిర్వచించండి 0x06 # కుడివైపు నిర్వచించండి 0x09 # స్టాప్ 0x00 // # నిర్వచించండి activeLowMode #ifdef activeLowMode int res = {ముందుకు, ఎడమ, కుడి, స్టాప్}; # ఇతర int res = {ఆపు, కుడి, ఎడమ, ముందుకు}; #endif
ఆ తరువాత, సెటప్ ఫంక్షన్లో, మేము సెన్సార్ మరియు మోటారు పిన్కు దిశను ఇస్తాము. ఆపై లూప్ ఫంక్షన్లో, మోటార్లు అమలు చేయడానికి మేము ఇన్పుట్లను తనిఖీ చేసి, మోటారు డ్రైవర్ మాడ్యూల్కు అవుట్పుట్ను పంపుతాము.
void setup () { (int i = 0; i <4; i ++) pinMode (పిన్స్, OUTPUT); పిన్మోడ్ (l_sensor, INPUT); పిన్మోడ్ (r_sensor, INPUT); } శూన్య లూప్ () {int sense = (DigitalRead (l_sensor) << 1) - DigitalRead (r_sensor); (int i = 0; i <4; i ++) DigitalWrite (పిన్స్, (res >> i) & 0x01); }
MSP430 లాంచ్ప్యాడ్ను ఉపయోగించి మనం చదివిన ఈ లైన్ ఫాలోయర్లో నాలుగు షరతులు ఉన్నాయి. మేము ఎడమ సెన్సార్ మరియు కుడి సెన్సార్ అనే రెండు సెన్సార్లను ఉపయోగించాము.
షరతులు: యాక్టివ్ హై అవుట్పుట్
ఇన్పుట్ |
అవుట్పుట్ |
ఉద్యమం రోబోట్ |
||||
ఎడమ సెన్సార్ |
కుడి సెన్సార్ |
ఎడమ మోటార్ |
కుడి మోటార్ |
|||
ఎల్.ఎస్ |
ఆర్ఎస్ |
LM1 |
LM2 |
RM1 |
RM2 |
|
0 |
0 |
0 |
0 |
0 |
0 |
ఆపు |
0 |
1 |
1 |
0 |
0 |
0 |
కుడివైపుకు తిరుగు |
1 |
0 |
0 |
0 |
1 |
0 |
ఎడమవైపు తిరగండి |
1 |
1 |
1 |
0 |
1 |
0 |
ముందుకు |
పై పట్టిక పరిస్థితుల ప్రకారం ప్రోగ్రామ్ వ్రాయబడుతుంది. దిగువ పూర్తి కోడ్ మరియు ప్రదర్శన వీడియోను తనిఖీ చేయండి.