STL-filer: Alt hvad du behøver at vide om dette format og dets alternativer

STL render

Hvis du er kommet ind i 3D-printverdenen, har du helt sikkert set forkortelsen STL mere end ét sted. Disse akronymer refererer til en type filformat (med endelsen .stl) hvilket har været meget vigtigt, selvom der nu er nogle alternativer. Og det er, at 3D-design ikke kan udskrives, som de er, som du godt ved, og de har brug for nogle mellemliggende trin.

Når du har konceptet med en 3D-model, skal du bruge CAD-designsoftware og generere gengivelsen. Derefter kan den eksporteres til et STL-format og derefter føres gennem en slicer, der "slicer" den for at skabe f.eks. en GCode, der er forståeligt af 3D-printer og så lagene kan skabes indtil stykket er færdigt. Men bare rolig, hvis du ikke helt forstår det, her vil vi forklare alt, hvad du behøver at vide.

3D-modelbehandling

Blender

Med konventionelle printere har du et program, såsom en PDF-læser, eller et tekstredigeringsprogram, et tekstbehandlingsprogram osv., hvori der er en funktion til udskrivning, som ved tryk på dokumentet vil gå til printkøen for at det kan blive udskrevet. Men i 3D-printere er det lidt mere komplekst, da Der kræves 3 kategorier af software For at få det til at fungere:

  • 3D-modelleringssoftware: Disse kan være modellerings- eller CAD-værktøjer til at skabe den model, du vil udskrive. Nogle eksempler er:
    • TinkerCAD
    • Blender
    • BRL-CAD
    • Design Spark Mekanisk
    • FreeCAD
    • OpenSCAD
    • vinger 3d
    • Autodesk AutoCAD
    • Autodesk Fusion 360
    • Autodesk Inventor
    • 3D-skråstreg
    • Sketchup
    • 3D MoI
    • Rhino3D
    • Cinema 4D
    • SolidWorks
    • Maya
    • 3DS Maks
  • skæremaskiner: det er en type software, der tager filen designet af et af de tidligere programmer og opskærer den, det vil sige, den skærer den i lag. På den måde kan det forstås af 3D-printeren, der som bekendt bygger den lag for lag, og konverterer den til G-Code (et fremherskende sprog blandt de fleste 3D-printerproducenter). Disse filer inkluderer også yderligere data såsom printhastighed, temperatur, laghøjde, hvis der er multiekstrudering osv. Grundlæggende et CAM-værktøj, der genererer alle instruktionerne til printeren for at kunne lave modellen. Nogle eksempler er:
    • Ultimaker Cure
    • Repeater
    • Forenkle3D
    • slic3r
    • KISSlicer
    • idémager
    • Octo print
    • 3DPrinterOS
  • Printerværts- eller værtssoftware: i 3D-print refererer det til et program, hvis nytte er at modtage GCode-filen fra sliceren og levere koden til selve printeren, normalt via en USB-port eller via netværk. På denne måde kan printeren fortolke denne «opskrift» af GCode-kommandoer med X (0.00), Y (0.00) og Z (0.00) koordinater, som hovedet skal flyttes til for at skabe objektet og de nødvendige parametre. I mange tilfælde er værtssoftwaren integreret i selve sliceren, så de er normalt et enkelt program (se eksempler på Slicers).
Mens du i designsoftwaren har friheden til at vælge den, der passer dig, er dette ikke tilfældet for de to andre. 3D-printere understøtter normalt kun én eller flere af dem, men de understøtter ikke dem alle.

Disse to sidste punkter de kommer normalt med selve 3D-printeren, ligesom konventionelle printerdrivere. Imidlertid, design software Du bliver nødt til at vælge det separat.

Udskæring: hvad er en 3D-skyder

I det foregående afsnit har du lært mere om en skyder, det vil sige softwaren, der skærer 3D-modellen designet til at opnå de nødvendige lag, dens former og dimensioner, så 3D-printeren ved, hvordan den skal skabes. Imidlertid, udskæringsprocessen i 3D-print det er ret interessant og en grundlæggende fase i processen. Derfor kan du her få mere information om det.

skive, skive 3D

