STRING y Texto
Operaciones de Datos
Procese datos de texto como un profesional. Desde la generación dinámica de etiquetas hasta el análisis de protocolos, domine cada instrucción de manipulación de STRING en su PLC.
¿Por qué procesar STRING en un PLC?
Aunque los PLC están diseñados principalmente para lógica binaria y numérica, las operaciones de STRING son esenciales para las interfaces industriales modernas. Permiten generar mensajes dinámicos para HMI, analizar códigos de barras o códigos QR de escáneres y comunicarse con sistemas IT a través de protocolos de texto formateados.
TIA Portal ofrece un conjunto robusto de instrucciones para gestionar tipos STRING (ASCII) y WSTRING (Unicode), asegurando que su máquina pueda comunicarse claramente en cualquier idioma.
Concatenación e Inserción
Construcción de mensajes dinámicos
CONCAT — Concatenar STRING
CONCATQué hace
Combina dos o más STRING en un único STRING de salida. Los STRING de origen se añaden en el orden en que se definen.
Cuándo usarlo
Crear un mensaje de estado completo a partir de un prefijo y un nombre de variable, o construir una línea CSV para el registro de datos.
Consejos Pro
Compruebe siempre la longitud máxima de su STRING de destino para evitar el truncamiento.
En SCL, puede utilizar el operador '+' para una concatenación más sencilla si es compatible.
Combine CONCAT con caracteres de espacio para asegurar una salida legible en el HMI.
INSERT — Insertar en STRING
INSERTQué hace
Inserta una subcadena en un STRING existente en una posición de carácter especificada (P).
Cuándo usarlo
Añadir símbolos de unidad (como 'kg' o '°C') dentro de una plantilla de texto dinámica.
Consejos Pro
Si P es 0, la cadena se inserta al principio.
Si P es mayor que la longitud del STRING, la subcadena se añade al final.
Útil para el formateo dinámico de cadenas de fecha/hora.
Búsqueda y Modificación
Análisis de datos de texto
FIND — Buscar Subcadena
FINDQué hace
Busca un patrón específico dentro de un STRING y devuelve la posición inicial. Devuelve 0 si no se encuentra.
Cuándo usarlo
Localizar delimitadores (como comas o puntos y coma) en una cadena de entrada de escáner.
Consejos Pro
La búsqueda distingue entre mayúsculas y minúsculas. 'Error' es diferente de 'error'.
Utilice la posición devuelta directamente en una instrucción MID para extraer datos.
En un bucle, puede encontrar múltiples ocurrencias actualizando el STRING inicial.
REPLACE — Reemplazar Parte
REPLACEQué hace
Reemplaza un número específico de caracteres a partir de la posición P con una nueva subcadena.
Cuándo usarlo
Actualizar una parte variable de un mensaje estático sin reconstruir todo el STRING.
Consejos Pro
Para eliminar caracteres sin añadir otros nuevos, utilice un STRING vacío como reemplazo.
Comúnmente utilizado para intercambiar marcadores de posición como {val} con valores reales.
Tenga cuidado con el recuento de caracteres para evitar desplazar el resto del texto de forma inesperada.
Conversión y Extracción
Uniendo números y texto
VAL_STRG / STRG_VAL — Conversión
VAL_STRGQué hace
Convierte valores numéricos (Int, Real) a STRING (VAL_STRG) o analiza números de un STRING (STRG_VAL).
Cuándo usarlo
Mostrar una temperatura Real en un mensaje de texto personalizado o convertir una entrada de puerto serie a un Integer.
Consejos Pro
Configure la entrada FORMAT para definir decimales y el comportamiento del signo.
STRG_VAL es sensible al separador decimal (punto frente a coma).
Compruebe la salida de estado para asegurar que la conversión fue exitosa.
LEFT / RIGHT / MID — Extraer
MIDQué hace
Extrae una parte de un STRING desde la izquierda, la derecha o una posición media específica (MID).
Cuándo usarlo
Obtener un prefijo de un código de barras o extraer un valor entre paréntesis.
Consejos Pro
MID(IN, L, P) extrae L caracteres comenzando en la posición P.
Si L excede los caracteres disponibles, la instrucción devuelve todo hasta el final.
Esencial para 'desempaquetar' datos de protocolos serie de terceros.
STRING vs WSTRING
Elegir el formato de texto adecuado
| Propiedad | STRING | WSTRING |
|---|---|---|
| Codificación | ASCII / ASCII Extendido | Unicode (UTF-16) |
| Bytes por Carácter | 1 Byte | 2 Bytes |
| Longitud Máxima | 254 Caracteres | 16382 Caracteres |
| Uso | Texto occidental estándar | Internacional / Caracteres especiales |
| Impacto en Memoria | Bajo | Alto (Doble) |
| Prefijo SCL | '' (Comillas simples) | W#'' |
Preguntas Frecuentes
¿Cuál es la longitud máxima de un STRING en TIA Portal?
Un STRING estándar puede contener hasta 254 caracteres. Si necesita más, debe utilizar el tipo WSTRING, que puede manejar hasta 16,382 caracteres en S7-1500.
¿Por qué falla mi conversión VAL_STRG?
La razón más común es una longitud de STRING de destino insuficiente o una discrepancia en el parámetro FORMAT (por ejemplo, intentar encajar un REAL grande en un STRING pequeño).
¿Puedo usar STRING en bloques de datos (DB) optimizados?
Sí, los STRING son totalmente compatibles en DB optimizados. Sin embargo, recuerde que siempre ocupan su tamaño máximo definido en la memoria, más 2 bytes para los encabezados de longitud.
¿Cómo comparar dos STRING en SCL?
Puede utilizar operadores de comparación estándar (=, <>, <, >). TIA Portal compara los STRING carácter por carácter basándose en sus valores ASCII/Unicode.