Funciones de secuencia de caracteres
Aplicación
Con las funciones de secuencia de caracteres se pueden definir y procesar cadenas de texto mediante parámetros QS para, p. ej. crear protocolos variables con FN 16: F-PRINT. En informática, una cadena de texto describe una secuencia de caracteres alfanumérica.
Temas utilizados
- Campos de variables
Descripción de la función
A un parámetro QS se pueden asignar un máx. de 255 caracteres.
Dentro de los parámetros QS se permiten los siguientes caracteres:
- Letras
- Cifras
- Caracteres especiales, p. ej., ?
- Signos de control, p. ej., \ en las rutas
- Caracteres vacíos
Los valores de los parámetros QS se pueden comprobar o seguir procesando con las funciones NC Fórmula Q/QL/QR y Fórmula de secuencia de caracteres QS.
Sintaxis | Función NC | Función NC de ámbito superior |
---|---|---|
DECLARE STRING | Asignar un valor alfanumérico a un parámetro QS | |
STRING-FORMEL | Encadenar contenido de los parámetros QS y asignarlo a un parámetro QS | Fórmula de secuencia de caracteres QS |
TONUMB | Convertir el valor alfanumérico de un parámetro QS en un valor numérico y asignarlo a un parámetro Q, QL o QR | Fórmula Q/QL/QR |
TOCHAR | Convertir un valor numérico en un valor alfanumérico y asignarlo a un parámetro QS | Fórmula de secuencia de caracteres QS |
SUBSTR | Copiar una cadena de texto parcial de un parámetro QS y asignarla a un parámetro QS | Fórmula de secuencia de caracteres QS |
SYSSTR | Leer datos del sistema y asignar los contenidos a un parámetro QS | Fórmula de secuencia de caracteres QS |
INSTR | Buscar cadena de texto parcial en un parámetro QS y asignar la posición encontrada a un parámetro Q, QL o QR Buscar una secuencia de caracteres parcial dentro del contenido de un parámetro QS | Fórmula Q/QL/QR |
STRLEN | Calcular el número de caracteres de un parámetro QS y asignarlo a un parámetro Q, QL o QR Calcular el número de caracteres del contenido de un parámetro QS | Fórmula Q/QL/QR |
STRCOMP | Comparar el orden alfabético ascendente de los parámetros QS y asignar el resultado a un parámetro Q, QL o QR Comparar el orden alfabético de dos secuencias de caracteres alfanuméricas | Fórmula Q/QL/QR |
CFGREAD | Leer el contenido de un parámetro de máquina y asignarlo a un parámetro QS |
|
El control numérico ofrece las siguientes posibilidades para introducir fórmulas:
- Autocompletado
- Teclado superpuesto para la introducción de fórmulas desde la barra de acción o el formulario
- Modo Introducción de fórmula del teclado en pantalla
Leer los datos del sistema con SYSSTR
Con la función NC SYSSTR se pueden leer los datos del sistema y guardar su contenido en parámetros QS La fecha del sistema se selecciona mediante un número de grupo ID y un número NR.
Opcionalmente, se puede introducir IDX y DAT.
Se pueden leer los siguientes datos del sistema:
Nombre de grupo, ID | Número | Significado |
---|---|---|
Información del programa, 10010 | 1 | Ruta del programa principal o programa de palés actual |
2 | Ruta del programa NC que se está ejecutando actualmente. | |
3 | Ruta del programa NC seleccionado con el ciclo 12 PGM CALL | |
10 | Ruta del programa NC seleccionado con SEL PGM | |
Datos de canal, 10025 | 1 | Nombre del canal actual, p. ej. CH_NC |
Valores programados en la llamada de la herramienta, 10060 | 1 | Denominación de la herramienta actual. Tip La función NC solo guarda el nombre de la herramienta cando esta se llama mediante el nombre de herramienta. |
Cinemática, 10290 | 10 | Cinemática programada en la última función NC FUNCTION MODE |
Hora actual del sistema, 10321 | 1 - 16, 20 |
|
Datos del palpador digital, 10350 | 50 | Tipo de palpador digital del palpador digital de piezas TS |
70 | Tipo de palpador digital del palpador digital de herramientas TT | |
73 | Nombre del palpador digital de herramienta TT del parámetro de máquina activeTT | |
Datos para el mecanizado de palés, 10510 | 1 | Nombre del palé que se mecaniza actualmente |
2 | Ruta de la tabla de palés seleccionada actualmente | |
Versión del software NC, 10630 | 10 | Número de la versión del software NC |
Información para el ciclo de desequilibrio, 10855 | 1 | Ruta de la tabla de calibración del desequilibrio La tabla de calibración del desequilibrio pertenece a la cinemática activa. |
Datos de herramienta, 10950 | 1 | Denominación de la herramienta actual. |
2 | Contenido de la columna DOC de la herramienta actual | |
3 | Ajustes de regulación AFC de la herramienta actual | |
4 | Cinemática del portaherramientas de la herramienta actual |
Leer parámetros de máquina con CFGREAD
Con la función NC CFGREAD se puede leer el contenido de los parámetros de máquina del control numérico como valores numéricos o alfanuméricos. Los valores numéricos leídos siempre se emiten en unidades métricas.
Para leer un parámetro de máquina, deben calcularse los siguientes contenidos en el editor de configuración del control numérico:
Icono | Tipo | Significado |
---|---|---|
Tecla | Nombre de grupo del parámetro de máquina Opcionalmente, se puede indicar el nombre de grupo | |
Entidad | Objeto de parámetro El nombre siempre comienza con Cfg | |
Atributo | Nombre de parámetros de la máquina | |
Índice | Índice de listas de un parámetro de máquina Opcionalmente, se puede indicar el índice de listas |
En el editor de configuración, se puede modificar la representación del parámetro existente para el parámetro de máquina. En la configuración estándar, se muestran los parámetros con textos cortos y explicativos.
Si se lee un parámetro de máquina con la función NC CFGREAD, se debe definir previamente un parámetro QS cada vez con atributo, entidad y Key.
Asignar un valor alfanumérico a un parámetro QS
Antes de poder utilizar y procesar valores alfanuméricos, se deben asignar caracteres a los parámetros QS. Para ello, utilizar el comando DECLARE STRING.
Para asignar un valor alfanumérico a un parámetro QS, hacer lo siguiente: | ||
| ||
| ||
|
En este ejemplo, el control numérico asigna un valor alfanumérico al parámetro QS QS10.
11 DECLARE STRING QS10 = "workpiece" | ; Asignar valor alfanumérico a QS10 |
Encadenar valores alfanuméricos
Con el operador de concatenación || se pueden encadenar entre sí los contenidos de varios parámetros QS. Se pueden combinar, p. ej. valores alfanuméricos fijos y variables.
Para encadenar los contenidos de varios parámetros QS, hacer lo siguiente: | ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
|
En este ejemplo, el control numérico encadena los contenidos de los parámetros QS QS12 y QS13. El control numérico asigna el valor alfanumérico al parámetro QS QS10.
11 QS10 = QS12 || QS13 | ; Encadenar el contenido de QS12 y QS13 y asignarlo al parámetro QS QS10 |
Contenido de los parámetros:
- QS12: Estado:
- QS13: Rechazo
- QS10: Estado: Rechazo
Convertir valores alfanuméricos en numéricos
Con la función NC TONUMB solo se pueden guardar los caracteres numéricos de un parámetro QS en otro tipo de variable. A continuación, estos valores se pueden utilizar en los cálculos.
En este ejemplo, el control numérico convierte el valor alfanumérico del parámetro QS QS11 en un valor numérico. El control numérico asigna este valor al parámetro Q Q82.
11 Q82 = TONUMB ( SRC_QS11 ) | ; Convertir el valor alfanumérico de QS11 en un valor numérico y asignarlo a Q82 |
Convertir valores numéricos en alfanuméricos
Con la función NC TOCHAR se puede guardar el contenido de una variable en un parámetro QS. El contenido guardado se puede encadenar, p. ej., con otros parámetros QS.
En este ejemplo, el control numérico convierte el valor numérico del parámetro Q Q50 en un valor alfanumérico. El control numérico asigna este valor al parámetro QS QS11.
11 QS11 = TOCHAR ( DAT+Q50 DECIMALS3 ) | ; Convertir el valor numérico de Q50 en un valor alfanumérico y asignarlo al parámetro QS QS11 |
Copiar cadena de texto parcial de un parámetro QS
Con la función NC SUBSTR se puede guardar una cadena de texto parcial definida en un parámetro QS en otro parámetro QS. Esta función NC se puede utilizar, p. ej., para extraer el nombre de fichero de una ruta de fichero absoluta.
En este ejemplo, el control numérico guarda una cadena de texto parcial del parámetro QS QS10 en el parámetro QS QS13. Mediante el elemento sintáctico BEG2 se define que el control numérico copie a partir del tercer carácter. Con el elemento sintáctico LEN4 se define que el control numérico copie los cuatro siguientes caracteres.
11 QS13 = SUBSTR ( SRC_QS10 BEG2 LEN4 ) | ; Asignar cadena de texto parcial de QS10 al parámetro QS QS13 |
Buscar una secuencia de caracteres parcial dentro del contenido de un parámetro QS
Con la función NC INSTR se puede comprobar si dentro de un parámetro QS hay una secuencia de caracteres parcial determinada. Esto permite determinar si la concatenación de varios parámetros QS ha funcionado. Para comprobarlo hacen falta dos parámetros QS. El control numérico busca en el primer parámetro QS el contenido del segundo parámetro QS.
Si el control numérico encuentra la cadena de texto parcial, el control numérico guarda el número de caracteres hasta la posición encontrada de la cadena de texto parcial en el parámetro de resultados. Si se han encontrado varias posiciones, el resultado es idéntico, ya que el control numérico guarda la primera posición encontrada.
Si el control numérico no encuentra la cadena de texto parcial, guarda el número total de caracteres en el parámetro de resultados.
En este ejemplo, el control numérico busca en el parámetro QS QS10 la secuencia de caracteres guardada en QS13. La búsqueda comienza a partir de la tercera posición. Al contar los caracteres, el control numérico empieza desde cero. El control numérico asigna la posición encontrada como número de caracteres al parámetro Q Q50.
37 Q50 = INSTR ( SRC_QS10 SEA_QS13 BEG2 ) |
Calcular el número de caracteres del contenido de un parámetro QS
La función NC STRLEN calcula el número de caracteres del contenido de un parámetro QS. Con esta función NC se puede determinar, p. ej. la longitud de la ruta de un fichero.
Si no se ha definido el parámetro QS seleccionado, el control numérico proporciona el valor -1.
En este ejemplo, el control numérico calcula el número de caracteres del parámetro QS QS15. El control numérico asigna el valor numérico del número de caracteres al parámetro Q Q52.
11 Q52 = STRLEN ( SRC_QS15 ) | ; Calcular el número de caracteres de QS15 y asignarlo a Q52 |
Comparar el orden alfabético de dos secuencias de caracteres alfanuméricas
Con la función NC STRCOMP se compara el orden alfabético del contenido de dos parámetros QS.
El control numérico vuelve a emitir los siguientes parámetros:
- 0: El contenido de ambos parámetros QS es idéntico
- -1: Según el orden alfabético, el contenido del primer parámetro QS se encuentra antes del contenido del segundo parámetro QS
- +1: Según el orden alfabético, el contenido del primer parámetro QS se encuentra después del contenido del segundo parámetro QS
El orden alfabético se determina de la siguiente forma:
- Caracteres especiales, p. ej., ?_
- Cifras, p. ej. 123
- Mayúsculas, p. ej. ABC
- Minúsculas, p. ej. abc
El control numérico comprueba a partir del primer carácter hasta que el contenido del parámetro QS difiera. Si, p. ej., el contenido difiere en la cuarta posición, el control numérico interrumpe la comprobación en esa posición.
Los contenidos más cortos con secuencias de caracteres idénticas se muestran en primer lugar, p. ej. abc antes que abcd.
En este ejemplo, el control numérico compara el orden alfabético de QS12 y QS14. El control numérico asigna el resultado como valor numérico al parámetro Q Q52.
11 Q52 = STRCOMP ( SRC_QS12 SEA_QS14 ) | ; Comparar el orden alfabético de los valores de QS12 y QS14 |
Capturar el contenido de un parámetro de máquina
En función del contenido del parámetro de máquina, mediante la función NC CFGREAD se pueden aceptar valores alfanuméricos en los parámetros QS o valores numéricos en los parámetros Q, QL o QR.
En este ejemplo, el control numérico guarda el factor de solapamiento del parámetro de máquina pocketOverlap como valor numérico en un parámetro Q.
Ajustes preestablecidos en los parámetros de máquina:
- ChannelSettings
- CH_NC
- CfgGeoCycle
- pocketOverlap
11 QS11 = "CH_NC" | ; Asignar Key al parámetro QS QS11 |
12 QS12 = "CfgGeoCycle" | ; Asignar entidad al parámetro QS QS12 |
13 QS13 = "pocketOverlap" | ; Asignar atributo al parámetro QS QS13 |
14 Q50 = CFGREAD( KEY_QS11 TAG_QS12 ATR_QS13 ) | ; Leer contenido del parámetro de máquina |
La función NC CFGREAD contiene los siguientes elementos sintácticos:
- KEY_QS: nombre de grupo (Key) del parámetro de máquina
- Tip
Si existe un nombre de grupo, definir un valor vacío para el parámetro QS correspondiente.
- TAG_QS: nombre de objeto (entidad) del parámetro de máquina
- ATR_QS: nombre (atributo) del parámetro de máquina
- IDX: índice del parámetro de máquina
Nota
Si se utiliza la función NC Fórmula de secuencia de caracteres QS, el resultado es siempre un valor alfanumérico. Si se utiliza la función NC Fórmula Q/QL/QR, el resultado es siempre un valor numérico