El trin for trin udskæringsproces afviger lidt afhængigt af den anvendte 3D-printteknologi. Og grundlæggende kan du skelne mellem:

  • FDM udskæring: I dette tilfælde er der behov for præcis kontrol af flere akser (X/Y), da de bevæger hovedet i to akser og i høj grad kræver bevægelse af printhovedet for at bygge det tredimensionelle objekt. Det vil også omfatte parametre som dysetemperatur og køling. Når sliceren har genereret GCode, vil den interne printerdrivers algoritmer være ansvarlige for at udføre de nødvendige kommandoer.
  • SLA udskæring: I dette tilfælde skal kommandoerne også inkludere eksponeringstiderne og højdehastighederne. Og det er fordi, i stedet for at afsætte lag ved ekstrudering, skal du rette lysstrålen til forskellige dele af harpiksen for at størkne den og skabe lag, mens du hæver objektet for at tillade, at der kan skabes endnu et nyt lag. . Denne teknik kræver færre bevægelser end FDM, da kun et reflekterende spejl styres til at dirigere laseren. Derudover skal der fremhæves noget vigtigt, og det er, at disse typer printere normalt ikke bruger GCode, men derimod har de som regel deres egne proprietære koder (derfor har de brug for deres egen cutting- eller slicer-software). Der er dog nogle generiske for SLA såsom ChiTuBox og FormWare, som er kompatible med mange 3D-printere af denne type.
  • DLP og MSLA udskæring: I dette andet tilfælde vil det ligne SLA, men med den forskel, at den eneste bevægelse, der kræves i disse, vil være byggepladen, som vil bevæge sig langs Z-aksen under processen. De øvrige oplysninger vil være orienteret til udstillingspanelet eller skærmen.
  • Andet: For resten, såsom SLS, SLM, EBM osv., kan der være mærkbare forskelle i printprocesserne. Husk, at der i disse tre nævnte tilfælde også tilføjes en anden variabel, såsom indsprøjtning af bindemidlet og kræver en mere kompleks udskæringsproces. Og dertil skal vi tilføje, at et mærkes SLS-printermodel ikke vil fungere på samme måde som konkurrenternes SLS-printer, så der kræves specifik skæresoftware (de er normalt proprietære programmer leveret af producenten selv).

Til sidst vil jeg tilføje, at der er et belgisk firma, der hedder Materialise der har skabt en kompleks software, der fungerer i alle 3D-printteknologier og en kraftfuld driver til 3D-printere kaldet Magics. Desuden kan denne software udvides med moduler for at generere den passende skærefil til specifikke maskiner.

STL filer

STL-fil

Indtil nu er der henvist til STL filer, som er kernen i denne artikel. Dette populære format er dog endnu ikke blevet undersøgt i dybden. I dette afsnit vil du være i stand til at kende det i dybden:

Hvad er en STL-fil?

Formatet af STL-fil det er en fil med det, 3D-printerdriveren har brug for, altså for at printerhardwaren kan printe den ønskede form, med andre ord giver den mulighed for at indkode geometrien af ​​overfladen af ​​et tredimensionelt objekt. Det blev skabt af Chuck Hull fra 3D Systems i 80'erne, og akronymet er ikke helt klart.

Den geometriske kodning kan kodes ved Tesselation, indskudt de geometriske former på en sådan måde, at der ikke er nogen overlapninger eller mellemrum, det vil sige som en mosaik. For eksempel kan figurer komponeres ved hjælp af trekanter, som det er tilfældet med GPU-gengivelse. Et fint net sammensat af trekanter vil danne hele overfladen af ​​3D-modellen med antallet af trekanter og koordinaterne for deres 3 punkter.

Binær STL vs ASCII STL

Den skelner mellem STL i binært format og STL i ASCII-format. To måder at gemme og repræsentere oplysningerne om disse fliser og andre parametre 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>

Hvor «vertex» vil være de nødvendige punkter med deres respektive XYZ-koordinater. For eksempel at skabe en sfærisk form, kan du bruge dette eksempel ASCII-kode.

Når en 3D-form er meget kompleks eller stor, vil det betyde at have mange små trekanter, endnu flere, hvis opløsningen er højere, hvilket vil gøre trekanterne mindre for at udglatte formerne. Det genererer enorme ASCII STL-filer. For at komprimere det bruger vi STL formater binære filer, såsom:

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 til form en simpel terning.

Til sidst, hvis du spekulerer på om er bedre en ASCII eller en binær, sandheden er, at binære filer altid anbefales til 3D-print på grund af deres mindre størrelse. Men hvis du vil inspicere koden og debugge den manuelt, så har du ingen anden måde at gøre det på end at bruge ASCII og en redigering, da det er mere intuitivt at fortolke.

