3D Printers - deel 2

Arco

Special Member

Ik bedoelde STL... ;)
Ik ga dat eens proberen. Denk dat ik toch een hogere temperatuur moet hebben. (de brim die om de smalle 3mm stukjes wordt gelegd komt los en wordt een zootje...)
De code voor zo'n vrij gecompliceerde vorm viel me wel mee:

code:


difference(){
union(){  
  difference(){    
    cylinder(r=42, h=6, $fn=100);
    translate([0,0,3]) cylinder(r=40, h=3, $fn=100);   
  }
  difference(){
  translate ([0,0,0]) cylinder(r=37.2, h=6, $fn=100);   
  }    
}
  translate([50,0,0]) cube(100, center=true);
  translate([-3,-7.2,0]) cube(size=[6,2,16], center=true);
  translate([-3, 7.2,0]) cube(size=[6,2,16], center=true);
  translate([-3,-12.7,0]) cube(size=[6,2,16], center=true);
  translate([-3, 12.7,0]) cube(size=[6,2,16], center=true);
  translate([-3,-18.2,0]) cube(size=[6,2,16], center=true);
  translate([-3, 18.2,0]) cube(size=[6,2,16], center=true);
  translate([-5,-5,6]) cube(size=[2,3,16], center=true);
  translate([-5, 5,6]) cube(size=[2,3,16], center=true);
  translate([-7,-42,0]) cube(size=[7,7,16]);
  translate([-7,35,0]) cube(size=[7,7,16]);

  rotate(60) translate([-42,0,0]) cube(size=[2,4,20]);
  rotate(120) translate([ 40,0,0]) cube(size=[2,4,20]);
  rotate(81) translate([-42,0,0]) cube(size=[6,2,20]);
  rotate(99) translate([ 36,0,0]) cube(size=[6,2,20]);
}
Arco - "Simplicity is a prerequisite for reliability" - hard-, firm-, en software ontwikkeling: www.arcovox.com

STL bevat zelf geen schaal: https://en.wikipedia.org/wiki/STL_(file_format)
Openscad werkt in mm. Het is soms even opletten.

Nee, Openscad heeft ook geen schaal. Je zult nergens vinden dat die eenheden mm, cm of meters zijn. Maar als jij denkt dat het mm zijn, en gewoon default "exporteert" naar STL en niets raars doet in de slicer, dan komt het er precies 1:1 uit. Dus het is wel handig om te denken dat openscad in mm werkt, maar daar weet openscad dus zelf niets van af....

Arco, je hebt op een hoop plekken objecten afgetrokken die precies eindigen op het punt waar ook het object waar wat afmoet eindigt. Dat resulteert in de preview in wat rondlopende pixels, maar soms ook dat je rare dingen krijgt op die rand. Even eendimensionaal: difference () { [0,1] ; [0.5,1] } . We halen het 0.5-1 segment af van het 0-1 segment. De vraag is nu: Het punt 1 moet dat blijven?

In jou object is dus de vraag: Waar is het tweede stukkie?

Ik voeg dit toe voordat ik ga printen:

code:

translate ([-5, 40,0]) cylinder (r=12,h=0.5);
translate ([-5,-40,0]) cylinder (r=12,h=0.5);

[Bericht gewijzigd door rew op dinsdag 23 januari 2018 09:52:48 (47%)

four NANDS do make a NOR . Kijk ook eens in onze shop: http://www.bitwizard.nl/shop/
Arco

Special Member

Het zal aan mij liggen (ik ben geen ster in dit soort tekenwerk... ;) ), maar ik begrijp niet wat je precies bedoelt...
Ik weet dat sommige blokken in difference() exact worden afgetrokken, maar dat is toch ook de bedoeling? (of moet ik ze aan de buitenkant groter maken?)
Wat doet die code die je toevoegt exact daaraan? (ik hier zie trouwens geen losse pixels in openscad of cura...

Het gebruik van rotate() is trouwens ook wat wazig. Schijnbaar is dat niet alleen de Z-hoek, maar heeft ook invloed op de positie t.o.v. het 0,0,0 punt...
Eerste poging is heel acceptabel (nog wat kleine aanpassingen hier en daar):

Arco - "Simplicity is a prerequisite for reliability" - hard-, firm-, en software ontwikkeling: www.arcovox.com

Op 23 januari 2018 12:47:44 schreef Arco:
Het zal aan mij liggen (ik ben geen ster in dit soort tekenwerk... ;) ), maar ik begrijp niet wat je precies bedoelt...

