DRV8825: gonilnik za koračne motorje

drv8825

Un voznik motorja To je vezje, ki omogoča upravljanje enosmernih motorjev na zelo preprost način. Ti krmilniki vam omogočajo upravljanje napetosti in tokov, pri katerih se napaja motor, za nadzor hitrosti vrtenja. Poleg tega služijo kot zaščitna metoda za preprečevanje poškodbe elektronike motorjev z omejevanjem toka, ki kroži (sekanje).

Torej, če boste ustvarili projekt DIY, ki bo vključujejo enega ali več enosmernih motorjevKakršne koli vrste so, zlasti za koračne motorje, si olajšajte uporabo motornega voznika. Čeprav obstajajo metode za drugačno uporabo, so moduli z motornimi gonilniki s tranzistorji veliko bolj praktični in enostavni. Pravzaprav se ti gonilniki pri svojem delu zanašajo na tranzistorje ...

Zakaj potrebujem voznika?

El voznik je potreben za nadzor motorja, kot sem že rekel. Upoštevati morate tudi, da plošča Arduino in njen mikrokrmilnik ne moreta poganjati gibanja motorja. Preprosto je zasnovan za digitalne signale, vendar ne bi deloval dobro, če bi bilo treba dobaviti malo več moči, kot jo zahtevajo te vrste motorjev. Zato morate imeti ta element med ploščo Arduino in motorji.

Vrste gonilnikov

To morate vedeti obstaja več vrst gonilnikov odvisno od tipa motorja, kateremu so namenjeni. To je pomembno vedeti, kako ga ločiti, da dobite pravega gonilnika:

  • Voznik za enopolarni motor: najpreprosteje jih je nadzorovati, saj tok, ki teče skozi tuljave, gre vedno v isto smer. Naloga voznika mora preprosto vedeti, katere tuljave mora aktivirati pri vsakem impulzu. Primer te vrste krmilnika bi bil ULN2003A.
  • Gonilnik za bipolarni motor: ti motorji so bolj zapleteni in tudi njihovi gonilniki, kot je DRV8825. V tem primeru jih je mogoče aktivirati s tokom v eno ali drugo smer (sever-jug in jug-sever). Voznik je tisti, ki določa smer spreminjanja polarnosti magnetnega polja, ki nastaja znotraj motorja. Najbolj znano vezje za smer vzvratne vožnje se imenuje Punete H, ki omogoča, da se motor vrti v obe smeri. Ta H-most je sestavljen iz več tranzistorjev.

Slednji so v zadnjih letih postali še bolj priljubljeni, ker so tudi nekateri vključeni 3D tiskalniki za nadzor tiskanja z glavo. Če nameravate namestiti 3D-tiskalnik ali ga že imate, ga boste potrebovali za nadzor motorja ali zamenjavo tega dela, če je bil poškodovan. Uporabljajo se tudi za robote, risalnike, običajne tiskalnike, skenerje, elektronska vozila in dolge itd.

DRV8825

Na trgu je več modelov gonilnikov. Na primer on DRV8825 je nadgrajena različica A4988. Ta gonilnik potrebuje samo dva digitalna izhoda iz mikrokrmilnika, da lahko pravilno upravlja motor. Le s tem lahko s tema dvema signaloma nadzorujete smer in korak motorja. To pomeni, da to omogoča korak ali da se motor vrti korak za korakom, namesto da bi se hitro vrtel kot drugi enostavni motorji.

DRV8825 omogoča delo z napetostmi, višjimi od napetosti, ki jih uporablja A4988, saj lahko doseže 45v namesto 35v A4988. Zmore tudi večje tokove, natančneje 2.5A, kar je pol ampera več kot A4988. Poleg vsega tega ta novi gonilnik doda nov način mikrokorakanja 1/32 (1/16 pri A4988), da lahko natančneje premika gred koračnega motorja.

V nasprotnem primeru so si precej podobni. Na primer, oba lahko brez težav dosežeta visoke delovne temperature. Zato, če jih spremljate z majhnim hladilnikom, veliko bolje (mnogi modeli ga že vključujejo), še posebej, če ga boste uporabljali nad 1A.

Če kapsula doseže visoke temperature, jo morate iz previdnosti izklopiti. Bilo bi lepo posvetovati se s podatkovni listi kupljenega modela in si oglejte najvišjo temperaturo, pri kateri lahko deluje. Zelo priporočljivo je dodati temperaturni senzor poleg gonilnika za spremljanje temperature in uporabo vezja, ki prekine delovanje, če doseže to mejno temperaturo ...

DRV8825 ima zaščita pred težavami prekomernega toka, kratkega stika, prenapetosti in pregrevanja. Zato so zelo zanesljive in odporne naprave. In vse za dokaj nizka cena v specializiranih trgovinah, kjer lahko najdete to komponento.

Mikro koraki

mikrokorakanje

S tehniko dosežemo lahko korake, ki so nižji od nominalne koračnega motorja, ki ga boste uporabljali. To pomeni, da zavoj razdelite na več delov, da boste lahko počasneje ali natančneje napredovali. V ta namen se tok, ki deluje na vsako tuljavo, spreminja z emulacijo analogne vrednosti z razpoložljivimi digitalnimi signali. Če se dosežejo popolni sinusoidni analogni signali in medsebojno odstopanje od 90 ° doseže želeno vrtenje.

