|
Descripción: El acceso a las propiedades de objeto con ayuda de un Script sirve como alternativa para la configuración de las propiedades de los objetos del diálogo de propiedades. Algunos objetos no se pueden modificar en el SIMATIC WinCC (TIA Portal) a través de sus interfaces disponibles, como por ejemplo, la modificación del tamaño de un rectángulo en modo Runtime. Estos atributos o propiedades se pueden dinamizar o modificar con ayuda de Scripts.
Al final de este artículo, se dispone para su descarga de un archivo PDF, así como el proyecto ejemplo descrito.
El documento PDF contiene una lista de objetos disponibles de forma estándar en el WinCC Comfort o WinCC Advanced. Además, hay un listado con todas las propiedades de los objetos (atributos), así como una lista con el modo de acceso a las propiedades que se pueden llamar a través de instrucciones de Script.
Instrucciones
En el siguiente ejemplo se muestra cómo poder modificar, el ancho y alto de un rectángulo en modo Runtime, con ayuda de un Script.
Los nombres utilizados para las variables y el objeto (rectángulo) se pueden adaptar de manera individual. Las variables no necesitan de ninguna conexión con el control (sólo se se quieren asignar el alto y ancho del rectángulo a través del control).
Para tener una mejor comprensión, es de gran utilidad abrir la configuración adjunta.
| Nº |
Procedimiento |
| 1 |
Inserción de un rectángulo
- Inserte un objeto de tipo "Rectángulo" dentro de la imagen "Screen_01".
Advertencia
El nombre de la imagen se utilizará más tarde en el Script.
- Ajuste el tamaño y el nombre del objeto.
En este ejemplo se tiene un cuadrado de 100 de ancho y 50 de alto.
El nombre del objeto es "Rectangle_1".
Advertencia
El nombre del objeto (rectángulo) se utilizará más tarde en el Script.

Figura 01
|
| 2 |
Creación de las variables
El alto y ancho del rectángulo se ha poder modificar a través de un Script. Para ello, cree 2 variables internas que se llamen "RectangleHeight" y "RectangleWidth".
(Navegación del proyecto > Equipo de servicio > Variables HMI > Tablas de variables estándar)
Las variables deben tener asignado un "valor inicial". En este caso se utiliza un ancho de "100" y una altura de "50" (Propiedades > Valor > Valor inicial). El motivo de esta media se describe a continuación (Link).
Advertencia
Las variables se utilizarán más tarde en el Script.

Figura 02
|
| 3 |
Creación de los Scripts En la configuración se utilizan 2 scripts.
(Navegación del proyecto > Equipos de servicio > Script VB > Insertar nueva función VB ).
El nombre de los Scripts se puede ajustar individualmente.
En este ejemplo se llaman:
- Script_01_Rectangle
- Script_02_Init_Rectangle
A continuación se describen en detalle los 2 Scripts utilizados. |
| 4 |
Script_01_Rectangle El "Script_01_Rectangle" se utiliza para poder modificar el tamaño del rectángulo.
Creación de las variables internas del Script Para modificar las propiedades de un objeto en WinCC Confort o Wib CC Advance (las propiedades de un rectángulo en este caso) se necesita una variable de Script interna.
El nombre de las variables se pueden ajustar individualmente.
En este ejemplo se llama "ObjectRectangle"
Definición del objeto
En el editor de Scripts se asigna la variable interna "ObjectRectangle" al objeto "Rectangle_1" .
Utilizando la instrucción "HmiRuntime.Screens" se da a conocer, en qué imagen se encuentra disponible el objeto (rectángulo).
Utilizando la instrucción "ScreenItems" se accede de manera explícita al objeto (rectángulo) en la imagen correspondiente.
En este ejemplo:
Set ObjectRectangle = HmiRuntime.Screens("Screen_01").ScreenItems("Rectangle_1")
Advertencia
Tenga en cuenta que el nombre del objeto tiene que ser unívoco en una misma imagen, es decir, este nombre no lo puede utilizar ningún otro objeto.
Pero se puede utilizar el mismo nombre de objeto en otras imágenes diferentes.
Asignación al objeto (rectángulo) de las variables para el "alto" y "ancho" del rectángulo
El atributo "Width" se utiliza para asignar el ancho del objeto.
El atributo "Height" se utiliza para asignar el alto del objeto.
Para el rectángulo utilizado se han asignado 2 variables para el "ancho" y "alto".
Estas variables se asigna de manera adecuada al objeto.
ObjectRectangle.Height = SmartTags("RectangleHeight")
ObjectRectangle.Width = SmartTags("RectangleWidth")