Bij mij trekt zo'n grote platte print altijd los van het bed. Dus dan maak ik er een extra "brim" aan, met van die rondjes. Gewoon die twee regels van mij aan het eind van je .scad file toevoegen en je krijgt twee flappen er aan die je net als je brim er even af moet halen voordat je je print ingebruik neemt.

Ik weet dat sommige blokken in difference() exact worden afgetrokken, maar dat is toch ook de bedoeling? (of moet ik ze aan de buitenkant groter maken?)

Ja. De huidige versie van openscad is VEEL beter dan vroeger, maar het speelt nog steeds.

code:

difference () {
  cube ([20,10,10]);
  translate ([10,0,0]) cube ([10,10,10]);
}

laat vijf vlakken van de eerste cubus staan. Op dat punt weet de software niet altijd zeker of een snijlijn eerst van binnen naar buiten is gegaan of van buiten naar binnen.

Reprapworld heeft een ding op github staan waar ze effectief:

code:

difference () {
  cube ([30,30,6]);
  translate ([10,10,2])) cube ([5,5,5]); 
}

hebben gedaan. Op de een of andere manier is dat in de STL gekomen met ook nog de vlakken van de [5,5,5] cubus er in. De slicer heeft toen besloten om NIET het bedoelde uitgesneden stuk te maken, maar WEL het stuk van de 555 cubus die boven het ding uitsteekt.

In dit voorbeeld hebben ze NIET openscad gebruikt, maar wat anders. Maar met openscad blijf je het risico lopen dat ie ook een keer binnen en buiten door mekaar haalt en dat je wat anders krijgt dan bedoeld.

Bij mij is de hint dat je van die vliesjes ziet:

Die springen uit-en-aan afhankelijk van de exacte hoek waaronder je kijkt.

Wat doet die code die je toevoegt exact daaraan? (ik hier zie trouwens geen losse pixels in openscad of cura...

De extra code van mij is alleen "blijft beter plakken aan het bed". Doet nog niets met jou: "de randen van het object en wat er weggesneden wordt vallen samen".

Het gebruik van rotate() is trouwens ook wat wazig. Schijnbaar is dat niet alleen de Z-hoek, maar heeft ook invloed op de positie t.o.v. het 0,0,0 punt...

rotate ([hoek, 0, 0])_ roteert om de X as.
rotate ([0, hoek, 0])_ roteert om de Y as.
rotate ([0, 0, hoek])_ roteert om de Z as. Kan verkort worden tot rotate (hoek);

Geen verplaatsingen, alleen rotatie om de genoemde as.

Als je meer dan 1 niet-nul opgeeft bij het roteren, dan ZOU ie twee verschillende dingen kunnen doen. 1) dat is roteren om de opgegeven vector. 2) eerst om Z, dan om Y dan om X roteren.

Volgens mij doet ie dat laatste. Ik gebruik het nooit. Wiskundig is dat eerste mooier (maar lastiger te implementeren). In de praktijk dat tweede mogelijk handiger.

four NANDS do make a NOR . Kijk ook eens in onze shop: http://www.bitwizard.nl/shop/
Arco

Special Member

Dank,

Het is me weer wat duidelijker.
Grootste 'leerpunt' was het gebruik van unions, anders ziet openscad het geheel gewoon als een losse verzameling blokjes en cylinders i.p.v. één geheel... ;)

Brim kwam ook steeds los bij deze en werd een zootje. Nu temperatuur van 200/60 naar 210/70 en alles gaat prima met een 'skirt'.
(een brim is een hoop gepeuter als je object veel kleine inhammetjes heeft)
Nu nog wachten op mijn rol TPU. Ben benieuwd hoe dat gaat zonder printer aanpassingen...

Is er een setting om massieve objecten te maken, of moet je dan gewoon de wanddikte op meer als de halve objectdikte zetten?
Ook wel jammer dat je met kubusjes het 'point of origin' niet in het midden kunt zetten van het blokje; spaart bij rotate() een hoop rekenen uit...

[Bericht gewijzigd door Arco op dinsdag 23 januari 2018 14:35:03 (11%)

Arco - "Simplicity is a prerequisite for reliability" - hard-, firm-, en software ontwikkeling: www.arcovox.com

TPU of TPE afdrukken gaat anders, in ieder geval een stuk langzamer want het gesmolten spul komt vertraagt uit de nozzle; de taaie vloeistof is elastisch.
Je extruder is mede bepalend voor het resultaat; een direct drive extruder (extruder motor zit vrijwel op het hot-end) geeft het minste problemen.
Een Bowden drive extruder is het meest kritisch, er moet immers een slappe spaghettisliert door de bowden-tube geperst worden.

Zelf gebruik ik Polyflex filament, gaat altijd goed maar is meer een soort taai plastic, niet echt rubber maar redelijk tot goed voor doppen en kappen:

STL files zijn 'solid', de slicer maakt 'infill' van 0 tot 100%.

Arco

Special Member

Ik ga het eens proberen als de TPU binnen is...
Standaard zijn in openscad alle hoeken gewoon recht. Is er ook een 'globale' setting om hoeken een radius te geven? (mooie afgeronde hoeken)
Om alles met de hand te doen kan wel, maar een vervelend werkje...

Arco - "Simplicity is a prerequisite for reliability" - hard-, firm-, en software ontwikkeling: www.arcovox.com

Op 23 januari 2018 13:59:08 schreef Arco:
(een brim is een hoop gepeuter als je object veel kleine inhammetjes heeft)

Is er een setting om massieve objecten te maken, of moet je dan gewoon de wanddikte op meer als de halve objectdikte zetten?
Ook wel jammer dat je met kubusjes het 'point of origin' niet in het midden kunt zetten van het blokje; spaart bij rotate() een hoop rekenen uit...

1) Ik zet wel eens een "dammetje" bij de "ingang" van een in hammetje als ik niet wil dat ie daarbinnen gaat brimmen.

2) Alle objecten in een STL zijn van nature "massief". In je slicer kan je instellen wat je dan wil: 0-100% "infill". Daar moet je op zoeken. Dat bepaalt hoeveel materiaal hij in het midden dumpt. Zo'n 20-30% is voldoende om dan ook een "bovenkant" weer netjes te maken. Voor mechanisch zwaar belaste onderdelen kan je 90 of 100% invullen.

Nee, hoeken "vanzelf" afronden gaat niet.

Andersom wel. Jij had een paar keer "$fn=100" bij je ronde vormen opgegeven. Dat had ook globaal gekund met "$fn=100;" aan het begin (of aan het eind! Dat maakt in openscad niet uit!).

Re: Aart hieronder, cube (... center=true): Ohja, ook gezien ook willen posten, maar vergeten.

four NANDS do make a NOR . Kijk ook eens in onze shop: http://www.bitwizard.nl/shop/

@ rew: Je hebt gelijk, openScad kent geen eenheid, maar zo denk ik er in de praktijk inderdaad wel mee.

Adrian Bowyer heeft ooit een aardig stukje geschreven over de theoretische achtergrond van het probleem van samenvallende vlakken in een difference(). Ik kan het nu helaas niet vinden, maar het topologische probleem is soortgelijk aan delen door nul. Dit soort "oneindig dunne" elementen worden bij het renderen overigens wel weggelaten.

Ook wel jammer dat je met kubusjes het 'point of origin' niet in het midden kunt zetten van het blokje; spaart bij rotate() een hoop rekenen uit...

cube([x,y,z],center=true) ?

Naast de "grote settings" popups heeft slic3r ook nog een lijstje met "quick access" versies daarvan:

Ooit leek het "generate support material" me wel een handige om daar te hebben. De laatste tijd vind ik eigenlijk dat "infill" daar moet staan, want die verander ik de laatste tijd veel. (Bovendien zit ie "uit zicht" in de grote popup: Ik ben nu op 2/3e van een 3.5 uur print dat ik er achter kom dat de infill niet staat zoals ik had gewild.)

Anyway, in het screenshot zie je hem staan. Maar... hoe krijg ik hem zo ver dat ie de volgende keer weer daar komt te staan? Hij gaat iedere keer weg! De "support material" blijft wel staan....

four NANDS do make a NOR . Kijk ook eens in onze shop: http://www.bitwizard.nl/shop/

(andere subthread in andere posting, met uw welnemen...)

Ik ga deze printen:

en dan krijg ik op 18.1 mm hoogte:

terwijl dat eerder:

moet zijn.... Dit komt omdat op die hoogte een aantal dingen precies samenkomen. Slic3r komt kennelijk op die plek 3 of 4 "rand-van-dingen" tegen en maakt de verkeede beslissing of de rest van het vlak ingevuld moet zijn. Ik heb m'n onderstelaag met 0.01 mm verlaagd, zodat ie niet precies op de grens gaat lopen kijken, waardoor het dus dit keer WEL goed gaat. Had ik hem dat gewoon laten printen, dan had ie dus een enorm stuk midden in de lucht proberen te printen. Kans dat dat klodders worden die de rest van de print in de weg zitten is groot.

Deze "fout" komt uit een stuk openscad wat ik niet zelf heb geschreven maar van thingiverse heb. Ik heb de bevestigingsogen er aan gemaakt.

Dus... Arco, daarom is het niet verstandig om dingen precies op mekaar telaten aansluiten.

four NANDS do make a NOR . Kijk ook eens in onze shop: http://www.bitwizard.nl/shop/
Arco

Special Member

Wel amusant: meestal wordt 'heated bed' in advertenties vertaald in 'broeinest'... :)

Arco - "Simplicity is a prerequisite for reliability" - hard-, firm-, en software ontwikkeling: www.arcovox.com

Hallo,

Ik ben op zoek naar een transparant filament dat licht zo goed mogelijk verspreid. Hiermee wil ik lampenkapjes gaan 3D-printen voor leds (WS2812). De kapjes hebben de vorm van een halve bol met een diameter van 30mm en een hoogte van 15mm. De lampjes maken deel uit van een groot led paneel. Een goede lichtverspreiding is wenselijk om geen "hot spots" te krijgen. Tot nu toe heb ik altijd geprint in PLA omdat het gemakkelijk en gebruiksvriendelijk is.

  • Optie1: Transparant PLA.
  • Optie2: Polypropylene PP
  • Optie3: Polycarbonate PC

Volgens de toepassingen lijken PP en PC beter geschikt. Zou ik moeten rekening houden met de temperatuur waar het materiaal tegen kan, in verband met de warmteproductie van de leds ? Het paneel zelf komt in een fuifzaal waar de temperatuur toch gemakkelijk kan oplopen tot 30°C misschien meer. PLA kan ik gemakkelijk 3D-printen met mijn Ultimaker 2. Om PP en PC te printen zou ik de Extrusion Upgrade Kit, en de Advanced 3D Printing Kit moeten aanschaffen, zie hier. Prijzig al je het mij vraagt.

Iemand ervaringen, of die mij kan aanbevelen welk materiaal te gebruiken ?

Arco

Special Member

Ik heb geen idee of dat een nette lichtverdeling oplevert. (je zult dan in ieder geval de buitenkant van de bollen mat moeten schuren voor egaal licht)
Misschien ook een idee om ronde pvc staf te bewerken in een draaibank. (uit een meter haal je er dan een stuk of 50)
https://www.kunststofshop.nl/index.php?item=acrylaat-rond-staf-transpa…

Arco - "Simplicity is a prerequisite for reliability" - hard-, firm-, en software ontwikkeling: www.arcovox.com

