Řetězcové funkce

Použití

S funkcí řetězců můžete definovat a dále zpracovávat řetězce s pomocí QS-parametrů, např. pro vytváření variabilních protokol s FN 16: F-PRINT. V informatice označuje řetězec posloupnost alfanumerických znaků.

Popis funkce

Jednomu QS-parametru můžete přiřadit maximálně 255 znaků.

  • V QS-parametrech jsou povoleny následující znaky:
  • Písmena
  • Číslice
  • Speciální znaky, např. ?
  • Řídicí znaky, např. \ pro cesty
  • Mezery

Jednotlivé funkce řetězce programujete pomocí volného zadávání syntaxe.

NC-funkce změnit

Hodnoty QS-parametrů můžete zpracovávat nebo kontrolovat pomocí NC-funkcí Vzorec Q/QL/QR a Vzorec řetězce QS.

Syntaxe

NC-funkce

Nadřazená NC-funkce

DECLARE STRING

Přiřazení alfanumerické hodnoty QS-parametru

Přiřazení alfanumerické hodnoty QS-parametru

ŘETĚZCOVÝ VZOREC

Obsahy QS-parametrů zřetězit a přiřadit jednomu QS-parametru

Řetězení alfanumerické hodnoty

Řetězcový vzorec QS

TONUMB

Převedení alfanumerické hodnoty QS-parametru na číselnou hodnotu a přiřazení parametru Q, QL nebo QR.

Převod alfanumerické hodnoty na číselnou hodnotu

Vzorec Q/QL/QR

TOCHAR

Převedení číselné hodnoty na alfanumerickou hodnotu a přiřazení QS-parametru

Převod numerických hodnot na alfanumerické hodnoty

Řetězcový vzorec QS

SUBSTR

Kopírování části řetězce z QS-parametru a přiřazení jednomu QS-parametru

Kopírování úseku řetězce z QS-parametru

Řetězcový vzorec QS

SYSSTR

Čtení systémových dat a přiřazení obsahu QS-parametru

Čtení systémových dat pomocí SYSSTR

Řetězcový vzorec QS

INSTR

Hledání části řetězce v QS-parametru a přiřazení nalezeného místa do parametru Q, QL nebo QR

Hledat část řetězce v obsahu QS-parametru

Vzorec Q/QL/QR

STRLEN

Zjištění délky znaků QS-parametru a přiřazení do parametru Q, QL nebo QR

Zjištění počtu znaků obsahu QS-parametru

Vzorec Q/QL/QR

STRCOMP

Porovnání vzestupného abecedního pořadí QS-parametrů a přiřazení výsledku do parametru Q, QL nebo QR

Porovnání abecedního pořadí dvou alfanumerických posloupností znaků

Vzorec Q/QL/QR

CFGREAD

Přečtení obsahu strojního parametru a přiřazení jednomu QS-parametru

Převzetí obsahu strojního parametru

  • Řetězcový vzorec QS
  • Vzorec Q/QL/QR

Čtení systémových dat pomocí SYSSTR

Pomocí NC-funkce SYSSTR můžete číst systémová data a ukládat obsahy do QS-parametrů. Systémové datum zvolíte pomocí čísla skupiny ID a čísla NR.

Zadat můžete také IDX a DAT.

Můžete číst následující systémové údaje:

Název skupiny, ID-č.

Číslo

Význam

Informace o programu, 10010

1

Cesta aktivního hlavního programu nebo paletového programu

2

Cesta aktuálně zpracovávaného NC-programu

3

Cesta s cyklem 12 PGM CALL zvoleného NC-programu

10

Cesta NC-programu, vybraného pomocí SEL PGM

Údaje o kanálu, 10025

1

Název aktuálního kanálu, např. CH_NC

Hodnoty naprogramované ve vyvolání nástroje, 10060

1

Název aktuálního nástroje

 
Tip

NC-funkce uloží název nástroje pouze v případě, že zavoláte nástroj s jeho názvem.

Kinematika, 10290

10

Kinematika, naprogramovaná v poslední NC-funkci FUNCTION MODE (Funkční režim)

Aktuální čas systému, 10321

