DRV8825: pokretač koračnih motora

drv8825

Un vozač motora To je sklop koji omogućuje upravljanje istosmjernim motorima na vrlo jednostavan način. Ovi kontroleri omogućuju upravljanje naponima i strujama pri kojima se napaja motor kako bi se kontrolirala brzina vrtnje. Uz to, služe kao zaštitna metoda za sprečavanje oštećenja elektronike motora ograničavanjem struje koja cirkulira (usitnjavanjem).

Stoga, ako ćete stvoriti projekt „uradi sam“, koji će uključuju jedan ili više istosmjernih motoraBez obzira na vrstu, posebno za koračne motore, trebali biste koristiti motorni pogon kako biste si olakšali posao. Iako postoje metode da se to učini drugačije, pomoću tranzistora, moduli s pokretačkim pogonima puno su praktičniji i jednostavniji. U stvari, ti se pokretači oslanjaju na tranzistore da rade svoj posao ...

Zašto trebam vozača?

El vozač je potreban za upravljanje motorom, kao što sam već rekao. Također, morate imati na umu da ploča Arduino i njezin mikrokontroler nisu sposobni pokretati kretanje motora. Jednostavno je dizajniran za digitalne signale, ali ne bi dobro funkcionirao kad se mora isporučiti malo više snage poput one koju zahtijevaju ove vrste motora. Zato ovaj element morate imati između ploče Arduino i motora.

Vrste vozača

To morate znati postoji nekoliko vrsta upravljačkih programa ovisno o tipu motora kojem su namijenjeni. Ovo je važno znati kako ga razlikovati da biste dobili pravog pokretača:

  • Vozač za unipolarni motor: njima je najjednostavnije upravljati, jer struja koja teče kroz zavojnice ide uvijek u istom smjeru. Vozačev posao jednostavno mora znati koje zavojnice mora aktivirati na svakom impulsu. Primjer ove vrste kontrolera bio bi ULN2003A.
  • Vozač za bipolarni motor: ovi su motori složeniji i njihovi pokretači također, poput DRV8825. U tom slučaju mogu se aktivirati strujom u jednom ili drugom smjeru (sjever-jug i jug-sjever). Vozač je taj koji odlučuje smjer promjene polariteta magnetskog polja koje se stvara unutar motora. Najpoznatiji krug za okretanje smjera naziva se Punete H, omogućavajući motoru da se okreće u oba smjera. Taj H-most sastoji se od nekoliko tranzistora.

Potonji su posljednjih godina postali još popularniji jer su i oni uključeni u neke 3D pisači za kontrolu tiskanja glavom. Moguće je da će vam, ako namjeravate postaviti 3D printer ili ga već imate, trebati jedan od njih da biste mogli upravljati motorom ili zamijeniti ovaj dio ako je oštećen. Također se koriste za robote, crtače, konvencionalne pisače, skenere, elektronička vozila i dugačke itd.

DRV8825

Na tržištu postoji nekoliko modela upravljačkih programa. Na primjer, njega DRV8825 je nadograđena verzija A4988. Ovom pokretaču potrebna su samo dva digitalna izlaza iz mikrokontrolera da bi mogao pravilno rukovati motorom. Samo s tim možete upravljati smjerom i korakom motora s ova dva signala. Odnosno, s ovim je moguće izvesti korake ili da se motor okreće korak po korak, umjesto da se brzo okreće poput ostalih jednostavnih motora.

DRV8825 omogućuje rad s naponima višim od onih koje koristi A4988, budući da može doseći 45v umjesto 35v A4988. Može podnijeti i veće struje, točnije 2.5A, što je za pola pojačala više od A4988. Uz sve to, ovaj novi pokretački program dodaje novi način mikrokoračenja 1/32 (1/16 za A4988) kako bi mogao preciznije pomicati osovinu koračnog motora.

inače prilično su slični. Na primjer, obje mogu bez problema doseći visoke radne temperature. Stoga, ako ih popratite s malim hladnjakom, puno bolje (mnogi ga modeli već uključuju), pogotovo ako ćete ga koristiti iznad 1A.

Ako inkapsulacija dosegne visoke temperature, iz predostrožnosti biste je trebali isključiti. Bilo bi lijepo posavjetovati se s liste podataka modela koji ste kupili i pogledajte maksimalnu temperaturu na kojoj može raditi. Dodavanje temperaturnog senzora pored upravljačkog programa za praćenje temperature i korištenje kruga koji prekida rad ako dosegne tu graničnu temperaturu bilo bi vrlo preporučljivo ...

DRV8825 ima zaštita od problema prekomjerne struje, kratkog spoja, prenapona i prekomjerne temperature. Stoga su vrlo pouzdani i otporni uređaji. I sve za prilično niska cijena u specijaliziranim prodavaonicama u kojima možete pronaći ovu komponentu.

Mikrokoračenje

mikrokoračenje

Uz tehniku mogu se postići koraci mikrokoraka niži od nominalnog koračnog motora koji ćete koristiti. Odnosno, podijelite skretanje na više dijelova kako biste mogli sporije ili preciznije napredovati. Da bi se to učinilo, struja primijenjena na svaku zavojnicu mijenja se oponašanjem analogne vrijednosti s dostupnim digitalnim signalima. Ako se postignu savršeni sinusoidni analogni signali i međusobno izvan faze 90º, postigla bi se željena rotacija.