Figura 03
|
| 5 |
Script_02_Init_Rectangle El "Script_02_Init_Rectangle" se utiliza para poder modificar el tamaño del rectángulo a un tamaño indicado en el Script (reseteo al "tamaño estándar"). Sólo sirve para ajustar el rectángulo de nuevo a su "tamaño original" sin que haya que indicar previamente un valor a través los campos de E/S.
El Script tiene la misma estructura que el "Script_01_Rectangle". Sólo se diferencia en la instrucción que asigna un valor fijo para el ancho ("200") y el alto ("100") del rectángulo.

Figura 04 |
| 6 |
Ayudas para crear el Script
Autocumplimentación
- Utilice la función "Autocumplimentación" en la creación de los Scripts.
"Autocumplimentación" significa que, en un diálogo se ofrece una lista en función de cada contexto, de la que se pueden seleccionar las variables o instrucciones deseadas.
Ejemplo 1
Escriba un "punto" tras el diálogo "...= HmiRuntime".
Ahora se abre un "menú contextual", del que se pueden seleccionar todas las variables o instrucciones disponibles.

Figura 05
Ejemplo 2
Escriba un "punto" después del diálogo "ObjectRectangle".
Ahora se abre un "menú contextual", del que se pueden seleccionar todos los atributos disponibles.

Figura 06
Inserción de la variable
- Seleccione el lugar en el que se quiere insertar la variable
- Haga clic con el "botón derecho del ratón". Ahora se abre un menú contextual.
Seleccione la opción del menú "Autocumplimentación -> Lista objetos".
A continuación, se abre otra ventana, desde la que se pueden seleccionar las variables correspondientes y aceptar todo por medio del botón simbólico "OK".

Figura 07
|
| 7 |
Inserción de botones y campos de E/S
Para poder asignar el alto y ancho del rectángulo se necesitan 2 campos de E/S. Para la ejecución de los Scripts se utilizan 2 botones:
- Botón "Modificar tamaño" (Script "Script_01_Rectangle")
- Botón "Tamaño estándar" (Script "Script_02_Init_Rectangle")

Figura 08
En los campos de E/S se han configurado las variables internas para el "ancho" y "alto" del rectángulo.
(Propiedades > General > Proceso)
Desde el botón "Modificar tamaño" se llama al "Script_01_Rectangle"
(Propiedades > Eventos > Imprimir)
Desde el botón "Tamaño estándar" se llama al "Script_02_Init_Rectangle"
(Propiedades > Eventos > Imprimir) |
| 8 |
Propiedades de la imagen "Screen_01" El ejemplo actual se ejecuta desde la imagen "Screen_01".
Si se modifica el tamaño del "rectángulo", entonces éste sólo está disponible de manera "temporal". Si se vuelve a abrir la página, el rectángulo vuelve a adoptar el tamaño de la configuración.
Si se quiere mantener el tamaño modificado, tras realizar un cambio de página, llame al "Script_01_Rectangle" con la estructura de la imagen "Screen_01" (Propiedades > Eventos > Creado)
¡Al llamar a la página por primera vez o cuando todavía no se ha asignado ningún valor para el tamaño del rectángulo, éste no se ve en la pagina! (el ancho y alto tienen una longitud con valor "cero").
Para que no pueda suceder esto, hay que indicar un valor inicial a las variables "Ancho" y "Alto" (Link).