PETG is redelijk mooi transparant, en op "normale" temperatuur te printen. Misschien is HIPS ook mogelijk, heb ik geen ervaring mee, maar schijnt wel tegen hogere temperaturen te kunnen.

Diverse projecten en experimenten: www.elexperiment.nl

Je zou ook een pingpongbal kunnen gebruiken, maar die zijn 38mm dacht ik

Je kunt ook WIT-ABS gebruiken dat is ook doorschijnend en kan tegen hogere temperaturen dan PLA.

Domoticz en ESP8266, goede combo!!!

Bedankt voor de reacties, na wat zoeken ga ik het eens met dit PLA filament proberen. Lijkt me interessant, bestaat ook in een ABS versie.

[Bericht gewijzigd door steve04 op dinsdag 13 februari 2018 18:21:08 (15%)

Arco

Special Member

Na veel uitproberen met middeltjes om het te printen ABS object aan het heatbed vast te zetten eindelijk succes... :)
Inmiddels een flinke verzameling aan middeltjes opgebouwd: schilders- en speciaalplakband, kaptontape, plakstift D2 lijm,...
(alleen D2 lijm werkte enigszins, de rest deed weinig tot niets en werd zelfs soms slechter...)

Nu ABS juice in gebruik. Simpel te maken, en laat echt nooit los. Ander voordeel: na afkoelen breekt het object vanzelf zonder moeite los.
Alleen heb ik nog last van krimpen bij grote objecten. Hoe kan ik dat het beste voorkomen? (zou printer in behuizing dit voorkomen, of dikkere wanden?)
(wanden zijn nu 2.5mm)

Arco - "Simplicity is a prerequisite for reliability" - hard-, firm-, en software ontwikkeling: www.arcovox.com

Krimpen kun je voorkomen door de printer in een behuizing te plaatsen en bij ABS ABSOLUUT GEEN koelfan gebruiken.

En die scheurtjes die je nu hebt kun je zo dichtmaken met een iets dikkere ABS-juice en dan het object in Aceton-damp zetten gaat je object ook mooi glimmen en is dan waterdicht...

Domoticz en ESP8266, goede combo!!!

* geen ABS gebruiken.

Da's de truuk die ik nu toepas. Ik gebruik nu PETG. Doet dit veel minder dan ABS, plakt iets makkelijker aan het bed, is iets flexibeler dan ABS, maar nog steeds plenty sterk voor als het stevig moet zijn.

* Het schijn dat als je de hele ruimte waarin geprint wordt opwarmt tot zeg 60 graden dit niet gebeurt.

Beetje tricky oplossing vind ik: We roepen al dat de stappenmotoren behoorlijk warm worden als ze 60 graden zijn geworden, en nu ga je ze "afkoelen" aan de 60 graden ruimte. Ze zullen dan zo'n 100 graden worden als ze eerst al 60 werden.. Hmm.. .

(Ik heb een "mok" ontworpen en geprobeerd te printen in ABS. Opgegeven. Na overschakelen op PETG gewoon in 1x geprint in PETG).

four NANDS do make a NOR . Kijk ook eens in onze shop: http://www.bitwizard.nl/shop/

Er zijn mensen die hun printer in een kartonnen doos plaatsen en tegen het kromtrekken van ABS CA lijm gebruiken om het object vast te zetten.
Maar je blijft problemen houden met ABS, interne spanning zorgt voor delaminering. En de stank ...
Ik gebruik alleen nog PETG of polycarbonaat (PC-max) voor sterke afdrukken.

Ik heb een piepschuim doos om mijn printer gebouwd. Werkte onvoldoende is weer afgebroken.

four NANDS do make a NOR . Kijk ook eens in onze shop: http://www.bitwizard.nl/shop/
Arco

Special Member

Kun je in openscad geen 'indent guides' aanzetten? (is nogal storend om steeds uit te moeten vlooien waar je precies zit... :( )

Arco - "Simplicity is a prerequisite for reliability" - hard-, firm-, en software ontwikkeling: www.arcovox.com