ዝርዝር ሁኔታ:

በ AVR ማይክሮፕሮሰሰር (Stepper Motor) መንዳት 8 ደረጃዎች
በ AVR ማይክሮፕሮሰሰር (Stepper Motor) መንዳት 8 ደረጃዎች

ቪዲዮ: በ AVR ማይክሮፕሮሰሰር (Stepper Motor) መንዳት 8 ደረጃዎች

ቪዲዮ: በ AVR ማይክሮፕሮሰሰር (Stepper Motor) መንዳት 8 ደረጃዎች
ቪዲዮ: Маша и Медведь - Кино онлайн для больших и маленьких 🎬 (Маша и Медведь смотрят tvzavr) 2024, ሀምሌ
Anonim
በ AVR ማይክሮፕሮሰሰር አማካኝነት ስቴፐር ሞተርን ይንዱ
በ AVR ማይክሮፕሮሰሰር አማካኝነት ስቴፐር ሞተርን ይንዱ

ከአታሚዎች/የዲስክ ድራይቭ/ወዘተ ዙሪያ ተኝተው የተወሰኑ የተበላሹ የእርከን ሞተሮችን አግኝተዋል?

አንዳንዶች በኦሞሜትር እየመረመሩ ፣ በእርስዎ ማይክሮፕሮሰሰር ላይ አንዳንድ ቀላል የመንጃ ኮድ ይከተሉ እና እርስዎ በቅጥ ይረግጣሉ።

ደረጃ 1: Steppers ን ይወቁ

Steppers ን ይወቁ
Steppers ን ይወቁ
Steppers ን ይወቁ
Steppers ን ይወቁ

በመሠረቱ ፣ ሁሉም ትናንሽ ሽቦዎች የት እንደሚሄዱ ማወቅ ያስፈልግዎታል።

የመጀመሪያው እርምጃ አፖፖላር ወይም ባይፖላር ሞተር መሆኑን ማወቅ ነው። ለተወሰነ ጥልቅ ዳራ ፣ ጆንስን በ Steppers ላይ ይመልከቱ ፣ ከዚያ ያልታወቀ ሞተርን ለማወቅ ቀላል ዘዴን በኢየን ሃሪስ ጣቢያ ላይ። ትንሽ ያንብቡ ፣ ከዚያ በርካሽ ባገኘሁት በዚህ ሞተር የእግር ጉዞ ውስጥ ከእኔ ጋር ይቀላቀሉ። (አሁን በ 0.99 ዶላር ይሸጣሉ። እነሱ ትንሽ ፣ በአንጻራዊ ሁኔታ ቀላል ናቸው ፣ ግን ብዙ ጉልበት የላቸውም። እስካሁን ምን እንደሚሆን አታውቁም።)

ደረጃ 2 የጋራ መሬት ይፈልጉ

የጋራ መሬት ያግኙ
የጋራ መሬት ያግኙ
የጋራ መሬት ያግኙ
የጋራ መሬት ያግኙ

ስለዚህ አምስት (ወይም አራት ፣ ወይም ስድስት) ሽቦዎች አሉዎት። ሞተርዎ ሁለት ግማሾችን ይይዛል ፣ እና እያንዳንዱ ሽቦ ከየትኛው ወገን እንደሆነ በማየት ብቻ መናገር ይችላሉ።

