Stringfunktionen

Anwendung

Mit QS-Parametern können Sie Texte definieren und weiter verarbeiten, um z. B. variable Protokolle mit FN 16: F-PRINT zu erstellen.

Funktionsbeschreibung

Sie können einem QS-Parameter max. 255 Zeichen zuweisen.

  • Innerhalb von QS-Parametern sind folgende Zeichen erlaubt:
  • Buchstaben
  • Ziffern
  • Sonderzeichen, z. B. ?
  • Steuerzeichen, z. B. \ für Pfade
  • Leerzeichen

Sie programmieren die einzelnen Stringfunktionen mithilfe der freien Syntaxeingabe.

NC-Funktionen ändern

Sie können die Werte von QS-Parametern mit den Funktionen Formel Q/QL/QR und Stringformel QS weiterverarbeiten oder prüfen.

Syntax

Funktion

Übergeordnete NC-Funktion

DECLARE STRING

QS-Parameter einen Wert zuweisen

QS-Parameter Text zuweisen

STRING-FORMEL

QS-Parameter verketten

QS-Parameter verketten

Stringformel QS

TONUMB

Alpha-numerischen Wert eines QS-Parameters in einen numerischen Wert umwandeln und einer Variable zuweisen

Variable Textinhalte in numerische Werte umwandeln

Formel Q/QL/QR

TOCHAR

Numerischen Wert in einen alpha-numerischen Wert umwandeln und einem QS-Parameter zuweisen

Variable numerische Werte in Textinhalte umwandeln

Stringformel QS

SUBSTR

Teilstring aus einem QS-Parameter kopieren

Teilstring aus einem QS-Parameter kopieren

Stringformel QS

SYSSTR

Stringformel QS

INSTR

Prüfen, ob der Inhalt eines QS-Parameters in einem anderen QS-Parameter enthalten ist.

Teilstring innerhalb eines QS-Parameterinhalts suchen

Formel Q/QL/QR

STRLEN

Textlänge des Werts eines QS-Parameters ermitteln

Gesamtanzahl der Zeichen eines QS-Parameters ermitteln

 
Tip

Wenn der gewählte String-Parameter nicht definiert ist, liefert die Steuerung das Ergebnis -1.

Formel Q/QL/QR

STRCOMP

Formel Q/QL/QR

CFGREAD

  • Stringformel QS
  • Formel Q/QL/QR

Systemdaten lesen mit SYSSTR

Mit der Funktion SYSSTR können Sie Systemdaten lesen und in String-Parametern speichern. Die Auswahl des Systemdatums erfolgt mit einer Gruppennummer (ID) und einer Nummer.

Die Eingabe von IDX und DAT ist nicht notwendig.

Sie können folgende Systemdaten lesen:

Gruppenname, ID-Nr.

Nummer

Bedeutung

Programminformation, 10010

1

Pfad des aktuellen Hauptprogramms oder Palettenprogramms

2

Pfad des in der Satzanzeige angezeigten NC-Programms

3

Pfad des mit CYCL DEF 12 PGM CALL angewählten Zyklus

10

Pfad des mit SEL PGM angewählten NC-Programms

Kanaldaten, 10025

1

Kanalname

Im Werkzeugaufruf programmierte Werte, 10060

1

Werkzeugname

Kinematik, 10290

10

Im letzten FUNCTION MODE-Satz programmierte Kinematik

Aktuelle Systemzeit, 10321

1 - 16, 20

  • 1: DD.MM.YYYY hh:mm:ss
  • 2 und 16: DD.MM.YYYY hh:mm
  • 3: DD.MM.YY hh:mm
  • 4: YYYY-MM-DD hh:mm:ss
  • 5 und 6: YYYY-MM-DD hh:mm
  • 7: YY-MM-DD hh:mm
  • 8 und 9: DD.MM.YYYY
  • 10: D.MM.YY
  • 11: YYYY-MM-DD
  • 12: YY-MM-DD
  • 13 und 14: hh:mm:ss
  • 15: hh:mm
  • 20: XX
    • Die Bezeichnung XX steht für die 2-stellige Ausgabe der aktuellen Kalenderwoche, die nach ISO 8601 folgende Eigenschaften aufweist:
    • Hat sieben Tage
    • Beginnt an einem Montag
    • Wird fortlaufend nummeriert
    • Erste Kalenderwoche enthält ersten Donnerstag des Jahrs

Daten des Tastsystems, 10350

50

Tastertyp des aktiven Tastsystems TS

70

Tastertyp des aktiven Tastsystems TT

73

Keyname des aktiven Tastsystems TT aus dem MP activeTT

Daten zur Palettenbearbeitung, 10510

1

Name der aktuell bearbeiteten Palette

2

Pfad der aktuell angewählten Palettentabelle

NC-Softwarestand, 10630

10

Versionskennung des NC-Softwarestands

Information für Unwuchtzyklus, 10855

1

Pfad der Unwucht-Kalibriertabelle, die zur aktiven Kinematik gehört

