categorieën: Elektromotoren en hun toepassing, Microcontroller-circuits
Aantal keer bekeken: 24464
Reacties op het artikel: 0

Arduino en stappenmotor: basisprincipes, schema's, verbinding en controle

 

Stappenmotoren worden gebruikt om de positie van iets te regelen of om de werkeenheid met een gegeven snelheid en hoek te roteren. Dergelijke functies maakten het mogelijk om het te gebruiken in robotica, numeriek bestuurde machines (CNC) en andere automatiseringssystemen. In dit artikel zullen we een aantal kwesties bespreken die verband houden met de constructie van stappenmotoren en hoe deze te besturen met de Arduino-microcontroller.

Arduino en stappenmotor

Stappenmotor verschilt van het gebruikelijke

Alle elektromotoren die in de praktijk worden gebruikt, werken vanwege elektrodynamische verschijnselen en processen die plaatsvinden in de magnetische velden van rotors en stators. Zoals we al hebben vermeld, bestaat elke motor uit ten minste twee delen - mobiel (rotor) en onbeweeglijk (stator). Voor zijn rotatie is het noodzakelijk dat het magnetische veld ook roteert. Het rotorveld draait achter het statorveld.

In principe is dergelijke basisinformatie voldoende om het algemene beeld van de werking van elektromotoren te begrijpen. In feite produceert de industrie echter verschillende motoroptieswaaronder zijn:

1. Eekhoorn-kooi of wondrotor-inductiemotor.

2. Synchrone motor met veldwikkelingen of met permanente magneten.

3. DC-motor.

4. Universele collectormotor (het werkt op zowel gelijkstroom als wisselstroom, omdat de rotorwikkelingen zelf zijn verbonden en losgekoppeld van de contacten van de stroombron vanwege het ontwerp van lamellen en ankers).

5. Borstelloze DC-motoren (BLDC).

6. Servo's.

7. Stappenmotoren.

De laatste twee soorten zijn van bijzondere waarde, vanwege de mogelijkheid van hun tot op zekere hoogte nauwkeurige positionering in de ruimte. Laten we het ontwerp van de stappenmotor eens nader bekijken.

Stappenmotor

definitie

Een stappenmotor wordt een borstelloze synchrone motor genoemd. Een bepaald aantal wikkelingen bevindt zich op de stator, waarvan de verbinding ervoor zorgt dat de rotor een bepaalde hoek roteert, afhankelijk van het aantal stappen. Met andere woorden, de stroom in de statorwikkeling veroorzaakt dat de as onder een discrete hoek roteert.

Met een uniforme en opeenvolgende verandering in de polariteit van de spanning over de wikkelingen en het schakelen van de bekrachtigde wikkelingen, roteert de stappenmotor, vergelijkbaar met een conventionele elektromotor, hoewel in feite gewoon een regelmatige rotatie onder een vaste hoek plaatsvindt.

Stappenmotor apparaat

De stappenmotor wordt soms de motor genoemd. met een eindig aantal rotorposities. Het klinkt niet erg duidelijk, laten we het uitzoeken. Stel je een conventionele motor voor - de positie van de rotor is op geen enkele manier vast, dat wil zeggen, hij draait gewoon terwijl de stroom is aangesloten en wanneer hij wordt uitgeschakeld, stopt hij na enige tijd, afhankelijk van zijn traagheid. De posities van de rotor kunnen zo veel zijn als u wilt, maar ze kunnen per fractie van een graad verschillen.

In een stappenmotor zorgt het aansluiten van een wikkeling of meerdere wikkelingen ervoor dat de rotor "magnetiseert" met betrekking tot deze wikkelingen. Naar buiten toe lijkt het precies op het draaien van de as onder een bepaalde hoek (steek). Aangezien het aantal stappen een van de belangrijke kenmerken van dit type elektrische aandrijving is, is het aantal rotorposities gelijk aan het aantal stappen. Het is moeilijk voor beginners om te begrijpen hoe dit kan zijn en hoe het in dit geval roteert - in feite is alles vrij eenvoudig, we zullen dit in de onderstaande illustraties en beschrijvingen laten zien.

Arduino en stappenmotor

ontwerp

Excitatiewikkelingen worden bevestigd op de stator van de elektromotor. De rotor is gemaakt van zachte magnetische of harde magnetische materialen. Het materiaal van de rotor is afhankelijk van het koppel en de bevestiging van de as met spanningsloze wikkelingen. Deze parameters kunnen kritisch zijn.

