Eigene M-Funktionen in EMC definieren

Die erste Möglichkeit: Ein Shellscript im Verzeichnis emc/programs

# M101 in Ihrem G-Code Programm führt die Linux Befehle in diesem Shellscript aus.
# Als Argumente können Sie in diesem Fall '''P''' und '''Q''' übergeben,
# also z.B. M101 P1.Q2.
# Beispiel ohne Funktion 

P=$1
Q=$2

echo "M101 P$P Q$Q: put your code here"

exit 0


Die zweite Möglichkeit: Ein kompiliertes C/C++ Programm im Verzeichnis emc/programs

#include <stdio.h>

/*
  Kompilieren Sie dies mit "gcc M102.c -o M102" und kopieren Sie die ausführbare Datei M102 
  ins Verzeichnis  emc/programs/ . M102 in Ihrem G-Code Programm
  führt dieses Programm aus, die Variablen P und Q können als Kommandozeilenparameter 
  übergeben werden
*/

int main(int argc, char *argv[])
{
  double p = 0.0, q = 0.0;

  /* process the P and Q command line args we will be given */
  if (argc > 1) {
    sscanf(argv[1], "%lf", &p);
  }
  if (argc > 2) {
    sscanf(argv[2], "%lf", &q);
  }

  /* Hier gehört Ihr C/C++ Code hin */

  printf("M102 P%f Q%f: put your code here\n", p, q);

  return 0;
}

Diskussion

EMC/Eigene M-Funktionen (zuletzt geändert am 2007-12-23 22:45:24 durch localhost)