1-16, 20

  • 1: D.MM.RRRR h:mm:ss
  • 2: D.MM.RRRR h:mm
  • 3: D.MM.RR hh:mm
  • 4: RRRR-MM-DD hh:mm:ss
  • 5: RRRR-MM-DD hh:mm
  • 6: RRRR-MM-DD h:mm
  • 7: RR-MM-DD h:mm
  • 8: DD.MM.RRRR
  • 9: D.MM.RRRR
  • 10: D.MM.RR
  • 11: RRRR-MM-DD
  • 12: RR-MM-DD
  • 13: hh:mm:ss
  • 14: h:mm:ss
  • 15: h:mm
  • 16: DD.MM.RRRR hh:mm
  • 20: XX
    • Označení XX znamená dvoumístné vydání aktuálního kalendářního týdne, které má následující vlastnosti podle ISO 8601:
    • Má sedm dní
    • Začíná v pondělí
    • Je číslován postupně
    • První kalendářní týden obsahuje první čtvrtek roku

Data dotykové sondy, 10350

50

Typ aktivní obrobkové dotykové sondy TS

70

Typ aktivní nástrojové dotykové sondy TS

73

Název aktivní nástrojové dotykové sondy TT ze strojního parametru aktiveTT

Údaje o obrábění palety, 10510

1

Název aktuálně obráběné palety

2

Cesta aktuálně zvolené tabulky palet

Verze NC-softwaru, 10630

10

Číslo verze NC-softwaru

Informace o vyvažovacím cyklu, 10855

1

Cesta kalibrační tabulky vyvážení

Kalibrační tabulka vyvážení patří k aktivní kinematice.

Data nástrojů, 10950

1

Název aktuálního nástroje

2

Obsah sloupce DOC aktivního nástroje

3

AFC-nastavení regulace aktuálního nástroje

4

Kinematika nosiče aktuálního nástroje

Čtení strojních parametrů pomocí CFGREAD

S NC-funkcí CFGREAD můžete přečíst obsahy strojních parametrů řídicího systému jako číselné nebo alfanumerické hodnoty. Přečtené hodnoty se vydávají vždy v metrické soustavě.

K přečtení strojního parametru musíte zjistit následující obsahy v editoru konfigurace řídicího systému:

Symbol

Typ

Význam

folderIcon

Klávesa

Skupinový název strojního parametru

Skupinový název může být opčně uveden

folderIcon

Subjekt

Objekt parametru

Název vždy začíná Cfg

value

Atribut

Název strojního parametru

value

Rejstřík

Index seznamu strojního parametru

Index seznamu může být opčně uveden

 
Tip

V editoru konfigurace strojních parametrů můžete měnit znázornění stávajících parametrů. Se standardním nastavením se parametry zobrazují s krátkými, vysvětlujícími texty.

Když čtete strojní parametr s NC-funkcí CFGREAD, musíte předem vždy definovat QS-parametr s atributem, subjektem a klíčem.

Převzetí obsahu strojního parametru

Přiřazení alfanumerické hodnoty QS-parametru

Než budete moci používat alfanumerické hodnoty a dále je zpracovávat, musíte přiřadit znaky ke QS-parametrům. K tomu použijte příkaz DECLARE STRING (Deklarovat řetězec).

  1. Alfanumerickou hodnotu přiřadíte ke QS-parametru následovně:
SF_4_NCFunktion_Einfuegen

  1. Zvolte Vložit NC funkci
  2. Řízení otevře okno Vložit NC funkci

  1. Zvolte DECLARE STRING
  2. Definujte QS-parametry pro výsledek
  3. Zvolte Jméno
  4. Zadejte požadovanou hodnotu
  5. Ukončení NC-bloku

  1. Zpracování NC-bloku
  2. Řídicí systém uloží zadaná data do cílových parametrů.

V tomto příkladu řízení přiřadí QS-parametru QS10 alfanumerickou hodnotu.

11 DECLARE STRING QS10 = "workpiece"

; Přiřazení alfanumerické hodnoty QS10

Řetězení alfanumerické hodnoty

