Üks Kõige populaarsem samm-mootor on 28BYJ-48. Pärast siin blogis avaldatud artiklit peaksite seda juba teadma kõik, mida vajate seda tüüpi mootorite kohta täpsusega, milles saate pööret juhtida nii, et see liiguks aeglaselt edasi või püsiks staatilises asendis soovitud asendis. See võimaldab neil kasutada paljusid muid rakendusi, alates tööstusest ja lõpetades robootikaga.
28BYJ-48 on väike unipolaarne samm-mootor, ja seda on lihtne Arduinoga integreerida, kuna sellel on draiveri / kontrolleri mooduli mudel ULN2003A, mis on tavaliselt koos sellega kaasas. Kõik väga odava hinna ja üsna kompaktse suurusega. Need funktsioonid muudavad ka nende seadmetega harjutamise ideaalseks.
28BYJ-48 funktsioonid
Mootor 28BYJ-498 See on samm-mootor, millel on järgmised omadused:
- Tüüp: samm-mootor või unipolaarne samm-samm
- Faasid: 4 (täielik samm), kuna sees on 4 mähist.
- Vastupidavus: 50 Ω.
- Mootori pöördemoment: 34 N / m, see tähendab, et kui njuutonid meetri kohta antakse Kg-le, oleks see jõud, mis võrdub umbes 0.34 kg / cm teljele laskmisega. Piisavalt, kui tõsta rihmarattaga veidi üle veerand kilo.
- Tarbimine: 55 mA
- Sammud ringi kohta: 8 poolastetüüpi (igaüks 45º)
- Integreeritud käigukast: jah, 1/64, seega jagab see suurema täpsuse tagamiseks iga sammu 64 väiksemaks, seega jõuab see 512 sammuni 0.7º. Või võib seda vaadelda ka kui 256 täisetappi ringi kohta (täissamm).
Täis- või pooletapilised või täis- ja pooletapilised on režiimid, milles saate töötada. Kui mäletate, ütlesin samm-mootorite artiklis, et Arduino IDE koodinäide töötas täispöördemomendil.
Lisateabe saamiseks saate laadige oma andmeleht allaKui näiteks see. Mis puutub pinouti, siis ei pea te liiga palju muretsema, kuigi näete teavet ka ostetud mudeli andmelehel. Kuid sellel betoonil on ühendus, mis võimaldab teil ühendada kõik kaablid korraga, muretsemata polarisatsiooni pärast või kuhu igaüks läheb, sisestage lihtsalt kontrollerisse ja voila ...
Mis puudutab selle mootori 28BYJ-48 mootorikontrollerit või draiverit, siis teil on ULN2003A, üks populaarsemaid ja mida saate Arduinoga väga lihtsalt kasutada. Sellel on Darlingtoni transistoride massiiv, mis toetab kuni 500mA ja millel on ühendusnõelad, et ühendada 4 mähist Arduino plaadi tihvtidega, mis on nummerdatud IN1-st IN4-ni, nagu nägite varem mainitud samm-mootori artiklist. Arduinost saate plaadi ja samm-mootori toitmiseks juhtmeid 5v ja GND tihvtist juhtmooduliplaadi kahe tihvtini tähistada - + (5-12v).
Muide, koos Darlingtoni transistorid On lubatud kasutada bipolaarseid transistore, mis on paigutatud kokku ja toimivad ühe transistorina. See suurendab oluliselt signaali võimendust tekkivas üksikus 'transistoris' ning võimaldab kanda ka suuremaid voolusid ja pingeid.
El Darlingtoni paar, kuna on teada üksik "transistor", mis on moodustatud kahe bipolaarse transistori kombinatsioonist. See sai alguse Bell Labsis 1952. aastal, autor Sidney Darlington, sellest ka nimi. Need transistorid on ühendatud nii, et ühe NPN kollektor on ühendatud teise NPN transistori kollektoriga. Kui esimese emitent läheb teise baasi. See tähendab, et saadud transistoril või paaril on ühe transistorina kolm ühendust. Esimese transistori alus ja teise transistori kollektor / emitter ...
Kust mootorit osta
osa leiate paljudest kauplustest spetsialiseerunud elektroonikale ja ka Internetis nagu Amazon. Näiteks saate neid osta aadressilt:
- Umbes 6 euro eest saate Tooteid ei leitud..
- Tooteid ei leitud. ja kaablid selle ühenduste jaoks, juhul kui vajate rohkem kui ühte mootorit teie tehtud roboti või projekti jaoks ...
28BYJ-48 programmeerimine Arduinoga
Kõigepealt peaksite selgeks samm-mootori mõisted, nii et soovitan teil lugege Hwlibre artiklit nende üksuste kohta. Need mootorid ei ole ette nähtud pidevaks toitmiseks, vaid nende eri faasides polariseerimiseks nii, et nad liigutaksid edasi ainult meie soovitud kraadi. Faaside ergastamiseks ja võlli pöörlemise juhtimiseks peate iga ühenduse korralikult toitma.
Tootja soovitab sõita korraga 2 mähist.
- Et see toimiks maksimaalse pöördemomendigaKiireima kiiruse ja maksimaalse tarbimisega saate kasutada järgmist tabelit:
Paso | Mähis A | Mähis B | Spiraal C | Spiraal D |
---|---|---|---|---|
1 | SUUR | SUUR | LOW | LOW |
2 | LOW | SUUR | SUUR | LOW |
3 | LOW | LOW | SUUR | SUUR |
4 | SUUR | LOW | LOW | SUUR |
- Erutada ainult ühte mähist korraga ja panna see tööle lainete režiimis (isegi poole, kuid madala tarbimise korral) võiksite kasutada järgmist tabelit:
Paso | Mähis A | Mähis B | Spiraal C | Spiraal D |
---|---|---|---|---|
1 | SUUR | LOW | LOW | LOW |
2 | LOW | SUUR | LOW | LOW |
3 | LOW | LOW | SUUR | LOW |
4 | LOW | LOW | LOW | SUUR |
- Või ettemaksete jaoks pool sammu, saate seda kasutada suurema pööramistäpsuse saavutamiseks lühemate sammudega:
Paso | Mähis A | Mähis B | Spiraal C | Spiraal D |
---|---|---|---|---|
1 | SUUR | LOW | LOW | LOW |
2 | SUUR | SUUR | LOW | LOW |
3 | LOW | SUUR | LOW | LOW |
4 | LOW | SUUR | SUUR | LOW |
5 | LOW | LOW | SUUR | LOW |
6 | LOW | LOW | SUUR | SUUR |
7 | LOW | LOW | LOW | SUUR |
8 | LOW | LOW | LOW | SUUR |
Ja võite mõelda ... mis see on pistmist Arduino programmeerimisega? Noh tõde on, et palju, sest saate luua maatriksi või massiivi Arduino IDE väärtustega nii et mootor liigub nii nagu soovite, ja seejärel kasutage seda massiivi silmusena või siis, kui seda vajate ... Võttes arvesse, et LOW = 0 ja HIGH = 1, st pinge või kõrgepinge puudumine, saate luua signaalid, mille Arduino peate mootori juhtimiseks kontrollerile saatma. Näiteks keskmiste sammude tegemiseks võite kasutada maatriksi koodi:
int Paso [ 8 ][ 4 ] = { {1, 0, 0, 0}, {1, 1, 0, 0}, {0, 1, 0, 0}, {0, 1, 1, 0}, {0, 0, 1, 0}, {0, 0, 1, 1}, {0, 0, 0, 1}, {1, 0, 0, 1} };
See tähendab, et visandi täielik kood Arduino IDE-st saate selle põhinäite abil testida, kuidas samm-mootor 28BYJ-48 töötab. Sellega saate mootori võlli pöörata, kui kogu skeem on korralikult ühendatud. Proovige muuta teie jaoks vajaliku rakenduse väärtusi või koodi:
// Definir pines conectados a las bobinas del driver #define IN1 8 #define IN2 9 #define IN3 10 #define IN4 11 // Secuencia de pasos a par máximo del motor. Realmente es una matriz que representa la tabla del unipolar que he mostrado antes int paso [4][4] = { {1, 1, 0, 0}, {0, 1, 1, 0}, {0, 0, 1, 1}, {1, 0, 0, 1} }; void setup() { // Todos los pines se configuran como salida, ya que el motor no enviará señal a Arduino pinMode(IN1, OUTPUT); pinMode(IN2, OUTPUT); pinMode(IN3, OUTPUT); pinMode(IN4, OUTPUT); } // Bucle para hacerlo girar void loop() { for (int i = 0; i < 4; i++) { digitalWrite(IN1, paso[i][0]); digitalWrite(IN2, paso[i][1]); digitalWrite(IN3, paso[i][2]); digitalWrite(IN4, paso[i][3]); delay(10); } }
Nagu näete, töötaks see sel juhul maksimaalse pöördemomendiga, aktiveerides poolid kaks korda ...