abonneren

Alles over het stl-file voor 3D-printen

3D-printen
Hoewel de 3D-printer voor thuis niet de ooit verwachte grote doorbraak heeft gekend, blijft het een opmerkelijk apparaat. Je downloadt een bestand van internet, waarna de 3D-printer dit ontwerp laagje voor laagje opbouwt tot een echt voorwerp. Dergelijke 3D-modellen download je doorgaans in een stl-bestand of stl-file, voordat je kunt 3D-printen. Hoe zit dat precies?

Wanneer je op zoek bent naar een object om te printen, dan kun je 3D-modellen op diverse plekken downloaden. Een bekende site met 3D-modellen is Thingiverse van 3D-printerfabrikant MakerBot Industries. Er zijn verschillende bestandsformaten om 3D-modellen te delen, maar het populairste bestandsformaat voor 3D-printers is stl.

Hoewel 3D-printen wellicht iets van de laatste jaren lijkt, is het stl-bestandsformaat al in 1987 uitgevonden door 3D Systems voor hun eerste commerciële 3D-printer SLA-1. Deze printer maakt gebruik van stereolithografie, waarbij een uv-laserstraal laagje voor laagje een kunsthars verhard en zo een 3D-model opbouwt. De meeste 3D-printers voor thuisgebruik maken gebruik van Fused Deposition Modeling (FDM) waarbij een verplaatsbare spuitmond het model laagje voor laagje met gesmolten kunststof opbouwt.

Het is niet bekend waar stl precies voor staat, maar waarschijnlijk is het een afkorting van het woord stereolithography. Een andere betekenis zou Standard Tessellation Language kunnen zijn.

Tesselatie

Dat stl volgens sommigen voor Standard Tessellation Language staat, is niet voor niets. want voor de opbouw van een model wordt in een stl-file gebruikgemaakt van tesselatie. Tesselatie (oftewel betegeling) betekent dat een oppervlak wordt verdeeld in aaneensluitende vormen, ‘tegels’. In het geval van stl worden driehoeken gebruikt, dit wordt ook wel triangulatie genoemd.

De buitenkant van een 3D-model is in een stl-bestand dus opgebouwd uit driehoekjes. In het stl bestand worden de coördinaten van de hoekpunten van de driehokjes opgeslagen. Met driehoekjes kun je uiteraard niet iedere vorm perfect opbouwen, een bol laat zich bijvoorbeeld nooit vloeiend verdelen in driehoekjes. Een stl-bestand is dan ook een benadering van een 3D-model.

3D-printen

Hierbij geldt dat hoe meer driehoekjes er gebruikt worden, hoe beter de vorm van bijvoorbeeld een bol benaderd kan worden. Daar staat tegenover dat meer driehoekjes ook een groter bestand betekent en dat 3D-printers zelf maar een beperkt oplossend vermogen hebben.

Er moet dus een juiste balans gevonden worden tussen de resolutie en bestandsgrootte. Een te lage resolutie zorgt voor duidelijk zichtbare driehoeken in het model, terwijl een te hoge resolutie geen zin heeft omdat de 3D-printer zelf ook maar een beperkte resolutie heeft.

Van stl naar 3D-model

Doorgaans wordt een stl-bestand gemaakt door een 3D-model dat is ontworpen in 3D-modeleringssoftware te exporteren naar een stl-bestand. Omdat stl een oud en veelgebruikt bestandsformaat is, biedt vrijwel alle 3D-modeleringssosftware biedt ondersteuning voor stl.

Tijdens de export kan de tolerantie ingesteld worden, die bepaalt wat de maximale afstand is tussen het oppervlak van het originele 3D-model en de variant in het stl-bestand. Om weer het voorbeeld van die bol te nemen: een bol opgebouwd uit driehoekjes is nooit perfect rond, dus er zal altijd wat ruimte zitten tussen het originele model en het model dat opgebouwd is uit driehoekjes.

Over het algemeen wordt aangeraden om de tolerantie op één twintigste van de laagdikte van de 3D-printer in te stellen. Bij een laagdikte van 0,2 mm wordt dan dus een tolerantie van 0,01 mm ingesteld. Daarnaast kan ook de hoek die de tegels ten opzichte van elkaar hebben ingesteld worden.

Hierbij zorgt een lagere hoek voor een betere benadering van een model, maar ook voor een groter bestand. Het hangt af van de software die je gebruikt wat je precies kunt instellen voor de export naar stl. Voor de meeste software kun je de aangeraden instellingen opzoeken. Niet ieder stl-file is geschikt voor een 3D-printer, het model moet bijvoorbeeld gesloten zijn om te kunnen printen.

