ప్రపంచం వేగంగా కదులుతోంది, రోబోటిక్స్ రంగంలో టెక్నాలజీ కూడా దానితో కదులుతోంది. రోబోటిక్స్ యొక్క అనువర్తనాలు ప్రపంచవ్యాప్తంగా ప్రతిచోటా చూడవచ్చు. ఎటువంటి బాహ్య సహాయం లేకుండా కదిలే మొబైల్ లేదా అటానమస్ రోబోట్ల భావన అత్యంత అభివృద్ధి చెందుతున్న పరిశోధనా రంగం. చాలా రకాల మొబైల్ రోబోట్లు ఉన్నాయి, ఉదాహరణకు, సెల్ఫ్ లోకలైజేషన్ అండ్ మ్యాపింగ్ (SLAM) వ్యాఖ్యాతలు, లైన్ ఫాలోయింగ్, సుమో బాట్స్ మొదలైనవి. రోబోట్ను నివారించడానికి ఒక అడ్డంకి వాటిలో ఒకటి. దాని మార్గంలో ఏదైనా అడ్డంకిని గుర్తించినట్లయితే ఇది మార్గాన్ని మార్చడానికి ఒక సాంకేతికతను ఉపయోగిస్తుంది.
(చిత్ర సౌజన్యం: సర్క్యూట్ డైజెస్ట్)
ఈ ప్రాజెక్ట్లో, రోడును నివారించే ఆర్డునో ఆధారిత అడ్డంకి రూపొందించబడింది, ఇది దాని మార్గంలో ఉన్న అన్ని అడ్డంకులను గుర్తించడానికి అల్ట్రాసోనిక్ సెన్సార్ను ఉపయోగిస్తుంది.
అల్ట్రాసోనిక్ సెన్సార్ ఉపయోగించి అవరోధాలను ఎలా నివారించాలి?
మా ప్రాజెక్ట్ యొక్క సారాంశం మనకు తెలిసినట్లుగా, ప్రాజెక్ట్ను ప్రారంభించడానికి సమాచారం కోసం ఒక అడుగు ముందుకు వేసి కొంత సమాచారాన్ని సేకరిద్దాం.
దశ 1: భాగాలు సేకరించడం
ఏదైనా ప్రాజెక్ట్ను ప్రారంభించడానికి ఉత్తమమైన విధానం ప్రారంభంలో పూర్తి భాగాల జాబితాను తయారు చేయడం మరియు ప్రతి భాగం యొక్క సంక్షిప్త అధ్యయనం ద్వారా వెళ్ళడం. ప్రాజెక్ట్ మధ్యలో ఉన్న అసౌకర్యాలను నివారించడంలో ఇది మాకు సహాయపడుతుంది. ఈ ప్రాజెక్ట్లో ఉపయోగించిన అన్ని భాగాల పూర్తి జాబితా క్రింద ఇవ్వబడింది.
- కార్ వీల్ చట్రం
- బ్యాటరీ
దశ 2: భాగాలు అధ్యయనం
ఇప్పుడు, మనకు అన్ని భాగాల పూర్తి జాబితా ఉన్నందున, ఒక అడుగు ముందుకు వేసి, ప్రతి భాగం యొక్క పని గురించి క్లుప్త అధ్యయనం చేద్దాం.
ఆర్డునో నానో అనేది బ్రెడ్బోర్డ్-స్నేహపూర్వక మైక్రోకంట్రోలర్ బోర్డు, ఇది సర్క్యూట్లో వేర్వేరు పనులను నియంత్రించడానికి లేదా నిర్వహించడానికి ఉపయోగించబడుతుంది. మేము ఒక బర్న్ సి కోడ్ ఎలా మరియు ఏ ఆపరేషన్లు చేయాలో మైక్రోకంట్రోలర్ బోర్డుకు చెప్పడానికి ఆర్డునో నానోలో. ఆర్డునో నానోకు ఆర్డునో యునో వలె అదే కార్యాచరణ ఉంది, కానీ చాలా తక్కువ పరిమాణంలో ఉంది. ఆర్డునో నానో బోర్డులోని మైక్రోకంట్రోలర్ ATmega328p.
ఆర్డునో నానో
L298N అధిక కరెంట్ మరియు హై వోల్టేజ్ ఇంటిగ్రేటెడ్ సర్క్యూట్. ఇది ప్రామాణిక టిటిఎల్ తర్కాన్ని అంగీకరించడానికి రూపొందించిన ద్వంద్వ పూర్తి వంతెన. ఇది పరికరం స్వతంత్రంగా పనిచేయడానికి అనుమతించే రెండు ఎనేబుల్ ఇన్పుట్లను కలిగి ఉంది. ఒకేసారి రెండు మోటార్లు అనుసంధానించబడి ఆపరేట్ చేయవచ్చు. మోటార్లు వేగం పిడబ్ల్యుఎం పిన్స్ ద్వారా మారుతూ ఉంటుంది. పల్స్ వెడల్పు మాడ్యులేషన్ (పిడబ్ల్యుఎం) అనేది ఒక టెక్నిక్, దీనిలో ఏదైనా ఎలక్ట్రానిక్ భాగాలలో వోల్టేజ్ ప్రవాహాన్ని నియంత్రించవచ్చు. ఈ మాడ్యూల్ హెచ్-బ్రిడ్జిని కలిగి ఉంది, ఇది ప్రస్తుత దిశను విలోమం చేయడం ద్వారా మోటారులలో భ్రమణ దిశను నియంత్రించడానికి బాధ్యత వహిస్తుంది. రెండు మోటారుల వేగాన్ని మార్చడానికి ఎనేబుల్ పిన్ ఎ మరియు ఎనేబుల్ పిన్ బి ఉపయోగించబడతాయి. ఈ మాడ్యూల్ 5 మరియు 35 వి మధ్య మరియు 2A వరకు పీక్ కరెంట్ మధ్య పనిచేయగలదు. ఇన్పుట్ పిన్ 1 మరియు ఇన్పుట్ పిన్ 2 మరియు మొదటి మోటారు మరియు ఇన్పుట్ పిన్ 3 మరియు ఇన్పుట్ పిన్ 4 రెండవ మోటారు కోసం.
L298N మోటార్ డ్రైవర్
HC-SR04 బోర్డు ఒక అల్ట్రాసోనిక్ సెన్సార్, ఇది రెండు వస్తువుల మధ్య దూరాన్ని నిర్ణయించడానికి ఉపయోగించబడుతుంది. ఇది ట్రాన్స్మిటర్ మరియు రిసీవర్ కలిగి ఉంటుంది. ట్రాన్స్మిటర్ ఎలక్ట్రికల్ సిగ్నల్ ను అల్ట్రాసోనిక్ సిగ్నల్ గా మారుస్తుంది మరియు రిసీవర్ అల్ట్రాసోనిక్ సిగ్నల్ ను తిరిగి ఎలక్ట్రికల్ సిగ్నల్ గా మారుస్తుంది. ట్రాన్స్మిటర్ అల్ట్రాసోనిక్ తరంగాన్ని పంపినప్పుడు, అది ఒక నిర్దిష్ట వస్తువుతో ided ీకొన్న తర్వాత ప్రతిబింబిస్తుంది. సమయాన్ని ఉపయోగించి దూరాన్ని లెక్కిస్తారు, ఆ అల్ట్రాసోనిక్ సిగ్నల్ ట్రాన్స్మిటర్ నుండి వెళ్లి రిసీవర్ వద్దకు తిరిగి రావడానికి పడుతుంది.
అల్ట్రాసోనిక్ సెన్సార్
దశ 3: భాగాలను సమీకరించడం
ఇప్పుడు ఉపయోగించిన చాలా భాగాల పని ఇప్పుడు మనకు తెలుసు కాబట్టి, అన్ని భాగాలను సమీకరించడం ప్రారంభిద్దాం మరియు రోబోట్ను నివారించే అడ్డంకిని ఉత్పత్తి చేద్దాం.
- కారు చక్రాల వెంటాడి, దాని పైభాగంలో బ్రెడ్బోర్డును అంటుకోండి. చేస్ ముందు అల్ట్రాసోనిక్ సెన్సార్ మరియు చేస్ వెనుక బ్యాటరీ క్యాప్ మౌంట్.
- బ్రెడ్బోర్డుపై ఆర్డునో నానో బోర్డ్ను పరిష్కరించండి మరియు మోటారు డ్రైవర్ను బ్రెడ్బోర్డ్ వెనుక, ఛేజ్లపై అటాచ్ చేయండి. ఆర్టునో నానో యొక్క పిన్ 6 మరియు పిన్ 9 లకు మోటారులను ఇబ్బంది పెట్టే పిన్లను కనెక్ట్ చేయండి. మోటారు డ్రైవర్ మాడ్యూల్ యొక్క In1, In2, In3 మరియు In4 పిన్లు వరుసగా Arduino నానో యొక్క పిన్ 2, పిన్ 3, పిన్ 4 మరియు పిన్ 5 లకు అనుసంధానించబడి ఉన్నాయి.
- అల్ట్రాసోనిక్ సెన్సార్ యొక్క ట్రిగ్ మరియు ఎకో పిన్ వరుసగా ఆర్డునో నానో యొక్క పిన్ 11 మరియు ఇన్ 10 కి అనుసంధానించబడి ఉన్నాయి. అల్ట్రాసోనిక్ సెన్సార్ యొక్క Vcc మరియు గ్రౌండ్ పిన్ Arduino నానో యొక్క 5V మరియు గ్రౌండ్కు అనుసంధానించబడి ఉన్నాయి.
- మోటార్ కంట్రోలర్ మాడ్యూల్ బ్యాటరీతో శక్తినిస్తుంది. ఆర్డునో నానో బోర్డు మోటారు డ్రైవర్ మాడ్యూల్ యొక్క 5 వి పోర్ట్ నుండి శక్తిని పొందుతుంది మరియు అల్ట్రాసోనిక్ సెన్సార్ దాని శక్తిని ఆర్డునో నానో బోర్డు నుండి పొందుతుంది. బ్యాటరీల బరువు మరియు శక్తి దాని పనితీరు యొక్క నిర్ణయాత్మక కారకంగా మారవచ్చు.
- సర్క్యూట్ రేఖాచిత్రంలో క్రింద చూపిన విధంగా మీ కనెక్షన్లు ఒకేలా ఉన్నాయని నిర్ధారించుకోండి.
సర్క్యూట్ రేఖాచిత్రం
దశ 4: ఆర్డునోతో ప్రారంభించడం
మీకు ఇప్పటికే ఆర్డునో ఐడిఇ గురించి తెలియకపోతే, చింతించకండి ఎందుకంటే మైక్రోకంట్రోలర్ బోర్డ్తో ఆర్డునో ఐడిఇని సెటప్ చేయడానికి మరియు ఉపయోగించటానికి దశల వారీ విధానం క్రింద వివరించబడింది.
- Arduino IDE యొక్క తాజా సంస్కరణను డౌన్లోడ్ చేయండి ఆర్డునో.
- మీ ల్యాప్టాప్కు మీ ఆర్డునో నానో బోర్డ్ను కనెక్ట్ చేయండి మరియు నియంత్రణ ప్యానల్ను తెరవండి. నియంత్రణ ప్యానెల్లో, క్లిక్ చేయండి హార్డ్వేర్ మరియు సౌండ్ . ఇప్పుడు క్లిక్ చేయండి పరికరాలు మరియు ప్రింటర్లు. ఇక్కడ, మీ మైక్రోకంట్రోలర్ బోర్డు కనెక్ట్ చేయబడిన పోర్టును కనుగొనండి. నా విషయంలో అది COM14 కానీ ఇది వేర్వేరు కంప్యూటర్లలో భిన్నంగా ఉంటుంది.
పోర్ట్ కనుగొనడం
- టూల్ మెనుపై క్లిక్ చేయండి. మరియు బోర్డుని సెట్ చేయండి ఆర్డునో నానో డ్రాప్-డౌన్ మెను నుండి.
సెట్టింగ్ బోర్డు
- అదే టూల్ మెనులో, పోర్టును మీరు ముందు గమనించిన పోర్ట్ నంబర్కు సెట్ చేయండి పరికరాలు మరియు ప్రింటర్లు .
పోర్ట్ సెట్ చేస్తోంది
- అదే సాధన మెనులో, ప్రాసెసర్ను సెట్ చేయండి ATmega328P (పాత బూట్లోడర్).
ప్రాసెసర్
- దిగువ జతచేయబడిన కోడ్ను డౌన్లోడ్ చేసి, మీ Arduino IDE లో అతికించండి. పై క్లిక్ చేయండి అప్లోడ్ చేయండి మీ మైక్రోకంట్రోలర్ బోర్డులో కోడ్ను బర్న్ చేయడానికి బటన్.
అప్లోడ్ చేయండి
కోడ్ను డౌన్లోడ్ చేయడానికి, ఇక్కడ నొక్కండి.
దశ 5: కోడ్ను అర్థం చేసుకోవడం
కోడ్ బాగా వ్యాఖ్యానించబడింది మరియు స్వీయ వివరణాత్మకమైనది. కానీ ఇప్పటికీ, ఇది క్రింద వివరించబడింది
1. కోడ్ ప్రారంభంలో, అల్ట్రాసోనిక్ సెన్సార్ మరియు మోటారు డ్రైవర్ మాడ్యూల్కు అనుసంధానించబడిన ఆర్డునో నానో బోర్డు యొక్క అన్ని పిన్లు ప్రారంభించబడతాయి. పిన్ 6 మరియు పిన్ 9 పిడబ్ల్యుఎం పిన్స్, ఇవి రోబోట్ యొక్క వేగాన్ని మార్చడానికి వోల్టేజ్ ప్రవాహాన్ని మారుస్తాయి. రెండు వేరియబుల్స్, వ్యవధి, మరియు దూరం డేటాను నిల్వ చేయడానికి ప్రారంభించబడతాయి, తరువాత అవి అల్ట్రాసోనిక్ సెన్సార్ యొక్క దూరాన్ని మరియు అడ్డంకిని లెక్కించడానికి ఉపయోగించబడతాయి.
int enable1pin = 6; // మొదటి మోటార్ కోసం పిన్స్ మోటర్ 1 పిన్ 1 = 2; int మోటర్ 1 పిన్ 2 = 3; int enable2pin = 9; // రెండవ మోటార్ కోసం పిన్స్ మోటర్ 2 పిన్ 1 = 4; int మోటర్ 2 పిన్ 2 = 5; const int triPin = 11; // అల్ట్రాసోనిక్ సెస్నర్ యొక్క ట్రిగ్గర్ పిన్ const int echoPin = 10; // అల్ట్రాసోనిక్ సెస్నర్ దీర్ఘకాలిక వ్యవధి యొక్క ఎకో పిన్; దూరం తేలియాడే దూరాన్ని లెక్కించడానికి // వేరియబుల్స్;
2. శూన్య సెటప్ () ఉపయోగించిన పిన్లను సెట్ చేయడానికి ఉపయోగించే ఫంక్షన్ INPUT మరియు U ట్పుట్. ఈ ఫంక్షన్లో బాడ్ రేట్ నిర్వచించబడింది. బౌడ్ రేట్ అనేది కమ్యూనికేషన్ యొక్క వేగం, దీని ద్వారా మైక్రోకంట్రోలర్ బోర్డు దానితో అనుసంధానించబడిన సెన్సార్లతో కమ్యూనికేట్ చేస్తుంది.
శూన్య సెటప్ () {Serial.begin (9600); పిన్మోడ్ (ట్రిగ్పిన్, OUTPUT); పిన్మోడ్ (ఎకోపిన్, ఇన్పుట్); పిన్మోడ్ (ఎనేబుల్ 1 పిన్, అవుట్పుట్); పిన్మోడ్ (ఎనేబుల్ 2 పిన్, అవుట్పుట్); పిన్మోడ్ (మోటర్ 1 పిన్ 1, అవుట్పుట్); పిన్మోడ్ (మోటర్ 1 పిన్ 2, అవుట్పుట్); పిన్మోడ్ (మోటర్ 2 పిన్ 1, అవుట్పుట్); పిన్మోడ్ (మోటర్ 2 పిన్ 2, అవుట్పుట్); }
3. శూన్య లూప్ () ఒక చక్రంలో పదేపదే నడుస్తున్న ఫంక్షన్. ఈ ఫంక్షన్లో, ఎలా మరియు ఏ కార్యకలాపాలు నిర్వహించాలో మైక్రోకంట్రోలర్ బోర్డుకి తెలియజేస్తాము. ఇక్కడ, మొదట, ట్రిగ్గర్ పిన్ సిగ్నల్ పంపడానికి సెట్ చేయబడింది, ఇది ఎకో పిన్ ద్వారా కనుగొనబడుతుంది. అప్పుడు అల్ట్రాసోనిక్ సిగ్నల్ ద్వారా సెన్సార్ నుండి వెనుకకు ప్రయాణించే సమయాన్ని లెక్కించి వేరియబుల్లో సేవ్ చేస్తారు వ్యవధి. అప్పుడు ఈ సమయం అడ్డంకి మరియు అల్ట్రాసోనిక్ సెన్సార్ యొక్క దూరాన్ని లెక్కించడానికి ఒక సూత్రంలో ఉపయోగించబడుతుంది. అప్పుడు దూరం 5ocm కన్నా ఎక్కువ ఉంటే, రోబోట్ సరళ రేఖలో ముందుకు వెళుతుంది మరియు దూరం 50cm కన్నా తక్కువ ఉంటే, రోబోట్ పదునైన కుడి మలుపు తీసుకుంటుంది.
శూన్య లూప్ () {డిజిటల్ రైట్ (ట్రిగ్పిన్, తక్కువ); // అల్ట్రాసోనిక్ సిగ్నల్ ఆలస్యం మైక్రోసెకండ్లను పంపడం మరియు గుర్తించడం (2); డిజిటల్ రైట్ (ట్రిగ్పిన్, హై); delayMicroseconds (10); డిజిటల్ రైట్ (ట్రిగ్పిన్, తక్కువ); వ్యవధి = పల్స్ఇన్ (ఎకోపిన్, హై); // వెనుక దూరాన్ని ప్రతిబింబించేలా అల్ట్రాసోనిక్ వేవ్ తీసుకున్న సమయాన్ని లెక్కించడం = 0.034 * (వ్యవధి / 2); // దూరాన్ని లెక్కించడం నీకు రోబోట్ మరియు అడ్డంకి. if (దూరం> 50) // దూరం 50 సెం.మీ కంటే ఎక్కువగా ఉంటే ముందుకు సాగండి {DigitalWrite (enable1pin, HIGH); డిజిటల్ రైట్ (ఎనేబుల్ 2 పిన్, హై); డిజిటల్ రైట్ (మోటర్ 1 పిన్ 1, హై); డిజిటల్ రైట్ (మోటర్ 1 పిన్ 2, తక్కువ); డిజిటల్ రైట్ (మోటర్ 2 పిన్ 1, హై); డిజిటల్ రైట్ (మోటర్ 2 పిన్ 2, తక్కువ); } else ఉంటే (దూరం<50) // Sharp Right Turn if the distance is less than 50cm { digitalWrite(enable1pin, HIGH); digitalWrite(enable2pin, HIGH); digitalWrite(motor1pin1, HIGH); digitalWrite(motor1pin2, LOW); digitalWrite(motor2pin1, LOW); digitalWrite(motor2pin2, LOW); } delay(300); }
అప్లికేషన్స్
కాబట్టి రోబోట్ను నివారించే అడ్డంకిని చేసే విధానం ఇక్కడ ఉంది. ఈ అడ్డంకిని తప్పించే సాంకేతికత ఇతర అనువర్తనాల్లో కూడా దావా వేయవచ్చు. ఈ అనువర్తనాల్లో కొన్ని క్రింది విధంగా ఉన్నాయి.
- ట్రాకింగ్ సిస్టమ్.
- దూర కొలత ప్రయోజనాలు.
- ఆటోమేటిక్ వాక్యూమ్ క్లీనింగ్ రోబోట్లలో దీనిని ఉపయోగించవచ్చు.
- అంధుల కోసం దీనిని కర్రలలో ఉపయోగించవచ్చు.