Sadržaj:

Mrežni pretvarač: 10 koraka (sa slikama)
Mrežni pretvarač: 10 koraka (sa slikama)

Video: Mrežni pretvarač: 10 koraka (sa slikama)

Video: Mrežni pretvarač: 10 koraka (sa slikama)
Video: Porsche Taycan Turbo и Turbo S - технология, все функции, все особенности подробно описаны 2024, Juli
Anonim
Image
Image
Mrežni inverter
Mrežni inverter
Mrežni inverter
Mrežni inverter

Ovo je mesnati projekt pa se zakopčajte!

Mrežni pretvarači omogućuju vam uključivanje napajanja u mrežnu utičnicu što je odlična mogućnost. Interesantna su mi energetska elektronika i sistemi upravljanja koji su uključeni u njihov dizajn pa sam izgradio svoj. Ovaj izvještaj dijeli ono što sam naučio i dokumentuje kako sam radio. Zanimali bi me svi vaši komentari (osim onih o tome da se ne petljate sa električnom energijom).

Svi koncepti su skalabilni, ali ovo podešavanje imalo je maksimalnu izlaznu snagu od 40 vata prije nego što su induktori filtera počeli zasićivati. Izlazna struja je sinusoidalni sa THD <5%.

Pogledajte softver na mom GitHubu

Supplies

  • Koristio sam razvojnu ploču STM32F407. Radi na 168MHz i ima 3 ugrađena ADC-a sposobna za 12-bitnu rezoluciju pri preko 2,4MSPS (milion uzoraka u sekundi) svaki. To je ludo!
  • Koristio sam razvojnu ploču DRV8301. Ovdje se nalazi 60-voltni H-most, zajedno s potrebnim upravljačkim programima za vrata, trenutnim šantovima i pojačalima za trenutne šantove. Super lijepo!
  • Koristio sam toroidni transformator 230-25v sa 2 izlazne slavine. To je značilo da ne moram izravno proizvoditi mrežni napon, već bih umjesto toga mogao raditi s vršnim naponom od 40 volti. Mnogo sigurnije!
  • Spojio sam opterećenje induktora i kondenzatora zajedno kako bih dobio vrijednosti L i C koje sam želio za filter.
  • Osciloskop i diferencijalna sonda su ključni za ovakav projekat. Imam pikoskop

Korak 1: Šta je mrežno napajanje?

Šta je mrežno napajanje?
Šta je mrežno napajanje?
Šta je mrežno napajanje?
Šta je mrežno napajanje?

Ono što dobijate na utičnici (u Velikoj Britaniji) je 50Hz 230v RMS sinusoidni signal sa vrlo niskom impedansom. Nekoliko stvari o tome treba reći:

50Hz - Mrežna frekvencija se vrlo precizno održava na 50Hz. Malo varira, ali 90% vremena je između 49,9-50,1Hz. Pogledajte ovdje. Možete zamisliti kako se svi enormni generatori u elektranama gore -dolje po zemlji okreću složno. Rotiraju se sinkrono proizvodeći za nas sinusoidni signal od 50Hz. Njihovoj kombiniranoj velikoj rotacijskoj inerciji potrebno je vrijeme da uspori ili ubrza.

U teoriji, ako je na mrežu priključeno ogromno opterećenje, to bi počelo usporavati proizvođače u zemlji. Međutim, kao odgovor, momci iz ureda za kontrolu Nacionalne mreže zatražili bi od elektrana da im podstaknu bojlere, povećaju toplinu i prisile te generatore da teže prate potražnju. Stoga su ponuda i potražnja u kontinuiranom plesu jedno s drugim.

Još nešto treba reći o signalu od 50Hz. Iako vrlo malo varira oko 50Hz, momci s vrha brinu se da prosječna dnevna frekvencija bude točno 50Hz. Dakle, ako je mreža na 49,95Hz 10 minuta, oni će osigurati da kasnije radi na 50,05Hz kako bi doveli tačan broj ciklusa na 50Hz x 60 sekundi x 60 minuta x 24 sata = 4, 320, 000/dan. To rade upravo koristeći Međunarodno atomsko vrijeme. Kućanski, uredski i industrijski uređaji stoga mogu koristiti frekvenciju mreže kako bi zadržali vrijeme. To se obično radi na primjer s mehaničkim mjeračima utičnica.

