Funzioni stringa

Applicazione

Le funzioni stringa consentono di definire ed elaborare le stringhe con l'ausilio di parametri QS per creare ad es. protocolli variabili con FN 16: F-PRINT. Nell'informatica una stringa indica una stringa di caratteri alfanumerica.

Descrizione funzionale

A un parametro QS possono essere assegnati max 255 caratteri.

All'interno di parametri QS sono ammessi i caratteri seguenti:

  • Lettere
  • Valori numerici
  • Caratteri speciali, ad es. ?
  • Caratteri di controllo, ad es. \ per percorsi
  • Carattere di spaziatura

I valori di parametri QS possono essere elaborati o verificati con le funzioni NC Formula Q/QL/QR e Formula stringa QS.

Sintassi

Funzione NC

Funzione NC di ordine superiore

DECLARE STRING

Assegnazione del valore alfanumerico a un parametro QS

Assegnazione del valore alfanumerico a un parametro QS

STRING-FORMEL

Concatenamento dei contenuti di parametri QS e assegnazione a un parametro QS

Concatenamento dei valori alfanumerici

Formula stringa QS

TONUMB

Conversione del valore alfanumerico di un parametro QS in un valore numerico e assegnazione a un parametro Q, QL e QR

Conversione di valori alfanumerici in valori numerici

Formula Q/QL/QR

TOCHAR

Conversione del valore numerico in un valore alfanumerico e assegnazione a un parametro QS

Conversione di valori numerici in valori alfanumerici

Formula stringa QS

SUBSTR

Copia della stringa parziale da un parametro QS e assegnazione a un parametro QS

Copia di una stringa parziale da un parametro QS

Formula stringa QS

SYSSTR

Lettura dei dati di sistema e assegnazione dei contenuti a un parametro QS

Lettura dei dati di sistema con SYSSTR

Formula stringa QS

INSTR

Ricerca della stringa parziale in un parametro QS e assegnazione dell'occorrenza a un parametro Q, QL e QR

Ricerca di una stringa parziale all'interno del contenuto di un parametro QS

Formula Q/QL/QR

STRLEN

Determinazione della lunghezza di caratteri di un parametro QS e assegnazione a un parametro Q, QL e QR

Determinazione del numero di caratteri del contenuto di un parametro QS

Formula Q/QL/QR

STRCOMP

Confronto dell'ordine lessicale crescente di parametri QS e assegnazione del risultato a un parametro Q, QL e QR

Confronto dell'ordine lessicale di due stringhe di caratteri alfanumerici

Formula Q/QL/QR

CFGREAD

Lettura del contenuto di un parametro macchina e assegnazione a un parametro QS

Conferma del contenuto di un parametro macchina

  • Formula stringa QS
  • Formula Q/QL/QR

Il controllo numerico offre le seguenti possibilità per inserire le formule:

Lettura dei dati di sistema con SYSSTR

Con la funzione NC SYSSTR si possono leggere i dati di sistema e memorizzare i contenuti in parametri QS. La data di sistema si seleziona tramite un numero di gruppo ID e un numero NR.

Come opzione possono essere immessi IDX e DAT.

Possono essere letti i seguenti dati di sistema:

Nome gruppo, N. ID

Numero

Significato

Informazioni programma, 10010

1

Percorso del programma principale attuale o del programma pallet

2

Percorso del programma NC correntemente eseguito

3

Percorso del programma NC selezionato con ciclo 12 PGM CALL

10

Percorso del programma NC selezionato con SEL PGM

Dati canale, 10025

1

Nome del canale corrente, ad es. CH_NC

Valori programmati direttamente nella chiamata utensile, 10060

1

Nome dell'utensile corrente

 
Tip

La funzione NC salva il nome utensile solo se si richiama l'utensile con il nome utensile.

Cinematica, 10290

10

Cinematica programmata nell'ultima funzione NC FUNCTION MODE

Ora di sistema attuale, 10321

1 - 16, 20

  • 1: D.MM.YYYY h:mm:ss
  • 2: D.MM.YYYY h:mm
  • 3: D.MM.YY hh:mm
  • 4: AAAA-MM-GG hh:mm:ss
  • 5: YYYY-MM-DD hh:mm
  • 6: YYYY-MM-DD h:mm
  • 7: YY-MM-DD h:mm
  • 8: DD.MM.YYYY
  • 9: D.MM.YYYY
  • 10: D.MM.YY
  • 11: AAAA-MM-GG
  • 12: AA-MM-GG
  • 13: hh:mm:ss
  • 14: h:mm:ss
  • 15: h:mm
  • 16: DD.MM.YYYY hh:mm
  • 20: XX
  • La denominazione XX sta per l'emissione a 2 cifre della settimana corrente che secondo la norma ISO 8601 presenta le seguenti caratteristiche:

    • è di 7 giorni
    • inizia da lunedì
    • ha una numerazione progressiva
    • la prima settimana di calendario è quella che include il primo giovedì dell'anno

Dati del sistema di tastatura, 10350

50

Tipo del sistema di tastatura pezzo attivo TS

70

Tipo del sistema di tastatura utensile attivo TT

73

Nome del sistema di tastatura utensile attivo TT dal parametro macchina activeTT

Dati per lavorazione pallet, 10510

1

Nome del pallet correntemente in lavorazione

2

Percorso della tabella pallet attualmente selezionata

Versione software NC, 10630

10

Numero della versione software NC

Informazioni per il ciclo di sbilanciamento, 10855

1

Percorso della tabella di calibrazione dello sbilanciamento

La tabella di calibrazione dello sbilanciamento rientra nella cinematica attiva.

Dati utensile, 10950

1

Nome dell'utensile corrente

2

Contenuto della colonna DOC dell'utensile corrente

3

Impostazione della regolazione AFC dell'utensile corrente

4

Cinematica del portautensili dell'utensile corrente

Lettura di parametri macchina con CFGREAD

La funzione NC CFGREAD consente di leggere i contenuti dei parametri macchina del controllo numerico come valori numerici o alfanumerici. I valori numerici letti vengono emessi sempre in unità metriche.

Per leggere un parametro macchina è necessario determinare i seguenti contenuti nell'editor di configurazione del controllo numerico:

Icona

Tipo

Significato

Key

Nome gruppo del parametro macchina

Il nome gruppo può essere indicato come opzione

Entità

Oggetto parametrico

Il nome inizia sempre con Cfg

Attributo

Nome del parametro macchina

Indice

Indice lista di un parametro macchina

L'indice lista può essere indicato come opzione

 
Tip

Nell'editor di configurazione per i parametri macchina è possibile modificare la rappresentazione dei parametri presenti. Con l'impostazione standard vengono visualizzati i parametri con brevi testi esplicativi.

Se si legge un parametro macchina con la funzione NC CFGREAD, è necessario definire in precedenza un parametro QS con attributo, entità e key.

Conferma del contenuto di un parametro macchina

Assegnazione del valore alfanumerico a un parametro QS

Prima di poter impiegare ed elaborare valori alfanumerici, è necessario assegnare caratteri ai parametri QS. A tale scopo viene impiegata l’istruzione DECLARE STRING.

