DRV8825: žingsninių variklių vairuotojas

drv8825

Un variklio vairuotojas Tai grandinė, leidžianti labai paprastu būdu valdyti nuolatinės srovės variklius. Šie valdikliai leidžia valdyti įtampą ir sroves, kuriomis tiekiamas variklis, kad būtų galima valdyti sukimosi greitį. Be to, jie naudojami kaip apsaugos metodas, siekiant išvengti variklių elektronikos pažeidimo ribojant cirkuliacinę srovę (kapojimą).

Todėl, jei ketinate sukurti „pasidaryk pats“ projektą, kuris tai padarys apima vieną ar daugiau nuolatinės srovės varikliųKad ir kokie jie būtų, ypač stepper varikliams, turėtumėte naudoti variklio tvarkyklę, kad jums būtų lengviau. Nors yra būdų, kaip tai padaryti kitaip, naudojant tranzistorius, moduliai su varikliais yra daug praktiškesni ir paprastesni. Tiesą sakant, šie vairuotojai, atlikdami savo darbą, pasikliauja tranzistoriais ...

Kodėl man reikia vairuotojo?

El vairuotojas yra būtinas variklio valdymui, kaip jau sakiau anksčiau. Be to, turite nepamiršti, kad „Arduino“ plokštė ir jos mikrovaldiklis negali valdyti variklio. Jis tiesiog sukurtas skaitmeniniams signalams, tačiau jis neveiktų gerai, kai reikia tiekti šiek tiek daugiau energijos, kaip to reikalauja šių tipų varikliai. Štai kodėl jūs turite turėti šį elementą tarp „Arduino“ plokštės ir variklių.

Vairuotojų tipai

Jūs turite tai žinoti yra keli vairuotojų tipai atsižvelgiant į variklio tipą, kuriam jie skirti. Tai svarbu žinoti, kaip jį atskirti, norint gauti tinkamą vairuotoją:

  • Vienpolio variklio vairuotojas: juos paprasčiausia valdyti, nes ritėmis tekanti srovė visada eina ta pačia kryptimi. Vairuotojo darbas tiesiog turi žinoti, kurias rites jis turi įjungti kiekvienu impulsu. Šio tipo valdiklių pavyzdys būtų ULN2003A.
  • Bipolinio variklio vairuotojas: šie varikliai yra sudėtingesni ir jų tvarkyklės taip pat, kaip ir DRV8825. Tokiu atveju jie gali būti įjungiami srove viena ar kita kryptimi (šiaurės-pietų ir pietų-šiaurės). Vairuotojas nusprendžia, kaip pakeisti variklio viduje susidarančio magnetinio lauko poliškumą. Geriausiai žinoma grandinė, skirta krypčiai pakeisti, vadinama Punete H, leidžiančia varikliui suktis į abi puses. Tas H tiltas susideda iš kelių tranzistorių.

Pastarieji pastaraisiais metais dar labiau išpopuliarėjo, nes jie taip pat yra įtraukti į kai kuriuos 3D spausdintuvai kontroliuoti spausdinimą galvute. Gali būti, kad jei ketinate montuoti 3D spausdintuvą arba jį jau turite, jums reikės vieno iš jų, kad galėtumėte valdyti variklį arba pakeisti šią dalį, jei ji buvo pažeista. Jie taip pat naudojami robotams, braižytuvams, įprastiems spausdintuvams, skaitytuvams, elektroninėms transporto priemonėms ir ilgiems automobiliams.

DRV8825

Rinkoje yra keli vairuotojų modeliai. Pavyzdžiui, jis DRV8825 yra patobulinta A4988 versija. Šiam vairuotojui reikia tik dviejų skaitmeninių mikrovaldiklio išėjimų, kad jis galėtų tinkamai valdyti variklį. Tik tuo naudodamiesi šiais dviem signalais galite valdyti variklio kryptį ir žingsnį. Tai reiškia, kad tai leidžia žengti arba variklis sukasi žingsnis po žingsnio, o ne greitai sukasi kaip kiti paprasti varikliai.

DRV8825 leidžia dirbti su didesne įtampa nei naudojama A4988, nes jis gali siekti 45v vietoj A35 4988v. Jis taip pat gali valdyti didesnes sroves, konkrečiai - 2.5 A, tai yra perpus stipriau nei A4988. Be viso to, šis naujas vairuotojas prideda naują 1/32 mikrostepingo režimą (1/16 A4988 modeliui), kad būtų galima tiksliau judinti žingsninio variklio ašį.

