H tilta sinuso viļņu invertora shēma, izmantojot Arduino

Izmēģiniet Mūsu Instrumentu Problēmu Novēršanai





Izpratne par shēmas dizainu

Ja jūs nevēlaties izlasīt visu paskaidrojumu, tā vietā varat noskatīties šo videoklipu:

  BRĪDINĀJUMA VĀRDS: Elektroenerģija ir bīstama, rīkojieties piesardzīgi

Tagad ļaujiet mums redzēt zemāk esošo shēmas diagrammu un uzzināt, kā šī lieta patiesībā darbojas. Ķēdē mēs redzam šādas galvenās daļas:



  Arduino sinusa viļņa pilna tilta invertora shēmas diagramma

Arduino dēlis - Šīs ir mūsu smadzenes. Tas izdala SPWM impulsus, kas izlemj, kā darbosies mūsu shēma.

IR2110 MOSFET draivera IC (IC1 un IC2) -Šīs ierīces ņem standarta SPWM signālus no Arduino un padara tos saderīgus, lai pareizi pārslēgtu 4 n-kanālu H-Bridge Mosfets, izmantojot sāknēšanas metodi.



MOSFET (Q1, Q2, Q3, Q4) - Tie ir strāvas slēdži. Viņi ieslēdz un izslēdz DC ieslēgšanu un izslēgšanu noteiktā veidā, lai izveidotu maiņstrāvu izejā.

Diodes (1N4007) un kondensatori - Tie ir paredzēti pareizai ICS sāknēšanas tīkla darbībai, lai perfektā pārslēgtos 4 MOSFET.

Citi kondensatori un rezistori - Tie ir mazi, bet ļoti svarīgi, jo tie visu turpina vienmērīgi darboties.

Barošanas avots - Arduino un IR2110 ICS mums ir nepieciešams +12 V un +5 V, kā arī augsts līdzstrāvas spriegums MOSFET, kā norādīts kravas specifikācijās.

Kas notiek ķēdē?

Tagad ļaujiet mums redzēt, kā tas darbojas soli pa solim:

Arduino ģenerē SPWM signālus pie divām izejas tapām (8. un 9. tapa). Šie signāli maina platumu, lai izveidotu formu, kas līdzvērtīga maiņstrāvas sinusa vilnim.

IR2110 ICS saņem šos PWM signālus un izmantojiet tos, lai ļoti specifiskā veidā ieslēgtu un izslēgtu MOSFET.

H tilts, kas izgatavots, izmantojot četrus MOSFET, pārveido DC kopnes padevi maiņstrāvai līdzīgā izejā, pārslēdzot strāvas virzienu caur slodzi, izmantojot SPWM pārslēgšanu.

Izvadē mēs iegūstam sinusa viļņa tuvinājumu, kas nozīmē, ka tas izskatās kā sinusa vilnis, bet faktiski ir izgatavots no ātri pārslēdzošiem impulsiem.

Ja izejā pievienojam filtra ķēdi, mēs varam izlīdzināt šos impulsus un iegūt perfektāku sinusa vilni.

Mūsu arduino kods sinusoim viļņu pwm

Tāpēc tagad ļaujiet mums redzēt kodu. Tas ir tas, ko Arduino darbosies, lai ģenerētu SPWM signālus.

835ea9484999ca2b1a94fc3d1bb3e885b51ff2262

Kas notiek šajā kodā?

Vispirms mēs iestatām divas izejas tapas (8. un 9. tapa). Tie izsūtīs mūsu PWM signālus.

Tad cilpā mēs ieslēdzam un izslēdzam tapu īpašā modelī.

Mēs sākam ar šauriem impulsiem un pakāpeniski palielinām impulsa platumu, un tad mēs to samazinām atpakaļ uz leju. Tas rada pakāpienu sinusa viļņa PWM modeli.

Pēc pirmās puses cikla veikšanas mēs atkārtojam to pašu uz otra tapa (9. tapa) nākamajam ciklam.

Tādā veidā mūsu H tilts pārslēdz mosfetus pareizā sinusoidālā vilnī, piemēram, modē.