Stappenmotor motorwikkelingen

Daarom worden magnetisch solide rotors (ze zijn ook met permanente magneten) en magnetisch zachte (reactieve) rotors onderscheiden, naast hen zijn er hybride rotors.

De hybride rotor is getand gemaakt, het aantal tanden komt overeen met het aantal stappen. De tanden bevinden zich langs de as van de rotor. Bovendien is een dergelijke rotor verdeeld in twee delen over. Tussen hen is een permanente magneet geïnstalleerd, dus elk van de helften van de rotor is een magneetpool. Er moet ook worden gezegd dat de helft van de rotor de helft van de steek van de tanden ten opzichte van elkaar wordt geroteerd.

Motor rotor

Zoals reeds vermeld, is een dergelijke motor synchroon, en het rotatieproces bestaat uit het creëren van een roterend veld van de rotor, waarnaar de magnetische rotor zoekt, en dit wordt gerealiseerd door de wikkelingen op zijn beurt te schakelen.

Soorten stappenmotoren voor het ontwerp van wikkelingen zijn verdeeld in drie hoofdgroepen volgens het aansluitschema van de wikkelingen:

1. Bipolair.

2. Unipolair.

3. Met vier wikkelingen.

Soorten stappenmotoren

De meeste bipolaire elektromotoren hebben 4 contacten - dit zijn conclusies uit twee wikkelingen. In de motor zijn ze over het algemeen niet met elkaar verbonden. Het grootste probleem is dat het noodzakelijk is om te zorgen voor het schakelen van de stroompolariteit, wat betekent dat de driver en het besturingsproces zelf gecompliceerder zullen worden.

Unipolair lijkt op de verbinding van de wikkelingen volgens het patroon van de ster. Met andere woorden, je hebt 5 conclusies - 4 daarvan zijn de uiteinden van de wikkelingen en 1 is het verbindingspunt van alle wikkelingen.

Om een ​​dergelijke motor te regelen, hoeft u alleen afwisselend stroom te leveren aan elk uiteinde van de wikkeling (of een paar, afhankelijk van de geselecteerde rotatiemodus), op deze manier wordt elke keer de helft van de wikkeling aangedreven. Het kan werken in bipolaire modus, als u de hele wikkeling volledig voedt en de kraan vanuit het midden omzeilt.

Motoren met 4 wikkelingen hebben het voordeel dat u de wikkelingen op elke voor u handige manier kunt aansluiten en zowel een bipolaire als een unipolaire motor kunt krijgen.



Controle modi

Er zijn 4 hoofdstappenmotorbesturingsmodi:

1. Golfregeling.

2. Volledige stap.

3. Halve stap.

4. Microstepping


golf controle heet controle van één wikkeling. ie tegelijkertijd stroomt de stroom door een van de wikkelingen, vandaar twee onderscheidende kenmerken - laag stroomverbruik (dit is goed) en laag koppel (dit is slecht).

In dit geval neemt deze motor 4 stappen in één revolutie. Echte motoren nemen tientallen stappen in één revolutie, dit wordt bereikt door een groot aantal afwisselingen van magnetische polen.

Wave controle

Volledig stappenbeheer wordt het meest gebruikt. Hier wordt de spanning niet aan één wikkeling geleverd, maar aan twee tegelijk. Als de wikkelingen parallel zijn aangesloten, verdubbelt de stroom en, indien in serie, verdubbelt de voedingsspanning respectievelijk. Enerzijds verbruikt de motor bij deze bedieningsmethode meer energie, anderzijds 100% koppel, in tegenstelling tot de vorige.

Volledig stappenbeheer

Halve stap controle Het is interessant dat het mogelijk wordt om de motoras nauwkeuriger te positioneren, vanwege het feit dat helften aan hele stappen worden toegevoegd, dit wordt bereikt door de vorige twee bedrijfsmodi te combineren en de wikkelingen afwisselend en vervolgens in paren aan te zetten, dan een voor een.

Het is de moeite waard om te overwegen dat het moment op de as drijft van 50 tot 100%, afhankelijk van of er op dit moment 1 of 2 twee wikkelingen bij betrokken zijn.