Toda tega analognega signala seveda ne morete dobiti, ker delamo z digitalnimi signali. Zato jih je treba obravnavati tako, da poskušajo simulirati analogni signal z majhnimi skoki električnega signala. Ločljivost motorja bo odvisna od tega: 1/4, 1/8, 1/16, 1/32, ...

Za izbiro želene ločljivosti morate upravljati zatiče M0, M1 in M2 modula. Zatiči so povezani z ozemljitvijo ali GND z vlečnimi upori, zato bodo, če ni nič priključeno, vedno NIZKI ali 0. Če želite spremeniti to vrednost, boste morali prisiliti vrednost 1 ali HIGH. The vrednosti M0, M1, M2 tisti, ki morajo biti v skladu z ločljivostjo, so:

  • Celoten korak: nizka, nizka, nizka
  • 1/2: visoko, nizko, nizko
  • 1/4: nizko, visoko, nizko
  • 1/8: visoko, visoko, nizko
  • 1/16: nizko, nizko, visoko
  • 1/32: vse druge možne vrednosti

Pinout

Odcepitev DRV8825

El Gonilnik DRV8825 ima preprosto shemo povezave, čeprav ima dovolj zatičev lahko za manj strokovnjaka nekoliko zapleteno. To lahko vidite na zgornji sliki, vendar pazite, da boste modul pravilno postavili, ko gledate nožice, saj je običajno, da naredite napake in jih vzamete obrnjene, kar povzroči slabo povezavo in celo škodo.

Como priporočilo za povezavo gonilnika, priporočamo pravilno nastavitev in kalibracijo naprave, tako da sledite spodnjim korakom za pravilno delovanje in da je ne poškodujete:

  1. Gonilnik priključite na napetost brez priključenega motorja ali mikrostopanja.
  2. Izmerite z multimetrom napetost ki obstaja med GND in potenciometrom.
  3. Prilagodite potenciometer dokler ni pravilna vrednost.
  4. Zdaj lahko izklopite napajanje.
  5. V tem trenutku lahko priključite motor. In ponovno priključite napajanje potapljača.
  6. Z multimeter mero intenzivnost med voznikom in motorjem korak za korakom in lahko natančneje prilagodite potenciometer.
  7. Ponovno izklopite napajanje in zdaj ga lahko povežete z Arduino.

Če ne boste uporabljali mikrokorak lahko prilagodite jakost regulatorja do 100% nazivnega toka motorja. Če pa jo boste uporabljali, morate to mejo zmanjšati, saj bo vrednost, ki bo kasneje krožila, višja od izmerjene ...

l298n
Povezani članek:
L298N: modul za krmiljenje motorjev za Arduino

Integracija z Arduinom

Sheme ARduino in DRV8825

Če želite uporabljati gonilnik DRV8825 z Arduino, povezava je povsem preprosta kot lahko vidite na vrhu te elektronske sheme Fritzinga:

  • VMOT: priključen na moč do 45v.
  • GND: zemlja (motor)
  • SLP: pri 5v
  • RST: pri 5v
  • GND: do tal (logika)
  • STP: na Arduino pin 3
  • DIR: na Arduino pin 2
  • A1, A2, B1, B2: do koraka (motor)

Ko je povezava in pravilno nastavljena, je tudi koda za nadzor enostavna. Na primer za upravljanje koračnega motorja lahko uporabite naslednje koda v 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);
}

Svetujem vam, da preizkusite tudi nekaj primerov kode, ki jih boste našli med primeri, ki jih dobite z Arduino IDE, in poskusite spremeniti vrednosti, da se naučite, kako to vpliva na motor.

za más información o koračnih motorjih, njihovem upravljanju in programiranju Arduino, priporočam brezplačno prenesite naš tečaj programiranja.


3 komentarja, pustite svojega

Pustite svoj komentar

Vaš e-naslov ne bo objavljen. Obvezna polja so označena z *

*

*

  1. Za podatke odgovoren: Miguel Ángel Gatón
  2. Namen podatkov: Nadzor neželene pošte, upravljanje komentarjev.
  3. Legitimacija: Vaše soglasje
  4. Sporočanje podatkov: Podatki se ne bodo posredovali tretjim osebam, razen po zakonski obveznosti.
  5. Shranjevanje podatkov: Zbirka podatkov, ki jo gosti Occentus Networks (EU)
  6. Pravice: Kadar koli lahko omejite, obnovite in izbrišete svoje podatke.

  1.   Jezus je dejal

    Pozdravljeni, gradim domači CNC z drv8825, moje vprašanje je, če lahko vgradim motorje nema 23 2.8a, saj so nekoliko cenejši od 2.5a, bi imel težave? Hvala vam

    1.    Isaac je dejal

      Pozdravljeni, Jezus,
      Hvala, ker ste nas prebrali. Kar zadeva vaše vprašanje, bodite pozorni na gonilnik, ki ga boste uporabljali, da bo združljiv s temi motorji. Primer DRV8825 je do največ 2.5A. Oglejte si TB6600, ki se lahko dvigne na 3.5 A, če se dobro spomnim ...
      Lep pozdrav!

  2.   Rodolfo je dejal

    Salaudos. Kolikšna je vrednost elektrolitskega kondenzatorja, ki je v napajalniku motorja. Hvala.