Kas ir labs šajā dizainā

Dizains patiesībā ir ļoti vienkāršs. Mēs izmantojam tikai Arduino un dažas kopīgas sastāvdaļas.

Mums šeit nav nepieciešams sinuso viļņu ģenerators, pareizi. Pats Arduino veido sinusa formu, izmantojot SPWM.

H tilts darbojas efektīvi, izmantojot IR2110 ICS, lai pārliecinātos, ka MOSFET pareizi slēdzas, pārkarst.

Mēs varam viegli noregulēt SPWM, ja mēs vēlamies citu sinusa viļņu frekvenci, tad mēs vienkārši nedaudz modificējam kodu.

Kā mums vajadzētu rīkoties ar Arduino sāknēšanas kavēšanos

Tagad viena ļoti svarīga lieta, kas mums jāsaprot, ir tā, ka Arduino prasa zināmu laiku, lai sāktu pēc tam, kad mēs ieslēdzam jaudu.

Tas notiek tāpēc, ka, kad mēs darbojamies ar Arduino, tas vispirms palaiž savu iekšējo sāknēšanas ielādētāju, kas prasa dažas sekundes.

Tātad šajā laikā IR2110 vārtu draivera ICS un MOSFET var nesaņemt atbilstošus signālus no Arduino.

Ja tas notiek, tad MOSFET var ieslēgt nejauši, kas var uzreiz sabojāt IC vai izraisīt īssavienojumu vai sprādzienu.

Lai pārliecinātos, ka iepriekš minētā sāknēšanas kavēšanās sākotnējās ieslēgšanas laikā nededzina IC un MOSFET, mums ir jāmaina iepriekš minētais kods, kā parādīts zemāk:

// By Swagatam - Full Bridge Sine Wave Inverter Code with Delay
void setup() {
    pinMode(8, OUTPUT);
    pinMode(9, OUTPUT);
    
    delay(3000); // Booting delay (wait for 3 seconds before starting)
}
void loop() {
    // First pin (8) switching pattern
    digitalWrite(8, HIGH);
    delayMicroseconds(500);
    digitalWrite(8, LOW);
    delayMicroseconds(500);
    digitalWrite(8, HIGH);
    delayMicroseconds(750);
    digitalWrite(8, LOW);
    delayMicroseconds(500);
    digitalWrite(8, HIGH);
    delayMicroseconds(1250);
    digitalWrite(8, LOW);
    delayMicroseconds(500);
    digitalWrite(8, HIGH);
    delayMicroseconds(2000);
    digitalWrite(8, LOW);
    delayMicroseconds(500);
    digitalWrite(8, HIGH);
    delayMicroseconds(1250);
    digitalWrite(8, LOW);
    delayMicroseconds(500);
    digitalWrite(8, HIGH);
    delayMicroseconds(750);
    digitalWrite(8, LOW);
    delayMicroseconds(500);
    digitalWrite(8, HIGH);
    delayMicroseconds(500);
    digitalWrite(8, LOW);
    // Second pin (9) switching pattern
    digitalWrite(9, HIGH);
    delayMicroseconds(500);
    digitalWrite(9, LOW);
    delayMicroseconds(500);
    digitalWrite(9, HIGH);
    delayMicroseconds(750);
    digitalWrite(9, LOW);
    delayMicroseconds(500);
    digitalWrite(9, HIGH);
    delayMicroseconds(1250);
    digitalWrite(9, LOW);
    delayMicroseconds(500);
    digitalWrite(9, HIGH);
    delayMicroseconds(2000);
    digitalWrite(9, LOW);
    delayMicroseconds(500);
    digitalWrite(9, HIGH);
    delayMicroseconds(1250);
    digitalWrite(9, LOW);
    delayMicroseconds(500);
    digitalWrite(9, HIGH);
    delayMicroseconds(750);
    digitalWrite(9, LOW);
    delayMicroseconds(500);
    digitalWrite(9, HIGH);
    delayMicroseconds(500);
    digitalWrite(9, LOW);
}