Nog nauwkeuriger is microstepping. Het is vergelijkbaar met de vorige, maar verschilt in dat de kracht naar de wikkelingen niet volledig wordt geleverd, maar geleidelijk verandert. Aldus verandert de mate van impact op de rotor van elk van de wikkelingen en varieert de rotatiehoek van de as in tussenstappen soepel.

Waar een stappenmotor te krijgen

Waar een stappenmotor te krijgen

Je hebt altijd tijd om een ​​stappenmotor te kopen, maar echte radioamateurs, zelfgemaakte mensen en elektronische ingenieurs staan ​​bekend om het feit dat ze iets nuttigs kunnen doen uit afval. Je hebt toch zeker een stappenmotor in huis? Laten we uitzoeken waar we moeten kijken om zo'n motor te vinden.

1. De printer.Stappenmotoren kunnen op de rotatie van de papierinvoeras staan ​​(maar er kan ook een DC-motor met een verplaatsingssensor zijn).

2. Scanners en MFP's. Scanners installeren vaak een stappenmotor en een mechanisch onderdeel waarlangs de wagen geleidt, deze onderdelen kunnen ook nuttig zijn bij het ontwikkelen van een zelfgemaakte CNC-machine.

3. Cd- en dvd-stations. Je kunt ook staven en schroefassen voor zelfgemaakte producten en verschillende CNC's erin krijgen.

Spiraalvormige as

4. Diskettes. De diskettes hebben ook stappenmotoren, met name diskettes van het 5.25 ”-formaat.

Diskettestation

Stappenmotor bestuurder

Gebruik gespecialiseerde stuurmicrocircuits om de stappenmotoren te regelen. Meestal is dit een H-brug van transistoren. Dankzij deze opname wordt het mogelijk om de spanning van de gewenste polariteit naar de wikkeling in te schakelen. Deze chips zijn ook geschikt voor het aansturen van DC-motoren met ondersteuning voor het veranderen van de draairichting.

In principe kunnen zeer kleine motoren direct worden gestart van de pinnen van de microcontroller, maar meestal geven ze tot 20-40 mA, wat in de meeste gevallen niet genoeg is. Daarom zijn hier enkele voorbeelden van stuurprogramma's voor stappenmotoren:


1. Borden gebaseerd op L293D. Het zijn er veel, één wordt verkocht onder het binnenlandse merk Amperka onder de naam Troyka Stepper, een voorbeeld van het gebruik ervan in een echt project is te zien in de video hieronder. Het voordeel van dit specifieke bord is dat het logische chips heeft die het aantal pinnen kunnen verminderen dat wordt gebruikt om het te besturen.

De chip zelf werkt onder een spanning van 4.5-36V en produceert een stroom tot 600mA-1A, afhankelijk van het IC-geval.


2. Op A4988 gebaseerd stuurprogramma. Het wordt aangedreven door een spanning tot 35V, is bestand tegen stroom tot 1A zonder een radiator en met een radiator tot 2A. Het kan de motor regelen, zowel in hele stappen als in delen - van 1/16 stap tot 1 stap, slechts 5 opties. Bevat twee H-bruggen. Met behulp van de afstemweerstand (zie foto rechts) kunt u de uitgangsstroom instellen.

Stappenmotor bestuurder

De stapgrootte wordt ingesteld door de signalen aan de ingangen MS1, MS2, MS3.

De stapgrootte wordt ingesteld door de signalen op de ingangen MS1, MS2, MS3

Hier is een diagram van de aansluiting, elke puls op de STEP-ingang stelt de motor in om 1 stap of een microstap te draaien.

Aansluitschema

3. De driver op basis van ULN2003 werkt met 5 en 12 V motoren en produceert een stroom tot 500 mA. Op de meeste kaarten zijn er 4 LED's die de werking van elk kanaal aangeven.

Op ULN2003 gebaseerd stuurprogramma

Ook op het bord ziet u het aansluitblok voor het aansluiten van motoren, trouwens, veel van hen worden verkocht met deze connector. Een voorbeeld van een dergelijke motor is een 5V-model - 28BYJ-48.

Model - 28BYJ-48

En dit zijn niet alle driveropties voor stappenmotoren, er zijn er zelfs nog meer.


Verbinding met Arduino-stuurprogramma en stappenmotor

