Sähkömoottorin kenttäkeskeinen ohjaustapa FOC tarjoaa tehokkaan säädön vääntömomentille sekä suurilla että pienillä pyörimisnopeuksilla, mutta se vaatii monimutkaisen ohjausalgoritmin. Toshiban kehittämä A-VE-vektorilaskin tarjoaa yhdessä ADC- ja PWM-oheismoduulien kanssa tähän suorituskykyisen ratkaisun Arm Cortex-M4 -alustalla.
Artikkelin kirjoittaja Frank Malik toimii Toshiba Electronics Europen pääinsinöörinä. |
Harjattomat tasavirtamoottorit ovat mahdollistaneet lukuisia toiminnallisia parannuksia harjallisiin moottoreihin verrattuna. Nämä BLDC-moottorit (Brushless DC) tuottavat enemmän vääntömomenttia tilavuusyksikköä kohti, yltävät parempaan hyötysuhteeseen, muodostavat vähemmän hukkalämpöä ja käyvät paljon hiljaisemmalla äänellä kuin harjalliset moottorit.
Tämä on johtanut monien uusien sovellusten kuten sähköpolkupyörien ja drone-lennokkien syntymiseen. Ne eivät olisi kaupallisesti mielekkäitä tuotteita, jos ne perustuisivat perinteiseen tasavirtamoottoriin. Kaikkien mainittujen etujen saavuttamiseksi suunnittelijoiden on kuitenkin rakennettava moottoria varten monimutkainen ohjausjärjestelmä, joka korvaa mekaanisen kommutoinnin elektronisella virrankäännöllä.
BLDC-moottorin elektroninen kommutointi voidaan toteuttaa melko yksinkertaisesti. Hall-anturien avulla voidaan määrittää roottorin asento. Tämän tiedon avulla voidaan käyttää mosfet-pohjaista ohjainpiiriä moottorin käämien aktivoimiseksi, jolloin roottorin hetkellinen asento voidaan kääntää seuraavaan pyörähdyssektoriin haluttuun suuntaan.
Tämä menettely, jota kutsutaan puolisuunnikkaan muotoisen signaalin vuoksi trapetsikommutoinniksi, on helppo toteuttaa ja kun se yhdistetään pulssinleveysmoduloituun (PWM) signaaliin, moottorin pyörimisnopeutta voidaan säätää. Kun kytkentään lisätään Hall-antureita hyödyntävä PID-tyyppinen säädin takaisinkytkentää varten, saadaan vankkarakenteinen BLDC-moottorinohjain.
Kestomagneetteihin perustuvien synkronimoottorien (PMSM) tapauksessa tällainen alkeellinen kommutointitapa tuottaa kuitenkin huomattavan paljon aaltoilua vääntömomenttiin, mikä puolestaan lisää koneen käyntiääntä. Tällaisia moottoreita on kommutoitava käyttäen sinimuotoista signaalia eikä puolisuunnikkaan muotoista trapetsisignaalia. Yksinkertainen sinimuotoinen kommutointi vaatii tyypillisesti ohjelmoitavan ohjausratkaisun kuten mikro-ohjaimen tai FPGA-piirin.
Hyödyntämällä roottoriin sijoitettua anturia voidaan mosfet-kytkimiä ohjata PWM-signaalin kautta käyttäen apuna siniaaltotaulukkoa säätimen lähtösignaalin muodostamiseksi. Paremman ohjaustarkkuuden saavuttamiseksi tarvitaan tarkempi ja kalliimpi anturi, esimerkiksi resolveri tai optinen anturi. Vääntömomentin säätäminen ei kuitenkaan onnistu yhtä tehokkaasti, kun toimitaan suurilla pyörimisnopeuksilla.
Kuva 1. Puolisuunnikkaan muotoinen trapetsikommutointi on yksinkertaisesti toteutettavissa, mutta PMSM-moottorin vääntömomentissa esiintyy aaltoisuutta. Sinimuotoinen kommutointi auttaa minimoimaan tämän.
Optimaalinen ratkaisu tällaisissa tapauksissa on kenttäkeskeinen ohjaustapa FOC (Field Oriented Control). Tämä sinimuotoinen kommutointimenetelmä perustuu ohjelmoitavaan ohjausratkaisuun, jossa lasketaan roottorin ohjaamiseen tarvittavat staattorivirrat moottorivirran palautteen perusteella. Kolme staattorivirtaa muunnetaan vuon ja vääntömomentin muodostaviksi osiksi, joita puolestaan käytetään tuottamaan PWM-lähtösignaali, joka vastaa sinimuotoisesta kommutointisignaalista.
FOC-ohjaus tarjoaa tehokkaan säädön vääntömomentille sekä suurilla että pienillä pyörimisnopeuksilla, mikä tekee siitä erittäin käyttökelpoisen menetelmän pelkkään trapetsi- tai sinimuotoiseen vaihtoehtoon verrattuna. Siihen vaadittava monimutkaisempi algoritmi on kuitenkin ensin saatava hallintaan.
FOC-menettelyyn liittyvä monimutkaisuus edellyttää ohjelmoitavaa laitetta, joka pystyy tehokkaasti käsittelemään Clarke- ja Park-muunnosten taustalla olevaa vektorimatematiikkaa, joka muodostaa koko FOC-ohjauksen perustan. Tavallisella mikro-ohjainpiirillä (MCU) ei ole tähän vaadittavaa käskykantaa, jotta laskutoimitukset saataisiin tehtyä tehokkaalla tavalla. Sen sijaan digitaalinen signaaliprosessori (DSP) voi riittävän tehokkaasti suorittaa näitä laskutoimituksia, mutta siltä taas puuttuvat tehokkaat käskyt tulo- ja lähtösignaalien ohjaamiseksi.
FPGA-pohjaisia ratkaisuja on myös saatavissa, mutta ne eivät ohjelmoitavuudeltaan ole MCU- ja DSP-ratkaisujjen veroisia, joten niillä ei voi suorittaa kaikkia muita tehtäviä kuten HMI-liitäntään (Human-Machine Interface) ja verkkoyhteyksiin liittyviä operaatioita.
Kuva 2. FOC-ohjauksen yksinkertaistettu lohkokaavio.
Useiden vuosien ajan tämän alueen tuotekehitys, joka liittyy kaikkiin näihin tekniikoihin (MCU, DSP, FPGA jne.), on keskittynyt lähinnä luomaan ohjelmoitavia ratkaisuja, jotka on optimoitu käytettäviksi FOC-ohjaimina. Niissä ohjaimen lähtö toteutetaan yleensä PWM-oheislaitteessa, kun taas virranmittauksen tulosignaali käsitellään oheislaitteeksi sijoitetussa AD-muuntimessa.
Näitä komponentteja kehitetään jatkuvasti ja niihin on saatu uusia ominaisuuksia, joiden avulla ne voivat toimia entistä itsenäisemmin ja liipaista toistensa eri toimintoja. Hyvä esimerkki on mekanismi, joka varmistaa, että AD-muunnin sieppaa moottorivirran arvon vasta PWM-ohjauspiikkien tasoittumisen jälkeen, jolloin saadaan luotettavampaa dataa moottorinohjausalgoritmia varten. Tämä myös helpottaa signaalinkäsittelyssä tarvittavien algoritmien muodostamista.
BLDC-moottoreilta vaadittavat nopeudet kasvavat jatkuvasti ja se aiheuttaa merkittäviä hankaluuksia FOC-menetelmää hyödyntäville suunnittelijoille. Puhtaasti ohjelmistopohjaista lähestymistapaa käytettäessä suurin ongelma on suorittaa kaikki laskutoimitukset, joita tarvitaan käyttökelpoisen siniaalto-approksimaation muodostamiseksi (vähintään 12 tukipistettä jaksoa kohti) riittävän nopeasti.
Piiritekniikan osalta on kyettävä muodostamaan tarvittavat virrat, ja kytkimenä käytettävän mosfetin (tai IGBT:n) on kyettävä riittävän nopeaan kytkentätoimintaan ja samalla noudatettava annettuja häviötehorajoituksia (tehohäviöt kasvavat kytkentänopeuden noustessa).
Kiihdyttimiä hyödyntäen voidaan optimoida monimutkaisia laskentapainotteisia toimintoja ja samalla keventää keskusprosessorin työkuormaa. Toshiban M4K-ryhmän TXZ4-sarjan tuotteet, jotka tukevat 80 MHz toimintanopeuksia, pystyvät tarjoamaan vaaditut ominaisuudet yhtiön kehittämällä A-VE-ratkaisulla (Advanced Vector Engine).
Tämä helppokäyttöinen oheislaite suorittaa Clarke- ja Park-muunnoksia, avaruusvektoreilla tapahtuvaa SVM-modulointia (Space Vector Modulation) sekä useita muita matemaattisia funktioita itsenäisesti toimivana yksikkönä, joka on vahvasti kytketty PWM- ja ADC-moduuleihin. Tämän ansiosta mikro-ohjaimet voivat vaivattomasti ohjata jopa kahta moottoria FOC-menetelmän avulla ja silti niille jää runsaasti suorituskykyä itse sovelluksen vaatimien tehtävien suorittamiseen. Järjestelmällä päästään samaan suorituskykyyn kuin 120 MHz taajuudella toimivilla laitteilla.
Lisäoptimointiin kuuluu myös Shift PWM -toimintamuoto, joka antaa AD-muuntimelle enemmän aikaa muunnosten suorittamiseen käytettäessä yhtä rinnankytkentää. PWM-lähdön mark-space-suhde säilyy samana, mutta signaalin nousevien ja laskevien reunojen suhdetta muutetaan virranmittauksen hyödyntämiseksi. Tämän ansiosta saadaan merkittävästi siistimpi virtasignaalisyötettäväksi A-VE-yksikölle, joten suodatusta tarvitaan vain vähän tai ei lainkaan.
PWM-moduulissa suoritetaan myös vaiheen interpolointia, mikä edelleen pehmentää sinimuotoisen lähtösignaalin porrasmaisuutta. Lopputuloksena saadaan merkittävästi yksinkertaisempi FOC-ohjausjärjestelmä Arm Cortex-M4 MCU -alustalla.
Kuva 3. A-VE-yksikkö on tiukasti kytketty ADC- ja PWM-moduuleihin moottorin tehokkaan FOC-ohjauksen muodostamiseksi.
A-VE-yksikkö on helppo ohjelmoida, sillä siinä on vain kolme API-kutsua funktioille: käynnistä, pysäytä ja määritä parametrit. Kun yksikkö on alustettu, se on erittäin deterministinen ja vaatii vain vähän vuorovaikutusta suorittimen kanssa. Cortex-M4:n liukulukuyksikkö säilyy täysin käytettävissä sovelluskohdetta varten, koska vektorimatematiikan raskaat operaatiot on kokonaan ulkoistettu A-VE-yksikölle.
Kuva 4. Shift PWM:n kaltaiset lisätoiminnot yksinkertaistavat FOC-ohjauksen toteutusta parantamalla AD-muuntimen mittaamaa signaalia.
Toshiban TXZ4-sarja on optimoitu käytettäväksi kodinkoneissa ja erityisesti niissä, jotka vaativat IEC60730-standardin noudattamista. Muistin ja suorittimen testaus sujuu paljon aiempaa helpommin, koska moottorinohjaus toimii lähes itsenäisesti, jolloin suorittimelle jää paljon aikaa muiden tehtävien hoitamiseen ja itse kohdesovelluksen toteuttamiseen.
Koska niin pieni osa moottorinohjauksesta on toteutettu ohjelmallisesti, kääntäjän optimoinnilla tai virheenkorjauksen kytkemisellä päälle tai pois on vain hyvin vähäinen vaikutus ohjaustoimintaan. Tämä on merkittävä etu, kun on tarve ratkaista koodaukseen liittyviä kysymyksiä kehitystyön aikana.
Suunnittelijat voivat myös hyödyntää monia Arm-ympäristön järjestelmiä, joihin kuuluu yleisesti saatavissa olevia integroituja kehitysvälineitä (IDE) ja virheenkorjaustyökaluja. Lisäksi MCU-piireissä on laiteohjelman jäljitystoiminto, joka voi osoittautua välttämättömäksi, kun halutaan koodin suorittamisen aikana määrittää ohjelmavirheiden syitä tekemättä järjestelmästä määrityksiä.
Datan tarkkailupisteet mahdollistavat koodinsuoritukseen vaikuttamatta keskeisten muuttujien kuten ADC-mittausten lähes reaaliaikaisen visualisoinnin virheenkorjausmenetelmiä tukevissa kehitysympäristöissä. Käytettävissä ovat myös portit yleisiin reaaliaikaisiin käyttöjärjestelmiin, mikä yksinkertaistaa sovelluskehittäjien työtä.
Kuva 5. Kääntäjän tai virheenkorjauksen optimoinnin kytkemisellä päälle tai pois on vain vähäinen vaikutus FOC-algoritmin suorittamiseen, koska toimintojen ohjelmallinen toteutus on minimaalista.
Tarjolla on myös muita ohjelmistotyökaluja tukemaan sekä FOC-ohjausparametrien että suhteellisen/integroivan (PI) säädön virittämistä. Parametrien viritysjärjestelmä PTS (Parameter Tuning System) mittaa moottorin resistanssia ja induktanssia erisuuruisilla kuormilla ja antaa PI-säädölle kertoimet, jotka voidaan sen jälkeen syöttää sovelluskoodiin.
Mahdollisten ohjausvaihtoehtojen joukosta voi olla vaikea löytää FOC-pohjaista moottorinohjausratkaisua, joka parhaiten täyttää kohdesovelluksen erityistarpeet. Jos FOC-ohjaus toteutetaan kokonaan ohjelmallisesti, on selvää, että järjestelmän kehittäminen ja virheenkorjaus tulevat erittäin haastaviksi.
Sen sijaan uusimpien mikro-ohjainpiirien lisälaitetarjonta kykenee ratkaisemaan FOC-ohjaukseen liittyvät perusasiat. Ohjaimet kykenevät piilottamaan FOC-menetelmän monimutkaisuuden oheislaitteisiin, jotka on tarkoitettu yksinomaan tähän tarkoitukseen. Näin niille jää riittävästi suorituskykyä jäljellä olevien järjestelmätason tehtävien suorittamiseen.