Nieuw mondstuk voor onze Artist Series Irish Whistle

In dit deel IV gaan we kijken naar het printen in 3D van ons ontwerp voor de Artist Series. De voordelen van 3D printen zijn wel duidelijk: verschillende materialen, verschillende kleuren en afwerkmethodes maken 3D-printen tot een goede methode om tot een product te komen. Daarbij komt dat het steeds goedkoper wordt om in 3D te printen.

3D printen gebeurt met een filament; een ronde ‘plastic’ draad van 2.85 of 1.75 mm dun wordt door een hot-end gevoerd. Deze hot-end smelt het filament bij een temperatuur van 200-250 C. Ondertussen beweegt de printkop en legt een patroon af, laagje voor laagje volgens x-, y- en z- waarden, in een driedimensionaal assenstelsel, zoals we dat allemaal wel kennen uit de wiskunde. De printer leest deze waardes razendsnel af uit een tekstbestand (de g-code) en stuurt de printkop  en andere onderdelen aan.

Nadelen van 3D printen zijn er ook: het duurt lang voordat je een print hebt, en de resolutie gaat maar tot 0.1mm, hoewel er al printers zijn die veel fijner kunnen printen. Filamenten zijn er in vele soorten, variërend van ABS en Nylon tot PLA. PLA (polymelkzuur) is een niet-toxisch biologisch afbreekbaar 3D-printmateriaal wat nog steeds het meest wordt gebruikt.

Deel I – Introductie | Deel II – Het Ontwerp | Deel III – Simulaties | Deel IV – 3D Printen

Een bijdrage van Ruud Roelofsen

Omzetten van een solid naar 3D

Ons model wat we hebben gemaakt in ons tekenpakket bestaat uit een zogenaamde solid. Wat is solid modelling nou eigenlijk?

Software

Bekende paketten om 3D modelling te gaan doen zijn bijvoorbeeld AutoCAD, Autodesk Fusion360 en SolidWorks. Er zijn talloze paketten te vinden die gratis zijn, zoals GrabCAD.

Solid modeling is de meest geavanceerde methode om een geometrisch model in drie dimensies te maken. Het is een representatie van vaste delen (solids) die je op een computer maakt.  Een typisch geometrisch model bestaat uit een serie draadmodellen die opgebouwd zijn uit vectoren. Een vector heeft een richting, een lengte en een  pad waarlangs de vector loopt. Een wiskundige representatie wordt omgezet in een lijn. En object bestaat dus uit één of meer verschillende lijnen, die samen een draadmodel vormen. Deze draadmodellen kunnen twee-dimensionaal zijn, maar ook twee-en-een-half-dimensionaal of drie dimensionaal. Voegen we oppervlakte eigenschappen toe aan deze draadmodellen in de multi-dimensionele ruimte, dan resulteert dit in een zogenaamde solid, die verschijnt op een comuterscherm. Dit is solid-modelling.

Voordelen

Solid modeling is een bekende toepassing van CAD (Computer Aided Design) en is de laatste jaren erg in opkomst. De solid modeling CAD software helpt de ontwerper om datgene wat hij heeft ontworpen te zien als ware het een geproduceerd object. Het kan vanuit verschillende hoeken beken worden en in diverse staten (transparant, dwarsdoorsnedes, kleuren, materiaal-eigenschappen enz). Het helpt de ontwerper om te controleren of het gaat worden zoals hij daadwerkelijk bedoelt heeft.

Een solid bestaat uit vectoren, opgebouwd uit lijnen in een vlak in de ruimte, die aangestuurd worden door een wiskundige berekening te volgen. Een vector kan je oneindig schalen, een vaststaand model niet.

Je kunt het een beetje vergelijken met het verschil tussen een vectorafbeelding en een JPEG-afbeelding. Een vector model is schaalbaar, zonder dat de resolutie verloren gaat; immers, het bestand bestaat uit vectoren, en of die nou heel klein of heel groot worden weergegeven, maakt geen verschil. Een JEPG daarentegen maakt gebruikt van compressie. Voordeel is dat de bestandsgrootte klein blijft, maar JPEG maakt gebruikt van statische informatie; vergroot je een JEPG, dan ga je uiteindeljk ‘blokken’ zien. De JPEG compressie probeert steeds zo goed mogelijk de impressie van het origineel overeind te houden.

