Wie gesagt bin ich schon lange am überlegen, ob ich eine CNC Fräse bauen soll, oder nicht. Für mich war immer klar, dass wenn ich eine CNC Fräse bauen werde, dann will ich vorher die Elektronik im Griff haben. Über EBay und Heise bin ich über einen 3 Achsen Controller gestolpert. Ein Teil, das zwar im Amateursektor liegt, aber dennoch was kann und das man über den Parallel Port steuern kann. Damit macht man vermutlich nichts falsch dachte ich, denn serielle und parallele Schnittstellen sind schon seit gefühlten 1000 Jahren in Betrieb und somit kompatibel mit dem hinter letzten Betriebssystem.

Mein Computer hat schon lange keinen LPT Port mehr, dafür aber die Dockingstation meines Laptops, aber ich hatte meine Rechnung ohne Windows 7 x64 gemacht, denn mit 64 Bit kann die Software (hatte Mach3 getestet) scheinbar nicht. Genauso wie mit Laptops, denn da soll das Timing auf Grund der Schlafmodus-Integration auch nicht wirklich taugen. Und der Parallel Port über eine proprietäre Dell Schnittstelle? Pff… Projekt zum Scheitern verurteilt.

Ich hatte es natürlich versucht und den Schrittmotor an die Elektronik angeschlossen, aber mehr als geglüht hat der Motor nicht. Zumindest ging er, denn er hatte das volle Haltemoment – Aber Bewegung?! Fehlanzeige.
Frustriert landete dieses Stück Hardware nach insgesamt 10h Fehlersuche und Debugging erst einmal in der Ecke. Bei dem Modul handelt es sich um einen 3 Achsen Controller mit TB6560AHQ Chips. Schön anzusehen, aber für meine Betriebssystem Kombi und Schnittstellenproblematik einfach nicht zu gebrauchen.

TB6560AHQ

Pest vs. Cholera
Da dieses Teil aus Fernost leider nicht so funktioniert wie ich es mir gedacht hatte und ich gerne mit USB arbeite habe ich mich auf die Suche nach etwas gemacht, mit dem ich arbeiten kann. Da bin ich auf Arduino und ein Projekt GRBL gestoßen. Wer mich kennt, der weiß, dass ich nicht viel von Arduino halte. Überall werden diese Monster haften Arduino boards verbaut, auch wenn es ein <1€ Controller tun würde. Es wird nicht mehr nachgedacht, sondern nur noch alles mit Hardware erschlagen. Aber genau das ist nicht wirklich meins. Ich lerne gerne neue Sachen von der Basis, verstehe wie Microcontroller funktionieren, ohne das ich eine Tonne von Bibliotheken benötige um dann eine Zeile Code zu schreiben, die dann wie Welt in die andere Richtung drehen lässt.

Doch dieses Mal wollte ich nicht davon abbringen lassen meine CNC Fräse zu bauen, egal ob ein Arduino Herz darin schlummert, oder nicht. (Alleine die Erkenntnis, dass ich damit nicht entwickeln muss um eine CNC Steuerung zu bekommen hatte wirklich sehr viel Charme)
Also Arduino als CNC Controller. Dann fehlen nur noch die Schrittmotor Treiber. D.h. der Controller sorgt dafür, dass die Motoren wissen was sie tun müssen und die Schrittmotor Treiber die zwischen Controller und Schrittmotor hängen versorgen den Schrittmotor und bereiten die Signale des Controller soweit auf, dass er weiß in welche Richtung und wie weit er drehen muss. Es ist auch möglich den oben beschriebenen China Controller über ein Arduino (bzw. einen Microcontroller) zu steuern. Das kam aber zumindest für meine ersten Gehversuche nicht in Frage, da hier auch wieder allerlei Probleme entstehen können.

Als Schrittmotortreiber habe ich welche von Polulu genommen – die A4988. Diese sind zusammen mit Arduino und GRBL sehr einfach zu betreiben. Auch jemand der absolut keine Ahnung von Fräsen hat kommt hier mit einer entsprechenden Anleitung zurecht. Ich möchte aber dennoch gerne die Schritte erläutern, die notwendig sind das Arduino Board dahin zu bringen G-Code zu empfangen.
Als erstes kauft man sich ein Arduino Board. Soweit ich gelesen habe geht es gut mit einem Arduino Nano, oder Arduino Uno. Ich habe mich für das Uno entschieden, weil es für mich praktischer zum Entwickeln ist. Hält man das Arduino Board in der Hand sollte man sich die aktuellen Treiber runterladen, damit es auch korrekt auf dem Laptop erkannt wird. Die Arduino Gui wird nicht wirklich benötigt.
Nach dem das Board korrekt unter Windows (für andere Betriebssysteme müsst ihr leider wo anders gucken) erkannt wurde kann man sich auch direkt ans Flashen machen. Zuerst brauchen wir das .hex File von der GRBL Seite (das sollte einfach zu finden sein). Als nächstes nimmt man den Flasher seiner Wahl, oder den Link von der GRBL Seite für ein mini Tool namens XLoader – http://xloader.russemotto.com/.
Damit flasht man das .hex File zügig und unkompliziert auf den Atmel Chip.
Wie funktioniert nun die Kommunikation?!

