» tråde » Tips »To inverter kredsløb 12 -220 volt på arduino

To inverter kredsløb 12 -220 volt på arduino


Inverter 12-220 volt på Arduino ren sinus med fuld programkode.


teori
Det er meget vanskeligt at opnå sinusbølgefunktion og kan ikke anbefales til invertere, fordi elektronisk enheder kan generelt ikke lide eksponentielt stigende strømme eller spændinger. Da invertere hovedsageligt fremstilles ved hjælp af elektroniske enheder i fast tilstand, fjernes normalt en sinusformet bølgeform.

Elektroniske kraftanordninger, når de arbejder med sinusformede bølger, giver ineffektive resultater, da enheder som regel opvarmes i sammenligning med rektangulære pulser.

Den bedste mulighed for at implementere en sinusbølge på en inverter er således PWM, hvilket betyder pulsbreddemodulation eller PWM.

PWM er en forbedret måde (digital version) af eksponentiel bølgeformeksponering gennem forholdsmæssigt varierende firkantede pulsbredder, hvis nettoværdi beregnes nøjagtigt i henhold til nettoværdien af ​​den valgte eksponentielle bølgeform, her henviser den "rene" værdi til RMS-værdien. Derfor kan den beregnede PWM med henvisning til en given sinusbølge anvendes som en ideel ækvivalent til replikation af en given sinusbølge. Derudover vil PWM'er være ideelt kompatible med elektroniske enheder (mosfets, BJTs, IGBTS) og tillade brugen af ​​dem med minimal varme.

Hvad er SPWM?
Den mest almindelige metode er at fremstille en PWM-sinus (sinusbølge) eller SPWM ved at anvende flere eksponentielt variable signaler på input fra en driftsforstærker til den nødvendige behandling. Blandt de to indgangssignaler skal den ene være meget højere i frekvens sammenlignet med den anden.

Brug af to indgangssignaler
Som nævnt i det foregående afsnit involverer proceduren levering af to eksponentielt varierende signaler til indgange fra driftsforstærkeren.
Her er den operationelle forstærker konfigureret som en typisk komparator, så vi kan antage, at den operationelle forstærker straks vil begynde at sammenligne de øjeblikkelige spændingsniveauer for disse to overlejrede signaler i det øjeblik, de vises eller anvendes til dens indgange.

For at den operationelle forstærker korrekt kan implementere den nødvendige sinusformede PWM ved dens output, er det nødvendigt, at et af signalerne har en meget højere frekvens end det andet. Den langsommere frekvens er her den, der skal være sinusbølgen i prøven, som skal simuleres (replikeres) af PWM'er.

Ideelt set skal begge signaler være sinusformet (det ene med en højere frekvens end det andet), men det samme kan realiseres ved at inkludere en trekantet bølge (høj frekvens) og en sinusbølge (selektiv bølge med en lav frekvens). Som det kan ses på de følgende billeder, føres højfrekvenssignalet altid til den inverterende indgang (-) af driftsforstærkeren, mens et andet langsommere sinusformet signal leveres til den ikke-inverterende (+) indgang i driftsforstærkeren. I værste tilfælde kan begge signaler være trekantede bølger med anbefalede frekvensniveauer som beskrevet ovenfor. Dette vil dog hjælpe med at opnå en rimelig god ækvivalent med PWM sinusbølgen.

Et signal med en højere frekvens kaldes et bæresignal, mens et langsommere prøvesignal kaldes et modulerende input.

Opret SPWM med en trekantet og sene bølge
Med henvisning til ovenstående figur er det muligt at visualisere gennem de afbildede punkter de forskellige sammenfaldende eller overlappende spændingspunkter for de to signaler i et givet tidsrum. Den vandrette akse viser bølgeformens tidsperiode, mens den lodrette akse viser spændingsniveauerne på 2, der samtidig kører, den overlagrede bølgeform. Figuren informerer os om, hvordan den operationelle forstærker vil reagere på de viste matchende øjeblikkelige spændingsniveauer for de to signaler og frembringer en tilsvarende skiftende sinusformet PWM ved dens output. En operationel forstærker (op-forstærker) sammenligner simpelthen spændingsniveauerne i en hurtig trekantbølge, der straks ændrer en sinusbølge (det kan også være en trekantbølge), og kontrollerer for tilfælde, hvor spændingen i trekantbølgeformen kan være lavere end sinusbølgens spænding og reagerer skab straks høj logik på dine udgange.

