Kintamosios srovės kintamosios srovės dekodavimas. Skirtumas tarp AC ir DC. Nuolatinė elektros srovė Ką reiškia kintamos arba nuolatinės srovės žymėjimas?

Nuolatinė arba nuolatinė srovė – tai krypties ir stiprumo bėgant laikui nekeičiantis elektros krūvių srautas, kuris pagal klasikinį šio dydžio apibrėžimą matuojamas kulonais per sekundę (arba amperais).

Susipažįstant su nuolatinio pobūdžio elektros reiškiniais, svarbu prisiminti ne tik kryptį, kuria vyksta fizikiniai procesai, bet ir jų intensyvumą (jėgą). Faktinėmis elektros ar elektroninės įrangos veikimo sąlygomis nuolatinės srovės vertė retai būna absoliučiai pastovi.

Nepastovumo priežastys

Faktas yra tas, kad bet kurios lygintuvo grandinės, konvertuojančios kintamąją srovę, išvestyje visada yra pradinio signalo žemo dažnio harmonikos, vadinamos bangomis.

Pastaba! Naudojant baterijas ir galvaninius elementus, kalbėti apie jo pastovumą taip pat nėra visiškai teisinga, nes tai gali reikšti tik „poliškumo“ sąvoką.

Elektronų srauto stiprumas esant bet kokiai apkrovai laikui bėgant taip pat kinta (mažėja), o tai susiję su energijos šaltinio EML sumažėjimu.

Iš aukščiau pateiktų samprotavimų išplaukia, kad kalbėti apie srovės charakteristikų pastovumą šiose grandinėse galima tik esant tam tikram susitarimui. Tai priimtina tik tais atvejais, kai galima nepaisyti jo stiprumo pokyčių.

Pagrindinės srovės charakteristikos

Svarstydami pagrindinius šio fizikinio dydžio parametrus, iš karto padarysime išlygą, kad dažnai vartojamas terminas „srovės stiprumas“ daugumos ekspertų laikomas ne visai teisingu. Jo skaliarinei charakteristikai žymėti daug tinkamesnė yra ne jėga, o laisvųjų elektros krūvių judėjimo greitis (kartais vadinamas intensyvumu).

Pagal klasikinę koncepciją šis greitis apibrėžiamas kaip krūvio, judančio per tam tikrą laidžios medžiagos skerspjūvį per laiko vienetą, kiekis. Būtent šis indikatorius, imamas kaip srovės vienetas, vadinamas vienu amperu.

Taigi vieno ampero srautas yra vieno kulono krūvio judėjimas per tam tikrą laidžią sekciją per sekundę. Kita nuolatinės srovės charakteristika, susijusi su jos tekėjimu per apkrovą, kurios varža R, vadinama įtampos kritimu, kuris matuojamas voltais. Jis apibrėžiamas kaip potencialų skirtumas, susidarantis per laidininką, kai juo teka vienas amperas.

Tą patį apibrėžimą galima pateikti tokia forma. Vienas voltas yra potencialų skirtumas tarp taškų, nutolusių vienas nuo kito elektriniame lauke, kurio pakanka vieno džaulio darbui atlikti (tarp jų perkeliant vieno kulono krūvį).

Praktinės srovės komponento, gauto per lygintuvus, charakteristikos paprastai apima šiuos parametrus:

  • Pulsacijų amplitudė, apibrėžiama kaip skirtumas tarp jos ribinių verčių;
  • Pulsacijos indikatorius, pateikiamas kaip dviejų dydžių santykis, kurio skaitiklis yra kintamoji srovė, o vardiklis yra nuolatinė srovė.

Panagrinėkime pastarąjį išsamiau.

DC komponentas

Tiriant apkrovos srovės formą diodinio lygintuvo išėjime osciloskopu, galima įžvelgti jos raibuliavimą, kuris atsiranda dėl ribotų filtro komponentų (kondensatorių) galimybių.

Kai kuriais atvejais šie komponentai yra tokie maži, kad į juos gali būti neatsižvelgta skaičiuojant grandines, kuriose turėtų būti sumontuoti filtrų kondensatoriai. Taikant tokį požiūrį į kategoriją, patogiau tiriamą rodiklį laikyti pulsuojančiu arba pulsuojančiu ir atskirti du jo komponentus: nuolatinę ir kintamąją. Pažvelkime į kiekvieną iš šių komponentų išsamiau.

Nuolatinė DC

Nurodyta vertė apskaičiuojama kaip vidutinė einamojo veiksmo vertė per laikotarpį. Tai iš esmės skiriasi nuo kitos pulsuojančio srauto charakteristikos, vadinamos kintamuoju komponentu ac.

Kintamasis komponentas

Kintamoji srovė (tiksliau, pulsuojančios srovės komponentas) kintamoji srovė reiškia periodinį jos amplitudės svyravimą aplink anksčiau aptartą vidutinę padėtį. Skaičiuojant šią vertę, reikia manyti, kad jos vertė apima šiuos komponentus:

  • Nuolatinė dalis;
  • Kintamojo komponento (ac) reikšmė, apibrėžta kaip pagrindinė kvadratinė vertė.

Abu jie yra tiriamo srovės signalo komponentai ir, kaip ir visi elektriniai parametrai, turi fiksuotą galią (tai yra galimybę atlikti tam tikrą darbą). Pastarasis apskaičiuojamas taip:

kur I yra vidutinis kvadratinis pastovios komponentas ir srovės bangavimas.

Tai yra, apskaičiuojant galią, pastovios DC ir kintamos kintamosios srovės komponentai sumuojami kaip sudėtingi dydžiai.

Papildoma informacija.Šiuo atveju jie pateikiami pradinio signalo vektorinių komponentų pavidalu.

Taip pat svarbu, kad visi aptarti apibrėžimai, kaip ir kintamosios srovės ir nuolatinės srovės simboliai, būtų vienodai taikomi „įtampos“ kategorijai.

Baigdami dar kartą atkreipkime dėmesį į tai, kad nuolatinės srovės idėja dažniausiai siejama su laisvųjų elektronų srauto krypties nekintamumu. Tačiau iš tikrųjų ši koncepcija apima daugybę skaliarinių charakteristikų, iš kurių viena apima krūvių srauto intensyvumą pasyvioje apkrovoje.

Kai šios srovės komponento nominali vertė laikui bėgant keičiasi, ji gali būti laikoma pastovia tik sąlyginai, o tai leidžiama kiekvienu konkrečiu atveju sprendžiamos problemos rėmuose.

Vaizdo įrašas

234 kamuoliai, iš jų 2 šį mėnesį

Biografija

AC DC(sutrumpinta iš anglų kalbos kintamosios srovės / nuolatinės srovės kintamosios srovės / nuolatinės srovės) Australijos roko grupė, kurią 1973 m. lapkritį Sidnėjuje (Australija) įkūrė broliai Malcolmas ir Angus Young.

Kartu su tokiomis grupėmis kaip Led Zeppelin, Black Sabbath ir Deep Purple AC DC dažnai laikomi hard rock ir heavy metal pionieriais. Patys muzikantai savo muziką priskyrė prie rokenrolo, nes ji paremta ritmu ir bliuzu su labai iškraipytu ritminių ir solo gitarų skambesiu.

Grupė patyrė keletą sudėties pasikeitimų, kol 1975 metais buvo išleistas pirmasis grupės albumas „High Voltage“. Grupės sudėtis išliko nepakitusi, kol bosistą Marką Evansą 1977 metais pakeitė Cliffas Williamsas. 1980 m. vasario 19 d. dainininkas ir dainų autorius Bonas Scottas (Ronaldas Belfordas „Bon“ Scottas) mirė užspringęs savo vėmalais dėl didelio apsinuodijimo alkoholiu. Grupė turėjo visas galimybes išsiskirti, tačiau netrukus Scottui buvo rastas pakaitalas buvusio Geordie vokalisto Briano Johnsono asmenyje. Po metų grupė išleido geriausiai parduodamą albumą „Back in Black“.

Komanda pardavė daugiau nei 200 milijonų albumų visame pasaulyje, įskaitant 68 milijonus albumų Jungtinėse Valstijose. Sėkmingiausias albumas „Back in Black“ JAV parduotas daugiau nei 22 mln., o užsienyje – daugiau nei 42 mln. Apskritai, AC DC yra sėkmingiausia ir garsiausia roko grupė iš Australijos. AC DC Jie užima ketvirtą vietą VH1 100 geriausių hardroko atlikėjų sąraše ir septintąją vietą MTV „Greatest Heavy Metal Band Of All Time“ sąraše.

vardas

Malcolmas ir Angus Young savo grupei pavadinimą sugalvojo išvydę akronimą „AC/DC“ ant savo sesers Margaret siuvimo mašinos galinės dalies. „AC/DC“ yra „kintamoji srovė/nuolatinė srovė“ santrumpa, nurodanti, kad įrenginys gali naudoti nurodytas energijos rūšis. Broliai jautė, kad pavadinimas simbolizuoja grupės neapdorotą energiją ir gyvo pasirodymo energiją, todėl pavadinimas įstrigo.

Kai kuriose kultūrose „AC/DC“ yra biseksualų žargonas; Muzikantai tvirtino, kad nežinojo apie šios reikšmės egzistavimą, kol taksi vairuotojas neatkreipė dėmesio į šį faktą jų karjeros pradžioje. Kai kurie religiniai lyderiai teigia, kad grupės pavadinimas turėtų būti suprantamas kaip „Anti-Christ/Devil's Child“, „Anti-Christ/Death to Christ“) arba „After Christ/The Devil Comes“ (anglų kalba: „After Christ/Devil Comes“). ).

„AC/DC“ yra rašoma, tačiau grupė Australijoje taip pat žinoma kaip „Acca Dacca“. Dėl šio pavadinimo atsirado duoklė, naudojusios panašius pavadinimus: BC/DC iš Britų Kolumbijos provincijos (Kanada); AC/DSHE, moterų grupė iš San Francisko; Švedų AB/CD ir kai kurie kiti.