Fordele og ulemper ved STL

STL-filer har deres fordele og ulemper, som normalt. Det er vigtigt, at du kender dem for at afgøre, om det er det rigtige format til dit projekt, eller hvornår du ikke bør bruge det:

  • Advantage:
    • Det er en universelt og kompatibelt format med næsten alle 3D-printere, det er derfor, det er så populært mod andre som VRML, AMF, 3MF, OBJ osv.
    • Ejer a modent økosystem, og det er nemt at finde alt, hvad du har brug for på internettet.
  • Ulemper:
    • Begrænsninger for mængden af ​​information, du kan inkludere, da det ikke kan bruges til farver, facetter eller andre yderligere metadata, der inkluderer ophavsret eller forfatterskab.
    • La troskab er en anden af ​​dens svage punkter. Opløsningen er ikke særlig god, når du arbejder med højopløsningsprintere (mikrometer), da antallet af trekanter, der skal til for at beskrive kurverne jævnt, ville være enormt.

Ikke alle STL'er er velegnede til 3D-print

Det ser ud til, at enhver STL-fil kan bruges til at udskrive i 3D, men sandheden er den ikke alle .stl kan udskrives. Det er simpelthen en fil, der er formateret til at indeholde geometriske data. For at de kan udskrives, skal de have detaljer om tykkelsen og andre nødvendige detaljer. Kort sagt garanterer STL, at modellen godt kan ses på pc-skærmen, men den geometriske figur er muligvis ikke solid, hvis den blev udskrevet som den er.

Så prøv verificere, at STL (hvis du ikke selv har lavet det) er gyldigt til 3D-print. Det vil spare dig for en masse spildtid og også spildt filament eller harpiks på den forkerte model.

kontrovers

For at afslutte dette punkt, bør du vide, at der er nogle uenighed om, hvorvidt denne filtype skal bruges eller ej. Selvom der stadig er mange, der myldrer rundt, betragter nogle allerede STL'erne som døde sammenlignet med alternativerne. Og nogle af grundene, de giver til at undgå STL til 3D-design, er:

  • dårlig opløsning da der ved triangulering vil noget kvalitet gå tabt sammenlignet med CAD-modellen.
  • Farve og teksturer går tabt, noget som andre mere aktuelle formater allerede tillader.
  • Ingen polstringskontrol fremskreden.
  • Andre filer er mere produktive ved redigering eller gennemgang af dem end en STL i tilfælde af, at en berigtigelse er nødvendig.

Software til .stl

CAD vs. STL

Nogle af de Ofte stillede spørgsmål om filformatet STL de refererer normalt til, hvordan dette format kan oprettes, eller hvordan det kan åbnes, og endda hvordan det kan ændres. Her er disse præciseringer:

Hvordan man åbner en STL fil

Hvis du spekulerer på hvordan åbne en STL-fil, du kan gøre det på flere måder. En af dem er gennem nogle online seere, eller også med software installeret på din computer. Her er nogle af de bedste muligheder:

Sådan opretter du en STL-fil

til oprette STL-filer, du har også et godt repertoire af software til alle platforme, og endda online muligheder som:

*Der er nogle 3D-redigerings- og modelleringsapps til mobile enheder såsom AutoCAD Mobile, Morphi, OnShape, Prisma3D, Putty, Sculptura, Shapr3D osv., selvom de ikke kan fungere med STL.

Sådan redigeres en STL-fil

I dette tilfælde tillader den software, den er i stand til at skabe, også redigere en STL-fil, derfor kan du se det foregående punkt for at se programmer.

Alternativas

3D-design, filformater

Lidt efter lidt er de dukket op nogle alternative formater til design til 3D-print. Disse andre formater er også meget vigtige og inkluderer:

