Cómo convertir CHAR a STRING en TIA Portal mediante una función y permitir transformar todos los caracteres que tenemos en diferentes posiciones de un Array en una única variable String que nos permitirá tener todos esos caracteres juntos y hacer comparaciones con otras variables.

¿Para qué queremos convertir CHAR a STRING en TIA Portal?

En primer lugar, vamos a concretar que vamos a transformar varios caracteres CHAR definidos en un array de datos en una sola variable de tipo STRING. Por lo tanto, todas las variables CHAR dentro del Array se juntarán en una sola variable de tipo STRING. Por consiguiente, con una sola variable, podremos hacer, por ejemplo, comparaciones con otras variables que contengan caracteres.

N

Tenemos todos los caracteres en una sola variable.

N

Será más fácil utilizar el STRING para comparar con otro texto en otro variable.

N

Evitamos tener que comparar una a una cada posición de un Array.

¿Qué muestro todo lo que vas a aprender hoy?

N

Array de datos de tipo CHAR.

N

Variables de tipo STRING.

N

Función Chars_TO_Strg.

N

Ejemplo de aplicación de convertir CHAR a STRING.

Hay que crear un DB de datos con un Array para convertir CHAR a STRING TIA Portal.

En primer lugar, vamos a crear un DB de datos en TIA Portal, lo que nos va a permitir crear variable sen su interior del tipo que necesitemos. Por lo tanto, una vez creado el DB tendremos espacio suficiente para crear nuestro Array de tipo CHAR.

Crear DB de datos para las variables tipo Array of CHAR

Por esta razón, tenemos que continuar creando una variable que le llamaremos por ejemplo “Array_CHAR” y en el tipo de datos tenemos que seleccionar “Array[0..1] of”. Como consecuencia de esto, nos aparece una lista desplegable donde podemos seleccionar el tipo de todas las variables dentro del Array. En nuestro caso, seleccionamos “Array[0..1] of Char”.

Seleccionar el tipo de datos Array CHAR en TIA Portal

Asimismo, el siguiente paso es establecer la longitud del Array. Por consiguiente, donde tenemos el “[0..1]” podremos establecer la longitud. Por ello, vamos a establecer una Array de 20 por ejemplo.

Establecer longitud de 20 en el Array en TIA Portal

¿Cómo ponemos los caracteres en el Array?

Mientras tanto, una vez creado el Array, podemos establecer unos caracteres por defecto en cada posición del Array. Por lo tanto, podemos insertar los caracteres uno a uno en el “Valor de arranque” del DB en TIA Portal.

Añadir caracteres a cada posición del Array para convertir CHAR a STRING TIA Portal

Parece que ya tenemos establecidos unos caracteres y, si ahora leemos una a una las posiciones del array, nos saldrá la frase “PLC SIEMENS”. Como consecuencia de esto, parece que sería un poco costoso el leer una a una las posiciones del Array para poder mostrar el mensaje, ¿verdad? Por lo tanto, ¿y si convirtiéramos todos estos caracteres separados en una sola variable para poder trabajar con una sola variable? Sí, lo vamos a transformar a una STRING.

¿Qué función utilizamos para convertir CHAR a STRING TIA Portal?

Debido a esto que hemos comentado, tenemos que abrir un bloque donde vayamos a trabajar, por ejemplo, un FC. Una vez dentro, tenemos que ir al árbol de la derecha de TIA Portal y acceder a las “Instrucciones” y dentro de “Instrucciones avanzadas” buscar en la carpeta de “String + Char”. Por lo tanto, aquí dentro aparecerán una serie de funciones para trabajar con estos tipos de datos y seleccionaremos la función llamada “Chars_TO_Strg«. Por ello, la seleccionamos y arrastramos al segmento donde vamos a trabajar.

Seleccionar la función Char to Strg para convertir char a string TIA Portal

Una vez insertada la función, nos aparecen los parámetros de la función en rojo para insertar las variables y datos necesarios. Ahora los describiremos uno a uno.

