STL-filer: Alt du trenger å vite om dette formatet og dets alternativer

STL gjengi

Hvis du har kommet inn i 3D-utskriftsverdenen, har du sikkert sett forkortelsen STL på mer enn ett sted. Disse akronymene refererer til en type filformat (med filtypen .stl) som har vært veldig viktig, selv om det nå er noen alternativer. Og det er det, 3D-design kan ikke skrives ut som de er, som du godt vet, og de trenger noen mellomliggende trinn.

Når du har konseptet med en 3D-modell, må du bruke CAD-designprogramvare og generere gjengivelsen. Deretter kan den eksporteres til et STL-format og deretter sendes gjennom en slicer som "skjærer" den for å lage for eksempel en GCode som er forståelig av 3D-printer og slik at lagene kan lages til stykket er ferdig. Men ikke bekymre deg hvis du ikke helt forstår det, her vil vi forklare alt du trenger å vite.

3D-modellbehandling

Blender

Med konvensjonelle skrivere har du et program, for eksempel en PDF-leser, eller et tekstredigeringsprogram, et tekstbehandler osv., der det er en funksjon for utskrift som, når du trykker på det, vil dokumentet gå til utskriftskøen for det skrives ut. Men i 3D-skrivere er det litt mer komplekst, siden Tre kategorier programvare er nødvendig For å få det til å fungere:

  • 3D-modelleringsprogramvare: Dette kan være modellerings- eller CAD-verktøy for å lage modellen du vil skrive ut. Noen eksempler er:
    • TinkerCAD
    • Blender
    • BRL-CAD
    • Design Spark Mekanisk
    • FreeCAD
    • OpenSCAD
    • vinger 3d
    • Autodesk AutoCAD
    • Autodesk Fusion 360
    • Autodesk Inventor
    • 3D skråstrek
    • Sketchup
    • 3D MoI
    • Rhino3D
    • Cinema 4D
    • Solidworks
    • Maya
    • 3DS Maks
  • høvler: det er en type programvare som tar filen designet av et av de tidligere programmene og deler den opp, det vil si at den kutter den i lag. På denne måten kan det forstås av 3D-printeren, som, som du vet, bygger den lag for lag, og konverterer den til G-Code (et dominerende språk blant de fleste 3D-printerprodusenter). Disse filene inkluderer også tilleggsdata som utskriftshastighet, temperatur, laghøyde, hvis det er multi-ekstrudering, etc. I utgangspunktet et CAM-verktøy som genererer alle instruksjoner for at skriveren skal kunne lage modellen. Noen eksempler er:
    • Ultimaker Cure
    • Repeater
    • Forenkle3D
    • slic3r
    • KISSlicer
    • idémaker
    • Octo utskrift
    • 3DPrinterOS
  • Skriververt eller vertsprogramvare: i 3D-utskrift refererer det til et program hvis verktøy er å motta GCode-filen fra sliceren og levere koden til selve skriveren, vanligvis via en USB-port, eller via nettverk. På denne måten kan skriveren tolke denne «oppskriften» av GCode-kommandoer med X (0.00), Y (0.00) og Z (0.00) koordinatene som hodet må flyttes til for å lage objektet og de nødvendige parameterne. I mange tilfeller er vertsprogramvaren integrert i selve sliceren, så de er vanligvis et enkelt program (se eksempler på slicer).
Mens du i designprogramvaren har friheten til å velge den som passer deg, er dette ikke tilfellet for de to andre. 3D-skrivere støtter vanligvis bare én eller flere av dem, men de støtter ikke alle.

Disse to siste punktene de kommer vanligvis med selve 3D-printeren, som vanlige skriverdrivere. Derimot, design programvare Du må velge det separat.

Slicing: hva er en 3D-glidebryter

