Inhalt - Fräsen mit EMC
EMC 2 - Optionen

EMC kann auf diverse Weisen an die angeschlossenen Maschinen angepasst weden. Dazu gehört sowohl das Ändern der Einstellungen die mit dem Stepper Configuration Wizard gemacht werden als auch das Anpassungen der Benutzeroberfläche oder die Festlegung der beim Starten aktivierten G-Codes.
In Menü vom gestartetem Pogramm ist davon allerdings nichts zu sehen, die Einstellungen hierzu werden in der ini-Datei gemacht.
Die ini-Datei befindet sich auf dem Ubuntu Betriebsystem in folgendem Ordner:
--> "Orte" in der Oberen Menüleiste auf dem Desktop anwählen
--> "Persönlicher Ordner" anwählen
--> Ordner mit namen "EMC" oder "EMC 2" doppelt klicken
--> Und den Namen wählen den man auch für die
      Konfiguration mit dem Wizard ausgesucht hat.
Das Fenster was mit dem Doppelklick auf den Namen geöffnet wird enthält unter anderem eine Datei die ebenfalls dem Namen der für die Konfiguration gewählt wurde hat und zusätzlich die Dateiendung ".ini" die sogleich gedoppelklickt werden sollte.
Falls ein Hinweisfenster aufploppt wird das passende Knöpfchen gewählt was zum anzeigen der Datei führt.
Der Texteditor bringt damit die Konfigurationsdatei zum Vorschein, die im folgenden Häppchen für Häppchen dem Wissengaumen schmackhaft gemacht werden soll.
Bevor aber mit dem würzen der Hauptmahlzeit EMC begonnen wird, empfehle ich das Ausdrucken des Kochbuches was uns erklärt welches Gewürz hier wie einsetzbar ist und welches Geschmackserlebnis wir zu erwarten haben.  Das Kochbuch nennt sich Integrators Manual und wird auch später beim verwenden von EMC immer wieder von großem Nutzen sein. 
Und wo man schon dabei ist und um den Ordner den man neben die Maschine stellen kann voll zu bekommen kann auch die G-Code Referenz hier ein sinnvolles dasein fristen.

Die ini Datei ist unterteilt in verschiedene Bereiche gekennzeichnet durch [ ] eckige Klammern mit der Überschrift für den jeweiligen Bereich. Darunter befinden sich die Optionen für den jeweiligen Bereich an denen veränderungen durchgeführt werden können. Wichtig dabei ist, das nach den ersten kleinen Änderungen EMC einmal gestartet werden sollte,  wurden Fehler gemacht kann so gut nachvollzogen werden wo man zu suchen hat.
Die Einstellungen werden jeweils beim starten von EMC eingelesen und übernommen, wenn Fehler in der Schriebweise gefunden wurden oder ein Wert zu groß oder zu klein ist, startet EMC nicht mehr und es wird eine Fehlermeldung angezeigt.
# Erstellt von stepconf am Mon Nov  2 09:09:28 2009
# Änderungen an dieser Datei werden beim nächsten
# Aufruf von stepconf überschrieben.

[EMC]
MACHINE = High-Z S-1000
NML_FILE = emc.nml
DEBUG = 0

[DISPLAY]
DISPLAY = axis
EDITOR = gedit
POSITION_OFFSET = RELATIVE
POSITION_FEEDBACK = ACTUAL
MAX_FEED_OVERRIDE = 1.2
INTRO_GRAPHIC = emc2.gif
INTRO_TIME = 5
PROGRAM_PREFIX = /home/kai/emc2/nc_files
INCREMENTS = 5mm 1mm .5mm .1mm .05mm .01mm .005mm

[FILTER]
PROGRAM_EXTENSION = .png,.gif,.jpg Greyscale Depth Image
PROGRAM_EXTENSION = .py Python Script
png = image-to-gcode
gif = image-to-gcode
jpg = image-to-gcode
py = python

[TASK]
TASK = milltask
CYCLE_TIME = 0.010

[RS274NGC]
PARAMETER_FILE = emc.var

[EMCMOT]
EMCMOT = motmod
COMM_TIMEOUT = 1.0
COMM_WAIT = 0.010
BASE_PERIOD = 56250
SERVO_PERIOD = 1000000

[HAL]
HALFILE = High-Z S-1000.hal
HALFILE = custom.hal
POSTGUI_HALFILE = custom_postgui.hal

[TRAJ]
AXES = 3
COORDINATES = X Y Z
LINEAR_UNITS = mm
ANGULAR_UNITS = degree
CYCLE_TIME = 0.010
DEFAULT_VELOCITY = 3.33
MAX_LINEAR_VELOCITY = 33.33

[EMCIO]
EMCIO = io
CYCLE_TIME = 0.100
TOOL_TABLE = tool.tbl

[AXIS_0]
TYPE = LINEAR
HOME = 0.0
MAX_VELOCITY = 10.0
MAX_ACCELERATION = 50.0
STEPGEN_MAXACCEL = 62.5
SCALE = 533.333333333
FERROR = 1
MIN_FERROR = .25
MIN_LIMIT = -0.001
MAX_LIMIT = 990.0
HOME_OFFSET = 0.000000
HOME_SEARCH_VEL = -3.000000
HOME_LATCH_VEL = 0.937500
HOME_SEQUENCE = 1

[AXIS_1]
TYPE = LINEAR
HOME = 0.0
MAX_VELOCITY = 31.6666666667
MAX_ACCELERATION = 60.0
STEPGEN_MAXACCEL = 75.0
SCALE = 533.333333333
FERROR = 1
MIN_FERROR = .25
MIN_LIMIT = -0.001
MAX_LIMIT = 590.0
HOME_OFFSET = 0.000000
HOME_SEARCH_VEL = -3.000000
HOME_LATCH_VEL = 0.937500
HOME_SEQUENCE = 2

[AXIS_2]
TYPE = LINEAR
HOME = 104.0
MAX_VELOCITY = 18.0
MAX_ACCELERATION = 60.0
STEPGEN_MAXACCEL = 75.0
SCALE = 533.333333333
FERROR = 1
MIN_FERROR = .25
MIN_LIMIT = 0.0
MAX_LIMIT = 104.001
HOME_OFFSET = 104.000000
HOME_SEARCH_VEL = 3.000000
HOME_LATCH_VEL = -0.937500
HOME_SEQUENCE = 0
Ein Teil der Optionen die hier zur Wahl stehen sollen hier kurz erklärt werden, Details dazu findet man in der Integrators Manual ab Seite  27.

[EMC]
MACHINE =
Name der Maschine; wird in EMC ganz oben in der Titelleiste angezeigt
NML_FILE = EMC kann für die Kommunikation über Netzwerke eingerichtet werden, in den angegebenen Datei werden Details dazu gespeichert.

[Display]
DISPLAY =
Auswahl der Benutzeroberfläche: axis, tkemc, xemc, keystick oder mini
EDITOR = In EMC können G-Code Dateien editiert werden; Das zu startende Programm ist hier eingetragen.
POSITION_OFFSET und FEEDBACK = Positionsanzeige im EMC Vorschaufenster; Die Werte können auch direkt im EMC Menü  eingestellt werden.
MAX_FEED_OVERRIDE = Wert für die maximal Vorschubübersteuerung in EMC; 1.2 entspricht 120%.
INTRO_GRAPHIC = Bilddatei die beim starten von EMC 2 angezeigt wird.
INTRO_TIME = Anzeigedauer des Bildes.
PROGRAM_PREFIX = Werden für EMC Dateien aufgerufen die z.B. zusätzliche Bedienelemente für EMC enthalten, sollten sich die Dateien in dem hier angegebenen Ordner befinden.
INCREMENTS = Für das verfahren mit den Pfeiltasten können hier feste Schrittweiten definiert weden.

[RS274NGC]
Durch das Ergänzen mit dem Eintrag RS274NGC_STARTUP_CODE = könne G-Code Befehle die keine Bewegung zur Folge haben wie z.B. G21 G90 gleich beim Programmstart mit geladen werden.

[TRAJ]
DEFAULT_VELOCITY = gibt an auf welchem Wert der Regler für Schrittgeschwindigkeit beim starten stehen soll.
MAX_LINEAR_VELOCITY = Gibt die maximal  mögliche Verfahrgeschwindigkeit für alle Achsen an. Der hier eingetragene Wert kann von keinem Regler überschritten werden. Die Achsen haben zudem je einen eigenen Maximal wert der in der Rubrik [AXIS_N] zu finden ist.

[AXIS_N]
Die Werte die hier zu finden sind, sind alte Bekannte aus dem Stepper Configuration Wizard. Wurde die ini-Datei seit dem letzten Aufruf vom Wizard geändert, sollten von da an Änderungen nicht mehr mit dem Wizard sondern lieber direkt in der ini vorgenommen werden. Die Änderungen die direkt in der ini bereits gemacht wurden, werden sonst beim erneuten Aufrug des Wizards zurückgesetzt.
[AXIS_0] steht für die X-Achse, 1 für Y und 2 für Z
MAX_VELOCITY = die maximale Geschwindigkeit die beim verfahren der Achse erreicht werden kann.
MAX_ACCELERATION = maximale Beschleunigung der Achse.
MIN_LIMIT = kleinste erreichbare Position (Softwareendschalter).
MAX_LIMIT = größte erreichbare Position (Softwareendschalter).
HOME_OFFSET = Position des Referenz-schalters.
HOME_SEARCH_VEL = Suchgeschwindigkeit beim anfahren der Referenzschalter.
HOME_LATCH_VEL = Geschwindigkeit mit der der Referenzschalter verlassen wird.
HOME_SEQUENCE = Die Achse mit der Ziffer 0 beginnt bei der Referenzfahrt, bekommen die beiden übrigen Achsen den Wert 1 statt 1 und 2, verfahren diese beide gleichzeitig bei der Referenzfahrt.
In der ini-Datei können nicht nur die bestehenden Werte geändert werden, es können auch ganze Rubriken hinzugefügt werden. Infos dazu gibt es ebenfalls in der Integrators Manual. Eine Rubrik die dort nur sehr unscheinbar zu finden ist nennt sich [HALUI] von dieser Rubrik aus können MDI-Commands ausgeführt werden wie auch in EMC selbst in der Registerkarte MDI .  Der Unterschied ist das die MDI-Commandos in der HALUI Rubrik z.B. durch drücken eines eigens eingerichteten Knopfes ausgeführt werden können. Auf diese Weise können Parkpositionen definiert und angefahren werden, eigene Meldungen auf dem Bildschirm erzeugt werden, G64 oder G61 Befehle auf Knopfdruck ausgeführt werden und einiges mehr.
Möglich wird das durch die Verwendung von HAL (Hardware Abstarktion Layer) und Phyton scripten. 
>EMC2 Was brauche ich?<
>EMC2 testen<
>EMC2 installieren<
>EMC2 Stepcon Wizard<
>EMC2 Optionen<
>EMC2 HAL-Verbindungen<
>EMC2 HAL-Bausteine<
>EMC2 Python<
>EMC2 o-Words<