230v - Ovo je RMS (Root Mean Square) napon signala od 50Hz. Stvarni signal se kreće do vrha od 325 V. Ovo je važno znati jer ako gradite pretvarač, morate proizvesti ovako visoke napone ako želite da struja teče u utikače.

U stvarnosti, naponi koji se vide na utikaču u vašoj kući prilično su promjenjivi. To je zbog pada napona na otporu u žicama, konektorima, osiguračima, transformatorima itd. Otpor je posvuda. Ako uključite električni tuš koji vuče 11 kilovata (to je ~ 50 ampera), tada će vam i otpor od 0,2 ohma pasti za 10 volti. Možda ćete ovo vidjeti kao svjetla koja se lagano prigušuju. Veliki motori, poput onih u hooveru, vuku velike struje dok motor ubrzava. Tako često vidite lagano treperenje svjetla kada ih uključite.

Mislim da je mrežni napon mnogo promjenjiviji. Ovdje u Velikoj Britaniji trebalo bi biti 230v sa tolerancijom +10%/-6%. Možete očekivati da ćete vidjeti nagle promjene i fluktuacije kada se veliki tereti u blizini uključe/isključe. Pomislite na mašine za sušenje veša, kotliće, pećnice, hoovers itd.

Sinusoidni - Signal bi trebao biti lijep čisti sinusni val, ali u stvarnosti neki nelinearni uređaji usisavaju svoju snagu iz određenih točaka ciklusa sinusnog vala. Ovo unosi izobličenja i zato signal nije savršen sinusni val. Nelinearna opterećenja obično uključuju računarska napajanja, fluorescentna svjetla, punjače, televizore itd.

Totalno harmoničko izobličenje (THD) kvantificira ovo u valnom obliku. Postoje propisi o tome kako čista je izlaz pretvarača mora biti. Ako ne može proizvesti dovoljno čist signal, neće biti odobren za prodaju. Ovo je važno jer sadržaj harmonika u mreži smanjuje efikasnost nekih uređaja povezanih na nju (posebno neparnih harmonika). Vjerujem da je maksimalno dopušteni THD 8%

Niska impedancija - Prilikom razmišljanja o mrežnom pretvaraču ovo će biti važno uzeti u obzir. Na mrežu su priključene sve vrste opterećenja, uključujući induktivna, otpornička i povremeno kapacitivna opterećenja. Dakle, impedancija je nepoznata i promjenjiva. Otpor je vrlo mali, što znači da ako priključite jako strujno opterećenje, napon neće pasti mnogo.

Korak 2: Kako uključiti napajanje u mrežu

Kako gurnuti struju u mrežu
Kako gurnuti struju u mrežu

Za potiskivanje napajanja u mrežu moramo sintetizirati signal koji točno odgovara frekvenciji i fazi mreže, ali s naponom koji je toliko neznatno veći.

Zbog niskog otpora mreže teško je znati koliko točno treba povećati taj napon. A kako RMS napon varira, moramo se pobrinuti da s njim fluktuiramo. Samo stvaranje fiksnog napona od 50Hz, malo višeg od mrežnog napona, neće uspjeti!

PI Upravljanje izlaznom strujom

Ono što nam je potrebno je kontrolna petlja kojom mjerimo trenutnu struju koju unosimo u mrežu i automatski prilagođavamo naš izlazni napon da pokreće željenu struju. To će učinkovito pretvoriti naš izlaz u izvor struje (a ne u izvor napona) koji je prikladniji za pogon niskih impedancija. To možemo postići korištenjem PI (Proportional Integral) upravljačke petlje:

PI kontrolne petlje su fantastične! Imaju tri dela:

  • Izmjerena vrijednost - struja koju stavljamo u električnu mrežu
  • Zadana vrijednost - Struja koju želimo potisnuti u mrežu
  • Izlaz - Napon signala za generiranje

Svaki put kada pozovemo PID algoritam, prolazimo najnovije mjerenje struje i željenu zadanu vrijednost. Vratit će proizvoljan broj (proporcionalan izlaznom naponu za generiranje).

