Posts mit dem Label Rostock werden angezeigt. Alle Posts anzeigen
Posts mit dem Label Rostock werden angezeigt. Alle Posts anzeigen

Sonntag, 26. April 2015

Mini Delta 3D Drucker für 160€

Auf Kickstarter gibt es eine derzeit sehr erfolgreiche Kampagne für den TIKO 3D Delta Minidrucker.
Das Gerät verfügt über ein Gehäuse, das gleichzeitig als Führung für die drei Achsen des Deltas dient. Dadurch spart man natürlich viel Platz, Komponenten und somit Geld. Nebenbei sieht der Drucker auch noch ganz gut aus. Early birds konnten das Gerät sogar für 99 US$ erwerben, was zeigt welches Potential noch in der simplen Lösung steckt. Der Antrieb erfolgt direkt, die Motoren werden also mittransportiert.
Auf der Oberseite des Druckers befindet sich ein Fach für das Filament. Versprochen wird die Verarbeitung von: 
  • ABS
  • PLA
  • Nylon
  • HIPS
  • ..more(?)

Auch hinsichtlich der Software hat sich das Team etwas einfallen lassen. Der Zugriff auf den Tiko erfolgt wireless über das Smartphone, die Cloud usw. Also bequem und auch aus der Ferne.


Wer sich beeilt, bekommt noch einen Tiko für derzeit immer noch günstige 179 US$. Ausgeliefert wird laut Anbieter ab Herbst 2015. Von den avisierten 100.000 US$ sind bereits 2.5 Mio US$ (Stand heute) eingeworben. Der Tiko wird also in Serie gehen.
Hier der Link zur Kampagne des billigen 3D Delta Druckers:
https://www.kickstarter.com/projects/tiko3d/tiko-the-unibody-3d-printer?ref=category_popular

Freitag, 28. November 2014

Euromold 2014 Halle 11 3D Drucker - Bericht II


Messebericht II zur Euromold 2014

Trend: Get big, get niche or get OUT!

Um in der immer mehr ausufernden Flut von kleinen FDM 3D Drucker Anbietern nicht unterzugehen, muss man sich wohl auf diese Weisheit, die mal der IT Branche zugeschrieben wurde, besinnen. Da sich die Leistungen und der Aufbau der kleinen 3D Drucker nur marginal unterscheiden, ist es wichtig den USP - den Unique Selling Point - oder zu deutsch: das Alleinstellungsmerkmal  -heraus zu stellen. Viele Anbieter haben deshalb begonnen, großformatige 3D Drucker zu entwickeln.

Der X1000 von German RepRap bietet 1000 x 800 x 600 mm Bauraum. Somit lassen sich auch Prototypen, Mockups und ähnliches von Objekten wie Motoren oder Getrieben drucken. Unkompliziert in PLA. auch da kein beheiztes Druckbett vorgesehen ist, aber dafür verfügt der Drucker über eine extrem hohe Massenträgheit durch seine schwere Bauweise, dicke pulverbeschichte Außenbleche und ein insgesamt massiven Aufbau, der schnelle Druckkopfbewegungen auffangen kann.
Florian Bautz, Gründer von German RepRap vor dem X1000. 
Lieferbar ist der X1000 ab Anfang 2015 Preise ab 28.000 €. Da mag der eine oder andere RepRap Frickler zusammen zucken, aber als Alternative für Unternehmen, die Rapid Prototyping in Form von SLS oder DLP betreiben, ist das ein Schnäppchen und gut um den Faktor 10 bis 20 billiger als entsprechende Maschinen. Zudem ist Verbrauchsmaterial und Ersatzteilversorgung erheblich billiger und unkomplizierter da es ja irgend wie auch noch ein RepRap ist...

 Big ist in: Schnucklig ist der BigRep irgendwie schon, aber sicherlich gibt es auch ernsthafte Verwendungszwecke als beispielsweise der Druck eines orangefarbenen Plastik Beistell Tischchens (Den es bei AliExpress vermutlich für 20 $ gibt).
Aber egal: 3D Druck ist halt eine Lösung, für die nur noch ein Problem gefunden werden muss.
Wem der nicht groß genug ist, dem kann auch nicht mehr geholfen werden.