I forrige avsnitt har du lært mer om en glidebryter, det vil si programvaren som kutter 3D-modellen designet for å få de nødvendige lagene, dens former og dimensjoner slik at 3D-printeren vet hvordan den skal lages. Derimot, skjæreprosessen i 3D-utskrift det er ganske interessant og en grunnleggende fase i prosessen. Derfor kan du her få mer informasjon om det.

skive, skive 3D

El trinnvis skjæringsprosess varierer litt avhengig av 3D-utskriftsteknologien som brukes. Og i utgangspunktet kan du skille mellom:

  • FDM skjæring: I dette tilfellet er det nødvendig med presis kontroll av flere akser (X/Y), siden de beveger hodet i to akser og i stor grad krever bevegelse av skrivehodet for å bygge det tredimensjonale objektet. Den vil også inkludere parametere som dysetemperatur og kjøling. Når sliceren har generert GCode, vil algoritmene til den interne skriverdriveren være ansvarlig for å utføre de nødvendige kommandoene.
  • SLA-skjæring: I dette tilfellet må kommandoene også inkludere eksponeringstider og høydehastigheter. Og dette er fordi, i stedet for å avsette lag ved ekstrudering, må du rette lysstrålen til forskjellige deler av harpiksen for å størkne den og lage lag, samtidig som du hever objektet for å tillate at et nytt lag lages. . Denne teknikken krever færre bevegelser enn FDM, siden kun et reflekterende speil styres for å rette laseren. I tillegg må noe viktig fremheves, og det er at denne typen skrivere vanligvis ikke bruker GCode, men de har som regel sine egne proprietære koder (derfor trenger de sin egen skjære- eller slicer-programvare). Det er imidlertid noen generiske for SLA som ChiTuBox og FormWare, som er kompatible med mange 3D-skrivere av denne typen.
  • DLP- og MSLA-skjæring: I dette andre tilfellet vil det ligne på SLA, men med den forskjellen at den eneste bevegelsen som kreves i disse vil være byggeplaten, som vil bevege seg langs Z-aksen under prosessen. Den øvrige informasjonen vil være orientert mot utstillingspanelet eller skjermen.
  • Andre: For resten, som SLS, SLM, EBM, etc., kan det være merkbare forskjeller i utskriftsprosessene. Husk at i disse tre nevnte tilfellene er en annen variabel også lagt til, for eksempel injeksjon av bindemiddelet og krever en mer kompleks skjæreprosess. Og til det må vi legge til at et merkes SLS-skrivermodell ikke vil fungere på samme måte som konkurrentens SLS-skriver, så det kreves spesifikk kutteprogramvare (de er vanligvis proprietære programmer levert av produsenten selv).

Til slutt vil jeg legge til at det er et belgisk selskap som heter Materialiser deg som har skapt en kompleks programvare som fungerer i alle 3D-utskriftsteknologier og en kraftig driver for 3D-skrivere kalt Magics. Videre kan denne programvaren forbedres med moduler for å generere den passende kuttefilen for spesifikke maskiner.

STL filer

STL-fil

Inntil nå har det vært henvist til STL filer, som er kjernen i denne artikkelen. Imidlertid har dette populære formatet ennå ikke blitt studert i dybden. I denne delen vil du kunne kjenne det i dybden:

Hva er en STL-fil?

Formatet til STL-fil det er en fil med det 3D-skriverdriveren trenger, det vil si slik at skrivermaskinvaren kan skrive ut ønsket form, med andre ord lar den kode geometrien til overflaten til et tredimensjonalt objekt. Den ble laget av Chuck Hull fra 3D Systems på 80-tallet, og forkortelsen er ikke helt klar.

Den geometriske kodingen kan kodes med Tessellasjon, mellom de geometriske formene på en slik måte at det ikke er noen overlappinger eller mellomrom, det vil si som en mosaikk. For eksempel kan former komponeres ved hjelp av trekanter, slik tilfellet er med GPU-gjengivelse. En finmasket sammensatt av trekanter vil danne hele overflaten av 3D-modellen, med antall trekanter og koordinatene til deres 3 punkter.

Binær STL vs ASCII STL

Den skiller mellom STL i binært format og STL i ASCII-format. To måter å lagre og representere informasjonen til disse flisene og andre parametere på. EN Eksempel på ASCII-format ville:

solid <nombre>

facet normal nx ny nz
outer loop
vertex v1x v1y v1z
vertex v2x v2y v2z
vertex v3x v3y v3z
endloop
endfacet

endsolid <nombre>

Der «vertex» vil være de nødvendige punktene med sine respektive XYZ-koordinater. For eksempel å lage en sfærisk form, kan du bruke denne eksempel ASCII-kode.

Når en 3D-form er veldig kompleks eller stor, vil det bety å ha mange små trekanter, enda flere hvis oppløsningen er høyere, noe som vil gjøre trekantene mindre for å jevne ut figurene. Det genererer enorme ASCII STL-filer. For å komprimere det bruker vi STL-formater binære filer, for eksempel:

UINT8[80] – Header                               - 80 bytes o caracteres de cabecera
UINT32 – Nº de triángulos                    - 4 bytes
for each triangle                                        - 50 bytes
REAL32[3] – Normal vector                  - 12 bytes para el plano de la normal
REAL32[3] – Vertex 1                              - 12 bytes para el vector 1
REAL32[3] – Vertex 2                             - 12 bytes para el vector 2
REAL32[3] – Vertex 3                             - 12 bytes para el vector 3
UINT16 – Attribute byte count              - 2-bytes por triángulo (+2-bytes para información adicional en algunos software)
end

Hvis du ønsker, her har du en STLB-fil eller eksempel binær STL for å danne en enkel kube.

Til slutt, hvis du lurer på om er bedre en ASCII eller en binær, sannheten er at binærfiler alltid anbefales for 3D-utskrift på grunn av deres mindre størrelse. Men hvis du ønsker å inspisere koden og feilsøke den manuelt, har du ingen annen måte å gjøre det på enn å bruke ASCII og en redigering, da det er mer intuitivt å tolke.

Fordeler og ulemper med STL

STL-filer har sine fordeler og ulemper, som vanlig. Det er viktig at du kjenner dem for å finne ut om det er riktig format for prosjektet ditt, eller når du ikke bør bruke det:

  • Advantage:
    • A universelt og kompatibelt format med nesten alle 3D-skrivere, det er derfor den er så populær mot andre som VRML, AMF, 3MF, OBJ, etc.
    • Eier a modent økosystem, og det er enkelt å finne alt du trenger på Internett.
  • Ulemper:
    • Begrensninger på mengden informasjon du kan inkludere, da den ikke kan brukes til farger, fasetter eller andre ekstra metadata som inkluderer opphavsrett eller forfatterskap.
    • La troskap er et annet av dens svake punkter. Oppløsningen er ikke særlig god når du arbeider med skrivere med høy oppløsning (mikrometer), da antallet trekanter som trengs for å beskrive kurvene jevnt, vil være enormt.

Ikke alle STL-er er egnet for 3D-utskrift

Det ser ut til at enhver STL-fil kan brukes til å skrive ut i 3D, men sannheten er den ikke alle .stl kan skrives ut. Det er ganske enkelt en fil formatert for å inneholde geometriske data. For at de skal kunne skrives ut, må de ha detaljer om tykkelsene og andre nødvendige detaljer. Kort fortalt garanterer STL at modellen kan sees godt på PC-skjermen, men den geometriske figuren er kanskje ikke solid hvis den ble skrevet ut som den er.

Så prøv verifiser at STL (hvis du ikke har laget det selv) er gyldig for 3D-printing. Det vil spare deg for mye bortkastet tid og også bortkastet filament eller harpiks på feil modell.

Kontrovers

For å avslutte dette punktet, bør du vite at det er noen uenighet om hvorvidt denne filtypen skal brukes eller ikke. Selv om det fortsatt er mange som svermer rundt, anser noen allerede STL som døde sammenlignet med alternativene. Og noen av grunnene de gir for å unngå STL for 3D-design er:

  • dårlig oppløsning siden ved triangulering vil noe kvalitet gå tapt sammenlignet med CAD-modellen.
  • Farge og teksturer går tapt, noe som andre mer aktuelle formater allerede tillater.
  • Ingen polstringskontroll avanserte.
  • Andre filer er mer produktive når du redigerer eller gjennomgår dem enn en STL i tilfelle det er nødvendig med korrigering.

Programvare for .stl

CAD vs. STL

Noen av Vanlige spørsmål om filformatet STL de refererer vanligvis til hvordan dette formatet kan opprettes, eller hvordan det kan åpnes, og til og med hvordan det kan endres. Her er disse avklaringene:

Hvordan åpne en STL-fil

Hvis du lurer på hvordan åpne en STL-fil, kan du gjøre det på flere måter. En av dem er gjennom noen nettlesere, eller også med programvare installert på datamaskinen din. Her er noen av de beste alternativene:

Hvordan lage en STL-fil

Til lage STL-filer, du har også et godt repertoar av programvare for alle plattformer, og til og med online-alternativer som:

*Det finnes noen 3D-redigerings- og modelleringsapper for mobile enheter som AutoCAD Mobile, Morphi, OnShape, Prisma3D, Putty, Sculptura, Shapr3D, etc., selv om de ikke kan fungere med STL.

Hvordan redigere en STL-fil

I dette tilfellet tillater også programvaren den er i stand til å lage redigere en STL-fil, derfor, for å se programmer, kan du se forrige punkt.

Alternatives

3D-design, filformater

Litt etter litt har de dukket opp noen alternative formater for design for 3D-utskrift. Disse andre formatene er også svært viktige, og inkluderer:

Filer med denne typen språk har ikke bare én filtype, men kan presenteres i flere. Noen er .gcode, .mpt, .mpf, .nc osv.
  • PLY (polygon filformat): Disse filene har filtypen .ply og det er et format for polygoner eller trekanter. Den ble designet for å lagre tredimensjonale data fra 3D-skannere. Dette er en enkel geometrisk beskrivelse av et objekt, samt andre egenskaper som farge, transparens, overflatenormaler, teksturkoordinater, etc. Og, akkurat som STL, er det en ASCII og en binær versjon.
  • OBJ: Filer med filtypen .obj er også geometridefinisjonsfiler. De ble utviklet av Wavefront Technologies for programvare kalt Advanced Visualizer. Det er for tiden åpen kildekode og har blitt tatt i bruk av mange 3D-grafikkprogrammer. Den lagrer også enkel geometriinformasjon om et objekt, for eksempel plasseringen av hvert toppunkt, tekstur, normal osv. Ved å deklarere toppunktene mot klokken, trenger du ikke eksplisitt deklarere de normale ansiktene. Koordinater i dette formatet har heller ikke enheter, men de kan inneholde skalainformasjon.
  • 3MF (3D Manufacturing Format): Dette formatet er lagret i .3mf-filer, en åpen kildekodestandard utviklet av 3MF Consortium. Det geometriske dataformatet for additiv produksjon er basert på XML. Det kan inneholde informasjon om materialene, om fargen osv.
  • VRML (Virtual Reality Modeling Language): ble opprettet av Web3D Consortium. Disse filene har et format som har som mål å representere interaktive tredimensjonale scener eller objekter, samt overflatefarge osv. Og de er grunnlaget for X3D (eXtensible 3D Graphics).
  • AMF (Additive Manufacturing Format): Et filformat (.amf) som også er en åpen kildekodestandard for objektbeskrivelse for additive produksjonsprosesser for 3D-utskrift. Den er også basert på XML, og er kompatibel med enhver CAD-designprogramvare. Og den har kommet som etterfølgeren til STL, men med forbedringer som inkludert innfødt støtte for farger, materialer, mønstre og konstellasjoner.
  • WRL: VRML-utvidelse.

Hva er GCode?

GCode eksempel

Kilde: https://www.researchgate.net/figure/An-example-of-the-main-body-in-G-code_fig4_327760995

Vi har snakket mye om programmeringsspråket GCode, siden det er en sentral del av 3D-utskriftsprosessen i dag, og går fra STL-design til en G-kode som er en fil med instruksjoner og kontrollparametere til 3D-printeren. En konvertering som utføres automatisk av slicer-programvaren.

Vi vil se mer om disse kodene i artiklene om CNC, siden en 3D-skriver ikke er noe mer enn en CNC-type maskin som skriver ut...

Denne koden har kommandør, som forteller skriveren hvordan og hvor materialet skal ekstruderes for å få delen, av typen:

  • G: Disse kodene er universelt forstått av alle skrivere som bruker G-koder.
  • M: Dette er spesifikke koder for visse serier med 3D-skrivere.
  • Annet: det er også andre innfødte koder for andre maskiner, for eksempel funksjonene F, T, H, etc.
Du kan se eksempler på G-koder og de grafiske resultatene denne linken.

Som du kan se i det forrige bildet av eksemplet, en serie med linjer med kode som ikke er mer enn koordinater og andre parametere for å fortelle 3D-printeren hva den skal gjøre, som om det var en oppskrift:

  • X OG Z: er koordinatene til de tre trykkeaksene, det vil si hva ekstruderen må bevege seg i en eller annen retning, med origokoordinatene 0,0,0. For eksempel, hvis det er et tall som er større enn 0 i X, vil det flytte til den koordinaten i bredderetningen til 3D-skriveren. Mens hvis det er et tall over 0 i Y, vil hodet bevege seg utover og i retning av utskriftssonen. Til slutt vil enhver verdi større enn 0 i Z føre til at den ruller til den spesifiserte koordinaten fra bunn til topp. Det vil si at med hensyn til stykket kan det sies at X vil være bredden, Y dybden eller lengden og Z høyden.
  • F: vil indikere hastigheten som skrivehodet beveger seg med, angitt i mm/min.
  • E: refererer til lengden på ekstruderingen i millimeter.
  • ;: all teksten som er innledet med ; det er en kommentar og skriveren ignorerer den.
  • G28: Det utføres vanligvis i begynnelsen slik at hodet beveger seg til stoppestedene. Hvis ingen akser er spesifisert, vil skriveren flytte alle 3, men hvis en spesifikk en er spesifisert, vil den bare bruke den på den.
  • G1: Det er en av de mest populære G-kommandoene, siden det er den som beordrer 3D-skriveren til å deponere materiale mens den beveger seg lineært til den markerte koordinaten (X,Y). For eksempel indikerer G1 X1.0 Y3.5 F7200 å avsette materiale langs området merket med koordinatene 1.0 og 3.5, og med en hastighet på 7200 mm/min, det vil si ved 120 mm/s.
  • G0: gjør det samme som G1, men uten ekstruderingsmateriale, det vil si at den beveger hodet uten å avsette materiale, for de bevegelsene eller områdene der ingenting skal avsettes.
  • G92: ber skriveren angi gjeldende posisjon for aksene, noe som er nyttig når du vil endre plasseringen av aksene. Veldig brukt rett i begynnelsen av hvert lag eller i tilbaketrekkingen.
  • M104 XNUMX: kommando for å varme ekstruderen. Den brukes i begynnelsen. For eksempel, M104 S180 T0 ville indikere at ekstruderen T0 varmes opp (hvis det er en dobbel dyse vil det være T0 og T1), mens S bestemmer temperaturen, i dette tilfellet 180ºC.
  • M109 XNUMX: lik ovenfor, men indikerer at utskriften bør vente til ekstruderen er opp til temperatur før du fortsetter med andre kommandoer.
  • M140 og M190: ligner på de to foregående, men de har ikke en parameter T, siden det i dette tilfellet refererer til sengens temperatur.

Selvfølgelig fungerer denne G-koden for skrivere av typen FDM, siden harpiksene vil trenge andre parametere, men med dette eksemplet er det nok for deg å forstå hvordan det fungerer.

Konverteringer: STL til...

STL-filkonvertering

Til slutt, en annen av tingene som skaper mest tvil blant brukere, gitt antall forskjellige formater som finnes, og legger til de av 3D CAD-design, og kodene som genereres av de forskjellige slicerne, er hvordan man konverterer fra ett til et annet. Her har du noen av de mest ettersøkte konverteringene:

Hvis du gjør et Google-søk, vil du se at det er mange online konverteringstjenester, som AnyConv eller MakeXYZ, som kan konvertere nesten alle formater, selv om ikke alle fungerer bra, og ikke alle er gratis.
  • Konverter fra STL til GCode: Den kan konverteres med slicing-programvare, siden det er et av målene.
  • Gå fra STL til Solidworks: kan gjøres med Solidworks selv. Åpent > i filutforsker endre til format STL (*.stl) > Alternativer > endre importere som a solid kropp o solid overflate > aksepterer > bla gjennom og klikk på STL-en du vil importere > Åpent > nå kan du se den åpne modellen og funksjonstreet til venstre > Importert > FeatureWorks > Gjenkjenne funksjoner > og det ville være klart.
  • Konverter et bilde til STL eller JPG/PNG/SVG til STL: Du kan bruke nettjenester som Imagetostl, Selva3D, Smoothie-3D, etc, eller bruke noen AI-verktøy, og til og med programvare som Blender etc, for å generere en 3D-modell fra bildet og deretter eksportere til STL.
  • Konverter fra DWG til STL: Det er en CAD-fil, og mange CAD-designprogramvare kan brukes til å gjøre konverteringen. For eksempel:
    • AutoCAD: Utdata > Send > Eksporter > skriv inn filnavnet > velg type Litografi (*.stl) > Lagre.
    • SolidWorks: Fil > Lagre som > Lagre som STL > Alternativer > Oppløsning > Fin > OK > Lagre.
  • Fra OBJ til STL: Både online konverteringstjenester kan brukes, så vel som noen lokale programvareverktøy. For eksempel, med Spin3D kan du gjøre følgende: Legg til filer > Åpne > velg en målmappe i Lagre i mappe > Velg utdataformat > stl > trykk på Konverter-knappen og vent til prosessen er ferdig.
  • Gå fra Sketchup til STL: Du kan gjøre det med Sketchup selv på en enkel måte, siden den har både import- og eksportfunksjoner. I dette tilfellet må du eksportere ved å følge trinnene når du har Sketchup-filen åpen: Fil > Eksporter > 3D-modell > velg hvor du vil lagre STL > Lagre som STereolitografifil (.stl) > Eksporter.

mer informasjon


2 kommentarer, legg igjen dine

Legg igjen kommentaren

Din e-postadresse vil ikke bli publisert. Obligatoriske felt er merket med *

*

*

  1. Ansvarlig for dataene: Miguel Ángel Gatón
  2. Formålet med dataene: Kontroller SPAM, kommentaradministrasjon.
  3. Legitimering: Ditt samtykke
  4. Kommunikasjon av dataene: Dataene vil ikke bli kommunisert til tredjeparter bortsett fra ved juridisk forpliktelse.
  5. Datalagring: Database vert for Occentus Networks (EU)
  6. Rettigheter: Når som helst kan du begrense, gjenopprette og slette informasjonen din.

  1.   Rubén sa

    Veldig godt forklart og veldig tydelig.
    Takk for syntesen.

    1.    Isaac sa

      Tusen takk!