kategorier: Elektriske motorer og deres anvendelse, Microcontroller kredsløb
Antal visninger: 24464
Kommentarer til artiklen: 0

Arduino og stepper motor: grundlæggende elementer, skemaer, tilslutning og kontrol

 

Trinmotorer bruges til at kontrollere positionen af ​​noget eller til at rotere arbejdsenheden med en given hastighed og vinkel. Sådanne funktioner gjorde det muligt at bruge det i robotik, numerisk styrede maskiner (CNC) og andre automatiseringssystemer. I denne artikel vil vi overveje en række problemer, der er relateret til konstruktionen af ​​steppermotorer, og hvordan man styrer dem ved hjælp af Arduino-mikrokontrolleren.

Arduino og stepper motor

Trinmotor adskiller sig fra det sædvanlige

Alle elektriske motorer, der bruges i praksis, fungerer på grund af elektrodynamiske fænomener og processer, der forekommer i magnetfelterne for rotorer og statorer. Som vi allerede har nævnt, består enhver motor af mindst to dele - mobil (rotor) og bevægelsesfri (stator). Til dens rotation er det nødvendigt, at magnetfeltet også roterer. Rotorfeltet roterer efter statorfeltet.

I princippet er sådan grundlæggende information tilstrækkelig til at forstå det generelle billede af driften af ​​elektriske motorer. Imidlertid producerer industrien faktisk forskellige motorindstillingerblandt hvilke er:

1. Egernebur eller induktionsmotor til sårrotor.

2. Synkronmotor med feltviklinger eller med permanente magneter.

3. DC-motor.

4. Universal kollektormotor (den fungerer på både jævnstrøm og vekselstrøm, fordi selve rotorviklingerne er tilsluttet og frakoblet kontakterne i strømkilden på grund af design af lameller og ankre).

5. Børsteløse DC-motorer (BLDC).

6. Servoer.

7. Trinmotorer.

De to sidste arter er af særlig værdi på grund af muligheden for, at de til en vis grad nøjagtigt placeres i rummet. Lad os se nærmere på designet på trinmotoren.

Trinmotor

definition

En trinmotor kaldes en børsteløs synkronmotor. Et vist antal viklinger er placeret på statoren, hvis tilslutning får rotoren til at rotere en bestemt vinkel, afhængigt af antallet af trin. Med andre ord, strømmen i statorviklingen får akslen til at rotere i en diskret vinkel.

Med en ensartet og sekventiel ændring i polariteten af ​​spændingen over viklingerne og omskiftningen af ​​de aktiverede viklinger, roterer stepmotoren, svarende til en konventionel elektrisk motor, skønt faktisk en regelmæssig rotation i en fast vinkel ganske enkelt finder sted.

Stepmotor enhed

Trinmotoren kaldes undertiden motoren. med et begrænset antal rotorpositioner. Det lyder ikke meget klart, lad os finde ud af det. Forestil dig en konventionel motor - rotorens position er ikke fastgjort på nogen måde, det vil sige, den drejer simpelthen, mens strømmen er tilsluttet, og når den slukker, stopper den efter et stykke tid, afhængigt af dens inerti. Rotorens positioner kan være så mange, som du vil, men de kan variere med de mindste fraktioner i en grad.

I en trinmotor får forbindelse mellem en vikling eller flere viklinger rotoren til at "magnetisere" med hensyn til disse viklinger. Udad ser det ud nøjagtigt som at dreje skaftet i en bestemt vinkel (trin). Da antallet af trin er en af ​​de vigtige egenskaber ved denne type elektrisk drev, er antallet af rotorpositioner lig med antallet af trin. Det er vanskeligt for begyndere at forstå, hvordan dette kan være, og hvordan det roterer i dette tilfælde - faktisk er alt ganske enkelt, vi viser dette i illustrationer og beskrivelser nedenfor.

Arduino og stepper motor

design

Spændingsviklinger er fastgjort på statoren i den elektriske motor. Dens rotor er lavet af bløde magnetiske eller hårde magnetiske materialer. Rotorens materiale afhænger af drejningsmomentet og fastgørelsen af ​​skaftet med strømforsynede viklinger. Disse parametre kan være kritiske.

