|
<< Click to Display Table of Contents >> Programowanie- Makra |
![]() ![]()
|
W tej sekcji, tłumaczone są podstawy programowania makra. Każde makro rozpoczyna się linią:
// Makro jest zakładane (ta linia musi byc zawsze podana raz na początku) Macro theMacro = new Macro(this.Context.Parent, "Nazwa makra"); |
Powyżej podana linia zakłada makro objekt o nazwie "theMacro". Parametr "this.Context.Parent" łączy makro z cncGraF Pro. Ten parametr musi być zawsze podany. Drugi parametr jest tekstem co sie pojawia podczas wykonywania makra w listwie statusu.
Za pomocą makro objektu "theMacro" można wywoływać przeróżne funkcje. Poniżej podane makro wykonuje rozkazy DIN66025.
Rozkazy DIN66025 są dodawane linią po linii za pomocą rozkazu 'theMacro.AddNxx("....")'. Rozkaz "theMacro.Start();" wykonywuję rozkazy DIN66025.
Rozkaz 'theMacro.Clear(); ' kasuje wszystkie rozkazy wcześniej podane za pomocą rozkazu 'theMacro.AddNxx("....")'.
// Macro jest zakładane (ta linia musi byc zawsze podana raz na początku) Macro theMacro = new Macro(this.Context.Parent, "Wykonaj DIN66025");
// Dodaj rozkazy DIN66025 theMacro.AddNxx("G90"); theMacro.AddNxx("G0 Z1 M03"); theMacro.AddNxx("G0 X50 Y150"); theMacro.AddNxx("G0 Z5 M05");
theMacro.Start(); // Rozkazy DIN66025 są wykonywane
|
Za pomoca makra można włączać wyjścia lub odpytać ich status. Makro na dole włącza wyjście 1 i odpytuje jego status.
// Macro jest zakładane (ta linia musi byc zawsze podana raz na początku) Macro theMacro = new Macro(this.Context.Parent, "Wyjście");
// Włącza wyjście 1(Wartość 'true', wartość 'false' wyłącza wyjście) theMacro.SetOutput(1, true);
// Status wyjścia jest odpytywany if(theMacro.IsOutputOn(1)) {
// Wyjście 1 jest włączone! theMacro.MessageBox("Wyjście 1 jest włączone!");
} else { // Wyjście 1 nie jest włączone! theMacro.MessageBox("Wyjście 1 nie jest włączone!"); }
|
Wyjścia jak i rownież wejścia mogą być odpytane. Poniższe makro odpytuje wejście 9.
// Macro jest zakładane (ta linia musi byc zawsze podana raz na początku) Macro theMacro = new Macro(this.Context.Parent);
// Status wejścia 9 jest odpytywane. Za pomocą 'true' lub 'false' można inwertować odpytywane wejście if(theMacro.IsInputOn(9, true)) {
// Jeśli 'true' to wejście 9 włączone theMacro.MessageBox("Wejście 9 na Con3 jest włączone!"); }
|
Za pomocą makra można narzędzia odkładać. Aby to bylo możliwe musi być włączony zmieniacz narzędzi.
// Macro jest zakładane (ta linia musi byc zawsze podana raz na początku) Macro theMacro = new Macro(this.Context.Parent, "Ostanie narzędzie odłóż i weź narzędzie 3");
theMacro.ToolPutOff(); theMacro.ToolFetch(3);
|
Za pomocą makra można wyczytywać przeróżne systemowe informacje. Makro poniżej wyczytuje absolutną pozycje Z maszyny i pokazuje wynik w oknie dialogowym.
// Macro jest zakładane (ta linia musi byc zawsze podana raz na początku) Macro theMacro = new Macro(this.Context.Parent);
var theZ = theMacro.GetAbsPosZ(); // Czytaj pozycję maszyny Z
// i pokaż w oknie dialogowym theMacro.MessageBox("Pozycja maszyny w Z wynosi: " + theZ); |
Poniżej podane makro wykonuje jazdę referencyjną.
// Macro jest zakładane (ta linia musi byc zawsze podana raz na początku) Macro theMacro = new Macro(this.Context.Parent); theMacro.Reference(); |
Pełna dokumentacja makra znajduje się w pliku macro.chm. Plik macro.chm znajduję sie w katalogu cncGraF Pro.