Cuando tengas que crear pantallas HMI de Siemens con muchos objetos iguales, tal vez te interese crear un faceplate en TIA Portal, o en castellano, plantilla de imagen.
La semana pasada creábamos unas pantallas emergentes tanto para HMI Basic de Siemens como las HMI Comfort.
Con esta entrada vamos a finalizar poniendo la guinda creando nuestras plantillas de imagen o faceplates.
Contenido
¿Qué es un Faceplate en TIA Portal?
Bueno, lo primero que hay que decir, que existen también en versiones anteriores a TIA Portal.
En WinCC Flexible 2008 por poner un ejemplo, también existen.
Por otro lado, estas plantilla de imagen solo está disponible en los HMI Comfort de Siemens.
Es así. Las pantallas Basic no tienen esta funcionalidad.
Básicamente, un faceplate es una plantilla de objetos. De ahí que se denomine en castellano como plantilla de imagen.
Un faceplate facilita la insercción de nuevos objetos que se comportan de forma idéntica uno de otros, y por tanto son susceptibles de realizar con ellos una plantilla.
Así, una vez creada, tan solo tendrás que añadir una nueva instancia de esta plantilla y configurar el intercambio de datos.
Ejemplo de una plantilla de imagen en TIA Portal
Para ilustrar lo que son estas plantillas de imagen, tienes la imagen inferior:
Lo que puedes ver es que tenemos una serie de objetos que son exactamente iguales entre sí gráficamente. Lo único que difieren unos de otros son los datos que están mostrando.
Pues esto pide a gritos realizar faceplate o plantilla de imagen… ¿no los oyes? ¡¡faceplate!! ¡¡plantillas de imagen!!
Bien, bromas absurdas a parte, veamos de qué se compone un faceplate o plantilla de imagen en TIA Portal:
Como ves, la plantilla de imagen está compuesta de:
- Objetos
- Variables
- Propiedades
Objetos del faceplate
Los objetos del faceplate son los objetos normales (botones, campos de entradas y salidas, gráficos…) que van a ser parte de la plantilla de imagen.
Tendrán sus propiedades y eventos como lo tienen dentro de una imagen normal, solamente que ahora van a pertenecer a un objeto mayor que es el faceplate.
Variables del faceplate
Las plantillas de imagen van a disponer de variables propias.
Podríamos decir que son las variables locales del faceplate.
No son variables que sean accesibles desde fuera de la plantilla, y por tanto, dos instancias de un faceplate van a tener la misma variable, pero cada una podrá valer diferente en cada instancia.
Nos van a ser útiles para comunicar datos entre objetos del faceplate sin que sea necesario sacar estos datos fuera del mismo.
Propiedades del faceplate
Las propiedades serán el nexo de unión entre el interior del faceplate y las variables exteriores que provengan del HMI o del PLC.
Podrán ser metidas en categorías para su mejor organización.
Estas propiedades, a su vez, podrán ser variables normales individuales (una booleana, un entero etc) o bien ser un UDT que posteriormente puedas enlazar con su homónimo en el PLC.
Cómo crear un faceplate en TIA Portal: el vídeo
Como supongo que si no tienes experiencia con los faceplates hasta ahora no te habrá quedado muy claro (es normal), he creado el siguiente vídeo donde mostrarte cómo crear un faceplate en TIA Portal.
Los estudiantes del curso de TIA Portal además tenéis el proyecto descargable para que podáis jugar con él y podáis chequear cómo esta hecho en caso de dudas a la hora de realizar la plantilla de imagen.
¿Qué te ha parecido?
Espero que si has tenido que realizar imágenes con muchos objetos iguales, no los hayas hecho copiando y pegando y hayas usado esta gran alternativa como son los Faceplates.
Si los acabas de descubrir y lo has hecho hasta ahora copiando y pegando, bueno, podría haber sido peor.
Al menos desde ya conoces estas plantillas de imagen que podrás usar en tus próximos proyectos.
Recuerda que si esto te parece muy complicado y estás verde como una lechuga, puedes enrolarte en el curso de TIA Portal y adquirir el curso completo o si lo deseas, solamente el bloque dedicado a los HMI de Siemens.
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.
18 Comentarios
Me gusta la idea, así optimizamos nuestras pantallas y solo sacamos las funcionalidades en menus emergentes cuando las necesitemos. Genial !!!!
Esa es un poco la idea Francisco.
Saludos
Que bien Iñigo. Muchas gracias por compartir esta informacion, tenemos algunas aplicaciones y esperamos dar uso a esta opcion.
Saludos
Carlos Y.
De nada Carlos!
Buenos dias como puedo crear una imagen a partir de un dibujo de un mtoro diesel para automatizarlo
felicidades Iñigo gran profesional, espero algún día puedas compartirnos algo de safety su configuración y programación de bloques saludos un abrazo
En safety a día de hoy no me veo capacitado para hacer ningún curso. Pero me formare en ello y ya haremos algo en el futuro.
Saludos
Muy interesante, pero lo suyo es que hubieras mostrado un faceplate desde el principio, que no lo tuvieras creado, así verlo el paso a paso mejor.
Hola Carlos. Es una entrada para el blog, y se dan las pautas de como hacerlo. El hacerlo en si lleva bastante rato como para hacerlo desde cero.
Muy agradecido por que has compartido esta valiosa información. Saludos desde México!
De nada Victor!
Hola, Justo estoy utilizando FacePlates en un proyecto, el tema con el que me he topado es que al momento de virtualizar el resultado con WINCC, las imágenes que derivan de FACEPLATES no aparecen, me podrías ayudar a saber por que o que tengo que hacer para que me aparezcan?
Ni idea donde puede estar el problema. Comprueba con una copia de seguridad que no sea que el proyecto pueda estar corrupto
Hola
Me encanta tu blog y ando investigando con faceplates y me he encontrado con un problemita.
Resulta que en mi udt hay un array de bool., pues bien, he generado un faceplate con un botón con el cual quiero invertir el Estado de uno de estos bits para ello uso el evento de invertirbit asociado a ese botón y cuando asignó la variable (una del array xxx[1] por ejemplo) me da error. He probado con bits que no pertenecen a un array y sin problemas. Sabes por que los bits de un array no están permitidos en las variables de los eventos?
Gracias de antemano
Un saludo y millones de gracias por esos videos tan geniales
Pues sinceramente, no. No he estado en esa tesitura.
Buenos días Iñigo,
En caso de no crear un udt, no se pueden hacer las conexiones de las variables del plc y el Faceplate, ya que en propiedades –> Interfaz–> no aparece nada para poder hacer la conexión.
¿Sabes como solucionarlo?
Muchas gracias
Hola Jon Ander, en los tutoriales con los que yo he aprendido, siempre es con un UDT.
Gracias por tu video, seria interesante también que expliques como manejar los scripts dentro del Faceplate, gracias!