አራት ገመዶችን ብቻ እየተመለከቱ ከሆነ ዕድለኛ ነዎት - ባይፖላር ሞተር ነው። እርስዎ ማድረግ የሚጠበቅብዎት የትኞቹ ሁለት ጥንድ ሽቦዎች አብረው እንደሚሄዱ ማወቅ ነው። ባለአንድ ሞተር (ሞተር) ወይም ከ 4 በላይ ሽቦዎች ካሉዎት ፣ ኦሚሜትርዎን ማፍረስ ይኖርብዎታል። የሚፈልጉት ለእያንዳንዱ ግማሽ የተለመደው (መሬት) ሽቦ ነው። ምሰሶዎቹ በራሳቸው ላይ ከሚያደርጉት ከሁለቱም ምሰሶዎች ግማሽ የመቋቋም አቅም ስላለው በቢፖላር ሞተር ውስጥ የትኛው መሬት እንዳለ ማወቅ ይችላሉ። በሥዕሉ ላይ የሚታዩት ገመዶችን ከሽቦዎች ጋር ከማያያዝ እና ተቃውሞውን (ወይም ጨርሶ ከተገናኙ) ማስታወሻዎቼ ናቸው። ነጭ ለታችኛው ትሪዮ ለ/መሬት መሬት መሆኑን ማየት ይችላሉ እርስ በእርሳቸው ያላቸው ቀይ ወይም ሰማያዊ የመቋቋም ግማሽ አላቸው። (ይህ ሞተር እንግዳ እና በላይኛው ማግኔት ሽቦ ላይ የመሃል መታ ማድረግ የለበትም። ልክ እንደ ግማሽ-ባይፖላር ፣ ግማሽ-ኢፖላር ነው። ምናልባት ጥቁር-ቢጫ በሚሆንበት ጊዜ በቀይ-ነጭ-ሰማያዊ ጥቅል ውስጥ ሽክርክሪት እንዲሰማዎት ይህንን ሊጠቀሙበት ይችላሉ። ሽቦ እየተነዳ ነው።)

ደረጃ 3 የእርምጃ ትዕዛዙን ይወቁ

የእርምጃ ትዕዛዙን ይወቁ
የእርምጃ ትዕዛዙን ይወቁ

እኔ ይህንን ሞተር እንደ ባይፖላር ለመንዳት ነበር ፣ ስለዚህ የነጭውን መሬት ሽቦ ችላ እያልኩ ነው። የሚያስጨንቀኝ አራት ገመዶች ብቻ አሉኝ።

በእያንዲንደ ጠመዝማዛ ሁሇት ግማሾችን መካከሌ ሁሇት ሁሇት ሁሇት መጠቀሚያን ስለሚጠቀም ሁሇት ሁሇት ሞገዴን ሁሇት ሁሇት ሁሇት ሁሇት ሁሇት ሁሇት ሁሇት ሁሇት ሁሇት ሁሇት ጊዛ በመጠቀም ስሇሆነ ሁሇተኛውን አሃዳዊ ሞተርዎን እንደ ባይፖላር ማሄድ ይፈልጉ ይሆናል። ተጨማሪ ጥቅል = የበለጠ ጉልበት። በአንድ ጥንድ በኩል የአሁኑን ያሂዱ (የመረጡትን ዋልታ በመጥቀስ) እና በተመሳሳይ ጊዜ የአሁኑን በሌላው ጥንድ በኩል ያሂዱ። ሁለተኛውን ጥንድ ሲያገናኙ ፣ ሞተሩ በየትኛው መንገድ እንደሚዞር ይመልከቱ። ይህን ጻፍ። አሁን በመረጡት የመጀመሪያ ጥንድ ላይ ያለውን ዋልታ ይለውጡ። ከዚያ ሁለተኛውን ጥንድ እንደገና ከእነሱ ዋልታ ጋር ያያይዙት። አቅጣጫውን ልብ ይበሉ። ከዚህ በመነሳት ሞተሩን በሁለቱም አቅጣጫ ለማሽከርከር ቅደም ተከተል ማወቅ መቻል አለብዎት። በእኔ ምሳሌ ፣ ሁለቱም በተቃራኒ ሰዓት አቅጣጫ መዞር አበቃ ፣ ስለዚህ እኔ በመረጥኩት መንገድ ቅደም ተከተሉን ማለፍ ሞተሩን CCW ይረግጣል።

ደረጃ 4 ሞተሩን ለሙከራ ድራይቭ መውሰድ

ለሙከራ ድራይቭ ሞተሩን መውሰድ
ለሙከራ ድራይቭ ሞተሩን መውሰድ