Die Kommunikation der Computersoftware zum Übersenden der Steuerbefehle läuft nun über die Serielle Schnittstelle des Arduino. D.h. alle Kommandos werden via USB auf die Serielle Schnittstelle des Atmel Chip übertragen.
Über diese Schnittstelle kann man den Atmel auch konfigurieren um die Schrittmotor Schrittweite zu ändern. Dafür kann man eine x beliebige Terminal Emulation nehmen, oder falls man sich die Arduino GUI heruntergeladen hat diese Verwenden. Der Punkt für die serielle Kommunikation lautet Werkzeuge -> Serieller Monitor.

Nach dem die Verbindung aufgebaut wurde (Seriell mit 9600 Baud) begrüßt uns der Controller mit einem freundlichen Grbl 0.8c [‚$‘ for help].
Hierüber können wir nun alles konfigurieren. Hierzu müsst ihr aber das Wiki von GRBL lesen, denn alle Einstellungen hier noch einmal aufzulisten wäre etwas viel . Ich habe erst einmal alle Parameter so gelassen, wie sie waren und versucht ob der Motor, den ich angeschlossen habe läuft. Als Software, die G-Code versteht und mit GRBL Arbeitet habe ich „GRBL Controller“ heruntergeladen. Das sah ganz praktikabel aus und genau das ist es auch. Für jemanden der zum ersten Mal mit so etwas in Kontakt kommt ist Mach3, zumindest für mich einfach zu überfrachtet.
GRBL Controller ist relativ simpel. Man kann auf den entsprechenden COM Port des Controllers Verbinden und dann ein G-Code File importieren und dann auf „Begin“ drücken.

Wie gesagt, nach dem ich alles soweit verkabelt hatte lief der erste Nema 12 Motor nach nicht einmal 15 Minuten 1a. Vorbei die Zeit des Debuggings, nun konnte ich mich daran machen, die Materialien zu kaufen, die ich brauchte um alles zusammen zu bauen.
Bisher läuft die erste Achse (Frästisch) ganz gut, so dass ich in den nächsten Tagen diesen Beitrag hier mit Fotos über die Verkabelung als auch den nächsten mit dem Basis Aufbau füttern kann, yay.

Nachtrag: Hier geht es zu der weiteren Entwicklung in Sachen CNC

 

Es ist mal wieder so weit, ich wage mich an das Thema kleine selbst gebaute CNC Fräse. Das Internet ist voll mit Informationen und über die letzten 2 Jahre in denen ich mich mit dem Thema beschäftigt habe wurde ein Entwurf nach dem anderen erweitert und wieder verworfen.
Ich hatte damals die Idee eine kleine, kostengünstige CNC zu bauen. Nichts verrücktes, so günstig wie möglich. Dann kam ich vom hundertsten ins tausendste. Aus den normalen M6 Gewindestangen wurden schnell Trapezgewindestangen, aus Schubladenführungen high end Linearführungen und aus meinem Dremel als Bohrkopf eine profi Lösung für mehrere 100 Euro. Liest man sich weiter durch diverse Internet Foren kommt man auf allerlei Schnickschnack. Da fragen User nach eine DIY CNC und werden erstmal mit der Ungenauigkeit der eigenen Idee gefolgt von verschiedensten Fachbegriffen und „MUST HAVE“s (wie z.B. Gravurtiefenregler) geplättet. Von der Ansteuerung und den Schrittmotoren ganz zu schweigen.

Kurzum, mir ging das alles ziemlich auf die Nerven. Ich mag es ein Projekt so kostengünstig wie nötig und dafür so gut wie möglich zu bauen. Ich habe aber keine Lust für eine CNC Fräse 1000€ auszugeben (selbst das reicht ja nicht) um damit 10 kleine Fräsprojekte die mit einer kleinen Toleranz auskommen. Das ganze gelese über Fräsen hat mein Hirn einfach überfrachtet, so dass mir die Lust darauf verging. Alleine die Vorstellung einen CNC Community Shit Storm wegen meiner schlechte Kenntnisse über mich ergehen zu lassen, weil ich an einer Stelle nicht weiter komme erregte in mir das Grauen.
Letztens habe ich dann aber doch wieder das Thema CNC Fräse aufgegriffen und habe mich ins Internet gestürzt.

Meine Vorstellungen waren diesmal klar definiert. Kein Schnickschnack, keine Trapezgewindespindel, keine Linearführungen, keine speziellen Motoren etc… Also wirklich eine CNC Fräse als DIY Projekt, ohne Technologie Kram von dem ich keine Ahnung habe. getreu dem Motto „Learning by doing“. Erst wenn ich in meinen Ergebnissen sehe, dass ich keine Platinen Fräsen kann, oder dass 1-2mm Toleranz für alles zu viel ist, was ich mit der Fräse vor habe, dann will ich die nächsten Schritte vornehmen und mich mit dem ganzen Zeug befassen, von dem ich gelesen habe.
Vorerst bleibt es bei normalen Gewindestangen, Nema 17 Motoren usw. Das genaue Setup wird hier peu a peu veröffentlicht werden.

Also hoffen wir auf gutes Gelingen und harren der Dinge, die da kommen