Trin til motormotorer

Derfor skelnes magnetiske faste rotorer (de er også med permanente magneter) og magnetisk bløde (reaktive) rotorer, ud over dem er der hybridrotorer.

Hybridrotoren er lavet tandet, antallet af tænder svarer til antallet af trin. Tænderne er placeret langs rotorens akse. Desuden er en sådan rotor delt i to dele på tværs. En permanent magnet er installeret mellem dem, så hver af rotorens halvdele er en magnetpol. Det skal også siges, at halvdelen af ​​rotoren drejes halvt af tænderne i forhold til hinanden.

Motorrotor

Som allerede nævnt er en sådan motor synkron, og processen med dens rotation er at skabe et roterende felt af rotoren, som den magnetiske rotor søger, og dette realiseres ved at skifte viklingerne af regulatoren efter tur.

Typer af trinmotorer til konstruktion af viklinger er opdelt i tre hovedgrupper i henhold til tilslutningsskemaet for viklingerne:

1. Bipolær.

2. Unipolær.

3. Med fire viklinger.

Typer af trinmotorer

De fleste bipolare elektriske motorer har 4 kontakter - dette er konklusioner fra to viklinger. Inde i motoren er de stort set ikke forbundet med hinanden. Hovedproblemet er, at det er nødvendigt at sikre omskiftning af effektpolaritet, hvilket betyder, at driveren og selve kontrolprocessen bliver mere kompliceret.

Unipolar ligner tilslutningen af ​​viklingerne i henhold til stjernens mønster. Med andre ord har du 5 konklusioner - 4 af dem er enderne af viklingerne, og 1 er forbindelsespunktet for alle viklingerne.

For at styre en sådan motor skal du bare skiftevis levere strøm til hver ende af viklingen (eller et par af dem, afhængigt af den valgte rotationstilstand). På denne måde vil halvdelen af ​​viklingen blive tændt hver gang. Det kan fungere i bipolar tilstand, hvis du fodrer hele viklingen fuldstændigt forbi hanen fra midten.

Motorer med 4 viklinger har den fordel, at du kan tilslutte viklingerne på enhver måde, der er praktisk for dig og få både en bipolær og en unipolær motor.



Kontroltilstande

Der er fire vigtigste trin til motorstyring:

1. Bølgekontrol.

2. Fuld trin.

3. Halvtrin.

4. Microstepping


bølge kontrol kaldes kontrol af en vikling. dvs. på samme tid flyder strømmen gennem en af ​​viklingerne, og derved to karakteristiske træk - lavt strømforbrug (dette er godt) og lavt drejningsmoment (dette er dårligt).

I dette tilfælde tager denne motor 4 trin i en omdrejning. Rigtige motorer tager snesevis af trin i en omdrejning, dette opnås ved et stort antal skiftninger af magnetpoler.

Bølgekontrol

Full Step Management er det mest anvendte. Her leveres spændingen ikke til en vikling, men til to på én gang. Hvis viklingerne er parallelt forbundet, fordobles strømmen, og hvis den er i serie, fordobles forsyningsspændingen. På den ene side bruger motoren i denne kontrolmetode mere energi, på den anden side 100% drejningsmoment, i modsætning til den foregående.

Full Step Management

Halvtrins kontrol Det er interessant, idet det bliver muligt at placere motorakslen mere nøjagtigt på grund af det faktum, at halvdele føjes til hele trin, dette opnås ved at kombinere de foregående to driftsformer, og viklingerne skiftevis, derefter tændes i par, derefter en ad gangen.

Det er værd at overveje, at øjeblikket på skaftet flyder fra 50 til 100%, afhængigt af om 1 eller 2 to viklinger er involveret i øjeblikket.

Endnu mere nøjagtig er det microstepping. Det ligner den foregående, men adskiller sig i, at strømmen til viklingerne ikke leveres i det fulde omfang, men gradvist skifter. Graden af ​​påvirkning på rotoren for hver af viklingerne ændres således, og skaftets rotationsvinkel ændres glat.