ለማይክሮፕሮሰሰር ፕሮግራም ገና ካልደረሱ ፣ ከጌቶ ልማት ኪት ወይም ከማንኛውም የተለያዩ የፒአይሲ ፕሮግራም አድራጊዎች የከፋ ሊያደርጉ ይችላሉ። ገመዶቹን በቀጥታ ወደ ማይክሮፎሮዎ ያዙሩት እና በሚከተለው ኮድ ያቃጥሉት

/* ትናንሽ የእርከን ሞተሮችን በማሽከርከር መጫወት። */

/ * የመዘግየት ተግባርን ያካትቱ */ #define F_CPU 1000000UL #ያካተተ/ * የፒን ዲፊቶች ለ ATTiny2313 *// * በሰዓት አቅጣጫ ትዕዛዝ */ #define BLUE _BV (PB0) #ዲፊን BLACK _BV (PB1) #ገላጭ RED _BV (PB2) #define ቢጫ _BV (PB3) #በደረጃ * / int ዋና (ባዶ) { / DDRB = 0xff) መካከል 200 / * ሚሊሰከንዶች መዘግየት። / * በሁሉም ቢ ፒኖች */ PORTB = 0x00 ላይ ውፅዓት ያንቁ። / * ሁሉንም ወደ 0v */ አስቀምጥ (1) {/ * ዋና loop እዚህ */ PORTB = BLUE; _ መዘግየት_ኤምኤስ (መዘግየት); PORTB = ጥቁር; _ መዘግየት_ኤምኤስ (መዘግየት); PORTB = ቀይ; _ መዘግየት_ኤምኤስ (መዘግየት); PORTB = ቢጫ; _ መዘግየት_ኤምኤስ (መዘግየት); }} ያ ኮድ ምን ያህል ቀላል ነው? በእውነት ቀላል። የሚያደርገው ነገር ቢኖር ከፒን-ስሞች ይልቅ ቀለሞችን በቀለም መጥቀስ እንድችል አንዳንድ ጥሩ ትርጓሜዎችን ማድረግ ነው ፣ ከዚያ በመካከላቸው ሊስተካከል ከሚችል መዘግየት ጋር በቅደም ተከተል ይቀይራቸዋል። ለጀማሪዎች በደረጃዎች መካከል ግማሽ ሰከንድ መዘግየትን መርጫለሁ። ለውጤቶቹ አጭር ቪዲዮውን ይመልከቱ። በእውነቱ በጨዋታዎ ላይ ከሆኑ የሞተርን ነጠላ-ደረጃ የማዕዘን ጥራት ለማወቅ በእያንዳንዱ ዑደት የእርምጃዎችን ብዛት ይቁጠሩ። (አዎ አዎ። PS። በቀላሉ በ 3.6 ቪ ጭነት ሳይኖር ያሽከረክራል። በቪዲዮ ውስጥ ባትሪውን ይመልከቱ።)

ደረጃ 5: ወደኋላ እና ወደ ፊት ማወዛወዝ

ስለዚህ በሰዓት አቅጣጫ መሮጥ አለብዎት። የበለጠ አስደሳች ነገር አለ? ትንሽ ኮድ-ማጽዳት ፣ እና ወደ ኋላ እና ወደ ፊት ልናስኬደው እንችላለን። በደረጃዎች ቀለል ባለ ዙር በደረጃዎች ውስጥ ማለፍ እንዲችሉ የሰዓት አቅጣጫውን ቅደም ተከተል ወደ ድርድር አስገባለሁ። አሁን በሰዓት አቅጣጫ ወይም በተቃራኒ ሰዓት አቅጣጫ ለመሄድ ቀለበቱን ወደ ላይ ወይም ወደ ታች ማካሄድ ይችላሉ።

