SÄHKÖSUUNNITTELUJÄRJESTELMIEN OHJELMALLINEN DOKUMENTTIEN GENEROINTI - Nieminen, Juho (My University, 2007)
Vacon Oyj yrityksenä suunnitteli pitkään uusien kauppojen syntymisen kannalta tarjousvaiheessa tärkeiden sähköteknisten tuotedokumentaatioiden valmistamisen automatisointia. Suunnitelma päätettiin toteuttaa ja tämä dokumentaatio kuvaa kyseisen tuotetun automaatiojärjestelmän rakenteen. Järjestelmän toiminnallisuuden pohjautuessa kahteen eri käyttötapaukseen, toivat molemmat kategoriat omat haasteensa kehitystyölle. Suurimpina ongelmina ja haasteina olivat yrityksen tuotekoodien käyttö dokumentaatioiden generoinnin pohjana sekä dokumentaatioiden graafisten komponenttien hallinta ja oikeaoppinen sijoittelu generoitaville kaaviosivuille. Tuotekoodi koostuu pääosiosta ja siihen lisättävistä vapaaehtoisista lisäkoodeista. Niin itse tuotekoodin pääosion sisällön vaihtelevaisuuden kuin lisäkoodien vaihtelevan lukumäärän kautta erilaisten tuotekoodivariaatioiden lukumäärä on suuruusluokkaa kymmenen jottakappaletta. Suuresta variaatiolukumäärästä huolimatta järjestelmä kykenee tuottamaan yli 95 % erilaisten variaatioiden dokumentaatioista, asetetun tavoitteen mukaisesti. Dokumenttien generoinnin graafisen osion toteuttaminen vaati taustalleen laadukkaan sijoitusmallin, joka takaa sähköteknisten kuvien laadun ja oikeellisuuden. Graafiset sähkötekniset piirrokset koostuvat niiden generoinnissa käytettävän kolmannen osapuolen sähkösuunnitteluohjelmiston, Eplan 21:n, grafiikkakomponenteista, joita kutsutaan makroiksi ja symboleiksi komponentin tyypistä riippuen. Suurta tuotekoodin variaatiolukumäärää hallinnoimaan järjestelmään kehitettiin oma logiikkakieli, jonka avulla eri tilanteet ja ratkaisut dokumenttien generoinnin aikana voidaan ratkaista. Graafisten komponenttien sijoitteluongelmaan ratkaisuksi rakennettiin puolestaan ruudukkosijoitusmalli, joka kontrolloi sivuille sijoitettavien grafiikkaobjektien lopullista sijaintia. Tehty ohjelmistojärjestelmä saavutti sille asetetut tavoitteet.
Keywords: CAE; logiikkaohjelmointi; .NET; API; fi=Tietotekniikka (KTM)|en=Computer Science|; fi=Tietotekniikan koulutusohjelma (DI)|