Hvor får man en stepper motor

Hvor får man en stepper motor

Du vil altid have tid til at købe en stepper-motor, men ægte radioamatører, hjemmelavede mennesker og elektroniske ingeniører er berømte for det faktum, at de kan gøre noget nyttigt ud af skrald. Sikkert har du mindst en trinmotor i dit hjem. Lad os finde ud af, hvor vi skal kigge for at finde en sådan motor.

1. Printeren.Trinmotorer kan stå på rotationen af ​​papirindføringsakslen (men der kan også være en jævnstrømsmotor med en forskydningsføler).

2. Scannere og MFP'er. Scannere installerer ofte en trinmotor og en mekanisk del, langs hvilken vognen føres, disse dele kan også være nyttige til udvikling af en hjemmelavet CNC-maskine.

3. CD- og DVD-drev. Du kan også få stænger og skrueaksler til hjemmelavede produkter og forskellige CNC'er i dem.

Helisk skaft

4. Diskettedrev. Disketterne har også stepmotorer, især disketterfiler i 5,25 ”-formatet.

Diskettedrev

Trapper motor driver

For at kontrollere steppermotorer skal du bruge specialiserede førermikrokredsløb. Oftest er dette en H-bro af transistorer. Takket være denne inddragelse bliver det muligt at tænde spændingen for den ønskede polaritet til viklingen. Disse chips er også velegnede til styring af jævnstrømsmotorer med understøttelse til at ændre rotationsretningen.

I princippet kan meget små motorer startes direkte fra stifterne på mikrokontrolleren, men normalt giver de op til 20-40 mA, hvilket i de fleste tilfælde ikke er nok. Derfor er her nogle eksempler på drivere til trinmotorer:


1. Tavler baseret på L293D. Der er mange af dem, en af ​​dem sælges under det indenlandske mærke Amperka under navnet Troyka Stepper, et eksempel på dets anvendelse i et rigtigt projekt vises i videoen herunder. Fordelen ved netop dette kort er, at det har logiske chips, der kan reducere antallet af ben, der bruges til at kontrollere det.

Selve chippen fungerer under en spænding på 4,5-36V og producerer en strøm på op til 600 mA-1A, afhængigt af IC-sagen.


2. A4988-baseret driver. Den drives af spænding op til 35V, kan modstå strøm op til 1A uden en radiator og med en radiator op til 2A. Den kan styre motoren, både i hele trin og i dele - fra 1/16 af et trin til 1 trin, kun 5 muligheder. Indeholder to H-broer. Ved hjælp af indstillingsmodstanden (set på det højre foto) kan du indstille udgangsstrømmen.

Trapper motor driver

Trinstørrelsen indstilles af signalerne ved indgange MS1, MS2, MS3.

Trinstørrelsen indstilles af signalerne ved indgange MS1, MS2, MS3

Her er et diagram over dens forbindelse, hver puls ved STEP-indgangen sætter motoren til at rotere 1 trin eller en mikrostep.

Ledningsdiagram

3. Driveren baseret på ULN2003 arbejder med 5 og 12 V motorer og producerer en strøm på op til 500 mA. På de fleste tavler er der 4 lysdioder, der angiver driften af ​​hver kanal.

ULN2003-baseret driver

Også på tavlen kan du se terminalblokken til tilslutning af motorer, forresten, mange af dem sælges med dette stik. Et eksempel på en sådan motor er en 5V-model - 28BYJ-48.

Model - 28BYJ-48

Og dette er ikke alle driverindstillinger for steppermotorer, faktisk er der endnu flere af dem.


Forbindelse til Arduino driver og stepper motor

I de fleste tilfælde skal du bruge en mikrocontroller parret med en driver til en trinmotor. Lad os se på forbindelsesdiagrammet og kodeeksempler. Overvej en forbindelse baseret på den nyeste driver, der er angivet - ULN2003 til Arduino-bestyrelsen. Og så har den 4 input, de er underskrevet som IN1, IN2 osv. De skal tilsluttes de digitale stifter på Arduino-tavlen, og en motor skal tilsluttes føreren som vist på figuren herunder.

Forbindelse til Arduino driver og stepper motor

Afhængig af kontrolmetoden skal du desuden anvende til indgange 1 eller 0 fra disse stifter, inklusive 1 eller 2 viklinger i den krævede rækkefølge. Koden til kontrolprogrammet i fuld trin ligner sådan:

int in1 = 2;

int in2 = 3;

int in3 = 4;

int in4 = 5;

const int dl = 5;

ugyldig opsætning () {

pinMode (in1, OUTPUT);

pinMode (in2, OUTPUT);

pinMode (in3, OUTPUT);

pinMode (in4, OUTPUT);

}

void loop () {

digitalWrite (in1, HIGH);

digitalWrite (in2, HIGH);

digitalWrite (in3, LOW);

digitalWrite (in4, LOW);

forsinkelse (dl);

digitalWrite (in1, LOW);

digitalWrite (in2, HIGH);

digitalWrite (in3, HIGH);

digitalWrite (in4, LOW);

forsinkelse (dl);

digitalWrite (in1, LOW);

digitalWrite (in2, LOW);

digitalWrite (in3, HIGH);

digitalWrite (in4, HIGH);

forsinkelse (dl);

digitalWrite (in1, HIGH);

digitalWrite (in2, LOW);

digitalWrite (in3, LOW);

digitalWrite (in4, HIGH);

forsinkelse (dl);

}

 

Det inkluderer viklinger i følgende rækkefølge:

Windingssekvens

Her er koden for halvtrinstilstanden, som du kan se, den er meget mere omfangsrig, da den involverer et større antal skiftende viklinger.

int in1 = 2;

int in2 = 3;

int in3 = 4;

int in4 = 5;

const int dl = 5;

ugyldig opsætning () {

pinMode (in1, OUTPUT);

pinMode (in2, OUTPUT);

pinMode (in3, OUTPUT);

pinMode (in4, OUTPUT);

}

void loop () {

digitalWrite (in1, HIGH);

digitalWrite (in2, LOW);

digitalWrite (in3, LOW);

digitalWrite (in4, LOW);

forsinkelse (dl);

digitalWrite (in1, HIGH);

digitalWrite (in2, HIGH);

digitalWrite (in3, LOW);

digitalWrite (in4, LOW);

forsinkelse (dl);

digitalWrite (in1, LOW);

digitalWrite (in2, HIGH);

digitalWrite (in3, LOW);

digitalWrite (in4, LOW);

forsinkelse (dl);

digitalWrite (in1, LOW);

digitalWrite (in2, HIGH);

digitalWrite (in3, HIGH);

digitalWrite (in4, LOW);

forsinkelse (dl);

digitalWrite (in1, LOW);

digitalWrite (in2, LOW);

digitalWrite (in3, HIGH);

digitalWrite (in4, LOW);

forsinkelse (dl);

digitalWrite (in1, LOW);

digitalWrite (in2, LOW);

digitalWrite (in3, HIGH);

digitalWrite (in4, HIGH);

forsinkelse (dl);

digitalWrite (in1, LOW);

digitalWrite (in2, LOW);

digitalWrite (in3, LOW);

digitalWrite (in4, HIGH);

forsinkelse (dl);

digitalWrite (in1, HIGH);

digitalWrite (in2, LOW);

digitalWrite (in3, LOW);

digitalWrite (in4, HIGH);

forsinkelse (dl);

}

 

Dette program inkluderer viklinger som følger:

Windingssekvens

For at konsolidere de modtagne oplysninger skal du se den nyttige video:


konklusion

Trinmotorer er populære blandt arduiner sammen med servoer, fordi de giver dig mulighed for at oprette robotter og CNC-maskiner. Sidstnævnte er hjulpet af forekomsten i det sekundære marked af superbilligt brugte optiske drev.

Se også på elektrohomepro.com:

  • Hvordan man skelner en induktionsmotor fra en jævnstrømsmotor
  • Trinmotorer
  • Typer af elektriske motorer og principperne for deres arbejde
  • Arduino læse- og kontrolmetoder for I / O-porte
  • Tilslutning og programmering af Arduino til begyndere

  •