Naš PID algoritam upravljanja omogućuje nam odabir izlazne struje koju želimo u bilo kojem trenutku. Da bismo proizveli izlaznu sinusoidnu struju od 50Hz, moramo stalno mijenjati traženu struju na sinusoidan način.

PID algoritam se poziva svakih 100us (jednako 200 puta po ciklusu od 50Hz). Svaki put kada se pozove, može izravno podesiti izlazni napon i na taj način indirektno podesiti izlaznu struju. Kao rezultat toga, proizvodimo stepenasti izlaz struje sličan onom prikazanom na slici sa svakim korakom koji se javlja svakih 100us. To daje dovoljno rezolucije.

Napredna kontrola

Možemo masovno smanjiti radno opterećenje PI kontrolera dodavanjem i kontrole za unaprijed. Ovo je lako! Znamo približni izlazni napon koji ćemo trebati generirati (isto kao i trenutni mrežni napon). PI regulator se tada može ostaviti da doda mali dodatni napon potreban za pokretanje izlazne struje.

Regulator unaprijed usklađuje izlazni napon pretvarača s naponom mreže. Nikakva struja ne bi trebala teći ako se dovoljno dobro podudaramo. Kontrola feedforward Stoga se radi 99% kontrole izlaza.

Zbog niskog otpora mreže, svaka razlika u našem izlaznom naponu FF -a i naponu mreže rezultirala bi velikom strujom. Stoga sam dodao pretvarač od 1 ohma u međuspremnik između pretvarača i mreže. Ovo unosi gubitke, ali oni su prilično mali u velikoj shemi.

Korak 3: Proizvodnja izlaznog napona pomoću PWM -a

Proizvodnja izlaznog napona pomoću PWM -a
Proizvodnja izlaznog napona pomoću PWM -a
Proizvodnja izlaznog napona pomoću PWM -a
Proizvodnja izlaznog napona pomoću PWM -a
Proizvodnja izlaznog napona pomoću PWM -a
Proizvodnja izlaznog napona pomoću PWM -a

Iako neizravno kontroliramo izlaznu struju, to je izlazni napon koji generiramo u bilo kojem trenutku. Koristimo PWM (Pulse Width Modulation) za proizvodnju našeg izlaznog napona. PWM signali se lako mogu proizvesti mikrokontrolerima i mogu se pojačati pomoću H-mosta. To su jednostavni talasni oblici koje karakteriziraju 2 parametra, frekvencija F i radni ciklus D.

PWM valni oblik se prebacuje između 2 napona, u našem slučaju 0v i V napajanje

  • S D = 1,0, valni oblik PWM -a je jednostavno istosmjeran na V napajanju
  • Sa D = 0,5, dobijamo kvadratni talas sa prosječnim naponom 0,5 x V napajanje (tj. D x V napajanje)
  • Sa D = 0,1, dobijamo impulsni talasni oblik sa prosjekom perioda 0,1 x V napajanje
  • S D = 0,0, izlaz je ravni (DC na 0v)

Prosječni napon je ono što je ključno. S niskopropusnim filterom možemo ukloniti sve osim komponente prosječne istosmjerne struje. Tako da promjenom radnog ciklusa PWM -a D možemo postići bilo koji istosmjerni napon koji želimo. Sweet!

Upotreba H-mosta

H-most se sastoji od 4 prekidačka elementa. To mogu biti BJT, MOSFET ili IGBT. Da bismo proizveli prvu polovinu (0 - 180 stepeni) sinusnog talasa, fazu B smo postavili niskom tako što smo isključili Q3 i uključili Q4 (tj. Primenom PWM sa D = 0). Zatim izvodimo PWMing na fazi A. Za drugu polovicu, gdje je VAB negativan, postavljamo fazu A nisko i primjenjujemo naš PWM na fazu B. To je poznato kao bipolarno prebacivanje.

MOSFET-ove u H-mostu mora pokretati upravljački program kapije. Ovo je tema za sebe, ali jednostavan čip može to riješiti. Na razvojnoj ploči DRV8301 prikladno se nalaze H-most, upravljački programi kapija i trenutni ranžirnici što nam ovaj projekt čini pakleno lakšim.