Yra žinoma, kad grupė keletą kartų pasirodė Freeride Entertainment komandai filmuose apie kalnų dviratį, iš serijos „Disorder“ (4 ir 5 dalyse, šiuo metu jų yra 9)

Istorija

Broliai Angusai (g. 1955 m. kovo 31 d.; Atlantic Records prašymu oficialūs Anguso gimimo metai buvo neteisingai nurodyti 1959 m.), Malkolmas (g. 1953 m. sausio 6 d.) ir Džordžas Jangas (George Young) gimė Glazge (Škotija) ir kaip vaikai kartu su šeima išvyko į Sidnėjų. George'as pirmasis pradėjo groti gitara ir tapo sėkmingiausios septintojo dešimtmečio Australijos grupės „The Easybeats“ nariu. Jie buvo pirmoji vietinė roko grupė, sukūrusi tarptautinį hitą su „Friday on My Mind“ 1966 m. Malcolmas netrukus pasekė savo brolio pėdomis ir tapo Niukaslo grupės „The Velvet Underground“ (nepainioti su Niujorko grupe „The Velvet Underground“) gitaristu.

Ankstyvieji metai

Įgiję pirmąją muzikinę patirtį, Malcolmas ir Angusas susikūrė AC DC, į grupę pakviečiantis vokalistą Dave'ą Evansą, bosinį gitarininką Larry Van Kniedtą ir būgnininką Coliną Burgessą. Grupė debiutavo 1973 m. gruodžio 31 d. Sidnėjaus šaškių bare.

1974 m. grupė dažnai keitėsi būgnininkais ir bosistais. 1974 m. rugsėjį AC/DC Dave'ą Evansą pakeitė charizmatiškuoju Bonu Scottu (g. 1946 m. ​​liepos 9 d. Kirrimeryje, Škotijoje), pagrindiniu grupės „The Spectors“ dainininku 1966 m. Šis įvykis pažymėjo tikrosios grupės sėkmės pradžią. Su Evansu AC/DC įrašė singlą, susidedantį iš trijų dainų: „Rockin“ in the Parlour“, „Show Business“ ir „Can I Sit Next to You Girl“. Pastarosios dvi taip pat buvo įrašytos kartu su Scottu.

Anguso Youngo sesuo ragino jį koncertuose vilkėti mokyklinę uniformą, kurią vilkėjo Ashfield Boys vidurinėje mokykloje Sidnėjuje. Vėliau šią uniformą dėvėjo visuose grupės koncertuose.

Reguliariai pasirodydama Australijos populiariosios muzikos televizijos šou „Countdown“, 1974–1978 m. grupė tapo viena žinomiausių ir populiariausių šalies grupių. AC DC Per šiuos metus jie išleido daugybę sėkmingų albumų ir singlų, įskaitant nesenstantį rokenrolo himną "Its a Long Way to the Top (If You Wanna Rock "n" Roll)).

Pasaulyje garsaus

Grupė pasirašė tarptautinę sutartį su „Atlantic Records“ ir pradėjo aktyviai keliauti po JK ir Europą, pelnydama šlovę ir įgyti patirties koncertuodama garsių to meto roko grupių, tokių kaip Alice Cooper, Black Sabbath, KISS, Cheap Trick, Nazareth, sparnuose. , Užsienietis, Thin Lizzy ir The Who. 1976 metais buvo išleistas trečiasis Australijos AC/DC albumas „Dirty Deeds Done Dirt Cheap“.

Pankroko invazija ir populiarumo banga 7678 m. Grupė puikiai išgyveno dėl savo grubių ir provokuojančių dainų tekstų ir iš dalies dėl to, kad to meto britų muzikos spaudoje jos buvo priskirtos pankų grupėms. Sėkmės britų roko scenoje jie pasiekė dėl galingų ir prieštaringų gyvų pasirodymų, o Angusas Youngas greitai išgarsėjo dėl provokuojančio elgesio scenoje, dėl kurio, be kita ko, grupei buvo uždrausta koncertuoti keliose britų koncertų vietose. .

1979 m. išleistas albumas „Highway to Hell“, kurį prodiusavo Mutt Lange, iškėlė grupę į visų laikų pasaulio roko muzikos topų viršūnę. Išleidimo metu albumas neabejotinai tapo populiariausiu iš grupės diskografijos. Daugelis albumo dainų vis dar dažnai skamba per radiją, o titulinis kūrinys tapo viena žinomiausių dainų roko muzikos istorijoje.

Bon Scott mirtis

Bonas Skotas mirė 1980 metų vasario 19 dieną. Jis paliko kitą vakarėlį ir liko nakvoti savo draugo Allistair Kinnear automobilyje. Kitą dieną jis rado Boną negyvą. Oficiali mirties priežastis buvo hipotermija, nors iki šiol labiausiai paplitusi versija, kad Bonas Scottas užspringo savo paties vėmalais. Šiuos gandus patvirtina daug prieštaravimų oficialioje jo mirties istorijoje, kuri taip pat sukelia daugybę teorijų apie sąmokslą, muzikanto nužudymą ir heroino perdozavimą.

Iš pradžių grupės nariai planavo nutraukti savo muzikinę veiklą AC DC, bet vėliau nusprendė, kad Bon Scott norėtų, kad grupė tęstų. Muzikantai išbandė keletą kandidatų į vokalisto vietą, o galiausiai liko du kandidatai: Terry Slesser ir Brian Johnson. Johnsonas per šį laikotarpį bandė atkurti savo grupę Geordie, tačiau viešai atliko dvi dainas AC DC ir Tina Turner (atitinkamai „Whole Lotta Rosie“ („Leisk uola“) ir „Nutbush City Limits“) sužavėjo dalyvius AC DC ir po kelių dienų jie pranešė Johnsonui, kad jis yra naujasis grupės dainininkas.

„Atgal juodai“

Kartu su Brianu Johnsonu grupė užbaigė dėl Bono mirties neužbaigtas dainas ir įrašė albumą „Back in Black“, kurį taip pat prodiusavo Lang. 1980 m. išleistas „Back in Black“ tapo perkamiausiu grupės albumu ir vienu reikšmingiausių sunkiojo roko istorijoje. Tarp visų albumo hitų, to paties pavadinimo daina, parašyta Bonui Scottui atminti, ir „You Shook Me All Night Long“ daugelio laikomi muzikos kvintesencija. AC DC ir net hard rock apskritai.

Kitas albumas „For These About to Rock“ (We Salute You), išleistas 1981 m., taip pat buvo labai gerai parduotas ir buvo palankiai įvertintas kritikų. To paties pavadinimo kompozicija albume, pasibaigusi šaudančių ginklų griaustiniu, tapo daugumos vėlesnių koncertų kulminacija ir galutiniu skaičiumi. AC DC.

Grupė sukūrė 1983 m. Flick of the Switch be Lang. Būgnininkas Philas Ruddas paliko grupę dėl asmeninių nesutarimų su kitais grupės nariais, kuriuos, kaip pranešama, sukėlė problemos su alkoholiu. Į jo vietą po anoniminės perklausos jie paėmė Simoną Wrightą, buvusį grupės Tytan narį. 1985 m. su nauja sudėtimi grupė įrašė mažiau sėkmingą albumą Fly on the Wall, kurį prodiusavo broliai Youngai. Kartu su šiuo albumu grupė išleido seriją muzikinių klipų, kuriuose grupė atlieka penkias iš dešimties albumo dainų bare, naudodama įvairius specialiuosius efektus, tarp jų ir animacinę muselę.

1986 m. AC/DC grįžo į topus su tituliniu kūriniu „Who Made Who“ – Stepheno Kingo filmo „Maximum Overdrive“ garso takeliu. Albume taip pat buvo du nauji instrumentiniai kūriniai ir hitai iš ankstesnių albumų. 1986 m. vasarį grupė buvo įtraukta į Australijos įrašų pramonės asociacijos šlovės muziejų. 1988 metais grupė išleido savo albumą „Blow Up Your Video“ su originaliais prodiuseriais Harry Vanda ir George'u Youngu. Šis albumas buvo parduotas geriau nei ankstesnis ir su daina „Heatseeker“ pateko į JK geriausių singlų dvidešimtuką.

Išleidus Blow Up Your Video, Wright paliko grupę ir jį pakeitė sesijų muzikantas Chrisas Slade'as. Johnsonas keletą mėnesių negalėjo dalyvauti grupės darbe, todėl broliai Youngai patys rašė dainas kitam albumui, kaip ir visiems vėlesniems. 1990 metais buvo išleistas albumas „The Razor's Edge“, kuriame buvo hitai „Thunderstruck“ ir „Money Talks“. ir dvidešimt singlų Didžiojoje Britanijoje.

1994 m. Philas Ruddas grįžo į grupę. Chriso Slade'o pasitraukimas šiuo atžvilgiu buvo draugiškas ir daugiausia dėl grupės narių didelio noro susigrąžinti Ruddą. Anot Anguso Youngo, Slade'as buvo geriausias muzikantas AC DC, tačiau noras pamatyti Philą grupėje buvo stipresnis. Būdama 1980–1983 m. narė, 2000 m. grupė įrašė albumą Ballbreaker su hiphopo ir sunkiojo metalo prodiuseriu Ricku Rubinu ir Stiff Upper Lip 1995 m.

Po šių albumų išleidimo grupė pasirašė ilgalaikę sutartį dėl kelių albumų su Sony BMG, kuriuos pradėjo leisti Epic Records.

Pastarieji metai ir pripažinimas

2003 m. kovą AC/DC buvo įtraukta į Rokenrolo šlovės muziejų Niujorke ir atliko savo hitus „Highway to Hell“ ir „You Shook Me All Night Long“ su „Aerosmith“ Steve'u Tyleriu. 2003 m. gegužės mėn. Malcolmas Youngas buvo apdovanotas Tedo Alberto apdovanojimu už „išskirtinį indėlį į Australijos muziką“. Tais pačiais metais Amerikos įrašų pramonės asociacija (RIAA) atnaujino savo albumų pardavimo apskaičiavimus nuo 46,5 mln. iki 63 mln. AC DC penktoji grupė JAV istorijoje, pardavusi daugiausiai albumų po The Beatles, Led Zeppelin, Pink Floyd ir Eagles. Be to, „Back in Black“ buvo pripažintas dvigubu deimantu (parduota 20 000 000 kopijų), todėl tai buvo šeštasis geriausiai parduodamas albumas JAV istorijoje. 2005 m. albumas buvo parduotas 21 milijonu kopijų, todėl jis buvo penktoje vietoje.

2003 m. liepą grupė koncertavo kartu su „The Rolling Stones“ Toronte, Kanadoje, Sarsfest – koncerte, skirtame kovai su SARS epidemija.

2004 m. spalio 1 d. Corporation Lane Melburne buvo oficialiai pervadinta į ACDC Lane grupės garbei (gatvių pavadinimuose Melburne negali būti simbolio „/“). Gatvė yra greta Swanston gatvės, kur grupė sunkvežimio gale įrašė savo 1975 m. hito „Its a Long Way to the Top“ vaizdo klipą. Pasaulyje taip pat yra dar viena gatvė, pavadinta grupės AC/DC vardu, Ispanijoje, Legano mieste (Leganès), netoli Madrido „Calle de AC/DC“, netoli nuo gatvių, pavadintų roko grupių vardu. Iron Maiden ir Rosendo (ispanų roko grupė).

2005 m. kovo mėn. buvo išleistas dviejų DVD rinkinys „Šeimos brangenybės“, kuriame yra muzikinis vaizdo klipas ir koncerto klipai. Pirmasis diskas buvo iš Bon Scott epochos (koncertų kadrai nufilmuoti 10 dienų iki Scotto mirties), antrajame buvo filmuota medžiaga iš Briano Johnsono eros.

2008 m. rugpjūčio 28 d. buvo išleistas singlas „RocknRoll Train“. 2008 m. spalio 20 d. AC/DC išleido savo naują albumą Black Ice, kuris praėjus savaitei po išleidimo pakilo į topų viršūnes 29 šalyse. Per pirmąją savaitę grupė pardavė 5 milijonus albumo kopijų visame pasaulyje. Lapkričio pradžioje Australijos Top 50 buvo 6 albumai AC DC. Tarp tų, kurie entuziastingai kalbėjo apie naująjį albumą, buvo australų poetas ir rašytojas Johnas Kinsella, kuris atkreipė dėmesį į albumo „protingus, aštrius, savaip nuostabius“ tekstus.

Spalio pabaigoje grupė išvyko į turą Šiaurės Amerikoje, pakviesdama „The Answer“ kaip pagalbinius atlikėjus.

Įtaka roko muzikai

AC DC kaip įtaką jų kūrybai mini daugelis amžininkų ir vėliau roko bei metalo muzikos muzikantų ir grupių. Tarp jų: ​​Anthrax, Bon Jovi, The Darkness, Def Leppard, Dio, Dokken, Dream Theater, Faster Pussycat, Iron Maiden, Great White, Guns N Roses, Hanoi Rocks, Journey, Megadeth, Metallica, Nirvana, Mötley Crüe, Ozzy Osbourne, Poison, Ratt, Rhino Bucket, Saxon, Scorpions, Skid Row, Supagroup, Tool, Twisted Sister, NSO, Van Halen, Whitesnake, Wolfmother, Y&T.

Daugelis pankroko, hardcore punk, grunge, garage roko ir alternatyvaus roko atlikėjų ir grupių taip pat šventė AC DC kaip tai paveikė juos. Nors grupė iš pradžių buvo kritikuojama septintojo dešimtmečio pabaigos britų pankrokerių, daugelis šio judėjimo muzikantų pagerbė AC DC už didelę muzikos energiją – kruopštus ir antikomercinis (nors daugelis gali su tuo ginčytis) požiūris į roko muziką.

Įtaka AC DC Australijos muziką sunku pervertinti. Santykinai kalbant, kiekviena Australijos roko grupė, pasirodžiusi aštuntojo dešimtmečio viduryje ir vėliau, buvo paveikta AC DC. Australijos grupėms, kurios paminėjo joms įtaką AC DC, apima, pavyzdžiui, Airbourne, Blood Duster, Frenzal Rhomb, INXS, Jet, The Living End, Midnight Oil, Powderfinger, Silverchair, You Am I.

Elektros energija mus lydi kiekviename žingsnyje. Be jo neįsivaizduojamas bet kurio žmogaus gyvenimas. Visą gyvenimą mes susiduriame su vienokiu ar kitokiu elektros energijos apraiškomis. Tai dažniausiai nutinka, kai sugenda elektros prietaisai. O norint suprasti jų struktūrą ir grandines, pravartu žinoti, kad kintamoji ir nuolatinė srovė vadinama kintamąja ir nuolatine srove.

Elektros energijos šaltiniai

Iš pradžių elektros šaltiniai buvo tik vienkartiniai cheminiai galvaniniai elementai. Vėliau atsirado daugkartinio naudojimo baterijos. Pažymėtina, kad cheminių šaltinių poliškumas negali pasikeisti savaime. Norint gauti pastovią įtampą generatoriai naudojami pramoniniu mastu, o kartais ir saulės baterijų.

Elektroninė įranga savo ruožtu maitinama kintamosios įtampos tinklu, o nuolatinei įtampai gauti naudojami maitinimo šaltiniai. Kintamoji srovė sumažinama iki reikiamų verčių naudojant transformatorius ir vėliau ištaisoma. Tuo pačiu metu pulsavimo dažnis mažinamas išlyginamaisiais filtrais, stabilizatoriais ir įtampos reguliatoriais.

Perjungiamieji maitinimo šaltiniai yra įprasti šiuolaikiniame pasaulyje. Juose išeinančios elektros pulsavimo dažnis išlyginamas integruojančiais elementais. Jie sutelkia elektros energiją ir perduoda ją apkrovai. Rezultatas yra reikalinga nuolatinė įtampa.

Elektrolitiniai kondensatoriai taip pat gali kondensuoti elektros energiją. Kai toks kondensatorius išsikrauna, išorinėje grandinėje atsiranda kintamoji srovė. Jei jis iškraunamas per rezistorių, tada atsiranda palaipsniui mažėjanti (vienakryptė) kintamoji srovė. Naudojant indukcinę ritę, grandinėje sukuriama dvikryptė kintamoji srovė. Elektrolitiniai kondensatoriai gali turėti didžiulę talpą siekia šimtus mikrofaradų. Kai tokie kondensatoriai iškraunami per didelę varžą, elektra mažėja lėčiau ir išorinėje grandinėje teka pastovi įtampa.

Taip pat yra kondensatorių ir cheminių šaltinių – jonistorių deriniai. Jie turi galimybę kaupti ir išleisti didelį kiekį elektros energijos. Tipiškas pavyzdys – elektromobiliai.

Pavadinimai diagramose ir įrenginiuose

Visuotinai priimta, kad elektros srovė pereina nuo kontakto su pliuso ženklu iki kontakto su minuso ženklu.

Vietos, kuriose yra didelis potencialas, vadinamos „teigiamu poliu“ ir yra pažymėtos + (pliuso) ženklu. Taškai su mažesniu potencialu atitinkamai vadinami „neigiamu poliumi“ ir žymimi - (minuso) ženklu.

Iš pradžių buvo priimta, kad teigiamų laidų elektros izoliacija yra raudona, o laidai su minuso ženklu dažomi mėlyna arba juoda spalva.

Simboliai ant elektros prietaisų:- arba =. Vienakryptė elektra (įskaitant nuolatinę elektrą) žymima lotyniška abėcėle DC arba naudojamas Unikodo simbolis – U+2393.

Santrumpos AC ir DC yra tvirtai įsišaknijusios kasdieniame gyvenime ir vartojamos kartu su įprastais pavadinimais „kintamasis“ ir „konstanta“:

  • nuolatinės įtampos (-) arba DC (nuolatinės srovės) žymėjimas;
  • kintamosios srovės ženklas (~) arba AC (kintamoji srovė) - kintamosios srovės žymėjimas.

Nuolatinės įtampos taikymo sritys

Naudojant pastovią įtampą, elektros energija gali būti padidinta, o vėliau perduodama tarp maitinimo sistemų, naudojančių skirtingų dažnių kintamąją srovę (pavyzdžiui, 50 ir 60 hercų).

Nuolatinė srovė taip pat aktyviai naudojama transporte. Nuolat sužadinami elektros varikliai naudojami įvairiuose mechanizmuose:

  • elektriniai lokomotyvai;
  • elektriniai traukiniai;
  • tramvajai;
  • troleibusai;
  • keltuvai ir kt.

Nuolatinė įtampa buvo ir kitose mokslo ir technologijų srityse. Jis plačiai naudojamas tokiu būdu:

Elektra mus lydi visur: darbe ir namuose. Baisu net minutei įsivaizduoti, kas nutiks žmonijai, jei ji staiga praras elektros energiją.

Impulsų keitikliai ir galios elektronika apskritai daugeliui elektronikos kūrimo srities mėgėjų ir profesionalų visada išliko šventu dalyku. Straipsnyje apžvelgiama bene įdomiausia tema pasidaryk pats ir alternatyvios energijos gerbėjų tarpe – sinusinės įtampos/srovės formavimas iš pastovios.

Manau, kad daugelis iš jūsų tikriausiai matėte reklamą ar skaitėte straipsnius, kuriuose yra frazė „grynas sinusas“. Kaip tik apie tai ir kalbėsime, bet ne apie rinkodaros komponentą, o apie išskirtinai techninį įgyvendinimą. Stengsiuosi kuo aiškiau paaiškinti pačius veikimo principus, standartinius (ir ne tokius standartinius) grandinių sprendimus, o svarbiausia – parašysime ir analizuosime programinę įrangą STM32 mikrovaldikliui, kuri generuos mums reikiamus signalus.

Kodėl STM32? Taip, nes dabar tai yra populiariausias MK NVS: ant jų yra daug mokomosios informacijos rusų kalba, yra daug pavyzdžių, o svarbiausia, kad šie MK ir jiems skirti derinimo įrankiai yra labai pigūs. Pasakysiu tiesiai – komerciniame projekte įdiegčiau tik TMS320F28035 arba panašų DSP iš Piccolo serijos iš TI, bet tai visai kita istorija.

Svarbus vienas dalykas – STM32 leidžia stabiliai valdyti paprastus „buitinius“ galios keitiklius, nuo kurių pasaulio likimas nepriklauso nuo jokios atominės elektrinės ar duomenų centro veikimo.

Tai yra valdymo signalų, kuriuos reikia gauti, norint paversti nuolatinę srovę į kintamąją srovę, vaizdas. Ir taip – ​​tai būtent sinusas! Kaip tame filme: „Ar matai goferį? – Ne. – Ir jis...“

Norite sužinoti, kaip susidaro sinusas? Ar norėtumėte sužinoti, kaip kilovatai energijos pumpuojami į naftą? Tada sveiki atvykę į pjūvį!

1. Sinusinio signalo generavimo topologijos

Jei paklausite minios elektronikos inžinierių: „Kaip galite generuoti sinusoidinį signalą?“, tada pasipildys keliolika skirtingų metodų pasiūlymų, bet kurio mums reikia? Pradėkime nuo pradinės užduoties – reikia paversti, pavyzdžiui, 380V 10A į kintamą 230V įtampą. Apskritai tai yra „klasikinis“ atvejis, jį galime pamatyti bet kuriame gerame internetiniame UPS ar keitiklyje. Pasirodo, reikia konvertuoti apie 4 kW galios, o esant geram efektyvumui, neblogai, tiesa? Manau, kad tokia sąlyga sumažins sinuso „piešimo“ variantų skaičių. Taigi kas mums belieka?

Galios keitikliuose iki 6-10 kW naudojamos dvi pagrindinės topologijos: pilnas tiltas ir „pusė tiltas“ su perjungimo neutrale. Jie atrodo tokiu būdu:

1) Topologija su per neutraliu

Ši topologija dažniausiai aptinkama nebrangiuose UPS su sinusinės bangos išėjimu, nors tokios institucijos kaip APC ir GE nedvejodami ją naudoja net esant gana didelėms galioms. Kas juos skatina tai daryti? Pažvelkime į šios topologijos privalumus ir trūkumus.

Privalumai:

  • Minimalus galimas galios tranzistorių skaičius, o tai reiškia, kad nuostoliai yra 2 kartus mažesni, o įrenginio kaina taip pat mažesnė
  • Per nulį. Tai supaprastina sertifikavimo procesą, ypač CE ir ATEX. Taip yra dėl to, kad nuo nulio iki įvesties apsaugos sistemos (pavyzdžiui, RCD) taip pat gali veikti, jei įvyksta avarija išėjimo grandinėse po keitiklio.
  • Paprasta topologija, leidžianti sumažinti gaminio kainą mažomis
    ir vidutinio masto gamyba

Minusai:

  • Bipolinio maitinimo šaltinio poreikis. Kaip matote, į keitiklio grandinę turi būti tiekiama ±380V ir dar vienas nulis
  • Dvigubai padidinkite aukštos įtampos kondensatorių skaičių. Didelės talpos ir mažo ESR aukštos įtampos kondensatoriai, esant 3–4 kW galiai, pradeda svyruoti nuo 20 iki 40%.
    komponentų išlaidos
  • Elektrolitinių kondensatorių naudojimas „dalykloje“. Jie išdžiūsta, beveik neįmanoma pasirinkti vienodų parametrų kondensatorių, o jei manote, kad elektrolitų parametrai keičiasi eksploatacijos metu, tai yra beprasmiška. Galite jį pakeisti plėvele, bet tai brangu
Pagrindiniai privalumai ir trūkumai buvo nustatyti, tad kada reikalinga ši topologija? Mano subjektyvi nuomonė: esant galioms iki 500-1000 W, kai esminis reikalavimas yra kaina, o ne patikimumas. Akivaizdus tokių plataus vartojimo prekių atstovas yra A-Electronics stabilizatoriai: jie pigūs, kažkaip veikia, ir tai gerai. 60 % mūsų šalies vartotojų to pakanka ir įperka. Padarykime išvadas.

2) Tilto topologija

Tilto topologija... turbūt pati suprantamiausia ir labiausiai paplitusi galios keitiklių topologija, o svarbiausia – prieinama net ir mažai patirties turintiems kūrėjams. Po 10 kW nerasite nieko kito, tik vienfazis ar trifazis tiltas. Kodėl jis toks mylimas?

Privalumai:

  • Labai didelis patikimumas. Tai daugiausia lemia galios tranzistoriaus valdymo sistemos kokybė ir nepriklauso nuo komponentų gedimo
  • Reikalinga įvesties talpa yra kelis kartus ar net eilės tvarka mažesnė. Būtina pateikti tik apskaičiuotą ESR reikšmę. Tai leidžia naudoti plėvelinius kondensatorius išlaikant išlaidas. Plėvelės kondensatoriai - neišdžiūsta, geriau veikia esant atšiaurioms temperatūroms, tarnavimo laikas yra eilės tvarka didesnis nei elektrolitų
  • Minimalus tranzistorių įtampos pulsavimas, o tai reiškia, kad galite naudoti žemesnės įtampos tranzistorius
  • Veikimo algoritmų paprastumas ir aiškumas. Dėl to žymiai sutrumpėja produkto kūrimo ir paleidimo laikas.

Minusai:

  • Padidėjęs galios tranzistorių skaičius reiškia, kad reikia rimtesnio aušinimo. Padidėjusi tranzistorių kaina, tačiau dėl mažesnio kondensatorių skaičiaus tai veikiau pliusas
  • Padidėjęs vairuotojo sudėtingumas, ypač atsižvelgiant į galvaninės izoliacijos reikalavimus
Kaip matote iš tikrų tilto topologijos trūkumų, yra tik padidintas tranzistorių aušinimo reikalavimas. Daugelis manys: „Gaminama daugiau šilumos, vadinasi, efektyvumas mažesnis! Ne visai taip... Dėl sumažėjusios EML emisijos ir „kietesnės“ valdymo sistemos abiejų topologijų efektyvumas yra maždaug vienodas.

70% atvejų tenka naudoti tiltinę grandinę ne tik DC/AC inverteriuose, bet ir kituose keitikliuose. Taip yra dėl to, kad daugiausia projektuoju pramoninius sprendimus ir vis dažniau Europos klientams, o ten įprasta brangiems pramoniniams prietaisams suteikti 5-15 metų garantiją. Klasikinis reikalavimas: „Norime techninės įrangos, kuriai būtų suteikta 10 metų garantija“, nebėra pasirinkimo. Žinoma, kai žmonės nori įrenginio su mažiausia kaina, tuomet renkantis topologiją reikia pradėti nuo konkrečios užduoties.

Trumpa santrauka: šiame straipsnyje bus pateikta programinė įranga tiltinio keitiklio (H-bridge arba Full Bridge) veikimui, tačiau sinuso generavimo principas yra vienodas visoms topologijoms. Kodas taip pat gali būti pritaikytas 1-ajai topologijai, bet jūs esate vienas.

2. Kintamosios srovės formavimas naudojant tiltinį keitiklį

Pirmiausia pažiūrėkime, kaip paprastai veikia tilto keitiklis. Mes žiūrime į grandinę ir matome tranzistorius VT1-VT4. Jie leidžia mums pritaikyti vieną ar kitą potencialą mūsų abstrakčiai apkrovai (pavyzdžiui, rezistorius). Jei atidarysime tranzistorius VT1 ir VT4, gausime taip: VT4 vieną apkrovos galą sujungia su neigiamu (GND), o tranzistorius VT1 jungiasi prie +380V, apkrovoje atsiranda potencialų skirtumas „380V - 0V“, o tai nėra nulis, o tai reiškia, kad srovė pradės tekėti į apkrovą. Manau, visi prisimena, kad mokslininkai sutiko - srovė teka „nuo pliuso iki minuso“. Gauname šį paveikslėlį:

Ką gavome atidarę VT1 ir VT4? Mes prijungėme savo apkrovą prie tinklo! Jei rezistorius būtų pakeistas lempute, jis tiesiog užsidegtų. Ir mes ne tik įjungėme apkrovą, bet ir nustatėme per ją tekančios srovės kryptį. Tai labai svarbu! Kas tuo metu atsitiko su VT2 ir VT3? Jie buvo uždaryti... visiškai... sandariai... Kas būtų, jei visgi būtų atviri ir VT2 ar VT3? Pažiūrėkime:

Tarkime, kad tranzistoriai VT1, VT4 ir VT2 atsidarė. Prisiminkime Omo dėsnį, pažiūrėkime į aukštos įtampos tranzistorių, pvz., IPP60R099P7XKSA1, kanalo varžą ir pamatysime 0,1 omo, turime 2 iš jų nuosekliai – vadinasi, grandinės VT1 ir VT2 varža yra apie 0,2 Ohm. Dabar apskaičiuokime srovę, kuri tekės per šią grandinę: 380V / 0,2 Ohm = 1900A. Manau, kad visi supranta, kad tai trumpasis jungimas? Taip pat manau, kad visi supranta, kodėl VT2 ir VT3 reikia uždaryti?

Šis "reiškinys" vadinamas - per srovę. Ir būtent su juo vyksta didysis karas galios elektronikos srityje. Kaip to išvengti? Sukurkite valdymo sistemą, kurios algoritmas griežtai uždraus vienu metu atidaryti papildomą tranzistorių.

Kam tada reikalingi tranzistoriai VT2 ir VT3? Prisimeni, rašiau, kad labai svarbi srovės kryptis? Prisiminkime, kas yra kintamoji srovė. Tiesą sakant, tai yra srovė, kuri turi kažką kintamo, šiuo atveju srovės kryptį. Mūsų lizde teka srovė, kuri keičia savo kryptį 100 kartų per sekundę. Dabar uždarykite VT1 ir VT4, tada atidarykite tranzistorius VT2 ir VT3 ir gaukite šį paveikslėlį:

Kaip matote, srovės kryptis (rodoma rodyklėmis) pasikeitė į priešingą. Naudodami tiltą galėjome pakeisti srovės kryptį, ką tai reiškia? Taip, mes turime AC!

Atkreipkite dėmesį, kad tiltas turi dvi įstrižaines: pirmąją įstrižainę sudaro VT1+VT4, o antrąją – VT2+VT3. Šios įstrižainės veikia paeiliui, pirmiausia perjungdamos srovę viena kryptimi, o paskui kita.

Taigi gavome kintamąją srovę, sakote, bet ne viskas taip paprasta... Turime standartinę - tinklo įtampą. Jį standartizuoja du pagrindiniai parametrai: įtampa ir dažnis. Kol kas spręskime apie dažnį, nes įtampos klausimas yra paprastas ir grynai grandinės techninis.

Taigi dažnis... apie jį žinoma, kad jis yra 50 Hz (valstybėse kartais 60 Hz). Signalo periodas yra 20 ms. Sinusinė banga šiuo atveju yra simetriška, o tai reiškia, kad mūsų 2 pusės bangos (teigiamos ir neigiamos) turi tą pačią trukmę, tai yra, 10 ms + 10 ms. Tikiuosi čia viskas aišku.

Ką tai reiškia fizine prasme? Taip, mes turime keisti srovės kryptį apkrovoje kas 10 ms. Gauname, kad pirmiausia VT1+VT4 įstrižainė yra atidaryta 10 ms, o tada užsidaro ir VT2+VT3 įstrižainė atsidaro 10 ms.

Ką reiškia atidaryti tranzistorių ir kokį signalą jam siųsti?

Šiek tiek nukrypkime nuo tranzistorių valdymo principo. Naudoju izoliuotus N kanalo lauko tranzistorius (Mosfet).

„Atviras tranzistorius“ – tai tranzistorius, kurio užtvaras (G) šaltinio (S) atžvilgiu buvo maitinamas teigiamu potencialu (+10..18V), o tranzistorius pakeitė kanalo varžą (S-D) iš be galo didelės. (2–100 MOhm) iki mažų (dažniausiai 0,1–1 Ohm). Tai yra, tranzistorius pradėjo vesti srovę.

„Uždaras tranzistorius“ – tai tranzistorius, kurio užtvaras (G) traukiamas link šaltinio (S) ir jo varža keičiasi nuo mažos iki be galo didelės. Tai yra, tranzistorius nustojo vesti srovę.

Norėdami geriau susipažinti su lauko tranzistoriaus arba IGBT veikimo principu, patariu perskaityti keletą skyrių Semenovo knygoje „Galios elektronikos pagrindai“ arba kitame šaltinyje, galbūt pradedantiesiems Vikipedijoje.

Valdymui mes tiekiame signalą su impulso pločio moduliacija arba labiau pažįstama santrumpa - PWM. Šio signalo ypatumas yra tas, kad jis turi 2 būsenas: apatinę įtampą (GND) ir viršutinę įtampą (VCC), tai yra, pritaikę prie tranzistoriaus vartų, mes jį arba atidarome, arba uždarome – daugiau nieko neduodama. Taip pat patariu papildomai pasiskaityti apie PWM, nes tinginiams aprašiau paviršutiniškai.


Taigi, kad mūsų tiltas keistų srovės kryptį kas 10 ms, turime jam pritaikyti PWM signalą, kurio laikotarpis yra 20 ms, o darbo ciklas - 50%. Tai reiškia, kad iš 20 ms mūsų petys yra atviras pusę laiko (10 ms) ir veda srovę, o kita pusė uždaryta. Tokį PWM turime taikyti visiems klavišams, bet su viena sąlyga – VT1+VT4 įstrižainei taikome tiesioginį PWM, o VT2+VT3 įstrižainei – atvirkštinį PWM. Sumaniau tariant, signalas, pateikiamas įstrižainėse, turėtų turėti 180 0 poslinkį. Manau, kad šiuo metu jūsų galva laksto bandydama suprasti tekstą, todėl pažvelkime į jo vaizdinį vaizdą:

Dabar viskas aišku? Ne? Tada išsamiau... Kaip matote, aš specialiai atkreipiau dėmesį į tranzistorių atidarymo ir uždarymo momentus: jie atsidaro ties „pliusu“, o užsidaro ties „minusu“. Be to, signalai yra priešingi, tai yra atvirkščiai: kai mėlynas signalas yra „pliusas“, tada žalias signalas yra „minusas“. Vienai įstrižai dedame mėlyną signalą, o kitą – žalią – kaip matyti oscilogramoje, mūsų įstrižainės niekada neatsidaro vienu metu. Kintamoji srovė paruošta!

Pažvelkite į laikotarpį. Aš specialiai parodžiau oscilogramą iš valdiklio išėjimų, kad mano žodžiai nebūtų abstrakcija. Signalo periodas yra 20 ms, viena įstrižainė atvira 10 ms ir sukuria teigiamą pusbangę, kita įstrižainė taip pat atvira 10 ms ir sukuria neigiamą pusbangę. Dabar tikiuosi, kad visi supras, o jei vis tiek nesupranti, rašyk man į PM, duosiu individualią pamoką ant pirštų. Kad patvirtinčiau mano žodžius, oscilograma rodo mūsų brangius 50 Hz! Dar per anksti atsipalaiduoti...

Mes gavome kintamąją srovę, kurios dažnis yra 50 Hz, bet išėjimo angoje turime sinusinę bangą, o čia meandra nėra. Formaliai išėjimui galite pritaikyti meandrą ir juo maitinti daugumą apkrovų, pavyzdžiui, perjungiamas maitinimo šaltinis nesvarbus: sinusas ar meandras. Tai yra, jūs jau turite pakankamai, kad galėtumėte įjungti nešiojamuosius kompiuterius, telefonus, televizorius, telefonus ir kitus dalykus, tačiau jei prijungsite kintamosios srovės variklį, viskas bus labai blogai - jis pradės kaisti ir jo efektyvumas bus pastebimai mažesnis, ir galų gale greičiausiai perdegs. Manote, kad namuose neturite variklių? O kaip su šaldytuvo kompresoriumi? O šildymo cirkuliacinis siurblys? Pastarieji paprastai dega taip, lyg būtų pagaminti iš medžio. Ta pati situacija yra ir su giluminių šulinių siurbliais gręžiniams, ir su daugeliu kitų dalykų apskritai. Pasirodo, sinusinis signalas keitiklio, stabilizatoriaus ar UPS išėjime vis dar svarbus. Na, mes turime tai sukurti! Dabar prasidės visiškas smegenų sprogimas...

3. Sinusinės bangos formos generavimas naudojant PWM

Tiesą sakant, aš nežinau, kaip pateikti šį skyrių prieinama kalba. Jei kas nesupranta, prašau arba googlinti plačiau, arba parašyti komentare arba PM - pasistengsiu jums asmeniškai paaiškinti. Akys bijo, o rankos daro...

Pažiūrėkime, kaip atrodo įprastas sinuso grafikas:

Matome 2 ašis: viena ašis su periodu pi, pi/2 ir toliau, antroji su amplitudė nuo -1 iki +1. Mūsų uždavinyje periodas matuojamas sekundėmis ir yra 20 ms arba 10 ms kiekvienai pusbangiai. Čia viskas paprasta ir aišku, bet su amplitude smagiau – tiesiog priimkite kaip aksiomą, kad mūsų amplitudė yra nuo 0 iki 1000. Tai yra darbo ciklo reikšmė, kurią nustato mikrovaldiklis, tai yra, 100 yra 10%, 500 yra 50%, 900 yra 90%. Manau, logika aiški. Kitame skyriuje suprasite, kodėl nuo 0 iki 1000, bet dabar perkurkime grafiką, kad jis atitiktų mūsų reikšmes:

Taip atrodo rūkančiojo sinuso grafikas, atitinkantis mūsų užduotį. Kaip matote, neigiamo pusciklo nenurodžiau, nes Mūsų atveju jis įgyvendinamas ne naudojant sinusoidinį signalą, o keičiant srovės kryptį perjungiant tilto įstrižaines.

X ašyje turime laiko, o Y ašyje turime mūsų PWM signalo darbo ciklą. Turime nubrėžti sinusą naudodami PWM. Ar mokykloje prisimename geometriją, kaip kūrėme grafikus? Teisingai, taškas po taško! Kiek taškų? Sudarykime sinusą iš kelių taškų O1(0,0) + O2(5,1000) + O3(10,0) + O4(15, -1000) + O5(20, 0) ir gaukime tokį sinusą:

Mes jį pastatėme ir matome, kad iš principo šis signalas yra labiau panašus į sinusą, nei į įprastą meandrą, bet tai dar nėra sinusas. Padidinkime taškų skaičių. Tai, beje, vadinama „signalo diskretiškumu“ arba šiuo atveju „PWM diskretiškumu“. Kaip sužinoti šių taškų koordinates? Su ekstremaliais buvo paprasta...

Sinuso formavimo verčių apskaičiavimas

Kaip minėjau aukščiau, mūsų sinusas yra gana simetriškas. Jei pastatysime 1/4 periodo, tai yra nuo 0 iki 5 ms, tai dubliuodami šį gabalą toliau, galime sukurti sinusą be galo ilgai. Taigi formulė:


Ir taip eilės tvarka:
  • n - darbo ciklo vertė tam tikrame diskrečiame taške
  • A yra signalo amplitudė, ty didžiausia darbo ciklo vertė. Mums tai 1000
  • pi/2 - 1/4 sinuso periodo patenka į pi/2, jei skaičiuosime 1/2 periodo, tai pi
  • x - žingsnio numeris
  • N – taškų skaičius
Pavyzdžiui, padarykime, kad būtų patogu naudoti sąlygą, kad turime 5 taškus. Pasirodo, turime 1 žingsnį = 1 ms, tai palengvins grafiko sudarymą. Atrankos žingsnis apskaičiuojamas paprastai: laikotarpis, per kurį sudarome grafiką (5 ms), yra padalintas iš taškų skaičiaus. Perkelkime formulę į žmogaus formą:


Gauname 1 ms atrankos žingsnį. Užrašykite darbo ciklo skaičiavimo formulę, pavyzdžiui, „Excel“ ir gaukite šią lentelę:

Dabar grįšime prie savo sinuso grafiko ir dar kartą pavaizduosime jį, bet didesniam taškų skaičiui ir pamatysime, kaip jis pasikeis:

Kaip matome, signalas yra daug panašesnis į sinusą, net atsižvelgiant į mano įgūdžius piešti, o tiksliau į tinginystės lygį)) Manau, kad rezultatas nereikalauja paaiškinimo? Remdamiesi konstravimo rezultatais, išvedame aksiomą:

Kuo daugiau taškų, tuo didesnis signalo atranka, tuo idealesnė sinusoidinio signalo forma


Ir taip, kiek taškų panaudosime... Aišku, kuo daugiau, tuo geriau. Kaip skaičiuoti:
  1. Šiam straipsniui naudoju seną STM32F100RBT6 mikrovaldiklį (STM32VL-Discovery derinimas), jo dažnis yra 24 MHz.
  2. Skaičiuojame, kiek tikselių truks 20 ms periodas: 24 000 000 Hz / 50 Hz = 480 000 tikėjimų
  3. Tai reiškia, kad pusė laikotarpio trunka 240 000 erkių, o tai atitinka 24 kHz dažnį. Jei norite padidinti nešlio dažnį, imkite greitesnį akmenį. Mūsų ausys vis tiek girdės 24 kHz, bet bandymams ar aparatūros daliai, stovinčiam rūsyje, tai tiks. Kiek vėliau planuoju pervesti į F103C8T6, o ten jau 72 MHz.
  4. 240 000 varnelių... Tai logiškai rodo 240 taškų už pusę laikotarpio. Laikmatis atnaujins darbo ciklo vertę kas 1 000 tikslių arba kas 41,6 µs
Mes nusprendėme dėl PWM diskretiškumo 240 taškų per pusę periodo, kad gautume bent jau ne blogesnę signalo formą nei tinkle. Dabar mes apskaičiuojame lentelę, taip pat „Excel“, kaip paprasčiausią variantą. Gauname tokį grafiką:

Lentelės šaltinį ir vertes rasite nuorodoje - .

4. Tilto keitiklio valdymas sinusinei bangai generuoti

Gavome sinuso lentelę ir ką su ja daryti? Turime perduoti šias vertes tam tikru mums žinomu atrankos žingsniu. Viskas prasideda nuo laikmačio inicijavimo - laikas 0, darbo ciklas nulis. Toliau suskaičiuojame 41,66 μs atrankos žingsnį ir į laikmatį įrašome PWM reikšmę iš 13 lentelės (0,13 %), suskaičiuojame dar 41,66 μs ir įrašome 26 (0,26 %) ir taip toliau visoms 240 reikšmių. Kodėl 240? Mes turime 120 žingsnių 1/4 periodo, bet turime nubrėžti 1/2 periodo. Darbo ciklo reikšmės yra tos pačios, tik pasiekus 1000, rašome atvirkštine tvarka ir gauname sinuso skilimą. Išvestyje turėsime tokią oscilogramą:

Kaip matote, per aiškiai apibrėžtą laikotarpį gavome krūvą PWM reikšmių ir jos trukmė yra: 240 žingsnių x 41,66(!) μs = 9998,4 μs = 9,9984 ms ~ 10 ms. Gavome pusę periodo 50 Hz tinklo dažniui. Kaip matote, vėl yra du signalai ir jie yra antifazėje, o tai yra būtent tai, ko reikia tilto įstrižainėms valdyti. Bet atsiprašau, kur yra sinusas, klausiate? Atėjo tiesos akimirka! Dabar tiekime signalą iš mikrovaldiklio išvesties į žemųjų dažnių filtrą. Aš sukūriau paprastą žemųjų dažnių filtrą, naudodamas RC grandines, kurių vardinės vertės buvo 1,5 kOhm ir 0,33 μF (ką tik turėjau po ranka). toks rezultatas:

Voila! Štai mūsų ilgai lauktas sinusas! Raudonasis osciloskopo spindulys yra signalas prieš žemųjų dažnių filtrą, o geltonas spindulys yra signalas po filtravimo. Žemųjų dažnių filtras atjungia visus dažnius, viršijančius 321 Hz. Mes vis dar turime pagrindinį 50 Hz signalą ir, žinoma, jo harmonikas su maža amplitudė. Jei norite nepriekaištingai išvalyti signalą, pasidarykite žemųjų dažnių filtrą, kurio ribinis dažnis yra apie 55–60 Hz, bet kol kas tai nėra svarbu, tereikia patikrinti, ar gavome sinusą, ar ne. Beje... mano osciloskopo sinchronizacija įjungta geltonam spinduliui (rodyklė dešinėje ekrano pusėje) ir ekrano apačioje matome jo dažnį - idealus 50 Hz. Ko daugiau galėtum paprašyti? Tai viskas, belieka nuspręsti, kokį signalą ir kur siųsti. Pažiūrėkime į šį paveikslėlį:

Jei pažvelgsite į pačią pirmąją oscilogramą straipsnyje, pamatysite, kad geltonos ir mėlynos spalvos signalas geriau turi tą pačią fazę, tai yra, jie tuo pačiu metu tampa teigiami ir atidaro tranzistorius. Šie 2 signalai atveria VT1+VT4 įstrižainę. Atitinkamai, kiti 2 signalai taip pat turi tą pačią fazę ir atveria skirtingą įstrižainę. Dabar mes ne tik keičiame srovės kryptį, bet ir nustatome amplitudę naudodami PWM, kad ji keistųsi pagal sinusoidinį dėsnį. Dabar pažiūrėkime į tą pačią grandinę, bet su srovėmis:

Kaip matote, srovė per apkrovą teka priešinga kryptimi, keisdama kryptį 50 Hz dažniu, o moduliuotas PWM, tiekiamas tranzistoriams VT1 ir VT2, leidžia nubrėžti sinusoidinio signalo formą pusiau bangomis.

LPF (žemo dažnio filtras) pagamintas iš induktyvumo L1 ir kondensatoriaus C2. Patariu, kad šio filtro ribinis dažnis būtų mažesnis nei 100 Hz, tai sumažins įtampos pulsavimą išėjime.

Desertui parodysiu dalį tikro įrenginio su panašia topologija ir filtru grandinės schemos, ji didelė, todėl atsisiųskite PDF.

5. Kova su srovėmis

Manau, kad niekam ne paslaptis, kad nieko nėra tobulo? Tas pats yra su „Mosfets“, jie turi nemažai trūkumų ir mes pažvelgsime į vieną iš jų - didelę vartų talpą. Tai yra, norėdami atidaryti tranzistorių, turime ne tik įjungti įtampą, bet ir įkrauti kondensatorių ta pačia įtampa, todėl signalo kilimas ir kritimas yra atidėtas. Tai lemia tai, kad signalo ribose gali atsirasti laiko momentas, kai vienas tranzistorius dar nėra visiškai užsidaręs, o kitas jau pradėjo atsidaryti.

Patariu daugiau apie šį reiškinį paskaityti, pavyzdžiui, šiame straipsnyje. Aš tiesiog pasakysiu, kaip su tuo elgtis. Kad tranzistoriai spėtų normaliai užsidaryti, kol atsidarys kita svirtis, tarp valdymo signalų įvedamas negyvas laikas arba, paprasčiau tariant, laiko delsa. Mūsų atveju toks vėlavimas bus įvestas tarp tranzistorių VT3 ir VT4 valdymo signalų, nes Jie yra tie, kurie teikia pusės bangos perjungimą. Tranzistoriai su moduliuotu PWM (VT1 ir VT2) jau turi tokius vėlavimus - sinusas prasideda nuo 0% darbo ciklo ir taip pat baigiasi 0%. Šis uždelsimas yra 1 mėginių ėmimo žingsnio ilgis, tai yra 41,6 µs.

Ir taip – ​​reikia įgyvendinti mirusį laiką tarp mėlyno ir žalio pluošto/signalo. Bet kuriame valdiklyje tokį uždelsimą galima padaryti programiškai, bet tai nėra gerai – programa užstos arba vėluos, o bla bla bla, jūsų įrenginys ir butas jau dega. Todėl galios elektronikoje turėtų būti naudojama tik techninė įranga. Visuose specializuotuose variklių valdikliuose aparatinės įrangos išjungimo laikas yra numatytas visuose PWM išėjimuose ir kanaluose, tačiau STM32 vis tiek yra bendros paskirties MK, todėl čia viskas paprasčiau, bet jis atliks mūsų funkciją.

Mums reikės TIM1 laikmačio, tik jis gali įterpti aparatinės įrangos delsą tarp signalų, programinės įrangos rašymo skyriuje aš jums pasakysiu, kaip tai padaryti, bet dabar pažiūrėkime į rezultatą ir kas ten turėtų būti:

Norėdami pamatyti vėlavimą, „ištempiame“ signalą ant osciloskopo, nes jo trukmė yra trumpa, apie 300 ns. Norint apsaugoti tranzistorius nuo srovių, kiekvienai konkrečiai užduočiai reikia apskaičiuoti reikiamą veikimo laiką. Vėlavimo trukmė konfigūruojama inicijuojant (nustatant) TIM1 laikmatį. Šis delsimas yra tiek priekiniame, tiek krentančioje signalo galuose.

6. STM32 mikrovaldiklio programinės įrangos rašymas

Čia mes priėjome prie bene svarbiausios ir įdomiausios dalies. Išanalizavome proceso fiziką, veikimo principas lyg ir aiškus, nustatytas ir reikalingas apsaugos minimumas – belieka visa tai įgyvendinti realioje aparatinėje įrangoje. Tam naudoju STM32VL-Discovery plokštę, beje, ją gavau dar 2011 m., kai ST savo konferencijose nemokamai išdavė derinimus ir nuo to laiko ji buvo supakuota - pakuotę atidariau tik porą mėnesių prieš, atrodo, kad galiojimo laikas nepraėjo))) Mano kodo rašymo „stendas“ atrodo taip:

Dabar eikime per ryšį. Kadangi man reikia generuoti du signalus su skirtingais dažniais, turėjau naudoti PWM išėjimus skirtinguose laikmačiuose. TIM1 generuoja signalą, kuris nustato pagrindinį 50 Hz dažnį ir tiekia jį tranzistoriams VT3 ir VT4. Naudojamas PWM kanalas Nr. 3 + jo papildomas išėjimas. Taip, taip, STM32 aparatūros išjungimo laiką galima konfigūruoti tik tarp normalios ir papildomos vieno kanalo išvesties, o tai man labai nepatiko. Pats sinuso formavimo procesas perkeliamas į TIM2 laikmatį, delsimo nereikia (aš rašiau anksčiau kodėl) ir visai tinka generuoti moduliuotą signalą VT1 ir VT2.

Naudojami išėjimai:

  • PA10 yra įprastas PWM išėjimas, TIM1 laikmačio kanalas Nr. 3, generuojantis 50 Hz į tranzistorių VT3
  • PB15 - TIM1 laikmačio kanalo Nr. 3 papildoma išvestis, kuri tiekiama į tranzistorių VT4
  • PA0 yra TIM2 laikmačio PWM kanalo Nr. 1 išvestis. Teikia moduliuotą signalą VT1
  • PA1 yra TIM2 laikmačio PWM kanalo Nr. 2 išvestis. Teikia moduliuotą signalą VT2
Projektas įgyvendintas Keil 5 aplinkoje jis bus pridėtas prie archyvo straipsnio pabaigoje. Tikiuosi, kad neverta pasakoti, kaip sukurti projektą ir panašių akivaizdžių dalykų, jei kyla tokių klausimų, tada patariu pasidomėti, kaip tai padaryti Google ar YouTube. Visas kodas parašytas CMSIS (registruose), nes... Tiesiog nuodėmė naudoti bet kokius papildomus abstrakcijos lygius keitiklio valdymo sistemoje! ST atveju tai yra SPL bibliotekos ir tinkamesni HAL. Dėl smagumo dirbau su abiem, išvada visiška mėšlas. HAL paprastai yra neįtikėtinai lėtas ir tiesiog netinka programoms su sunkiu realiuoju laiku. Kai kuriais kritiniais momentais, beje, registrai buvo daug kartų greitesni, internete radau ne vieną straipsnį.

Kai kurie tikriausiai paklaus: „Kodėl nenaudojus DMA? Tai galima ir reikia padaryti, tačiau šis straipsnis yra labiau informacinio pobūdžio, o pats MK nedaro nieko sudėtingo skaičiavimo prasme, todėl branduolio našumui ribų tikrai nėra. DMA yra geras, bet jūs galite apsieiti be DMA be jokių galimų problemų. Paaiškinkime, ką turime padaryti programoje:

  1. Sukurkite masyvą su mūsų 240 sinusų taškų
  2. Sukonfigūruokite laikrodžio grandines į 24 MHz dažnį, pasirinkdami išorinį kvarco kristalo šaltinį
  3. Nustatykite TIM1 laikmatį, kad jis generuotų 50 Hz PWM su įjungtu laiku
  4. Sukonfigūruokite TIM2, kad generuotų PWM su 24 kHz nešlio dažniu
  5. Nustatykite TIM6 laikmatį, kuris generuoja pertraukimus 24 kHz dažniu. Jame mes išsiųsime kitą darbo ciklo vertę iš lentelės į TIM2 laikmatį, taip pat pakeisime pusbangių generavimą.
Nieko sudėtingo, tiesa? Tada eime...

6.1. Sinuso lentelės kūrimas

Čia viskas paprasta, įprastas masyvas. Vienintelis dalykas, kurį verta prisiminti, yra tai, kad turime 120 taškų nuo 0 iki 1000. Į lentelę reikia įtraukti dar 120 taškų, bet atvirkštine tvarka:

Uint16_t sin_data = (13,26,39,52,65,78,91,104,117,130,143,156,169,182,195,207,220,233,246,258, 2 394,246,258,4,8 ,500, 511,522,533,544,555,566,577,587,598,608,619,629,639,649,659,669,678,688,697,707, 716,522,533,544,555,7,7,7,7,3 793,801,809,816,824,831,838,845,852,859,866, 872,878,884,891,896,902,908,913,918,923,92, 8,939,923,92, 5, 969,972,975,978,980,983,985,987,989,991,996,997,998,999,999,999,1000,9,999,1000,9,9,9,9,9,9,9,9,9,9 989,987,985,983,980,978,975,972,969,965,962,958,955,951,946,942,938,933,928,923,918,9 13,908,98,8,8,8,8,8,6 859,852,845,838,831,824,816,809,801,793,785,777,768,760,751,743,734,725,716,707, 77,566,555,544,533,522,511,500, 488,477,465,453,442,430,418,406,394,382,370,358,3 46,333,358,3, 46,333,321,32,3,2,3,2,4 20,207,195,182,169,156,143,130,117,104,91 ,78,65,52, 39,26,13);

6.2. Laikrodžių sistemos nustatymas

Laikrodžio nustatymas STM32 yra labai lankstus ir patogus, tačiau yra keletas niuansų. Pati seka atrodo taip:

1) Perjunkite į laikrodį iš integruotos RC grandinės (HSI) į išorinį kvarcą (HSE), tada palaukite parengties vėliavėlės

RCC->CR |= ((uint32_t)RCC_CR_HSEON); // Įjungti HSE, kol (!(RCC->CR & RCC_CR_HSERDY)); // Paruošta paleisti HSE
2) Valdiklio Flash atmintis veikia šiek tiek lėčiau nei branduolys, tai sureguliuojame blykstės laikrodį. Jei to nepadarysite, programa įsijungs, tačiau periodiškai strigs: pora kW ir nestabili programinė įranga yra nesuderinami dalykai.

FLASH->ACR = FLASH_ACR_PRFTBE | FLASH_ACR_LATENCY; // Laikrodis Flash atmintis
3) Nustatome skirstytuvus sistemos laikrodžio magistralei (AHB) ir periferinėms magistralėms, kurių yra dvi: APB1 ir APB2. Mums reikia maksimalaus dažnio, todėl nieko neskirstome, o padalijimo koeficientus padarome lygų 1.

RCC->CFGR |= RCC_CFGR_HPRE_DIV1; // AHB = SYSCLK/1 RCC->CFGR |= RCC_CFGR_PPRE1_DIV1; // APB1 = HCLK/1 RCC->CFGR |= RCC_CFGR_PPRE2_DIV1; // APB2 = HCLK/1
4) Sureguliuojame dažnio daugiklio (PLL) prescaler, kuris stovi priešais ir dalija kvarco dažnį iš 2. Gauname, kad 8 MHz dalijamas iš 2 ir gauname 4 MHz. Dabar turime juos padauginti iš 6, kad išvestis būtų 24 MHz. Prieš rašydami registrus, bet kuriuo atveju ištrinkite jų turinį.

RCC->CFGR &= ~RCC_CFGR_PLLMULL; // išvalyti PLLMULL bitus RCC->CFGR &= ~RCC_CFGR_PLLSRC; // išvalyti PLLSRC bitus RCC->CFGR &= ~RCC_CFGR_PLLXTPRE; // išvalyti PLLXTPRE bitus RCC->CFGR |= RCC_CFGR_PLLSRC_PREDIV1; // šaltinis HSE RCC->CFGR |= RCC_CFGR_PLLXTPRE_PREDIV1_Div2; // šaltinis HSE/2 = 4 MHz RCC->CFGR |= RCC_CFGR_PLLMULL6; // PLL x6: laikrodis = 4 MHz * 6 = 24 MHz
5) Dabar reikia įjungti dažnio daugiklį (PLL) ir laukti parengties vėliavėlės:

RCC->CR |= RCC_CR_PLLON; // įjungti PLL while((RCC->CR & RCC_CR_PLLRDY) == 0) () // palaukite, kol PLL bus paruoštas
6) Galiausiai sukonfigūruojame sistemos magistralės (AHB) laikrodžio šaltinį - mūsų dažnio daugiklio išvestį, kuri turi trokštamą 24 MHz. Pirmiausia išvalome registro turinį, nustatome reikiamą bitą ir laukiame paruoštos vėliavėlės:

RCC->CFGR &= ~RCC_CFGR_SW; // išvalyti SW bitus RCC->CFGR |= RCC_CFGR_SW_PLL; // pasirinkite šaltinį SYSCLK = PLL while((RCC->CFGR & RCC_CFGR_SWS) != RCC_CFGR_SWS_1) () // palaukite, kol bus naudojamas PLL
Dėl to gauname tokią laikrodžio nustatymo funkciją:

Tuščia RCC_Init (void)( RCC->CR |= ((uint32_t)RCC_CR_HSEON); // Įgalinti HSE, kol (!(RCC->CR & RCC_CR_HSERDY)); // Paruošta paleisti HSE FLASH->ACR = FLASH_ACR_PRFTBE | LAT FLASH_ACR; // Clocklk Flash atmintis RCC->CFGR |= RCC_CFGR_HPRE_DIV1 // AHB = SYSCLK/1 RCC->CFGR |= RCC_CFGR_PPRE1_DIV1 RCC_CFGR_PLLMULL // išvalyti PLLMULL bitus RCC->CFGR &= ~RCC_CFGR_PLLSRC // išvalyti PLLSRC bitus RCC->CFGR &= ~RCC_CFGR_PLLXTPRE // išvalyti PLLXTPRE RCC->CFGR_1 CFGR |= RCC_CFGR_PLLXTPRE_PREDIV1_Div2 // šaltinis HSE/2 = 4 MHz RCC->CFGR |= RCC_CFGR_PLLMULL6; (RCC->CR & RCC_CR_PLLRDY) == 0) () // laukti, kol PLL bus paruoštas RCC->CFGR &= ~RCC_CFGR_SW // išvalyti SW bitus RCC->CFGR |= RCC_CFGR_SW_PLL while((RCC->CFGR & RCC_CFGR_SWS) != RCC_CFGR_SWS_1) () // palaukite, kol bus naudojamas PLL )

6.3. TIM1 laikmačio ir „negyvos laiko“ nustatymas

Pateiksiu bendrą laikmačio nustatymą, jis išsamiai aprašytas informaciniame vadove - patariu perskaityti kiekvieno registro paskirtį. Taip, ir internete yra pagrindinių straipsnių apie darbą su PWM. Pats mano kodas yra gana gerai pakomentuotas, todėl aš tiesiog duosiu jums TIM1 laikmačio inicijavimo funkcijos kodą ir pažvelkime į įdomiausius dalykus:

Negalioja PWM_50Hz_Init (tuščia)( RCC->APB2ENR |= RCC_APB2ENR_TIM1EN; // įgalinti TIM1 laikrodį RCC->APB2ENR |= RCC_APB2ENR_IOPAEN; // įjungti A prievado laikrodį RCC->APB_IAPB2 |= EN BCC->APB_IOPB2 RCC->APB2ENR |= RCC_APB2ENR_AFIOEN // įjungti laikrodį alternatyviam gpio /**************************** PA10 nustatymas ** **; **************************************/ GPIOA->CRH &= ~GPIO_CRH_CNF10 // alternatyvaus stūmimo nustatymas traukti PWM GPIOA->CRH |= GPIO_CRH_CNF10_1 &= ~GPIO_CRH_MODE10 |= GPIO_CRH_MODE10 // gpio greitis 50 MHz /************; ************** PB15 nustatymas ************************************** **** ********/ GPIOB->CRH &= ~GPIO_CRH_CNF15 // papildomas nustatymas CH3N GPIOB->CRH |= GPIO_CRH_CNF15_1 / 50 MHz /********; ************************ Konfigūruoti PWM kanalą *************** ******** ************************/ TIM1->PSC = 480-1; // div laikrodžiui: F = SYSCLK / TIM1->ARR = 1000 skaičiuoti iki 1000 TIM1->CR1 &= ~TIM_CR1_CKD; // Div for dead-time: Tdts = 1/Fosc = 41,6 ns TIM1->CCR3 = 500; // darbo ciklas 50 % TIM1->CCER |= TIM_CCER_CC3E | TIM_CCER_CC3NE; // įjungti PWM papildomą išvestį TIM1->CCER &= ~TIM_CCER_CC3NP; // aktyvus aukštas lygis: 0 - aukštas, 1 - žemas TIM1->CCMR2 &= ~TIM_CCMR2_OC3M; TIM1->CCMR2 |= TIM_CCMR2_OC3M_2 | TIM_CCMR2_OC3M_1; // teigiamas PWM TIM1->BDTR &= ~TIM_BDTR_DTG; // išvalyti registrą TIM1->BDTR |= TIM_BDTR_DTG_2 | TIM_BDTR_DTG_1 | TIM_BDTR_DTG_0; // vertės terminas TIM1->BDTR |= TIM_BDTR_MOE | TIM_BDTR_AOE; // įgalinti generavimo išvestį /************************************************ **** **************************************/ TIM1->CR1 &= ~TIM_CR1_DIR; // skaičiuoti aukštyn: 0 - aukštyn, 1 - žemyn TIM1->CR1 &= ~TIM_CR1_CMS; // sulygiuotas pagal priekinį signalą TIM1->
Mūsų darbo ciklas yra fiksuotas ir niekada nesikeičia, kaip ir dažnis. Būtent šis laikmatis nustato įstrižainių veikimo laiką ir seką:

TIM1->CCR3 = 500; // darbo ciklas 50 %
„Negyvos laiko“ pauzės trukmė labai priklauso nuo TDTS laiko parametro, kuris sukonfigūruotas čia:

TIM1->CR1 &= ~TIM_CR1_CKD; // neveikiančio laiko div: Tdts = 1/Fosc = 41,6 ns
Jo trukmė – 1 laikrodžio tiksėjimas. Jei pažvelgsite į informacinį vadovą, pamatysite, kad CKD bitai gali, pavyzdžiui, padaryti Tdt lygius 2, 8 varneles ir pan.

Pati pauzės laikas nustatomas čia:

TIM1->BDTR |= TIM_BDTR_DTG_2 | TIM_BDTR_DTG_1 | TIM_BDTR_DTG_0;
Jei atidarysite informacinį vadovą RM0041, pamatysite šias DT skaičiavimo formules. Kaip matote, Tdts parametras yra esminis:

6.4. TIM2 laikmačio nustatymas, sinuso generavimas

Čia viskas dar paprasčiau turbūt nėra prasmės kažką aiškinti nustatymuose, nes komentarai jau pertekliniai. Jei turite klausimų, laukiu jų komentaruose.

Negalioja PWM_Sinus_Init (tuščia)( RCC->APB1ENR |= RCC_APB1ENR_TIM2EN; // įgalinti TIM2 laikrodį RCC->APB2ENR |= RCC_APB2ENR_IOPAEN; // įgalinti EN A prievado laikrodį RCC->APB2ENR |= RCCpi enableooclock2 /*************************************** PA0 nustatymas ************ ***** ***********************/ GPIOA->CRL &= ~GPIO_CRL_CNF0 // PWM1_CH1 GPIOA-> alternatyvaus stūmimo traukimo nustatymas CRL |= GPIO_CRL_CNF0_1 GPIOA->CRL &= ~GPIO_CRL_MODE0 |= GPIO_CRL_MODE0 // gpio greitis 50 MHz ***** **** PA1 nustatymas ******************************************* **********/ GPIOA->CRL &= ~GPIO_CRL_CNF1 // PWM1_CH1 GPIOA->CRL alternatyvaus traukimo nustatymas |= GPIOA->CRL &= ~GPIO_CRL_MODE1; ************************** Konfigūruoti PWM kanalą ************************** ** **********/ TIM2->PSC = 0; 0% TIM2->CCR2 = 0 // darbo ciklas 0% TIM2->CCER |= TIM_CCER_CC1E; // įjungti PWM išvestį į PA8 TIM2->CCER &= ~TIM_CCER_CC1P; // aktyvus aukštas lygis: 0 - aukštas, 1 - žemas TIM2->CCER |= TIM_CCER_CC2E; // įjungti PWM papildomą išvestį PA9 TIM2->CCER &= ~TIM_CCER_CC1P; // aktyvus aukštas lygis: 0 - aukštas, 1 - žemas TIM2->CCMR1 &= ~(TIM_CCMR1_OC1M | TIM_CCMR1_OC2M); TIM2->CCMR1 |= TIM_CCMR1_OC1M_2 | TIM_CCMR1_OC1M_1 | TIM_CCMR1_OC2M_2 | TIM_CCMR1_OC2M_1; // teigiamas PWM1_CH1 ir PWM1_CH2 /******************************************** ******** **************************************** / TIM2->CR1 & = ~TIM_CR1_DIR; // skaičiuoti aukštyn: 0 - aukštyn, 1 - žemyn TIM2->CR1 &= ~TIM_CR1_CMS; // sulygiuotas pagal priekinį signalą: 00 - priekis; 01, 10, 11 - centras TIM2->CR1 |= TIM_CR1_CEN; // pradžios skaičius)

6.5. TIM6 laikmačio pertraukimų konfigūravimas

Mes nustatome patį laikmatį į 24 kHz dažnį:

Negalioja TIM6_step_init (void)( RCC->APB1ENR |= RCC_APB1ENR_TIM6EN; // įjungti laikrodį pagrindiniam TIM6 TIM6->PSC = 1-1; // div, dažnis 24 kHz TIM6->ARR = 1000; // skaičiuoti iki TIM60 ->DIER |= TIM_DIER_UIE // įgalinti pertraukimą TIM6->CR1 |= TIM_CR1_CEN // Įjungti pertraukimą TIM6_DAC_IRQn;

6.6. Pagrindinio valdymo algoritmo įgyvendinimas

Pagrindiniai įvykiai įvyksta TIM6 laikmačio sugeneruotame pertraukime. Pertraukimas generuojamas kas 41,66 µs, jei prisimenate, tai yra mūsų atrankos veiksmas. Atitinkamai, pertraukimas įrašo darbo ciklo reikšmę iš lentelės į registrą CCRx. Šis pertraukimas taip pat nustato, kuri įstrižainė šiuo metu brėžiama apverčiant vėliavėlę nuodėmės_būsena po kiekvieno ciklo pusės. Rodome 240 taškų, apverčiame vėliavėlę, dėl ko kontrolė pereina į kitą kanalą, kai ji jau nubrėžta, vėliavėlė vėl apverčiama ir viskas kartojasi. Pagrindinio algoritmo kodas:

Negalioja TIM6_DAC_IRQHandler(void)( TIM6->SR &= ~TIM_SR_UIF; if(sin_status == 0)(TIM2->CCR1 = sin_duomenys;) if(sin_status == 1)(TIM2->CCR2 = sin_duomenys;) if sin_step++; (sin_step >= 240)( sin_step=0; sin_status = nuodėmės_būsena ? 0: 1; ) )

Rezultatai

Atsisiųskite projektą, sukompiliuokite jį ir įkelkite į savo mikrovaldiklį ir gaukite veikiantį keitiklį. Viskas, ką jums reikia padaryti, tai padaryti tiltą ir siųsti jam signalus:

Vieną savo tilto schemą paskelbiau šiek tiek anksčiau PDF formatu, galite ją naudoti kiek norite, tikiuosi, kad tai padės jums įsisavinti galios elektroniką.

Tikiuosi, kad straipsnis jums patiko. Jei turite klausimų apie šio kodo naudojimą tikroje aparatinėje įrangoje, mielai į juos atsakysiu. Be to, nelaikykite šio kodo kaip kažko paruošto, tai yra keitiklio, kuris įgyvendina pagrindinę funkciją, branduolys. Visus varpelius ir švilpukus galite pridėti patys. Plikas projekto branduolys leis suprasti, kaip jis veikia, ir nesugaiš daug laiko išardant kodą.