Werkzeugdaten, 10950

1

Werkzeugname

2

DOC-Eintragung des Werkzeugs

3

AFC-Regeleinstellung

4

Werkzeugträgerkinematik

Maschinenparameter lesen mit CFGREAD

Mit der Funktion CFGREAD können Sie Maschinenparameter der Steuerung als numerische Werte oder als Strings auslesen. Die gelesenen Werte werden immer metrisch ausgegeben.

  • Sie müssen zum Lesen eines Maschinenparameters folgende Inhalte im Konfigurationseditor ermitteln:
  • Parametername
  • Parameterobjekt
  • Wenn vorhanden Gruppenname und Index

Inhalt eines Maschinenparameters übernehmen

Symbol

Typ

Bedeutung

Beispiel

folderIcon

Key

Gruppenname des Maschinenparameters (wenn vorhanden)

CH_NC

folderIcon

Entität

Parameterobjekt (der Name beginnt mit Cfg...)

CfgGeoCycle

value

Attribut

Name des Maschinenparameters

displaySpindleErr

value

Index

Listenindex eines Maschinenparameters (wenn vorhanden)

[0]

 
Tip

Wenn Sie sich im Konfigurationseditor für die Anwenderparameter befinden, können Sie die Darstellung der vorhandenen Parameter ändern. Mit der Standardeinstellung werden die Parameter mit kurzen, erklärenden Texten angezeigt.

Bevor Sie einen Maschinenparameter mit der Funktion CFGREAD abfragen können, müssen Sie jeweils einen QS-Parameter mit Attribut, Entität und Key definieren.

  • Folgende Parameter werden im Dialog der Funktion CFGREAD abgefragt:
  • KEY_QS: Gruppenname (Key) des Maschinenparameters
  • TAG_QS: Objektname (Entität) des Maschinenparameters
  • ATR_QS: Name (Attribut) des Maschinenparameters
  • IDX: Index des Maschinenparameters

QS-Parameter Text zuweisen

Bevor Sie Texte verwenden und weiterverarbeiten können, müssen Sie die Zeichen QS-Parametern zuweisen. Dazu verwenden Sie den Befehl DECLARE STRING.

  1. Sie weisen einem QS-Parameter wie folgt einen Text zu:
SF_4_NCFunktion_Einfuegen

  1. NC-Funktion einfügen wählen
  2. Die Steuerung öffnet das Fenster NC-Funktion einfügen.

  1. DECLARE STRING wählen
  2. QS-Parameter für das Ergebnis definieren, z. B. QS10
  3. Name wählen
  4. Gewünschten Text eingeben
  5. NC-Satz beenden

  1. NC-Satz abarbeiten
  2. Die Steuerung weist dem QS-Parameter den eingegebenen Text zu.

QS-Parameter verketten

Mit dem Verkettungsoperator || können Sie die Zeichen mehrerer QS-Parameter miteinander verbinden. So können Sie feste und variable Textbestandteile kombinieren.

  1. Sie verbinden die Werte mehrere QS-Parameter wie folgt:
SF_4_NCFunktion_Einfuegen

  1. NC-Funktion einfügen wählen
  2. Die Steuerung öffnet das Fenster NC-Funktion einfügen.

  1. Stringformel QS wählen
  2. QS-Parameter für das Ergebnis definieren
calculator

  1. Tastatur zur Formeleingabe öffnen

  1. Verkettungsoperator || wählen

  1. Links vom Symbol Verkettungsoperator Nummer des QS-Parameters mit dem ersten Teilstring definieren
  2. Rechts vom Symbol Verkettungsoperator Nummer des QS-Parameters mit dem zweiten Teilstring definieren
  3. NC-Satz beenden
  4. Eingabe bestätigen
  5. Die Steuerung speichert die Teilstrings nach dem Abarbeiten hintereinander als Wert in den Zielparameter.

In diesem Beispiel soll QS10 den kompletten Text von QS12, QS13 und QS14 enthalten.

37 QS10 = QS12 || QS13 || QS14

Parameterinhalte:

  • QS12: Werkstueck
  • QS13: Status:
  • QS14: Ausschuss
  • QS10: Werkstueck Status: Ausschuss

Variable Textinhalte in numerische Werte umwandeln

Mit der Funktion TONUMB können Sie numerische Zeichen eines QS-Parameters als Wert einer Variable speichern. Der umzuwandelnde Wert darf nur aus Zahlen bestehen. Mit dem gespeicherten Wert können Sie z. B. Berechnungen ausführen.

In diesem Beispiel wird der QS-Parameter QS11 in den numerischen Parameter Q82 umgewandelt.

37 Q82 = TONUMB ( SRC_QS11 )

Variable numerische Werte in Textinhalte umwandeln

Mit der Funktion TOCHAR können Sie den Inhalt einer Variable in einen QS-Parameter speichern. Den gespeicherten Inhalt können Sie, z. B. mit anderen QS-Parametern verketten.

