- అవసరమైన భాగాలు:
- రిమోట్ఎక్స్వై అనువర్తనాన్ని ఉపయోగించి రోబోట్ కోసం ఇంటర్ఫేస్ను సృష్టిస్తోంది:
- సర్క్యూట్ రేఖాచిత్రం మరియు వివరణ:
- కోడ్ వివరణ:
- దీన్ని ఎలా అమలు చేయాలి:
ఈ వ్యాసంలో, మేము మా మొబైల్ ఫోన్ యొక్క G సెన్సార్ ద్వారా రోబోట్ కారును నియంత్రించబోతున్నాము మరియు మీరు ఫోన్ను టిల్ట్ చేయడం ద్వారా రోబోట్ను తరలించగలుగుతారు. ఈ జి-సెన్సార్ కంట్రోల్డ్ రోబోట్ కోసం మేము ఆర్డునో మరియు రిమోట్ఎక్స్వై అనువర్తనాన్ని కూడా ఉపయోగిస్తాము. రోబోట్ను నియంత్రించడానికి స్మార్ట్ ఫోన్లో ఇంటర్ఫేస్ను సృష్టించడానికి రిమోట్ఎక్స్వై అనువర్తనం ఉపయోగించబడుతుంది. మేము ఇంటర్ఫేస్లో జాయ్స్టిక్ను జోడిస్తాము, తద్వారా రోబోట్ను జాయ్స్టిక్తో పాటు ఫోన్ను టిల్ట్ చేయడం ద్వారా కూడా నియంత్రించవచ్చు.
జి-సెన్సార్ లేదా గ్రావిటీ సెన్సార్ ప్రాథమికంగా స్మార్ట్ ఫోన్లో యాక్సిలెరోమీటర్, ఇది ఫోన్ యొక్క స్క్రీన్ విన్యాసాన్ని నియంత్రించడానికి ఉపయోగించబడుతుంది. యాక్సిలెరోమీటర్ గురుత్వాకర్షణ శక్తి యొక్క X, Y, Z దిశలను గ్రహించి, ఫోన్ యొక్క అమరిక ప్రకారం స్క్రీన్ను తిప్పండి. ఇప్పుడు, స్క్రీన్ యొక్క ధోరణిని నిర్ణయించడానికి మొబైల్లలో మరింత సున్నితమైన మరియు ఖచ్చితమైన గైరోస్కోప్ సెన్సార్ ఉపయోగించబడుతుంది. మా ప్రాజెక్ట్లో, రోబోట్ కారు కదులుతుంది, ఫోన్ ఏ దిశలో వంగి ఉంటుంది, మనం ఫోన్ను ముందుకు వంపుతున్నప్పుడు, అప్పుడు కారు ముందుకు కదులుతుంది మరియు మేము దానిని క్రిందికి వంచి, కారు వెనుకకు కదులుతుంది. మేము మొబైల్లో కొన్ని కార్ గేమ్లు ఆడుతున్నప్పుడు ఇది సమానంగా ఉంటుంది, తదనుగుణంగా కారును తరలించడానికి వారు G సెన్సార్ను కూడా ఉపయోగిస్తారు. చివర వీడియోను తనిఖీ చేయండి, ఇక్కడ మా ఇతర రోబోటిక్స్ ప్రాజెక్టులను కూడా తనిఖీ చేయండి.
అవసరమైన భాగాలు:
- టూ వీల్ రోబోట్ కార్ చట్రం
- ఆర్డునో UNO
- L298N మోటార్ కంట్రోలర్
- HC-06 బ్లూటూత్ మాడ్యూల్ (HC-05 కూడా పని చేస్తుంది)
- విద్యుత్ సరఫరా లేదా కణాలు
- వైర్లను కనెక్ట్ చేస్తోంది
రిమోట్ఎక్స్వై అనువర్తనాన్ని ఉపయోగించి రోబోట్ కోసం ఇంటర్ఫేస్ను సృష్టిస్తోంది:
రిమోట్ఎక్స్వై అనువర్తనాన్ని ఉపయోగించి రోబోట్ కారును నియంత్రించడానికి ఇంటర్ఫేస్ను సృష్టించడానికి, మీరు ఈ క్రింది లింక్కి వెళ్ళాలి
remotexy.com/en/editor/ వెబ్పేజీ ఇలా కనిపిస్తుంది
స్క్రీన్ ఎడమ వైపు నుండి, స్విచ్ బటన్ మరియు జాయ్ స్టిక్ ఎంచుకొని మొబైల్ ఇంటర్ఫేస్లో ఉంచండి. బటన్ పిన్ 13 వద్ద కాంతిని ఆన్ చేస్తుంది, ఇది ఆర్డునోలో అంతర్గతంగా అనుసంధానించబడి ఉంటుంది మరియు జాయ్ స్టిక్ రోబోట్ కారును కదిలిస్తుంది. స్విచ్ మరియు జాయ్ స్టిక్ ఉంచిన తర్వాత వెబ్పేజీ ఇలా ఉంటుంది.
అప్పుడు మేము జాయ్స్టిక్తో పాటు ఎనేబుల్ జి సెన్సార్ ఎనేబుల్ / డిసేబుల్ బటన్ను ఉంచాలి, తద్వారా ఫోన్ను ఎడమ, కుడి, పైకి మరియు క్రిందికి తిప్పడం ద్వారా రోబోట్ కారును తరలించవచ్చు. ఆ బటన్ను ఉపయోగించి మనం G సెన్సార్ను ఎనేబుల్ చేయవచ్చు మరియు డిసేబుల్ చేయవచ్చు, G సెన్సార్ డిసేబుల్ అయినప్పుడు జాయ్స్టిక్ను తరలించడం ద్వారా కారును నియంత్రించవచ్చు. కాబట్టి జి సెన్సార్ ఎనేబుల్ / డిసేబుల్ బటన్ను ఉంచడానికి, మీరు ఇంటర్ఫేస్లో ఉంచిన జాయ్స్టిక్పై క్లిక్ చేయండి మరియు ఎడమ వైపున ప్రాపర్టీస్ విభాగం ఉంటుంది, జాయ్ స్టిక్ దగ్గర జి సెన్సార్ బటన్ను ఉంచడానికి చివరికి ఒక ఎంపిక ఉంటుంది, కాబట్టి మీకు నచ్చిన చోట G సెన్సార్ బటన్ ఉంచండి. దీని తర్వాత వెబ్పేజీ ఇలా కనిపిస్తుంది.
ఆ తరువాత, “సోర్స్ కోడ్ పొందండి” బటన్ పై క్లిక్ చేసి మీ కంప్యూటర్లో సేవ్ చేయండి. ఇక్కడ నుండి లైబ్రరీని డౌన్లోడ్ చేసి, ఆర్డునో లైబ్రరీ ఫోల్డర్లో సేవ్ చేయండి. లోపాలు లేవని తనిఖీ చేయడానికి డౌన్లోడ్ చేసిన కోడ్ను కంపైల్ చేయండి. ఇది రోబోట్ను అమలు చేసే కోడ్ కాదు, అయితే ఇది ఆర్డునోతో అనువర్తనాన్ని ఉపయోగించడంలో సహాయపడుతుంది. ఇక్కడ నుండి అనువర్తనాన్ని డౌన్లోడ్ చేయండి లేదా ప్లే స్టోర్కు వెళ్లి మీ కోసం Android స్మార్ట్ ఫోన్ కోసం రిమోట్ఎక్స్వై అనువర్తనాన్ని డౌన్లోడ్ చేయండి.
సర్క్యూట్ రేఖాచిత్రం మరియు వివరణ:
అన్నింటిలో మొదటిది, మేము L298N మోటారు కంట్రోలర్ను Arduino తో ఇంటర్ఫేస్ చేస్తాము. మోటారు కంట్రోలర్ యొక్క ENA మరియు ENB పిన్లను వరుసగా Arduino పిన్ 12 మరియు 11 కి కనెక్ట్ చేయండి. ఈ రెండు పిన్స్ మోటారు యొక్క PWM నియంత్రణ కోసం. థీసిస్ పిన్స్ ఉపయోగించి, మేము కారు వేగాన్ని పెంచవచ్చు లేదా తగ్గించవచ్చు. అప్పుడు IN1, IN2, IN3 మరియు IN4 లను వరుసగా 10, 9, 8 మరియు 7 ఆర్డునో పిన్లకు కనెక్ట్ చేయండి. ఈ పిన్స్ మోటార్లు రెండు దిశలలో (సవ్యదిశలో మరియు వ్యతిరేక సవ్యదిశలో) తిరుగుతాయి.
మోటారుకు శక్తినివ్వడానికి, బ్యాటరీ యొక్క సానుకూల మరియు ప్రతికూలతను 12V మరియు మోటారు నియంత్రిక యొక్క భూమికి కనెక్ట్ చేయండి. అప్పుడు 5 వి మరియు భూమిని మోటారు కంట్రోలర్ నుండి ఆర్డునో విన్ మరియు గ్రౌండ్కు కనెక్ట్ చేయండి.
అప్పుడు మేము బ్లూటూత్ మాడ్యూల్ HC-06 ను ఆర్డునోతో కనెక్ట్ చేస్తాము. మీకు హెచ్సి -05 ఉంటే, అది కూడా పని చేస్తుంది. VCC మరియు బ్లూటూత్ మాడ్యూల్ యొక్క భూమిని 5V కి మరియు ఆర్డునో యొక్క భూమిని కనెక్ట్ చేయండి. అప్పుడు బ్లూటూత్ మాడ్యూల్ యొక్క TX పిన్ను Arduino యొక్క పిన్ 2 కి మరియు RX పిన్ను Arduino యొక్క పిన్ 3 కి కనెక్ట్ చేయండి. ఆర్డునోతో బ్లూటూత్ ఉపయోగించడం గురించి మరింత తెలుసుకోవడానికి ఆర్డునో ఉపయోగించి బ్లూటూత్ కంట్రోల్డ్ టాయ్ కార్ను కూడా తనిఖీ చేయండి.
కోడ్ వివరణ:
ఈ మొబైల్ కంట్రోల్డ్ రోబోట్ కార్ కోసం పూర్తి ఆర్డునో కోడ్ కోడ్ విభాగంలో క్రింద ఇవ్వబడింది, ఈ కోడ్ ఎలా పనిచేస్తుందో ఇక్కడ మనకు అర్థం అవుతుంది.
అన్నింటిలో మొదటిది, మేము సాఫ్ట్వేర్ సీరియల్ మరియు రిమోట్ఎక్స్వై కోసం లైబ్రరీలను చేర్చాము. అనువర్తనాన్ని ఆర్డునోతో సెట్ చేయడంలో రిమోట్ఎక్స్వై లైబ్రరీ మాకు సహాయపడుతుంది, దీని ద్వారా మేము రోబోట్ కారును నియంత్రిస్తాము. ఆ తరువాత, మేము బ్లూటూత్ మాడ్యూల్ కోసం పిన్లను నిర్వచించాము, బ్లూటూత్ మాడ్యూల్ నుండి టిఎక్స్ ఆర్డునో యొక్క పిన్ 2 కి అనుసంధానించబడి ఉంది, ఇది ఆర్డునో యొక్క ఆర్ఎక్స్ పిన్ మరియు బ్లూటూత్ మాడ్యూల్ నుండి ఆర్ఎక్స్ ఆర్డునో యొక్క పిన్ 3 కి అనుసంధానించబడి ఉంది Arduino యొక్క TX పిన్ మరియు బ్లూటూత్ మాడ్యూల్ యొక్క బాడ్ రేటును 9600 వద్ద సెట్ చేస్తుంది.
# REMOTEXY_MODE__SOFTWARESERIAL ని నిర్వచించండి # చేర్చండి
కింది కోడ్ మోటారు వేగాన్ని పెంచుతుంది లేదా తగ్గిస్తుంది. జాయ్ స్టిక్ మధ్యలో ఉన్నప్పుడు, వేగం సున్నా అవుతుంది మరియు అది ముందుకు దిశలో ఉన్నప్పుడు వేగం సున్నా నుండి 100 కి పెరుగుతుంది. కారు కదులుతున్నప్పుడు వేగం 0 నుండి -100 వరకు తగ్గుతుంది. రివర్స్ దిశ. కారును నిర్దిష్ట వేగంతో కూడా తరలించవచ్చు, పిడబ్ల్యుఎం సిగ్నల్ ఇవ్వడం ద్వారా దీన్ని చేయవచ్చు. జాయ్ స్టిక్ యొక్క భ్రమణం ప్రకారం మోటారులకు pwm సిగ్నల్ ఇవ్వబడుతుంది.
if (motor_speed> 100) motor_speed = 100; (మోటారు_స్పీడ్ <-100) మోటారు_స్పీడ్ = -100; if (motor_speed> 0) {DigitalWrite (పాయింటర్, HIGH); డిజిటల్ రైట్ (పాయింటర్, తక్కువ); అనలాగ్రైట్ (పాయింటర్, మోటారు_స్పీడ్ * 2.55); } else if (motor_speed <0) {DigitalWrite (పాయింటర్, LOW); డిజిటల్ రైట్ (పాయింటర్, హై); అనలాగ్రైట్ (పాయింటర్, (-మోటర్_స్పీడ్) * 2.55); } else {డిజిటల్ రైట్ (పాయింటర్, తక్కువ); డిజిటల్ రైట్ (పాయింటర్, తక్కువ); అనలాగ్రైట్ (పాయింటర్, 0); }
కింది కోడ్లో, మేము అనువర్తనంలో జాయ్స్టిక్ను తరలించినప్పుడల్లా పిలువబడే ఫంక్షన్ను నిర్వచించాము. మేము అనువర్తనంలో స్విచ్ను ఆన్ చేసినప్పుడు, ఎల్ఈడీ పిన్ని ఆన్ చేసే ఆర్డునో యొక్క పిన్ 13 కి లాజిక్ 1 ఇవ్వబడుతుంది. రోబోట్ కారును ముందుకు మరియు వెనుకబడిన దిశలో కదిలేటప్పుడు, స్పీడ్ ఫంక్షన్ అంటారు.
శూన్య లూప్ () {రిమోట్ఎక్స్వై_హ్యాండ్లర్ (); DigitalWrite (ledpin, (RemoteXY.switch_1 == 0)? తక్కువ: HIGH); వేగం (first_motor, RemoteXY.joystick_1_y - RemoteXY.joystick_1_x); వేగం (second_motor, RemoteXY.joystick_1_y + RemoteXY.joystick_1_x); }
దీన్ని ఎలా అమలు చేయాలి:
Arduino లైబ్రరీలకు రిమోట్ XY యొక్క లైబ్రరీని జోడించి, Arduino IDE లో కోడ్ను అప్లోడ్ చేయండి. అప్పుడు మీ మొబైల్ ఫోన్లో అనువర్తనాన్ని డౌన్లోడ్ చేసి, ఆపై బ్లూటూత్ను ఆన్ చేయండి. అనువర్తనం యొక్క ఇంటర్ఫేస్ ఇలా కనిపిస్తుంది
అప్పుడు బ్లూటూత్కు వెళ్లి అక్కడ బ్లూటూత్ను ఆన్ చేయండి. దీన్ని ఆన్ చేసిన తర్వాత, ఇది మీకు బ్లూటూత్ పరికరాలను చూపుతుంది. అక్కడ నుండి మీ HC-06 బ్లూటూత్ మాడ్యూల్ను ఎంచుకోండి, అది మిమ్మల్ని ఇంటర్ఫేస్కు తీసుకెళుతుంది, అక్కడ నుండి మీరు రోబోట్ కారును నియంత్రించవచ్చు.
రోబోట్ను తరలించడానికి మన మొబైల్ ఫోన్లోని గ్రావిటీ సెన్సార్ను ఈ విధంగా ఉపయోగించవచ్చు. మైక్రోకంటోర్లర్ను మధ్యలో (ఆర్డునో వంటివి) ఇంటర్ఫేస్ చేయడం ద్వారా బయటి విషయాలను నియంత్రించడానికి మీరు G సెన్సార్ యొక్క మరింత ఆసక్తికరమైన ఉపయోగాన్ని కనుగొనవచ్చు.