ఈ ట్యుటోరియల్లో మేము ARDUINO UNO చే సర్వో మోటారును నియంత్రించబోతున్నాము. ఖచ్చితమైన షాఫ్ట్ కదలిక లేదా స్థానం అవసరం ఉన్న చోట సర్వో మోటార్స్ ఉపయోగించబడతాయి. హై స్పీడ్ అనువర్తనాల కోసం ఇవి ప్రతిపాదించబడలేదు. తక్కువ వేగం, మీడియం టార్క్ మరియు ఖచ్చితమైన స్థానం అనువర్తనం కోసం ఇవి ప్రతిపాదించబడ్డాయి. ఈ మోటార్లు రోబోటిక్ ఆర్మ్ మెషీన్లు, ఫ్లైట్ కంట్రోల్స్ మరియు కంట్రోల్ సిస్టమ్స్లో ఉపయోగించబడతాయి.
సర్వో మోటార్లు వేర్వేరు ఆకారాలు మరియు పరిమాణాలలో లభిస్తాయి. ఒక సర్వో మోటారులో ప్రధానంగా వైర్లు ఉంటాయి, ఒకటి సానుకూల వోల్టేజ్ కోసం మరొకటి భూమి కోసం మరియు చివరిది స్థానం అమరిక కోసం. RED వైర్ శక్తితో అనుసంధానించబడి ఉంది, బ్లాక్ వైర్ భూమికి అనుసంధానించబడి ఉంది మరియు YELLOW వైర్ సిగ్నల్కు అనుసంధానించబడి ఉంది.
సర్వో మోటర్ అనేది DC మోటారు, పొజిషన్ కంట్రోల్ సిస్టమ్, గేర్ల కలయిక. పిసిడబ్ల్యుఎం సిగ్నల్ సిగ్నల్ పిన్ యొక్క విధి నిష్పత్తి ఆధారంగా, డిసి మోటారు యొక్క షాఫ్ట్ యొక్క స్థానం సర్వోలోని కంట్రోల్ ఎలక్ట్రానిక్స్ ద్వారా సర్దుబాటు చేయబడుతుంది.
కంట్రోల్ ఎలక్ట్రానిక్స్ సరళంగా చెప్పాలంటే DC మోటారును నియంత్రించడం ద్వారా షాఫ్ట్ స్థానాన్ని సర్దుబాటు చేస్తుంది. షాఫ్ట్ యొక్క స్థానానికి సంబంధించిన ఈ డేటా సిగ్నల్ పిన్ ద్వారా పంపబడుతుంది. సర్వో మోటర్ యొక్క సిగ్నల్ పిన్ ద్వారా నియంత్రణకు స్థానం డేటాను పిడబ్ల్యుఎం సిగ్నల్ రూపంలో పంపాలి.
పిడబ్ల్యుఎం (పల్స్ వెడల్పు మాడ్యులేటెడ్) సిగ్నల్ యొక్క ఫ్రీక్వెన్సీ సర్వో మోటార్ రకం ఆధారంగా మారవచ్చు. ఇక్కడ ముఖ్యమైన విషయం PWM సిగ్నల్ యొక్క DUTY నిష్పత్తి. ఈ డ్యూటీ రేషన్ ఆధారంగా కంట్రోల్ ఎలక్ట్రానిక్స్ షాఫ్ట్ సర్దుబాటు చేస్తుంది.
దిగువ చిత్రంలో చూపినట్లుగా, షాఫ్ట్ 9o గడియారానికి తరలించాలంటే రేషన్ ఆన్ 1 / 18.ie ఉండాలి. 18ms సిగ్నల్లో 1ms ON సమయం మరియు 17ms OFF సమయం.
షాఫ్ట్ 12o గడియారానికి తరలించాలంటే సిగ్నల్ యొక్క ON సమయం 1.5ms మరియు OFF సమయం 16.5ms ఉండాలి. ఈ నిష్పత్తిని సర్వోలోని నియంత్రణ వ్యవస్థ ద్వారా డీకోడ్ చేస్తారు మరియు ఇది దాని ఆధారంగా స్థానాన్ని సర్దుబాటు చేస్తుంది. ఇక్కడ ఉన్న ఈ PWM ARDUINO UNO ని ఉపయోగించి ఉత్పత్తి అవుతుంది.
సర్క్యూట్ భాగాలు
హార్డ్వేర్: ARDUINO UNO, విద్యుత్ సరఫరా (5v), 100uF కెపాసిటర్, బటన్లు (రెండు ముక్కలు), 1KΩ రెసిస్టర్ (రెండు ముక్కలు), సర్వో మోటార్ (పరీక్షించాల్సిన అవసరం ఉంది).
సాఫ్ట్వేర్: arduino IDE (Arduino nightly).
ఆర్డునో సర్వో మోటార్ సర్క్యూట్ రేఖాచిత్రం మరియు వివరణ
సాధారణ సందర్భాల్లో, ఫ్రీక్వెన్సీని సర్దుబాటు చేయడానికి మరియు సర్వో యొక్క ఖచ్చితమైన స్థాన నియంత్రణ కోసం అవసరమైన విధి నిష్పత్తిని పొందడానికి మేము కంట్రోలర్ యొక్క రిజిస్టర్లకు వెళ్లాలి, ARDUINO లో మేము ఆ పనులు చేయనవసరం లేదు.
ARDUINO లో మనకు ముందే నిర్వచించిన లైబ్రరీలు ఉన్నాయి, ఇవి హెడర్ ఫైల్ అని పిలువబడినప్పుడు లేదా చేర్చబడిన తర్వాత పౌన encies పున్యాలు మరియు విధి నిష్పత్తులను సెట్ చేస్తాయి. ARDUINO లో మేము అవసరమైన సర్వో యొక్క స్థితిని పేర్కొనాలి మరియు PWM స్వయంచాలకంగా UNO చే సర్దుబాటు చేయబడుతుంది.
సర్వో యొక్క ఖచ్చితమైన స్థానం పొందడానికి మనం చేయవలసినవి:
|
మొదట మనం పిడబ్ల్యుఎం సిగ్నల్ యొక్క ఫ్రీక్వెన్సీని సెట్ చేయాలి మరియు దాని కోసం మనం “# చేర్చండి
ఇప్పుడు మనం సర్వో “సర్వో sg90sevo” కోసం ఒక పేరును నిర్వచించాల్సిన అవసరం ఉంది, ఇక్కడ 'sg90servo' అనేది ఎంచుకున్న పేరు, కాబట్టి కషాయము కోసం వ్రాసేటప్పుడు మేము ఈ పేరును ఉపయోగించబోతున్నాము, మనకు నియంత్రించడానికి చాలా సర్వోలు ఉన్నప్పుడు ఈ లక్షణం ఉపయోగపడుతుంది, దీని ద్వారా మేము ఎనిమిది సర్వోలను నియంత్రించవచ్చు.
సర్వో యొక్క సిగ్నల్ పిన్ ఎక్కడ అనుసంధానించబడిందో లేదా పిడబ్ల్యుఎం సిగ్నల్ను ఎక్కడ ఉత్పత్తి చేయాలో ఇప్పుడు యుఎన్ఓకు తెలియజేస్తాము. ఇది చేయుటకు మనకు “Sg90.attach (3);” ఉంది, ఇక్కడ మేము UNO కి చెబుతున్నాము, మేము PIN3 వద్ద సర్వో యొక్క సిగ్నల్ పిన్ను కనెక్ట్ చేసాము.
అన్నింటినీ స్థానం సెట్ చేయడమే, మేము “Sg90.write (30);” ను ఉపయోగించి సర్వో యొక్క స్థానాన్ని సెట్ చేయబోతున్నాము, ఈ ఆదేశం ద్వారా సర్వో హ్యాండ్ 30 డిగ్రీలు కదులుతుంది, అంతే. ఆ తరువాత మనం సర్వో యొక్క స్థానాన్ని మార్చాల్సిన అవసరం వచ్చినప్పుడు ”Sg90.write (required_position_ angle);” అనే ఆదేశాన్ని పిలవాలి. ఈ సర్క్యూట్లో మనకు రెండు బటన్లు ఉంటాయి ఒక బటన్ సర్వో యొక్క స్థానాన్ని పెంచుతుంది మరియు మరొకటి సర్వో యొక్క స్థానాన్ని తగ్గించడం కోసం.
Arduino సర్వో మోటార్ నియంత్రణ ట్యుటోరియల్ క్రింద ఇచ్చిన సి కోడ్ స్టెప్ బై స్టెప్ వివరించారు.