En nybörjares guide till Arduino (13 / 15 steg)

Steg 13: Köra motorer



DC-motorer

Med de metoder som beskrivs i föregående steg, kan du bara snurra motorn i en riktning. Du kan ändra riktning, behöver du en H-bron (kallas ibland en full bro). Den består av 2 NPN och 2 PNP transistorer, eller 2 N-kanal och 2 P-kanal fETsna.

Ta en titt på bilden för en typisk MOSFET H-bridge circuit.

Obs: du kan inte bara ersätta MOSFETs i detta schema av transistorer: transistorer måste basera nuvarande, fETsna behöver utfärda utegångsförbud spänning.

Låt oss ta reda på hur denna krets fungerar:

Vi kallar den vänstra ingången input A och rätta ingång B.

När ingång A är låg, genomföra transistor Q1 inte. Detta innebär att portarna till Q2 och Q3 är hög (de är anslutna till VSS genom R1). Q3 är en N-kanal MOSFET, så det börjar bedriva (eftersom den har en positiv gate spänning). Q2 är en P-kanal MOSFET, så den inte genomföra (eftersom det har ingen spänningsskillnad mellan grinden och källan, båda är anslutna till VSS).
Den vänstra terminalen av motorn är nu anslutna till marken, via Q3.

När input B är hög, bedriver Q4. Detta innebär att utfärda utegångsförbud för av Q5 och Q6 är låga. (De är anslutna till marken genom Q4 och R2 spelar ingen roll i detta fall). F6 är en N-kanal MOSFET, så den inte genomföra (eftersom det har ingen spänningsskillnad mellan grinden och källan, båda är anslutna till marken).
Q5 är en P-kanal MOSFET, så det börjar bedriva (eftersom den har en negativ gate spänning, i förhållande till källan).
Rätt terminalen av motorn är nu anslutna till VSS genom Q5.

I detta fall kommer att motorn snurra motsols.

Den andra bilden är en motsvarande krets för denna situation.

Du kan redan gissa att om A är hög, och B är låg, motorn kommer att snurra medsols. Om A och B är både hög eller båda låg, inte kommer att motorn snurra, eftersom båda terminalerna är ansluten till antingen VSS eller marken. (så ingen spänningsskillnad)

Även om du kan bygga denna krets själv, är det sättet lättare att använda en IC. Exempelvis fick jag några L6202 marker av en gammal skrivare. En annan H-bridge chip är L298 eller L293.
De ansluter direkt till 2 digital stiften på Arduino, och de flesta av dem har också en "Aktivera" PIN-kod, som du kan använda med en tredje pwm stift, för att kontrollera motorns hastighet.

Adafruit har en riktigt bra handledning om hur man använder dem: https://learn.adafruit.com/adafruit-arduino-lesson...

Stegmotorer

En annan vanligt förekommande motor är stegmotor.

En vanlig DC motor har en snurrande spole inuti två permanenta magneter. Stegmotorer har å andra sidan, en rörlig magnet (rotor) och några stillastående spolar (stator). Genom att aktivera spolarna i en viss sekvens, kommer att rotorn snurra.

Följande videos hjälper dig att förstå hur det fungerar:

För att köra en unipolärstepper, behöver du bara 4 NPN-transistorer, eller 4 N-kanal MOSFETs. (se bild)

För att hitta pinout för din stepper, slå upp i databladet, eller använda en multimeter, och mäta resistansen mellan trådarna. Vissa kombinationer av tråd har ett motstånd som är 2 gånger högre än de andra, dessa är de yttre två ledningarna i schematiskt.

Anslut två center trådarna till positiva binda av strömförsörjningen och de yttre ledningarna till samlare av driva transistorer (se schema). Beräkna lämplig bas motstånden, som förklaras i föregående steg, och ansluta dem till stift 8, 9, 10, 11 av Arduino. Glöm inte att ansluta marken för strömförsörjningen till marken i din Arduino.

För att köra en bipolärstepper, behöver du 2 H-broar. Anslut utgångarna av varje H-brygga till en spole i nummerlistan. Anslut ingångarna av H-broar till stift 8, 9, 10, 11 av Arduino. Glöm inte att ansluta marken för strömförsörjningen till marken i din Arduino. Anslut den aktivera linjen till VSS.

Obs: stegmotorer dra mycket ström, så du inte kan använda ombord strömtillförseln till Arduino. Du bör också använda hög effekt transistorer eller MOSFETs. Kontrollera temperaturen i transistorerna, och Lägg till en kylfläns vid behov.

Nu öppnar i stepper_oneRevolution exempel (fil > exempel > Stepper) och ändra antalet steg per varv att matcha din motor.

Längst upp i filen finns det en rad

#include <stepper.h >

Detta lägger bara koden o filen Stepper.h till skiss, så du kan använda dess funktioner. Detta kallas stepper bibliotek.

På rad 24 skapar vi en instans av Stepper klass. Instansen som kallas "myStepper" (detta namn är bara godtyckliga), och har 5 parametrar: antalet steg i ett varv (360°) och de 4 stift som ansluter till baserna av transistorerna.

En klass har en uppsättning funktioner, att köra en funktion för en viss instans, används en punkt (fullt stopp): instance.function(arguments);

myStepper.setSpeed(60);

Kom ihåg Serial.print (...)? Detta fungerar på ett liknande sätt.

SetSpeed(rpm) funnction anger hastigheten, i rotationer per minimalt (så det beror på antalet steg per varv).

En annan funktion i klassen Stepper är step(steps), det visar bara motor för ett givet antal steg. Om detta tal är positivt kan flyttas det medsols, om den är negativ, det kommer att röra sig motsols.

Ladda upp exemplet till Arduino och motorn ska vända 360° medurs, sedan 360° motsols, och så vidare. Om det inte, men bara vibrerar, försök byta 2 utgångsstift, tills det fungerar. Du kan byta fysiska stiften till Arduino, eller bara ändra PIN-kod på rad 24. (t.ex. 9, 8, 10, 11 istället för 8, 9, 10, 11)

Användning av klasser gör det mycket enkelt att skapa flera Stepper instanser. Titta på exemplet _2steppers_oneRevolution.

När en stepper inte går, håller det en spole på block motorn, så det inte rör sig. Detta drar mycket ström, men, och genom sig och transistorerna kan få mycket varmt.
För att stoppa detta, kan du bara utföra en digitalWrite (pin, låg) på de 4 stiften på nummerlistan.

Om du använder en enhet IC (som en H-bro eller en darlington array), kan du också ansluta aktivera PIN-koden till din Arduino. Om du anger det höga, motorn kommer att aktiveras, och när du anger det låga, det blir ingen spänning över motorn alls.

Du kan skapa en egen liten funktion så här inaktiverar stepper, som jag gjorde i exemplet Stepper_stop

voidstepperOff() {
digitalWrite(8,LOW);
digitalWrite(9,LOW);
digitalWrite(10,LOW);
digitalWrite(11,LOW);
}

Du kan göra funktioner som stort sett allt, till exempel om du måste utföra en serie kommandon flera gånger i programmet. En bra tutorial på klasser, funktioner och bibliotek är biblioteket handledning på Arduin

Arduino referens: Stepper bibliotek

Se Steg
Relaterade Ämnen

Nybörjare guide till installera och konfigurera Octoprint på en Raspberry pi för 3D utskrift

Om du har läst någon av mina andra instructables, mest namnkunniga komplett nybörjare steg för steg, 3D-skrivare med alla delar listor, vet du att jag kommer ihåg min egen frustration på ofullständiga instruktioner och guider även efter jag äntligen...

En nybörjare Guide till 35mm Film fotografering

Hej alla! Jag har nyligen verkligen kommit in film fotografering efter min far gav mig sin gamla Pentax K1000. Jag är relativt ny på film fotografering köpa har lärt mig en hel del hittills.Målet med detta Instructable är att ge en detaljerad, lätt a...

Nybörjare Guide till fotografi

detta instructable är för nybörjare, och tar dig genom 1) lätt saker att fotografera2) utveckla bilder för att vara anständig (oroa dig inte det är mycket lätt jag lärde min stora mormor att göra det)Steg 1: utrustning Om du har en trevlig kamera med...

En nybörjares Guide till Photoshop

jag gjorde denna guide till Photoshop med hjälp av programmet sig på min hem laptop. Det har varit ett projekt som jag har velat ta itu med eftersom jag har hittat liknande guider inte har inkluderat några av viktig information.Jag har gjort digital...

En nybörjare guide till setup ESP8266 med Arduino Mega 2560 eller Uno

För produkter med öppen källkod för att lyckas eller anta en masse "skaparna" / "DIY-na" / "dev" / "etc"; en aktuell och korrekt dokumentation eller snabbstart-guide som skall krävas. Användarens inlägg i diskussion...

En nybörjare Guide till Raw-filer och Raw-bearbetning

En av de första sakerna jag lärt mig om i fotografi var om en filtyp som kallas en Raw-fil. Ofta när någon börjar i fotografi, inser han eller hon inte potentialen i Raw-filer. Först såg jag inte användning för raw-filer, de tycktes erbjuda något som...

En nybörjares Guide till XSplit programföretag och Streaming på Twitch.tv (Windows 10)

IntroduktionLive Streaming är en växande bransch där alla och envar kan dela deras spelupplevelse med världen. Om du bara titta på andra spela och prata med din favorit serpentiner i chatten, eller live streaming själv, Twitch.tv skapar en enorm, sam...

Nybörjare Guide till fiberoptik

Fiberoptik! Fiberoptik! Jag är visserligen lite besatt med fiberoptik, och av goda skäl. De är en slitstark, mångsidig och relativt enkelt sätt att lägga till vackra ljuseffekter till något du gör. Titta bara på några av de underbara projekt kan du s...

En nybörjares Guide till Stirlingmotorer

Förra året var jag en IB elev i MYP programmet. I slutet av året hade vi att göra ett forskningsprojekt om något som intresserar oss. Göra lite forskning på internet, kom jag över något som kallas en Stirlingmotor."Så, vad i helsike är en Stirlingmot...

En nybörjares Guide till papper skära

Här är en enkel guide för att komma igång att göra papper nedskärningar.Jag har gjort dem i flera år nu och har upptäckt att de är ett riktigt bra sätt att göra en vacker kort, särskilt när tiden är mot dig. Jag gör detta varje gång en födelsedag ell...

En nybörjares guide till Kolrosing, av en nybörjare.

* Detta är mitt inträde till tävlingen "Trä". Om du gillar vad jag har gjort här rösta! Tack! *Så du är nästan färdig med din woodworking projekt, har kanske du gjort några skedar, en trevlig låda, en vacker skärbräda eller några otherreally coo...

En komplett nybörjare guide till airsoft

denna guide är inte som andra instructables, denna guide innehåller allt du behöver veta för att gå ut och ha lite kul. Nu, tack vare några tips kommenterade denna sida, jag kommer att lägga till lite nya grejer... Kolla upp det!Steg 1: Komma igång A...

Nybörjare Guide till Airsoft

så du vill starta airsoft det är en rolig sport för att ta upp jag tycker det är ett steg från sittande runt att få fett spelar TV-spel. Men innan du går ut och köpa en hel kostym av redskap och toppmodellen airsoft vapen du behöver ställa dig själv...

Nybörjares Guide till att köpa Airsoft Field Gear

Så du har köpt din AEG, men din blå jeans har inte tillräckligt fickor för att hålla alla dessa extra tidningar. Det är dags att köpa några nya redskap.Problemet med att köpa nya redskap är att jag kan inte berätta exakt vad du ska köpa.Chanserna är...

Nybörjare guide till Morel svamp

Det är en helgdag som finns i såväl landsbygden söder som Mellanvästern som bara känns igen av lokalbefolkningen: svamp säsong. Det finns en uppsjö av svamp som växer under hela året, det finns bara en svamp som gör det en nödvändighet för hårt arbet...

En nybörjare Guide till spela gitarr Del1

Hej alla! Jag kommer idag att vad man ska packa i ditt gitarr fall.Steg 1: #1. Strängar En bra uppsättning strängar är lifesavers du behöver dem!Steg 2: #1. Tuner Det är uppenbart vad du gör med detta. : DSteg 3: #3. Plockar och Capo Dessa kommer i h...

Nybörjarens guide till ESP8266 och tweeting med ESP8266

Jag lärde mig om Arduino 2 år sedan. Så började jag spela runt med enkla saker som lysdioder, knappar, motorer etc. Då tänkte jag skulle inte det vara häftigt att ansluta för att göra saker som visar dagens väder, aktiekurser, träna timings på en LCD...

Arduino Anti Theft Alarm (med polis Siren): Komplett nybörjares Guide

Är du rädd för tjuvar som kan stjäla alla dina projekt??? :) :) Då detta den perfekta INSTRUCTABLE för dig. Detta är ett stöldskydd larm. När det finns ingen tjuv runt, sedan en blå LED kommer att blekna på och av; men om en tjuv försöker passera av...

Bygga en DIY Quadcopter: en nybörjare Guide

Detta är ett riktigt kort klipp på min quadcopter svävar upp och ner och rörelse i sidled. Jag försökte hålla höjden så minimal som möjligt eftersom jag är inne i mitt vardagsrum, men som ni kan se, även med som det flyger upp till huvudet (ca 6 fot)...