Korak 4: Mjerenje struje

Merna struja
Merna struja
Merna struja
Merna struja
Merna struja
Merna struja

Svaka noga H-mosta ima ranžirni otpornik i diferencijalno pojačalo. Naši šanti su 0,01 ohma, a pojačala su podešena na pojačanje od 40. Stoga 1 pojačalo razvija 10 mV preko šanta koji se zatim pojačava na 400 mV.

Izlazi sa pojačavača šanta očitavaju 12 -bitni ADC -ovi na STM32F407 koji rade u načinu kontinuirane konverzije. ADC -ovi su postavljeni da uzorkuju svaki shunt na 110KSPS, a DMA kontroler automatski zapisuje konverzije u kružni bafer od 11 riječi u RAM -u. Kada se želi trenutno mjerenje, pozivamo funkciju koja vraća srednju vrijednost ovog međuspremnika od 11 riječi.

Budući da tražimo trenutna mjerenja za svaku PID iteraciju (na 10KHz), ali ispunjavamo naše ADC međuspremnike od 11 riječi brzinom od 110KHz, trebali bismo dobiti sveže podatke za svaku PID iteraciju. Razlog korištenja srednjeg filtera je taj što PWM prebacivanje može unijeti šiljke u mješavinu, a srednji filteri vrlo učinkovito iskorijeniti lažne ADC uzorke.

Ovdje treba istaknuti važnu stvar: Koju nogu H-mosta koristimo za trenutna mjerenja? Pa ovisi o tome na kojoj nozi smo trenutno PWMing, a koja samo nisko. Noga koja je nisko držana je ona iz koje želimo mjeriti našu struju, jer struja uvijek teče kroz otpornik na toj strani. Za usporedbu, na strani koja je PWMed, kada je MOSFET sa visoke strane uključen, a niska strana isključena, struja ne protiče kroz donji dio. Dakle, mijenjamo na kojoj nozi mjerimo struju na osnovu izlaznog polariteta pretvarača. To možete jasno vidjeti na slici, prikazujući izlaz iz jednog od šanterskih pojačala tokom određenog perioda. Očigledno želimo očitavanje tokom glatkog bita.

Radi lakšeg otklanjanja grešaka u našim trenutnim očitanjima. Postavio sam digitalno-analogni pretvarač na STM32F407. Napisao sam trenutna očitavanja koja sam dobio i opsežio izlaz. To možete vidjeti na konačnoj slici, plavo je napon na izlaznom međuspremniku (tj. Izlazna struja/1,1 ohma), a crveni signal je naš DAC izlaz.

Korak 5: Filtriranje izlaza

Filtriranje izlaza
Filtriranje izlaza
Filtriranje izlaza
Filtriranje izlaza

Izlazni filter je ključni dio dizajna. Od njega su nam potrebne ove karakteristike:

  1. Blokirajte sve prekidače visoke frekvencije, ali proslijedite signal od 50Hz
  2. Mali gubici
  3. Da ne odjekne!
  4. Za suočavanje s uključenim strujama i naponima

Fourierova transformacija PWM signala frekvencije F, Radni ciklus D, između 0 - V napajanja je: (D x Vsnapajanje) + sinusni valovi na osnovnoj frekvenciji F, a nakon toga i harmonici

Ovo je sjajno! To znači ako svoj PWM signal provedemo kroz niskopropusni filter koji blokira PWM temelj i sve gore navedeno. Ostaje nam samo termin istosmjernog napona. Promjenom radnog ciklusa lako možemo proizvesti bilo koji napon koji želimo između 0 - V napajanja, kako je objašnjeno.

Na osnovu gore navedenih željenih karakteristika možemo dizajnirati izlazni filter. Potreban nam je niskopropusni filter napravljen s minimalnim otporom kako bismo izbjegli gubitke. Stoga samo koristimo induktore i kondenzatore. Ako odaberemo rezonantnu frekvenciju između 1 - 2KHz, izbjeći ćemo rezonanciju jer ne ubrizgavamo nikakve signale blizu te frekvencije. Evo našeg dizajna filtera. Naš izlaz uzimamo kao napon na C1.