Ali naravno, ne možete dobiti taj analogni signal, jer radimo s digitalnim signalima. Zato ih treba tretirati kako bi pokušali simulirati analogni signal kroz male skokove u električnom signalu. Razlučivost motora ovisit će o ovome: 1/4, 1/8, 1/16, 1/32, ...

Da biste odabrali željenu razlučivost, morate kontrolirati M0, M1 i M2 pinove modula. Pribadače su spojene na masu ili na masu pomoću povlačnih otpornika, pa ako ništa nije povezano, uvijek će biti NISKO ili 0. Da biste promijenili ovu vrijednost, morat ćete prisiliti vrijednost 1 ili VISOKO. The vrijednosti M0, M1, M2 odnosno oni koji moraju biti u skladu s rezolucijom, jesu:

  • Puni korak: Nisko, Nisko, Nisko
  • 1/2: Visoka, Niska, Niska
  • 1/4: Nisko, Visoko, Nisko
  • 1/8: Visoko, Visoko, Nisko
  • 1/16: Nisko, Nisko, Visoko
  • 1/32: sve ostale moguće vrijednosti

Pinout

Isključivanje DRV8825

El Vozač DRV8825 ima jednostavnu shemu povezivanja, iako imati dovoljno pinova može biti malo komplicirano za manje stručne osobe. Možete ga vidjeti na gornjoj slici, ali pri postavljanju modula pripazite da modul postavite pravilno, jer je uobičajeno griješiti i uzimati ga obrnuto, što rezultira lošom vezom, pa čak i oštećenjem.

Como preporuka za povezivanje upravljačkog programa, preporučuje se pravilno podešavanje i kalibriranje uređaja slijedeći dolje navedene korake radi ispravnog rada i da ga ne oštetite:

  1. Spojite upravljački program na napon bez priključenog motora ili mikrokoračenja.
  2. Izmjerite multimetrom napetost koji postoji između GND-a i potenciometra.
  3. Podesite potenciometar sve dok nije odgovarajuća vrijednost.
  4. Sad to možete isključite napajanje.
  5. U ovom trenutku da možete spojiti motor. I ponovno spojite struju na ronioca.
  6. S multimetarskom mjerom intenzitet između vozača i motora korak po korak i možete izvršiti finiju prilagodbu potenciometra.
  7. Ponovo isključite napajanje i sada ga možete povezati s Arduinom.

Ako nećete koristiti mikrokorakom možete prilagoditi intenzitet regulatora do 100% nazivne struje motora. Ali ako ćete ga koristiti, morate ograničiti ovu granicu, jer će vrijednost koja će tada kružiti biti veća od izmjerene ...

l298n
Povezani članak:
L298N: modul za upravljanje motorima za Arduino

Integracija s Arduinom

Sheme ARduino i DRV8825

Da biste koristili upravljački program DRV8825 s Arduinom, veza je sasvim jednostavna kao što možete vidjeti na vrhu ove elektroničke sheme iz Fritzinga:

  • VMOT: spojen na napajanje do najviše 45v.
  • GND: tlo (motor)
  • SLP: na 5v
  • RST: na 5v
  • GND: uzemljenje (logika)
  • STP: na Arduino pin 3
  • DIR: na Arduino pin 2
  • A1, A2, B1, B2: do koračnog koraka (motora)

Jednom povezan i pravilno podešen, kôd za njegovo upravljanje također je jednostavan. Na primjer, za upravljanje koračnim motorom možete koristiti sljedeće kod u 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);
}

Savjetujem vam da isprobate i neke primjere koda koje ćete pronaći među primjerima koji dolaze s Arduino IDE-om i pokušajte modificirati vrijednosti da biste saznali kako to utječe na motor.

u više o koračnim motorima, njihovom upravljanju i Arduino programiranju, preporučujem preuzmite naš tečaj programiranja besplatno.


3 komentara, ostavi svoj

Ostavite svoj komentar

Vaša email adresa neće biti objavljen. Obavezna polja su označena s *

*

*

  1. Za podatke odgovoran: Miguel Ángel Gatón
  2. Svrha podataka: Kontrola neželjene pošte, upravljanje komentarima.
  3. Legitimacija: Vaš pristanak
  4. Komunikacija podataka: Podaci se neće dostavljati trećim stranama, osim po zakonskoj obvezi.
  5. Pohrana podataka: Baza podataka koju hostira Occentus Networks (EU)
  6. Prava: U bilo kojem trenutku možete ograničiti, oporaviti i izbrisati svoje podatke.

  1.   Isus dijo

    Pozdrav, gradim domaći CNC s drv8825, moje je pitanje mogu li staviti 23 motora bez 2.8a, jer su nešto jeftiniji od 2.5a, bih li imao problema? Hvala vam

    1.    Isaac dijo

      Pozdrav Isuse,
      Hvala što ste nas pročitali. Što se tiče vašeg pitanja, pripazite na upravljački program koji ćete koristiti kako bi bio kompatibilan s tim motorima. Kućište DRV8825 je do maksimalno 2.5A. Pogledajte TB6600, koji se može popeti na 3.5 A ako se dobro sjećam ...
      Pozdrav!

  2.   Rodolfo dijo

    Salaudos. Kolika je vrijednost elektrolitskog kondenzatora koji se nalazi u napajanju motora. Hvala.