Praktika kolmas nädal


Lühikokkuvõte nädalast

Kuna eelmisel nädalal jäi poole labori labori terviklahenduse väljatöötaminse selles osas, mis puudutas printerite võrgulahendust ja juhtimistarkvara, siis kulutasin kogu praktika kolmanda nädala just nende teemadega tegelemiseks.

Rääkides printerite kasutamiseks tarvilikust tarkvarast on oluline teha vahet kahel põhimõtteliselt erineva eesmärgiga rakenduste liigil.

Esimene neist on nn. “slicer”, see on tarkvara, mille eesmärk on võtta digitaalne 3D-mudel (sisuliselt geomeetriat kirjeldav fail) ja luua sellest 3D-printeri jaoks arusaadav juhend (printeri aktuaatorite jaoks sobiv käskude järjekord), mida järgides saab printer luua füüsilise objekti. Enamik printeri tootjaid pakuvad seda tarkvara koos oma printeriga – tavaliselt on see kohandatud versioon mõnest vabavaralisest slicerist. Suur osa slicereid ei ole kindla printerimudeli spetsiifilised ja seega on võimalik sama slicerit kasutada erinevate printerite jaoks.

Teine labori jaoks vajalik rakenduste liik on printerite haldustarkvara, mille ülesandeks on pakkuda ühtset liidest mitme printeri kontrollimiseks ja mis töötab tavaliselt omaette arvutil (sisuliselt on tegemist printimisserveriga). See implementeerib printimisjärjekorrad, printerite staatuste kuvamise, printimisprotsessi automatiseerimine jne. Siinkohal muudab asja keerulisemaks see, et sageli on selliste tarkvaralahenduste sisse juba paigutatud ka slicer, kuid mitte alati.

Minu soovitus praktikaettevõttele oli luua lahendus, kus slicer võib olla printerite haldustarkvara koosseisus, kuid kindlasti peaks olemas olema ka eraldi tarkvarana töötav slicer. Põhjused selleks on järgmised:

  1. printerite haldustarkvara kasutajaliides on enamasti veebisirviku põhine. See on küll mugav üldiseks printerite kontrollimiseks, kuid veebisirviku sees jooksev slicer’i kasutajaliides ei ole kindlasti optimaalne (aeglane ja veaaldis).
  2. haldustarkvaraga kaasa tulevatel sliceritel pole tihti kogu sellist funktsionaalsust, mis on olemas eraldiseisvatel sliceritel.
  3. Sliceri ja haldustarkvara eraldihoidmine tagab labori multifunktsionaalsuse erinevate eesmärkidega kursuste õpetamiseks. See tuleneb otseselt esimesel praktikanädalal kirja pandud labori loomise põhjustest 2 ja 3.

Praktikakohale soovitatud printerimudelite tootjatepoolsed slicer tarkvarad on:

  • Creality Slicer (põhineb Cura sliceril)
  • PrusaSlicer (põhineb Slic3r sliceril)
  • Bambu Studio (põhineb PrusaSlicer sliceril)

Kõik loetelus olevad rakendused on vabavaralised ja neid saab kasutada printfailide loomiseks kõigile soovitatud printerimudelitele. Seega tuleks sliceri valimisel lähtuda minu arvates hoopis järgmisetest põhimõtetest:

  1. Sliceri funktsionaalsus
  2. Sliceri kasutajaliidese mugavus ja tuttavlikkus
  3. Sliceri ühilduvus haldustarkvaraga

Võrdluses leidsin, et kõigi kolme slicer tarkvara baasfunktsionaalsus on sama. Kuid Prusa’l on keerukamate funktsionaalsuste osas mõned eelised, nagu parem printimisprotsessi aja- ja materjalikulu arvestus ja paremini seadistatav automaatne printimistugede genereerimine.

Kasutajaliidese mugavuse ja tuttavlikkuse osas on minu isikliku kogemuse põhjal võrdsed Bambu Studio ja PrusaSlicer. Creality Slicer’i kasutajaliides jättis aegunud mulje – tundub põhinevat Cura sliceri vananenud versioonil.

Erinevate haldustarkvaradega ühilduvuse osas on haldustarkvaraga ühildamise sisseehitatud tugi olemas vaid PrusaSlicer’il. Ei ole välistatud, et ka teisi loetelus olevaid slicereid saab kolmanda osapoole rakenduste abil haldustarkvaraga ühendada, kuid lihtsat moodust selleks ma ei tuvastanud.

Tulenevalt ülaltoodst oli minu soovituseks slicer tarkvara osas PrusaSlicer.

3D printerite halduslahenduste osas jäi sõelale kaks lahendust (eelduseks oli, et tarkvara on tasuta või ühekordse litsentsitasuga ja töötab sõltumatult kolmanda osapoole riistvarast või veebiteenustest):

  • OctoPrint – https://octoprint.org/
  • RepetierServer – https://www.repetier-server.com/

Octoprint on arvatavasti kõige levinum vabavaraline 3D printerite haldustarkvara, mis on algselt mõeldud töötamaks madala võimsusega monoplaatarvutitel (näiteks RaspberryPi), aga töötab mistahes levinud riistvaral.

Selle tarkvara plussideks on kindlasti see, et tegemist on täiesti tasuta vabavaralise tootega, mida on suhteliselt lihtne paigaldada ja automatiseerida. Lahendus võimaldab lisada näiteks veebikaamera printerite juurde, millel seda originaalis ei ole. Samas on probleemiks, et tulenevalt algsest disainiotsusest kontrollib tarkvara üks instants korraga ainult ühte printerit. Seega on tarvis iga printeri jaoks omaette instantsi – need peaksid siis jooksma kõik omaette monoplaatarvutitel või siis eraldatud konteineritena ühes serverarvutis.

RepetierServer on levinud kommertslahendus 3D printerite haldamiseks. Tarkvarast on olemas tasuta versioon (kärbitud funktsionaalsusega) ja tasuline versioon, mille ühekordne litsentsitasu on 60 EUR.

Sarnanaselt OctoPrint’iga võib ka see tarkvara töötada monoplaatarvutitel või tavalisel lauaarvutil/serveril. Erinevalt OctoPrint’ist võimaldab selle tarkvara üks instants aga korraga hallata mitut serverit. Piiranguks on vaid riistvaraline võimekus. Selle tarkvaralahenduse peamiseks plussiks on lai funktsionaalsus.

Olles testinud mõlemat lahendust soovitasin praktikaettevõttel võtta kasutusele RepetierServer. Selle koheselt töötav funktsionaalsus kaalub üles OctoPrindi suuremad automatiseerimis- ja laiendamisvõimalused. Samuti katab makstava litsentsitasu fakt, et iga printeri jaoks ei ole tarvis osta eraldi monoplaatarvutit. Minu hinnangul piisab kaheksa printeri puhul neljast monoplaatarvutist (teoreetiliselt saab hakkama ka kahega).

Tulenevalt ülaltoodud soovitustest on labori komplekteerimiseks tarvis hankida 4 monoplaatarvutit – soovitavalt Raspberry Pi 4. Selgus, et sobiliku portide arvuga peakommutaator on ettevõttel juba olemas. Küll aga tuleb ruumi võrgupistikute arvu vähesuse tõttu lisada juurde üks väiksem kommutaator (piisab neljast pordist). Labori seadmete võrguühenduste loogiline skeem võiks olla järgmine.

Seadmete ühendusskeem
Refleksioon

Mis?

Sel nädalal jõudsin oma tegevuste taas graafikusse. Sain valmis nii soovitused tarkvara osas kui ka lisanduvate seadmete (neli Raspberty Pi-d ja üks kommutaator) loetelu. Taaskord kulus palju aega tehniliste detailide väljaotsimiseks ja omavahel võrdlemiseks.

Lõpuks on mul olemas terviklik pilt soovitatavast tehnilisest lahendusest. See muidugi ei tähenda, et see päris sellisel kujul lõplikult käiku läheb, aga siit edasi on vaid nüanside muutmine.

Mis siis?

Tegelikult on päris suur ja oluline tükk praktikast valmis – tõsi küll ainult paberi peal. Hankimine ja tegelik ülesseadmine praktika aja sisse kahjuks ei jõua. Üks peamine alameesmärk on siiski täidetud. Olen enda tööga võrdlemisi rahul, kuigi tegelikult lootsin, et läheb kiiremini ja kergemalt.

Mis nüüd edasi?

Edasi saan minna juba sellega, kuidas täpsemalt planeeritud labori võimalusi implementeerida olemasolevate kursuste sisse ning kindlasti on plaanis välja töötada ka kava täiesti uue 3D printimisega seotud kursuse jaoks.

Lisaks sellele on veel tarvis panna kokku juhendmaterjal 3D printerite tehniliseks hooldamiseks ja enimlevinud printimisprobleemide lahendamiseks.