Spørgsmål:
Hvordan man kører børsteløs motor med Arduino?
tuupola
2009-11-01 22:47:20 UTC
view on stackexchange narkive permalink

Er det muligt at køre en børsteløs motor direkte med Arduino? Eller skal jeg vende tilbage til at styre en børsteløs motor ESC med PWM-impulser?

Du kan måske få en driverchip fra en gammel dvd / cd-rom-afspiller.
Seks svar:
#1
+14
Georgios
2011-01-01 22:08:57 UTC
view on stackexchange narkive permalink

Faktisk SKAL du nogle gange bare lave dit eget ESC. ESC'er, der sælges på maketen, er "kommercialiserede" og har deres egne kontrolkoder til RC-ting som fly, helier, biler ...

For eksempel skal du nogle gange have en dobbeltsides regenerativ bremse. Fra tilbage til stop og fra frem til stop. Der er INGEN RC ESC, der har den funktion. De har enten kun en regenerativ bremse fremad til stop eller ingen. Eller du har muligvis brug for en sensorstyring BLDC, men der er kun få sensorerede ESC'er på markedet, og de har kun (det samme for almindelige sensorløse ESC'er) indbyggede funktioner, som du ikke har brug for og ikke har nogle, som du absolut har brug for !

At designe din egen ESC er et perfekt valg og meget billigere end den billigste $ 10 en med ENORM strøm.

Det er rigtigt, at kontrolkoden og hardware kan være en smerte men efter lidt læsning er det bare et legetøj.

Der er en god vejledning her om, hvordan man laver en BLDC-controller med en arduino ved hjælp af 6 mosfeter og nogle andre ting, du nemt kan finde på Jamecos websted (meget flot) Det er her, jeg køber mine ting til billige, men spurkfun kan være et godt alternativ, hvis du ikke finder nogle sensorer som gyroer osv.

http://www.instructables.com/id / BLDC-Motor-Control-med-Arduino-bjærget-HD-motor /

meget flot og nem at følge guide. Du kan skabe ALLE kræfter fra lave til ultrahøje ESC'er ved hjælp af denne vejledning og næsten enhver kombination af regenbremse, ved hjælp af modstand, motorviklinger eller batterioplader ...

Brug af mosfets er bare et legetøj, du kan gøre næsten hvad som helst.

Sandsynligheden er, at du ikke kan styre denne mosfet meget effektivt med en MCU som et arduio-kort, der kun udsender 5V, tror jeg, og portens spænding til mosfet til medium spænding er temmelig meget højere i området 16-30V let. Så du skal bruge en anden tansisor til at styrke arduinos spænding.

Held og lykke.

#2
+10
jkopel
2009-11-02 07:47:58 UTC
view on stackexchange narkive permalink

Du bør bestemt bruge ESC. Børsteløse motorer fungerer bedst, når de køres med en sinusbølge (eller så tæt på en sinusbølge som muligt). De kræver også et ret nøjagtigt og kompliceret sæt signaler. At generere de korrekte bølgeformer og timing fra en arduino ville være svært, og medmindre du virkelig har brug for det, er det sandsynligvis ikke det værd. Du kan altid arrangere at styre ESC fra din arduino, hvilket giver dig programmatisk kontrol plus effektiviteten og styrken i ESC.