Dette opretholdes, så længe den potentielle bølge i trekanten fortsætter med at være lavere end sinusbølgenes potentiale, og det øjeblik, hvor sinusbølgens potentiale detekteres at være lavere end det øjeblikkelige potentiale for trekantens bølge, vender outputene tilbage med et minimum og tåler, indtil situationen gentager sig.

Denne kontinuerlige sammenligning af de øjeblikkelige potentialniveauer af to overlagrede bølgeformer ved de to indgange af driftsforstærkerne fører til oprettelse af tilsvarende skiftende PWM'er, som nøjagtigt kan gentage sinusformet form anvendt på den ikke-inverterende input fra driftsforstærkeren.

Driftsforstærker og SPWM
Følgende figur viser modellering ovennævnte operation:
To inverter kredsløb 12 -220 volt på arduino

Her kan vi se, hvordan det implementeres i praksis, og det er sådan, at den operationelle forstærker vil gøre det samme (skønt i en meget højere hastighed i MS).

Handlingen er ganske åbenlyst og viser tydeligt, hvordan den operationelle forstærker skal behandle PWM-sinusbølgen ved at sammenligne to samtidigt skiftende signaler ved dens indgange, som beskrevet i de foregående afsnit.

Faktisk vil den operationelle forstærker behandle sinusformet PWM meget mere nøjagtigt end simuleringen vist ovenfor, den kan være 100 gange bedre, hvilket skaber ekstremt ensartet og godt målt PWM, der matcher den medfølgende prøve. Sinebølge.

Arduino inverter to kredsløb

dele liste
Alle 1/4 watt modstande, 5% CFR
• 10K = 4
• 1K = 2
• BC547 = 4stk
• MOSFETs IRF540 = 2stk
Arduino UNO = 1
• Transformator = 9-0-9V / 220V / 120V.
• Batteri = 12V


Designet er faktisk meget enkelt, som vist i den følgende figur.

Pin nr. 8 og pin # 9 opretter PWM skiftevis og skifter Mosfets med den samme PWM.
Mosfet inducerer på sin side en meget strøm SPWM-bølgeform på transformeren ved hjælp af batteriets magt, hvilket får transformerens sekundære til at producere en identisk bølgeform.

Det foreslåede Arduino-inverterkredsløb kan opgraderes til ethvert foretrukket højere effektniveau ved blot at udskifte henholdsvis Mosfets og transformer, som et alternativ, kan du også konvertere dette til en fuld bro eller H-bro sinusbølgeinverter
Arduino Board Power

Waveform-billeder til Arduino SPWM

Da Arduino producerer en 5V output, er dette muligvis ikke ideelt til direkte styring af MOS-transistorer.

Derfor er det nødvendigt at hæve strobeniveauet til 12V, så Mosfets fungerer korrekt uden at opvarme apparaterne.

For at sikre, at Mosfety ikke starter, når Arduino starter eller starter, skal du tilføje følgende forsinkelsesgenerator og tilslutte den til basen på BC547-transistorer.Dette vil beskytte Mosfets og forhindre dem i at brænde ud under en tænd / sluk-kontakt, og når Arduino starter op.

Tilføjelse af en automatisk spændingsregulator
Ligesom på enhver anden inverter kan udgangen af ​​dette design stige til usikre grænser, når batteriet er fuldt opladet.

For at kontrollere dette skal du tilføje en automatisk spændingsregulator.
BC547-opsamlerne skal tilsluttes baserne i det venstre BC547-par, som er forbundet til Arduino via 10K-modstande.