Der BigRep - ideal um sich mal ein Bobby Car auszudrucken!
Auch die Deltas, seit jeher im XXL Format auf Messen vertreten, sind noch da. Hier können sie ihre Stärke ausspielen: Hohe Objekte mit niedrigen Gerätekosten drucken. Der Aufbau ist denkbar simpel und bei großen Objekten fällt die (derzeitige) Schwäche der Deltas bei Präzision und Probleme bei der Druckbett Kalibrierung auch nicht so ins Gewicht. Dafür ist der Delta leise, schnell und in dieser Größe wesentlich billiger als ein kartesischer 3D Drucker, da er zum Großteil aus Leerraum=Luft besteht.
Na - Oozing oder Nozzle dicht?
Und hier noch ein Vertreter, der wieder mal langweilige Vasen druckt. Warum nicht mal Selena Gomez oder Phillip Lahm?

Freundliches und kompetentes Personal auf dem IGUS Stand - Grabbelkisten mit Spielzeug für große Jungs (und Mädels) - Bastlerherz was willst du mehr? IGUS hat mittlerweile ein kleines, aber feines Sortiment an Produkten, die für 3D Bastler und Hersteller hochinteressant sind. Das liegt aber auch an dem persönlichen Interesse der Mitarbeiter wie Dipl. Ing. Alexander Mühlens oder Dipl. Ing Tom Krause. Die interessieren sich auch privat für RepRap und haben daher nicht nur ein offenes Ohr für diese Besucher, sondern können auch interessante Anregungen an Entwicklung und Fertigung direkt weiter geben. So sind die auf dem Stand gezeigten 3D Drucker bis  auf den Ultimaker von ihnen selbst entworfen und konstruiert.

Deltas von IGUS, natürlich mit IGUS Komponenten.

Noch ein IGUS Delta Demogerät


Delta Drucker am IGUS Stand

Feuchter Bastlertraum - wer will so ein Sortiment nicht in der Werkstatt haben?

Linearführungen hier mal zum Anfassen und rumwobbeln

..was man damit alles bauen könnte...
 Ein - wie ich finde - sehr interessantes Produkt für RepRaper, das aber bislang nicht als solches vermarktet wird ist das iglidur Tribo Tape. Es handelt sich um eine starke (ca 0.5mm ) Folie mit hervorragenden Gleiteigenschaften und ist auch mit einer klebenden Rückseite verfügbar. Somit lassen sich komplette Linearführungen im CAD entwerfen, mit dem FDM Drucker ausdrucken und die Laufflächen anschließend mit dieser Folie (Der Ausdruck Folie ist eigentlich etwas untertrieben da sie wirklich sehr steif ist) bekleben. RepRap im besten Sinne.
Man kann sich also die Linearführung und Laufschlitten frei entwerfen und trotzdem annähernd die Laufeigenschaften von metallischen Führungen erzielen. Das dies wesentlich billiger und trotzdem individueller gestaltbar ist, leuchtet ein.
Nicht abgebildet ist hier das IGUS Filament für FDM Drucker. Mit ihm lassen sich gleitende Bauelemente wie Schlitten Führungen usw. selbst drucken!
Da gute Führungen beim Selbstbau eines 3D Druckers ein großer Kostenfaktor (beim Kossel zum Beispiel der größte Posten) sind, ist hier für kreative Entwickler erstmals die Möglichkeit gegeben, an dieser Stelle erheblich zu sparen und das Design an den Drucker optimal anzupassen.
Nicht mehr ganz neu, aber trotzdem eine Lösung für viele doppelt geführte Z-Achsen und deren Probleme: Die sphärische Trapezgewindespindelmutter aus drylin Kunststoff. Prinzip Festlager/Loslager. Eine Achse wird fest geführt, die andere erhält die sTGSM (nenn ich jetzt mal so). Durch das eingebaute Kugelgelenk können nichtparallele Bewegungen abgefangen werden und kurze Klemmer, die zu Schwankungen in der Kraftumsetzung während der Bewegung führen verhindert werden. Kostet unter 10 € und ist somit sogar günstiger als konventionelle Trapezgewindeflansche/muttern, die meist in Bronze angeboten werden.
Da guckste in die Röhre. Neue Energiekette von IGUS
Interessant war auch eine neue Energiekette von IGUS. Ein modularer Baukasten, mit einzelnen Segmenten, Haltern, Rückholern usw. die auch im Inneren eine saubere Kabelführung und Trennung beispielsweise von Energie und Signalleitungen oder anderen Leitungen ermöglicht. Durchmesser ab 3 mm ! Optimal für  3D Drucker mit Bowden Extrudern  oder für Deltas allgemein.

Gefedertes Rückholsystem mit Umlenkrolle.
Wer IGUS nicht kennt: IGUS ist ein deutscher Hersteller von technischen Kunststoffprodukten und Antriebselementen mit 2400 Mitarbeitern und Sitz bei Köln. Was aber für euch wirklich wichtig ist: Bei IGUS kann man direkt im Shop und ab Stückzahl 1 bestellen! http://www.igus.de
Insbesondere bei kleinen Firmen und Einzelpersonen widmet man sich den Projekten mit derselben Aufmerksamkeit wie anderorts höchstens bei Großabnehmern.
Einen weiteren Bericht zur Euromold 2014 gibt es unter:

http://3dptb.blogspot.de/2014/11/impressionen-von-der-euromold-2014.html




Mittwoch, 5. März 2014

Repetier Host & Slic3r Settings for Rostock Deltabot

Here are my tested Repetier Host and Slic3r settings for my Rostock deltabot. They can be tweaked, but those worked for me.

General printer settings in Repetier Host



Slic3r settings ( Repetier Host)




Output Options & Multiple Extruders unchanged.



Temperature setting was for PLA, hotend with non-standard heating resistor. Real temperature may be different. Usual temperature for PLA is approximatly 190°C-230°C.
Extrusion multiplier: Measure 10cm extruded filament, take several measurements and use average value of extruded filament.






Donnerstag, 13. Februar 2014

Rostock Deltabot wird versteigert

UPDATE: Drucker wurde versteigert und hat nun einen neuen Besitzer. Schöne Grüße nach Österreich!

Mein Rostock Deltabot, der mich fast ein Jahr auf diesem Blog begleitet hat, wird derzeit bei Ebay versteigert. 
Rostock steht bei Ebay zum Verkauf

Der Drucker funktioniert und ist der wahrscheinlich am besten dokumentierte Rostock im Netz, er diente auch als Studienobjekt für mein Buch über 3D Drucker. Es geht hier natürlich weiter mit Deltabots und anderen Druckern, zwei habe ich derzeit in Arbeit. 
Hier Blogeinträge, die sich auf den Drucker der zum Verkauf steht, beziehen:

Donnerstag, 23. Januar 2014

Achsen des Rostock kalibrieren

Normalerweise werden die Achsen ja über den Riemen, das Riemenrad (Pulley) bzw. dessen Zahnung, das Stepping (1/16 oder 1/8) und die Schritte pro voller Umdrehung des Schrittmotors (üblich 200 bei Spitzenmodellen auch 400) errechnet.
Hierfür gibt es aber auch Onlinerechner wie der von Pruza:
http://calculator.josefprusa.cz/#MotorStuffSPMB

Zunächst habe ich den auch benutzt, wenn man aber nicht mit diesen errechneten Werten auf befriedigende Ergebnisse kommt, dann kann man sie auch einfach durch Probieren anpassen.

Man kann aber diese Berechnungen auch durch Messungen ersetzen, was in diesem Fall zuverlässiger ist, wenn man das Modell noch nie gebaut hat.
Deltabots eignen sich hierfür ganz besonders gut, da alle drei Achsen gleich gebaut sind und die selben Parameter haben.

Zunächst einmal müssen aber die Parallelstäbe möglichst alle gleich lang sein. Hierzu nimmt man eine Lehre und prüft den Abstand der Gelenkköpfe. Sie müssen alle das selben Maß haben (bis auf ca.+- 0.05mm). Die Lehre besteht aus einem einfachen Brett auf dem man zwei Schrauben mit dem Kopf in einem gewünschten Abstand aufklebt.

Dann legt man die Stäbe mitsamt den Kugelgelenken auf diese Messlehre und stellt den Abstand zwischen den Löchern so ein dass alle Stäbe gleich lang sind. Ich hatte die Kugelgelenke nicht geklebt, wie es viele machen, sondern mit Gewinden versehen und auf die Stäbe aufgeschraubt. Durch Drehungen kann man dann die Länge der Stäbe einstellen, wobei man etwas eingeschränkt ist, da die Kugelköpfe ja immer zueinander ausgerichtet sein müssen, sie man also nicht 90° zueinander verdreht verwenden kann.

Um nun zu ermitteln wie groß die Abweichung vom errechneten Wert ist, müssen wir zunächst einmal - nach dem Abstimmen der Parallelstäbe - an den Nullpunkt fahren (Homing).

Von dort aus misst man nun den Abstand der Düse zum Druckbett.

Diese, möglichst genau gemessene Höhe trägt man dann in der Firmware in folgenen Eintrag anstelle von XXX in Millimetern ein:

#define MANUAL_Z_HOME_POS XXX // For delta: Distance between nozzle and print surface after homing.

Bei Nachkommastellen bitte darauf achten, dass diese mit einem Punkt vom Ganzteil getrennt werden!

Nun wird Repetier-Host o.ä. aufgerufen und vom Nullpunkt aus eine Fahrt zum Druckbett durchgeführt. Hierzu gibt man folgenden G-Code ein:

g1 Z0 F2000

F2000 ist eine moderate Beschleunigung man kann sie natürlich auch geringer wählen. In jedem Fall muss der Mauszeiger und somit der Finger auf dem Notausschalter von Repetier-Host ruhen, denn die Düse kann bei dieser Fahrt crashen!

Tut sie das nicht und stoppt die Düse einige Zentimeter vor dem Auftreffen auf die Druckebene, so kann man jetzt damit beginnen, die echten Schritte pro mm durch Annäherung zu ermitteln.

Damit man nicht jedes Mal die Firmware neu hochladen muss, kann man sich diese Daten jedoch auch über das auslesbare EEPROM holen, sie verändern und wieder zurück schreiben. Später sollte man den endgültig ermittelten Wert aber auch in der Firmware eintragen und sie abspeichern, damit die Daten konsistent bleiben.

Für den Fall, dass die Düse des Hotends die Druckebene nicht erreicht hat, muss man den Wert im Repetier-Host erhöhen. Dies sollte man in kleinen Schritten tun und zwar so lange bis die Düse fast die Druckebene erreicht und nur noch ein Blatt Papier zwischen Düse und Druckbett passt.

Wäre die Düse in das Druckbett gecrasht, so muss der Wert verringert werden.

Dann wird eine neue Messfahrt zum Nullpunkt und dann wieder zur Druckebene durchgeführt. Auf diese Weise erhält man dann einen sehr guten Wert für die Auflösung des Antriebes des Deltabots.

Der Eintrag in der Firmware findet sich hier:
#define DEFAULT_AXIS_STEPS_PER_UNIT   {81,81,81,128}  // steps per unit

Freitag, 29. November 2013

Rostock Deltaprinter druckt Kossel

LINK-NAME Das ist schon witzig: Der Rostock, der gerade mal zwei Wochen läuft druckt derzeit bereits seinen Nachfolger....
Zunächst wollte ich den Rostock noch optimieren, kalibrieren und sow eiter. Dann aber war mir das Gesamtkonzept zu wackelig. Hohe Präzision bei hoher Geschwindigkeit lässt sich so nicht umsetzen. Einfacher ist es da schon den komplett neu konstruierten Kossel zu verwenden. Steht ja auch so in meinem Buch ;-)
So gräbt der Rostock gerade also sein eigenes Grab. Einige Fehldrucke wird es noch geben, aber dann ist der Umzug in den neuen Kossel Rahmen angesagt.
Hier die Grabrede:

Sonntag, 17. November 2013

Mehr Kalibrierung beim Rostock Deltabot

Seit einer Woche bin ich täglich dabei die Kalibrierung zu verfeinern.
Einige mechanische Probleme müssen noch gelöst werden. So ist das Hotend nicht stabil und vibrationssicher befestigt. Auch der hohe Aufbau sorgt für Instabilitäten die sich in der Präzision des Rostock bemerkbar machen. Ich wollte ja auf die Sperrholz Seitenwände verzichten. Aus dem Baumarkt habe ich mir daher jetzt Acrylglas zuschneiden lassen, das als Seitenwände die Konstruktion stabilisieren soll, aber dennoch einen Einblick in den Ablauf gewährt.
Hier ein paar ausgewählte Probedrucke, die noch stark verbesserungswürdig sind:



0.5 mm thick wall calibration object

...sind bisher aber nur 0.46 mm..


Verändert habe ich in der Repetier Host Software bislang folgendes:

Speed:
- Verfahrgeschwindigkeit auf 220mm/s (Standrad bei kartesischen ist 130 mm/s)

Fehler:
- Spinnfäden : Retract auf 5 mm erhöht ( bei Nicht-Bowden Extrudern normalerweise 1mm )

To-Do:
Wie man an dem Kalibrierobjekt sehen kann sind die 0.5 mm Vorgabe um ca. 10% unterschritten. Bemerkbar macht sich dieser Fehler auch bei feinen Infills am Rand. Ich werde daher den angegebenen Düsendurchmesser von 0.35 mm auf 0.315 mm reduzieren.

Das Druckbett fällt nach wie vor leicht zum B Turm hin ab. Also nicht wirklich sondern die Positionierung der Düse schwebt zu hoch über dem randbereich in Richtung B Turm. Daher werde ich den Parameter in der Firmware, der diesen Effekt steuert nachjustieren. Wie und was genau, dazu später.

Mittlerweile habe ich interessante Zusammenhänge der Parameter in der Firmware und des Verhaltens des Deltabots hinsichtlich seiner Positionierung gelernt. All das ist nicht so einfach wie beim kartesischen Drucker.. 
Die Druckebene plan zu bekommen - also softwaretechnisch, nicht mechanisch! - ist eine echte Herausforderung und nirgends wirklich gut beschrieben.
Ein Tutorial habe ich aber bereits geschrieben und werde es in den nächsten Wochen hier posten - Also abonnier das Blog ;-)

Montag, 11. November 2013

Rostock und die Kalibrierung

Nachdem die Firmware einigermaßen eingerichtet wurde, folgt nun das quälend lange Kalibrieren des Rostock Druckers.
Hierzu gibt es etliches zu tun. Das Druckbett muss eingerichtet werden. Dafür hat Johann Rocholl ein angepasstes Marlin veröffentlicht, mit einer sogenannten Autolevelfunktion.
Meine bislang kläglichen Druckversuche waren zudem um den Faktor 80% zu klein, d.h. statt 20mm Kantenlänge hat mein Würfel nur 11.5mm.
Es beschleicht mich der Verdacht, dass ich die Zahl der Impulse pro mm falsch errechnet habe. Sie hängt von dem Antriebsrad (Pulley), dem Riemen und dem Microstepping ab.
Am einfachsten wäre es vermutlich dem Rostock einen G-Code Befehl zu senden, um ihm zu sagen er solle 100mm nach X oder Y gehen unn dann nachzumessen, wieviel es tatsächlich sind und dann den Wert anpassen. Am einfachsten wäre hierzu ein kurzes Skript.

Samstag, 2. November 2013

Firmware und Slicer beim Rostock einstellen

Seit mehreren Tagen kämpfe ich mich durch die Einstellungen der Firmware und danach über Repetier-Host durch die Einstellungen.
Zunächst einmal zur Firmware:
Hier muss das verwendete Controllerboard angegeben werden. In meinem Fall war es das Sanguino. Alle geänderten Werte sind rot markiert:


// This determines the communication speed of the printer
#define BAUDRATE 250000
//#define BAUDRATE 115200

//// The following define selects which electronics board you have. Please choose the one that matches your setup
// 10 = Gen7 custom (Alfons3 Version) "https://github.com/Alfons3/Generation_7_Electronics"
// 11 = Gen7 v1.1, v1.2 = 11
// 12 = Gen7 v1.3
// 13 = Gen7 v1.4
// 3  = MEGA/RAMPS up to 1.2 = 3
// 33 = RAMPS 1.3 / 1.4 (Power outputs: Extruder, Fan, Bed)
// 34 = RAMPS 1.3 / 1.4 (Power outputs: Extruder0, Extruder1, Bed)
// 35 = RAMPS 1.3 / 1.4 (Power outputs: Extruder, Fan, Fan)
// 4  = Duemilanove w/ ATMega328P pin assignment
// 5  = Gen6
// 51 = Gen6 deluxe
// 6  = Sanguinololu < 1.2
// 62 = Sanguinololu 1.2 and above
// 63 = Melzi
// 64 = STB V1.1
// 65 = Azteeg X1
// 66 = Melzi with ATmega1284 (MaKr3d version)
// 7  = Ultimaker
// 71 = Ultimaker (Older electronics. Pre 1.5.4. This is rare)
// 77 = 3Drag Controller
// 8  = Teensylu
// 80 = Rumba
// 81 = Printrboard (AT90USB1286)
// 82 = Brainwave (AT90USB646)
// 9  = Gen3+
// 70 = Megatronics
// 701= Megatronics v2.0
// 702= Minitronics v1.0
// 90 = Alpha OMCA board
// 91 = Final OMCA board
// 301 = Rambo
// 21 = Elefu Ra Board (v3)

#ifndef MOTHERBOARD
#define MOTHERBOARD 62
#endif

Einschalten sollte man auch unbedingt den Schreib/Lesezugriff auf das EEPROM. Hier werden wichtige Grundwerte gespeichert, die man später mit der Repetiersoftware auslesen und neu setzen kann. Aber Vorsicht! Wenn man später
neu flasht, werden diese Werte gemäß den Angaben aus der Arduino IDE neu gesetzt. Hat man also etwas im direkten Zugriff auf das EEPROM mit der Repetier-Host Software korrigiert, muss man es ebenfalls in seiner MARLIN Firmware ändern, da es sonst immer wieder zurück gesetzt wird.

// EEPROM
// the microcontroller can store settings in the EEPROM, e.g. max velocity...
// M500 - stores paramters in EEPROM
// M501 - reads parameters from EEPROM (if you need reset them after you changed them temporarily).
// M502 - reverts to the default "factory settings".  You still need to store them in EEPROM afterwards if you want to.
//define this to enable eeprom support
#define EEPROM_SETTINGS
//to disable EEPROM Serial responses and decrease program space by ~1700 byte: comment this out:
// please keep turned on if you can.
#define EEPROM_CHITCHAT


Weiterhin muss der Deltamodus eingeschaltet werden:

// Enable DELTA kinematics
#define DELTA

Um dies zu erzielen, müssen die vorangestellten // Zeichen entfernt werden. Sie sind Marker für Kommentare, die zwar im Skript stehen, aber nicht ausgeführt werden. Löscht man die beiden Schrägstriche, werden die Zeilen, denen sie vorangestellt sind  also aktiviert.

Weiterhin müssen Angaben zu den mechanischen Abmessungen gemacht werden. Dies tut man unter:

// Make delta curves from many straight lines (linear interpolation).
// This is a trade-off between visible corners (not enough segments)
// and processor overload (too many expensive sqrt calls).
#define DELTA_SEGMENTS_PER_SECOND 200

// Center-to-center distance of the holes in the diagonal push rods.
#define DELTA_DIAGONAL_ROD 285.0 // mm

// Horizontal offset from middle of printer to smooth rod center.
#define DELTA_SMOOTH_ROD_OFFSET 145.0 // mm

// Horizontal offset of the universal joints on the end effector.
#define DELTA_EFFECTOR_OFFSET 33.0 // mm

// Horizontal offset of the universal joints on the carriages.
#define DELTA_CARRIAGE_OFFSET 23.0 // mm

Die Werte hier gelten natürlich nur für meinen Drucker. Wer wissen will, wie man was ausmisst, kann über diese Zeichnung einen ganz guten Überblick gewinnen:


von: Link zur Abbildung

Allerdings handelt es sich bei der Abbildung um eine Variante mit Profilen und die Abmessungen sind etwas anders. Also selber nachmessen! Bei der Centerline bin ich mir nicht ganz sicher ob das stimmt, denn sie sitzt nicht in der Mitte bei dieser Abbildung.

Weiterhin sind die Einstellungen der Endschalter wichtig. Handelt es sich um Schalter die öffnen oder schließen?
In meinem Fall habe ich Mikroschalter verwendet, die bei Kontakt öffnen.

// coarse Endstop Settings
#define ENDSTOPPULLUPS // Comment this out (using // at the start of the line) to disable the endstop pullup resistors

   // fine Enstop settings: Individual Pullups. will be ignored if ENDSTOPPULLUPS is defined

#ifdef ENDSTOPPULLUPS
  #define ENDSTOPPULLUP_XMAX
  #define ENDSTOPPULLUP_YMAX
  #define ENDSTOPPULLUP_ZMAX
  #define ENDSTOPPULLUP_XMIN
  #define ENDSTOPPULLUP_YMIN
  #define ENDSTOPPULLUP_ZMIN
#endif

// The pullups are needed if you directly connect a mechanical endswitch between the signal and ground pins.
const bool X_MIN_ENDSTOP_INVERTING = false; // set to true to invert the logic of the endstop.
const bool Y_MIN_ENDSTOP_INVERTING = false; // set to true to invert the logic of the endstop.
const bool Z_MIN_ENDSTOP_INVERTING = false; // set to true to invert the logic of the endstop.
const bool X_MAX_ENDSTOP_INVERTING = false; // set to true to invert the logic of the endstop.
const bool Y_MAX_ENDSTOP_INVERTING = false; // set to true to invert the logic of the endstop.
const bool Z_MAX_ENDSTOP_INVERTING = false; // set to true to invert the logic of the endstop.
//#define DISABLE_MAX_ENDSTOPS
//#define DISABLE_MIN_ENDSTOPS

// For Inverting Stepper Enable Pins (Active Low) use 0, Non Inverting (Active High) use 1
#define X_ENABLE_ON 0
#define Y_ENABLE_ON 0
#define Z_ENABLE_ON 0
#define E_ENABLE_ON 0 // For all extruders

Weiterhin müssen die Achsrichtungen umgekehrt werden.
Beim Extruder kommt es darauf an, welchen man verwendet. Bei Direktantrieb ist es ebenfalls bei E= auf TRUE zu setzen. Hat der Extruder ein Getriebe, dann bleibt es bei FALSE.

#define INVERT_X_DIR true   // for Mendel set to false, for Orca set to true
#define INVERT_Y_DIR true    // for Mendel set to true, for Orca set to false
#define INVERT_Z_DIR true     // for Mendel set to false, for Orca set to true
#define INVERT_E0_DIR true   // for direct drive extruder v9 set to true, for geared extruder set to false
#define INVERT_E1_DIR false    // for direct drive extruder v9 set to true, for geared extruder set to false
#define INVERT_E2_DIR false   // for direct drive extruder v9 set to true, for geared extruder set to false


Weiter:

Die nächste Einstellung beschreibt, ob beim Erreichen des Endschalters die maximale oder minimale Bauhöhe des Rostock/Deltadrucker erreicht wurde. Sofern man die Endschalter also oben am Drucker plaziert hat, ist dies der maximale Punkt. Die Z-Koordinate 0 entspricht also dem Druckbett, während alle Werte größer 0 über dem Druckbett schweben. Die Bauhöhe des Rostock kann sich ja jeder selbst bestimmen bzw. messen. Hier an dieser Stelle muss der vorgegebene Wert von -1 auf 1 geändert werden. (Wenn man die Endschalter OBEN am Gerät plaziert hat!)

// ENDSTOP SETTINGS:
// Sets direction of endstops when homing; 1=MAX, -1=MIN
#define X_HOME_DIR 1
#define Y_HOME_DIR 1
#define Z_HOME_DIR 1

Nach dem Anfahren der Endschalter muss der maximale Weg definiert werden, der ab diesem Punkt zurück gelegt werden kann. Dieser hängt natürlich von der Bauhöhe bzw. dem Bauraum ab, den man gebaut hat. Der Wert von 390 bzw 395 ist also entsprechend abzuändern. Es ist der Abstand der Düse zum Druckbett. Am besten man tastet sich hier heran. Nach dem Laden der Firmware startet man hierzu Repetier Host und versucht einen Probedruck. Dabei achtet man auf die korrekte Höhe über dem Druckbett und reguliert evtl. nach.

Die Angaben hier unterhalb, dienen dazu die Größe des Druckbetts zu bestimmen (90 mm - -90 mm =180 mm = Durchmesser des Kreises der bedruckbar ist)

#define min_software_endstops true // If true, axis won't move to coordinates less than HOME_POS.
#define max_software_endstops true  // If true, axis won't move to coordinates greater than the defined lengths below.
// Travel limits after homing
#define X_MAX_POS 90
#define X_MIN_POS -90
#define Y_MAX_POS 90
#define Y_MIN_POS -90
#define Z_MAX_POS 90
#define Z_MIN_POS -90

