Ab BESgrav Version 3.08 stehen in der Werkstückliste Variablen
zur Verfügung,
Befehle zum Abtasten der Materialoberfläche sind auch neu dazu gekommen.
1. Variable/Rechnen
1.1 Aufbau eines Variablennamens
Eine Variable besteht aus einem Buchstaben gefolgt von weiteren Buchstaben
oder Ziffern. Bis zu 30 Zeichen sind als Variablennamen möglich. Als
erstes Zeichen kann auch der Unterstrich stehen (_). Dieser ist jedoch
für die Zukunft im Zusammenhang mit Unterprogrammtechnik und lokalen
Variablen reserviert.
Klein- und Großbuchstaben werden nicht unterschieden. D. h. es
ist gleichgültig, ob Sie einen Variablennamen in Klein- oder Großbuchstaben
schreiben.
Beispiele für gültige Variablen:
ABC
A3344
LangerWeg
Befehls- oder Funktionsnamen können jedoch nicht als Variablennamen
verwendet werden ! So ist OFFSET oder SIN nicht als Variablennamen zulässig.
1.2 Wertebereich
In einer Variablen werden Gleitkommazahlen mit dem Gültigkeitsbereich
von 8.43E-37 bis 3.37E+38 gespeichert.
1.3 Anlegen einer Variablen
Mit der ersten Verwendung eines Namens auf der linken Seite eines Ausdruckes
(einer Rechenanweisung) legen Sie automatisch eine neue Variable an. Eine
gesonderte Vereinbarung ist nicht erforderlich. Das bedeutet jedoch, dass
Sie sich bei den Variablennamen auf der linken Seite nicht verschreiben dürfen.
Denn bei einem anders lautendem Namen wird sofort eine neue
Variable angelegt.
1.4 Rechnen mit Variablen
Als Rechenarten stehen die Grundrechenarten einschließlich Klammern,
Standardfunktionen wie die Winkelfunktionen, und Sonderfunktionen zur Verfügung.
Pro Zeile darf eine Zuweisung stehen. Links die Zielvariable gefolgt von
einem Gleichheitszeichen und rechts der Ausdruck.
Z. B.:
A3344 = ABC + 33
Gültige Operationszeichen für die Grundrechenarten sind
+ für Addition
- für Subtraktion
* für Multiplikation
/ für Division
Die Berechnung innerhalb eines Ausdruckes erfolgt mit Vorrang für
Multiplikation und Division. Wollen Sie diesen Vorrang durchbrechen, müssen
Sie Klammern verwenden. z. B.
A3344 = (ABC + 3.3) * 5
Hier wird zunächst die Variablen ABC um 3.3 erhöht. Anschließend
erfolgt die Multiplikation mit 5.
Noch ein wichtiger Hinweis: Sie müssen die als Dezimalpunkt einen Punkt eingeben und kein Komma. Das Komma ist zum Abtrennen der Parameter bei Funktionsaufrufen reserviert.
1.5 Funktionen
1.5.1 Standardfunktionen
Standardfunktionen wie sie auch in der DPL definiert sind
Winkelfunktionen SIN, COS, TAN, ARCSIN, ARCCOS, ARCTAN
sowie ATAN2 für Bilden eines Winkels aus X- und Y-Komponente.
ABS Absolutbetrag einer Zahl (Vorzeichen wird weggenommen
SQRT Wurzel aus einer Zahl
EXP Natürliche Exponentialfunktion
LN Natürlicher Algorithmus
SQR Quadrieren einer Zahl
SIGN Vorzeichen einer Zahl (aus positiven Zahlen wird +1, aus negativen
wird -1)
TRUNC Ganzzahliger Anteil einer Zahl
ROUND Zahl gerundet auf ganze Zahl
1.5.2 Sonderfunktionen der Werkstückliste:
Auslesen der Werkstückbezugspunktes:
ReadPRPX
ReadPRPY
ReadPRPZ
ReadPRPA
ReadPRPB
ReadPRPC
ReadPRPU
ReadPRPV
Gelesen wird jeweils der Werkstückbezugspunkt einschließlich
Offset aus der Handsteuerung
z. B.
XBezug = ReadPRPX
YBezug = ReadPRPZ
Ebenfalls gehören zu den Sonderfunktionen die Tastfunktionen
SENZV
SENZABSV
SENZV3
SENZABSV3
Erklärung hierzu unter 2.2
Auslesen der X/Y-Position des höchsten Punktes aus dem Oberflächendialog:
ReadSurfaceHX
ReadSurfaceHY
Verwendung: Materialoberflächenbestimmung einer abgetasteten Freiformfläche.
Parameter einer Funktion müssen in runden Klammern geschrieben
werden. Mehrere Parameter werden durch Komma getrennt.
z. B.
S = SIN(30)
Strecke = SQRT( SQR(XTeil) + SQR(YTeil) )
Sie müssen ebenfalls Parameter durch Komma trennen,
wenn Sie bei einem Werkstücklistenbefehl wie "Offset" einen Variablennamen statt
Zahlen angeben.
Z. B.
Offset X_Abstand, Y_Abstand, ZWert, Drehung
2.0 Befehle zum Tasten
2.1 Tasten und sofortiges Korrigieren des Werkstückbezugspunktes
Die bisher schon in der Werkstückliste enthaltenen Befehle SENZ
und SENZABS bleiben unverändert erhalten. Sie sind in der Bedienungsanleitung
bzw. in der Online-Hilfe beschrieben.
2.2 Tasten per Funktion, kein sofortiges Korrigieren des Werkstückbezugspunktes
2.2.1 Tasten relativ zum Werkstückbezugspunkt
Hierfür stehen die Funktionsaufrufe SENZV und SENZV3 zur
Verfügung. Bei beiden Funktionen wird der Tastpunkt als Parameter
bezogen auf den Werkstückbezugspunkt übergeben. Bei der
Funktion SENZV3 kommt der Startpunkt für das Tasten hinzu.
Das Ergebnis wird einer Variablen zugewiesen.
Mit der Zeile
ZWert = SENZV(100, 30.5)
wird an Position X=100 Y=30.5 eine Tastung durchgeführt. Die beiden
Werte beziehen sich auf den Werkstückbezugspunkt. Das Ergebnis wird
in der Variablen ZWert abgelegt. Hier steht die Differenz zum Werkstückbezugspunkt
in Z. Dieser Wert kann mit dem Offset-Befehl genutzt werden.
Ein Beispiel für die Verwendung des Befehls SENZV finden Sie in
der Datei Tasten_Offset.WSL.
Mit der Zeile
ZWert = SENZV3(100, 30.5, 80)
wird die gleiche Tastung ausgeführt. Jedoch wird der Taster unabhängig
von der Dialogeinstellung für Startpunkt in Z auf den Wert 80 mm (bezogen
auf Maschinen-Null) verfahren.
2.2.2 Tasten bezogen auf Maschinennullpunkt
Zum Tasten bezogen auf dem Maschinennullpunkt stehen die Funktionsaufrufe
SENZABSV und SENZABSV3 zur Verfügung. Bei diesen beiden Funktionen
geben Sie den Tastpunkt in X/Y bezogen auf den Maschinennullpunkt an. Bei
der Funktion SENZABSV3 kommt der Startpunkt in Z für das Tasten hinzu.
Das Ergebnis des Abtastvorganges wird einer Variablen zugewiesen.
Mit der Zeile
ZWert = SENZABSV(200.3, 85.8)
wird an Position 200.3 in X und 85.8 in Y bezogen auf den Maschinennullpunkt
getastet. Das Ergebnis wird der Variablen ZWert zugewiesen. Das Tastergebnis
bezieht sich ebenfalls wieder auf dem Maschinennullpunkt.
Ein Beispiel für die Verwendung des Befehls SENZV finden Sie in
der Datei Tasten_Absolut.WSL.
2.3 Kantentasten
2.3.1 Tasten von Ovalen (ab 3.27, BES/C-Steuerung, Sondersoftware)
Befehl: SensingEdgesA
Parameter: Ebenennummer, kugeltiefer, [Max-Tastweg in X/Y]
Zurück: Gesetzte Variable x_distance, y_distance und rotation
Mit diesem Befehl können Sie den Werkstückbezugspunkt und die Rotation anhand
von 3 (oder mehr) tastbaren ovalen Durchbrüchen bestimmen. Rechteckige
Durchbrüche sind ebenfalls tastbar.
Der Bediener muss die Tastpunkte per Marke festlegen.
Zu diesem Befehl gibt es eine gesonderte
Beschreibung.
2.3.2 Universaltastzyklus (ab 3.33,
BES/C-Steuerung, Sondersoftware)
Befehl: SensingEdgesU
Parameter: Ebenennummer der Tastkonturen, Ebenennummer der Tastlinien,
kugeltiefer, [Max-Tastweg in X/Y]
Zurück: Gesetzte Variable x_distance, y_distance und rotation
Mit diesem Befehl können Sie den Werkstückbezugspunkt und die Rotation anhand von 3 fast beliebigen Durchbrüchen bestimmen. Der Bediener muß die Tastpunkte per Marke festlegen und zusätzlich den Taststartpunkt und die Richtung per Vektor bestimmen.
Zu diesem Befehl gibt es eine gesonderte
Beschreibung.
2.4 Kalibrierung des Kantentasters in X/Y
(ab 3.33, BES/C-Steuerung)
Ein Kantentaster muss kalibriert werden. D. h. es müssen die Abweichung in allen
3 Achsen kompensiert werden. Die Abweichung in Z gegenüber dem Referenzwerkzeug
wird in der Handsteuerung eingestellt.
Die Abweichungen in X und Y mussten Sie bisher durch Tasten einer Bohrung im
Kantentasten-Teil ermitteln. Sie mussten dann die Korrekturwerte ausrechnen und
von Hand im entsprechenden Dialog eintragen.
Mit dem neuen Kalibrier-Befehl der Werkstückliste wird dieser Vorgang jetzt
automatisiert. Zum Kalibrieren ist ein zylindrisches Loch erforderlich. Die Lage
dieses Loches muss exakt bekannt sein. Die höchste Genauigkeit erreicht man
sicherlich, wenn das Loch auf der Maschine selbst erstellt wird. Der Durchmesser
sollte größer dem doppelten Durchmesser der Tastkugel sein.
2.4.1 Kalibrier-Aufruf
Befehl: CaliViaHole
Parameter:
Damit ist es möglich mit mehreren Kalibrier-Aufrufen in der Werkstückliste eine sehr genaue Kalibrierung vorzunehmen. Denn bei jedem Durchlauf ist die Abweichung von Soll zu Ist geringer und es wird die Mitte des Loches, mit den idealen Tastbedingungen, immer besser getroffen.
Für 3 Durchläufe würde sich folgende Werkstückliste
ergeben:
CaliViaHole 150, 580, 55, 30, 20
AddToCaliValues DiffTouchProbe_x, DiffTouchProbe_y
CaliViaHole 150, 580, 55, 30, 20
AddToCaliValues DiffTouchProbe_x, DiffTouchProbe_y
CaliViaHole 150, 580, 55, 30, 20
AddToCaliValues DiffTouchProbe_x, DiffTouchProbe_y
SenZIn
Wenn der Durchmesser des Loches exakt erstellt wurde
wird durch die Kalibrierung auch ein korrekter Kugeldurchmesser ermittelt. Mit
dem Befehl SetSphereDiameter können Sie diesen Durchmesser in Ihren
Einstellungen für Kantentasten setzen.
2.4.2 AddToCaliValues
Parameter:
2.4.3 SetSphereDiameter
Parameter:
2.5 Ausfahren/Einfahren des Tasters
Beim ersten Aufruf der SENZxxx-Funktionen wird der Taster ausgefahren. Gegenüber
den SENZ und SENZABS-Befehlen bleibt der Taster nach dem Tasten ausgefahren.
Wenn Sie nicht den Befehl SENZIN programmieren, wird der Taster automatisch
beim ersten Engrave-Befehl. wieder eingefahren.
2.5.1 Befehl zum Einfahren des Tasters
Hierzu steht der Befehl SENZIN zur Verfügung. Keine Parameter.
3.0 Sonstige Befehle
3.1 Darstellung von Variablen
Um Zwischenergebnisse darzustellen steht Ihnen der DEBUG-Befehl zur
Verfügung. Sinnvoll ist die Verwendung dieses Befehls auch nach dem
Tasten von Materialoberflächen. So können Sie die Tastwerte auf
Plausibilität prüfen, bevor der Fräsvorgang gestartet wird.
Die Werte und Texte werden in einer Windows-Message-Box dargestellt. Die Werkstückliste wird erst dann weiter abgearbeitet, wenn Sie die Messagebox bestätigen. Ein Abbruch der Werkstückliste ist in diesem Zustand ebenfalls möglich.
Als Parameter kommt vorab eine Zahl. Diese Zahl dient für zukünftige
Erweiterungen im Bereich Protokollierung auf Datei. Sie sollten hier immer
die Zahl 0 einsetzen. Anschließend kommt eine Anzahl von Texten in
"" oder/und Variablen. Die Anzahl ist lediglich über die maximal zulässige
Zeilenlänge von 1000 Zeichen begrenzt.
Beispiel:
Debug 0 "ZWert1=", ZWert1, " ZWert2=", ZWert2
Hier werden die beiden Variablen ZWert1 und ZWert2 einmal als Text
und einmal als Zahl in eine Messagebox dargestellt.
Möchten Sie die Darstellung in der Messagebox mehrzeilig haben,
so können Sie im Textteil ein \n einfügen. Für obiges Beispiel
sähe das so aus:
Debug 0 "ZWert1=", ZWert1, "\nZWert2=", ZWert2
3.2 Maßstab
In der Werkstückliste gilt für die Längenangaben der
Maßstab aus dem Dialogfenster Optionen/Voreinstellungen. Unabhängig
davon können Sie auf einen anderen Maßstab umschalten.
3.2.1 Setzen des Inch-Maßstabes
Nach Aufruf von SETINCH müssen Sie alle folgenden Parameter in
Inch eingeben. Das gilt für Längenwerte.
Winkel und Faktoren
sind nicht betroffen.
3.2.2 Setzen des Millimeter-Maßstabes
Nach Aufruf von SETMM müssen Sie alle folgenden Parameter in Millimeter
eingeben. Das gilt für Längenwerte.
Winkel und Faktoren sind
nicht betroffen.
3.3 Offset-Befehl
Der Offset-Befehl hat ab Version 3.27 einen optionalen vierten Parameter
erhalten. Und zwar die Drehung des Werkstückes.
Wenn Sie eine Werkstückdrehung angeben wollen, müssen Sie auch den Z-Offset mit
vorgeben.
Zum Beispiel:
Offset 22 55 0 1.4
Drehung um 1.4 Grad bei Offset 22/55. Der Z-Offset ist mit 0 angegeben. D.h. der Z-Wert bleibt unverändert.
3.4 Tasterkontrolle
In der Steuerung BES/C wirkt der Schaltkontakt eines Oberflächen- bzw.
Kantentasters im Ruhezustand als Stoppkontakt. D.h. auch wenn nicht gerade eine
Tastung läuft, wird der Kontakt fortlaufend von der Steuerung abgefragt. Wenn
der Kontakt durch Fehlbedienung oder Fehlfunktion aktiviert wird, wird ein Stopp
an der Steuerung ausgelöst. Als Diagnose kommt: 591.
Diese Funktion ist ab Version 3.17 in der BES/C-Steuerung enthalten. Die
Funktion muss über den Parametersatz aktiviert werden.
3.4.1 Ein/Ausschalten Schaltkontakt als
Stoppkontakt
Mit dem Befehl SenZCheckAktiv können Sie die Überwachung des Schaltkontaktes
eines Oberflächen- bzw. Kantentasters ein- und ausschalten.
Mit
SenZCheckAktiv 1
schalten Sie die Stoppkontakt-Funktion aktiv. Das ist die Voreinstellung wenn
die Funktion per Parameter freigeschaltet wurde.
mit
SenZCheckAktiv 0
schalten Sie die Funktion inaktiv. D. h. Sie können den Taster komplett
demontieren und es wird kein Stopp ausgelöst.
BESgrav ab 3.33E, BES/C- /S4 -Firmware ab 3.21.
3.4.2 Taster ausschwenken
Zum Ausschwenken des Tasters wird von BESgrav die SPS SENZOUT aufgerufen. Hier
tragen Sie die Befehle für den Ausschwenkvorgang ein. Im einfachsten Fall,
Handmontage, steht hier lediglich ein Message-Befehl.
Ab BESgrav Version 3.33C werden in der SENZOUT-SPS 3 Variablen mit der
Ausschwenkposition gesetzt:
sen_pos_x
sen_pos_y
sen_pos_z
Diese Variablen können in einem Debug-Befehl zum
Anzeigen der Ausschwenkposition verwendet werden.
z.B.:
Debug 0, "Taster m o n t i e r e n\nx= ", sen_pos_x, " y=", sen_pos_y, " z=",
sen_pos_z
3.5 Ausführung eines
Windows-Programmes
Mit dem Befehl EXECUTE können Sie ein beliebiges Windows-Programm
ausführen. Sie können wählen, ob BESgrav wartet, bis das Programm beendet wurde
oder sofort im Ablauf weitermacht.
Das geschieht mit den Optionen /W für Warten bis Windowsprogramm beendet
bzw. /I für sofortiges Fortfahren in BESgrav. Wenn Sie keine Option
eingesetzt haben, gilt /W, also Warten bis das aufgerufene Windowsprogramm
beendet ist.
Der gesamte Rest der SPS-Zeile wird als Kommando aufgerufen.
Z. B. würde die SPS-Zeile bei einem Editor-Aufruf so aussehen:
EXECUTE /W C:\WinNT\System32\notepad.exe Text.txt
Aufrufen des Notepad-Editors mit der Datei Text.TXT. BESgrav anhalten bis Sie
den Notepad beendet haben.