In diesem Beispiel wird der Inhalt des numerischen Parameters Q50 in den String-Parameter QS11 übertragen.

37 QS11 = TOCHAR ( DAT+Q50 DECIMALS3 )

Teilstring aus einem QS-Parameter kopieren

Mit der Funktion SUBSTR können Sie aus einem QS-Parameter einen definierbaren Bereich in einen anderen QS-Parameter speichern. Sie können diese Funktion z. B. nutzen, um den Dateinamen aus einem absoluten Dateipfad zu extrahieren.

In diesem Beispiel wird mit dem Syntaxelement BEG2 ab der dritten Stelle, da das Zählen ab Null beginnt und mit LEN4 ein vier Zeichen langer Teilstring gelesen.

37 QS13 = SUBSTR ( SRC_QS10 BEG2 LEN4 )

Teilstring innerhalb eines QS-Parameterinhalts suchen

Mit der Funktion INSTR können Sie prüfen, ob sich ein bestimmter Teilstring innerhalb eines QS-Parameters befindet. Damit können Sie z. B. prüfen, ob die Verkettung mehrerer QS-Parameter funktioniert hat. Für die Prüfung sind zwei QS-Parameter notwendig. Die Steuerung durchsucht den ersten QS-Parameter nach dem Inhalt des zweiten QS-Parameters.

Wenn die Steuerung den zu suchenden Teilstring nicht findet, dann speichert die Steuerung die Gesamtanzahl der Zeichen in den Ergebnisparameter.

Wenn der zu suchende Teil-String mehrfach auftritt, dann liefert die Steuerung die erste Stelle zurück, an der sie den Teil-String findet.

In diesem Beispiel wird QS10 auf den in QS13 gespeicherten Text durchsucht. Die Suche beginnt ab der dritten Stelle. Beim Zählen der Zeichen beginnen Sie mit null.

37 Q50 = INSTR ( SRC_QS10 SEA_QS13 BEG2 )

Gesamtanzahl der Zeichen eines QS-Parameters ermitteln

Die Funktion STRLEN liefert die Länge des Texts, der in einem wählbaren QS-Parameter gespeichert ist. Mit dieser Funktion können Sie z. B. die Länge eines Dateipfads ermitteln.

In diesem Beispiel wird die Länge von QS15 ermittelt.

37 Q52 = STRLEN ( SRC_QS15 )

Alphabetische Reihenfolge zweier QS-Parameterinhalte vergleichen

Mit der Funktion STRCOMP können Sie die alphabetische Reihenfolge des Inhalts von zwei QS-Parametern vergleichen. Mit dieser Funktion können Sie z. B. prüfen, ob sich in einem QS-Parameter Klein- oder Großbuchstaben befinden. Die Steuerung durchsucht zunächst alle Großbuchstaben alphabetisch und anschließend alle Kleinbuchstaben alphabetisch.

Die Steuerung liefert folgende Ergebnisse zurück:

  • 0: Die verglichenen QS-Parameter sind identisch
  • -1: Der erste QS-Parameter liegt alphabetisch vor dem zweiten QS-Parameter
  • +1: Der erste QS-Parameter liegt alphabetisch hinter dem zweiten QS-Parameter

In diesem Beispiel wird die alphabetische Reihenfolge von QS12 und QS14 verglichen.

37 Q52 = STRCOMP ( SRC_QS12 SEA_QS14 )

Inhalt eines Maschinenparameters übernehmen

Mit der NC-Funktion CFGREAD können Sie den Inhalt eines Maschinenparameters in einen QS-Parameter übernehmen.

Abhängig von dem Inhalt des Maschinenparameters können Sie mithilfe der Funktion CFGREAD Textinhalte in QS-Parameter oder numerische Werte in Q-, QL- oder QR-Parameter übernehmen.

In diesem Beispiel wird die Achsbezeichnung der vierten Achse als QS-Parameter eingelesen.

  • Vorgegebene Einstellungen in den Maschinenparametern:
  • DisplaySettings
  • CfgDisplayData
    • axisDisplayOrder
    • [0] bis [5]
Beispiel

14 QS11 = ""

; QS-Parameter für Key zuweisen

15 QS12 = "CfgDisplaydata"

; QS-Parameter für Entität zuweisen

16 QS13 = "axisDisplay"

; QS-Parameter für Parameter-Namen zuweisen

17 QS1 = CFGREAD( KEY_QS11 TAG_QS12 ATR_QS13 IDX3 )

; Maschinenparameter auslesen

Hinweis

Wenn Sie die Funktion STRING FORMEL verwenden, ist das Ergebnis der durchgeführten Rechenoperation immer ein String. Wenn Sie die Funktion FORMEL verwenden, ist das Ergebnis der durchgeführten Rechenoperation immer ein numerischer Wert.

Definition

String
In der Informatik ist ein String eine definierte Folge von alphanumerischen Zeichen, also Texte. Die Steuerung verwendet QS-Parameter, um Strings zu verarbeiten.