Odabirom L1 = L2 = 440uH, C1 = 8,4uF izračunavamo rezonantnu frekvenciju od 1,85KHz. Ovo su takođe realne vrijednosti komponenti.

Od vitalnog je značaja osigurati da naši induktori ne počnu zasićivati strujama koje očekujemo. Induktori koje sam koristio imaju 3A struju zasićenja. To će biti ograničavajući faktor izlazne snage našeg kola. Napon napona kondenzatora je također važno uzeti u obzir. Koristim neku keramiku od 450V, što je u ovom slučaju pretjerano!

Bode plot (za neznatno različite vrijednosti L/C) generiran je pomoću LTspice. Pokazuje nam slabljenje na različitim ulaznim frekvencijama. Jasno vidimo rezonantnu frekvenciju na 1,8KHz. Pokazuje da je signal od 50Hz gotovo u potpunosti neispravan, dok vam mogu reći da je signal od 45 KHz oslabljen za 54 dB!

Zato odaberemo našu PWM noseću frekvenciju na ~ 45KHz. Odabirom većih frekvencija nosioca PWM -a, frekvencija filtera može se povećati. To je dobro jer smanjuje vrijednosti L i C. To znači manje i jeftinije komponente. Nedostatak je to što veće frekvencije prebacivanja PWM -a unose veće gubitke u tranzistorskim sklopkama.

Korak 6: Sinhronizacija faze i frekvencije

Sinhronizacija faze i frekvencije
Sinhronizacija faze i frekvencije
Sinhronizacija faze i frekvencije
Sinhronizacija faze i frekvencije
Sinhronizacija faze i frekvencije
Sinhronizacija faze i frekvencije

Sinhronizacija s mrežnom fazom i frekvencijom čini pretvarač vezane u mrežu. Koristimo digitalnu implementaciju PLL -a (Phase Locked Loop) za postizanje tačnog praćenja faze mrežnog signala. To radimo na sledeći način:

  1. Uzorkovanje mrežnog napona
  2. Proizvodnja vlastitog lokalnog sinusoidnog signala od 50Hz
  3. Poređenje faze između našeg lokalnog signala i mrežnog signala
  4. Podešavanje frekvencije lokalnog signala sve dok razlika faza između 2 signala ne bude nula

1) Uzorkovanje mrežnog napona

Konfiguriramo treći ADC kanal za očitavanje mrežnog napona. To dobivamo naponom dijeleći transformatorsku slavinu kako je prikazano. Ovo daje skalirani napon koji varira oko 1,65 V i koji predstavlja napon mreže.

2) Stvaranje lokalnog sinusnog signala od 50HzProizvodnja vlastitog lokalnog sinusnog vala od 50Hz je jednostavna. Pohranjujemo tablicu za pretraživanje s 256 sinusnih vrijednosti. Naša simulirana vrijednost sinusa lako se može dobiti pomoću indeksa pretraživanja koji se inkrementalno rotira kroz tablicu.

Moramo povećati naš indeks točno odgovarajućom brzinom kako bismo dobili signal od 50Hz. Naime 256 x 50Hz = 12, 800/s. To radimo pomoću tajmera 9 na 168MHz. Čekanjem 168MHz/12800 = 13125 otkucaja takta, povećaćemo indeks ispravnom brzinom.

3) Upoređivanje faze između našeg lokalnog signala i mrežnog signala Ovo je cool dio! Ako integrirate umnožak cos (wt) x sin (wt) kroz 1 period, rezultat je nula. Ako je razlika u fazama nešto drugo osim 90 stupnjeva, dobit ćete broj koji nije nula. Matematički:

Integral [Asin (t) x Bsin (t + φ)] = Ccos (φ)

Ovo je sjajno! Omogućava nam da uporedimo mrežni signal, sin (ωt) sa lokalnim signalom, sin (⍵t + φ) i dobijemo vrijednost.

Međutim, postoji pitanje koje treba riješiti: Ako želimo da naši signali ostanu u fazi, moramo prilagoditi našu lokalnu frekvenciju kako bi Ccos (φ) termin bio maksimalan. Ovo neće raditi dobro i imat ćemo loše praćenje faze. To je zato što je d/dφ ɑcos (φ) 0 pri φ = 0. To znači da se izraz Ccos (φ) neće jako mijenjati s promjenama faze. Da li to ima smisla?

Bilo bi daleko bolje fazno pomaknuti uzorkovani mrežni signal za 90 stupnjeva tako da postane cos (ωt + φ). Zatim imamo ovo:

Integral [Asin (t) Bcos (t + φ)] = Csin (φ)

Uvođenje pomaka faze za 90 stupnjeva je jednostavno, samo umetnemo uzorke napona mrežnog ADC napona u jedan kraj međuspremnika i kasnije ih izvadimo niz uzoraka, što odgovara pomaku faze od 90 stupnjeva. Budući da frekvencija mreže jedva varira od 50Hz, jednostavna tehnika odgode radi sjajno.

Sada množimo naš mrežni signal sa faznim pomakom od 90 stepeni s lokalnim signalom i održavamo radni integral proizvoda u posljednjem razdoblju (tj. U posljednjih 256 vrijednosti).

Rezultat za koji znamo da će biti nula ako se 2 signala precizno drže 90 stepeni jedan od drugog. Ovo je fantastično jer poništava fazni pomak koji smo upravo primijenili na mrežni signal. Samo da pojasnimo, umjesto maksimiziranja integralnog pojma, pokušavamo ga zadržati na nuli i mijenjamo fazni signal mrežnog napona. 90 stepeni faze smjenama uvela ova 2 promjena međusobno potiru.

Dakle, ako je Integral_Result <0, znamo da moramo povećati frekvenciju lokalnog oscilatora kako bismo je vratili u fazu s mrežom, i obrnuto.

4) Podešavanje frekvencije lokalnog signalaOvaj bit je jednostavan. Jednostavno prilagođavamo period između povećanja putem našeg indeksa. Ograničavamo koliko brzo možemo ispraviti faznu razliku u suštini filtrirajući lažne tragove. Mi to radimo pomoću PI kontroler sa veoma malom sam pojam.

I to je to. Zaključali smo naš lokalni sinusni oscilator (koji postavlja zadanu vrijednost izlazne struje) u fazi s mrežnim naponom. Mi smo implementirali PLL algoritam i radi kao san!

Povećanje frekvencije našeg lokalnog oscilatora također smanjuje fazni pomak koji se stavlja na mrežni signal. Budući da ograničavamo podešavanje frekvencije na +/- 131 otkucaja (+/- ~ 1%), utjecati ćemo na fazni pomak najviše za +/- 1 °. To neće biti važno dok se faze sinhroniziraju.

Teoretski, ako bi mrežna frekvencija odstupila za više od 0,5Hz, izgubili bismo fazno zaključavanje. To je zbog našeg gornjeg ograničenja koliko možemo prilagoditi frekvenciju lokalnog oscilatora. Međutim, to se neće dogoditi, osim ako mreže je oko na propast. Naša zaštita od ostrva će ionako početi s radom u ovom trenutku.

Kod pokretanja provodimo detekciju prelaska nule kako bismo dali sve od sebe da pokrenemo signale u fazi od pomaka.

Korak 7: Protiv ostrva

Anti-islanding
Anti-islanding

Wikipedia ima sjajan članak o ostrvskim i tehnikama protiv otoka. To također implicira da ljudi siktaju i mašu više nego što je potrebno kada je u pitanju ova tema. "Oh, ne možete izgraditi vlastiti mrežni pretvarač, ubit ćete nekoga itd. Itd."

Kako je bolje objašnjeno u članku wikipedia, primjenjujemo nekoliko sigurnosnih mjera opreza koje zajedno pružaju odgovarajuću zaštitu (po mom mišljenju):

  1. Pod/Prenapon
  2. Under/Over frekvencija

Ove situacije možemo otkriti jednostavnom analizom našeg uzorkovanog skaliranog mrežnog napona. Ako nešto krene po zlu, onemogućite H-most i pričekajte da se stvari vrate u normalu.

Preporučuje se: