1. Mindestanforderungen

Das minimale System, um LinuxCNC unter Debian/Ubuntu zu nutzen variiert mit der jeweiligen Anwendung. Stepper-Systeme benötigen im Allgemeinen schnellere Threads, um Schrittimpulse zu erzeugen, als Servo-Systeme. Sie können die Live-CD verwenden, um die Software zu testen, bevor Sie sich für eine permanente Installation auf einem Computer entscheiden. Beachten Sie, dass die Zahlen des Latenz-Tests für die Software-Schritterzeugung wichtiger sind als die Prozessorgeschwindigkeit. Mehr Informationen über den Latency Test sind hier. Außerdem muss LinuxCNC auf einem Betriebssystem ausgeführt werden, das einen speziell modifizierten Kernel verwendet, siehe Kernel and Version Requirements.

Weitere Informationen finden Sie auf der LinuxCNC Wiki Seite: Hardware Requirements

LinuxCNC und Debian Linux sollte einigermaßen gut auf einem Computer mit den folgenden minimalen Hardware-Spezifikationen laufen. Diese Zahlen sind nicht das absolute Minimum, sondern wird eine angemessene Leistung für die meisten Stepper-Systeme geben.

  • 700 MHz x86-Prozessor (1,2 GHz x86-Prozessor empfohlen) oder Raspberry Pi 4 oder besser.

  • LinuxCNC 2.8 und neuere Releases der Live CD erwarten ein 64 bit fähiges System.

  • 512 MB RAM, 4 GB mit GUI, um Überraschungen zu vermeiden

  • Keine Festplatte für Live CD, 8 GB oder mehr für dauerhafte Installation

  • Grafikkarte mit einer Auflösung von mindestens 1024x768, die nicht die proprietären NVidia- oder ATI-Treiber verwendet. Moderne Onboard-Grafikchipsätze scheinen im Allgemeinen in Ordnung zu sein.

  • Internetverbindung (nicht unbedingt erforderlich, aber sehr nützlich für Updates und für die Kommunikation mit der LinuxCNC-Community)

Die Mindestanforderungen an die Hardware ändern sich mit der Weiterentwicklung der Linux-Distributionen, daher sollten Sie sich auf der Debian-Website über die Details der von Ihnen verwendeten Live-CD informieren. Bei älterer Hardware kann es von Vorteil sein, eine ältere Version der Live-CD zu wählen, wenn diese verfügbar ist.

If you plan not to rely on the distribution of readily executable programs ("binaries") but aim at contributing to the source tree of LinuxCNC, then there is a good chance you want a second computer to perform the compilation. Even though LinuxCNC and your developments could likely be executed at the same time with respect to disk space, RAM and even CPU speed, a machine that is busy will have worse latencies, so you are unlikely to compile your source tree and produce chips at the same time.

2. Kernel- und Versionsanforderungen

LinuxCNC erfordert einen Kernel, der für die Echtzeitnutzung modifiziert wurde, um echte Maschinenhardware zu steuern. Es kann jedoch auf einem Standard-Kernel im Simulationsmodus für Zwecke wie die Überprüfung G-Code, Testen von Konfigurationsdateien und Lernen des Systems laufen. Um mit diesen Kernel-Versionen arbeiten zu können, werden zwei Versionen von LinuxCNC verteilt. Die Paketnamen sind "linuxcnc" und "linuxcnc-uspace".

Die Echtzeit-Kerneloptionen sind preempt-rt, RTAI und Xenomai.

Sie können die Kernel-Version Ihres Systems mit dem folgenden Befehl ermitteln:

uname -a

Wenn Sie (wie oben) -rt- im Kernel-Namen sehen, dann laufen Sie mit dem preempt-rt Kernel und sollten die "uspace" Version von LinuxCNC installieren. Sie sollten auch uspace für "sim"-Konfigurationen auf Nicht-Echtzeit-Kerneln installieren.

Wenn Sie -rtai- im Kernel-Namen sehen, dann laufen Sie mit RTAI-Echtzeit. Siehe unten für die LinuxCNC Version zu installieren.

2.1. Preempt-RT mit dem Paket linuxcnc-uspace

Preempt-RT ist das jüngste der Echtzeitsysteme und ist auch die Version, die einem Mainline-Kernel am nächsten kommt. Preempt-RT-Kernel sind als vorkompilierte Pakete in den Haupt-Repositorien verfügbar. Mit dem Suchbegriff "PREEMPT_RT" werden sie gefunden, und man kann sie wie jedes andere Paket herunterladen und installieren. Preempt-RT bietet im Allgemeinen die beste Treiberunterstützung und ist die einzige Option für Systeme, die Mesa-Ethernet Hardware-Treiberkarten verwenden. Im Allgemeinen hat preempt-rt die schlechteste Latenzzeit der verfügbaren Systeme, aber es gibt Ausnahmen.

2.2. RTAI mit linuxcnc-Paket

RTAI ist seit vielen Jahren die Hauptstütze der LinuxCNC-Distributionen. Es wird in der Regel die beste Echtzeit-Leistung in Bezug auf niedrige Latenz, aber möglicherweise schlechtere Peripherie-Unterstützung und nicht so viele Bildschirmauflösungen haben. Ein RTAI-Kernel ist im LinuxCNC-Paket-Repository verfügbar. Wenn Sie aus dem Live/Install-Image installiert haben, wird der Wechsel zwischen Kernel und LinuxCNC-Flavour in [Installing-RTAI] beschrieben.

2.3. Xenomai mit linuxcnc-uspace Paket

Xenomai wird auch unterstützt, aber Sie müssen den Kernel finden oder bauen und LinuxCNC aus den Quellen kompilieren, um es zu nutzen.

2.4. RTAI mit linuxcnc-uspace-Paket

Es ist auch möglich, LinuxCNC mit RTAI im User-Space-Modus zu betreiben. Wie bei Xenomai müssen Sie dazu aus dem Quellcode kompilieren.

3. Problematische Hardware

3.1. Laptops

Laptops sind im Allgemeinen nicht für die Erzeugung von Softwareschritten in Echtzeit geeignet. Auch hier wird Ihnen ein Latenztest über einen längeren Zeitraum die Informationen liefern, die Sie benötigen, um die Eignung festzustellen.

3.2. Videokarten

Wenn Ihre Installation mit einer Bildschirmauflösung von 800 x 600 erscheint, erkennt Debian höchstwahrscheinlich Ihre Grafikkarte oder Ihren Monitor nicht. Dies kann manchmal durch die Installation von Treibern oder die Erstellung/Bearbeitung von Xorg.conf-Dateien umgangen werden.