Links het origineel, rechts met hoge compressie

Omzetten naar 3D print bestand.

Ons Artist mondstuk is dus gemaakt als een solid in een 3D-modelling tekenpakket. We zullen dus een export moeten doen naar iets wat de 3D printer begrijpt. Dat heet een .stl bestand. STl staat voor Standard Tessellation Language of Standard Triangle Language, en komt oorspronkelijk uit de lithografie.

Het belangrijkste doel van een STL-bestandsformaat is om de oppervlakte-geometrie van een 3D-object te coderen. Het codeert deze informatie met behulp van een eenvoudig concept, “tessellatie” genaamd. Tessellatie is het proces van het ‘betegelen’ van een oppervlak met een of meer geometrische vormen, zodanig dat er geen overlappingen of openingen zijn. Als je ooit een tegelvloer of -muur hebt gezien, is dat een goed voorbeeld uit de echte praktijk van een tegelpatroon. We hebben nu dus een principe, maar dat gaat slechts uit van het oppervlak, en bovendien is het niet erg nauwkeurig, want onze ‘solid’ gaat dus omgezet worden in ‘tegeltjes’.

Zouden de Mona Lisa in tegels uitvoeren, dan krijgen we dit:

Links de Mona Lisa als tesselatie-model, rechts het orgineel.

Tessellatie (ook wel triangulatie genoemd tegenwoordig) wordt ook gebruikt in geografische positiebepaling. Nu we dit weten zijn we eigenlijk bij het grootste nadeel van 3D printen gekomen: het is altijd een compromis tussen het origineel (de solid) en het ge-trianguleerde model. Bovendien wordt alleen het oppervlak omgezet. De output van het triangulatie model wordt ook wel een mesh genoemd – een soort gaaswerk, bestaande uit allemaal driehoeken. Overigens is zijn de triangulatie berekeningen wel weer vectoren, dus deze kunnen goed geschaald worden zonder verlies van kwaliteit. Nu kunnen we natuurlijk het model laten omzetten in HEEL VEEL driehoeken, om zo een nauwkeurig model voor onze printer te krijgen. Onderstaande afbeelding laat dit goed zien: hoe meer, driehoeken, hoe nauwkeuriger het model wordt.

Verschillende triangulatie resoluties

Een nadeel van deze veelvoud aan driehoeken is dat het bestand heel groot wordt, waardoor de software van de 3D printer moeite gaat krijgen met de berekening van de laagjes (dit noemen we ook wel ‘slicen’ van een model; het opbouwen van een 3D model in printlaagjes).

Ons Artist model omgezet

We gaan nu ons Artist mondstuk omzetten naar een .STL bestand. Ter herinnering, hier nog eens het orgineel:

Als we uitgaan van een lage resolutie STL, ziet ons model er zo uit:

Triangulatie resolutie

De afbeelding is niet erg bemoedigend; er zijn veel te weinig driehoeken (7224 om precies te zijn), waardoor het model er vrij grof uitziet. We gaan nu dit model eens door de software van de printer laten opbouwen. We gebruiken hiervoor de software van Simplify3D, deze heeft een goede slicer, enorm veel opties en ondersteunt veel printermodellen.

Dit is hoe het grove model er uitziet in de software van Simplify3D. Duidelijk te zien zijn de vlakken waaruit het model is opgebouwd. De print zal er niet erg nauwkeurig uitzien, en zal moeilijk te bewerken zijn, mocht het van materiaal geprint worden wat geschuurd en gepolijst dient te worden.

We willen dus dat ons model er zo nauwkeurig mogelijk uit komt te zien. We doen nu een export naar een .STL bestand van ons solid met een zo hoog mogelijke resolutie.

Bovenstaand model bestaat uit meer dan 1 miljoen driehoeken. De dichtheid is zo groot, dat het model nu zwart ziet door de veelheid en dichtheid aan driehoeken! Er is nu een tolerantie van minder dan 0,5 graden in elke ‘tegel’ die de opbouw van het oppervlak vertegenwoordigt, vandaar dat we zoveel tegels nodig hebben. In de software van Simplify3D ziet de preview er veel beter uit:

We hebben nu weliswaar de kwaliteit van ons 3D model verbeterd, maar er zijn nog een aantal uitdagingen. De eerste uitdaging is dat ons model massief geprint moet worden. Dit kunnen we opgeven in de software (dit noemen we ‘infill’, en deze zetten we op 100%), maar daar waar de printer langzamer gaat printen, namelijk rond de windgang, wordt het 3D model vrij warm; de printkop is meer dan 200 graden. We moeten dus koeling inzetten. Dit gebeurt door ingebouwde ventilatoren in de printer. Een ander probleem is dat, als we het model op deze manier printen, het ‘dak’ van de kamer in kan zakken; het filament (de draad waarmee geprint wordt) gaat horizontaal de window overbruggen, en zal dus ondersteunt moeten worden. Dit doen we met een functie van de software die we supports noemen. Dit zijn hele dunne ‘torentjes’ die meegeprint worden om de horizontale overhang te ondersteunen. Deze kunnen later makkelijk worden afgebroken. Het programma rekent automatisch uit wanneer en waar deze support moeten komen, gebaseerd op onze instellingen.

Supports zijn in bovenstaande dwarsdoorsnede donker gekleurd.

In de software kunnen we supports toevoegen of weghalen. De hoeveelheid aan parameters in de software die de printer aanstuurt, maakt het proces naar een bruikbaar model vaak lang. Zaken als temperatuur van de printkop, printsnelheden, resolutie, laagdikte, plaatsing van supports, koeling, materiaal, retractie van het filament om druppelvorming te voorkomen en de mate van toevoer van het filament maken dat je vaak door de bomen het bos niet meer ziet. We hebben nu een aantal jaren ervaring met 3D printen bij deQuelery, en dat is echt nodig om in te kunnen schatten wat er nodig is om tot een bruikbare print te komen die overeenkomt met het originele ontwerp (de solid).

Uiteindelijk rekent de software het model om in laagjes, en houdt ondertussen rekening met alle andere instellingen die we hebben gedaan. In onderstaande afbeelding zien we printsnelheden, de duur van de print (7 uur en 53 minuten), het aantal lagen waaruit de print bestaat (1005 laagjes van 0.1mm) en de hoeveelheid filament die nodig is om het hele model te printen: 11236.6mm, oftewel ruim 11 meter. Het uiteindelijke gewicht zal ongeveer 33 gram zijn.

De wijde ring rond het model van twee laagjes hoog wordt een ‘brim’ genoemd, en is nodig om de juiste hoeveelheid filament in de printkop te laten vloeien voordat het model geprint wordt. Het dunne laagje waar het model op staat is een ‘raft’. Er wordt eerst een paar laagjes geprint als ondergrond, zo wordt het begin van de print vlakker en dus mooier.

De code (de zogenaamde g-code) die de software produceert stuurt de printer aan en bestaat uit 652992 regels met code. In deze code staat waar de printkop heen moet en hoeveel filament er door de kop moet stromen. Ook de ventilatoren worden met deze code aangestuurd. Hieronder een voorbeeld van een paar regels g-code:

G1 X0 Y0 F2400 ; move to the X=0 Y=0 position on the bed at a speed of 2400 mm/min
G1 Z10 F1200 ; move the Z-axis to Z=10mm at a slower speed of 1200 mm/min
G1 X30 E10 F1800 ; push 10mm of filament into the nozzle while moving to the X=30 position at the same time

Dit was deel IV van een serie over het ontwerpen en maken van ons nieuwe Artist mondstuk. In een volgend deel gaan we dieper in op materialen en afwerkingen van de geprinte modellen. Welke filamenten zijn er allemaal, hoe bewerk je ze (en is dit nodig) en hoe zien ze er dan uit. Heeft het zin om zwaardere filamenten te gebruiken met metaal of hout? Hebben ze invloed op de klank?

Deze en meer zaken komen de volgende keer aan bod!

Deel I – Introductie | Deel II – Het Ontwerp | Deel III – Simulaties | Deel IV – 3D Printen