- స్టెప్పర్ మోటార్
- ARM7-LPC2148 తో స్టెప్పర్ మోటారును తిప్పడం
- భాగాలు అవసరం
- స్టెప్పర్ మోటార్ (28BYJ-48)
- ULN2003 స్టెప్పర్ మోటార్ డ్రైవర్
- సర్క్యూట్ రేఖాచిత్రం
- స్టెప్పర్ మోటార్ కోసం ప్రోగ్రామింగ్ ARM7-LPC2148
నేటి ఆటోమేషన్ ప్రపంచంలో స్టెప్పర్ మోటారు మరియు సర్వో మోటారు ఎంబెడెడ్ సిస్టమ్స్లో సాధారణంగా ఉపయోగించే రెండు మోటార్లు. రోబోటిక్ ఆర్మ్స్, సిఎన్సి మెషిన్, కెమెరాలు వంటి వివిధ ఆటోమేషన్ యంత్రాలలో రెండూ ఉపయోగించబడతాయి. ఈ ట్యుటోరియల్లో స్టెప్పర్ మోటర్ను ARM7-LPC2148 తో ఎలా ఇంటర్ఫేస్ చేయాలో మరియు దాని వేగాన్ని ఎలా నియంత్రించాలో చూద్దాం. మీరు ARM7 కి కొత్తగా ఉంటే, ARM7-LPC2148 మరియు దాని ప్రోగ్రామింగ్ సాధనాల గురించి తెలుసుకోవడం ద్వారా ప్రారంభించండి.
స్టెప్పర్ మోటార్
స్టెప్పర్ మోటర్ బ్రష్ లేని DC మోటర్, దీనిని చిన్న కోణాల్లో తిప్పవచ్చు, ఈ కోణాలను స్టెప్స్ అంటారు. దాని పిన్స్కు డిజిటల్ పప్పులను ఇవ్వడం ద్వారా మనం స్టెప్పర్ మోటారును దశలవారీగా తిప్పవచ్చు. స్టెప్పర్ మోటార్లు చవకైనవి మరియు కఠినమైన డిజైన్ కలిగి ఉంటాయి. డిజిటల్ పప్పుల యొక్క ఫ్రీక్వెన్సీని మార్చడం ద్వారా మోటారు వేగాన్ని నియంత్రించవచ్చు.
స్టేటర్ వైండింగ్ రకం ఆధారంగా రెండు రకాల స్టెప్పర్ మోటార్లు అందుబాటులో ఉన్నాయి: యునిపోలార్ మరియు బిపోలార్. ఇక్కడ మనం ఎక్కువగా ఉపయోగించే స్టెప్పర్ మోటారు అయిన యునిపోలార్ స్టెప్పర్ మోటారును ఉపయోగిస్తున్నాము . స్టెప్పర్ మోటారును తిప్పడానికి మనం స్టెప్పర్ మోటారు యొక్క కాయిల్స్ను ఒక క్రమంలో శక్తివంతం చేయాలి. భ్రమణ ఆపరేషన్ ఆధారంగా అవి రెండు రీతులుగా వర్గీకరించబడతాయి:
- పూర్తి దశ మోడ్: (4-దశల క్రమం)
- వన్-ఫేజ్ ఆన్ స్టెప్పింగ్ (వేవ్ స్టెప్పింగ్)
- రెండు దశల దశ
- హాఫ్ స్టెప్ మోడ్ (8-దశల సీక్వెన్స్)
స్టెప్పర్ మోటారు మరియు దాని ఆపరేషన్ గురించి మరింత తెలుసుకోవడానికి, లింక్ను అనుసరించండి.
ARM7-LPC2148 తో స్టెప్పర్ మోటారును తిప్పడం
ఇక్కడ మేము స్టెప్పర్ మోటారును ARM7-LPC2148 తో తిప్పడానికి పూర్తి దశ: వన్ ఫేస్ ఆన్ లేదా వేవ్ స్టెప్పింగ్ మోడ్ను ఉపయోగిస్తాము.
ఈ పద్ధతిలో మేము ఒకేసారి ఒక కాయిల్ (LPC2148 యొక్క ఒక పిన్) ను మాత్రమే శక్తివంతం చేస్తాము. అంటే మొదటి కాయిల్ A కొద్దిసేపు శక్తివంతమైతే, షాఫ్ట్ దాని స్థానాన్ని మారుస్తుంది మరియు తరువాత కాయిల్ B అదే సమయంలో శక్తినిస్తుంది మరియు షాఫ్ట్ మళ్ళీ దాని స్థానాన్ని మారుస్తుంది. ఈ విధంగానే, కాయిల్ సి మరియు తరువాత కాయిల్ డి షాఫ్ట్ను మరింతగా తరలించడానికి శక్తినిస్తుంది. ఇది ఒక సమయంలో ఒక కాయిల్కు శక్తినివ్వడం ద్వారా స్టెప్పర్ మోటర్ యొక్క షాఫ్ట్ దశల వారీగా తిప్పడానికి వీలు కల్పిస్తుంది.
ఈ పద్ధతి ద్వారా మేము ఒక క్రమంలో కాయిల్ను శక్తివంతం చేయడం ద్వారా షాఫ్ట్ దశల వారీగా తిరుగుతాము. ఇది నాలుగు దశలను తీసుకుంటున్నందున దీనిని నాలుగు దశల సన్నివేశాలు అంటారు.
క్రింద ఇచ్చిన విలువల ప్రకారం మీరు HALF STEP పద్ధతి (8-సీక్వెన్స్ పద్ధతి) ఉపయోగించి స్టెప్పర్ మోటారును తిప్పవచ్చు.
దశ |
కాయిల్ A. |
కాయిల్ బి |
కాయిల్ సి |
కాయిల్ డి |
1 |
1 |
0 |
0 |
0 |
2 |
1 |
1 |
0 |
0 |
3 |
0 |
1 |
0 |
0 |
4 |
0 |
1 |
1 |
0 |
5 |
0 |
0 |
1 |
1 |
6 |
0 |
0 |
0 |
1 |
7 |
1 |
0 |
0 |
1 |
8 |
1 |
0 |
0 |
0 |
భాగాలు అవసరం
హార్డ్వేర్:
- ARM7-LPC2148
- ULN2003 మోటార్ డ్రైవర్ IC
- LED - 4
- STEPPER MOTOR (28BYJ-48)
- BREADBOARD
- వైర్లను కనెక్ట్ చేస్తోంది
సాఫ్ట్వేర్:
- కైల్ uVision5
- ఫ్లాసిక్ మ్యాజిక్ సాధనం
స్టెప్పర్ మోటార్ (28BYJ-48)
28BYJ-48 స్టెప్పర్ మోటారు ఇప్పటికే పై చిత్రంలో చూపబడింది. ఇది యూనిపోలార్ స్టెప్పర్ మోటారు, దీనికి 5 వి సరఫరా అవసరం. మోటారులో 4 కాయిల్ యూనిపోలార్ అమరిక ఉంది మరియు ప్రతి కాయిల్ + 5 వికి రేట్ చేయబడుతుంది, అందువల్ల ఆర్డునో, రాస్ప్బెర్రీ పై, ఎస్టిఎమ్ 32, ఎఆర్ఎమ్ మొదలైన మైక్రోకంట్రోలర్లతో నియంత్రించడం చాలా సులభం.
కానీ దానిని నడపడానికి మాకు ULN2003 వంటి మోటారు డ్రైవ్ IC అవసరం, ఎందుకంటే స్టెప్పర్ మోటార్లు అధిక కరెంట్ను వినియోగిస్తాయి మరియు ఇది మైక్రోకంట్రోలర్లను దెబ్బతీస్తుంది.
28BYJ-48 యొక్క లక్షణాలు క్రింద డేటాషీట్లో అందించబడ్డాయి:
ఇతర మైక్రోకంట్రోలర్లతో స్టెప్పర్ మోటార్తో ఇంటర్ఫేసింగ్ను కూడా తనిఖీ చేయండి:
- ఆర్డునో యునోతో ఇంటర్ఫేసింగ్ స్టెప్పర్ మోటార్
- రాస్ప్బెర్రీ పైతో స్టెప్పర్ మోటార్ కంట్రోల్
- 8051 మైక్రోకంట్రోలర్తో స్టెప్పర్ మోటార్ ఇంటర్ఫేసింగ్
- పిఐసి మైక్రోకంట్రోలర్తో ఇంటర్ఫేసింగ్ స్టెప్పర్ మోటార్
- MSP430G2 తో ఇంటర్ఫేసింగ్ స్టెప్పర్ మోటార్
మైక్రోకంట్రోలర్ లేకుండా స్టెప్పర్ మోటారును కూడా నియంత్రించవచ్చు, ఈ స్టెప్పర్ మోటార్ డ్రైవర్ సర్క్యూట్ చూడండి.
ULN2003 స్టెప్పర్ మోటార్ డ్రైవర్
చాలా స్టెప్పర్ మోటార్లు డ్రైవర్ మాడ్యూల్ సహాయంతో మాత్రమే పనిచేస్తాయి. ఎందుకంటే కంట్రోలర్ మాడ్యూల్ (మా విషయంలో LPC2148) మోటారు పనిచేయడానికి దాని I / O పిన్ల నుండి తగినంత కరెంట్ను అందించలేవు. కాబట్టి మేము ULN2003 మాడ్యూల్ వంటి బాహ్య మాడ్యూల్ను స్టెప్పర్ మోటార్ డ్రైవర్గా ఉపయోగిస్తాము.
ఈ ప్రాజెక్ట్లో, మేము ULN2003 మోటారు డ్రైవర్ IC ని ఉపయోగిస్తాము. IC యొక్క పిన్ రేఖాచిత్రం క్రింద ఇవ్వబడింది:
పిన్స్ (IN1 నుండి IN7) మైక్రోకంట్రోలర్ అవుట్పుట్ను కనెక్ట్ చేయడానికి ఇన్పుట్ పిన్లు మరియు OUT1 నుండి OUT7 వరకు స్టెప్పర్ మోటార్లు ఇన్పుట్ను కనెక్ట్ చేయడానికి సంబంధిత అవుట్పుట్ పిన్లు. COM ఇవ్వబడుతుంది అవుట్పుట్ పరికరాలకు మరియు బాహ్య శక్తి ఇన్పుట్ మూలానికి అవసరమైన పాజిటివ్ సోర్స్ వోల్టేజ్.
సర్క్యూట్ రేఖాచిత్రం
ARM-7 LPC2148 తో స్టెప్పర్ మోటర్ను ఇంటర్ఫేసింగ్ కోసం సర్క్యూట్ రేఖాచిత్రం క్రింద ఇవ్వబడింది
ULN2003 మోటార్ డ్రైవర్ IC తో ARM7-LPC2148
LPC2148 (P0.7 నుండి P0.10) యొక్క GPIO పిన్స్ ULN2003 IC యొక్క ఇన్పుట్ పిన్స్ (IN1-IN4) తో అనుసంధానించబడిన అవుట్పుట్ పిన్స్గా పరిగణించబడతాయి.
LPC2148 పిన్స్ |
పిన్స్ ఆఫ్ ULN2003 IC |
పి.0.7 |
IN1 |
పి.0.8 |
IN2 |
పి.0.9 |
IN3 |
పి.10 |
IN4 |
5 వి |
COM |
GND |
GND |
స్టెప్పర్ మోటార్ (28BYJ-48) తో ULN2003 IC యొక్క కనెక్షన్లు
ULN2003 IC యొక్క అవుట్పుట్ పిన్స్ (OUT1-OUT4) స్టెప్పర్ మోటార్లు పిన్స్ (బ్లూ, పింక్, ఎల్లో మరియు ఆరెంజ్) తో అనుసంధానించబడి ఉన్నాయి.
ULN2003 IC పిన్స్ |
స్టెప్పర్ మోటర్ యొక్క పిన్స్ |
OUT1 |
నీలం |
OUT2 |
పింక్ |
OUT3 |
YELLOW |
OUT4 |
ఆరెంజ్ |
COM |
RED (+ 5V) |
ULN2003 యొక్క IN1 నుండి IN4 తో LED లు
నాలుగు ఎల్ఈడీలు (ఎల్ఈడీ 1, ఎల్ఈడీ 2, ఎల్ఈడీ 4, ఎల్ఈడీ 4) యానోడ్ పిన్లు వరుసగా యు.ఎల్.ఎన్ 2003 యొక్క పిన్స్ ఐఎన్ 1, ఐఎన్ 2, ఐఎన్ 3, మరియు ఐఎన్ 4 లతో అనుసంధానించబడి ఉన్నాయి మరియు ఎల్ఈడీల కాథోడ్ జిఎన్డికి అనుసంధానించబడి ఉంది, ఇది ఎల్పిసి 2148 నుండి పప్పులను సూచిస్తుంది. అందించిన పప్పుధాన్యాల నమూనాను మనం గమనించవచ్చు. చివర జతచేయబడిన ప్రదర్శన వీడియోలో సరళి చూపబడుతుంది.
స్టెప్పర్ మోటార్ కోసం ప్రోగ్రామింగ్ ARM7-LPC2148
ARM7-LPC2148 ప్రోగ్రామ్ చేయడానికి మాకు కైల్ యువిజన్ & ఫ్లాష్ మ్యాజిక్ సాధనం అవసరం. మైక్రో USB పోర్ట్ ద్వారా ARM7 స్టిక్ ప్రోగ్రామ్ చేయడానికి మేము USB కేబుల్ ఉపయోగిస్తున్నాము. మేము కైల్ ఉపయోగించి కోడ్ వ్రాసి హెక్స్ ఫైల్ను క్రియేట్ చేస్తాము, ఆపై HEX ఫైల్ ఫ్లాష్ మ్యాజిక్ ఉపయోగించి ARM7 స్టిక్ కు ఫ్లాష్ అవుతుంది. కైల్ యువిజన్ మరియు ఫ్లాష్ మ్యాజిక్ను ఇన్స్టాల్ చేయడం గురించి మరియు వాటిని ఎలా ఉపయోగించాలో గురించి మరింత తెలుసుకోవడానికి లింక్ను అనుసరించండి ARM7 LPC2148 మైక్రోకంట్రోలర్తో ప్రారంభించండి మరియు కైల్ యువిజన్ ఉపయోగించి ప్రోగ్రామ్ చేయండి.
ARM 7 తో స్టెప్పర్ మోటారును నియంత్రించడానికి పూర్తి కోడ్ ఈ ట్యుటోరియల్ చివరిలో ఇవ్వబడింది, ఇక్కడ మేము దానిలోని కొన్ని భాగాలను వివరిస్తున్నాము.
1. ఉపయోగించి కోసం పూర్తి STEP-ONE దశ పద్ధతి మేము కమాండ్ క్రింద ఉన్నాయి అవసరం. కాబట్టి మేము ప్రోగ్రామ్లో ఈ క్రింది పంక్తిని ఉపయోగిస్తాము
సంతకం చేయని చార్ సవ్యదిశలో = {0x1,0x2,0x4,0x8}; సవ్యదిశలో భ్రమణం కోసం ఆదేశాలు సంతకం చేయని చార్ యాంటిక్లాక్వైస్ = {0x8,0x4,0x2,0x1}; యాంటిక్లాక్వైస్ రొటేషన్ కోసం // ఆదేశాలు
2. PORT0 పిన్లను అవుట్పుట్గా ప్రారంభించడానికి మరియు వాటిని తక్కువకు సెట్ చేయడానికి క్రింది పంక్తులు ఉపయోగించబడతాయి
PINSEL0 = 0x00000000; // PORT0 పిన్లను అమర్చుట IO0DIR - = 0x00000780; // పిన్లను P0.7, P0.8, P0.9, P0.10 ను OUTPUT IO0CLR = 0x00000780 గా అమర్చుట; // P0.7, P0.8, P0.9, P0.10 పిన్స్ OUTPUT ని తక్కువగా అమర్చుట
3. సెట్ PORT పిన్స్ (కు P0.10 P0.7) HIGH ప్రకారం సవ్యదిశలో ఈ ఉపయోగించి ఆదేశాలను కోసం ఆలస్యం లూప్
(int j = 0; j
యాంటీ-క్లాక్ వైజ్ కోసం అదే
(int z = 0; z కోసం
4. స్టెప్పర్ మోటర్ యొక్క భ్రమణ వేగాన్ని మార్చడానికి ఆలస్యం సమయాన్ని మార్చండి
ఆలస్యం (0x10000); // భ్రమణ వేగాన్ని మార్చడానికి ఈ విలువను మార్చండి (0x10000) -ఫుల్ స్పీడ్ (0x50000)-నెమ్మదిగా పొందుతుంది (0x90000)-మునుపటి కంటే నెమ్మదిగా పొందుతుంది. కాబట్టి ఆలస్యం పెంచడం ద్వారా మేము భ్రమణ వేగాన్ని తగ్గిస్తాము.
5. ఒక పూర్తి భ్రమణానికి దశల సంఖ్యను క్రింది కోడ్తో మార్చవచ్చు
int no_of_steps = 550; // అవసరమైన దశల భ్రమణానికి ఈ విలువను మార్చండి (550 ఒక పూర్తి భ్రమణాన్ని ఇస్తుంది)
నా స్టెప్పర్ మోటారు కోసం, పూర్తి భ్రమణానికి 550 దశలు మరియు సగం భ్రమణానికి 225 దశలు వచ్చాయి. కాబట్టి మీ అవసరాలకు అనుగుణంగా మార్చండి.
6. ఆలస్యం సమయాన్ని సృష్టించడానికి ఈ ఫంక్షన్ ఉపయోగించబడుతుంది.
void delay (సంతకం చేయని పూర్ణాంక విలువ) // ఆలస్యాన్ని సృష్టించే ఫంక్షన్ { సంతకం చేయని int z; (z = 0; z కోసం
ప్రదర్శన వీడియోతో పూర్తి కోడ్ క్రింద ఇవ్వబడింది.