Filer med denne type sprog har ikke kun én udvidelse, men kan præsenteres i flere. Nogle er .gcode, .mpt, .mpf, .nc osv.
  • PLY (Polygon filformat): Disse filer har filtypenavnet .ply, og det er et format til polygoner eller trekanter. Den er designet til at gemme tredimensionelle data fra 3D-scannere. Dette er en simpel geometrisk beskrivelse af et objekt, samt andre egenskaber som farve, gennemsigtighed, overfladenormaler, teksturkoordinater osv. Og ligesom STL er der en ASCII og en binær version.
  • OBJ: Filer med filtypenavnet .obj er også geometridefinitionsfiler. De blev udviklet af Wavefront Technologies til software kaldet Advanced Visualizer. Det er i øjeblikket open source og er blevet adopteret af mange 3D-grafikprogrammer. Den gemmer også simple geometrioplysninger om et objekt, såsom positionen af ​​hvert toppunkt, tekstur, normal osv. Ved at erklære hjørnerne mod uret, behøver du ikke eksplicit at angive de normale ansigter. Koordinater i dette format har heller ikke enheder, men de kan indeholde skalainformation.
  • 3MF (3D Manufacturing Format): Dette format er gemt i .3mf-filer, en open source-standard udviklet af 3MF Consortium. Det geometriske dataformat for additiv fremstilling er baseret på XML. Det kan indeholde oplysninger om materialerne, om farven osv.
  • VRML (Virtual Reality Modeling Language): blev oprettet af Web3D Consortium. Disse filer har et format, hvis formål er at repræsentere interaktive tredimensionelle scener eller objekter samt overfladefarve osv. Og de er grundlaget for X3D (eXtensible 3D Graphics).
  • AMF (Additive Manufacturing Format): Et filformat (.amf), der også er en open source-standard for objektbeskrivelse til additive fremstillingsprocesser til 3D-print. Den er også baseret på XML og er kompatibel med enhver CAD-designsoftware. Og det er ankommet som efterfølgeren til STL, men med forbedringer som f.eks. indbygget understøttelse af farver, materialer, mønstre og konstellationer.
  • WRL: VRML-udvidelse.

Hvad er GCode?

GCode eksempel

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

Vi har talt meget om programmeringssproget GCode, da det er en central del af 3D-printprocessen i dag, der går fra STL-design til en G-kode, som er en fil med instruktioner og kontrolparametre for 3D-printeren. En konvertering, der udføres automatisk af slicer-softwaren.

Vi vil se mere om disse koder i artiklerne om CNC, da en 3D-printer ikke er andet end en CNC-type maskine, der printer...

Denne kode har kommandoer, der fortæller printeren, hvordan og hvor materialet skal ekstruderes for at få delen, af typen:

  • G: Disse koder er universelt forstået af alle printere, der bruger G-koder.
  • M: Dette er specifikke koder for visse serier af 3D-printere.
  • Andet: der er også andre native koder for andre maskiner, såsom funktioner F, T, H osv.
Du kan se eksempler på G-koder og de grafiske resultater dette link.

Som du kan se i det foregående billede af eksemplet, er en række af linjer med kode som ikke er andet end koordinater og andre parametre til at fortælle 3D-printeren, hvad den skal gøre, som om det var en opskrift:

  • X OG Z: er koordinaterne for de tre trykakser, det vil sige hvad ekstruderen skal bevæge sig i den ene eller anden retning, med oprindelseskoordinaterne 0,0,0. For eksempel, hvis der er et tal større end 0 i X'et, vil det flytte til den koordinat i 3D-printerens bredderetning. Hvorimod hvis der er et tal over 0 i Y'et, vil hovedet bevæge sig i ud- og i retning af printzonen. Til sidst vil enhver værdi større end 0 i Z få den til at rulle til den specificerede koordinat fra bund til top. Det vil sige, at med hensyn til stykket kan man sige, at X ville være bredden, Y dybden eller længden og Z højden.
  • F: vil angive den hastighed, hvormed printhovedet bevæger sig angivet i mm/min.
  • E: refererer til længden af ​​ekstruderingen i millimeter.
  • ;: al tekst, der er indledt med ; det er en kommentar, og printeren ignorerer den.
  • G28: Det udføres normalt i begyndelsen, så hovedet bevæger sig til stop. Hvis der ikke er angivet nogen akser, vil printeren flytte alle 3, men hvis en specifik er angivet, vil den kun anvende den på den.
  • G1: Det er en af ​​de mest populære G-kommandoer, da det er den, der beordrer 3D-printeren til at deponere materiale, mens den bevæger sig lineært til den markerede koordinat (X,Y). For eksempel angiver G1 X1.0 Y3.5 F7200 at afsætte materiale langs området markeret med koordinaterne 1.0 og 3.5 og med en hastighed på 7200 mm/min, det vil sige ved 120 mm/s.
  • G0: gør det samme som G1, men uden ekstruderende materiale, det vil sige, at det bevæger hovedet uden at afsætte materiale, for de bevægelser eller områder, hvor intet skal aflejres.
  • G92: beder printeren om at indstille den aktuelle position for sine akser, hvilket er praktisk, når du vil ændre placeringen af ​​akserne. Meget brugt lige i begyndelsen af ​​hvert lag eller i tilbagetrækningen.
  • M104: kommando til at opvarme ekstruderen. Det bruges i starten. For eksempel, M104 S180 T0 ville indikere, at ekstruderen T0 opvarmes (hvis der er en dobbeltdyse, ville det være T0 og T1), mens S bestemmer temperaturen, i dette tilfælde 180ºC.
  • M109: svarende til ovenstående, men angiver, at udskriften skal vente, indtil ekstruderen er oppe på temperatur, før du fortsætter med andre kommandoer.
  • M140 og M190: ligner de to foregående, men de har ikke en parameter T, da det i dette tilfælde refererer til sengens temperatur.

Selvfølgelig virker denne G-kode til FDM-type printere, da harpiksen har brug for andre parametre, men med dette eksempel er det nok for dig at forstå, hvordan det virker.

Konverteringer: STL til...

STL fil konvertering

Endelig er en anden af ​​de ting, der skaber mest tvivl blandt brugerne, givet antallet af forskellige formater, der findes, tilføjelse af 3D CAD-designs og de koder, der genereres af de forskellige slicere, hvordan man konverterer fra det ene til det andet. Her har du nogle af de mest ønskede konverteringer:

Hvis du laver en Google-søgning, vil du se, at der er mange online konverteringstjenester, såsom AnyConv eller MakeXYZ, der kan konvertere næsten alle formater, selvom ikke alle fungerer godt, og ikke alle er gratis.
  • Konverter fra STL til GCode: Det kan konverteres med udskæringssoftware, da det er et af dets formål.
  • Gå fra STL til Solidworks: kan gøres med Solidworks selv. Åbent > i filstifinder skift til format STL (*.stl) > optioner > ændre sig importere som a fast krop o fast overflade > acceptere > gennemse og klik på den STL, du vil importere > Åbent > nu kan du se den åbne model og funktionstræet til venstre > Importeret > FeatureWorks > Genkend funktioner > og den ville være klar.
  • Konverter et billede til STL eller JPG/PNG/SVG til STL: Du kan bruge onlinetjenester som Imagetostl, Selva3D, Smoothie-3D osv., eller bruge nogle AI-værktøjer og endda software som Blender osv. til at generere en 3D-model fra billedet og derefter eksportere til STL.
  • Konverter fra DWG til STL: Det er en CAD-fil, og mange CAD-designsoftware kan bruges til at udføre konverteringen. For eksempel:
    • AutoCAD: Output > Send > Eksporter > indtast filnavnet > vælg type Litografi (*.stl) > Gem.
    • SolidWorks: Fil > Gem som > Gem som STL > Indstillinger > Opløsning > Fin > OK > Gem.
  • Fra OBJ til STL: Både online konverteringstjenester kan bruges, såvel som nogle lokale softwareværktøjer. For eksempel kan du med Spin3D gøre følgende: Tilføj filer > Åbn > vælg en destinationsmappe i Gem i mappe > Vælg outputformat > stl > tryk på knappen Konverter og vent på, at processen er færdig.
  • Gå fra Sketchup til STL: Du kan gøre det med Sketchup selv på en nem måde, da den både har import- og eksportfunktioner. I dette tilfælde skal du eksportere ved at følge trinene, når du har Sketchup-filen åben: Fil > Eksporter > 3D-model > vælg, hvor du vil gemme STL'en > Gem som STereolitografifil (.stl) > Eksporter.

Mere information


2 kommentarer, lad dine

Efterlad din kommentar

Din e-mailadresse vil ikke blive offentliggjort. Obligatoriske felter er markeret med *

*

*

  1. Ansvarlig for dataene: Miguel Ángel Gatón
  2. Formålet med dataene: Control SPAM, management af kommentarer.
  3. Legitimering: Dit samtykke
  4. Kommunikation af dataene: Dataene vil ikke blive kommunikeret til tredjemand, undtagen ved juridisk forpligtelse.
  5. Datalagring: Database hostet af Occentus Networks (EU)
  6. Rettigheder: Du kan til enhver tid begrænse, gendanne og slette dine oplysninger.

  1.   Ruben sagde han

    Meget godt forklaret og meget tydeligt.
    Tak for syntesen.

    1.    Isaac sagde han

      Mange tak!