vrijdag 30 januari 2015

Kossel: eerste prints

We waren een poosje afgeleid door andere zaken, maar sinds een paar weken weer volop bezig met de Kossel-printer. Met resultaat. De printer werkt inmiddels en de eerste printjes zijn er.


We printen (voorlopig) op een koude glazen plaat, behandeld met 3D Lac, een spray die zorgt voor een betere hechting. Dit werkt vooral goed op een verwarmd printbed, maar zorgt ook bij de Kossel voor voldoende hechting. Later meer over de zegeningen van 3D Lac.

Voorlopig hebben we afgezien van de autolevelling probe uit het originele ontwerp van de Kossel. Deze probe is een in- en uitklapbaar staafje dat een microswitch schakelt als het contact maakt met de glasplaat. Op grond van een aantal metingen op verschillende posities wordt de afstand tot de glasplaat berekend. Dit zou een perfect vlak printresultaat moeten geven, ook als de plaat niet helemaal waterpas is. Dat werkt op zich prima, maar voordat er geprint kan worden moet deze probe worden ingevouwen, en dat kregen we niet netjes voor elkaar.

Raket, geprint als enkelwandige spiraalvaas

Dus de probe is even uit beeld en we hebben de printer gewoon netjes uitgelijnd en vlak gesteld. Een klusje, maar best te doen na onze ervaring met de MendelMax. Omdat we in de toekomst ook ABS willen printen hebben we ook besloten om een verwarmd bed te bouwen, en er dan meteen de mogelijkheid bij te maken om de plaat vlak te stellen.

De komende tijd gaan we verder testen en de elektronica fatsoeneren. Ook zullen we weer wat vaker verslag doen van onze vorderingen.

zondag 22 juni 2014

Kossel: constructie gereed

Na veel puzzelwerk en vooral lang wachten op leveringen is de constructie van de Kossel klaar. Daarbij hebben we een paar leerzame en soms lastige obstakels overwonnen. Zo hebben we het ontwerp veranderd van 15mm aluminiumprofielen naar 20mm, en daarbij hoorden dus ook aangepaste printed parts.


Voor de verticale beweging willen we verschillende technieken uitproberen, te beginnen met wieltjes die langs de buitenkant van de profielen rijden. Hiervoor worden vaan mini V-wheels gebruikt, maar omdat deze slecht leverbaar zijn, hebben we gekozen voor een alternatief. Over de soepele beweging zijn we vooralsnog zeer te spreken. De andere wielmaat betekende wel een aanpassing van de printed parts.

In eerste instantie gebruiken we geen heated bed. In plaats van een ronde glasplaat hebben we een zeshoekige plaat gemaakt en voorzien van zelfontworpen klemmen om hem te fixeren.

dit is de grotere zus van die andere
met deze maten kan het niet mislukken
alleen nog even snijden...











De verbinding tussen de karretjes en het platform voor de printkop gaat met koolstofvezel buisjes. Deze moeten allemaal exact even lang zijn. Hiervoor hebben we een mooie en betaalbare techniek verzonnen die een resultaat geeft waar we zeer over te spreken zijn.


Nu weer wachten, onder meer op de extruder en wat benodigdheden voor de elektronica.

woensdag 11 juni 2014

Storingen en oplossingen: filament loopt niet door

Een storing die bij de 3D-printer nog wel eens wil optreden: het filament gaat de extruder wel in, maar er komt niets uit het hot end. Met andere woorden: het filament loopt niet door. Ergens in de extruder gaat dus iets mis, maar wat?

De eerste mogelijkheid is dat het filament niet goed gepakt wordt door de kartelbout, ofwel de hobbed bolt. Dat kan komen doordat er onvoldoende druk op het filament wordt uitgeoefend. Het aandraaien van de schroeven die hiervoor zorgen zou het probleem moeten oplossen. Maar ook is het mogelijk dat de hobbed bolt niet goed in het filament bijt. We hebben al diverse hobbed bolts geprobeerd, van zelfgemaakte tot goedkope eBay-exemplaren en de Arcol Hyena. Ons advies: kies deze laatste. Het spaart je een boel ellende.

