Denne manual vil detaljere design, simulering, konstruktion og afprøvning af DC-DC-konverter og kontrolsystemcontroller til DC-motoromskiftningstilstand.
Konverteren vil derefter blive brugt til digital styring af belastningsshuntens jævnstrømsmotor.
Kredsløbet vil blive udviklet og testet på forskellige stadier.
Den første fase vil bygge en konverter, der arbejder på 40 v.
Dette gøres for at sikre, at de ikke har parasitære induktanser fra ledninger og andre kredsløbskomponenter, der beskadiger driveren ved høje spændinger.
I anden fase vil konverteren køre motoren ved en spænding på 400 V ved en maksimal belastning.
Det sidste trin er at bruge arduino til at styre pwm-bølgen for at justere spændingen og styre motorens hastighed med variabel belastning.
Komponenter er ikke altid billige, så prøv at bygge systemet så billigt som muligt.
Det endelige resultat af dette hjælpeprogram vil være at bygge en DC-
DC-konverter og kontrolsystemcontroller, motorhastigheden styres inden for 1 % ved stationær indstillingspunkt, og hastigheden indstilles inden for 2 s under variabel belastning.
Min eksisterende motor har følgende specifikationer.
Motorspecifikation: Armatur: 380 Vdc, 3. 6 AExcitation (Shunt): 380 Vdc, 0.
Hastighed: 1500 r/minPower: ca. 1.
1 kWDC motorstrømforsyning = 380 VOptokobler og driverstrømforsyning = 21 VDette betyder, at den maksimale strøm- og spændingsværdi for komponenterne eller ækvivalent motorstyrke vil have styret styring af en højere motorværdi eller tilsvarende.
Tørhjulsdioden markeret som D1 i kredsløbsdiagrammet bruges til at give en strømningsvej til motorens omvendte tilbagepotentiale for at forhindre strømmen i at vende og beskadige samlingen, når strømmen er slukket-
Motoren kører stadig (generatortilstand).
Den nominelle maksimale bagspænding er 600 V og den maksimale fremadgående jævnstrøm er 15.
Derfor kan det antages, at svinghjulsdioden vil kunne arbejde ved tilstrækkelige spændings- og strømniveauer til denne opgave.
IGBT'en bruges til at skifte strømforsyningen til motoren ved at modtage et 5 v pwm-signal fra Arduino'en gennem den optiske kobler og IGBT-driveren for at skifte en meget stor 380 V motorforsyningsspænding.
Den maksimale kontinuerlige kollektorstrøm for den anvendte IGBT er 4.
5A ved en overgangstemperatur på 100 °c.
Den maksimale emitterspænding er 600 V.
Derfor kan det antages, at svinghjulsdioden kan arbejde ved tilstrækkelige spændings- og strømniveauer til praktisk anvendelse.
Det er vigtigt at tilføje radiatoren til IGBT, helst en stor radiator.
Den hurtige switch MOSFET kan bruges uden IGBT'er.
Gatetærskelspændingen for IGBT er mellem 3,75 V og 5,75
V, og der kræves drev for at levere denne spænding.
Kredsløbet fungerer ved en frekvens på 10 kHz, så omskiftningstiden for IGBT skal være hurtigere end 100 us, det vil sige tiden for en hel bølge.
Skiftetiden for IGBT er 15ns, hvilket er nok.
Skiftetiden for den valgte TC4421-driver er mindst 3000 gange PWM-bølgen.
Dette sikrer, at føreren er i stand til at skifte hurtigt nok til kredsløbsdrift.
Driveren skal levere mere strøm end Arduino kan levere.
Driveren får den nødvendige strøm til at betjene IGBT fra strømforsyningen, ikke fra Arduino.
Dette er for at beskytte Arduino, fordi strømsvigtet vil overophede Arduino, røgen vil komme ud og Arduino vil blive ødelagt (
afprøvet og testet).
Driveren vil blive isoleret fra mikrocontrolleren, der leverer PWM-bølger ved at bruge den optiske kobler.
Den fotoelektriske kobling isolerer fuldstændigt Arduino, som er den vigtigste og mest værdifulde del af kredsløbet.
For motorer med forskellige parametre er det kun nødvendigt at ændre IGBT til en IGBT med lignende egenskaber som motoren, som kan håndtere den nødvendige omvendte spænding og kontinuerlige samlestrøm.
WIMA-kondensatoren bruges sammen med elektrolytkondensatoren på motorens strømforsyning.
Dette gemmer ladningen af den stabile strømforsyning, og vigtigst af alt hjælper med at eliminere induktansen af kabler og stik i systemet. For at minimere afstanden mellem komponenterne er unødvendig induktans til kredsløbslayout opført.
Især i sløjfen mellem IGBT-driveren og IGBT.
Der gøres forsøg på at eliminere støj og ringetoner fra jorden mellem Arduino, optisk kobler, driver og IGBT.
Samlingen er svejset på Veroboard.
En nem måde at bygge et kredsløb på er at tegne komponenterne i kredsløbsdiagrammet på veroboardet, før du begynder at svejse.
Svejsning i godt ventilerede områder.
Brug den ledende sti til filen Scrath til at skabe et mellemrum mellem komponenter, der ikke skal forbindes.
Med DIP-emballage kan komponenter nemt udskiftes.
Dette hjælper uden behov for at svejse komponenter og løse reservedele, når de fejler.
Jeg brugte bananstik (
Stik i sort og rød)
For nemt at forbinde min strømforsyning til veroboardet er det muligt at springe dette over og ledningen svejses direkte til brættet.
Ved at inkludere Arduino pwm-biblioteket (
vedhæftet som en ZIP-fil).
A pi-controller af proportional integreret controller
Bruges til at styre rotorens hastighed.
Forholdet og integralforstærkningen kan beregnes eller estimeres, før der kan opnås tilstrækkelig afviklingstid og overskridelse.
PI-controlleren implementeres samtidigt med Arduino ()loop.
Omdrejningstælleren måler rotorens hastighed.
Brug analogRead til at indtaste arduinos målinger i en af de analoge indgange.
Fejlen beregnes ved at trække den aktuelle rotorhastighed fra den indstillede rotorhastighed og indstilles til at være lig med fejlen.
Tidsintegration udføres ved at tilføje prøvetiden til hver sløjfe og indstille den til samme tid, og dermed øges med hver iteration af sløjfen.
Duty cycle-området, som Arduino kan udlæse, er fra 0 til 255.
Brug pwmWrite i PWM-biblioteket til at beregne duty cycle og udlæse det til den valgte digitale output PWM-pin.
Implementering dobbelt fejl af PI controller = ref-rpm;
Tid = tid 20e-6;
Dobbelt pwm = initial kp * fejl ki * tid * fejl;
Implementering af PWM-dobbeltsensor = analogRead (A1); pwmWrite(3, pwm-255);
Du kan se hele projektkoden i ArduinoCode. rar fil.
Koden i filen er justeret for at reversere driveren.
Det omvendte drev har følgende effekt på kredsløbets driftscyklus, hvilket betyder new_dutycycle = 255-dutycycle.
For ikke-inverterede drev kan dette ændres ved at vende ovenstående ligning om.
Til sidst blev kredsløbet testet og målt for at afgøre, om de ønskede resultater blev opnået.
Controlleren er indstillet til to forskellige hastigheder og uploadet til arduino.
Strømmen er tændt.
Motoren accelererer hurtigt hurtigere end forventet og stabiliserer sig derefter ved udvalgte hastigheder.
Teknologien i denne styremotor er meget effektiv og kan fungere på alle DC-motorer.