int main (ባዶ) {const uint8_t መዘግየት = 50; const uint8_t በሰዓት አቅጣጫ = {ሰማያዊ ፣ ጥቁር ፣ ቀይ ፣ ቢጫ); uint8_t i; DDRB = 0xff; / * በሁሉም ቢ ፒኖች */ PORTB = 0x00 ላይ ውፅዓት ያንቁ። / * ሁሉንም ወደ 0v */ አስቀምጥ (1) {/ * ዋና ዙር እዚህ */ ለ (i = 0; i <= 3; i ++) {/ * ቀለሞቹን በሰዓት አቅጣጫ */ PORTB = በሰዓት አቅጣጫ ; _delay_ms (መዘግየት); } ለ (i = 3; i> = 0; i-) { / * በቀለሞቹ ውስጥ ይለፉ ccw * / PORTB = በሰዓት አቅጣጫ ; _delay_ms (መዘግየት); }}} ለኋላ-እና-ለቁጥጥጥጥጥጥጥጥጥጥጥጥጥጥጥጦሽ ያለውን ቪዲዮ ይመልከቱ።

ደረጃ 6-እኔ ግማሽ-ደረጃን በጭራሽ አላደርግም ፣ ምክንያቱም እኔ ግማሽ-ደረጃ ስላልሆንኩ…

የግጥም ግጥም ወደ ጎን ፣ ሞተርዎን በግማሽ ማራገፍ የሚገኝበት ነው። የበለጠ ከፍተኛ የአሁኑን ፣ ፈጣን ቅጽበታዊ ኃይልን ፣ እና የማዕዘን ጥራቱን ሁለት ጊዜ ያገኛሉ። በአጭሩ ግማሽ-ደረጃ-ከሰማያዊ ፣ ከጥቁር ፣ ከቀይ ፣ ከቢጫ ይልቅ ሞተሩን በሰማያዊ ፣ ሰማያዊ+ጥቁር ፣ ጥቁር ፣ ጥቁር+ቀይ ፣ ቀይ ፣ ቀይ+ቢጫ ፣ ቢጫ ፣ ቢጫ+ሰማያዊን ያሽከረክሩታል። ዋናው ነገር ለግማሽ ጊዜ ሁለቱንም ማግኔቶች በአንድ ጊዜ ማሳተፍ ነው። እና ሁለቱም ስብስቦች በተሰማሩባቸው ጊዜያት ሞተሩ በሁለቱ መካከል በግማሽ ይጠቁማል ፣ በ “ደረጃዎች” መካከል ያለውን አንግል እየቀነሰ እና ሞተሩ ይበልጥ በተቀላጠፈ እንዲዞር ያደርገዋል። ከቪዲዮው መረዳት ይችላሉ? እርግጠኛ አይደለሁም… አሁን የግማሽ እርከኑን የሚያደርገው የኮዱ ክፍል ይህንን ይመስላል

ባዶ ባዶ ግማሽ ደረጃ (uint16_t መዘግየት ፣ uint8_t አቅጣጫ ) {uint8_t i; ለ (i = 0; i <= 3; i ++) {PORTB = አቅጣጫ ; / * ነጠላ-ጥቅል ክፍል */ _delay_ms (መዘግየት); PORTB | = አቅጣጫ [i+1]; / * በግማሽ ደረጃ ውስጥ ይጨምሩ// _delay_ms (መዘግየት); }} የመጀመሪያው የ PORTB ትዕዛዝ አንድ ምሰሶን ወደ አዎንታዊ እና ቀሪዎቹን ሁሉ ወደ አሉታዊ ያዘጋጃል። ከዚያ ይጠብቃል። ከዚያ ሁለተኛው የ PORTB ትዕዛዝ የሁለተኛውን ምሰሶ (በሌላኛው ጠመዝማዛ ላይ) ወደ አወንታዊ (ሁለቱንም ጠመዝማዛዎች) ለ 1.4x (እና የአሁኑን 2x) ያሳትፋል። ሙሉ የፕሮግራም ዝርዝር ከዚህ በታች ተያይ isል። ሁለት ድርድሮች አሁን (በሰዓት አቅጣጫ ፣ በተቃራኒ ሰዓት አቅጣጫ) ይገለፃሉ እና በግማሽ ደረጃ ተግባር ውስጥ የ i+1 ግቤት ለመፍቀድ ሁለቱም እያንዳንዳቸው 5 አካላት አሏቸው።

ደረጃ 7 የሞተር ሾፌር ይጨምሩ

የሞተር ሾፌር ይጨምሩ
የሞተር ሾፌር ይጨምሩ
የሞተር ሾፌር ይጨምሩ
የሞተር ሾፌር ይጨምሩ
የሞተር ሾፌር ይጨምሩ
የሞተር ሾፌር ይጨምሩ

እስካሁን በጣም ጥሩ።

ብቸኛው ችግር ሞተሩ ያን ያህል ያን ያህል የማሽከርከር ችሎታ ያለው አይመስልም ፣ ይህ ሊሆን የቻለው ማይክሮፕሮሰሰር በአንድ ፒን ~ 50mA ብቻ በማውጣቱ ነው። ቀጣዩ ቀጣዩ እርምጃ የበለጠ ጭማቂ ለማቅረብ ከሞተር ሾፌር ጋር ማያያዝ ነው። ግን ከዚያ ትንሽ አስብ-እኔ በ 5 ቪ ብቻ እየነዳሁት ነው ፣ እና ጠመዝማዛው የመቋቋም አቅም ~ 125 ohms ነው። ይህ ማለት የሞተሩ ስዕል በአንድ ሚስማር 40 ሜአ ብቻ ነው ፣ እና በ (የበሬ!) AVR ቺፕ በጥሩ ሁኔታ መንዳት አለበት። ስለዚህ ሞተሩን እየነዳ ተጨማሪ ቮልቴጅን ለማግኘት ወደ SN754410 H- ድልድይ ቺፕ አገናኘሁት። ወረዳው በጣም ቀላል ነው። ከ AVR እያንዳንዱ ፒን ወደ ግብዓት ይሄዳል ፣ እና ተጓዳኝ የውጤት ፒኖች ወደ ሞተሩ ይሄዳሉ። ቺፕው ለሎጂክ ክፍሉ 5v ይፈልጋል ፣ እና በሞተር ክፍሉ ውስጥ ብዙ ተጨማሪ voltage ልቴጅ ሊወስድ ይችላል። በ 11.25 ቪ (ሶስት 3.6 ቪ ባትሪዎች) ላይ ማስኬዱ ትንሽ ረድቷል። ለኔ ጣት የበለጠ ጉልበተኛ ነው ፣ ግን አሁንም የኃይል ማመንጫ አይደለም። ምንም እንኳን ከኒኬል ያነሰ ለሆነ ሞተር መጥፎ አይደለም። እና አሁን ወረዳው አጠቃላይ ዓላማ ያለው ባይፖላር ስቴፐር ሞተር ነጂ ይሆናል። ኖቬምበር 29 ታክሏል - ትናንት ማታ ሞተሩን በ 12 ቪ ለተወሰነ ጊዜ አሂድ እና መሞቅ ጀመረ። እሱ የሚያስተጋባ የድግግሞሽ ችግር እንደነበረ ወይም በቀላሉ ለማዞሪያዎቹ በጣም ወቅታዊ ከሆነ እርግጠኛ አይደለሁም። ያም ሆነ ይህ ፣ ይህንን ትንሽ ሞተር በትላልቅ ቮልቴጅዎች እየነዱ ከሆነ ትንሽ ይጠንቀቁ።

ደረጃ 8: መጨረሻው

ታዲያ ምን ተማርኩ? በ “ቆንጆ” ግማሽ እርከን ሞድ ውስጥ እንኳን የእርከን ሞተርን በ AVR (እና በኤች ድልድይ ቺፕ) ማሽከርከር በጣም ቀላል ነው።

ምንም እንኳን ገና በትንሽ ስቴፐር ሞተሮች ምን እንደማደርግ እርግጠኛ አይደለሁም። ማንኛውንም አስተያየት?

የሚመከር: