Bohrautomat

From Open Source Ecology - Germany
Jump to: navigation, search

Bohrautomat

Dieser Bohrautomat soll hauptsächlich dazu dienen, die Teile des UniProKit Basis-Set Strukturelemente automatisch bohren zu können, auf eine Länge von 1m.

X-Achse

Konstruktion










Herstellung der Spezialteile aus Multiplex-Platte

Zusammenbau der X-Gantry

Z-Achse

Konstruktion

Montage der Z-Seitenplatten

Y-Achse

Konstruktion

Montage der Y-Achse

Elektronik

Die Steuerung basiert auf einer RAMPS1.4/ArduinoMega-Elektronik wie sie in den meisten 3D-Druckern zum Einsatz kommt und ist somit für sehr wenig Geld (im Vergleich mit anderen CNC-Steuerungen) erhältlich. Dies wurde erreicht, indem für jede Motorachse zwei Motoren zum Einsatz kommen, d.h., die benötigte Kraft pro Achse wird verteilt und die benötigten Motoren können somit kleiner ausgelegt wird - passend zu den Pololu-Treibern auf dem RAMPS-Board - die können nämlich nur Motorströme bis etwa 2A regeln.

Für die schweren 3A/3Nm-Stepper [1] der Y-Achse reicht dies jedoch nicht, weswegen hier zwei Powerlolu-Treiber zum Einsatz kommen. Diese können einerseits Ströme bis zu 10A regeln, sind aber andererseits zum RAMPS-Board kompatibel.

Die Motoren werden wie folgt an die RAMPS-Ports angeschlossen:

Z-Achse: Beide Motoren gehen an den Z-Port, denn das RAMPS-Board ist ohnehin so ausgelegt, das bei der Z-Achse zwei Motoren an einen Pololu angeschlossen werden. Somit sind diesbezüglich auch keinerlei Änderungen in der Firmware vonnöten.

Y-Achse: Die Powerlolus werden mittels eines kleinen Adapters (hier: aus Lochraster und selbstgelötet) an den Y-Port und an den Extruder1-Port angeschlossen, wobei der am Extruderport befindliche Motor hier nur an die Stromversorgung angeschlossen ist (5V für das Powerlolu-Board). Die Datenleitungen DIR, STEP und ENABLE werden vom Y-Port her durchgeschleift, damit beide Powerlolous synchron das gleiche Steuersignal bekommen. Somit sind auch hierfür keine Änderungen in der Firmware vonnöten.

X-Achse: Ein Motor hängt regulär am X-Port, der andere am Extruder0-Port. Hier musste die Firmware dahingehend angepasst werden, dass alle Signale für den X-Port auch an den Extruder0-Port gehen. Dabei ist es sinnvoll, das so zu machen, dass die ganze Extruderlogik softwaremäßig völlig ausgeklammert bzw. überbrückt wird. Ansonsten sind noch in den Configurations-Defaultwerten ein paar kleinere Änderungen vonnöten die den Antrieb mittels Gewindestange im Gegensatz zum Zahnriemen beim Drucker betreffen, d.h. der Step-per-Unit- bzw. Step_pro_mm-Wert muss angepasst werden sowie die Feed-Geschwindigkeiten.

Als Firmware-Grundlage wurde eine ältere und abgespeckte Version von "Sprinter" verwendet, einer früher recht wei verbreiteten 3DPrinter-Firmware, die aber inzwischen oft durch "Marlin", einem auf Sprinter basierenden Nachfolger, abgelöst wurde. Für diesen Zweck hier ist die ältere Sprinter-Version aber günstiger, da sie kleiner, überschaubarer und ursprünglicher ist und weniger 3D-Printer-spezifische Features enthält.

Da alle Hardwarespezifischen Besonderheiten innerhalb der Firmware abgehandelt werden, ist diese nun nach aussen hin transparent, soll heissen, als Host-Software kann ein normaler 3D-Printer-Host wie pronterface/printrun verwendet werden, um G-Code-Befehle an die RAMPS/Arduino-Steuerung zu senden.

Still ToDo: Insbesondere in der Anwendung als Bohrautomat kann die Maschine nun schon benutzt werden, für komplexere Fräs-Anwendungen wäre allerdings noch eine Firmware-Anpassung in Form einer Backlash-Kompensation vonnöten. Beim 3DPrinter stellt sich die Problematik insofern nicht, als das X- und Y ohnehin per Zahnriemen angetrieben werden und der Backlash in der Z-Achse ignoriert werden kann, weil hier beim 3D-drucken (der Druckkopf geht Schicht um Schicht höher) ja keine Richtungsänderung erfolgt.

Insofern kann man bereits jetzt schon bohren (indem man die Bohrpositionen so legt, das sie ausschliesslich "aufsetigend" aufeinanderfolgen und zumindest einfache Bahnen fräsen, wenn man vor Richtungswechseln ein Homing durchführt. Aber optimal ist das noch nicht, denn man möchte vielleicht auch mal einen Kreis fräsen und ohne etwaige Zwischendruch-Homings wird der Vorgang natürlich auch schneller.


Stepper-Motoren und Treiber


OptoEndStop

Die OptoEndstops basieren auf der Gabellichtschranke TCST1103. Ich habe meistens alle Bauteile dafür vorrätig und kann mir bei Bedarf schnell die benötigten EndStops zusammenlöten.

Eine gute Anleitung dafür findet man im RepRap-Wiki