S operátorem zřetězení || můžete vzájemně spojit obsahy několika QS-parametrů. Můžete tak kombinovat např. pevné a proměnné alfanumerické hodnoty.

  1. Hodnoty několika QS-parametrů spojíte následovně:
SF_4_NCFunktion_Einfuegen

  1. Zvolte Vložit NC funkci
  2. Řízení otevře okno Vložit NC funkci

  1. Zvolte String formula QS (Řetězcový vzorec)
  2. Definujte QS-parametry pro výsledek
calculator

  1. Otevřete klávesnici pro zadávání vzorců

  1. Zvolte operátor zřetězení ||

  1. Nalevo od symbolu operátoru zřetězení definujte číslo QS-parametru s první částí řetězce
  2. Napravo od symbolu operátoru zřetězení definujte číslo QS-parametru s druhou částí řetězce
  3. Ukončení NC-bloku
  4. Potvrďte zadání
  5. Po zpracování řídicí systém uloží části řetězce jeden po druhém, jako alfanumerickou hodnotu do cílového parametru.

V tomto příkladu spojí řídicí systém obsahy QS-parametrů QS12 a QS13. Alfanumerickou hodnotu řízení přiřadí QS-parametru QS10.

11 QS10 = QS12 || QS13

; Obsahy z QS12 a QS13 zřetězit a přiřadit QS-parametru QS10

Obsah parametru:

  • QS12: Status:
  • QS13: Zmetek
  • QS10: Status: Zmetek

Převod alfanumerické hodnoty na číselnou hodnotu

S NC-funkcí TONUMB můžete uložit výlučně číselné znaky QS-parametru do jiného typu proměnné. Následně můžete tyto hodnoty použít při výpočtech.

V tomto příkladu řízení převede alfanumerickou hodnotu QS-parametru QS11 na numerickou hodnotu. Tuto hodnotu řízení přiřadí Q-parametru Q82.

11 Q82 = TONUMB ( SRC_QS11 )

; Převedení alfanumerické hodnoty z QS11 na číselnou hodnotu a přiřazení do Q82

Převod numerických hodnot na alfanumerické hodnoty

S NC-funkcí TOCHAR můžete uložit obsah proměnné do QS-parametru. Uložený obsah můžete např. zřetězit s dalšími QS-parametry.

V tomto příkladu řízení převede numerickou hodnotu Q-parametru Q50 na alfanumerickou hodnotu. Tuto hodnotu řízení přiřadí QS-parametru QS11.

11 QS11 = TOCHAR ( DAT+Q50 DECIMALS3 )

; Převedení číselné hodnoty z Q50 na alfanumerickou hodnotu a přiřazení QS-parametru QS11

Kopírování úseku řetězce z QS-parametru

Pomocí NC-funkce SUBSTR můžete uložit definovatelný dílčí řetězec z QS-parametru do jiného QS-parametru. Tuto NC-funkci můžete využít např. k extrahování názvu souboru z absolutní cesty k souboru.

V tomto příkladu řízení uloží část řetězce QS-parametru QS10 do QS-parametru QS13. Pomocí prvku syntaxe BEG2 definujete, že řídicí systém kopíruje od třetího znaku. Pomocí prvku syntaxe LEN4 definujete, že řídicí systém kopíruje následující čtyři znaky.

11 QS13 = SUBSTR ( SRC_QS10 BEG2 LEN4 )

; Přiřadit dílčí řetězec z QS10 do QS-parametru QS13

Hledat část řetězce v obsahu QS-parametru

Pomocí NC-funkce INSTR můžete zkontrolovat, zda je konkrétní část řetězce v QS-parametru. S tímto můžete např. zkontrolovat, zda fungovalo zřetězení několika QS-parametrů. Pro kontrolu jsou vyžadovány dva QS-parametry. Řídicí systém hledá v prvním QS-parametru obsah druhého QS-parametru.

Pokud řídicí systém část řetězce najde, tak uloží počet znaků až do místa nálezu dílčího řetězce do parametru výsledku. Pokud existuje několik nálezů, je výsledek stejný, protože řídicí systém ukládá první nalezený výskyt.

Pokud řídicí systém nenajde hledanou část řetězce, uloží celkový počet znaků do výsledkového parametru.