Un valore alfanumerico viene assegnato a un parametro QS come descritto di seguito:

    1. Selezionare Inserisci funzione NC
    2. Il controllo numerico apre la finestra Inserisci funzione NC.

    1. Selezionare DECLARE STRING
    2. Definire il parametro QS per il risultato
    3. Selezionare Nome
    4. Inserire il valore desiderato
    5. Chiudere il blocco NC

    1. Eseguire il blocco NC
    2. Il controllo numerico salva il valore immesso nel parametro di destinazione.

    In questo esempio il controllo numerico assegna un valore alfanumerico al parametro QS QS10.

    11 DECLARE STRING QS10 = "workpiece"

    ; Assegnazione del valore alfanumerico a QS10

    Concatenamento dei valori alfanumerici

    Con l'operatore di concatenamento || si possono concatenare tra loro i contenuti di più parametri QS. Possono essere combinati ad es. valori alfanumerici fissi e variabili.

    I contenuti di più parametri QS si concatenano come descritto di seguito:

      1. Selezionare Inserisci funzione NC
      2. Il controllo numerico apre la finestra Inserisci funzione NC.

      1. Selezionare Formula stringa QS
      2. Definire il parametro QS per il risultato

      1. Confermare l'immissione

      1. Selezionare il tasto Backspace
      2. Il controllo numerico cancella le virgolette.

      1. Selezionare QS
      2. Inserire il numero della variabile

      1. Selezionare la barra spaziatrice
      2. Il controllo numerico visualizza gli elementi di sintassi correntemente possibili.

      1. Selezionare l'operatore di concatenamento ||

      1. Selezionare QS
      2. Inserire il numero della variabile

      1. Chiudere il blocco NC
      2. Il controllo numerico salva le stringhe parziali dopo l'esecuzione in successione come valore alfanumerico nel parametro di destinazione.

      In questo esempio il controllo numerico concatena i contenuti dei parametri QS QS12 e QS13. Il controllo numerico assegna il valore alfanumerico al parametro QS QS10.

      11 QS10 = QS12 || QS13

      ; Concatenamento dei contenuti di QS12 e QS13 e assegnazione al parametro QS QS10

      Contenuti dei parametri:

      • QS12: Stato
      • QS13: Scarto
      • QS10: Stato: scarto

      Conversione di valori alfanumerici in valori numerici

      La funzione NC TONUMB consente di salvare esclusivamente caratteri numerici di un parametro QS in un altro tipo di variabile. Infine è possibile impiegare questi valori all'interno di calcoli.

      In questo esempio il controllo numerico converte il valore alfanumerico del parametro QS QS11 in un valore numerico. Il controllo numerico assegna questo valore al parametro Q Q82.

      11 Q82 = TONUMB ( SRC_QS11 )

      ; Conversione del valore alfanumerico di QS11 in un valore numerico e assegnazione a Q82

      Conversione di valori numerici in valori alfanumerici

      La funzione NC TOCHAR consente di salvare il contenuto di una variabile in un parametro QS. Il contenuto salvato può essere concatenato ad es. con altri parametri QS.

      In questo esempio il controllo numerico converte il valore numerico del parametro Q Q50 in un valore alfanumerico. Il controllo numerico assegna questo valore al parametro QS QS11.

      11 QS11 = TOCHAR ( DAT+Q50 DECIMALS3 )

      ; Conversione del valore numerico di Q50 in un valore alfanumerico e assegnazione al parametro QS QS11.

      Copia di una stringa parziale da un parametro QS

      La funzione NC SUBSTR consente di salvare da un parametro QS una stringa parziale definita in un altro parametro QS. È possibile utilizzare questa funzione NC ad es. per estrarre il nome del file da un percorso assoluto.

      In questo esempio il controllo numerico salva una stringa parziale del parametro QS QS10 nel parametro QS QS13. L'elemento di sintassi BEG2 consente di definire che il controllo numerico esegua la copia a partire dal terzo carattere. L'elemento di sintassi LEN4 consente di definire che il controllo numerico esegua la copia dei quattro caratteri seguenti.

      11 QS13 = SUBSTR ( SRC_QS10 BEG2 LEN4 )

      ; Assegnazione della stringa parziale da QS10 al parametro QS QS13

      Ricerca di una stringa parziale all'interno del contenuto di un parametro QS

      La funzione NC INSTR consente di verificare se è presente una stringa parziale definita all'interno di un parametro QS. In questo modo è possibile definire, ad es., se ha funzionato il concatenamento di diversi parametri QS. Per la verifica sono necessari due parametri QS. Il controllo numerico cerca nel primo parametro QS il contenuto del secondo parametro QS.

      Se il controllo numerico trova la stringa parziale, salva il numero di caratteri fino all'occorrenza della stringa parziale nel parametro di risultato. In presenza di più occorrenze il risultato è identico, in quanto il controllo numerico salva la prima occorrenza.

      Se il controllo numerico non trova la stringa parziale da cercare, salva il numero totale dei caratteri nel parametro di risultato.

      In questo esempio il controllo numerico cerca nel parametro QS QS10 la stringa di caratteri salvata in QS13. La ricerca ha inizio dalla terza posizione. Per il conteggio dei caratteri il controllo numerico inizia da zero. Il controllo numerico assegna l'occorrenza come numero di caratteri al parametro Q Q50.

      37 Q50 = INSTR ( SRC_QS10 SEA_QS13 BEG2 )

      Determinazione del numero di caratteri del contenuto di un parametro QS

      La funzione NC STRLEN determina il numero di caratteri del contenuto di un parametro QS. Questa funzione NC consente di determinare ad es. la lunghezza di un percorso del file.

      Se il parametro QS selezionato non è definito, il controllo numerico fornisce il valore -1.

      In questa esempio il controllo numerico determina i contenuti del parametro QS QS15. Il controllo numerico assegna il valore numerico del numero di caratteri al parametro Q Q52.

      11 Q52 = STRLEN ( SRC_QS15 )

      ; Determinazione del numero di caratteri di QS15 e assegnazione a Q52

      Confronto dell'ordine lessicale di due stringhe di caratteri alfanumerici

      La funzione NC STRCOMP consente di confrontare l'ordine lessicale del contenuto di due parametri QS.

      Il controllo numerico restituisce i seguenti risultati:

      • 0: il contenuto di entrambi i parametri QS è identico
      • -1: il contenuto del primo parametro QS si trova nell'ordine lessicale prima del contenuto del secondo parametro QS
      • +1: il contenuto del primo parametro QS si trova nell'ordine lessicale dopo il contenuto del secondo parametro QS

      L'ordine lessicale è come descritto di seguito:

      1. Caratteri speciali, ad es. ?_
      2. Valori numerici, ad es. 123
      3. lettere maiuscole, ad es. ABC
      4. lettere minuscole, ad es. abc
       
      Tip

      Il controllo numerico esegue la verifica a partire dal primo carattere finché il contenuto dei parametri QS non differisce. Se i contenuti differiscono ad es. nella quarta posizione, il controllo numerico interrompe la verifica in quella posizione.

      Contenuti più brevi con identica stringa di caratteri vengono visualizza dapprima nell'ordine, ad es. abc prima abcd.

      In questo esempio il controllo numerico confronta l'ordine lessicale di QS12 e QS14. Il controllo numerico assegna il risultato come valore numerico al parametro Q Q52.

      11 Q52 = STRCOMP ( SRC_QS12 SEA_QS14 )

      ; Confronto dell'ordine lessicale dei valori di QS12 e QS14

      Conferma del contenuto di un parametro macchina

      In funzione del contenuto del parametro macchina è possibile confermare con l'ausilio della funzione NC CFGREAD i valori alfanumerici in parametri QS o valori numerici in parametri Q, QL o QR.

      In questo esempio il controllo numerico salva il fattore di sovrapposizione del parametro macchina pocketOverlap come valore numerico in un parametro Q.

      Impostazioni predefinite nei parametri macchina:

      • ChannelSettings
      • CH_NC
        • CfgGeoCycle
          • pocketOverlap

      Esempio

      11 QS11 = "CH_NC"

      ; Assegnazione della key al parametro QS QS11

      12 QS12 = "CfgGeoCycle"

      ; Assegnazione dell'entità al parametro QS QS12

      13 QS13 = "pocketOverlap"

      ; Assegnazione dell'attributo al parametro QS QS13

      14 Q50 = CFGREAD( KEY_QS11 TAG_QS12 ATR_QS13 )

      ; Lettura del contenuto del parametro macchina

      La funzione NC CFGREAD contiene i seguenti elementi di sintassi:

      • KEY_QS: nome gruppo (key) del parametro macchina
      •  
        Tip

        Se non è presente alcun nome gruppo, si definisce un valore vuoto per il relativo parametro QS.

      • TAG_QS: nome oggetto (entità) del parametro macchina
      • ATR_QS: nome (attributo) del parametro macchina
      • IDX: indice del parametro macchina

      Lettura di parametri macchina con CFGREAD

      Nota

      Se si impiega la funzione NC formula stringa QS, il risultato è sempre un valore alfanumerico. Se si impiega la funzione NC Formula Q/QL/QR, il risultato è sempre un valore numerico.