Priešingu atveju jie yra gana panašūs. Pavyzdžiui, abu be problemų gali pasiekti aukštą darbinę temperatūrą. Todėl, jei juos lydite su mažu radiatoriumi, daug geriau (daugelyje modelių jau yra), ypač jei ketinate jį naudoti virš 1A.

Jei kapsulė pasiekia aukštą temperatūrą, atsargumo priemonėmis turėtumėte ją išjungti. Būtų malonu pasikonsultuoti su duomenų lapuose įsigyto modelio ir pamatysite maksimalią temperatūrą, kurioje jis gali veikti. Labai rekomenduojama pridėti temperatūros jutiklį šalia vairuotojo, kad būtų galima stebėti temperatūrą ir naudoti grandinę, kuri nutraukia darbą, jei ji pasiekia tą ribinę temperatūrą.

DRV8825 turi apsauga nuo problemų viršsrovės, trumpojo jungimo, viršįtampio ir perkaitimo. Todėl tai yra labai patikimi ir atsparūs įtaisai. Ir viskas už gana žema kaina specializuotose parduotuvėse, kur galite rasti šį komponentą.

Mikrostepingas

mikrostepingas

Su technika galima pasiekti mažesnius nei nominalus žingsnius žingsninio variklio, kurį ketinate naudoti. Tai yra, padalykite posūkį į daugiau dalių, kad galėtumėte judėti lėčiau arba tiksliau. Norėdami tai padaryti, kiekvienai ritei taikoma srovė keičiama imituojant analoginę vertę su prieinamais skaitmeniniais signalais. Jei būtų pasiekti tobuli sinusoidiniai analoginiai signalai ir 90 ° ne fazės vienas su kitu, būtų pasiektas norimas sukimasis.

Bet, žinoma, jūs negalite gauti to analoginio signalo, nes mes dirbame su skaitmeniniais signalais. Štai kodėl jie turėtų būti traktuojami bandant imituoti analoginį signalą per mažus elektrinio signalo šuolius. Nuo to priklausys variklio skiriamoji geba: 1/4, 1/8, 1/16, 1/32, ...

Norėdami pasirinkti norimą skiriamąją gebą, turite valdyti modulio kaiščius M0, M1 ir M2. Smeigtukai yra prijungti prie žemės arba GND per traukimo rezistorius, taigi, jei nieko nebus prijungta, jie visada bus LOW arba 0. Norėdami pakeisti šią vertę, turėsite priversti 1 arba HIGH vertę. vertės M0, M1, M2 atitinkamai tie, kurie turi atitikti rezoliuciją, yra šie:

  • Visas žingsnis: Žemas, Žemas, Žemas
  • 1/2: Aukštas, Žemas, Žemas
  • 1/4: Žemas, Aukštas, Žemas
  • 1/8: Aukštas, Aukštas, Žemas
  • 1/16: Žemas, Žemas, Aukštas
  • 1/32: visos kitos galimos vertės

pinout

DRV8825 kištukas

El DRV8825 tvarkyklė turi paprastą ryšio schemą, nors turint pakankamai smeigtukų, mažiau ekspertui gali būti šiek tiek sudėtinga. Tai galite pamatyti aukščiau esančiame paveikslėlyje, tačiau žiūrėdami į kaiščius būtinai padėkite modulį tinkamai, nes dažniausiai daroma klaidų ir laikoma apverstomis, o tai lemia blogą ryšį ir net žalą.

Komo rekomendacija prijungti vairuotoją, rekomenduojama tinkamai sureguliuoti ir sukalibruoti prietaisą atlikdami toliau nurodytus veiksmus, kad tinkamai veiktų, ir jo nepažeisti:

  1. Prijunkite tvarkyklę prie įtampos be variklio prijungimo ar mikrostrūkčio.
  2. Matuokite multimetru įtampa kuris egzistuoja tarp GND ir potenciometro.
  3. Sureguliuokite potenciometrą kol ji bus tinkama vertė.
  4. Dabar galite išjunkite maitinimą.
  5. Šiuo metu taip, jūs galite prijunkite variklį. Ir vėl prijunkite maitinimą narui.
  6. Su multimetru intensyvumas tarp vairuotojo ir variklio žingsnis po žingsnio ir galite tiksliau sureguliuoti potenciometrą.
  7. Vėl išjunkite maitinimą ir dabar galite jį prijungti prie „Arduino“.

Jei nesiruošiate naudoti mikrostepingas galite reguliuoti reguliatoriaus intensyvumą iki 100% vardinės variklio srovės. Bet jei ketinate juo naudotis, turite sumažinti šią ribą, nes paskui cirkuliuojanti vertė bus didesnė už išmatuotą ...

l298n
Susijęs straipsnis:
L298N: „Arduino“ variklių valdymo modulis

Integracija su „Arduino“

„ARduino“ ir „DRV8825“ schema

Norėdami naudoti DRV8825 tvarkyklę su „Arduino“, jungtis yra gana paprasta kaip matote šios „Fritzing“ elektroninės schemos viršuje:

  • VMOT: prijungtas prie maitinimo iki 45v maks.
  • GND: žemė (variklis)
  • SLP: prie 5v
  • RST: esant 5v
  • BND: į žemę (logika)
  • STP: į „Arduino“ 3 kaištį
  • DIR: į „Arduino“ 2 kaištį
  • A1, A2, B1, B2: pakopai (varikliui)

Prijungus ir tinkamai sureguliavus, jo valdymo kodas taip pat yra paprastas. Pavyzdžiui, norėdami valdyti žingsninį variklį, galite naudoti šiuos veiksmus kodas „Arduino IDE“:

const int dirPin = 2;
const int stepPin = 3;
 
const int steps = 200;
int stepDelay;
 
void setup() {
   // Configura los pines como salida
   pinMode(dirPin, OUTPUT);
   pinMode(stepPin, OUTPUT);
}
 
void loop() {
   //Se pone una dirección y velocidad
   digitalWrite(dirPin, HIGH);
   stepDelay = 250;
   // Se gira 200 pulsos para hacer vuelta completa del eje
   for (int x = 0; x < 200; x++) {
      digitalWrite(stepPin, HIGH);
      delayMicroseconds(stepDelay);
      digitalWrite(stepPin, LOW);
      delayMicroseconds(stepDelay);
   }
   delay(1000);
 
   //Ahora se cambia la dirección de giro y se aumenta la velocidad
   digitalWrite(dirPin, LOW);
   stepDelay = 150;
   //Se hacen dos vueltas completas
   for (int x = 0; x < 400; x++) {
      digitalWrite(stepPin, HIGH);
      delayMicroseconds(stepDelay);
      digitalWrite(stepPin, LOW);
      delayMicroseconds(stepDelay);
   }
   delay(1000);
}

Patariu išbandyti keletą kodų pavyzdžių, kuriuos rasite tarp „Arduino IDE“ pateiktų pavyzdžių, ir pabandykite modifikuoti vertes, kad sužinotumėte, kaip tai veikia variklį.

į más información apie žingsninius variklius, jų valdymą ir „Arduino“ programavimą, rekomenduoju atsisiųskite mūsų programavimo kursą nemokamai.


3 komentarai, palikite savo

Palikite komentarą

Jūsų elektroninio pašto adresas nebus skelbiamas. Privalomi laukai yra pažymėti *

*

*

  1. Atsakingas už duomenis: Miguel Ángel Gatón
  2. Duomenų paskirtis: kontroliuoti šlamštą, komentarų valdymą.
  3. Įteisinimas: jūsų sutikimas
  4. Duomenų perdavimas: Duomenys nebus perduoti trečiosioms šalims, išskyrus teisinius įsipareigojimus.
  5. Duomenų saugojimas: „Occentus Networks“ (ES) talpinama duomenų bazė
  6. Teisės: bet kuriuo metu galite apriboti, atkurti ir ištrinti savo informaciją.

  1.   Jėzus sakė

    Sveiki, kuriu naminį CNC su drv8825, mano klausimas, ar galėčiau įdėti nema 23 2.8a variklius, nes jie yra šiek tiek pigesni nei 2.5a, ar turėčiau problemų? Ačiū

    1.    Izaokas sakė

      Labas Jėzau,
      Ačiū, kad mus perskaitei. Kalbant apie jūsų klausimą, stebėkite vairuotoją, kurį ketinate naudoti, kad jis būtų suderinamas su tais varikliais. DRV8825 korpusas yra ne didesnis kaip 2.5 A. Pažvelkite į TB6600, kuris gali pakilti iki 3.5 A, jei gerai pamenu ...
      Pasveikinimas!

  2.   Rodolfo sakė

    Salaudos. Kokia yra elektrolitinio kondensatoriaus, esančio variklio maitinimo šaltinyje, vertė. Dėkoju.