Geschwindigkeit der Achsen beim "Homing":
Hier ist es wichtig, die dritte (Z-) Achse auf die selben Geschwindigkeit einzustellen, wie die beiden anderen. Sonst zieht der Delta die "Z" Achse nach.

//// MOVEMENT SETTINGS
#define NUM_AXIS 4 // The axis order in all axis related arrays is X, Y, Z, E
#define HOMING_FEEDRATE {50*60, 50*60, 50*60, 0}  // set the homing speeds (mm/min)

Wenn man die Firmware hochgeladen hat, kann man damit beginnen mit der Repetier-Host Software die Einstellungen zu überprüfen.
Wichtige Kommandos:
G28 -> Fährt ganz nach oben gegen die Endschalter
M119-> Gibt unten in der Statuszeile die Zustand der Endschalter aus. So kann man auch rausfinden was X,Y und Z Achse in dem System ist.
ECHO muss dafür in der Repetiersoftware aktiviert sein.

Wichtig ist es auch, dass alle drei Achsen die selbe Verfahrgeschwindigkeit haben.
Dazu müssen alle drei Achsen die selben Werte für maximale Geschwindigkeit, Beschleunigung und Schritte pro Umdrehung aufweisen.
Wie viele Schritte der Schrittmotor für eine Umdrehung benötigt (#define DEFAULT_AXIS_STEPS_PER_UNIT), richtet sich nach den verwendeten Bauteilen (Pulley/Riemenscheibe), die Riementeilung und die Anzahl der Zähne, sowie welches Microstepping eingestellt ist. Ein praktische Rechenhilfe findet sich hier: http://calculator.josefprusa.cz/#MotorStuffSPMB.
Das Microstepping ist bei meinem Sanguino Board so geschaltet so dass ich 1/16 Schritte dort verwende. Die Einstellung erfolgt mithilfe dreier Jumper, die jeweils unter jedem einzelnen Pololu Schrittmotortreiber sitzen.

Hier ein Beispiel der Jumpersettings aus dem Wiki:

Somit führt dies zu:

#define DEFAULT_AXIS_STEPS_PER_UNIT {80, 80, 80, 172.222}  // default steps per unit for Rostock
#define DEFAULT_MAX_FEEDRATE          {200, 200, 200, 25}    // (mm/sec)
#define DEFAULT_MAX_ACCELERATION      {2000,2000,2000,10000}    // X, Y, Z, E maximum start speed for accelerated moves. E default values are good for skeinforge 40+, for older versions raise them a lot.

Sonst kommt es zu einem Fehler bei dem eine Achse schneller verfährt als die anderen und daher der Delta scheinbar in eine bevorzugte Richtung läuft.

Slic3r


Ändern sollte man natürlich auch die Konfiguration des Slic3r in Repetier Host. Dieses schneidet wie der Name bereits sagt, die CAD Daten in handliche Scheiben, die dann gedruckt werden können. Wichtigste Änderung ist die Mitteilung, dass das Zentrum beim Rostock bei 0,0 liegt. Weiterhin der Durchmesser des Filaments und der der Düse.

Unter dem Reiter "printersettings" habe ich bed size auf x= 100 und y=100 gesetzt. Vorher wollte der Drucker immer alles in eine Ecke drucken statt in der Mitte.


Wie man rechts sehen kann habe ich die Konfiguration als "Rostock-2" abgespeichert. So kann man schnell verschiedene Setups erzeugen und damit ausprobieren, wie alles klappt.

Donnerstag, 31. Oktober 2013

Der Rostock lebt!

Nachdem zwei Controller den Dienst verweigerten, halfen Günter und Hardwarekiller vom FFM Hackspace die beiden Teile doch noch zum Laufen zu bringen. Der Sanguino aus China hatte wohl eine defekte CPU und der Saintsmart 2560 für den RAMPS Controller keinen Bootloader.
Nach ersten groben Einstellungen der Config.h. zuckten die 6 Streben schon einmal auch ein Probedruck ohne Extruder ließ sich ausführen.
Jetzt geht es an die Feineinstellungen, das kann also noch dauern...
Ein paar Bilder von der Frickelnacht im FFM Hackerspace: