El uso de tipos de datos en TIA Portal acerca la programación de los PLC de Siemens a un lenguaje de alto nivel.
No porque no hubiera antes UDT en Step 7 tradicional, sino porque el uso ahora es mucho más natural y flexible a mi juicio.
Contenido
Qué son los tipos de datos en TIA Portal
Para comenzar, deberemos definir que son los tipos de datos en TIA Portal.
Los tipos de datos, o UDT (User Data Type), son estructuras de datos simples (un entero) o complejos (un array) que son definidos en el programa de usuario.
Es decir, no están disponibles en TIA Portal de origen, sino que eres tú quien los crea.
Estos UDT sirven para aunar bajo un único paraguas, datos de diferentes zonas de la máquina que tienen una estructura común.
Así por ejemplo, podremos definir un UDT simple en el que pongamos consigna de velocidad, orden de marcha, aceleración etc de una serie de variadores que al ser de la misma marca, tienen la misma estructura de mando.
Estos UDT en Step 7 tradicional se podían usar con los DB, bien usándolos como DB del tipo UDT x, o bien metiendo dentro del DB, el tipo UDT x
Por extensión, esto es posible también usarlo dentro del interface de un FB, ya que este se va a apoyar en un DB, como ya sabes.
Pero con TIA Portal, los UDT son mucho más flexibles que lo que eran, y salen del ámbito exclusivo de los DB.
¿Comoooor?
Yep.
Si estás acostumbrado a usar los UDT en Step 7 tradicional, los habrás usado con los DB, sin problemas y ayudándote en las estructuras repetitivas.
La gracia es que ahora, no solamente puedes usarlo con los DB, sino que puedes usarlo también con entradas y salidas.
¿Para qué puedes usar los UDT o tipos de datos en TIA Portal?
La gracia de los UDT como digo, es cuando tienes diferentes «objetos» que se comportan de la misma manera y tienen la misma estructura de datos.
Imagínate que tuvieras 4 secciones de una máquina que fueran prácticamente iguales, y que cada zona dispusiera de un grupo de electroválvulas que hicieran lo mismo en las 4 zonas.
Así pues, tendríamos (por ejemplo) la siguiente distribución:
-
- Zona 1: Salidas de la A100.0 a la A100.4
- Zona 2: Salidas de la A103.0 a la A103.4
- Zona 3: Salidas de la A105.0 a la A105.4
- Zona 4: Salidas de la A106.0 a la A106.4
No he colocado el mismo hueco entre las salidas a propósito, para que se vea que no tiene porqué ser necesario.
Lo que sí deben cumplir es que el grupo sea coherente y que el direccionamiento empiece en el bit 0.
Es decir, el grupo no podría empezar en la A106.1, por poner un ejemplo, ya que no me dejará direccionarlo de esa manera.
En este caso, tan simple como que las salidas sean consecutivas, y sean 5 salidas seguidas.
Así pues, podemos crear un UDT, que llamaremos «GrupoEV» (por ejemplo) que tendrá la estructura:
- EV1
- EV2
- EV3
- EV4
- EV5
Como ves, nada complejo.
Ahora, podemos crear una variable cuyo tipo sea «GrupoEV», y que apunte a las salidas directamente, indicando como dirección, el primer bit de la salida.
Tipos de datos en TIA Portal en vídeo
Veamos un vídeo para ilustrar lo que te estoy contando, ya que veo que no estás del todo convencido.
¿Qué te ha parecido?
¿Conocías esta característica de los UDT?
Espero que te haya sido de utilidad y a partir de ahora lo integres como parte de tus proyectos.
¡Deja tus impresiones en los comentarios!
Ya sabes que si quieres profundizar en el tema, tienes el curso de TIA Portal con más de 50h de vídeo a lo largo de casi 300 vídeos para conocer los entresijos de la programación de autómatas de Siemens.
Como sabes, voy añadiendo los contenidos del blog para que los encuentres con facilidad. Este lo dejo como parte del anexo del bloque 1.
Recuerda que puedes apuntarte en Guorker.com donde por una cuota mensual, tendrás tarifa plana en todos los cursos disponibles en la plataforma.
Enseño a programar PLC de Siemens a través de mis cursos.
Más información sobre mi aquí
Puedes seguirme en cualquiera de las siguientes redes sociales.
10 Comentarios
Felicitaciones muy bien explicado !
Muchas gracias por ésta información, no conocía éste uso de los UDTs en el TIA PORTAL. Y aprovecho para felicitarte por tu gran trabajo ya que me ha facilitado mucho el aprendizaje de la programación con STEP 7.
Hola
Buenisimo, soy venezolano y quisiera saber como hacer para participar en el curso de comunicaciones.
Agradecido.
Hola antes que nada muy buen vídeo, solo quería consultarte sobre una duda, cuando creo las variables en «Variables PLC» y les coloco el tipo que definí antes en «Tipos de datos PLC» no me aparece la pestaña desplegable donde puedo ver los elementos del tipo que definí con sus direcciones.
Si bien parece que las direcciones están correctamente asignadas, no se como lograr que me aparezca la pestaña desplegable y así verlas variables y sus direcciones
( Así como tu despliegas una variable «zona» y te aparecen las «EV»)
Pues no se cual puede ser el problema. Si creas un tipo de datos, donde incluyes varias boolenas, cuando la declaras como nueva variable, debería dejarte ver que esa variable contiene a su vez varias booleanas.
Eso sí, tiene que contener varias booleanas, o enteros, claro.
Hola… me pasa lo mismo que Damian. Creo un «Tipos de datos PLC» sin problema y este tipo de dato se despliega desde cualquier DB. Sin embargo, cuando voy a «Variables PLC» no se despliega y no le puedo asignar una dirección. Tal vez conoces cuál podría ser el problema.
¿Qué CPU y firmware estás usando? Puede que por ahí venga el problema.
Hola, necesito direccionar las entradas no de forma consecutiva, ya que en el cableado del armario no están ordenadas…podría hacerse de alguna manera?
Gracias.
Buenas,
Es posible inicializar una UDT temporal en una FC?
Define inicializar. Si es declarar, sí. De hecho, pruébalo y verás que puedes crear tipos de datos y usarlos en las temporales.