Istruzioni TIA Portal

Stringhe e Testo
Operazioni sui Dati

Elabora i dati di testo come un professionista. Dalla generazione dinamica di etichette al parsing di protocolli, padroneggia ogni istruzione di manipolazione delle stringhe nel tuo PLC.

Perché elaborare le stringhe in un PLC?

Sebbene i PLC siano progettati principalmente per la logica binaria e numerica, le operazioni sulle stringhe sono essenziali per le moderne interfacce industriali. Consentono di generare messaggi dinamici per gli HMI, analizzare codici a barre o codici QR dagli scanner e comunicare con i sistemi IT tramite protocolli di testo formattati.

TIA Portal offre un set robusto di istruzioni per la gestione dei tipi STRING (ASCII) e WSTRING (Unicode), garantendo che la tua macchina possa comunicare chiaramente in qualsiasi lingua.

Concatenazione e Inserimento

Costruzione di messaggi dinamici

CONCAT — Concatenare Stringhe

CONCAT

Cosa fa

Combina due o più stringhe in un'unica stringa di output. Le stringhe sorgente vengono aggiunte nell'ordine in cui sono definite.

Quando usarlo

Creazione di un messaggio di stato completo da un prefisso e un nome di variabile, o costruzione di una riga CSV per il logging.

Consigli degli esperti

Controlla sempre la lunghezza massima della stringa di destinazione per evitare il troncamento.

In SCL, puoi usare l'operatore '+' per una concatenazione più semplice, se supportato.

Combina CONCAT con caratteri spazio per garantire un output HMI leggibile.

INSERT — Inserire nella Stringa

INSERT

Cosa fa

Inserisce una sottostringa in una stringa esistente in una posizione di carattere (P) specificata.

Quando usarlo

Aggiunta di simboli di unità (come 'kg' o '°C') all'interno di un template di testo dinamico.

Consigli degli esperti

Se P è 0, la stringa viene inserita all'inizio.

Se P è maggiore della lunghezza della stringa, la sottostringa viene aggiunta alla fine.

Utile per la formattazione dinamica di stringhe data/ora.

Ricerca e Modifica

Analisi dei dati di testo

FIND — Cerca Sottostringa

FIND

Cosa fa

Cerca un pattern specifico all'interno di una stringa e restituisce la posizione iniziale. Restituisce 0 se non trovato.

Quando usarlo

Localizzazione di delimitatori (come virgole o punti e virgola) in una stringa di input dello scanner.

Consigli degli esperti

La ricerca fa distinzione tra maiuscole e minuscole. 'Error' è diverso da 'error'.

Usa la posizione restituita direttamente in un'istruzione MID per estrarre i dati.

In un ciclo, puoi trovare più occorrenze aggiornando la stringa di partenza.

REPLACE — Sostituisci Parte

REPLACE

Cosa fa

Sostituisce un numero specifico di caratteri a partire dalla posizione P con una nuova sottostringa.

Quando usarlo

Aggiornamento di una parte variabile di un messaggio statico senza ricostruire l'intera stringa.

Consigli degli esperti

Per eliminare caratteri senza aggiungerne di nuovi, usa una stringa vuota come sostituzione.

Comunemente usato per scambiare segnaposto come {val} con valori reali.

Fai attenzione al conteggio dei caratteri per evitare di spostare inaspettatamente il resto del testo.

Conversione ed Estrazione

Ponte tra numeri e testo

VAL_STRG / STRG_VAL — Conversione

VAL_STRG

Cosa fa

Converte valori numerici (Int, Real) in String (VAL_STRG) o analizza numeri da una String (STRG_VAL).

Quando usarlo

Visualizzazione di una temperatura Real in un messaggio di testo personalizzato o conversione di un input da porta seriale in un Integer.

Consigli degli esperti

Configura l'input FORMAT per definire i decimali e il comportamento del segno.

STRG_VAL è sensibile al separatore decimale (punto vs virgola).

Controlla l'output di stato per assicurarti che la conversione sia andata a buon fine.

LEFT / RIGHT / MID — Estrarre

MID

Cosa fa

Estrae una parte di una stringa da sinistra, destra o da una specifica posizione centrale (MID).

Quando usarlo

Ottenimento di un prefisso da un codice a barre o estrazione di un valore tra parentesi.

Consigli degli esperti

MID(IN, L, P) estrae L caratteri a partire dalla posizione P.

Se L supera i caratteri disponibili, l'istruzione restituisce tutto fino alla fine.

Essenziale per lo 'spacchettamento' dei dati da protocolli seriali di terze parti.

STRING vs WSTRING

Scegliere il formato di testo corretto

ProprietàSTRINGWSTRING
CodificaASCII / ASCII estesoUnicode (UTF-16)
Byte per carattere1 Byte2 Byte
Lunghezza massima254 caratteri16382 caratteri
UtilizzoTesto occidentale standardInternazionale / Caratteri speciali
Impatto sulla memoriaBassoAlto (Doppio)
Prefisso SCL'' (Apici singoli)W#''

Domande Frequenti

Qual è la lunghezza massima di una STRING in TIA Portal?

Una STRING standard può contenere fino a 254 caratteri. Se ne servono di più, è necessario utilizzare il tipo WSTRING che può gestire fino a 16.382 caratteri su S7-1500.

Perché la mia conversione VAL_STRG fallisce?

Il motivo più comune è una lunghezza insufficiente della stringa di destinazione o una mancata corrispondenza nel parametro FORMAT (ad esempio, cercare di inserire un REAL grande in una STRING piccola).

Posso usare le stringhe in blocchi dati ottimizzati?

Sì, le stringhe sono pienamente supportate nei DB ottimizzati. Tuttavia, ricorda che occupano sempre la loro dimensione massima definita in memoria, più 2 byte per gli header di lunghezza.

Come confrontare due stringhe in SCL?

Puoi usare gli operatori di confronto standard (=, <>, <, >). TIA Portal confronta le stringhe carattere per carattere in base ai loro valori ASCII/Unicode.

Semplifica l'elaborazione del testo

Parsing complesso o generazione di etichette? T-IA Connect automates the creation of your string manipulation blocks.