3/19/2012 AALTO- YLIOPISTO AS-0.3200 Automaatio- ja systeemitekniikan projektityöt Joni Rannisto Matti Koskinen Janne Hafrén
1. Projektin tavoite Projektin tavoitteena on rakentaa akselimoduulin ohjain vuoden 2012 Field Robot Eventtapahtumassa kilpailevaan Aalto-yliopiston ja Helsingin Yliopiston yhteistyönä rakentamaan peltorobottiin. Robotti on nelipyöräohjattu, nelivetoinen ja noin 20-kiloinen laite, joka pystyy navigoimaan kasvillisuuden seassa ja suorittamaan tehtäviä itsenäisesti. Akselimoduuli sisältää: ajomoottorin alennusvaihteen servon tasauspyörästön potentiometrin servon aseman tarkkailua varten enkooderin ajonopeuden tarkkailua varten vetoakselit lämpöanturin moottorin lämpötilan mittaamiseksi mikrokontrollerin, joka ohjaa akselimoduulin toimintoja. Akselimoduuli kommunikoi muiden robotin ohjainlaitteiden kanssa CAN-tietoväylää hyväksi käyttäen. Näin ollen mikrokontrollerina on käytettävä kontrolleria, joka pystyy kommunikoimaan CAN-protokollaa käyttäen. Elektronisestikin piirilevylle asetetaan suuria vaatimuksia, sillä virrat voivat nousta jopa 80 ampeeriin, mutta silti piirilevyn koon pitäisi olla vain muutamia senttimetrejä. Tähän tilaan pitää mahduttaa muun muassa mikrokontrolleri, H-silta, transistori moottorivirran jännitteen PWM-ohjausta varten, regulaattori servon jännitteen pudottamiseksi oikealle tasolle ja tarvittavat kondensaattorit virtapiikkien tasaamiseksi ja sähköisten häiriöiden vähentämiseksi. Elektroniikkasuunnittelun lisäksi tärkeä osa projektia on ohjelmiston tekeminen mikrokontrollerille. Ajomoottorin pyörimisnopeutta säädetään PI-säätimellä käyttäen apuna enkooderilta saatua toteutunutta pyörimisnopeutta. Myös ohjausservoa tulee säätää pwmsignaalilla ja toteutunut ohjauskulma luetaan potentiometrin avulla. Moottorinohjaimen tulee myös mitata moottorille menevää virtaa ja yhdessä lämpötilamittauksen kanssa voidaan todeta jos moottori ylikuumenee. Mikäli ajomoottorin havaitaan ylikuumenevan tai mikäli servo ei saavuta toivottua asemaa, siirrytään vikatilaan, jolla ehkäistään ajomoottorin tai servon ylikuumeneminen ja vaurioituminen. Näin tapahtuessa tulee ohjaimen lähettää virhetilaviestin CAN-väylälle jotta toinen akselimoduuli tietää myös lopettaa toiminnan eikä moottoreita pala turhaan. Ajokomennot tulevat myös CAN-väylää pitkin ja takaisin pääkoneelle lähetetään mittatulokset.
2. Mitä on saatu tehtyä Kaikki tarvittavat komponentit on tilattu ja saatu o Partcolta ja Farnellilta on tilattu tarvittavat komponentit. Hankinnoissa konsultoitiin Jari Kostamoa ja Timo Oksasta. Komponenttien valinta on asiaan perehtymättömälle melkoista onnenkauppaa, sillä esimerkiksi kondensaattoreita löytyy satoja lähes samanlaisia. Kytkentäkaavio on valmis o Kaavion piirtämiseen on käytetty freeware-ohjelmaa nimeltä KiCad. KiCad soveltuu kytkentäkaavion piirtämiseen ja tarjoaa käyttökelpoiset työkalut myös lay-outin suunnitteluun. Piirilevyn lay-outin suunnittelu on valmis o Lay-outin suunnittelu osoittautui huomattavasti kuviteltua työläämmäksi. Ohjelman käytön opetteluun meni yllättävän paljon aikaa, ja kun tarkoitus on mahduttaa pienelle piirilevylle melkoinen määrä komponentteja ja suuria virtoja, on lay-outin suunnittelu kohtalaisen työlästä. Koska kenelläkään ryhmästä ei ole aiempaa kokemusta moisesta, meni homma aluksi hieman harjoitteluksi. Ohjelmiston rakenne on suunniteltu o Ohjelmiston perusrakenne on suunniteltu. Ohjelmiston ajankäyttö ja kontrolliluuppi on listattu, ja ne tarvitsee enää kirjoittaa puhtaaksi. CAN-viestit on määritelty o Akselimoduuli kommunikoi muun robotin kanssa CAN-väylää käyttäen. Viestit, joita moduuli vastaanottaa ja lähettää, on standardoitu, samoin kuin järjestelmän käynnistyessään tarvitsemat tiedot. Layout on valmiina o Layout ei valmistunut aivan aikataulussa, mutta se on silti saatu valmiiksi. Itse asiassa layout jouduttiin tekemään kahteen kertaan, koska ensimmäinen versio tehtiin ohjelmiston väärällä versiolla, eikä se aukea muilla koneilla. Layoutia on paranneltu kokeneempien elektroniikkasuunnittelijoiden palautteen mukaan, ja näissä palautekeskusteluissa on saatu paljon arvokasta oppia suunnittelusta.
3. Mitä ei ole saatu tehtyä, vaikka olisi pitänyt Ohjelmiston pitäisi olla valmiina o Ohjelmointia ei ole ehditty tehdä, sillä koko ryhmä on keskittynyt elektroniikkasuunnitteluun. Piirilevyn pitäisi olla valmiina o Levy valmistetaan mahdollisimman pian lähipäivinä. 4. Projektin etenemisestä ja tulevaisuudesta Käytännössä on havaittu, että joidenkin työvaiheiden tarvitsema aika on aliarvioitu. Esimerkiksi piirilevyn lay-outin suunnitteluun oli varattu vain kuusi tuntia, vaikka siihen kului huomattavasti enemmän. Vaikka mikrokontrolleri ja muutamat muut pääosat oli valittu jo etukäteen, vei pienemmän sälän kuten kondensaattorien, vastusten, operaatiovahvistinten ja transistorien valinta asiaan perehtymättömältä yllättävän paljon aikaa. Seuraavaksi projektissa on tarkoitus saada lay-out valmiiksi ja valmistaa ensimmäinen yritelmä piirilevystä. Kun valmis piirilevy tai ainakin prototyyppi on valmiina, päästään testaamaan ohjelmistoa ensin osakokonaisuuksina ja sitten kokonaisuudessaan. Varsinaista parametrien virittämistä ja muuta loppuviimeistelyä ei voida kuitenkaan suorittaa, ennen kuin päästään tekemään testejä valmiilla akselimoduulilla, sillä parametrien virittämistä ja käytännön virrankeston testausta ei päästä suorittamaan, ennen kuin koko moduuli on kasassa. Tätä ennen ryhmä tarvitsee moduulin fyysiset ja mekaaniset osat, joista osa on vielä koneistettavana tai laser- ja vesileikattavana. Ennen kuin nämä osat ovat valmiit, ei akselimoduulia päästä kokoamaan ja testaamaan. Suurimmaksi osaksi aikatauluongelmat ovat johtuneet siitä, että alkuperäinen ajantarve oli alimitoitettu. Esimerkiksi piirilevyn suunnittelussa käytettävän ohjelman käytön opettelemiseen on mennyt useita tunteja, ja oppiminen jatkuu yhä. Myös muut kurssit ja peltorobottiprojekti yleisesti on vaatinut suhteellisen paljon aikaa, mutta nyt aikataulu vaikuttaisi hiukan helpottavan.
5. Aikataulu Aikataulussa ei aivan olla pysytty, mutta toisaalta aikataulu oli alun perinkin tehty tarkoituksella hieman kireäksi. Ryhmä on kuitenkin luottavainen, että projekti valmistuu ajallaan ja lopputuote hoitaa asiansa, mutta kieltämättä pientä tahdin kiristämistä tarvitaan. Kuluvan viikon aikana on tarkoitus valmistaa ensimmäinen valmis piirilevy ja jatkaa ohjelmiston kirjoittamista. Paranneltu projektiaikataulu on alla. Viikko 5 6 7 8 9 10 11 12 13 14 15 16 17 18 Aikataulutus ja projektisuunnitelma 31.1. Väliraportti 20.3. Loppuraportti 1.5. Komponenttien määrittely ja valinta Kytkentäkaavion suunnittelu Layoutin suunnittelu Piirilevyn valmistus ja juottaminen Piirilevyn sähköinen testaus Ohjelman suunnittelu Ohjelman kirjoittaminen Ohjelman virittäminen Lopputestaus Raportointi Valmis Vaiheessa Aloittamatta Projektin osa-alue Suunniteltu ajankäyttö Toteutunut ajankäyttö Esiselvitys yms valmistelu 4 9 Komponenttien valinta 5 9 Elektroniikkasuunnittelu 10 20 Piirilevyn suunnittelu 6 15 Piirilevyn valmistus 2 Juottaminen 8 Ohjelmointi 25 Testaaminen ja säätö 15 Kuten havaitaan, ihmettelyyn ja opetteluun palaa äkkiä aikaa yllättävän paljon. Huomataan myös, että koska ryhmän jäsenillä ei ole juuri ennakkokokemusta vastaavasta projektista, on vaikea arvioida, kuinka paljon aikaa kuhunkin vaiheeseen todellisuudessa kuluu. Tämän projektin jälkeen seuraavaa vastaavaa projektia valmisteltaessa on jo paljon parempi käsitys siitä, miten paljon mihinkin vaiheeseen kannattaa aikaa varata.
Projektin ajankäyttöä suunniteltaessa ei otettu laisinkaan huomioon ohjelmistojen käytön opettelua tai projektin raportointiin kuluvaa aikaa, vaikka näihin kuluu yllättävän paljon aikaa. 6. Mitä on opittu Tähän mennessä kurssi on ollut erittäin opettavainen. Olemme saaneet erittäin tehokkaan ja käytännönläheisen tietopaketin elektroniikkasuunnittelusta ja elektroniikkasuunnitteluprojektin hallinnasta. Mielenkiintoista on ollut myös huomata, miten vuosien varrella erilaisilla mekatroniikan ja elektroniikan luennoilla käsitellyt asiat ovat yhtäkkiä muuttuneet lihaksi. Signaalin laskostuminen, resoluutiokysymykset tai sähköisten häiriöiden kytkeytymismekanismit on tullut kerrattua ja ymmärrettyä aivan eri tavalla kuin katselemalla kuvaa luentokalvolta. Ryhmämme uskoo, että myös ohjelmoinnin käytännön toteutus opettaa paljon käytäntöä siitä, mistä on nyt kuultu puhuttavan luennoilla. Projekti on kohtalaisesta työllistävyydestään huolimatta mielenkiintoinen, käytännönläheinen ja mielekäs.