Den anden version af inverteren ved hjælp af sn7404 / k155ln1-chippen


Det er vigtigt at:
For at undgå utilsigtet tænding, inden Arduino læsses, kan en simpel forsinkelse i timerkredsløbet inkluderes i ovenstående design, som vist nedenfor:


Programkode:

/ *
Denne kode var baseret på Swagatam SPWM-kode med ændringer foretaget for at fjerne fejl. Brug denne kode, som du ville bruge andre Swagatams værker.
Atton-risiko 2017
* /
const int sPWMArray [] = {500,500,750,500,1250,500,2000,500,1250,500,750,500,500}; // Dette er matrixen, hvor SPWM-værdierne ændrer dem efter ønske
const int sPWMArrayValues ​​= 13; // Du har brug for dette, da C ikke giver dig længden af ​​en matrix
// Stifterne
const int sPWMpin1 = 10;
const int sPWMpin2 = 9;
// Stiften skifter
bool sPWMpin1Status = sandt;
bool sPWMpin2Status = sandt;
ugyldig opsætning ()
{
pinMode (sPWMpin1, OUTPUT);
pinMode (sPWMpin2, OUTPUT);
}
void loop ()
{
// Sløjfe til pin 1
for (int i (0); i! = sPWMArrayValues; i ++)
{
if (sPWMpin1Status)
{
digitalWrite (sPWMpin1, HIGH);
delayMicroseconds (sPWMArray [i]);
sPWMpin1Status = falsk;
}
andet
{
digitalWrite (sPWMpin1, LOW);
delayMicroseconds (sPWMArray [i]);
sPWMpin1Status = sandt;
}
}
// Sløjfe til pin 2
for (int i (0); i! = sPWMArrayValues; i ++)
{
if (sPWMpin2Status)
{
digitalWrite (sPWMpin2, HIGH);
delayMicroseconds (sPWMArray [i]);
sPWMpin2Status = falsk;
}
andet
{
digitalWrite (sPWMpin2, LOW);
delayMicroseconds (sPWMArray [i]);
sPWMpin2Status = sandt;
}
}
}

Held og lykke.




Velegnet til emne

Relaterede emner

Tilføj en kommentar

    • smilesmilxaxaokdontknowyahoonea
      bossscratchnarrejaja-jaaggressivhemmelighed
      undskylddansdance2dance3benådninghjælpdrikkevarer
      stop-vennergodgoodgoodfløjtedånetunge
      røgklappecrayerklærerspottendedon-t_mentiondownloade
      hedeirefullaugh1mdamødemoskingnegativ
      not_ipopcornstraffelæseskræmmeforskrækkelsersøg
      hånethank_youdetteto_clueumnikakutenig
      dårligbeeeblack_eyeblum3blushpralekedsomhed
      censureretpleasantrysecret2truesejryusun_bespectacled
      SHOKRespektlolprevedvelkommenkrutoyya_za
      ya_dobryihjælperenne_huliganne_othodiFludforbudtæt
5 kommentar
Riddick
Og hvor i helvede er outputparametrene?
Gæst Andrey
Jeg anbefaler at installere IR4427-chippen som en driver - to lavere nøgledrivere uden inversion.
Copyisten påtog sig at genfortælle materiale om et emne, som han var helt uvidende om:
Der er mange absurditeter, og det syntes for mig (måske tager jeg fejl), at forfatteren taler russisk som fremmedsprog, så han oversætter automatisk fra sit modersmål til engelsk og fra engelsk til russisk, fordi Direkte automatisk oversættelse er mulig og ikke! Men dette er bare mine gætter! scratch
Copyisten påtog sig at genfortælle materiale om et emne, som han var helt uvidende om:
BC547 samlere skal være tilsluttet grunde venstre par BC547
Afsnit "Teori" - en sjælden usammenhængende vrøvl!

Vi råder dig til at læse:

Giv den til smartphonen ...