V tomto příkladu řízení hledá v QS-parametru QS10 pořadí znaků, uložené v QS13. Vyhledávání začíná od třetí pozice. Při počítání znaků začíná řídicí systém s nulou. Řídicí systém přiřadí místo nálezu jako počet znaků do Q-parametru Q50.

37 Q50 = INSTR ( SRC_QS10 SEA_QS13 BEG2 )

Zjištění počtu znaků obsahu QS-parametru

NC-funkce STRLEN určuje počet znaků obsahu QS-parametru. Pomocí této NC-funkce můžete např. určit délku cesty k souboru.

Není-li zvolený QS-parametr definovaný, tak řízení dá výsledek -1.

V tomto příkladu zjistí řídicí systém počet znaků v QS-parametru QS15. Numerickou hodnotu počtu znaků řízení přiřadí Q-parametru Q52.

11 Q52 = STRLEN ( SRC_QS15 )

; Zjištění počtu znaků v QS14 a přiřazení do Q52

Porovnání abecedního pořadí dvou alfanumerických posloupností znaků

Pomocí NC-funkce STRCOMP porovnáte lexikální pořadí obsahu dvou QS-parametrů.

Řídicí systém vrátí následující výsledky:

  • 0 : Obsah obou QS-parametrů je identický
  • -1 : Obsah prvního QS-parametru je v lexikálním pořadí před obsahem druhého QS-parametru
  • +1 : Obsah prvního QS-parametru je v lexikálním pořadí za obsahem druhého QS-parametru
  1. Lexikální pořadí je toto:
  2. Speciální znaky, např. ?_
  3. Číslice, např. 123
  4. Velká písmena, např. ABC
  5. Malá písmena, např. abc
 
Tip

Počínaje prvním znakem řídicí systém provádí kontrolu obsahu QS-parametrů, až se liší. Pokud se obsah liší např. na čtvrté pozici, přeruší řídicí systém v tomto bodě kontrolu.

Kratší obsah se stejnou posloupností znaků se zobrazí jako první v pořadí, např. abc předabcd .

V tomto příkladu porovnává řídicí systém lexikální pořadí QS12 a QS14. Výsledek přiřadí řídicí systém jako číselnou hodnotu do Q-parametru Q52.

11 Q52 = STRCOMP ( SRC_QS12 SEA_QS14 )

; Porovnání lexikálního pořadí hodnot z QS12 a QS14

Převzetí obsahu strojního parametru

V závislosti na obsahu strojního parametru můžete pomocí NC-funkce CFGREAD převzít alfanumerické hodnoty do QS-parametrů nebo číselné hodnoty do parametrů Q, QL nebo QR.

V tomto příkladu řízení uloží koeficient překrytí ze strojního parametru pocketOverlap jako numerickou hodnotu do Q-parametru.

  • Předvolená nastavení ve strojních parametrech:
  • ChannelSettings (Nastavení kanálu)
  • CH_NC
    • CfgGeoCycle
      • pocketOverlap

Příklad

11 QS11 = "CH_NC"

; Přiřadit klíč QS-parametru QA11

12 QS12 = "CfgGeoCycle"

; Přiřadit subjekt QS-parametru QS12

13 QS13 = "pocketOverlap"

; Přiřadit atribut QS-parametru QS13

14 Q50 = CFGREAD( KEY_QS11 TAG_QS12 ATR_QS13 )

; Přečíst obsah strojního parametru

  • NC-funkce CFGREAD obsahuje následující prvky syntaxe:
  • KEY_QS: Skupinový název (klíč) strojního parametru
  •  
    Tip

    Pokud neexistuje žádný název skupiny, definujte pro příslušný název QS-parametru prázdnou hodnotu.

  • TAG_QS: Název objektu (entity) strojního parametru
  • ATR_QS: Název (atribut) strojního parametru
  • IDX: Index strojního parametru

Čtení strojních parametrů pomocí CFGREAD

Poznámka

Používáte-li NC-funkci Řetězcový vzorec QS, tak je výsledkem vždy alfanumerická hodnota. Používáte-li NC-funkci Vzorec Q/QL/QR, tak je výsledkem vždy numerická hodnota.