Teknillinen korkeakoulu Automaatio ja systeemitekniikan laitos 1 (23) AS 0.2230 Automaatio ja systeemitekniikan laboratoriotyöt Työ nro: 4 Servojärjestelmän viritys 6.8.2008 Servojärjestelmän viritys Sisältö: 1. YLEISTÄ... 2 2. SERVOTEKNIIKAN KOMPONENTIT... 3 2.1. SERVOJÄRJESTELMÄN TOIMILAITTEET... 3 2.1.1 Harjallinen DC-servomoottori... 4 2.1.2 Harjaton DC-servomoottori... 5 2.1.3 Tahtimoottori... 6 2.1.4 Epätahtimoottori... 6 2.1.5 Servomoottorin mitoitus...7 2.2. SERVOVAHVISTIN... 7 2.3. SERVOJÄRJESTELMIEN ANTURIT... 9 2.3.1 Optiset pulssianturit... 9 2.3.2 Inkrementtianturi... 9 2.3.3 Absoluuttianturi... 11 2.3.4 Takometri ja takogeneraattori... 11 2.3.5 Synkrot ja resolverit... 12 2.3.6 Potentiometri... 12 2.3.7 Anturin mekaaninen ja sähköinen kytkentä... 12 2.4. OHJAUSJÄRJESTELMÄT... 12 3. PID-SÄÄDIN SERVOKÄYTÖSSÄ... 14 3.1. P-TERMI... 14 3.2. I-TERMI... 14 3.3. D-TERMI... 15 4. JÄRJESTELMÄN KUVAUS...15 5. ESITEHTÄVÄT... 19 6. LABORATORIOSSA TEHTÄVÄT TYÖT... 23
2 (23) 1. Yleistä Servojärjestelmäksi nimitetään suljettua säätöjärjestelmää, jonka tehtävänä on säätää dynaamisessa tilanteessa mekaanista suuretta kuten asemaa, nopeutta, kiihtyvyyttä, vääntömomenttia tai voimaa. Toimilaite, anturi ja vahvistin ovat servojärjestelmän keskeiset peruskomponentit. Hyvät dynaamiset ominaisuudet ovat tärkeitä. Järjestelmän on kyettävä reagoimaan nopeasti ohjearvon suuriinkin muutoksiin (=lyhyt vasteaika), ja ohjearvoa on pystyttävä seuraamaan tarkasti ilman värähtelyä (=stabiili järjestelmä). Useimmiten servojärjestelmä toteutetaan sähkökomponenteilla, mutta myös hydraulisia ja pneumaattisia servoja on käytössä. Servojärjestelmien tyypillisimpiä sovelluskohteita ovat erilaiset työstökoneet ja muut eri teollisuusalojen tuotantokoneet. Servo ohjauksille on myös tarvetta lähes kaikissa robotiikan sovelluksissa. Kuvassa 1 on esitetty tyypillisen sähköisen servojärjestelmän rakenne. Servovahvistin ohjaa moottorin pyörimistä liikkeenohjausjärjestelmältä saamansa ohjearvon perusteella. Moottoriin on kytketty moottorin nopeutta ja pyörimiskulmaa mittaavat anturit, joista järjestelmään saadaan takaisinkytkennät. Tyypillisessä sähköisessä servojärjestelmässä on kolme sisäkkäistä säätöpiiriä, joilla pyritään kuorman mahdollisimman tarkkaan paikoitukseen ja nopeuden hallintaan. Kuva 1. Tyypillisen servojärjestelmän lohkokaavio.
3 (23) 2. Servotekniikan komponentit Tässä luvussa käydään lyhyesti läpi yleisimmät servojärjestelmissä käytetyt komponentit, joita ovat toimilaitteet, anturit, servovahvistimet sekä liikkeenohjausjärjestelmät. Toimilaitteet ovat yleisimmin sähkömoottoreita, mutta myös pneumaattisia ja hydraulisia toimilaitteita käytetään. Anturit vaihtelevat sovelluksesta riippuen, mutta yleisimmin käytetään erilaisia nopeutta ja paikkaa mittaavia antureita. Servovahvistimet voidaan jakaa hakkurivahvistimiin ja lineaarisiin servovahvistimiin. Liikeenohjausjärjestelmä on yksinkertaisimmillaan yksivapausasteinen paikkasäädin, muuta voi olla myös monimutkainen useiden vapausasteiden järjestelmä, joka laskee useille toimilaitteille synkronoituja liikeratoja. 2.1. Servojärjestelmän toimilaitteet Servotoimilaitteet ovat rakenteeltaan tavanomaisten toimilaitteiden kaltaisia, mutta niiden suunnittelussa on otettu huomioon tiukat tarkkuus ja dynamiikkavaatimukset. Servosähkömoottorilla on muun muassa laaja ja helposti säädettävä pyörimisnopeusalue, alhainen hitausmomentti, kyky kestää lyhytaikaista suurta ylikuormitusta, hyvä maksimimonentin ja massan suhde sekä minimaalinen sähköinen hitaus. Hydraulisissa servosylintereissä puolestaan on muun muassa vähäkitkaiset tiivisteet, joiden kitkakerroin vaihtelee mahdollisimman vähän liikenopeuden mukana. Automaatiokäytössä sähkömoottorilla saavutetaan tarvittaessa kohtuullinen vääntömomentti ja hyvät säätöominaisuudet. Pyörimisnopeutta voidaan säätää helposti. Nopeat kiihdytykset ja jarrutukset sekä tarkka paikoitus onnistuvat nopeissakin liikkeissä. Sähkömoottori mahtuu ahtaisiin paikkoihin, on kestävä ja luotettava, ja tuottaa ympäristölleen minimaalisen haitan. Askelmoottoreilla saavutetaan tarkka liikkeen ohjaus ilman takaisinkytkentääkin, mutta askelmoottorien käyttö rajoittuu pienille momenteille. Servomoottorikäyttöjen suunnittelu, käyttöönotto, viritys ja ylläpito vaativat jonkin verran erityisosaamista. Automaatiolaitteissa käytettävien servomoottoreiden rakennevaihtoehdot ovat harjallinen tasavirta eli DC servomoottori, harjaton DC servomoottori ja vaihtovirta eli AC servomoottori. Vaihtovirtamoottori voi olla synkroni eli tahtimoottori tai asynkroni eli epätahtimoottori. Hydrauliikan avulla voidaan tuottaa suuria voimia ja momentteja pienillä toimilaitteilla. Perushydrauliikan muut komponentit kuitenkin vievät paljon tilaa. Parhaimmillaan servohydrauliikan nopeus ja paikoitustarkkuus kilpailevat sähköservojen kanssa. Hydraulinesteiden vuodot sekä laitteiden melu rasittavat kuitenkin ympäristöä. Pneumatiikalla voidaan aikaansaada halvalla ja helposti liikettä, mutta paikoitus on hankalaa. Saavutettava momentti ja voimat jäävät alle 5 prosenttiin hydrauliikalla saavutettavista. Perusluonteeltaan pneumatiikka on on/off tekniikkaa, eli tarkat asemat saavutetaan ainoastaan sylinterien päissä. On kuitenkin olemassa järjestelmiä joiden avulla paikoitus onnistuu koko liikealueella.
4 (23) 2.1.1 Harjallinen DC servomoottori Harjalliset DC servomoottorit ovat toistaiseksi yleisimpiä servomoottoreita hyvien servokäyttöominaisuuksien ansiosta. DC servomoottorin ankkurivirta kulkee roottoriin kommutaattorin kautta. Kommutaattorissa on staattorin puolella hiiliharjat, jotka laahaavat roottorissa oleviin kuparisegmentteihin (kuva 2). Kommutaattorin kipinöinti rajoittaa virran määrää, joka ankkuriin voidaan enintään syöttää. Staattorin hiilet kuluvat ja vaativat ajoittain huoltoa. Kuva 2. Harjallisen DC servomoottorin perusrakenne. Energialähteeksi tarvitaan vain roottoriin eli ankkuriin syötettävä tasajännite, jonka synnyttämä ankkurivirta generoi virtaan verrannollisen vääntömomentin. DC moottorin tuottama vääntömomentti laskee likimain lineaarisesti pyörimisnopeuden kasvaessa. Syöttöjännitettä, eli nimellistä ankkurijännitettä, muuttelemalla ankkurivirtaa voidaan vaihdella. Kun moottorin kuormitusmomentti ja haluttu pyörimisnopeus tunnetaan, moottoria voidaan operoida halutussa kuormituspisteessä yhtä muuttujaa, ankkurijännitettä, vaihtelemalla (kuva 3). DC moottorin vääntömomentti on suoraan verrannollinen ankkurivirtaan.
5 (23) Kuva 3. Servomoottorin pyörimisnopeutta eri kuormituksilla voidaan säätää ankkurijännitettä muuttamalla. DC servomoottorit ovat kokoonsa nähden suorituskykyisiä. Pyörivien osien hitausmomentti on minimoitu, joten moottori reagoi herkästi nopeusohjeen muutoksiin. Hetkellisesti moottori tuottaa nimellismomenttiin nähden jopa kymmenkertaisen vääntömomentin. DC servomoottoria voidaan soveltaa erinomaisesti jaksollisesti toimiviin automaattisiin koneisiin. Moottorin toimintarajat määräytyvät monien tekijöiden perusteella: Moottorin demagnetoitumisvaara rajoittaa vääntömomentin pienillä nopeuksilla. Kommutointiongelmat suurella nopeudella ja virralla rajoittavat hetkellisen tehon. Mekaaninen kestävyys ja/tai vahvistimen jänniterajoitus määräävät maksiminopeuden. Moottorin lämpeneminen rajoittaa pitkäaikaistehon 2.1.2 Harjaton DC servomoottori Harjattomassa DC servomoottorissa kommutointi toteutetaan elektronisesti, jolloin mekaaninen kommutaattori hiiliharjoineen voidaan jättää pois. Käämitys on staattorissa. Roottorissa on yksi tai useampia kestomagneetteja. Staattorikäämityksiä on yleensä kolme (kuva 4) ja ne on sijoitettu 120 asteen vaihekulmaan toisiinsa nähden. Staattorikäämityksiin jännite syötetään peräkkäin oikeina hetkinä. Jotta jännitteensyöttö olisi tahdissa moottorin liikkeen kanssa, roottorin akselille on kiinnitetty tarkka asemaanturi. Ohjauselektroniikka on monimutkaisempi ja kalliimpi kuin tavanomaisessa DC servossa, mutta vastaavasti moottori kaipaa vähemmän huoltoa ja on pitkäikäinen. Pääosa lämmöstä syntyy staattorikäämityksessä, josta se on helppo johtaa ympäristöön.
6 (23) Harjattomien servomoottoreiden käyttö on perusteltua erityisesti silloin, kun moottorilta vaaditaan suurta pyörimisnopeutta, tehoon nähden pientä kokoa, tasaista antomomenttia koko kierrosalueella, hyvää ympäristöolosuhteiden sietokykyä, hiljaista käyntiääntä ja huoltovapaampaa toimintaa. Kuva 4. Harjallisen (vas) ja harjattoman DC servomoottorin rakenne. 2.1.3 Tahtimoottori Tahtimoottori muistuttaa rakenteeltaan harjatonta DC servoa; moottorissa on kestomagnetoitu roottori, joka pyörii staattorikäämityksen aikaansaamassa magneettikentässä. Ohjaustapa poikkeaa DC moottorista, jonka käämeihin syötetään tasajännite ohjauslogiikan määräämässä järjestyksessä ja tahdissa. Tahtimoottorin käämeihin syötetään (lähes) sinimuotoista kolmivaihevaihtojännitettä, jonka taajuudella roottori pyörii. Nopeudensäätö toteutetaan syöttötaajuutta muuttamalla. Taajuusmuuttajaan kuuluu tasasuuntaaja, jolla verkkojännite tasasuunnataan. Taajuusmuuttajan invertteriosalla tehdään halutun taajuista kolmivaihejännitettä, joka on pääpiirteissään sinimuotoista. Jännitteeseen jää aina suuritaajuisia komponentteja, jotka aiheuttavat moottorissa häviötä. 2.1.4 Epätahtimoottori Epätahtimoottori toimii oikosulkumoottoriperiaatteella ja siksi sen hyötysuhde on huonohko. Oikosulkumoottorin toiminta on yksinkertaisesti ymmärrettävissä niin, että vaihtosähkön taajuudella staattorin navoissa magneettikenttä siirtyy napaparin kerrallaan eteenpäin. Roottorin magneettiset navat pyrkivät seuraamaan staattorin magneettikentän kiertymistä, jolloin roottori alkaa pyöriä. Roottorin pyörimisnopeus on aina staattorin magneettikentän pyörimisnopeutta pienempi. Jos roottori saavuttaisi magneettikentän pyörimisnopeuden, ei roottoriin syntyisi lainkaan sähkömotorista voimaa eikä vääntömomenttia, koska magneettikenttä pysyisi roottorin suhteen paikallaan, eikä vuoleikkausta tapahtuisi. Oikosulkumoottorin ominaisuudet ovat epälineaariset, mikä hankaloittaa moottorin sovittamista takaisinkytkettyihin järjestelmiin. Staattorikäämitykseen johdettavan vaihtojännitteen taajuutta ja amplitudia muuttelemalla moottorin momenttia ja pyörimisnopeutta voi kuitenkin säätää. Tarvittava elektroniikka on monimutkainen ja varsin kallis, mikä rajoittaa moottorin käytön erikoissovelluksiin.
7 (23) 2.1.5 Servomoottorin mitoitus Servomoottorin mitoitus tehdään redusoimalla kaikkien liikkeen eri vaiheiden aikaiset momentit moottorin akselille. Akselille redusoitujen momenttien ja liikkeen eri vaiheiden keston ja työkierron kokonaiskeston perusteella lasketaan työliikkeen tehollinen momentti. Saadun arvon perusteella valitaan sopivat ominaisuudet omaava servomoottori ja sille sopiva servovahvistin. 2.2. Servovahvistin Servovahvistin on ohjattava tasajännittelähde, jonka päätehtävänä on säätää DC moottorin ankkurivirtaa ja pyörimisnopeutta ohjearvon mukaan. Päätehtävänsä ohella vahvistin voi hoitaa erilaisia valvonta ja suojaustehtäviä, joilla pyritään varmistamaan servojärjestelmän moitteeton toiminta ja estämään laitevauriot. Pieniä moottoreita ohjataan yksinkertaisella lineaarisella vahvistimella. Isojen moottoreiden ohjaamiseen käytetään hyötysuhteeltaan parempia hakkurivahvistimia. Servojärjestelmän monipuolisuutta kuvataan kvadranttipiirroksella, joka muodostuu positiivisen ja negatiivisen pyörimisnopeuden ja vääntömomentin nelikentästä (kuva 5). Nelikvadranttikäytössä moottoria voi kiihdyttää ja jarruttaa molempiin pyörimissuuntiin. Servojärjestelmissä moottorin pyörimisnopeutta voi säätää laajoissa rajoissa, tyypillisesti alueella 0 5000 kierrosta/min. Myös vääntömomenttia säädetään, jolloin moottori saadaan toimimaan suurta joustavuutta vaativissa kohteissa kuten roboteissa ja työstökoneissa. Kuva 5. Servovahvistimen kvadrantit vääntömomentti pyörimisnopeus nelikentässä. Lineaariset vahvistimet käyttävät hyväkseen bibolaaritransistorien lineaarista aluetta. Ohjausjännite vaikuttaa transistorin kantaan ja siten säätää emitteriltä kollektorille kulkevaa virtaa. Ulkoisesta tasajännitelähteestä otettava emitteri tai kollectorivirta kulkee moottorin ankkurikäämityksen läpi. Nelikvadranttikäytössä tarvitaan niin kutsuttua H siltaa (kuva 6), jossa neljän transistorin avulla ankkurivirran suuntaa voidaan vaihtaa. Lineaarisen vahvistimen elektroniikka on yksinkertainen ja meluton. Haittana on huomattava lämmönkehitys, mikä huonontaa hyötysuhdetta ja edellyttää tehotransistorien jäähdytystä.
8 (23) Kuva 6. H sillan toimintaperiaate. Kun transistorit B1 ja B3 ovat yhtäaikaa auki moottori pyörii eri suuntaan kuin B2:n ja B4:n ollessa auki. Hakkurivahvistin perustuu pulssinleveysmodulaatioon. Transistorit joko eivät johda ollenkaan, tai sitten ne toimivat kyllästyneellä alueella. Ideaalisella transistorilla johtoresistanssi on nolla, ja näin ollen transistorin ollessa päällä sen yli oleva jännite on nolla. Myös virtojen ja jännitteiden nousu ja laskuajat ovat äärettömän nopeita. Transistori voidaan siis ajatella poissa päältä ollessa avoimena piirinä ja päällä ollessa oikosulkuna. Vahvistimen eteen on kytketty vertailija, jonka ei invertoivaan tuloon syötetään ohjaussignaali ja invertoivaan tuloon kolmiosignaali (Kuva 7). Aina kun ohjausjännite on suurempi kuin kolmiojännite, lähtöjännite saa positiivisen vakioarvon, transistori Tr1 menee kyllästystilaan ja Tr2 katkaisutilaan. Moottori saa tällöin jännitteen E+. Ohjausjännitteen ollessa pienempi kuin kolmiojännite toiminta on päinvastainen. Ankkurivirran keskiarvo määräytyy keskimääräisen ankkurikäämityksen jännitteen perusteella, joka puolestaan riippuu jaksojen pituuksista. Kuva 7. Hakkurivahvistimen toimintaperiaate.
9 (23) 2.3. Servojärjestelmien anturit Anturit mittaavat koneen toiminnan kannalta tarpeellisia fysikaalisia suureita ja muuttavat mittaustulokset koneen ohjausjärjestelmän ymmärtämään muotoon. Varsinkin koneautomaation kannalta tieto koneen osien asemasta ja nopeudesta on tärkeä. Tällöin ei kaksitilaisen anturin antama informaatio riitä vaan tarvitaan sopiva asema ja nopeusanturi. Digitaaliset anturit soveltuvat hyvin näiden suureiden mittaamiseen. Digitaalisten anturien yleistymiseen ovat vaikuttaneet mm. anturitekniikan kehittyminen ja antureiden kytkennän helppous mikroprosessoripohjaisiin ohjausjärjestelmiin. Digitaalisista antureista muun muassa optiset pulssianturit kykenevät mittaamaan kiertymäkulman asemaa erittäin hyvin. Etuliitteet inkrementti ja absoluutti ovat yleisiä termejä jotka voidaan liittää mihin tahansa anturityyppiin riippuen sen toimintatavasta. Seuraavissa luvuissa käsitellään kuitenkin vain optisia inkrementti ja absoluuttipulssiantureita. 2.3.1 Optiset pulssianturit Pulssianturit, joita usein kutsutaan myös enkoodereiksi, yksinkertaistavat koneen ja sitä ohjaavan automatiikan välisen kytkennän. Ne toimivat takaisinkytkentäelimenä useissa säätösovelluksissa muodostamalla pyörivän akselin liikkeestä digitaalisen tiedon käsittelyä tai näyttöä varten. Optiset pulssianturit ovat suosittuja digitaaliantureita kohtuullisen hintansa, tarkkuutensa, monipuolisuutensa ja helpon kytkentänsä vuoksi. Pulssianturit koostuvat pyörivästä akselista, kotelosta ja sähköisestä liitännästä. Pulssianturilla mittaaminen tapahtuu liittämällä pulssianturin akseli vaihteella tai joustavalla kytkimellä koneen pyörivään osaan. Se kuinka mittaustieto muodostetaan anturissa, riippuu siitä minkälaista anturia käytetään. Kaksi tärkeintä anturimallia ovat inkrementti ja absoluuttianturi. 2.3.2 Inkrementtianturi Optisessa inkrementtipulssianturissa on tavallisesti kiinteä lukulevy ja akselin mukana pyörivä pulssikiekko, jotka ovat noin 0,25 mm etäisyydellä toisistaan. Pulssikiekossa on tarkka kuvioitu vyöhyke, jossa yhtä leveät kirkkaat ja valoa läpäisemättömät sektorit vuorottelevat. Tyypillisesti kiekossa on 100 2500 sektoriparia, mutta isokokoisissa tarkkuusantureissa niitä voi olla yli 80000. Lukulevyssä on kaksi pulssikiekon kuvioinnin kanssa identtistä kuviojaksoa, jotka ovat pulsseista laskettuna 90 asteen vaihesiirrossa keskenään (Kuva 8). Lukulevyn edessä on valodiodi (LED) tai lamppu ja säteet yhdensuuntaistava linssi. Pulssikiekon takana on valoantureita. Kun lukulevyn ja pulssikiekon erilaiset sektorit ovat kohdakkain, valo ei läpäise yhdistelmää. Kun samanlaiset sektorit kiertyvät kohdakkain, valoanturi reagoi ja lähettää jännitepulssin omalla kanavallaan.
10 (23) Kuva 8. Valosähköisen anturin toimintaperiaate. Anturissa on ulkoinen jännitteensyöttö ja kaksi tai kolme ulostuloa, joilla voidaan tunnistaa liiketila ja liikkeen suunta. Liikkeen tunnistaminen tapahtuu kahdella 90 asteen vaihesiirrossa olevalla suorakaideulostulolla eli pulssikiekon kahden vyöhykkeen jaksot ovat keskenään 90 asteen vaihesiirrossa. Ylimmästä pulssirivistä (kanava A) lasketaan varsinainen asematieto. Seuraavan rivin pulssien (kanava B) vaihesiirto edelliseen nähden ilmaisee pyörimissuunnan siten, että tunnistetaan kummalta kanavalta pulssi tulee ensin. Yleensä anturissa on myös kolmaskin ulostulo, jota kutsutaan referenssipulssiksi (Kuva 9). Referenssipulssia varten pulssikiekossa on oma vyöhyke, ja se esiintyy kerran joka kierroksella. Sillä määrätään kiekon asema toiminnan tai prosessin alkaessa. Lisäksi anturiin on saatavissa kaksi lisätuloa, jotka edustavat kahden perustulon binäärisiä komplementteja. Tällöin jokaista ulostuloa ja sen binääristä komplementtia voidaan käyttää pulssimuokkaimen asetukseen ja nollaukseen. Tavallisesti ohjaimissa voidaan määritellä pulssien dekoodauskertoimet x1, x2 ja x4 sen mukaan, miten pulssianturin antamaa signaalia käsitellään. Jos kertoimeksi määritellään x1, lasketaan ainoastaan A pulssien nousevat reunat. Jos kerroin on x2, lasketaan A pulssien nousevat ja laskevat reunat. Kertoimella x4 lasketaan sekä nousevat että laskevat reunat pulsseilta A ja B. Tällöin anturin mittaustarkkuus todellisuudessa nousee nelinkertaiseksi anturin erottelukykyyn nähden. Kuva 9. Inkrementtianturin kolmikanavalähtö.
11 (23) Inkrementtiantureilla pulssien laskenta voidaan aloittaa mistä tahansa mielivaltaisesta pisteestä. Pulssilaskin voidaan nollata kulloiseenkin kohtaan ja useimmissa laskimissa esivalintakytkimen avulla valitaan olemassa olevasta arvosta poikkeava nollakohta. Jännitekatkoksen sattuessa katoaa valitun nollapisteen ja mittalaitteen sen hetkisen paikan yhteys. Tämä haitta voidaan poistaa mittaamalla kiekon asemaa esimerkiksi potentiometrillä. 2.3.3 Absoluuttianturi Optisilla absoluuttipulssiantureilla voidaan aina todeta absoluuttisen tarkka asento. Absoluuttianturi muistuttaa valosähköiseltä rakenteeltaan inkrementtianturia. Absoluuttianturin pulssikiekossa on useita vyöhykkeitä, joissa on vuorotellen valoa läpäiseviä ja läpäisemättömiä sektoreita. Anturissa onkin tavallisesti 6 20 ulostuloa, jotka muodostavat binäärisen esityksen akselin absoluuttisesta asemasta. Kiekko voidaan lukea sädettään pitkin, jolloin ulkokehällä ovat alempiarvoiset ja sisemmillä kehillä korkeaarvoisimmat bitit. Näin ollen kiekon kulma asennon ja liikematkan absoluuttiset lukuarvot voidaan määrittää lukemalla ko. binääriluku. Lukuarvot ovat käytettävissä muuttumattomina vielä sähkökatkoksen tai häiriön jälkeen. Tavallisimmat käytetyt koodit ovat luonnollinen binäärikoodi, Gray koodi ja binääridesimaalikoodi (BCD) (Kuva 10). Binäärikoodia käytetään lähinnä helpon tulkittavuutensa ja yksinkertaisuutensa takia. Käytettäessä luonnollista binäärikoodia voi liian monta bittiä vaihtaa tilaa samanaikaisesti, mikä lisää lukuvirheen mahdollisuutta lukupäiden virheellisen aseman takia. Esim. kun kiekko liikkuu asemasta 7 asemaan 8, vaihtaa neljä bittiä tilaa. Gray koodi on rakennettu siten, että lukeman muuttuessa vain yksi bitti kerrallaan voi muuttua. Siten Gray koodi on luotettava käytössä. Absoluuttiantureilla päästään erottelukykyyn, joka on 8 14 bittiä. Kuva 10. Absoluuttianturin pulssikiekko ja koodausjärjestelmätaulukko. 2.3.4 Takometri ja takogeneraattori Takometri on valosähköinen pulssianturi. Rakenteellisesti se on yksikanavainen inkrementtianturi, jonka pulsseista voidaan laskea kiertymä ilman suuntatietoa. Takogeneraattori on analogia anturi, jonka lähtöjännite on verrannollinen akselin hetkelliseen pyörimisnopeuteen. DC takogeneraattorin roottorina on
12 (23) kestomagneetti, joka indusoi staattorissa olevaan käämiin tasajännitteen. Jännitteen suunta vaihtuu pyörimissuunnan mukaan. 2.3.5 Synkrot ja resolverit Synkrot ja resolverit ovat analogisia asema antureita, joita käytetään erityisesti vaikeissa ympäristöolosuhteissa. Resolverin staattorissa on kaksi erillistä käämiä, jotka ovat 90 asteen kulmassa toisiinsa nähden. Staattorissa on yksi tai kaksi käämiä. Jos käämejä on kaksi, niin ne ovat 90 asteen kulmassa toisiinsa nähden. Tulojännite tai lähtösignaali siirretään roottoriin/roottorista pyörivän muuntajan avulla, jotta vältytään kuluvien liukurenkaiden käytöltä. Roottoriin syötetään vaihtojännite joka indusoi staattorikäämeihin jännitteet, joista kiertymäkulma voidaan ratkaista. Synkron rottorissa on yksi käämi ja staattorissa kolme käämiä 120 asteen kulmassa toisiinsa nähden. Staattorikäämeiltä voidaan lukea mittasignaali, jonka perusteella kiertymä on mahdollista laskea. 2.3.6 Potentiometri Potentiometri on analoginen absoluuttianturi. Se on perusrakenteeltaan säätövastus, jonka liu un ja runkoosan välinen resistanssi on yleensä suoraan verrannollinen kiertymään. Joissakin tapauksissa vastus muuttuu sinimuotoisesti kiertymän mukaan. Potentiometriä syötetään vaihto tai tasajännitteellä. Liu usta mitataan välijännite, josta kiertymä voidaan laskea. Monikierrospotentiometrejä on saatavilla sovelluksiin, joissa 360 astetta ei riitä. Lisäksi on olemassa lineaaripotentiometrejä, joilla voidaan suoraan mitata lineaarista liikettä. Potentiometrien vastuspinnat kuluvat käytössä. 2.3.7 Anturin mekaaninen ja sähköinen kytkentä Takaisinkytkentäantureiden ja säädettävän moottorin välisen mekaanisen kytkennän tulee olla mahdollisimman jäykkä, jotta anturin antosignaali vastaisi tarkasti mitattavan moottorin pyörimiskulmaa tai nopeutta. Siksi anturit kiinnitetään tavallisesti suoraan moottorin akselille. Jos takaisinkytkentäanturi kytketään kuorman siirtomekanismin muihin osiin, mekanismissa esiintyvät välykset ja joustot saattavat aiheuttaa säädön epätarkkuutta ja epästabiilisuutta. Antureiden antosignaalien johtimina tulisi aina käyttää suojattuja kaapeleita. Kaapelin asennus tulee suorittaa siten, että estetään sähköisten ja magneettisten häiriöiden indusoituminen kaapeliin. 2.4. Ohjausjärjestelmät Liikkeenohjain on laite, joka pyrkii ohjaamaan servomekanismiin kytketyn kuorman liikettä ennalta määriteltyjen ehtojen perusteella. Ehdot voidaan tavallisesti määritellä ohjelmoimalla ohjain laitekohtaisella ohjelmointikielellä. Liikkeenohjaimen ohjaamat liikkeet ovat yksinkertaisimmillaan yhden akselin paikoitusliikkeitä, jossa kuorma siirretään paikasta toiseen. Liikkeenohjaimilla voidaan myös toteuttaa usean akselin interpoloituja liikkeitä siten, että kuorma liikkuu määriteltyä ratakäyrää pitkin. Liikkeenohjain toimii varsinaisesti paikkasäätimenä, joka ohjaa kuorman liikettä ennakkoon lasketun profiilin mukaisesti. Profiili on ohjelmoitujen arvojen perusteella laskettu paikka ja aikapiste ura. Takaisinkytkentätiedon kuorman paikasta ohjain saa moottorin akselille kiinnitetyn anturin antosignaalista. Takaisinkytkentäsignaalia verrataan laskettuun paikkapisteeseen, ja havaittu ero näiden arvoissa pyritään eliminoimaan ohjaamalla servovahvistimen nopeussäädintä. Liikkeenohjaimissa on tavallisesti toteutettu
13 (23) jokin digitaalinen säädin, joka paikan asetusarvon ja takaisinkytkennän eron perusteella määrää servovahvistimen nopeussäätimen nopeusarvon. Liikkeenohjaimet toimivat usein myös koneen loogisten toimintasekvenssien tai sen osien ohjaimina. Erityisesti itsenäisten (stand alone) ohjaimien ominaisuuksiin kuuluu mahdollisuus ohjelmoitavilla logiikoilla tyypillisten suoritettavien toimintojen ohjaamiseen. Digitaalisilla ohjaimilla, joissa säädinratkaisu on toteutettu ohjelmallisesti, voidaan toteuttaa adaptiivisia säädinratkaisuja, joiden vahvistusparametrien joukko voidaan muuttaa kesken liikkeen. Esimerkiksi robottien manipulaattorien ohjauksessa maan vetovoiman suunta liikkeeseen nähden vaihtelee robotin käsivarren asennosta riippuen, joten säätimen vahvistuksia voidaan joutua muuttamaan kesken liikkeen suorituksen. Digitaalisilla ohjaimilla voidaan ohjelmallisesti toteuttaa toimintoja, joilla mekaanisen välityksen tai sähköisten signaalien puutteita voidaan kompensoida. Ne voidaan valmistaa ominaisuuksiinsa nähden pienikokoisiksi ja vähän sähkötehoa kuluttaviksi. Liikkeenohjaimen merkitys toteutettavan liikkeenohjauksen hyvyyden kannalta on ratkaiseva. Sen toiminta ja ominaisuudet määräävät suuressa määrin ohjauksen sähköisen tarkkuuden. Liikkeenohjain määrää onko halutun liikkeen sähköinen toteuttaminen ylipäänsä mahdollista, ja jos on niin miten. Siksi sen valinta tulee kiinteästi sitoa ohjattavan liikkeen ominaisuuksiin ja vaatimuksiin. Väärällä liikkeenohjainvalinnalla oikein valituista muista servokomponenteista ja hyvin suunnitellusta ja toteutetusta mekaniikasta huolimatta ei ohjauksesta saada tarkkaa ja halittua. Kaupalliset liikkeenohjaimet voidaan jakaa sekä ohjausperiaatteensa että rakenteensa puolesta eri ryhmiin. Ohjausperiaatteensa perusteella ohjaimet voidaan jakaa ohjattavan moottorin toimintaperiaatteen mukaan. Osa ohjaimista pystyy ainoastaan askelmoottoreiden ohjaamiseen. Joillakin ohjaimista voidaan ohjata sekä askel että servomoottoreita. rakenteensa ja toimintaympäristönsä puolesta ohjaimet voidaan jakaa seuraavasti: Ohjelmoitaviin logiikoihin liitettävät liikkeenohjaimet NC ohjauslaitteet Itsenäiset (stand alone) ohjaimet PC ympäristöön sovitetut ohjainlaitteet Ohjaimen toiminnalliset ominaisuudet ensisijaisesti määräävät sen soveltuvuuden ohjaussovellukseen. Ominaisuuksia tarkasteltaessa voidaan huomio kiinnittää seuraaviin seikkoihin: Ohjattavien akselien määrä Ohjaimen nopeus Ohjaimen kyky erilaisten liikkeiden toteuttamiseen Ohjaimen paikoitustarkkuus Ohjaimen tulo ja antosignaalien määrä ja laatu Ohjaimen tiedonsiirtoliitännät Ohjaimen tarjoamat käyttöliityntämahdollisuudet
14 (23) 3. PID säädin servokäytössä PID säädin on yleisin käytetty säädin servojärjestelmien ohjauksessa. Servojärjestelmät viritetään usein kokeellisesti sillä harvoin järjestelmän malli tunnetaan tarkasti. Kokeellinen virittäminen vaatii jonkin verran asiantuntemusta ja näkemystä miten eri parametrit vaikuttavat järjestelmän käyttäytymiseen. Useimmiten virittäminen tehdään askelvasteiden avulla. Säätimelle asetetut tavoitteet ovat osin ristiriitaisia. Säätöpiirin ominaisuuksia ovat nopeus, stabiilisuus ja tarkkuus. Esimerkiksi nopeuden lisääminen huonontaa prosessin stabiilisuutta. Tästä syystä säädintä virittäessä joudutaan aina tekemään kompromissi eri ominaisuuksien välillä. Yleensä pyritään suureen nopeuteen ja tarkkuuteen ilman että joudutaan liian lähelle prosessin värähtelyrajaa. Hyvä säätöpiiri seuraa asetusarvon muutoksia mahdollisimman nopeasti ja mahdollisimman pienillä ylityksillä, korjaa kuormitusten muutosten aiheuttamat häiriöt mahdollisimman nopeasti ja huomaamattomasti sekä on lähes tunteeton syötön häiriöille. Servojärjestelmissä pyritään usein kriittisesti vaimennettuun vasteeseen. Vasteen ylitys on vasteen ja sen loppuarvon erotus ensimmäisen huipun kohdalla. Vasteen nousuaika on aika joka kuluu siitä kun vaste nousee arvosta 0.1y ref arvoon 0.9y ref. Asettumisaika määritellään ajaksi, jonka jälkeen vaste pysyy tietyn putken (y ref ± X%) sisällä. PID säätimen toimintaan tutustutaan tarkemmin työssä numero 11, jonka työohjeesta voi lukea tarkemmin säätimen toiminnasta. Tässä luvussa esitellään vain lyhyesti eri termien vaikutukset servomoottorin ohjauksessa. 3.1. P termi Vahvistus K p kasvattaa/vähentää nopeutta samassa suhteessa kuin virhe (K p * e n ). Jos käytetään pelkästään tätä termiä, niin puhutaan P säädöstä. Liian suuri arvo saa järjestelmän värähtelemään. Liian pieni arvo aiheuttaa suurta jättämää, puhutaan löysästä säädöstä. 3.2. I termi Integrointivakio K i kasvattaa/vähentää nopeutta samassa suhteessa kuin virheiden yhteenlaskettu summa ajan funktiona (K i * S n ). Servomoottorit ovat integroivia prosesseja, joista I termin voidaan usein jättää pois. Jos halutaan poistaa pysyvä poikkeama penger tai paraboliherätteillä I termiä kuitenkin tarvitaan. Moottorin pyörittäminen voi myös vaatia niin paljon energiaa, ettei pelkkä PD säätimen ohjaus riitä poistamaan pientä pysyvää poikkeamaa. Suuri I termi lisää värähtelyjä ja epästabiilisuutta, mutta poistaa pysyvän poikkeama. Yhdessä K p termin kanssa käytettynä puhutaan PI säädöstä. Yhdessä K p ja K d termien kanssa käytettynä puhutaan PID säädöstä, yleinen esim. NC ohjaimen asemasäätimessä. Auttaa seuraamaan haluttua rataa, koska virhe vaikuttaa nopeasti nopeuteen. Liian suuri arvo saa säädön värählemään halutun aseman ympärillä.
15 (23) Kaikki säätimet, joissa on integroiva termi, voivat käytännön sovelluksissa saturoitua jolloin säädin menettää hetkellisesti toimintakykynsä. Tätä ilmiötä kutsutaan integraalin wind up ilmiöksi. Jos saturoimista ei estetä niin integraalitermi kasvaa rajatta. Kun lähtösuure saavuttaa referenssin, niin integraalitermi on kasvanut kohtuuttoman suureksi verrattuna P ja D termeihin. Integraalin purkautuminen ei tapahdu hetkessä, ja tänä aikana säädin menettää ohjattavuutensa. Yksinkertaisin tapa estää wind up ilmiö on keskeyttää säätimen integraalitermin päivittäminen, jos toimilaite saturoituu. 3.3. D termi Derivointi vakio K d, kasvattaa/vähentää nopeutta asemavirheen muutoksen funktiona (K d *(e n 1 e n )). Yhdessä P termin kanssa käytettynä puhutaan PD säädöstä. Toimii vakauttavana terminä ja estää yli ampumista. Suuri D termi stabiloi, nopeuttaa ja vähentää värähtelyä, mutta on herkkä korkeataajuiselle kohinalle ja viiveille. 4. Järjestelmän kuvaus Laboratoriotyössä käytettävä järjestelmä on näkyvillä kuvassa 11 ja se koostuu seuraavista komponenteista: liukukiskolla liikkuva vaunu, vaihteella ja inkrementtienkooderilla varustettu servomoottori, lineaarinen servovahvistin, liikkeenohjainkortti sekä PC, jossa graafista käyttöliittymää sekä Matlabia ajetaan. Hammashihnaan kiinnitetty vaunu liikkuu noin metrin mittaisella liukukiskolla, jonka päissä on rajakytkimet ja stopparit. Työssä pyritään säätämään vaunun paikka ja nopeus halutuiksi. DC servomoottorilla pyöritetään laakeroitua hammashihnapyörää, joka liikuttaa vaunua. Moottorin pyörimisnopeutta mitataan suoraan moottorin akselille kiinnitetyllä inkrementtienkooderilla. Ohjearvot paikalle ja nopeudelle annetaan graafisen käyttöliittymän avulla, josta arvot syötetään PC:n IDE väylään kiinnitetylle Octagonin liikkeenohjaimelle. Takaisinkytkentä enkooderilta on tehty liikkeenohjaimelle, jonka mikrokontrollerissa muodostetaan erosuure, joka syötetään kontrollerissa reaaliaikaisesti laskettavalle diskreetille PID algoritmille. Algoritmi laskee ohjausarvon, joka johdetaan lineaarisen servovahvistimen kautta moottorille.
16 (23) Kuva 11. Työssä 4 käytettävä laitteisto. Servomoottorina käytetään Gefeg:n harjallista DC moottoria M42x40 12V, johon on liitetty planeettavaihde, jonka muuntosuhde on 46:1. Moottorin akseliin on kiinnitetty inkrementtienkooderi, jolta saadaan takaisinkytkentä. Moottorin ominaisarvot ovat: nimellisjännite 12 V antoteho 26,7 W nimellisnopeus 3000 min 1 nimellismomentti 0,085 Nm nimellisvirta 3,3 A jännitevakio 8200 min 1 /Nm momenttivakio 0,0291 Nm/A hitausmomentti 1,3 x 10 5 kgm 2 Servovahvistin on Elmo motion controlin tyyppi SSA 12/55 ja toimii 12 voltin jännitteellä. Se on sijoitettu erilliseen metallilaatikkoon, johon on kytketty johtimet liikkeenohjainkortilta sekä virtalähteeltä. Servovahvistimelle on määritelty moottorin nimellisvirta (1.93 A), huippuvirta (6.45 A) sekä liikkeenohjauskortin ohjausviestin vahvistus (0.2 A/V). Liikkeenohjainkortti on Octagonin 5328 malli ja se on asennettu tietokoneen ISA väylään. Kortilla laskettu ohjausarvo välitetään servovahvistimelle 10..+10V analogisena jänniteviestinä. Korttiin voidaan kytkeä kaksikanavainen inkrementtienkooderi. Kortilla on National Semiconductorin LM628 Precision Motion Control siru (Kuva 13), jossa varsinainen laskenta tapahtuu reaaliaikaisesti. LM628 siru laskee puolisuunnikkaan muotoisen nopeusprofiilin (Kuva 12), jota seuraamalla moottorin tarkka paikoitus
17 (23) onnistuu. Nopeusprofiilin seurannan ollessa käynnissä, säätimessä käytettävä erosuure lasketaan todellisen ja halutun nopeuden erotuksen perusteella. Kuva 12. Liikkeenohjainkortin laskema nopeusprofiili. PID säätimen vaste on kolmen termin summa kuvan 13 mukaisesti. Kuitenkin vasteeseen vaikuttaa viisi muuttujaa. K p, K i ja K d termien lisäksi algoritmissa käytetään kahta ylimääräistä muuttujaa. Integraalin rajoituskerroin i l sekä derivoinnin näytteenottokerroin d s. Näytteenottokerroin on kokonaisluku (max. 256), jolla kortin näytteenottoaika (341 µs) kerrotaan ja rajoitinkerroin määrää ylärajan integraalitermille (max. 7FFF 16 = 32767 10 ). Derivointitermin suuruus määräytyy siis kahden termin tulon perusteella (K d *d s ). Integraalin rajoituskerroin on pysyväiskoodattu viideksisadaksi ja näytteenottokerroin on oletusarvoisesti yksi. Termien muuttaminen vaatii ServoGUI ohjelman uudelleen kääntämistä. Muut algoritmin parametrit ilmaistaan 16 bitillä eli niiden maksimiarvo on 65535. Liikkeenohjainkortilla on 32 bittinen rekisteri paikalle, nopeudelle ja kiihtyvyydelle. Kortin laskema ohjausarvo ilmaistaan 12 bittisenä. Yhteenveto muista LM628 sirua koskevista arvoista löytyy kuvasta 14. Tietokone on Octekin P2 400Mhz. Siinä ajetaan ServoGUI ohjelmaa, jolla voidaan määrätä PID parametrit, nopeuden ohjearvo ja paikka mihin vaunu ajetaan. Jokainen ajo alkaa kotiasemasta, joka on määritelty liukukiskon vasempaan laitaan. Käyttöliittymä näyttää moottorin enkooderilta saadun tiedon mukaiset kuvaajat vaunun paikasta, nopeudesta ja kiihtyvyydestä ajon aikana. Käyttöliittymän kuvaajista on kuitenkin hankala tutkia käyriä riittävän tarkasti, joten data luetaan Matlabiin jossa tarkempi analyysi tehdään. Virtalähteenä käytetään Vellemanin PS613 laboratorio virtalähdettä, josta saa tasavirtaa 0 30 voltin jännitteellä. Maksimivirta on rajoitetu 2,5 ampeeriin.
18 (23) Kuva 13. LM628 sirun rakenne. Kuva 14. Yhteenveto LM628 sirua koskevista tiedoista.
19 (23) 5. Esitehtävät 1. Kirjoita Matlabilla funktio tai skripti, joka lukee ServoGUI ohjelmalla tallennetun datan ja piirtää kelkan kiihtyvyyden, paikan sekä nopeuden kuvaajat koordinaatistoihin. Koordinaatistoihin voi lisätä apuviivoja, joiden avulla tiettyjen arvojen, esimerkiksi 5% nousuajan, katsominen kuvaajista helpottuu. ServoGUI ohjelmasta data tulee tallettaa hakemistoon C:\temp haluamallanne nimellä (myös tiedostopääte vapaasti valittavissa). Kirjoittamanne m filen tulisi siis lukea itse nimeämänne tiedosto tuosta hakemistosta. Tiedostossa on oma vaakavektorinsa kiihtyvyydelle, nopeudelle, paikalle ja ajalle, jotka on nimetty a1, v1, s1 ja t1. ServoGUI ohjelmalla voi myös tallettaa useamman ajon samaan tiedostoon, jolloin seuraavien ajojen vektorit on nimetty a2, v2, s2, t2, a3, v3 ja niin edelleen. Esimerkkitiedostot löytyvät työn verkkosivulta. m filen voi lähettää assistentille (juhana.ahtiainen@tkk.fi) etukäteen sähköpostilla tai tuoda esikuulusteluun USB tikulla. 2. Laske montako liikkeenohjainkortin rekistöröimää pulssia vastaa kelkan kulkemaa 60 cm:n matkaa. Kirjoita ylös käyttämäsi laskukaava. Hammashihnapyörän halkaisija on 80 mm ja enkooderi antaa 200 pulssia yhtä kierrosta kohti. Dekoodauskerroin on x4. Enkooderi on kiinnitetty suoraan moottorin akselille. 3. Alla on kolmen servoradalla tehdyn ajon kuvaajat. Nopeuden ohjearvoksi on asetettu 0.2 m/s ja paikan 0.6 m. Perustele mikä säädin on kyseessä ja miksi.
20 (23) 3 Acceleration 2 Acceleration (m/s2) 1 0-1 -2-3 0 0.5 1 1.5 2 2.5 3 3.5 Time (s) 0.8 Position 0.6 Position (m) 0.4 0.2 0 0 0.5 1 1.5 2 2.5 3 3.5 Time (s) 0.3 Velocity 0.2 Velocity (m/s) 0.1 0-0.1-0.2 0 0.5 1 1.5 2 2.5 3 3.5 Time (s)
21 (23) 4 Acceleration Acceleration (m/s2) 2 0-2 -4 0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5 Time (s) 0.8 Position 0.6 Position (m) 0.4 0.2 0 0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5 Time (s) 0.3 Velocity 0.2 Velocity (m/s) 0.1 0-0.1-0.2 0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5 Time (s)
22 (23) 2 Acceleration Acceleration (m/s2) 1 0-1 -2 0 0.5 1 1.5 2 2.5 3 3.5 Time (s) 0.8 Position 0.6 Position (m) 0.4 0.2 0 0 0.5 1 1.5 2 2.5 3 3.5 Time (s) 0.3 Velocity 0.2 Velocity (m/s) 0.1 0-0.1 0 0.5 1 1.5 2 2.5 3 3.5 Time (s)
23 (23) 6. Laboratoriossa tehtävät työt 1. Aseta servovahvistimen (metallilaatikko) päällä oleva vipu asentoon motor controller. 2. Varmista että virtalähteen jännite on 12V ja kytke jännite servovahvistimeen. 3. Käynnistä ohjelmat ServoGUI ja Matlab. 4. Odota. 5. Aseta position säädin kohtaan 0.60 ja desired velocity kohtaan 0.20. 6. Tee vähintään viisi ajoa P säätimellä käyttäen eri vahvistuksia. Merkitse ylös vahvistus, nopeuden nousuaika, maksimiylitys, 15% asettumisaika sekä 5% asettumisaika. Tuloksia täytyy riittävän tarkkuuden saavuttamiseksi tarkastella myös Matlabissa. 7. Tee vähintään viisi ajoa PI säätimellä käyttäen eri parametreja. Merkitse ylös säätimen parametrit, nopeuden nousuaika, maksimiylitys, 15% asettumisaika sekä 5% asettumisaika. Tarkastele myös I termin vaikutusta paikan kuvaajaan. 8. Tee vähintään viisi ajoa PD säätimellä käyttäen eri parametreja. Merkitse ylös säätimen parametrit, nopeuden nousuaika, maksimiylitys, 15% asettumisaika sekä 5% asettumisaika. 9. Säädä PID säätimen parametrit niin, että nopeuden maksimiylitys on korkeintaan 0.03, 5% asettumisaika 0.4 s ja nousuaika korkeintaan 0,09 s. 10. Tutki säätimesi reagoimista ulkopuoliseen häiriöön assistentin ohjeiden mukaisesti. Muuta halutessasi viritysparametreja. Data saadaan siirrettyä Matlabiin tallentamalla se File valikosta Save As... toimintoa käyttäen. Datan voi tallentaa haluamallaan nimellä C:\temp hakemistoon. Jos hakemistossa on jo saman niminen tiedosto tallenna surutta sen päälle. Seuraavilla kerroilla datan tallentaminen samalla nimellä onnistuu kätevästi Ctrl+S näppäinyhdistelmällä. Tämän jälkeen ajakaa ryhmänne esitehtävissä tekemä m file, jonka pitäisi piirtää tarpeelliset kuvaajat ruudulle.