van boven naar onder: zelfgemaakt, eBay-aankoop en de Arcol Hyena

Natuurlijk kan er na het printen van een halve kilo filament zelfs bij de Hyena wat tussen de tanden komen. Geen probleem: de tanden van de Hyena laten zich met de priem uit een horlogemakersetje gemakkelijk een voor een schoonmaken.

de Hyena hapt en laat niet meer los

Ook een leuke: de hobbed bolt is schoon, de spanning op het filament in orde, maar er komt nog steeds niets uit het hot end. Dan kan het zijn dat het tandwiel op de motor van de extruder slipt. Dit is gemakkelijk te controleren als je een stipje aanbrengt op de as en het tandwiel. Het vastdraaien van het schroefje op het tandwiel lost het probleem vaak op, maar het kan nooit kwaad om een reservetandwiel achter de hand te houden.

Zeldzamer en veel vervelender is een verstopt hot end. Misschien is er wat ijzervijlsel in de kop terecht gekomen, of zit er verbrand filament dat de zaak blokkeert. Het demonteren van het hot end is dan de enige oplossing. Verhit het gedemonteerde hot end tot de temperatuur dat het filament gaat vloeien en schraap of duw er zoveel mogelijk uit. Om de rest eruit te krijgen kan de nozzle een nachtje in de aceton. Daarna weer duwen en schrapen, eventueel doorprikken met een stukje dun ijzerdraad en zo nodig het acetonbad herhalen.

Bovenstaande wil je niet te vaak moeten doen. Daarom raden we aan een reserve-nozzle achter de hand te houden. Ook het gebruik van afzonderlijke nozzles voor PLA en ABS is ideaal. Het wegduwen van een restje ABS met PLA kan namelijk voor problemen zorgen omdat het PLA bij temperaturen van 230 graden kan verbranden.

dinsdag 3 juni 2014

Kosselframe krijgt vorm

Na lang puzzelen en dubben zijn we vandaag begonnen met de bouw van het frame van de Kossel Mini. We hebben het originele ontwerp niet gevolgd, maar zijn uitgegaan van 20x20mm aluminiumprofielen met de bijbehorende geprinte hoekstukken.


Ook over de manier waarop het transport van de glijders plaatsvindt hebben we onze bedenkingen, en we willen daarom een aantal verschillende ideeĆ«n proberen, onder meer met wieltjes, lagers en geleidestangen. 


hier komen straks de motoren
Nu is het wachten op de tandwielen en aandrijfriempjes, en ondertussen gaan we aan de slag met de diagonalen die het platform met het hot end moeten bewegen. Vergeleken met de bouw van de MendelMax is het meer een proces van trial & error, maar hopelijk komen we tot een ontwerp dat ook door anderen als kit kan worden nagebouwd.

zaterdag 31 mei 2014

Ellende met filament

Bij het printen van de onderdelen voor de 3D-printer van onze neef kwamen we een probleem tegen waar we eerder nog niet tegenaan waren gelopen. Alle onderdelen van de printer moesten worden geprint met grijze filament. Hiervan hadden we een nieuwe spoel van een kilo.

Aan printeronderdelen bleken we uiteindelijk zo'n 600 gram te moeten printen, plus nog wat voor de eindstophouders, de extruder en dat soort zaken. Omdat onze eigen 3D-printer nog wat kuren vertoonde, verdwenen er ook aardig wat misbaksels in de prullenbak. Vandaar dat op het einde van de klus ook het einde van het filament in zicht kwam.

Als de wikkelingen op het einde van een spoel kleiner en kleiner worden, merk je pas hoe stug dat spul is. Zeker als de windingen strakker worden naarmate het einde van de spoel in zicht komt, begint het worstelen met het filament veel op het ontwarren van een trapveer te lijken. Ellendig dus. Bovendien kan het zich bij het afrollen om zijn lengteas draaien, zodat er veel spanning op de draad komt te staan tijdens het printen. In het ergste geval kan het filament zelfs afknappen.

Omdat het filament zo stug en springerig is, kan het bij het verwijderen en wegleggen van een rol gebeuren dat het uiteinde op de spindel onder een of meer losse wikkelingen schiet. Het kan een tijdje duren voordat je dit door hebt, zoals dit filmpje demonstreert:


Natuurlijk is ook hier voorkomen beter dan genezen. We hebben ons daarom aangewend om het uiteinde van het filament na het afknippen direct veilig weg te steken in het gat dat hiervoor in de spoel aanwezig is. Dat zit er niet voor niets.


En dus ons motto:


Nog een punt over de laatste meters op de spoel: bij kleine spoeltjes zijn die eigenlijk veel te strak gewonden. Inspectie laat zien dat de draad vol witte plekken zit, wat erop wijst dat er grote kracht op het filament heeft gestaan. Als zo'n punt bij het printen een beetje rottig voor de extruder komt, kan het gemakkelijk afknappen.


Wie zich een boel ergernis wil besparen, gooit zo'n stuk liever weg. En koopt voortaan een grote spoel, waarvan de asmaat een stuk ruimer is.

Storingen en oplossingen: print verschoven

Een van de meest frustrerende dingen die bij het 3D-printen kan gebeuren: een print die gaat schuiven. Vooral als je na een printklus van een paar uur terugkomt en het volgende aantreft op je printtafel:

aaaargh! een kossel-hossel

Bij de print op de foto is er een paar keer een sprong in de x-richting gemaakt tijdens het printen. Hetzelfde kan gebeuren in de y-richting, of beide richtingen tegelijk. Maar wat is de oorzaak?

Slechte hechting aan de printtafel is een mogelijkheid. Als de print gaat schuiven, is er geen redden meer aan. Dit is te herkennen aan een verschuiving in zowel de x- als y-richting. Omdat de printer rustig doorgaat met printen, maar dan in de lucht in plaats van op eerdere lagen, groeit er een woud van krullende slierten op de print. Een print met een afro.

Maar het kan ook gebeuren dat een print lijkt te zijn verschoven, maar toch nog stevig vastgeplakt zit op de ondergrond. Dan kan het zijn dat de glasplaat waarop wordt geprint is verschoven ten opzichte van de warmteplaat. De verschuiving is in dit geval altijd gering (maar groot genoeg om het resultaat volledig te verpesten). Stevige bullclips rondom de glasplaat kunnen dit voorkomen.

klem die plaat, maat

Lastiger wordt het als bovenstaande oorzaken kunnen worden uitgesloten. Bij een verschuiving in alleen de x- of y-richting kan er sprake zijn van een slippend tandwiel bij de betreffende motor. Controleer of de borgschroef van het tandwiel goed is aangedraaid op de motoras. Dat is gemakkelijk te doen als je merktekentjes aanbrengt: een op de motoras, een op het tandwiel. Als deze ten opzichte van elkaar verschuiven, zie je het meteen en weet je dat de motor slipt. Liefst breng je de merktekens natuurlijk aan als de motor niet draait.



Als de voor de hand liggende oorzaken zijn uitgesloten, blijven de meer exotische gevallen over. Bij ons bleek het te liggen aan een slecht contactje in de optische x-eindstop. Dit contact was altijd prima, maar tijdens hevige vibraties bij het printen kon het even verbroken worden. Dan constateerde de firmware dat de eindstop was getriggerd, en maakte hij op grond hiervan een translatie naar de juiste x-positie. Die dus fout was. Gelukkig was het gemakkelijk op te lossen, en sindsdien doet het probleem zich niet meer voor.

dit is echt klote, Jules

Een variant van de storing deed zich voor toen we met de firmware overstapten van Sprinter naar Marlin. Agressieve instellingen voor de versnelling bij het printen zorgden voor sprongen in de print. Een keuze voor lagere versnellingswaarden loste het probleem op, zoals hier beschreven.

vrijdag 30 mei 2014

Van Sprinter naar Marlin

Bij de installatie van de elektronica en de software van onze MendelMax hebben we aanvankelijk gekozen voor de Sprinter firmware. Dat stelde de minste eisen en was het eenvoudigst, en omdat we geen geavanceerde zaken wilden voldeed het prima.

Maar toen schaften we een grafisch display aan en werd alles anders. Het display willen we gebruiken bij onze nieuw te bouwen Kossel, maar natuurlijk wilden we hem alvast testen op de MendelMax. Sprinter blijkt geen displays te ondersteunen, en daarom moesten we overstappen op Marlin. Dat is op Sprinter gebaseerd, maar geavanceerder en met meer mogelijkheden. Een van de voordelen van Marlin is dat de software vooruit kijkt, en daardoor betere kwaliteit prints aflevert. We zullen zien. Een ander voordeel is dat Marlin een auto bed leveling probe ondersteunt, wat we willen gebruiken bij de Kossel

Marlin blijkt ook een stuk groter te zijn dan Sprinter als de ondersteuning voor LCD's wordt meegenomen. Te groot zelfs voor onze Atmega 1280 Arduino-kaart. Geen nood, bij de Kossel komt een Atmega 2560, waarmee het wel moet lukken. Maar ondertussen zijn we dus over op Marlin, en daar blijkt nog even wat werk in te zitten.

Om Marlin lekker te laten werken moeten we in de Arduino-software aanpassingen doen in het bestand Configuration.h - net zoals bij Sprinter. Ook hier moeten we weer opgeven met wat voor hardware en temperatuursensoren we werken, wat de standaardwaarden zijn voor de stappenmotoren van de x-, y- en z-assen en de extruder, en hoe het zit met de eindstops.

Zodra we alles hadden aangepast en wilden gaan printen, ging de MendelMax als een dolle te keer. De bewegingen van de x- en y-as waren erg abrupt en gaven nogal wat vibraties, maar de print kwam tot stand en behoorlijk snel ook. Helaas ging het verderop in de prints steeds fout omdat de printer een sprong maakte in de x-richting. Prints werden dus scheef, en dat moest aan Marlin liggen omdat we er met Sprinter geen last van hadden.

In de firmware vonden we instellingen die de maximale versnelling langs de assen vastleggen. Deze staan standaard erg agressief ingesteld; 9000 millimeter per seconde kwadraat. Dat is 0,9 G! Die hebben we teruggezet naar 900. Ook de standaardversnelling hebben we teruggebracht, en wel naar 300 mm/s^2. Hiermee was het probleem opgelost en gedroeg de printer zich ongeveer zoals we onder Sprinter gewend waren. Omdat een beetje extra snelheid nooit weg was, hebben we geƫxperimenteerd met hogere waarden, en een standaardversnelling van 600 bleek geen kwaliteitsverlies te geven. We zijn tevreden, en kunnen met de Kossel (die een veel lichtere Bowden-extruder krijgt) experimenteren met hogere waarden.

Hieronder nog eens de belangrijkste instellingen die voor ons prettig werken. Natuurlijk zijn de waarde afhankelijk van de gebruikte stappenmotoren, tandwielen, transportbanden en trapeziumspindels.

#define BAUDRATE 250000

#define MOTHERBOARD 33

#define TEMP_SENSOR_0 1
#define TEMP_SENSOR_1 0
#define TEMP_SENSOR_2 0
#define TEMP_SENSOR_BED 1

const bool X_MIN_ENDSTOP_INVERTING = false; 
const bool Y_MIN_ENDSTOP_INVERTING = false; 
const bool Z_MIN_ENDSTOP_INVERTING = false;

#define INVERT_X_DIR true    
#define INVERT_Y_DIR true    
#define INVERT_Z_DIR false

#define X_HOME_DIR -1
#define Y_HOME_DIR -1
#define Z_HOME_DIR -1

#define DEFAULT_AXIS_STEPS_PER_UNIT   {80, 80, 3200/3, 750}
#define DEFAULT_MAX_FEEDRATE          {500, 500, 5, 25}    
#define DEFAULT_MAX_ACCELERATION      {900,900,80,10000}
#define DEFAULT_ACCELERATION          600    
#define DEFAULT_RETRACT_ACCELERATION  600

#define DEFAULT_XYJERK                5.0    
#define DEFAULT_ZJERK                 0.4    
#define DEFAULT_EJERK                 5.0

Verder hebben we de standaardwaarden aangehouden.