Detaļu saraksts

Arduino dēlis Arduino uno (vai jebkura saderīga dēlis) Viens
MOSFET draivera IC IR2110 Augstas un zemas puses vadītājs Rādītājs
Mosfets IRF3205 (vai līdzīgs N-kanāls) 4
Diodes 1N4007 (sāknēšanas un aizsardzības) 4
Rezistori 1kΩ 1/4W (MOSFET vārtu nolaišana) 4
Rezistori 150Ω 1/4W (MOSFET vārtu sērijas rezistors) 4
Kondensatori 100NF (bootstrap kondensators) Rādītājs
Kondensatori 22UF 25V (barošanas avota filtrs) Rādītājs
Slodze Jebkura pretestīga vai induktīva slodze Viens
Barošanas avots +12 V DC (MOSFET) un +5 V DC (par Arduino) Viens
Vadi un savienotāji Piemērots ķēdes savienojumiem Pēc vajadzības

Būvniecības padomi

Tagad, kad mēs faktiski veidojam šo lietu, mums jābūt ļoti uzmanīgiem attiecībā uz dažām svarīgām lietām. Pretējā gadījumā tas var nedarboties vai vēl ļaunāk, kaut kas var izdegt pareizi? Tātad šeit ir daži īpaši svarīgi būvniecības padomi, kas mums jāievēro:

Kā mums vajadzētu sakārtot daļas uz tāfeles

Ja mēs izmantojam maizes dēli, šī ķēde var nedarboties labi, jo lieljaudas MOSFET un autovadītājiem ir nepieciešami spēcīgi, cieti savienojumi.

Tāpēc mums vajadzētu izmantot PCB (iespiestu shēmas plati) vai vismaz Perf Board un pareizi lodēt detaļas.

Ja mēs izveidojam PCB, tad mums ir jāuztur MOSFET un IR2110 ICS tuvu, lai signāli nekļūtu vāji vai aizkavēti.

Bieziem vadiem vajadzētu būt augstiem strāvas ceļiem, piemēram, no barošanas avota līdz MOSFET un no MOSFET līdz slodzei.

Plānos vadus var izmantot tikai signāla savienojumiem, piemēram, no Arduino līdz IR2110 IC.

Kā mums vajadzētu ievietot mosfetus

Četri MOSFET jānovieto pareizā H tilta formā, lai elektroinstalācija nekļūtu nekārtīga.

Katram MOSFET jābūt īsiem un bieziem savienojumiem ar IR2110 IC.

Ja mēs novietojam MOSFET pārāk tālu no IR2110, signāli var kļūt vāji un MOSFET var nebūt pareizi pārslēgti.

Ja tas notiek, tad MOSFET var sakarst un pat izdegt.

Kā mums vajadzētu novērst siltuma problēmu

Ja mēs izmantojam IRF3205 MOSFET vai līdzīgus, tad tie uzkarsēs, ja mēs viņiem nedosim HeatSink.

Tāpēc mums ir jānosaka liels alumīnija HeatSink līdz MOSFET, lai tie būtu atdzist.

Ja mēs izgatavojam lieljaudas invertoru (vairāk nekā 100 W), tad mums vajadzētu arī piestiprināt dzesēšanas ventilatoru uz Heatsink.

Ja MOSFET kļūst pārāk karsts, lai pieskartos, tas nozīmē, ka ir kāda problēma, un mums vēlreiz jāpārbauda ķēde.

Kā mums vajadzētu darbināt ķēdi

Arduino daļa darbojas ar 5 V, un MOSFET ir nepieciešams 12 V vai vairāk, lai strādātu.

Tāpēc mēs nekad nedrīkstam savienot 12 V ar Arduino, vai arī tas uzreiz sadedzinās!

IR2110 ICS nepieciešami divi barošanas avoti:

12v augstas puses mosfetiem

5v loģikas sadaļai

Ja mēs sajaucam šīs elektrības līnijas, ķēde nedarbosies pareizi, un MOSFET netiks mainīti pareizi.

Kā mums vajadzētu savienot vadus