Slicen

Een stl-bestand is maar het halve verhaal om een driedimensionale afdruk met een 3D-printer op basis van een stl-bestand te maken. Het stl-model is eigenlijk alleen het uiterlijk, je hebt aanvullende software nodig om het model om te zetten naar een formaat dat echt door de 3D-printer ondersteund wordt. Dergelijke software wordt een slicer genoemd.

Een voorbeeld van dergelijke software is Ultimaker Cura, dat behalve voor printers van Ultimaker ook geschikt is voor sommige andere 3D-printers. De slicer opent het stl-bestand, waarna er een groot aantal eigenschappen ingesteld kan worden die samen de kwaliteit van de afdruk bepalen. Het belangrijkste is dat het model wordt opgedeeld in laagjes, bijvoorbeeld laagjes van 0,2 mm dik. Je kunt de laagdikte zelf bepalen in de instellingen van de gebruikte slicersoftware.

3D-printen

Hoe dunner deze laagjes zijn, hoe beter de kwaliteit van de afdruk zal zijn. Een hogere kwaliteit leidt uiteraard tot een langere afdruktijd. In de slicersoftware kan ook ingesteld worden of een model hol of opgevuld moet worden afgedrukt, en met welk percentage er dan moet worden opgevuld.

Als opvulling wordt aan de binnenkant van het model dan een ruitjespatroon gebruikt. Opvulling maakt het model sterker, maar gebruikt uiteraard ook veel meer kunststof. Ook kan de slicersoftware steunen aan je model toevoegen die het model ondersteunen tijdens het printen. Heb je een model met te veel overhang, dat stort het zonder steunen in tijdens het printen.

Is alles naar wens ingesteld in de slicersoftware, dan worden de instructies opgeslagen in een GCode-bestand dat naar de printer gestuurd wordt.

Verschil tussen 3mf- en amf- en stl-file

Omdat stl al meer dan dertig jaar geleden is uitgevonden, is het niet gek dat het inmiddels veel beperkingen heeft. Zo bevat een stl-bestand alleen een beschrijving van de buitenkant van een 3D-model. Zaken als kleur, materiaal of textuur kunnen in een stl-bestand niet opgeslagen worden. Toen stl werd uitgevonden in 1987, was dat ook niet noodzakelijk; 3D-printen was net uitgevonden en afdrukken konden met slechts één materiaal tegelijkertijd gemaakt worden.

Overigens is het in de binaire variant van stl in combinatie met bepaalde software wel mogelijk om kleurinformatie op te slaan, maar hierbij is van standaardisering geen sprake. Nu is het gebrek aan kleur bij de huidige 3D-printers voor thuis die doorgaans werken met één kleur kunststof uiteraard geen heel groot probleem, maar de ontwikkelingen op het gebied van 3D-printers gaan natuurlijk door.

Een andere beperking van stl is dat metadata als de auteursnaam niet in het bestand opgeslagen kunnen worden. Er zijn diverse bestandsformaten die de beperkingen van stl (deels) opheffen, maar doorgaans zijn dat eigen bestandsformaten die niet universeel ondersteund worden.

Een poging tot een universeel formaat is het Additive Manufacturing File Format (amf), dat zijn ontwikkeling begon als stl 2.0 en in 2011 is vastgesteld. De standaard wordt beheerd door standaardenorganisaties ISO en ASTM. Amf gebruikt xml als opbouw voor het bestand en ondersteunt in tegenstelling tot stl kleur, materiaal, textuur en metadata. Ook nieuw is ondersteuning voor gebogen driehoeken, zodat ronde vormen efficiënter beschreven kunnen worden.

In de vorm van 3D Manufacturing Format (3mf), dat werd vastgesteld in 2015, is er nog een bestandsformaat dat de opvolger van stl wil worden. 3mf is geïnitieerd door Microsoft, maar ook andere bedrijven als 3D Systems, UltiMaker, Siemens, AutoDesk en HP zijn lid van het 3MF Consortium. Net als amf is 3mf gebaseerd op xml. Ook 3mf kan informatie over materiaal, kleur en textuur opslaan. Windows 10 heeft ingebouwde ondersteuning voor 3mf. Het is vooralsnog onduidelijk welke van deze twee formaten dé opvolger van stl wordt, maar vooralsnog heeft 3mf de grootste kans.

Geschreven door: Jeroen Boer op

Category: Expert, Overig

Tags: 3d, Standaard, Printen, stl-file