INI Kategorie Bild

INI Datei

 

Die INI Datei enthält alle wichtigen Einstellungen von Anpassungen der Optik bis hin zu PID Regel Parametern von LinuxCNC.

 

Grundstruktur

LinuxCNC INI Display

 

Um die grafische Oberfläche von LinuxCNC einfach und enorm flexibel zu halten sind viele Einstellungen nur über die INI Datei erreichbar.

Die INI Datei selbst ist dabei eine Text Datei die mit jedem Standard Texteditor bearbeitet werden kann wobei Änderungen immer erst beim nächsten neustart der Konfiguration wirksam werden.

 

Die INI Datei ist in Sektionen aufgeteilt die mit eckigen Klammern gekennzeichnet sind was die Lesbarkeit deutlich vereinfacht. 

 

Die Parameter der INI können natürlich bearbeitet werden, darüber hinaus können die Sektionen aber auch mit diversen nützlichen Parametern erweitert werden. Eine vollständige Auflistung der Parameter kann in der INI Dolumentation von LinuxCNC eingesehen werden.

 

Da die Anzahl der INI Doku mittlerweile zu einer beachtlichen Enzyklopädie angewachsen ist sollen hier folglich nur die gebräuchlichsten Parameter der Sektionen beschrieben werden.

 

Eine Konfiguration kann mit dem StepConf oder PncConf Wizard erstellt oder eine Vorlage aus den Beispiel Konfigurationen genutzt werden ( -->Linux Anwendungsmenü -->CNC -->LinuxCNC).

 

Jede startfähige Konfiguration enthält dabei bereits eine fertig eingerichtete INI die sich im Konfigurations Ordner befindet. 

/home/BENUTZERNAME/linuxcnc/configs/NAME_DER_KONFIGURATION/

 

[DISPLAY]

LinuxCNC INI Display

 

In der [DISPLAY] Sektion finden wir Parameter um die Benutzeroberfläche anzupassen.

 

Interessant sind sowohl die Parameter zum einstellen der Schieberegler als auch die Möglichkeit aus gänzlich unterschiedlichen Benutzeroberflächen zu wählen.

 

Der PROGRAM_PREFIX ist ein guter Kandidat um den Alltag zu beschleunigen.

 

POSITION_FEEDBACK spielt nur eine Rolle wenn es eine Positions-Rückmeldung gibt wie es bei Servo Maschinen üblich ist. Diese Rückmeldung kann mit der Einstellung ACTUAL sehr komfortabel überprüft werden.

 

Parameter Beschreibung
DISPLAY LinuxCNC bietet gänzlich verschiedenen Benutzeroberflächen (GUIs) zur Auswahl an.
OPEN_FILE GCode Datei die beim starten geladen wird.
POSITION_OFFSET Der Nullpunkt der Positionsangaben in der Vorschau kann der Nullpunkt der Maschine (MACHINE) oder der angetastet Nullpunkt (RELATIVE) sein. 
POSITION_FEEDBACK Das Vorschauwerkzeug kann die Soll- (COMMANDED) oder Ist-Position (ACTUAL) anzeigen. Nützlich kann das bei der Einrichtung von Servo Maschinen sein.
MAX_FEED_OVERRIDE Maximum des Schiebereglers für die Vorschubübersteuerung. Ein Wert von 2.5 entspricht 250%
DEFAULT_LINEAR_VELOCITY Startwert des Schiebereglers für die Schrittgeschwindigkeit in mm/s.
MAX_LINEAR_VELOCITY Maximum des Schiebereglers für die Schrittgeschwindigkeit in mm/s.
INCREMENTS Schrittweiten die beim manuellen Fahren zur Verfügung stehen sollen.
PROGRAM_PREFIX Startpfad beim öffnen von NGC (GCODE) Dateien.
INTRO_GRAPHIC Pfad des Bildes das beim starten der Konfiguration angezeigt werden soll. Erlaubt sind GIF Bilder.
INTRO_TIME Anzeigedauer des Startbildes.
EDITOR Text Editor der für den Menü Eintrag -->Datei -->bearbeiten... genutzt werden soll.
CYCLE_TIME Update Intervall der Benutzeroberfläche
MIN_SPINDLE_OVERRIDE Minimum des Schiebereglers für die Spindelübersteuerung. Ein Wert von 0.2 entspricht 20%.
MAX_SPINDLE_OVERRIDE Maximum des Schiebereglers für die Spindelübersteuerung. Ein Wert von 2.5 entspricht 250%.
DEFAULT_SPINDLE_SPEED Startwert des Schiebereglers für die Spindelübersteuerung.
 

[HAL]

LinuxCNC INI Hal

 

HAL ist ein zentrales Werkzeug wenn es darum geht alle Arten von Hardware an LinuxCNC anzubinden. 

 

HALUI = halui lädt mit dem Start von LinuxCNC einen Baustein der diverse Anschlüsse bietet um die Benutzeroberfläche über angeschlossene Hardware zu steuern. Konkret lässt sich das z.B. einsetzen um ein externes Bedienpults ,Fernbedieungen oder Statusanzeigen anzuschließen.

 

Die POSTGUI_HALFILE wird im Gegensatz zur HALFILE später geladen. Das ist wichtig beim Einsatz von eigenen grafischen Erweiterungen (Panels).

Erst wenn ein Panel vollständig geladen wurde existieren auch die HAL Anschlüsse des Panels und können auch erst dann verbunden werden. DIe POSTGUI_HALFILE wird daher explizit erst am Ende des Startvorgangs ausgeführt.

Beide HALFILE Parameter dürfen mehrfach in der [HAL] Sektion aufgerufen werden.

 

Parameter Beschreibung
HALUI Läd das halui Modul für Interaktionen zwischen der Benutzeroberfläche und externer Hardware.
HALFILE Läd die genannte HAL Datei um die LinuxCNC Softwarefunktion mit externer Hardware zu verbinden. 
POSTGUI_HALFILE Läd die genannte HAL Datei am Ende des LinuxCNC Startprozesses.
SHUTDOWN Läd die genannte HAL Datei beim beenden von LinuxCNC. Die Ausführung der Datei kann nicht garantiert werden da verwendete Treiber und das Betriebssystem die Ausführung anhalten oder abbrechen können.
 

[TRAJ]

LinuxCNC INI Display

 

In diesem Bereich sind Parameter zusammengefasst die alle Achsen gleichermaßen betreffen. Auch einige grundlegende Angaben wie die Anzahl der Achsen sind hier zu finden.

 

Der Parameter POSITION_FILE gibt einen beliebigen Dateinamen an, der sich im Konfigurationordner befinden muss. In der Datei wird beim beenden die Positon der Achsen gespeichert und beim Start von LinuxCNC wieder eingelesen. 

Das einsparen der Referenzfahrt kann aufgrund der elektromechanischen Vorraussetzungen von Maschinen nicht empfohlen werden. Darüber hinaus wird nur gespeichert wenn LinuxCNC ordnungsgemäß beendet wird.

Sinnvoll einsetzbar ist die Option dagegen um angetastete Positonen nicht zu verlieren.

  

Der Parameter NO_FORCE_HOMING = 1 sorgt dafür das auch ohne vorherige Referenzfahrt ein GCode Programm ausgeführt werden kann, was je nach Maschienenkonstruktion ein relativ hohes Risiko mit sich bringen kann.   

  

Parameter Beschreibung
AXES Anzahl der Achsen die im System genutzt werden sollen
COORDINATES Hier werden die verfügbaren Achsen Namen definiert. Mögliche Werte sind X, Y, Z, A, B, C, U, V, W.
LINEAR_UNITS Einheit für gerade Bewegungen (z.B. mm oder inch) 
ANGULAR_UNITS Einheit für rotierende Bewegungen (z.B. degree oder rad) 
MAX_VELOCITY Maximale Geschwindigkeit der Achsen. Das gilt insbesondere auch wenn mehrer Achsen gleichzeitig verfahren werden, so das sich die Geschwindigkeiten aufsummieren.
POSITION_FILE Datei im Konfigurationsordner zum zwischenspeichern der Positon beim Beender von LinuxCNC. 
NO_FORCE_HOMMING Ermöglicht das ausführen von GCode Dateien und MDI Befehlen ohne vorherige Referenzfahrt.
 

[AXIS_X] 

LinuxCNC INI Axes Servo LinuxCNC INI Axes Stepper

 

Diese Sektion beinhaltet alle Parameter der Achsen und muss für jede Achse separat aufgeführt sein.

 

Viele der Parameter benötigen etwas Hintergrundwissen. 

Einige der Parameter erklären sich daher erst bei der Einrichtung der Antriebe. Empfehlenswerte Artikel sind je nach Maschinentyp folgende:

 

Der Inhalt der Sektion kann sich je nach Maschinen Typ deutlich unterscheiden. Im linken Bild ist eine Schrittmotor Konfiguration zu sehen, im rechten eine Servomotor Konfiguration.

 

Allgemeine Parameter 