Zemes (GND) savienojums ir ļoti svarīgs. Ja zemes vadi ir vāji vai gari, tad ķēde var izturēties dīvaini.

Visām detaļām jāizmanto kopīgs pamats, kas nozīmē, ka Arduino zeme, IR2110 zeme un MOSFET avota zeme jābūt savienotai.

Ja mēs redzam, ka ķēde uzvedas savādi (piemēram, izejas mirgošana vai mosfets kļūst sildīts bez slodzes), mums vispirms jāpārbauda zemes savienojumi.

Kā mums vajadzētu pārbaudīt ķēdi, pirms to ieslēgt

Pirms ieslēdzam jaudu, mums ir jāpārbauda visi savienojumi, lai redzētu, vai viss ir pareizi.

Ja mums ir multimetrs, tad mums tas jāizmanto, lai pārbaudītu spriegumu dažādos punktos pirms MOSFET ievietošanas.

Mums stingri būs nepieciešams osciloskops, lai mēs varētu pārbaudīt SPWM signālus, kas nāk no Arduino, lai redzētu, vai tie izskatās pareizi.

Kā mums rūpīgi jāpārbauda ķēde

Labākais veids, kā droši pārbaudīt šo ķēdi, ir sākt ar zemu spriegumu.

12 V vietā mēs vispirms varam izmēģināt ar 6 V vai 9 V, lai redzētu, vai MOSFET mainās pareizi.

Ja ķēde labi darbojas ar zemu spriegumu, tad mēs varam lēnām palielināties līdz 12 V un visbeidzot līdz pilnam spriegumam.

Ja pēkšņi mēs uzklājam pilnu spriegumu un kaut kas nav kārtībā, kaut kas var uzreiz izdegt!

Tāpēc mums soli pa solim jāpārbauda un jāpārbauda, ​​vai nav pārkaršanas vai nepareiza rīcība.

Kā mēs varam pievienot filtru vienmērīgākai izvadei

Šī shēma padara maiņstrāvas izvadi, izmantojot PWM, bet tā joprojām ir izgatavota no ātriem impulsiem.

Ja mēs vēlamies tīru sinusa vilni, tad izvadē mums jāpievieno LC filtrs.

Šis LC filtrs ir tikai liels induktors un kondensators, kas savienots ar izvadi.

Induktors noņem ātras pārslēgšanas impulsus, un kondensators izlīdzina viļņu formu.

Ja mēs to darām pareizi, mēs varam iegūt tīru sinusa vilni, kas ir drošs ierīcēm.

Kā mums vajadzētu aizsargāt ķēdi no bojājumiem

Mums vienmēr vajadzētu pievienot drošinātāju virknē ar barošanas avotu.

Ja kaut kas šorti vai MOSFET neizdodas, drošinātājs vispirms sabojājas un saglabās ķēdi no dedzināšanas.

Ja MOSFET neizdodas, dažreiz viņi neizdodas saīsināt (tas nozīmē, ka viņi vienmēr paliek).

Ja tas notiek, tad milzīga strāva var plūst un sabojāt transformatoru vai citas daļas.

Tāpēc vienmēr ir labi pārbaudīt MOSFET, izmantojot multimetru pirms lielas enerģijas pielietošanas.

Secinājums

Tātad šeit mēs redzējām, kā mēs varam izveidot sinusa viļņu invertoru, izmantojot tikai Arduino un H-Bridge Mosfet shēmu. Mēs izmantojām IR2110 MOSFET draiverus, lai pareizi pārslēgtu MOSFET un PWM vadību no Arduino, lai radītu mūsu sinusa modulēto maiņstrāvu.

Tagad viena lieta, kas jāatceras, ir tā, ka šī izlaide joprojām ir izgatavota no ātri pārslēdzošiem impulsiem, tāpēc, ja mums ir nepieciešams tīrs sinusa vilnis, mums jāpievieno LC filtrs izejā, lai to izlīdzinātu.

Bet kopumā tas ir ļoti praktisks un vienkāršs veids, kā mājās padarīt sinusa viļņu invertoru!