3D-tulostimen ohjaaminen Beckhoffilla
Nykänen, Mikael (2023)
Nykänen, Mikael
2023
All rights reserved. This publication is copyrighted. You may download, display and print it for Your own personal use. Commercial use is prohibited.
Julkaisun pysyvä osoite on
https://urn.fi/URN:NBN:fi:amk-2023052413654
https://urn.fi/URN:NBN:fi:amk-2023052413654
Tiivistelmä
Opinnäytetyön aiheena oli suunnitella ja ohjelmoida yksinkertainen ohjelmisto, jolla voitaisiin ohjata yksinkertaista 3D-tulostinta. Tämä tehtiin paikalliselle teollisuusluokan 3D-tulostimia valmistavalle yritykselle nimeltä miniFactory Oy Ltd. Työn tavoitteena oli selvittää, voisiko Beckhoffin valmistamia ohjelmoitavia logiikoita mahdollisesti käyttää yrityksen omissa 3D-tulostimissa tai 3D-tulostustarpeissa tulevaisuudessa. Yritys käyttää tällä hetkellä usean eri valmistajan logiikkaohjaimia, ja tämä auttaisi heitä siirtymään käyttämään vain yhden valmistajan rautaa.
Työn pääohjelma tehtiin hyödyntäen Beckhoff TwinCAT 3 -ohjelmointiympäristöstä löytyviä MC2- ja NCI-ohjelmakirjastoja. Ohjelmointikielenä työssä käytettiin Structured Text -ohjelmointikieltä. Myös yksinkertainen HMI-käyttöliittymä luotiin, jotta ohjelmaa olisi helpompi ohjata. Muutama 3D-tulostuksessa käytetty M-funktio lisättiin ohjelmaan, ja lähdekoodista selviää, miten ne toimivat, että näitä funktioita olisi helpompi lisätä ja laajentaa tulevaisuudessa.
Työssä saatiin aikaiseksi yksinkertainen ohjelmisto, jota yritys voisi mahdollisesti käyttää omissa 3D-tulostustarpeissaan tai muokata ja laajentaa sitä tulevaisuudessa. Pääohjelma ja sen komponentit kommentoitiin, jotta koodia olisi helpompi seurata ja ymmärtää. Työn aikana selvisi, että NCI-kirjasto ei ole aivan ajan tasalla ja tulkki ei suoraan ymmärrä nykyisten viipalointiohjelmistojen generoimia G-koodeja. Nämä generoidut G-kooditiedostot vaativat tällä hetkellä melko paljon muokkaamista, että NCI-tulkki pystyy ajamaan niitä.
Beckhoffilta on tulossa parannuksia varsinkin 3D-tulostamiseen tulevaisuudessa, mutta harmillisesti niitä ei ollut vielä julkaistu tämän opinnäytetyön tekemisen yhteydessä.
Työn pääohjelma tehtiin hyödyntäen Beckhoff TwinCAT 3 -ohjelmointiympäristöstä löytyviä MC2- ja NCI-ohjelmakirjastoja. Ohjelmointikielenä työssä käytettiin Structured Text -ohjelmointikieltä. Myös yksinkertainen HMI-käyttöliittymä luotiin, jotta ohjelmaa olisi helpompi ohjata. Muutama 3D-tulostuksessa käytetty M-funktio lisättiin ohjelmaan, ja lähdekoodista selviää, miten ne toimivat, että näitä funktioita olisi helpompi lisätä ja laajentaa tulevaisuudessa.
Työssä saatiin aikaiseksi yksinkertainen ohjelmisto, jota yritys voisi mahdollisesti käyttää omissa 3D-tulostustarpeissaan tai muokata ja laajentaa sitä tulevaisuudessa. Pääohjelma ja sen komponentit kommentoitiin, jotta koodia olisi helpompi seurata ja ymmärtää. Työn aikana selvisi, että NCI-kirjasto ei ole aivan ajan tasalla ja tulkki ei suoraan ymmärrä nykyisten viipalointiohjelmistojen generoimia G-koodeja. Nämä generoidut G-kooditiedostot vaativat tällä hetkellä melko paljon muokkaamista, että NCI-tulkki pystyy ajamaan niitä.
Beckhoffilta on tulossa parannuksia varsinkin 3D-tulostamiseen tulevaisuudessa, mutta harmillisesti niitä ei ollut vielä julkaistu tämän opinnäytetyön tekemisen yhteydessä.