Taula de continguts:
- Subministraments
- Pas 1: conèixer el nostre sistema
- Pas 2: piratejar el motor
- Pas 3: Configuració del controlador
- Pas 4: Control del motor
Vídeo: Motor pas a pas 5BJJ-48 5V i controlador A4988: 4 passos
2024 Autora: John Day | [email protected]. Última modificació: 2024-01-30 08:11
Alguna vegada heu volgut aconseguir que un robot giri amb un angle precís, utilitzant només algunes sortides del vostre Arduino o micro: bit? Tot això per barat? Això és el més instructiu per a vosaltres. En aquest instructiu veurem com conduir un motor pas a pas molt econòmic utilitzant només 2 sortides del nostre controlador i només necessitant una font d'alimentació de 5V.
Vaig fer-ho instructiu després de lluitar una mica per recollir la informació, de vegades ensopegant amb la desinformació, i volia salvar els altres de passar pel mateix procés.
Però abans de començar, per què aquesta restricció?
- Per què 5V: perquè vull integrar-ho en un robot mòbil que funcionarà només amb una bateria de liti de 3,7 que puc treure 5V amb un reforç.
- Per què utilitzar l'A4988 i no l'ULN2003, que sovint ve amb el motor 28BYJ? Perquè, en primer lloc, requereix 4 entrades. Per tant, fer servir l’A4988 ens permet estalviar 2 de les nostres precioses sortides de controlador (i si us agrada treballar amb el micro: bit com jo, aquestes sortides són precioses …). Però n’hi ha més! Poder conduir el motor només donant els passos com a impulsos elevats, ens dóna la possibilitat de conduir el motor amb un senzill PWM. En fixar el cicle de treball al 50%, canviar la freqüència del PWM canviarà la velocitat de rotació del motor. Per què és fantàstic? Perquè si voleu configurar la velocitat del meu motor i continuar controlant altres coses amb el meu Arduino o el micro: bit, simplement podeu configurar el meu PWM i oblidar-lo, cosa que farà que el vostre codi sigui molt més llegible i que la vostra vida sigui tan gran. més fàcil (per exemple, si voleu construir un robot com aquest).
Comencem, doncs,
Subministraments
Això és el que necessiteu per a aquesta instrucció:
- 1 pas motor pas a pas 28BYJ
- 1x controlador A4988
- 1x placa de protecció o placa de prototipatge, un condensador i alguns cables
- Micro: placa d’extensió o bit o Arduino
- Alimentació de 5 V (+ 3,3 V si utilitzeu Micro: bit). Per a això vaig utilitzar una bateria de liti 18650 i un blindatge de la bateria.
- 1x multímetre
Pas 1: conèixer el nostre sistema
El primer que recomanaria començar seria aprendre més sobre els motors pas a pas i el controlador A4988. Ei, però per què necessitem aquest controlador? Podríem controlar un motor pas a pas sense conductor? La resposta és no. Taulers com Micro: bit i Arduino són bons per processar informació, però no per donar molta corrent, i necessiteu corrent per fer moure un motor pas a pas. Per obtenir més informació sobre com funcionen tant el motor com el conductor, aquesta és la referència que recomanaria. És sintètic, però també conté la major part de la informació que necessiteu per al cablejat.
Però espereu abans de provar de connectar res. El 28BYJ està adaptat a l'A4988? Si feu una cerca ràpida, veureu que aquest motor poques vegades ve amb l'A4988 com a conductor. Si llegiu a fons la referència anterior, podreu veure per què: el nostre pas a pas és un motor unipolar mentre que l'A4988 està dissenyat per accionar motors bipolars, així que haurem de piratejar una mica el nostre motor.
Pas 2: piratejar el motor
Per fer que els vostres motors siguin compatibles amb el controlador del motor, simplement treieu el cable vermell del connector blanc. Per fer, talleu el connector per treure el fil vermell i talleu el fil vermell del motor. A continuació, canvieu el cable groc i rosa del connector. Mantingueu el cable i el connector vermells per al següent pas.
Per treure un cable del connector, premeu el cable que voleu treure del connector i, a continuació, premeu la punta metàl·lica visible del connector amb una eina punxant (a sobre hi ha una imatge on ho faig amb el meu ganivet preferit, l'opinel!).), i finalment tirar i, finalment, tot hauria de sortir com a la imatge superior. La darrera imatge mostra com ha de ser el connector al final d’aquestes modificacions: l’ordre del cable del connector ha de ser taronja / rosa / groc / blau.
(PD: en línia trobareu alguns tutorials que indiquen que heu de dessoldar el fil vermell del motor i després ratllar la PCB; oblideu-ho, això no és necessari. Inútil?)
Pas 3: Configuració del controlador
Ara … és hora de conduir aquest motor amb el conductor? Encara no ho sento. Veieu el cargol a la placa A4988? Doncs haurem de jugar-hi. Aquest cargol permet bàsicament configurar la quantitat de corrent que passarà per les bobines del motor. En el nostre cas, mentre la nostra font d'alimentació dóna 5V i les nostres bobines del motor tenen una resistència de 50 Ohms, el nostre corrent no serà superior a 100mA, cosa que hauria de ser suportada pel motor, de manera que podríeu saltar aquest pas. Tanmateix, si sou com jo i que voldríeu que el motor només agafés tanta corrent com necessiti, seguiu-ho.
Per definir el controlador, seguiu el mètode 2 d’aquest article amb aquestes adaptacions (com es mostra a la imatge superior)
- Utilitzeu el 5V del blindatge de la bateria tant per a la lògica com per a l’entrada de potència del motor (es diu que VMOT necessita més de 8V, però 5V funciona!). Els 2 pins GND de la placa estan connectats, de manera que no cal connectar-los a la terra de la bateria.
- Connecteu els pins STEP i DIR també a 5V (no a Arduino tal com es mostra a l’article de referència)
- En configurar el multímetre, vaig configurar el corrent a 50 mA, que era suficient per conduir els meus motors mitjançant mitges passes (més informació al següent pas). Per connectar el multímetre per mesurar el corrent a la bobina del motor, com podeu veure a la imatge superior, vaig desconnectar el cable groc del connector i hi vaig posar el cable vermell, de manera que pogués posar el multímetre del vermell a el fil groc per mesurar el corrent.
Pas 4: Control del motor
Ja està, estem gairebé a punt per fer girar el motor. L'única cosa que cal fer és:
- per eliminar el multímetre del nostre sistema si encara no està fet,
- connecteu MS1 a 5V, cosa que farà que el conductor faci servir mitges passes (he tingut problemes perquè el robot giri amb passos complets a 5V. Però com a part del meu objectiu era fer que tot funcionés a 5V, vaig acceptar sacrificar una mica de velocitat i per obtenir certa precisió),
- proporcionem als pins STEP i DIR el que volem del nostre controlador.
Llavors: si voleu controlar el motor mitjançant Arduino, simplement seguiu l'article aquí on trobareu un codi de mostra. Si el voleu controlar amb el micro: bit, quedeu-vos una mica més amb mi.
Micro: bit, com Arduino, ve amb GPIO. Per tant, un cop l’encenguem (amb 3,3 V!), El podrem programar per produir STEP i DIR. Tot i que sembla que hi ha moltes entrades i sortides, cal advertir que en realitat moltes d’elles ja estan reservades per a altres propòsits. Podeu obtenir més informació al respecte en aquest article. Veureu en aquest article que en realitat moltes de les entrades / sortides es comparteixen amb la pantalla i, per tant, si voleu utilitzar-les, haureu d’apagar la pantalla. Però no apaguem la pantalla. Llavors, quins pins podem utilitzar? Faré servir els pins 2 i 8, ja que no faré servir els coixinets (pin 2).
Connecteu el pin 2 del micro: bit a STEP, el pin 8 a DIR, carregueu el programa adjunt amb el vostre editor micro: python preferit (he utilitzat mu-editor). Aquest programa estableix bàsicament un PWM al pin 2 amb un període d'1 mil·lisegon (i un cicle de treball del 50%), i el motor hauria de girar. Estableix el pin 8 a 0 o 1 perquè giri d'una manera o d'una altra i canvia el punt per fer-lo girar la velocitat que vulguis (sempre que no vulguis que vagi massa ràpid … per a mi un pols cada mil·lisegon estava a prop a la velocitat màxima que podria assolir).
Per fer les coses una mica més compactes i embarcar-les fàcilment en un robot mòbil, vaig fer una petita placa. El tauler es mostra a la imatge superior. A la imatge hi ha un fil morat que va de VMOT a VDD que s’amaga a l’ombra. A més, el fil groc que va de SLP a RST en realitat no està soldat, només el vaig posar allà per representar la soldadura que vaig posar a la part posterior de la placa per connectar aquests 2 pins. Observació: el dissipador de calor normalment no és necessari amb aquest sistema, ja que dibuixem molt, molt menys que 1A.
Això és tot, espero que aquest instructiu us ajudi a molts de vosaltres a gaudir del poder del motor pas a pas en els vostres projectes.
Recomanat:
Raspberry Pi, Python i un controlador de motor pas a pas TB6600: 9 passos
Raspberry Pi, Python i un controlador de motor pas a pas TB6600: aquest instructiu segueix els passos que vaig fer per connectar un Raspberry Pi 3b a un controlador de motor pas a pas TB6600, una font d'alimentació de 24 V CC i un motor pas a pas de 6 fils. Probablement sóc com molts de vosaltres i tinc una "bossa d'agafar" de parell sobrant
Motor pas a pas controlat Motor pas a pas sense microcontrolador: 6 passos
Motor pas a pas controlat pel motor pas a pas sense microcontrolador. Aquest projecte no requereix cap circuit complex ni un microcontrolador. Així doncs, sense més, comencem
Motor pas a pas controlat pel motor pas a pas sense microcontrolador (V2): 9 passos (amb imatges)
Motor pas a pas controlat amb motor pas a pas sense microcontrolador (V2): en una de les meves instruccions anteriors, us vaig mostrar com controlar un motor pas a pas mitjançant un motor pas a pas sense microcontrolador. Va ser un projecte ràpid i divertit, però va venir amb dos problemes que es resoldran en aquest instructiu. Llavors, enginy
Locomotora model controlada per motor pas a pas - Motor pas a pas com a codificador rotatiu: 11 passos (amb imatges)
Locomotora controlada per motor pas a pas | Motor pas a pas com a codificador rotatiu: en una de les instruccions anteriors, vam aprendre a utilitzar un motor pas a pas com a codificador rotatiu. En aquest projecte, ara utilitzarem aquest motor pas a pas encodador giratori per controlar una locomotora model mitjançant un microcontrolador Arduino. Així, sense fu
Motor pas a pas controlat Motor pas a pas com a codificador rotatiu: 11 passos (amb imatges)
Motor pas a pas controlat Motor pas a pas com a codificador rotatiu: teniu un parell de motors pas a pas al voltant i voleu fer alguna cosa? En aquesta instrucció, fem servir un motor pas a pas com a codificador rotatiu per controlar la posició d’un altre motor pas a pas mitjançant un microcontrolador Arduino. Així doncs, sense més preàmbuls, anem a