Umbau der Steuerung auf Linuxcnc, Leadshine DM556 und Mesa-Karten

Mit der Steuerung, die ich bisher hatte die auf einem Arduino Mega und Marlin basierte bin ich letztes Jahr an meine Grenzen gestoßen.

Deshalb hatte ich nach einer Weile Recherche die ReArm entdeckt. Dieses Board ist mit Ramps kompatibel und deutlich schneller. Jedoch benötigt man als Firmware auf dem ReArm Smoothieware und damit bin ich nie richtig warm geworden.

Schlussendlich bin ich dann bei LinuxCNC gelandet. Für LinuxCNC musste ich dann aber die Steuerung(Hardware) komplett neu aufsetzen und nochmal ordentlich in Hardware investieren. – und es gibt meine 100%ige Empfehlung!

LinuxcncScreen

Was ist LinuxCNC? (So wie es verstehe und erklären würde)

LinuxCNC ist eine Software in Kombination mit einem „Echtzeitbetriebssystem“. D.h. Die Takte(Signale) für die Steppermotoren werden direkt an die Steppertreiber gesendet und nicht wie bisher per USB an den Arduino und von diesem dann in Schritte umgerechnet. Die Hardwareschnittstelle ist sehr flexibel.  Die einfachste Lösung ist ein Breakoutboard für den Parallelport. Man ist aber deutlich eingeschränkt was die Anzahl der Pins angeht. Kompatible Hardware wird hier beschrieben.

Knackpunkt ist, dass die Software schnell rechnen muss und dabei nicht unterbrochen werden darf. Daher ist die Latenz des verwendeten Rechners sehr wichtig.

Was benötigt  man?

  1. PC auf dem nur die Steuerung läuft. d.h. LinuxCNC.  Die Hardware muss nicht die neuste sein…. Ich hatte zuerst einen Intel i3 bei Pollin (refurbished) bestellt – was dann aber nur ein Intel Xeon war und eine Latenz von deutlich über 200000ns hatte – fürn Arsch. Danach habe ich einen Intel Core Duo bei ebay-kleinanzeigen gekauft für 40€ – der war dann deutlich unter 20.000ns
  2. Breakoutboard. Hier habe ich die Mesa-Karten verwendet. Richtig geiler Scheiß. Superschnell dank FPGA, unendlich Pins und relativ weit verbreitet. Wer sich n bisschen informieren will kann mal den Kanal von talla83 auf youtube anschauen. Da wird viel zu den Mesa-Karten erklärt und gezeigt was man damit machen kann.
  3. Treiber für die Antriebe. Steppertreiber, Servocontroller oder oder oder. Je nach Breakoutboard muss man sich hier die passende Hardware nach eigenem Interesse aussuchen. Ich habe mir die DM556 von Leadshine gekauft und bisher funktionieren die ganz gut. Natürlich würden auch meine alten TB6600 gehen, aber irgendwie wollte ich jetzt mal was bessseres haben…

Mein Setup:

  • Rechner: Core-Duo Desktop-Rechner mit 60GB-SSD (Latenz mit und ohne SSD war nicht spürbar) – Der Rechner sollte nur für die Steuerung genutzt werden. Ansonsten gibt es Probleme mit der Latenz.
  • Mesakarte: 6i25 – das ist zu 100% die gleiche wie die 5i25 nur dass sie einen PCI-Express Anschluss hat. Besser wäre die 5i25 gewesen. Dazu ein weiteres Board das 7i76.
  • Steppertreiber DM556 von Leadshine

Meine Erfahrung/Tipps:

  1. Viele von den im LinuxCNC-Forum empfohlenen PCs haben keine PCIe-Schnittstelle, daher eher die 5i25 wie die 6i25 kaufen.
  2. Kauft am besten gleich ein Set bestehend aus z.B. 5i25 und 6i76 (PlugnGo-Kits) (und das Kabel dazu…. ein Serielles Kabel DB25 (Male auf Male) gibt es nicht so oft zu kaufen) Dann erspart man sich auch das flashen…(was aber auch nicht so schwer ist)
  3. Auf der Mesa Karte müssen die Jumper richtig sitzen. – RTFM oder googlen.
  4. Field Power Versorgung anschließen (Spannungsversorgung für alle I/Os auf der 7i76) Jumperstellung W1 – beachten
  5. Der Konfigurator von LinuxCNC spinnt manchmal…. wenn man die Konfig bearbeitet, kann es sein, dass die Achsen auf einmal um den Faktor 10 oder 100 länger sind. Daher das beim Konfigurieren immer kontrollieren -ansonsten crasht es evt. mal.
  6. Ich konnte trotz mangelnder IT-Kenntnisse mit Linux zurecht, die graphische Installation ist auch nicht schwerer wie Windows neu aufsetzen.

Nützliche Links:

http://linuxcnc.org/ – Downloadseite von LinuxCNC

http://wiki.linuxcnc.org/cgi-bin/wiki.pl – Wiki rund um LinuxCNC

http://wiki.linuxcnc.org/cgi-bin/wiki.pl?Mesa_Cards – LinuxCNC und MesaKarten

http://wiki.linuxcnc.org/cgi-bin/wiki.pl?LinuxCNC_Supported_Hardware – Übersicht über die kompatible Hardware

http://wiki.linuxcnc.org/cgi-bin/wiki.pl?Latency-Test – Übersicht über Hardware und Latenz

https://www.forum.linuxcnc.org/  -LinuxCNC-Forum die erste Wahl für Fragen rund um LinuxCNC

http://www.mesanet.com/ – Herstellerseite – die gängigen LinuxCNC-Karten findet man unter : ANYTHING I/O FPGA CARDS

Lonnox: Gute Übersicht über die Mesakarten

Shops:

Mesa-Webshop (USA)

http://www.shop.cncmonster.de/ – Hier kann man Mesa-Karten kaufen – hier hab ich schon erfolgreich bestellt

http://www.duzi.cz/shop_cnc/index.php?main_page=index&cPath=1  – Hier kann man Mesa-Karten kaufen

http://eusurplus.com/index.php?route=product/category&path=63 – Hier kann man Mesa-Karten kaufen  – hier hab ich schon erfolgreich bestellt

 

Mein Fazit:

Beste Steuerung, die ich bisher gesehen habe. Nicht ganz billig mit den Mesa-Karten, aber jeden Euro wert. In meinem Umfeld steigen immer mehr auf LinuxCNC um, was auch dafür spricht.

 

 

Advertisements

Kommentar verfassen

Trage deine Daten unten ein oder klicke ein Icon um dich einzuloggen:

WordPress.com-Logo

Du kommentierst mit Deinem WordPress.com-Konto. Abmelden /  Ändern )

Google+ Foto

Du kommentierst mit Deinem Google+-Konto. Abmelden /  Ändern )

Twitter-Bild

Du kommentierst mit Deinem Twitter-Konto. Abmelden /  Ändern )

Facebook-Foto

Du kommentierst mit Deinem Facebook-Konto. Abmelden /  Ändern )

Verbinde mit %s

Folge mir auf Twitter