DRV8825: pohon krokových motorov

drv8825

Un vodič motora Jedná sa o obvod, ktorý umožňuje ovládanie motorov na jednosmerný prúd veľmi jednoduchým spôsobom. Tieto ovládače vám umožňujú riadiť napätia a prúdy, ktorými je motor napájaný, aby bolo možné regulovať rýchlosť otáčania. Okrem toho slúžia ako ochranná metóda na zabránenie poškodeniu elektroniky motorov obmedzením cirkulujúceho prúdu (sekaním).

Preto, ak sa chystáte vytvoriť DIY projekt, ktorý bude obsahovať jeden alebo viac jednosmerných motorovNech už sú to akékoľvek typy, najmä pre krokové motory, na uľahčenie práce by ste mali použiť motorický driver. Aj keď existujú metódy, ako to urobiť inak, pomocou tranzistorov sú moduly s motorovými budičmi oveľa praktickejšie a priamočiarejšie. V skutočnosti sa títo vodiči pri svojej práci spoliehajú na tranzistory ...

Prečo potrebujem vodičák?

El vodič je potrebný na ovládanie motora, ako som už povedal. Musíte tiež pamätať na to, že doska Arduino a jej mikrokontrolér nie sú schopné napájať pohyb motora. Je jednoducho navrhnutý pre digitálne signály, ale nefungoval by dobre, keď je potrebné dodať trochu viac energie, ako je to vyžadované týmito typmi motorov. Preto musíte mať tento prvok medzi doskou Arduino a motormi.

Typy ovládačov

Musíte to vedieť existuje niekoľko typov ovládačov v závislosti od typu motora, pre ktorý sú určené. Je dôležité vedieť, ako to odlíšiť, aby ste získali správny ovládač:

  • Ovládač pre unipolárny motor: sú najjednoduchšie ovládateľné, pretože prúd pretekajúci cievkami ide vždy rovnakým smerom. Úloha vodiča musí jednoducho vedieť, ktoré cievky musí aktivovať pri každom impulze. Príkladom tohto typu radiča je ULN2003A.
  • Budič pre bipolárny motor: tieto motory sú zložitejšie a tiež ich ovládače, ako napríklad DRV8825. V takom prípade je možné ich aktivovať prúdom v jednom alebo druhom smere (sever-juh a juh-sever). Je to vodič, ktorý rozhoduje o smere zmeny polarity magnetického poľa vytváraného vo vnútri motora. Najznámejší obvod na obrátenie smeru sa nazýva Punete H, ktorý umožňuje rotáciu motora v oboch smeroch. Tento mostík H sa skladá z niekoľkých tranzistorov.

Posledné menované sa v posledných rokoch stali ešte populárnejšími, pretože sú tiež súčasťou niektorých 3D tlačiarne na kontrolu tlače s hlavou. Je možné, že ak máte v úmysle namontovať 3D tlačiareň alebo ak ju už máte, budete potrebovať jednu z nich, aby ste mohli ovládať motor alebo vymeniť túto časť, ak bola poškodená. Používajú sa tiež pre roboty, plotre, bežné tlačiarne, skenery, elektronické vozidlá a dlhé atď.

DRV8825

Na trhu existuje niekoľko modelov ovládačov. Napríklad jemu DRV8825 je inovovaná verzia A4988. Tento ovládač potrebuje iba dva digitálne výstupy z mikrokontroléra, aby mohol správne pracovať s motorom. Iba pomocou týchto dvoch signálov môžete ovládať smer a krok motora. To znamená, že s týmto je možné vykonať krokovanie alebo motor sa môže otáčať krok za krokom namiesto toho, aby sa otáčal rýchlo ako iné jednoduché motory.

DRV8825 umožňuje pracovať s napätím vyšším, než aké používa A4988 môže dosiahnuť 45v namiesto 35v A4988. Zvládne aj vyššie prúdy, konkrétne 2.5 A, čo je o polovicu zosilňovača viac ako v prípade A4988. Okrem toho všetkého tento nový ovládač pridáva nový režim mikrokrokovania 1/32 (1/16 pre A4988), aby bolo možné presnejšie posúvať hriadeľ krokového motora.

inak sú si dosť podobné. Napríklad oba môžu bez problémov dosiahnuť vysoké prevádzkové teploty. Preto, ak ich sprevádzate s malým chladičom, oveľa lepšie (mnoho modelov ho už má zabudovaných), najmä ak ho budete používať nad 1A.

Ak zapuzdrenie dosahuje vysoké teploty, mali by ste ho preventívne vypnúť. Bolo by pekné poradiť sa s listoch modelu, ktorý ste si kúpili, a uvidíte maximálnu teplotu, pri ktorej môže pracovať. Dôrazne sa odporúča pridať snímač teploty vedľa vodiča na sledovanie teploty a použitie obvodu, ktorý preruší činnosť, ak dosiahne túto hraničnú teplotu ...

Model DRV8825 má ochrana pred problémami nadprúdu, skratu, prepätia a prehriatia. Preto sú to veľmi spoľahlivé a odolné zariadenia. A všetko pre dosť nízka cena v špecializovaných predajniach, kde nájdete tento komponent.

Mikrokrok

mikrokrok

S technikou je možné dosiahnuť kroky mikrokrokovania nižšie ako nominálny krok krokového motora, ktorý budete používať. To znamená, že si odbočku rozdelíte na viac častí, aby ste mohli postupovať pomalšie alebo presnejšie. Za týmto účelom sa prúd aplikovaný na každú cievku mení emuláciou analógovej hodnoty s dostupnými digitálnymi signálmi. Ak sú dosiahnuté dokonalé sínusové analógové signály a sú navzájom 90 ° mimo fázy, bude dosiahnuté požadované natočenie.

Ale samozrejme, ten analógový signál nemôžete získať, pretože pracujeme s digitálnymi signálmi. Preto by sa s nimi malo zaobchádzať tak, aby sa pokúsili simulovať analógový signál pomocou malých skokov v elektrickom signáli. Rozlíšenie motora bude závisieť od tohto: 1/4, 1/8, 1/16, 1/32, ...

Ak chcete zvoliť požadované rozlíšenie, musíte ovládať piny M0, M1 a M2 modulu. Kolíky sú pripojené k zemi alebo GND pomocou pull-up rezistorov, takže ak nie je nič pripojené, budú vždy LOW alebo 0. Ak chcete zmeniť túto hodnotu, budete musieť vynútiť hodnotu 1 alebo HIGH. The hodnoty M0, M1, M2 respektíve tie, ktoré musia byť podľa uznesenia, sú:

  • Celý krok: Nízky, Nízky, Nízky
  • 1/2: Vysoká, Nízka, Nízka
  • 1/4: Nízka, Vysoká, Nízka
  • 1/8: Vysoká, Vysoká, Nízka
  • 1/16: Nízka, nízka, vysoká
  • 1/32: všetky ďalšie možné hodnoty

pinov

Vývod DRV8825

El Ovládač DRV8825 má jednoduchú schému pripojenia, aj keď pre menej znalca môže byť dostatok pinov trochu komplikované. Vidíte to na obrázku vyššie, ale uistite sa, že ste modul správne umiestnili, keď sa pozeráte na kolíky, pretože bežne sa robíte chyby a berte ich obrátene, čo vedie k zlému spojeniu alebo dokonca k poškodeniu.

como odporúčanie na pripojenie vodiča, odporúča sa zariadenie správne nastaviť a nakalibrovať podľa pokynov uvedených nižšie, aby bola zaistená správna funkcia a aby nedošlo k jeho poškodeniu:

  1. Pripojte vodič k napätiu napájanie bez pripojeného motora alebo mikrokrokovania.
  2. Merajte pomocou multimetra napätie ktorý existuje medzi GND a potenciometrom.
  3. Nastavte potenciometer kým to nie je správna hodnota.
  4. Teraz môžete vypnite napájanie.
  5. V tejto chvíli môžete pripojiť motor. A znovu pripojte napájanie k potápačovi.
  6. Pomocou multimetra intenzita medzi vodičom a motorom krok za krokom a môžete vykonať jemnejšie nastavenie potenciometra.
  7. Vypnite napájanie znova a teraz ho môžete pripojiť k Arduinu.

Ak sa chystáte použiť mikrokrokovaním môžete nastaviť intenzitu regulátora až do 100% menovitého prúdu motora. Ak ho ale chcete používať, musíte tento limit znížiť, pretože hodnota, ktorá bude neskôr cirkulovať, bude vyššia ako nameraná ...

l298n
Súvisiaci článok:
L298N: modul na riadenie motorov pre Arduino

Integrácia s Arduino

Schémy ARduino a DRV8825

Ak chcete použiť ovládač DRV8825 s Arduinom, spojenie je celkom jednoduché ako vidíte hore v tejto elektronickej schéme od Fritzinga:

  • VMOT: pripojený na napájanie maximálne do 45 V.
  • GND: zem (motor)
  • SLP: na 5v
  • RST: na 5v
  • GND: k zemi (logika)
  • STP: na pin Arduino 3
  • DIR: na pin Arduino 2
  • A1, A2, B1, B2: na krokový motor (motor)

Po pripojení a správnom nastavení je kód na jeho ovládanie tiež priamy. Napríklad na ovládanie krokového motora môžete použiť nasledovné kód 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);
}

Odporúčam vám vyskúšať aj niektoré príklady kódu, ktoré nájdete medzi príkladmi, ktoré sa dodávajú s Arduino IDE, a vyskúšať úpravy hodnôt, aby ste sa dozvedeli, ako to ovplyvňuje motor.

na viac informácií o krokových motoroch, ich riadení a programovaní Arduina, odporúčam stiahnite si náš kurz programovania zadarmo.


3 komentáre, nechajte svoj

Zanechajte svoj komentár

Vaša e-mailová adresa nebude zverejnená. Povinné položky sú označené *

*

*

  1. Zodpovedný za údaje: Miguel Ángel Gatón
  2. Účel údajov: Kontrolný SPAM, správa komentárov.
  3. Legitimácia: Váš súhlas
  4. Oznamovanie údajov: Údaje nebudú poskytnuté tretím stranám, iba ak to vyplýva zo zákona.
  5. Ukladanie dát: Databáza hostená spoločnosťou Occentus Networks (EU)
  6. Práva: Svoje údaje môžete kedykoľvek obmedziť, obnoviť a vymazať.

  1.   Ježiš dijo

    Dobrý deň, staviam domáce CNC s drv8825, moja otázka je, či môžem dať motory nema 23 2.8a, pretože sú o niečo lacnejšie ako 2.5a, mal by som problém? Ďakujem

    1.    Isaac dijo

      Ahoj Ježiš,
      Ďakujeme, že ste si nás prečítali. Pokiaľ ide o vašu otázku, dávajte pozor na vodiča, ktorý budete používať, aby bol kompatibilný s týmito motormi. Prípad DRV8825 je až do maximálnej hodnoty 2.5A. Pozrieť sa na TB6600, ktorý, pokiaľ si dobre pamätám, môže ísť až na 3.5 A ...
      Zdravím!

  2.   Rodolfo dijo

    Salaudos. Aká je hodnota elektrolytického kondenzátora, ktorý je v napájacom zdroji motora. Vďaka.