Harjattomilla tasavirtaa käyttävillä moottoreilla on merkittäviä toiminnallisia etuja harjallisiin tasavirtamoottoreihin verrattuna. FOC-ohjatun moottorin ohjaus voidaan toteuttaa mikro-ohjaimella.
Artikkelin on kirjoittanut Frank Malik. Toshiba Electronics Europelta. hän on työskennelly Toshiballa jo 24 vuoden ajan suunnittelijan tehtävissä. |
Harjattomilla saadaan aikaiseksi harjallisiin verrattuna enemmän vääntövoimaa pienessä tilassa, parempia hyötysuhdetasoja, vähemmän lämmönmuodostusta ja hiljaisempia käyttöääniä. Mainittujen etujen ansiosta on syntynyt runsaasti uudenlaisia sovelluksia, kuten esimerkiksi sähköpyörät ja dronet, joiden kaupallisesti järkevä tarjontaa ei olisi mahdollista tavanomaisiin tasavirtamoottoreihin perustuvilla ratkaisuilla. Mainittujen etujen hyödyntäminen edellyttää kuitenkin, että suunnittelijat kehittävät tehokkaita ohjauspiirejä. Niitä tarvitaan, kun mekaaninen kommutaatio korvataan sähköisellä.
Harjattoman tasavirtamoottorin perustason sähköinen kommutaatio on toteutettavissa varsin helposti. Hall-anturin avulla voidaan määrittää roottorin asento. Tällä tavoin MOSFET-pohjaisella ohjauspiirillä voidaan syöttää virtaa asianomaisiin moottorin käämeihin, jolloin roottoria saadaan liikutettua olemassa olevasta asennosta seuraavaan pyörimissektoriin haluttuun suuntaan. Tällainen puolisuunnikkaan muotoinen kommutaatiomenetelmä on helppo toteuttaa, ja, jos siihen yhdistetään pulssinleveysmoduloitu (PWM) signaali, pyörimisnopeutta pystytään ohjaamaan. Kun mukaan lisätään PID-säädin, jonka takaisinkytkennän muodostavat Hall-antureiden tuottamat signaalit, on mahdollista toteuttaa kestävä harjattoman tasavirtamoottorin ohjauspiiri.
Jos kyseessä on kestomagneettitahtimoottori, edellä mainittu alkeellinen kommutaatiomenetelmä synnyttää merkittävää aaltoisuutta vääntövoimaan, mikä lisää moottorin meluisuutta. Kestomagneettitahtimoottorit kannattaakin kommutoida mieluummin sinimuotoista kuin puolisuunnikasmaista signaalia käyttäen. Yksinkertaisessa sinimuotoisessa kommutaatiossa tarvitaan tavallisesti ohjelmoitava ohjausratkaisu esimerkiksi mikro-ohjain tai FPGA-piiri. Kun roottorilla olevaa anturia käytetään roottorin asentotiedon ilmaisemiseen, MOSFET-piirejä ohjataan pulssinleveysmoduloidulla signaalilla, jolloin ohjauslähdöt muodostetaan siniaaltoista hakutaulukkoa apuna käyttäen. Ohjauksen tarkkuutta voidaan parantaa käyttämällä tarkempaa ja kalliimpaa anturia, kuten resolveria tai optista enkooderia. Vääntömomentin säätäminen muuttuu kuitenkin sitä epätarkemmaksi, mitä suuremmilla kierrosnopeuksilla toimitaan.
Kuva 1: Vaikka onkin helpompi toteuttaa, puolisuunnikkaan muotoinen kommutaatio lisää aaltoisuutta vääntömomenttiin kestomagneettitahtimoottoreissa, kun taas sinimuotoisella kommutaatiolla aaltoisuutta voidaan vähentää.
Suurilla pyörimisnopeuksilla vääntömomentin säätöä voidaan tarkentaa käyttämällä kenttäorientoitua ohjausta (FOC, Field Oriented Control). Tässä sinimuotoisessa kommutaatiomenetelmässä ohjelmoitavalla säätöratkaisulla lasketaan roottorin ohjauksessa tarvittavat staattorivirrat moottorin virtatakaisinkytkennän perusteella. Kolme staattorivirtaa muutetaan virtausta ja vääntöä muodostaviin osiin, joiden avulla puolestaan muodostetaan pulssinleveysmoduloitu lähtösignaali sinimuotoisen kommutaatiosignaalin aikaansaamiseksi. Kenttäorientoitu ohjaus aikaansaa vahvan vääntömonenttisäädön sekä suurilla että pienillä nopeuksilla ja sitä pidetäänkin parhaimpana valintana kommutaatiomenetelmäksi puolisuunnikkaan muotoiseen ja sinimuotoiseen vaihtoehtoon nähden. Kenttäorientoidun ohjauksen vaatima monimutkainen algoritmi on kuitenkin sitä ennen ohjelmoitava.
Kenttäorientoidun säädön toteuttamisessa tarvitaan ohjelmoitavia piirejä, jotka pystyvät suorittamaan tehokkaasti vektorimatematiikan taustalla pyöriviä Clarkin ja Parkin muunnoksia, jotka muodostavat FOC-säädön perustan. Tavanomaisella mikro-ohjainyksiköllä (MCU) ei ole sellaista käskykantaa, jolla tarvittavaa laskentaa pystyttäisiin tekemään tehokkaasti. Digitaalinen signaaliprosessori (DSP) selviäisi tehokkaasti laskentaoperaatioista, mutta sen ongelmana on I/O-ohjaustoimintojen tehottomuus. Saatavilla on myös FPGA-pohjaisia ratkaisuja, mutta niiden ohjelmoitavuus (verrattuna MCU- tai DSP-ratkaisuihin) ei riitä suorittamaan tehokkaasti muita tarvittavia tehtäviä kuten jakamaan järjestelmän HMI-yhteyttä ihmisen ja koneen välillä tai verkkoyhteyksiä.
Kuva 2: Kenttäorientoidun FOC-säädön yksinkertaistettu lohkokaavio.
Viime vuosina alan teknologioiden kuten MCU-, DSP-, FPGA- ja vastaavien ratkaisujen tuotekehitys on keskittynyt ensisijaisesti tuottamaan FOC-säätimiin soveltuvia ohjelmoitavia ratkaisuja. Näissä on ajateltu, että moottorinohjauksen lähtö voitaisiin toteuttaa PWM-oheispiirillä, kun taas virtamittauksen tulo voitaisiin toteuttaa A/D-muunninoheispiirillä. Mainittuja komponentteja kehitetään jatkuvasti hienosäätämällä niitä ja lisäämällä niihin uusia ominaisuuksia, jolloin niiden toiminta muuttuu entistä itsenäisemmäksi mahdollistaen niiden keskinäisen triggautumisen. Yhtenä esimerkkinä voidaan mainita mekanismi, jonka avulla taataan, että A/D-muunnin sieppaa moottorivirran hetkellä, jolloin PWM-kytkennän huiput ovat päättyneet, ja tuloksena on entistä luotettavampaa dataa moottorinohjausalgoritmin käyttöön. Samalla signaalin prosessoinnin algoritmit yksinkertaistuvat, minkä seurauksena säästyy arvokasta prosessoriaikaa.
Kun harjattomien tasavirtamoottorien on tuettava yhä suurempia nopeuksia, joutuvat tuotekehitysinsinöörit kohtaamaan merkittäviä haasteita etsiessään ratkaisuja FOC-säätösovelluksiin. Jos valitaan puhtaasti ohjelmistopohjainen lähestymistapa, suurimmaksi ongelmaksi muodostuu hyväksyttävän siniaaltoapproksimaation (johon tarvitaan vähintään 12 tukipistettä aikajaksoa kohden) laskennan suorittaminen tarpeeksi nopeasti. Laitteistopohjaisessa lähestymistavassa laitteiston on kyettävä jakamaan tarvittava virta ja tarvittavien MOSFET- tai IGBT-piirien on pystyttävä kytkeytymään riittävän nopeassa tahdissa, mutta silti tehohäviöiden on pysyttävä määriteltyjen rajojen sisällä (tehohäviöt kasvavat kytkentätaajuuden nopeutuessa).
Kiihdytinratkaisut ovat yleistymässä nopeasti ja niitä käytetään optimoitaessa paljon laskentatehoa vaativia monimutkaisia toimintoja ja keskusprosessorien työkuorman keventämispyrkimyksiä. Toshiban TXZ4-sarjan mikro-ohjaimiin kuuluvat 80 MHz:n toimintataajuutta tukevat M4K-ryhmän piirit soveltuvat tällaisiin tarkoituksiin, sillä ne tarjoavat käyttöön vektoriytimen A-VE+. Tämä helppokäyttöinen oheispiiri toteuttaa Clarkin ja Parkin muunnokset, tilavektorimodulaation (SVM) ja lajitelman muita matemaattisia toimintoja riippumattomassa laitteistolohkossa, joka on kiinteästi kytkettävissä sekä PWM- että A/D-moduuleihin. Tuloksena on ratkaisu, jossa näillä mikro-ohjaimilla voidaan ohjata kahta moottoria FOC-säätöä käyttäen ja silti käytettävissä on edelleen prosessorijaksoja sovellusten toteuttamista varten. Järjestelmä pystyy jakamaan samantasoista suoritustehoa kuin 120 MHz:n laitteet.
Optimoinnissa voidaan lisäksi hyödyntää vaihdettavaa PWM-moodia, jonka ansiosta A/D-muunnin saa lisää aikaa muunnosten suorittamiseen yksittäisessä rinnakkaisoperaatiossa. PWM-lähdön merkki/väli-suhde pysyy samana, mutta nousevien ja laskevien reunojen välinen suhde muuttuu, mistä on etua virtamittauksessa. Tästä syystä saadaan merkittävästi tasaisempi virtasignaali syötettäväksi A-VE-ytimeen, jolloin tarvitaan vain vähän tai ei lainkaan suodatusta. PWM-moduulissa on myös vaiheen interpolointi, jolla tasoitetaan lähdön siniaallon porrastumisilmiötä. Tuloksena on helppokäyttöinen FOC-moottorinohjain, joka on saatavissa suorituskykyisellä ARM Cortex-M4 MCU -alustalla.
Kuva 3: FOC-moottorinohjaus toteutetaan kytkemällä A-VE-ydin A/D- ja PWM-oheispiireihin.
A-VE on helposti ohjelmoitavissa pääosin vain kolmella API-kutsulla, jotka ovat start, stop ja configure parameters -toiminto. Kun alkuarvot annetaan, A-VE on täysin deterministinen eikä tarvitse juuri vuorovaikutusta prosessorin kanssa. Cortex-M4:n liukulukuyksikkö pysyy täysin käyttäjäsovelluksen käytettävissä, sillä vektorimatematiikan vaatima lisääntynyt laskentateho on ulkoistettu kokonaan A-VE-ytimeen.
Kuva 4: Vaihdettava PWM-moodi ja muut vastaavat piirteet parantavat mitatun signaalin laatua A/D-muuntimessa ja siten helpottavat FOC-toteutuksen tekoa.
Toshiban TXZ4-sarja on optimoitu käytettäväksi isoissa kodinkoneissa, erityisesti niissä, joiden tulee olla IEC 60730 -yhteensopivia. Muistin ja prosessorin testaaminen on helppo suorittaa, koska moottorinohjaus on lähes autonomista, jolloin prosessoriaikaa jää runsaasti muita toimintoja varten mukaan lukien kohteena olevan sovelluksen toteuttaminen.
Koska moottorinohjauksen toteuttaminen vaatii vain vähän ohjelmistoa, eivät kääntäjäoptimointien suorittaminen tai testaustuen päälle tai päältä pois kytkeminen vaikuta juuri lainkaan moottorin ohjaukseen. Siitä on hyötyä tuotekehitysvaiheessa koodaukseen liittyviä asioita ratkaistaessa. Suunnittelijoilla on myös käytettävissään tuotekehitysvaiheessa koko laaja ARM-ekosysteemi, mikä sisältää yleiskäyttöisiä IDE- ja testauspiirejä. Lisäksi MCU-piireissä on laitteisto-ohjelmoinnin jäljitysominaisuuksia, joista on merkittävästi hyötyä, kun pyritään etsimään ja määrittämään ohjelmistovirheiden syitä koodauksen aikana ilman, että tarvitsee vaikuttaa järjestelmän deterministisyyteen. Datan testipisteet mahdollistavat tärkeiden muuttujien, kuten A/D-mittausten, lähes reaaliaikaisen visualisoinnin vaikuttamatta koodauksen suorittamiseen tuotekehitysympäristössä, joka tukee näitä testausominaisuuksia. Saatavissa on myös liitännät yleisiin reaaliaikaisiin käyttöjärjestelmiin, mikä helpottaa sovelluskehitystä.
Kuva 5: Kääntäjän tai debuggerin kytkemisellä päälle tai pois päältä ei ole juuri vaikutusta FOC-algoritmin suorittamiseen, sillä toiminnoista vain pieni osa on toteutettu ohjelmistollisesti.
Ohjelmistotyökaluja on saatavissa myös FOC-säätöparametrien ja suhteellisen/integraalisen ohjauksen virittämistä varten. Parametrien viritysjärjestelmä (PTS) mittaa moottorin vastuksen ja induktanssin eri moottorikuormilla ja antaa tuloksena kertoimet PI-säädöille, jotka sitten voivat olla sovelluskoodin tuloina.
Suuren valinnanvaran vuoksi voi olla vaikea löytää sellaista FOC-moottorinohjausratkaisua, joka soveltuisi parhaiten juuri kyseisen sovelluksen erityistarpeisiin. Jos FOC-moottorinohjaus toteutetaan täysin ohjelmallisesti, on selvää, että järjestelmän tuotekehitys ja testaus on erittäin haasteellista. Sen sijaan tässä artikkelissa esitetyillä MCU-pohjaisilla ratkaisuilla saadaan toteutettua FOC-säädön vaatimat ydinasiat. Niillä saadaan ”piilotettua” FOC-moottorinohjauksen monimutkaisuus toisiinsa kytkettyjen erikoistuneiden oheislaitteiden muodostamaksi ryhmäksi ja samalla kapasiteettia jää riittävästi käytettäväksi muiden järjestelmätason tehtävien toteuttamista varten.