Parameter Beschreibung
TYPE Auswahl des linearen oder rotierenden Achsentyps (LINEAR oder ANGULAR)
HOME Die Position die nach einer Referenzfahrt angefahren wird. Gemeint sind absolute Koordinaten, Antastpositionen oder Verschiebungen haben hier keinen Einfluss. 
MAX_VELOCITY Die maximal erlaubte Geschwindigkeit der Achse in mm/s 
MAX_ACCELERATION Die maximal erlaubte Beschleunigung der Achse in mm/s²  
MIN_LIMIT Der untere Grenzwert vom Arbeitsbereich der Maschine
MAX_LIMIT Der obere Grenzwert vom Arbeitsbereich der Maschine 
HOME_OFFSET Die Position des Referenzschalters 
HOME_SEARCH_VEL Die Geschwindigkeit UND DIE RICHTUNG (Vorzeichen) mit der ein Referenzschalter (schnell) angefahren wird. 
HOME_LATCH_VEL Die Geschwindigkeit UND DIE RICHTUNG (Vorzeichen) mit der ein Referenzschalter (langsam) verlassen wird. 
HOME_FINAL_VEL Die Geschwindigkeit mit der die HOME Position nach der Referenzfahrt angefahren wird.
HOME_SEQUENCE Gibt die Reihenfolge der Achsen bei der Referenzfahrt an. Um z.B. X und Y gleichzeitig zu referenzieren kann die gleiche Reihenfolgen-Nummer mehrmals vergeben werden.  

 

Schrittmotor Parameter 

Parameter Beschreibung
STEPGEN_MAXACCEL Gibt die maximale Beschleunigung des internen Impuls-Generators an. Um Konflikte zu vermeiden sollte der Wert ca. 10% höher als MAX_ACCELERATION sein. Der Wert wird aber letztlich nur intern benutzt und hat keine sichtbare Wirkung zur Folge.
SCALE oder STEP_SCALE Anzahl der Impulse die benötigt werden um einen mm zurück zu legen.

 

Servoantriebs Parameter 

Parameter Beschreibung
BACKLASH Gibt ein ggf. vorhandenes Zahnradspiel bzw. Ungenauigkeiten einer Achse in mm an. Diese Option sollte als letzte Möglichkeit gesehen werden, wenn Ungenauigkeiten seitens der Mechanik vorhanden sind, sollten diese auch seitens der Mechanik behoben werden. 
ENCODER_SCALE oder INPUT_SCALE Die Anzahl der Impulse die ein Encoder bei einer zurückgelegten Strecke von 1 mm ausgibt. Bei Quadraturencodern muss der Aufgedruckte Impulswert/Umdrehung je nach Hersteller ggf. mit dem Wert 4 multipliziert werden. 
OUTPUT_SCALE Der interne PID-Regler arbeitet dimensionslos mit Werten von -1.0 bis +1.0. Um diese Werte für Servoendstufen nutzbar zu machen kann ein OUTPUT_SCALE = 10 den Wertebereich auf -10.0V bis +10.0V heraufskalieren. Siehe auch "Setzen von PID Werten"
OUTPUT_MIN_LIMIT Ein Mesakarten Parameter für die Begrenzung des minimalen Ausgangswertes. Siehe auch "PID Schutzfunktionen"
OUTPUT_MAX_LIMIT Ein Mesakarten Parameter für die Begrenzung des maximalen Ausgangswertes. Siehe auch "PID Schutzfunktionen"
MAX_OUTPUT Begrenzung des PID Regler Ausgangs. Der Wert ist abhängig vom OUTPUT_SCALE Wert. Ist OUTPUT_SCALE = 10 und MAX_OUTPUT = 5.0 wäre die Begrenzung z.B. bei 50%.  Siehe auch "Setzen von PID Werten"
FERROR Weichen die Soll- und Ist-Position einer Achse weiter als der angegebe Wert (in mm) voneinander ab, schaltet LinuxCNC die Maschine aus. Siehe auch "PID Schutzfunktionen"
MIN_FERROR MIN_FERROR und FERROR bilden eine Rampe über den gesamten Geschwindigkeitsbereich der Achse. Wird die Soll-Ist-Differenz überschritten schaltet LinuxCNC die Antriebe ab. Siehe auch "PID Schutzfunktionen"
DEADBAND Positionsabweichungen (in mm) kleiner als der angegebener Wert werden vom PID Regler nicht mehr ausgeregelt. Hat eine Achse Ihr Ziel (nahezu) erreicht, kann so ggf. z.B. der Stromverbrauch leicht gesenkt werden. Siehe auch "Setzen von PID Werten"
P P Wert des PID Reglers für die Positionsregelung. Siehe auch "Setzen von PID Werten"
I I Wert des PID Reglers für die Positionsregelung. Siehe auch "Setzen von PID Werten"
D D Wert des PID Reglers für die Positionsregelung. Siehe auch "Setzen von PID Werten"
FF0 Verstärkt die Reaktion des PID Reglers in Abhängigkeit vom Wert der Zielposition. Siehe auch "Setzen von PID Werten"
FF1 Verstärkt die Reaktion des PID Reglers in Abhängigkeit von der Entfernung zur Zielposition. Siehe auch "Setzen von PID Werten"
FF2 Verstärkt die Reaktion des PID Reglers in Abhängigkeit von der Beschleunigung zur Zielposition. Siehe auch "Setzen von PID Werten"
BIAS Ausgleichswert für eine leichte Drift von Servo betriebenen Achsen. Siehe auch "Setzen von PID Werten"
 

LinuxCNC > Hardware > Mesakarten