nitpick: Ifølge Wikipedia (http://en.wikipedia.org/wiki/brushless_DC_electric_motor) er BLDC-motorer optimeret til at fungere bedst, når de drives af skiftet DC: fuldt positive, ikke-kørte og fuldt negative. Permanent magnet AC-motorer er optimeret til fungerer bedst, når den drives af en sinusbølge; det er den eneste signifikante forskel mellem dem. Jeg er enig i din konklusion: det er sandsynligvis det værd at bruge en standard-ESC i stedet for selv at udvikle en.
Controlleren på en BLCD kunne meget vel bruge den samme atmega som en arduino; så fordelen er mere udlevering af detaljeringsproblemet til en anden at løse; og aflevere kommutationsopgaven på lavt niveau for at lade arduino's atmega fri til højere niveauopgaver.
BLDC-motorer bruger i det væsentlige firkantbølgedrev til spolerne. På brugersiden af ​​controlleren (ESC) bruger de jævnstrømsforsyning plus de kontrolsignaler, som ESC kræver. Sinusbølger har ikke funktion.
#3
+6
Scott Murphy
2009-11-02 02:34:48 UTC
view on stackexchange narkive permalink

Jeg har gået frem og tilbage på dette i cirka 30 minutter. Jeg tror, ​​du sandsynligvis vil bruge et ESC, medmindre du bare gør det som en læringsoplevelse. At styre motoren korrekt ville binde flere ressourcer fra din arduino, end jeg kunne forestille mig at retfærdiggøre. Plus, du vil begrænse motorens lydhørhed til adc-pollingens. Jeg ville ikke tænke på at bruge et ESC som tilbagevenden, det er sådan, det skal gøres.

#4
+4
JustJeff
2010-05-28 03:28:46 UTC
view on stackexchange narkive permalink

Da ingen andre har sagt det - ville du ikke være i stand til praktisk talt at køre en motor direkte fra en arduino, simpelthen fordi AVR-chippen ikke udsender nok strøm til at levere nyttige mængder strøm.

Så i det mindste vil du se på at skabe et trefaset H-broarrangement (læs: tre 'halve H-broer') for at drive de nødvendige strømme, hvilket kræver seks digitale linjer bare til at betjene drevtransistorer.

Forudsat at du havde løst dette drevkapacitetsproblem, og det ikke er trivielt, bliver du nødt til at komme ind i kontrolkoden. Disse motorer har permanente magnetrotorer, så du kan ikke bare dreje statorfeltet blindt og få nyttigt drejningsmoment. Du skal kende rotorens retning for at holde de elektriske fasevinkler justeret, så du får ensartet drejningsmoment.

Så som andre har sagt, medmindre du ønsker den specifikke læringsoplevelse, er der ingen vanære i bare købe et ESC.

#5
+3
ppvi
2009-11-06 15:47:12 UTC
view on stackexchange narkive permalink

Jeg synes, det ville være en god læringsøvelse, men ESC'er bruger EMF tilbage til at opdage rotation, selvom du kan bruge optiske eller magnetiske sensorer til dette. Dybest set skal du generere 3 vekselstrømsfaser og aktivere / deaktivere dem i det rigtige øjeblik.

Magnetfeltets rotation skal tilpasses motorens, dvs. hvis du vil accelerere, skal feltet køre lidt tidligere og hurtigere. Du kan også bryde ved at gøre det modsatte.

For en grundig forklaring: http://www.embedded.com/column/technicalinsights/196701832?_requestid=137540

Få et ESC for et praktisk job.

Jeg troede først, at acceleration og deceleration blev opnået som du beskriver, ved at føre og forsinke marken.men så læste jeg, at accelerationen hovedsageligt bestemmes af spænding (selvom jeg ikke kan se, hvordan det kan bremse).Jeg føler mig lidt forvirret.fungerer en af fremgangsmåderne til acceleration?nogen grund til at foretrække det ene over det andet eller blande dem?tak!
#6
+2
ElectroNick
2011-12-08 23:24:16 UTC
view on stackexchange narkive permalink

Du kan køre den direkte med Arduino, hvis du ved at køre ikke betyder bogstaveligt at levere strøm til viklingerne - enhver MCU ville være alt for svag til det. Desuden kan Arduino synke, men ikke kildestrøm, men du har brug for begge dele til en børsteløs motor.

Men hvis du bruger en meget simpel H-bridge driver IC ud over Arduino, kan du implementere stort set alle funktioner i ESC. Afhængigt af applikationen har du muligvis ikke engang brug for E * SC *, hvilket betyder, at du muligvis ikke har brug for en lukket sløjfehastighedskontrol - hvis belastningen ikke er for stor, kan du muligvis bare slippe af sted med simpelthen at stole på, at motoren reagerer synkroniseret med strømning af viklingen, og hastigheden af ​​de viklingsstrømændringer vil komme fra Arduino. Tjek denne meget enkle børsteløse (BLDC) motorstyringsskema og Arduino-skitse, som du muligvis kan tilpasse til at køre din motor. Den ene er baseret på SN754410NE quad H-bridge IC, som maksimeres til 750mA, hvis hukommelsen tjener.

Koden er ikke for triviel og bruger PWM til jævn rotation, men det er ikke for svært at analysere for at tilpasse sig din applikation. Den aktuelle Arduino-skitse til BLDC-motoren er her.



Denne spørgsmål og svar blev automatisk oversat fra det engelske sprog.Det originale indhold er tilgængeligt på stackexchange, som vi takker for den cc by-sa 2.0-licens, den distribueres under.
Loading...