Cómo utilizar un array de dimensión variable en TIA Portal cuando no sabemos cuántos elementos vamos a utilizar dentro del array para la aplicación de programación que tenemos entre manos.
Contenido del artículo:
- Para qué usar un array de dimensión variable.
- Cómo crear una array de dimensión variable.
- Cómo utilizar el array de dimensión variable.
Para qué usar un array de dimensión variable.
Normalmente cuando utilizamos un array de datos, sabemos qué cantidad de elementos vamos a incluir dentro de ese array, ya que nos dan la información concreta y necesaria para ese caso. Pero en ocasiones, no sabemos o desconocemos la necesidad del caso y, por tanto, conviene colocar un array de dimensión variable, de manera que podamos utilizar ese array para varios procesos. Asimismo, puedes ver al área de memoria de una CPU S7-1200 y comprobar qué variables son las que más se acoplan a tu necesidad, ya que tal vez utilices entradas y salidas del PLC para ciertas activaciones. O quizás tengas que utilizar Marcas de memoria M, o alguna variable temporal en TIA Portal.
Cómo crear una array de dimensión variable.
Para crear un array de dimensión variable vamos a poner como ejemplo una creación de un array dentro de un FC, para que, cuando llamemos posteriormente a ese FC, le podamos indicar qué cantidad exacta va a tener dicho array.
Para ello, después de crear un FC, declaramos una variable Input dentro del FC, y aquí asignamos a la variable un array pero sin declarar su longitud. En lugar de colocar la longitud o extensión del array, introduciremos un asterisco “*”. Esto delimitará nuestro array como un array de dimensión variable.
Cómo utilizar el array de dimensión variable.
Ahora que ya tenemos creado el array de dimensión variable dentro deL FC, cada vez que llamemos al FC deberemos introducir una variable de entrada del tipo “Array” y además le deberemos indicar la dimensión que tendrá ese array. Automáticamente, la FC le asignará esa dimensión a la variable “Array” que hemos creado dentro del FC.
Una vez trabajas con variables, seguro que tienes la necesidad de forzar algún valor cuando te encuentras Online con el PLC. Tienes que cambiar un valor a una variables para simular su estado, o tienes que modificar el valor de la variable para simular una nueva consigna para un PID. Por ello, te explico paso a paso cómo puedes forzar un valor de una variable sin necesidad de entrar a una tabla de variables, directamente:
En la imagen anterior vemos un ejemplo, ya que le estamos introduciendo un dato al FC de un array que tiene 15 de longitud. Para seguir con el ejemplo, creamos un DB de datos donde generamos varios datos de tipo Array. El dato 1, tendrá una longitud de 15. El dato 2 tendrá una longitud de 30. Ahora, cunado llamemos al FC1, automáticamente le podemos poner el Dato1 o el Dato 2 del DB1, ya que no importa la longitud que tenga cada Array, ya que el FC va a coger automáticamente la longitud que tenga el Array.
De esta manera, si volvemos a llamar al FC1 y le ponemos a la entrada el dato 2 del DB1, cogerá la longitud de 30 tal y como muestra la figura del DB1 anterior. Cuando se hace la llamada con el dato 1 del DB1, cogerá la longitud de 15 del Array 1 del Db1.
Tal vez una de las características más importantes para tus variables es la remanencia. ¿Qué quieres hacer con tus variables si se quita la alimentación del PLC? Por defecto, todos los valores se van a borrar y las variables se van a desactivar. Por lo tanto, si quieres que, cuando vuelvas a encender el PLC tus variables sigan activadas, tienes que seguir estos pasos:
Por cierto, si puede ser, déjame un comentario y dime lo que piensas sobre el artículo: bueno o malo, si crees que le falta algo, si te ha ayudado, lo que sea. De esta manera, yo podré mejorarlo y nos servirá a todos. Te contestaré en menos de 24h. Muchas gracias.