Función Char to Strg en TIA Portal lista para insertar los parámetros

Parámetro CHARS.

En primer lugar, tenemos el parámetro llamado “CHARS” donde tenemos que insertar el Array de datos donde se encuentran los caracteres separados uno a uno en cada posición del Array. Es decir, que aquí colocamos el Array que hemos creado anteriormente en el DB.

Insertar el Array de datos en la función para convertir de Char a String TIA Portal

Parámetro PCHARS.

Asimismo, en el siguiente parámetro tenemos que indicar la posición dentro del Array a partir de la cual va a coger los caracteres para convertirlos. Por ello, si aquí ponemos un 10, la conversión empezará desde la posición 10 del Array en adelante, es decir, que de la posición 0 a la 9 no las convertiría. En nuestro caso, queremos que cuente desde la posición 0 del Array.

Leemos desde la posición 0 del Array para poder transformar los caracteres a String

Parámetro CNT para convertir CHAR a STRING TIA Portal.

Finalmente tenemos el parámetro de entrada CNT, donde tenemos que insertar la cantidad de elementos del Array que queremos convertir. Por lo tanto, en nuestro caso, si nos fijamos en el Array dentro del DB queremos utilizar del dato 0 del Array hasta el dato 10 del Array, es decir, que tenemos que insertar un 11.

Colocamos la cantidad de caracteres que queremos convertir de Char a String TIA Portal

Parámetro STRG.

Además, necesitamos insertar un último parámetro de salida de la función, donde vamos a guardar el dato convertido de CHAR a STRING. Por lo tanto, en este parámetro tenemos que colocar una variable de tipo “STRING” que todavía no hemos creado. Parece que, aprovechando el DB de datos que hemos creado anteriormente, vamos a crear otra variable en el DB de tipo STRING. Por ello, en una nueva línea del DB, damos nombre a una variable llamada “VAR_convertida”.

Crear variable de tipo STRING para convertir CHAR a STRING TIA Portal

Una vez creada la variable dentro del DB, tenemos que insertar la variable en la función para completar la estructura de la función y no nos dé ningún error al compilar.

Completar la función para poder convertir CHAR a STRING TIA Portal

Finalmente, tenemos que compilar el programa completamente para enlazar todos los cambios realizados y comprobar el programa en su totalidad. No debes compilar solo una parte o unas modificaciones, de lo contrario, te equivocarás. Te lo explico paso a paso en otro documento para que conozcas todo sobre la compilación del programa en TIA Portal:

Nos conectamos Online para ver cómo convertir CHAR a STRING.

Parece que ya lo tenemos todo preparado y ahora nos queda transferir el programa al PLC y probar cómo se hace la conversión. Una vez transferido, nos colocamos Online en el FC donde tenemos la función y comprobamos cómo se ha ejecutado la función y, por consiguiente, en la variable STRING tendremos todos los caracteres que hemos seleccionado en una sola variable. Mejor verlo en la imagen.

Convertir char a string TIA Portal mediante la función Chars_TO_Strg

Asimismo, si ahora modificamos los caracteres en el DB de datos en cada posición del Array, observaremos como, automáticamente se va a convertir CHAR a STRING TIA Portal y lo comprobamos en la variable STRING de la salida de la función.

Tienes que saber que, para cambiar los valores de arranque y transferir al PLC hay que seguir un procedimiento para que los cambios se establezcan. Te lo explico todo al detalle en otro documento, léelo para conocerlo bien:

Nuevos valores de caracteres en las posiciones del Array para convertirlos otra vez a String

Ahora que ya sebes convertir CHAR a STRING necesitas ver un ejemplo que te va a encantar. ¿Sabrías leer el número de serie del PLC y guardarlo en un Array de datos? ¿Y después convertir esos caracteres en un STRING? Te lo explico paso a paso en otro documento, no te va a decepcionar, he invertido mucho tiempo en él y te será muy útil:

Desarrollado y publicado por www.tecnoplc.com. Licencia Creative Commons 4.0.Creative Commons pequeño