In de meeste gevallen moet u een microcontroller gebruiken in combinatie met een stuurprogramma voor een stappenmotor. Laten we het verbindingsdiagram en codevoorbeelden bekijken. Overweeg een verbinding op basis van het meest recente vermelde stuurprogramma - ULN2003 naar het Arduino-bord. En dus heeft het 4 ingangen, ze zijn ondertekend als IN1, IN2, enz. Ze moeten worden aangesloten op de digitale pinnen van het Arduino-bord en een motor moet worden aangesloten op de driver zoals weergegeven in de onderstaande afbeelding.

Verbinding met Arduino-stuurprogramma en stappenmotor

Verder, afhankelijk van de besturingsmethode, moet u de ingangen 1 of 0 van deze pennen toepassen, inclusief 1 of 2 wikkelingen in de vereiste volgorde. De code voor het volledige besturingsprogramma ziet er ongeveer zo uit:

int in1 = 2;

int in2 = 3;

int in3 = 4;

int in4 = 5;

const int dl = 5;

void setup () {

pinMode (in1, OUTPUT);

pinMode (in2, UITGANG);

pinMode (in3, OUTPUT);

pinMode (in4, OUTPUT);

}

void loop () {

digitalWrite (in1, HIGH);

digitalWrite (in2, HIGH);

digitalWrite (in3, LOW);

digitalWrite (in4, LOW);

vertraging (dl);

digitalWrite (in1, LOW);

digitalWrite (in2, HIGH);

digitalWrite (in3, HOOG);

digitalWrite (in4, LOW);

vertraging (dl);

digitalWrite (in1, LOW);

digitalWrite (in2, LOW);

digitalWrite (in3, HOOG);

digitalWrite (in4, HIGH);

vertraging (dl);

digitalWrite (in1, HIGH);

digitalWrite (in2, LOW);

digitalWrite (in3, LOW);

digitalWrite (in4, HIGH);

vertraging (dl);

}

 

Het omvat wikkelingen in de volgende volgorde:

Kronkelende volgorde

Hier is de code voor de halve-stapsmodus, zoals u ziet, deze is veel omvangrijker, omdat het een groter aantal schakelende wikkelingen met zich meebrengt.

int in1 = 2;

int in2 = 3;

int in3 = 4;

int in4 = 5;

const int dl = 5;

void setup () {

pinMode (in1, OUTPUT);

pinMode (in2, UITGANG);

pinMode (in3, OUTPUT);

pinMode (in4, OUTPUT);

}

void loop () {

digitalWrite (in1, HIGH);

digitalWrite (in2, LOW);

digitalWrite (in3, LOW);

digitalWrite (in4, LOW);

vertraging (dl);

digitalWrite (in1, HIGH);

digitalWrite (in2, HIGH);

digitalWrite (in3, LOW);

digitalWrite (in4, LOW);

vertraging (dl);

digitalWrite (in1, LOW);

digitalWrite (in2, HIGH);

digitalWrite (in3, LOW);

digitalWrite (in4, LOW);

vertraging (dl);

digitalWrite (in1, LOW);

digitalWrite (in2, HIGH);

digitalWrite (in3, HOOG);

digitalWrite (in4, LOW);

vertraging (dl);

digitalWrite (in1, LOW);

digitalWrite (in2, LOW);

digitalWrite (in3, HOOG);

digitalWrite (in4, LOW);

vertraging (dl);

digitalWrite (in1, LOW);

digitalWrite (in2, LOW);

digitalWrite (in3, HOOG);

digitalWrite (in4, HIGH);

vertraging (dl);

digitalWrite (in1, LOW);

digitalWrite (in2, LOW);

digitalWrite (in3, LOW);

digitalWrite (in4, HIGH);

vertraging (dl);

digitalWrite (in1, HIGH);

digitalWrite (in2, LOW);

digitalWrite (in3, LOW);

digitalWrite (in4, HIGH);

vertraging (dl);

}

 

Dit programma omvat wikkelingen als volgt:

Kronkelende volgorde

Bekijk de nuttige video om de ontvangen informatie te consolideren:


conclusie

Stappenmotoren zijn populair onder arduins samen met servo's, omdat u hiermee robots en CNC-machines kunt maken. Dit laatste wordt geholpen door de overvloed op de secundaire markt van gebruikte super-goedkope optische drives.

Zie ook op i.electricianexp.com:

  • Hoe een inductiemotor te onderscheiden van een DC-motor
  • Stappenmotoren
  • Soorten elektromotoren en de principes van hun werk
  • Methoden voor het lezen en beheren van Arduino I / O-poorten
  • Arduino verbinden en programmeren voor beginners

  •