Školní 3D tiskárny v síti pomocí Karmen Pill
Na školách se často začíná s 3D tiskem tak, že se pořídí jedna FDM/FFF 3D tiskárna a pomocí ní se s 3D tiskem postupně seznamují žáci i učitelé. Na některých školách 3D tisk „zakoření“ natolik, že „vyroste“ potřeba rozšířit 3D tiskový park o další 3D tiskárnu(y). A tím, jak je najednou 3D tiskáren více, začne to být s jejich využíváním poněkud náročné, jak pro správce, tak pro 3D tiskaře. Když chceme umožnit žákům k tiskárnám volný přístup, což je záhodno, stane se nutností mít přehled o tom, v jakém stavu tiskárny jsou (nedošel třeba filament?), co která tiskárna zrovna tiskne, kdo z žáků tiskne, za jak dlouho bude tiskárna volná, jaké tiskové úlohy čekají v „tiskové frontě“ a třeba i to, zda jde o úlohu „školní“, nebo se jedná o „soukromý tisk“ (to by se pak hodilo k vyúčtování a výběru poplatků od žáků) atd. Požadavků na hladký provoz 3D tiskáren ve školním prostředí je celá řada. Jak se s nimi vypořádat? Chtělo by to nějakou centrální správu a dohled nad tiskárnami takříkajíc „kdykoli a odkudkoli“.
Možných řešení se tu nabízí více. Prvním předpokladem pro fungování centrální správy 3D tiskáren je jejich připojení do počítačové sítě. To je možné například s využitím populárního Raspberry s nainstalovaným open source Octoprint (pro Raspberry konkrétně OctoPi). Tím získáme platformu pro dohled i kompletní vzdálené ovládání 3D tiskárny přímo přes webový prohlížeč. Takže tím jsme všechny naše nastíněné problémy vyřešili, ne? Bohužel, nevyřešili. Octoprint oficiálně nepodporuje připojení více 3D tiskáren, a právě to bychom potřebovali. Asi vás napadne, že bychom mohli ke každé tiskárně přidat Raspberry s Octoprintem a pak bychom měli pod vzdálenou správou všechny naše 3D tiskárny. To by jistě šlo, ale pak to není centrální přístup a správa našich tiskáren z „jednoho“ místa. A nesmíme zapomenout, že centralizaci by si zasloužila také problematika uživatelských účtů a správa oprávnění skupin i jednotlivých uživatelů. Co s tím? Kdo nám s tím vším pomůže?
Na scénu přichází česká firma Fragaria se svým řešením Karmen: Karmen Pill a Karmen Cloud. Vývojáři ze zmíněné firmy využili to, co je funkční a k tomu open source, tedy Octoprint, a nad ním postavili své cloudové řešní Karmen Cloud. Karmen Cloud přitom jde přesně tím směrem, kterým jsme se ve školním prostředí chtěli na začátku našeho článku vydat. Pojďme se tedy podívat, co nám Karmen Cloud nabízí, které naše požadavky pokrývá, které ne a jak se s ním pracuje. Vycházet přitom budeme z naší dlouhodobé zkušenosti s mnohem komplexnějším systémem SafeQ eDee od firmy YSoft.
Ještě než se pustíte do čtení následujících řádek, je nutné zdůraznit, že systém Karmen nebyl primárně vyvíjen na míru školnímu prostředí, a tím pádem nezohledňuje řadu jeho specifických požadavků. Autoři systému Karmen ale stále pokračují ve vývoji a jen v průběhu našeho testování se objevilo několik nových věcí. Možná se tak v dohledné době dočkáme právě těch funkcí, které nám zatím pro komplexní nasazení ve školním prostředí chybí.
zpět na začátek1. Jak začít?
K využívání Karmen Cloudu se nám nabízí dva různé přístupy, které se poměrně zásadně liší ve svém výchozím bodu. V případě, že se svými tiskárnami již provozujeme Octoprint, můžeme se do Karmen Cloudu připojit prakticky ihned a začít ho jako „správce“ využívat. Toto řešení je aktuálně zcela zdarma a stačí nám registrovat se na portálu next.karmen.tech. Návod pro připojení vlastního Octoprintu je k dispozici v rámci Karmen dokumentace. Druhou možností, když Octoprint neprovozujeme, je pořízení zařízení Karmen Pill, což je předpřipravená úhledná krabička, v níž se nachází Raspberry Pi Zero W s kamerovým modulem a předinstalovaným systémem Octoprint. K našemu redakčnímu testu jsme dostali zapůjčený právě Karmen Pill. Aktuálně Karmen Pill uvádí mezi oficiálně podporovanými tiskárnami:
- Ender 3,5,6,7
- Prusa Mini
- Prusa MK2, S, 2.5, S, MK3, S, +
- Artillery Genius
- Anet A8, PLUS
- Kryal Cube
- FLSun Speed Racer
- Snapmaker A350
Ani naši vlastní tiskárnu Molestock s open source firmwarem Marlin ale nakonec nebyl problém k Pillu připojit.
zpět na začátek2. Vybalení Karmen Pill
V zásilce, kterou jsme od firmy Fragaria obdrželi, bylo několik Karmen Pill setů. Každý set obsahoval USB napájecí adaptér, několik USB kabelů a černou krabičku. V černé krabičce se nachází samotný červeno-bílý Karmen Pill a pomůcka pro zaostření kamerky na požadovanou vzdálenost (obr. 1). Právě tato pomůcka se ukázala jako důležitá. Prakticky ve všech případech bylo potřeba zaostření kamerky doladit. Na těle Karmen Pillu je mimo kamerku a osvětlovací RGB LED ještě na boku viditelný USB port, kterým se Pill připojuje k tiskárně a současně k napájecímu adaptétu (obr. 2).
zpět na začátek3. Připojení do wifi sítě
Připojení do počítačové sítě probíhá pouze pomocí wifi, žádný ethernet port na Pillu nenajdeme. Postup připojení je přehledně vysvětlený v manuálu. K připojení jsme museli použít vlastní USB kabel, protože při použití přiloženého kabelu s rozdvojkou naše počítače Pill „neviděly“.
Cvičně jsme zprovozňovali Pill na několika počítačích s operačním systémem MS Windows (v 8.1 a 10) a vždy bylo nutné doinstalovat ovladač. Naštěstí i tato skutečnost je zmíněna a následně vysvětlena v uživatelském návodu.
Nastavení připojení wifi sítě se provádí klasicky v internetovém prohlížeči USB kabelem připojeného počítače (obr. 3) na uvedené IP adrese http://169.254.13.1. Zde ale nastal problém. U nás ve škole je totiž nezbytné, aby se každý žák/učitel do wifi sítě autorizoval svým jménem a heslem (WPA2-Enterprise). Bohužel, tento typ autorizace Pill nepodporoval, a tak jsme se museli sbalit a přesunout se z gymnázia do Centra technického vzdělávání _Půda při Městské knihovně Polička, kde nám wifi síť umožnila Pill připojit. Naštěstí i zde máme dostatek 3D tiskáren, které můžeme s Pillem otestovat. Vzhledem k tomu, že řada škol je také připojena k síti Eduroam, nastane tam pravděpodobně stejný problém jako u nás, což je škoda, protože to Karmen Pill prakticky diskvalifikuje. Doufejme, že tento problém vývojáří z Fragarie brzy vyřeší.
Po uložení konfigurace wifi Pillu se nám zobrazí důležitý kód pro přidání naší „nové“ síťové tiskárny do Karmen Cloudu. Tento kód si zkopírujeme do schránky a za chvíli ho použijeme.
zpět na začátek4. Připojení k 3D tiskárně
Přiložený kabel s jednou USB rozdvojkou a USB prodlužovačkou slouží současně k napájení Pillu i ke komunikaci mezi Pillem a 3D tiskárnou. V našem uspořádání byly v jednom případě poněkud problematické spoje několika USB kabelů, k jejichž zafixování v poněkud „napružené“ pozici jsme nakonec použili kus izolepy, a tím došlo „zázračně“ k odstranění problémů s „vypadáváním“ komunikace mezi tiskárnou a Pillem. Zakončení USB kabelu na straně 3D tiskárny je typu B. V případě, že má vaše tiskárna jiný USB konektor, počítejte s nutností pořídit před instalací odpovídající kabel (v případě, že nakupujete přímo na webu výrobce, máte možnost zvolit si svou 3D tiskárnu, a pak by měl být přibalen i odpovídající USB kabel).
Zbývá nám ještě Pill nějakým způsobem uchytit k tiskárně. K dispozici je hned několik 3D tištěných držáků (obr. 4), odkazovaných přímo ze stránek s dokumentací Pillu. Využili jsme držák pro delta tiskárnu s hliníkovým profilem s drážkou 8 mm, čemuž odpovídá i naše delta – Molestock (obr. 5, obr. 6), a držák pro tiskárnu Průša i3 (obr. 7, obr. 8, obr. 9). V případě držáku k tiskárně Průša je držák uchycen pod vyhřívanou podložkou, takže zapomeňte na jeho tisk z materiálu PLA. Pro deltu se PLA použít dá.
zpět na začátek4.1 Problém s delta tiskárnou vyřešen
Jedna z našich tiskáren je delta tiskárna Molestock, a tím pádem vyžaduje jiné nastavení Octoprintu. Naštěstí je možné připojit se k Octoprintu zcela běžně s využitím IP adresy přidělené Pillu ve wifi síti. Tím pádem není problém Octoprint nakonfigurovat pro konkrétní tiskárnu tak, aby s ní korektně pracoval. Zarazilo nás, že přístup k Octoprintu nebyl chráněný heslem a případný všetečný žák by mohl pozměnit prakticky cokoli. Ale podle vyjádření autorů systému má již nová generace Pillu tento bezpečnostní problém vyřešen.
zpět na začátek5. Připojení do Karmen Cloudu
Lokálně máme vše nachystáno, takže můžeme přejít na vzdálenou stranu do Karmen Cloudu (link: https://next.katmen.tech). Registraci provedeme standardním způsobem přes svoji emailovou adresu. Po přihlášení vidíme jednoduché rozhraní s horním levým menu a v něm položky: Dashboard (Řídicí panel), Printers (Tiskárny) a G-codes (G-kódy) (obr. 10). Po rozkliknutí menu vpravo se dostaneme na položku Settings (Nastavení), která obsahuje dceřiné menu Account (Účet), Printers (Tiskárny), Workspaces (Pracovní prostory) a API tokens (API tokeny) (obr. 11). Naši tiskárnu přidáme na stránce Settings –> Printers a budeme k tomu potřebovat kód, který se nám zobrazil při připojování Pillu k wifi síti. Postup připojení do cloudu je opět přehledně popsán v manuálu.
zpět na začátek6. Poznáváme Carmen Cloud
Jak je patrné z předchozího odstavce, uživatelské rozhraní obsahuje jen pár položek a pro uživatele je vše důležité ihned po ruce. Co všechno nám tedy Karmen Cloud nabízí?
zpět na začátek6.1 Pracovní prostory
Základní organizační jednotkou je Pracovní prostor (Workspace). V rámci pracovního prostoru přidáváme jak jednotlivé uživatele (obr. 11, obr. 12), tak jednotlivé 3D tiskárny (obr. 13). Pracovních prostorů můžete mít více (obr. 14), a nabízí se tak třeba organizace 3D tiskáren podle toho, kde jsou umístěny a jak jsou žákům přístupné (např. Studovna, Chodba, Kabinet). Pokud má uživatel přístup do více Pracovních prostorů, má při přihlášení možnost volby (obr. 15). Následně je možné se mezi Pracovními prostory jednoduše přepínat z pravého horního menu. Nevýhodou je bohužel to, že soubor k tisku (gcode) nahraný do jednoho Pracovního prostoru nejde jednoduše zkopírovat do jiného Pracovního prostoru, který je uživateli také přístupný. Jde to sice obejít tím, že si gcode stáhneme a nahrajeme ho znovu do jiného pracovního prostoru, ale to není moc praktické. Vzhledem k tomu, že i položka horního levého menu G-codes, kde je přehledný seznam všech nahraných souborů k tisku, je vázána na pracovní prostor, zůstaneme nakonec pravděpodobně u jediného pracovního prostoru, minimálně pro žáky. Na stránce G-codes si můžeme jako administrátoři vytvořit stromovou strukturu Značek (Labels). Uživatelé si pak mohou odeslané soubory pomocí těchto značek třídit a případně je opětovně tisknout na některé z tiskáren, pro které byl tiskový soubor připraven. V případě více typů 3D tiskáren v Pracovním prostoru (což je náš případ) to pak může být pro některé uživatele poněkud nepřehledné. Z toho důvodu by měl v ideálním případě žákovský pracovní prostor obsahovat pouze jeden typ 3D tiskáren. Karmen Cloud pak pro nás může hrát i roli jakéhosi úložiště souborů připravených k tisku, což se ve škole vždy hodí.
zpět na začátek6.1.1 Uživatelské účty a práva
Jak již bylo řečeno, uživatele je možné přidávat právě v rámci konkrétního Pracovního prostoru. K dispozici jsou dvě uživatelské role: admin a user. Rozdíly v právech těchto dvou uživatelských rolí nejsou zcela zřejmé a manuál o nich zatím mlčí. I uživatel zařazený jako „user“ např. vidí soubory ostatních uživatelů a může je nejenom tisknout a stahovat, ale i mazat. Dokonce je mu umožněno přidávat nové uživatele (rozesílat pozvánky) a přidávat 3D tiskárny. Uživatel s rolí „user“ může také vytvářet nové Pracovní prostory, což je z pohledu správce jistě nežádoucí. Je ale možné, že jde pouze o dočasné chyby v systému.
Pro školní prostředí by se nám velmi hodila role typu „žák“, který by viděl pouze své tiskové soubory a nemohl zasahovat do nastavení tiskáren (takové vypnutí kamery správce jistě nepotěší). Předpokládáme, že systém uživatelských práv a rolí se s velkou pravděpodobností teprve „rodí“ a do budoucna se bude ještě zdokonalovat. Správce školních 3D tiskáren by např. jistě ocenil možnost importu uživatelů s využitím LDAP/ActiveDirectory, čímž by se eliminovala potřeba zadávat každého žáka ručně formou zaslání pozvánky.
zpět na začátek6.2 Tiskárny
Tiskárny se v rámci Pracovního prostoru zobrazují jak na stránce Tiskárny, tak v rámci Řídicího panelu (obr. 16). V případě připojení je vidět živý obraz přenášený z kamery. Na první pohled je tak patrné, co se s tiskárnou zrovna děje. Po přejití na stránku konkrétní tiskárny (obr. 17), která je „připojená“, vidíme další informace – záložka Info (teplota trysky, teplota podložky, název spuštěné tiskové úlohy, stav průběhu tisku, doba tisku). K dispozici je ještě záložka Controls (obr. 18), kde můžeme vzdáleně upravit některé parametry probíhající tiskové úlohy, případně tiskovou úlohu pozastavit či zrušit. Takové praktické funkce jistě potěší každého 3D tiskaře. Možnost zastavit nepovedený tisk kdykoli v průběhu dne je pro správce několika školních tiskáren skvělá funkce a může škole ušetřit značné množství filamentu.
V rámci každé tiskárny je k dispozici nejen fronta čekajících tiskových úloh (g-kódů), ale také historie vytištěných úloh. Viditelný je vždy i uživatel, který tiskovou úlohu odeslal. Seznamy bohužel není možné filtrovat. Správci by se hodilo např. zobrazit pouze úlohy určitého žáka.
Po zobrazení detailů konkrétní úlohy (g-kódu) je k dispozici několik dalších informací. Užitečné je datum a čas odeslání úlohy a velikost tiskového souboru. Pokud používáte systém pojmenování souborů obsahujících dobu tisku, můžete z názvu souboru vyčíst i předpokládanou dobu tisku. Skutečná doba tisku, popř. množství spotřebovaného materiálu se nezobrazuje, a to ani u vytištěných úloh. Chybí tu také možnost přiřazení Značek, která je dostupná pouze přes kontextové menu v seznamu s tiskovými úlohami.
zpět na začátek6.3 Nahrání tiskové úlohy
Přidání tiskové úlohy (neboli nahrání .gcode souboru) je možné několika způsoby. Jeden je přes stránku G-codes, která má vpravo nahoře tlačítko Upload G-code. Nahrání tiskové úlohy v tomto případě proběhne standardně přes webový prohlížeč (obr. 19). Druhá možnost je nastavení aplikace pro přípravu 3D tiskových dat (sliceru) tak, aby odeslala úlohu přímo na server. Postup, jak nastavit PrůšaSlicer, je podrobně popsaný v dokumentaci. Po správném nastavení se v PrůšaSliceru vedle tlačítka „Exportovat G-code“ objeví další malé tlačítko vpravo. Právě pomocí tohoto tlačítka můžeme odeslat soubor do Karmen Cloudu (obr. 20). I když je nastavení vícekrokové a každý žák si musí pod svým účtem v Karmen Cloudu vygenerovat svůj API klíč, jde o velice šikovnou funkci, kterou vřele doporučujeme. Podobně lze pracovat i s dalšími slicery, které mají funkci „Octoprint connect“ (např. pro slicer Cura je dostupné rozšíření).
zpět na začátek6.4 Spuštění tisku
Vlastní tisk je možné spustit z kontextového menu v seznamu tiskových úloh (g-kódů). Po volbě položky Print se zobrazí dialog výběru konkrétní tiskárny a pomocí tlačítka Start print se tisková úloha spustí (obr. 21). V tiskovém dialogu je nově k dispozici také možnost aktivovat v průběhu tisku záznam timelapse videa. Timelapse video je přitom vhodné nejen jako „pěkná podívaná“, ale může velmi dobře posloužit při hledání problému „havárie“ 3D tisku tvarově složitějších objektů. O dalších možnostech, které máme v průběhu tisku k dispozici, jsme se již zmiňovali v kapitole 6.2 (obr. 22, obr. 23, obr. 24).
zpět na začátek7. Shrnutí a tři přání
Z pohledu správy školních 3D tiskáren vidíme jako zásadní přínos řešení Karmen především v možnosti vizuálního dohledu nad tiskárnami a možnost zastavení nepovedeného tisku správcem. Pro někoho může být zajímavé i vzdálené spouštění tiskových úloh správcem a učiteli. Všechny žáky školy bychom však do Karmen Cloudu zatím pouštět příliš nedoporučovali. Vzhledem k omezenému nastavení oprávnění uživatelů je tato možnost vhodná spíše pro menší skupinu „zodpovědných“ žáků, např. 3D tisový kroužek apod.
V průběhu testování jsme se přesvědčili, že se systém Karmen stále vyvíjí, a věříme, že vývojáři si tento článek přečtou. Dovolíme si tak téměř nakonec přednést tři přání, která by Karmen Cloud více přiblížila reálným požadavků školního prostředí.
zpět na začátek7.1 Přání první
Bylo by skvělé mít v Karmen Cloudu možnost propojení s LDAP/ActiveDirectory. Všichni žáci i učitelé by tak snadno mohli mít své účty také v Karmen Cloudu. A kdyby se k tomu přidal systém propracovanějších oprávnění (např. „když se tiskne, žák nemůže cizí úlohu zastavit“, „když není tisková podložka prázdná, žák nemůže spustit další tisk“, „žák vidí jen své tiskové úlohy“, „žák vidí tiskové úlohy, které s ním někdo sdílí“, „žák nemůže přidávat/editovat/mazat pracovní prostory, tiskárny, uživatele“), dovolovalo by to vpustit do Karmen Cloudu všechny žáky bez větších obav, jak to nakonec dopadne.
zpět na začátek7.2 Přání druhé
Moc se nám zamlouvá stránka G-codes a podle nás by si zasloužila rozpracovat do podoby skutečné kategorizované knihovny předpřipravených 3D tiskových úloh, kde by uživatel primárně viděl pouze své úlohy a v nějakém režimu i úlohy sdílené (se stručným popisem, o co se jedná a k čemu je výtisk vhodný – např. „medaile s logem školy – sada 1., 2. a 3. místo“, „přívěšek, notička s logem školy – odměna účastníkům pěvecké soutěže“). Myslíme si, že by to mohlo v rámci školy pomoci šíření využívání technologie 3D tisku mezi těmi učiteli a žáky, kteří mají z 3D tisku tak trochu strach. Jak by to mohlo vypadat? Zkušenější žák/učitel může pomoci s 3D modelováním a přípravou 3D tisku pro ostatní žáky/učitele. Tiskovou úlohu pomůže připravit, vyzkouší ji a následně v Karmen Cloudu nasdílí tak, aby byla do budoucna kdykoli dostupná. Když si vzpomenu, jak řešíme na RepRap tiskárnách situace typu „víš, to je to, co se tisklo před rokem, a já to potřebuji rychle vytisknout znovu“… a přitom by stačilo jedno kliknutí v Karmen Cloudu.
zpět na začátek7.3 Přání třetí
S větším využíváním 3D tisku ve škole každého čeká větší a větší spotřeba 3D tiskových materiálů (filamentů). V určité chvíli se při pohledu do účetnictví zjistí, že by možná bylo vhodné začít odlišovat 3D tisk „školní“ a 3D tisk „osobní“. Jak to ale udělat? Jak zjistit, co se tiskne, kdo to tiskne a za jakým účelem? A tady by opět mohl pomoci Karme Cloud. Bylo by výborné, kdyby ke třem záložkám Dashboard, Printers a G-codes přibyla záložka Reports (Sestavy). Generování přehledných sestav s informacemi, kolik materiálu se „protisklo“ a jak to vypadá u jednotlivých uživatelů – nemají třeba nakonec spotřebu poloviny celkového objemu tiskového materiálu „na triku“ tři žáci(?) – to by bylo dalším velkým krokem kupředu. Jako třešnička na dortu by pak v rámci reportů mohl být přehled vytížení tiskáren (která tiskárna bude asi brzy potřebovat servis?) a evidence „špulek“ s filamenty.
Tři přání byla vyslovena a nezbývá, než počkat, jak to s nimi nakonec dopadne. Každopádně, již nyní je systém Karmen skvělým nástrojem pro každého správce vícero školních 3D tiskáren, třeba i napříč několika školami. Vždyť vizuální dohled nad všemi 3D tiskárnami na jednom místě je pro klid duše nejednoho správce k nezaplacení :-).
zpět na začátek8. Za kolik se to dá pořídit?
Na závěr jsme si nechali finance, tedy cenu. Karmen Pill pořídíte aktuálně za 4307 Kč přímo na stránkách výrobce. Pokud se trochu pohybujete v „Raspberry“ oblasti, možná vám to přijde docela drahé. Nebylo by lepší nakoupit si komponenty a všechno si to „postavit“ levněji? Ale vždyť klidně můžete! Pokud máte chuť, můžete jít „kutilskou“ cestou DIY, protože Karmen Cloud vám to umožňuje. Je k dispozici zdarma a je zdokumentováno, jak se se svým Octoprintem do cloudu připojit. Ale teď zpět ke Karmen Pillu. Jako učitel, který má na starosti správu devíti školních 3D tiskáren (ty domácí nepočítám), vidím hned několik výhod hotového řešení v podobě Karmen Pillu. Zásadní jsou pro mne především dvě věci. První věc je má časová úspora. Jednoduše nakoupím hotové řešení a za jedno odpoledne ho zprovozním na všech 3D tiskárnách ve škole. Druhá věc je podpora a záruka. Důležitý je pro mne fakt, že v případě jakýchkoli problémů se mohu obrátit na výrobce… Ano, je to poměrně drahé, ale z mého pohledu to rozhodně není nesmyslně předražené. Nesmíme také zapomenout, že pokud bychom do ceny započítali i Karmen Cloud (pro všechny vaše tiskárny, učitele, do budoucna třeba i studenty), který je sice momentálně zdarma, ale kdo ví, jak dlouho, rázem se cena stává více než vstřícnou a o nějaké „drahotě“ nemůže být ani řeč.
Za zapůjčení tří sad Karmen Pill děkujeme firmě Fragaria a přejeme hodně sil při dalším vývoji systému Karmen.
Autor: Tomáš Feltl a skupina testerů z řad studentů gymnázia v Poličce, Gymnázium Polička & Časopis e-Mole.cz & Centrum technického vzdělávání při Městské knihovně Polička, 1. 4. 2022
FELTL, Tomáš. Školní 3D tiskárny v síti pomocí Karmen Pill. e-Mole: časopis o výuce nejen s digitálními technologiemi [online]. 2022 (4/1). Vydáno: 1. 4. 2022. vyd. Tomáš Feltl – TFSoft, 2022. [cit. datum citování]. ISSN 2336-5714. Dostupné z: https://www.e-mole.cz/clanek/skolni-3d-tiskarny-v-siti-pomoci-karmen-pill