Figura 09
|
| 9 |
Indicaciones y ayudas para la configuración
- Para comprobar la configuración adjunta se puede utilizar un equipo TP1200 Comfort o utilizar la simulación del WinCC Comfort o WinCC Advanced.
- Si se asigna un valor desde los campos de E/S, tenga en cuenta que el objeto (rectángulo) no sobrepase el ancho y la alto actual de la imagen. En caso contrario, se recibirá un aviso del sistema (error de Script).
Remedio
En las propiedades para la variable "RectangleHeight" y "RectangleWidth", se puede asignar un valor máximo dentro de la opción "Propiedades -> Rango -> Configuración". Este valor depende de la posición del objeto configurado.
- Error en el Script ....
Los Scripts leen el nombre del objeto (rectángulo). Si se quiere comprobar la configuración en la "simulación del PC Runtime", antes de arrancar el Runtime, compruebe si se tiene activada la opción en "Configuración del Runtime > General > Imagen > Cargar nombre".
- En el sistema de ayuda del WinCC (TIA Portal) se dispone de información adicional sobre el tema "Modelo de objetos VBS" (ver la siguiente imagen).

Figura 10
|
Tabla 01
Información adicional (no relevante para el ejemplo actual)
En el sistema de ayuda del WinCC V11 (TIA Portal) se dispone de todos los objetos relacionados con VBS. En las siguientes tablas se muestra un listado de las denominaciones de cada uno de ellos.
En el sistema de información, por ejemplo, indique el concepto de búsqueda "Rectangulo" en la opción de índice. Ahora aparece un resumen del objeto, a través del cual se puede llamar a información adicional.

Figura 11
Objetos básicos
|
Nº |
Objeto |
HMI Runtime Object |
| 1 |
Línea |
Line |
| 2 |
Línea poligonal |
Polyline |
| 3 |
Polígono |
Polygon |
| 4 |
Elipse |
Ellipse |
| 5 |
Círculo |
Circle |
| 6 |
Rectángulo |
Rectangle |
| 7 |
Campo de texto |
TextField |
| 8 |
Señalización gráfica |
GraphicView |
Tabla 02
Elementos
|
Nº |
Objeto |
HMI Runtime Object |
| 1 |
Campo de E/S |
IOField |
| 2 |
Botón |
Button |
| 3 |
Campo de E/S simbólico |
SymbolicIOField |
| 4 |
Campo de E/S gráfico |
GraphicIOField |
| 5 |
Campo de fecha/hora |
DateTimeField |
| 6 |
Columna |
Bar |
| 7 |
Interruptor |
Switch |
| 8 |
Librería de símbolos |
SymbolLibrary |
| 9 |
Barra de desplazamiento |
Slider |
| 10 |
Indicador |
Gauge |
| 11 |
Reloj |
Clock |
Tabla 03
Controles
| Nº |
Objeto |
HMI Runtime Object |
| 1 |
Visualización de avisos |
MessageView |
| 2 |
Señalización de curvas |
TrendView |
| 3 |
Visualización de usuario |
UserView |
| 4 |
Estado/Forzar |
StatusForce |
| 5 |
Visualización Sm@rtClient |
SmartClientView |
| 6 |
Visualización de recetas |
RecipeView |
| 7 |
Visualización de curvas f(x) |
f(x)TrendView |
| 8 |
Visualización del diagnóstico del sistema |
SystemDiagnosticsView |
| 9 |
Media Player |
MediaPlayer |
Tabla 04
Advertencia
Tenga en cuenta que no todos los objetos están disponibles para todos los equipo de servicio.
Entorno de creación Las imágenes y descargas de este FAQ se han creado con el WinCC V11.
Downloads
| Contenido del Download |
Download |
Documentación
El anexo contiene una lista de objetos contenidos de manera estándar en el WinCC Comfort o WinCC Advanced. Además de tiene un listado de todas las propiedades (atributos) de los objetos, así como, los accesos a las propiedades que pueden llamarse o a través de skript de "HmiRuntime.Screens" y "ScreenItems" . |

Object_Attributes ( 86 KB ) |
Código
El archivo comprimido contiene el proyecto ejemplo de WinCC descrito. |

TIA_Project_V11 ( 2314 KB ) |
|