Siemens SINUMERIK 840D sl Manual De Programación
Ocultar thumbs Ver también para SINUMERIK 840D sl:
Tabla de contenido

Enlaces rápidos

SINUMERIK 840D sl
SINUMERIK Integrate Run
MyScreens
Manual de programación
Válido para
software CNC versión 4.95
10/2020
A5E40869575E AE
Introducción
Consignas básicas de
seguridad
Funcionalidad
Primeros pasos
Conceptos básicos
Cuadros de diálogo
Variables
Comandos de programación
Elementos gráficos y lógicos
Campo de manejo "Custom"
Selección de diálogos
Ejemplos de máscaras de
ciclo
Configuración en
Sidescreen
Configuración en el
Display Manager
Listas de referencia
Sugerencias y trucos
Elementos animados
1
2
3
4
5
6
7
8
9
10
11
12
13
14
A
B
C
Tabla de contenido
loading

Resumen de contenidos para Siemens SINUMERIK 840D sl

  • Página 1 Introducción Consignas básicas de seguridad Funcionalidad Primeros pasos SINUMERIK 840D sl SINUMERIK Integrate Run Conceptos básicos MyScreens Cuadros de diálogo Manual de programación Variables Comandos de programación Elementos gráficos y lógicos Campo de manejo "Custom" Selección de diálogos Ejemplos de máscaras de ciclo Configuración en...
  • Página 2: Personal Cualificado

    Considere lo siguiente: ADVERTENCIA Los productos de Siemens sólo deberán usarse para los casos de aplicación previstos en el catálogo y la documentación técnica asociada. De usarse productos y componentes de terceros, éstos deberán haber sido recomendados u homologados por Siemens. El funcionamiento correcto y seguro de los productos exige que su transporte, almacenamiento, instalación, montaje, manejo y mantenimiento hayan sido realizados de forma...
  • Página 3: Tabla De Contenido

    Acerca de SINUMERIK......................9 Acerca de esta documentación..................... 9 Documentación en Internet....................10 1.3.1 Vista general de la documentación SINUMERIK 840D sl............10 1.3.2 Vista general de la documentación sobre componentes de manejo SINUMERIK ....11 Opinión sobre la documentación técnica ................11 Documentación de mySupport ...................
  • Página 4 Índice Notas sobre "easyscreen.ini"....................42 Indicaciones para nuevos usuarios sobre "Run MyScreens" ..........45 Sintaxis de configuración ampliada..................47 SmartOperation y manejo multitáctil.................. 49 Cuadros de diálogo ..........................51 Estructura y elementos de un diálogo................. 51 6.1.1 Definir diálogos........................51 6.1.2 Definir propiedades del diálogo ..................
  • Página 5 Índice 7.17 Variable CURVER ......................108 7.18 Variable ENTRY ........................ 109 7.19 Variable ERR........................110 7.20 Variable FILE_ERR......................110 7.21 Variable FOC ........................112 7.22 Variable S_ALEVEL ......................113 7.23 Variable S_CHAN......................113 7.24 Variable S_CONTROL ......................114 7.25 Variable S_LANG ......................114 7.26 Variable S_NCCODEREADONLY ..................
  • Página 6 Índice 8.3.13 Abandonar el diálogo (EXIT)..................... 149 8.3.14 Manipulación dinámica de listas de los campos de alternancia o de cuadros de lista ..151 8.3.15 Evaluate (EVAL) ....................... 153 8.3.16 Exit Loading Softkey (EXITLS) ................... 154 8.3.17 Function (FCT) ......................... 155 8.3.18 Generate Code (GC) ......................
  • Página 7 Índice SlEsGraphCustomWidget....................219 9.5.1 SlEsGraphCustomWidget....................219 9.5.2 Indicaciones sobre el rendimiento ..................221 9.5.3 Lectura y escritura de propiedades .................. 222 9.5.4 Propiedades........................222 9.5.5 Funciones ........................233 9.5.6 Señales..........................248 SlEsTouchButton ......................249 9.6.1 SlEsTouchButton ......................249 9.6.2 Lectura y escritura de propiedades .................. 251 9.6.3 Propiedades........................
  • Página 8 Índice Listas de referencia..........................307 Listas de los pulsadores de menú de inicio................ 307 A.1.1 Lista de los pulsadores de menú de inicio para torneado ........... 307 A.1.2 Lista de los pulsadores de menú de inicio para fresado ............. 308 Lista de los pulsadores de menú...
  • Página 9: Introducción

    SINUMERIK es un control de alta productividad apto por igual para todas las áreas de fabricación, desde la de piezas de muestras y utillaje, pasando por la de moldes, y llegando a la de grandes series. Para más información visite la página web de SINUMERIK (https://www.siemens.com/ sinumerik). Acerca de esta documentación Destinatarios La presente documentación está...
  • Página 10: Documentación En Internet

    Documentación en Internet 1.3.1 Vista general de la documentación SINUMERIK 840D sl Una amplia documentación sobre las funciones de SINUMERIK 840D sl a partir de la versión 4.8 SP4 se encuentra en Vista general de la documentación 840D sl (https:// support.industry.siemens.com/cs/ww/en/view/109766213).
  • Página 11: Vista General De La Documentación Sobre Componentes De Manejo Sinumerik

    Opinión sobre la documentación técnica En caso de preguntas, sugerencias o correcciones relacionadas con la documentación técnica publicada en el Siemens Industry Online Support, utilice el enlace "Enviar feedback" que figura al final del artículo. Documentación de mySupport El sistema basado en la web "Documentación de mySupport" permite recopilar de manera personalizada documentación basada en los contenidos de Siemens y adaptarla a la...
  • Página 12: Service And Support

    1.6 Service and Support El manual configurado puede exportarse a los formatos RTF, PDF o XML. Nota Los contenidos de Siemens que soportan la aplicación Documentación de mySupport se identifican por la presencia del enlace "Configurar". Service and Support Product Support Encontrará...
  • Página 13: Technical Support

    Siemens Support en cualquier lugar Con la galardonada aplicación "Siemens Industry Online Support" se puede acceder en cualquier momento y lugar a más de 300.000 documentos sobre productos de Siemens Industry. La aplicación le ofrece asistencia, entre otros, en los siguientes campos de aplicación: •...
  • Página 14: Información Importante Del Producto

    • OpenSSL (https://www.openssl.org) • Cryptsoft (https://www.cryptsoft.com) Cumplimiento del reglamento general de protección de datos Siemens respeta los principios básicos de la protección de datos, en especial los preceptos relativos a la minimización de datos (privacy by design). Para este producto, esto significa: El producto no procesa ni almacena datos personales, únicamente datos técnicos asociados a las...
  • Página 15: Consignas Básicas De Seguridad

    Información de seguridad Siemens ofrece productos y soluciones con funciones de seguridad industrial con el objetivo de hacer más seguro el funcionamiento de instalaciones, sistemas, máquinas y redes. SINUMERIK Integrate Run MyScreens...
  • Página 16 (https://www.siemens.com/industrialsecurity). Los productos y las soluciones de Siemens están sometidos a un desarrollo constante con el fin de hacerlos más seguros. Siemens recomienda expresamente realizar actualizaciones en cuanto estén disponibles y utilizar únicamente las últimas versiones de los productos. El uso de versiones de los productos anteriores o que ya no sean soportadas y la falta de aplicación de las...
  • Página 17: Funcionalidad

    Para aumentar el número de cuadros de diálogo se requiere una de las siguientes opciones de software: • SINUMERIK 828D/840D sl, SINUMERIK Integrate Run MyScreens (6FC5800-0AP64-0YB0) • SINUMERIK 840D sl, SINUMERIK Integrate Run MyHMI/3GL (6FC5800-0AP60-0YB0) • SINUMERIK 840D sl, SINUMERIK Integrate Run MyHMI/WinCC (6FC5800-0AP61-0YB0)
  • Página 18: Rutas De Almacenamiento

    UTF-8 en el editor que utiliza. Rutas de almacenamiento Al almacenar los ficheros de configuración, ficheros de ayuda, etc., tenga en cuenta la siguiente convención: [Directorio Siemens del sistema] Linux: /card/siemens/sinumerik/hmi Windows 7: C:\ProgramData\Siemens\MotionControl\siemens [Directorio OEM del sistema] Linux: /card/oem/sinumerik/hmi...
  • Página 19: Utilización

    Funcionalidad 3.1 Funciones de "Run MyScreens" Ficheros de imagen: [Directorio OEM del sistema]/Ico/ico[Resolución] Ejemplo: [Directorio OEM del sistema]/Ico/ico640 Ayuda en línea: [Directorio OEM del sistema]/hlp/[Idioma] Ejemplo: [Directorio OEM del sistema]/hlp/eng Utilización Se pueden realizar las siguientes funciones: • Visualizar y preparar diálogos de: –...
  • Página 20 Funcionalidad 3.1 Funciones de "Run MyScreens" • Ejecutar funciones: – Subprogramas – Funciones de ficheros – Servicios de PI • Considerar niveles de protección según los grupos de usuario SINUMERIK Integrate Run MyScreens Manual de programación, 10/2020, A5E40869575E AE...
  • Página 21: Primeros Pasos

    Primeros pasos Introducción Por medio del siguiente ejemplo se explican los pasos necesarios para insertar diálogos propios en la interfaz de usuario de SINUMERIK Operate mediante Run MySreens. Entre otras cosas aprenderá a crear diálogos propios, a insertar accesos a la ayuda y pantallas de ayuda contextuales, a definir pulsadores de menú...
  • Página 22 Primeros pasos 4.2 Ejemplo de proyecto Figura 4-2 Ejes geométricos con ayuda contextual Figura 4-3 Campos de alternancia: lista y cuadro SINUMERIK Integrate Run MyScreens Manual de programación, 10/2020, A5E40869575E AE...
  • Página 23 Primeros pasos 4.2 Ejemplo de proyecto Figura 4-4 Campo de entrada/salida con selección de unidades integrada Diálogo 2 En el segundo cuadro de diálogo se muestran los valores MKS y WKS. Además, el cuadro de diálogo contiene ejemplos de un indicador de progreso con y sin cambio de color. Figura 4-5 Barras de progreso con (derecha) y sin (izquierda) cambio de color SINUMERIK Integrate Run MyScreens...
  • Página 24: Navegación

    Primeros pasos 4.2 Ejemplo de proyecto Navegación El primer diálogo se llama con el pulsador de menú de inicio "START" del campo de manejo Diagnóstico. Se utiliza el pulsador de menú horizontal SK7. Figura 4-6 Pulsador de menú de inicio „START“ del campo de manejo Máquina, modo de operación AUTO Desde el primer diálogo se puede llamar al segundo con el pulsador de menú...
  • Página 25: Creación Del Fichero De Configuración (Ejemplo)

    Primeros pasos 4.2 Ejemplo de proyecto 4.2.2 Creación del fichero de configuración (ejemplo) Contenido del fichero de configuración Cree el fichero de configuración "diag.com" para los dos diálogos en un editor compatible con UTF8. ; Identificador de arranque del pulsador de menú de inicio //S(START) ;...
  • Página 26 Primeros pasos 4.2 Ejemplo de proyecto ; Definición de pulsadores de menú en el diálogo HS1=("") HS2=("") HS3=("") HS4=("") HS5=("") HS6=("") HS7=("") HS8=("") VS1=("") VS2=("") VS3=("") VS4=("") VS5=("") VS6=("") VS7=("next Mask") VS8=("EXIT") ; Definición de LOAD Block LOAD ; Lectura de valor con RNP ACHS_NAM1 = RNP("$MC_AXCONF_GEOAX_NAME_TAB[0]") ACHS_NAM2 = RNP("$MC_AXCONF_GEOAX_NAME_TAB[1]") ACHS_NAM3 = RNP("$MC_AXCONF_GEOAX_NAME_TAB[2]")
  • Página 27 Primeros pasos 4.2 Ejemplo de proyecto ; Abandono del diálogo EXIT ; Identificador de fin del método Press END_PRESS ; Identificador de fin del diálogo 1 //END ; Definición de diálogo 2 con título y pantalla //M(MASK2/"Position WCS MCS"/"mz961_01.png") ; Definición de las variables DEF TEXT1 = (I///,"WCS"/WR0,fs2///230,30,120/,,1) DEF VAR1 = (R3///,"1.
  • Página 28: Almacenamiento Del Fichero De Configuración En El Directorio Oem (Ejemplo)

    Primeros pasos 4.2 Ejemplo de proyecto ; Método Load LOAD H_SEPARATOR(230,1,7,1) END_LOAD ; Método Change CHANGE(VAR5) ; Función PI_START PI_START("/NC,201,_N_SETUFR") ; Identificador de fin del método Change END_CHANGE ; Método Press PRESS(RECALL) ; Retorno a máscara invocante LM("MASK1") ; Identificador de fin del método Press END_PRESS ;...
  • Página 29: Creación De La Ayuda En Línea (Ejemplo)

    Primeros pasos 4.2 Ejemplo de proyecto 4.2.4 Creación de la ayuda en línea (ejemplo) Cree el fichero HTML "sinumerik_md_1.html". El ejemplo debajo de "Contenido de la ayuda en línea" muestra el acceso a la ayuda contextual a través de name="20060[0]" y name="20060[1]".
  • Página 30 Primeros pasos 4.2 Ejemplo de proyecto Contenido de la ayuda en línea El ejemplo no está comentado. SINUMERIK Integrate Run MyScreens Manual de programación, 10/2020, A5E40869575E AE...
  • Página 31 Primeros pasos 4.2 Ejemplo de proyecto <html><head><meta http-equiv="Content-Type" content="text/html; charset="UTF-8"/><title></ title></head> <body> <table border="1" cellspacing="0" cellpadding="2" width="100%"> <tr> <td><a name="20060[0]"><b>20060[0]</b></a></td> <td colspan="3">AXCONF_GEOAX_NAME_TAB</td> <center> <img src="../picture/bitmap3.png"> </center> <td>-</td> <td>-</td> </tr> <tr> <td>-</td> <td colspan="3">Geometry axis name in channel</td> <td>DWORD</td> <td>POWER ON</td> </tr>...
  • Página 32: Integración De La Ayuda En Línea Y Almacenamiento De Los Ficheros En El Directorio Oem (Ejemplo)

    Primeros pasos 4.2 Ejemplo de proyecto <td colspan="6">This MD is used to enter the names of the geometry axes separately for each channel.<br /> <tr> <td>-</td> <td colspan="5">&nbsp;</td> </tr> <tr> <td width="16*">System</td> <td width="16*">Dimension</td> <td width="16*">Default value</td> <td width="16*">Minimum value</td> <td width="16*">Maximum value</td>...
  • Página 33: Copia De "Easyscreen.ini" Al Directorio Oem (Ejemplo)

    Configuración de la ayuda en línea (Página 74). 4.2.6 Copia de "easyscreen.ini" al directorio OEM (ejemplo) Ruta de almacenamiento Copie el fichero "easyscreen.ini" desde el directorio [Directorio Siemens del sistema]/cfg en el directorio [Directorio OEM del sistema]/cfg. 4.2.7 Declaración del fichero COM en "easyscreen.ini" (ejemplo) Adaptación en "easyscreen.ini"...
  • Página 34: Comprobación De Pantallas De Ayuda Contextuales Y Ayuda En Línea

    Primeros pasos 4.2 Ejemplo de proyecto Comprobación de pantallas de ayuda contextuales y ayuda en línea Compruebe las pantallas de ayuda contextuales y la ayuda en línea. En caso de que se produzcan errores, compruebe las rutas de almacenamiento. SINUMERIK Integrate Run MyScreens Manual de programación, 10/2020, A5E40869575E AE...
  • Página 35: Conceptos Básicos

    Conceptos básicos Estructura del fichero de configuración Introducción La descripción de las nuevas interfaces de usuario se guarda en ficheros de configuración. Estos ficheros se interpretan automáticamente y su resultado se representa en pantalla. Los ficheros de configuración no están disponibles en el estado de entrega, por lo que primero deben crearse. Para generar los ficheros de configuración e idioma se utiliza un editor compatible con UTF-8 (p.
  • Página 36: Almacenamiento De Los Ficheros De Configuración

    Conceptos básicos 5.1 Estructura del fichero de configuración Nota Secuencia Es imprescindible respetar la secuencia indicada en el fichero de configuración. Ejemplo: //S (START) ; Definición de los pulsadores de menú de inicio (opcio- nal) ..//END //M (..) ; Definición del diálogo DEF ..
  • Página 37: Estructura Del Árbol De Manejo

    Conceptos básicos 5.2 Estructura del árbol de manejo Estructura del árbol de manejo Principio del árbol de manejo Varios diálogos vinculados entre sí conforman un árbol de manejo. Se considera que dos diálogos están vinculados cuando se puede pasar directamente de uno a otro. Los nuevos pulsadores de menú...
  • Página 38: Definición Y Funciones Para Los Pulsadores De Menú De Inicio

    Conceptos básicos 5.3 Definición y funciones para los pulsadores de menú de inicio Con la tecla <RECALL> es posible salir de las interfaces de usuario recién creadas siempre que no se haya configurado otra función para esta tecla. Nota Abrir diálogos en el programa de usuario del PLC Además de los pulsadores de menú, también es posible seleccionar diálogos desde el PLC: para el intercambio de señales PLC →...
  • Página 39: Plantilla Para La Configuración Del Pulsador De Menú De Inicio

    Encontrará una descripción detallada de todas las posiciones admisibles para los pulsadores de menú de inicio y su configuración en el fichero "easyscreen.ini", en el siguiente directorio: [Directorio Siemens del sistema]/cfg Este fichero sirve de plantilla para la propia configuración del pulsador de menú de inicio.
  • Página 40 Conceptos básicos 5.3 Definición y funciones para los pulsadores de menú de inicio • Con la función "EXIT" se puede salir de la interfaz de usuario recién diseñada y regresar a la aplicación estándar. • Con la función "EXITLS" se puede salir de la interfaz actual de usuario y cargar un menú de pulsadores definido.
  • Página 41: Diferentes Configuraciones De Los Pulsadores De Menú De Inicio

    • [Directorio OEM del sistema]/proj • [Directorio de addon del sistema]/proj • [Directorio Siemens del sistema]/proj Las configuraciones contenidas para los pulsadores de menú de inicio se agrupan entonces en una sola configuración, es decir, que se comparan los distintos pulsadores de menú. Si hay dos o más configuraciones para un pulsador de menú, siempre se toma la mejor en la versión de...
  • Página 42: Notas Sobre "Easyscreen.ini

    VAR1 = VAR2 + 1 ; Notas sobre "easyscreen.ini" A partir de SINUMERIK Operate V4.7, "easycreen.ini" se amplía con las entradas descritas en este capítulo. El fichero "easyscreen.ini" se encuentra en el directorio [Directorio Siemens del sistema]/cfg. Posición inicial de la pantalla de ayuda Entrada en "easyscreen.ini":...
  • Página 43 Conceptos básicos 5.5 Notas sobre "easyscreen.ini" Nota: La posición inicial de las pantallas de ayuda es, independientemente de la resolución, la posición de píxel configurada (estándar=true). Comportamiento de extensión, altura y distancia estándar de línea Entrada de easyscreen.ini: [GENERAL] SymmetricalAspectRatio=false DefaultLineHeight=18 DefaultLineSpacing=3 Notas:...
  • Página 44 Conceptos básicos 5.5 Notas sobre "easyscreen.ini" Ciclos en la pantalla básica de la máquina • Ingreso en el modo de operación JOG de la máquina a través de HS6 con la posibilidad de generar una llamada de ciclos en la pantalla básica de la máquina con la selección [JOBSHOPINTEGRATION]: [JOBSHOPINTEGRATION] Integration = true...
  • Página 45: Indicaciones Para Nuevos Usuarios Sobre "Run Myscreens

    Conceptos básicos 5.6 Indicaciones para nuevos usuarios sobre "Run MyScreens" La posición de la máscara puede definirse de la forma siguiente: • La posición de la máscara puede especificarse en "Píxeles referidos a 640x480". Ejemplo: //M(MyMask/"MyCaption"/"\\myhelp.png"/0,219,335,174) • La posición de la máscara puede vincularse a la posición en función de la resolución de un FormPanel procedente de un diseño de pantalla estándar de Operate, p.
  • Página 46: Adaptación Del Fichero De Configuración

    Para aumentar el número de cuadros de diálogo se requiere una de las siguientes opciones de software: • SINUMERIK 828D/840D sl, SINUMERIK Integrate Run MyScreens (6FC5800-0AP64-0YB0) • SINUMERIK 840D sl, SINUMERIK Integrate Run MyScreens + Run MyHMI (6FC5800-0AP65-0YB0) • SINUMERIK 840D sl, SINUMERIK Integrate Run MyHMI/3GL (6FC5800-0AP60-0YB0) •...
  • Página 47: Sintaxis De Configuración Ampliada

    Conceptos básicos 5.7 Sintaxis de configuración ampliada Sintaxis de configuración ampliada A partir de SINUMERIK Operate V4.7 está disponible una sintaxis simplificada para definir máscaras, variables, pulsadores de menú y columnas de tablas. Con esta sintaxis alternativa mejora la legibilidad y se facilita el mantenimiento. Las propiedades y atributos pueden especificarse en el orden que se desee y las entradas vacías suprimirse.
  • Página 48 Conceptos básicos 5.7 Sintaxis de configuración ampliada Ejemplos: DEF MyVar5={TYP="R2", ST="MyVar5", VAL=123.4567, OHLP="myhelp.html", MIN=100.1, MAX=200.9} DEF MyVar2={TYP="I", TGL="*1,2,3", VAL=1} DEF MyVar3={TYP="R2", TGL="*0=""Aus"", 1=$80000", VAL=1} DEF MyVar4={TYP="R2", TGL="*MyArray",VAL=1} DEF MyVar1={TYP="R2", TGL="%grid99", X = 0, W=300, H=200} DEF MyVar6={TYP="R2", TGL="+$80000", VAR="$R[10]", ST="Textoffset"} Sintaxis ampliada para la definición de pulsadores de menú...
  • Página 49: Smartoperation Y Manejo Multitáctil

    Conceptos básicos 5.8 SmartOperation y manejo multitáctil SmartOperation y manejo multitáctil Para la adaptación específica a SmartOperation y para el manejo multitáctil existen las siguientes posibilidades de ajuste: • Adaptación automática de la altura y anchura de los campos al denominado tamaño mínimo de manejo de los campos y a la distancia entre líneas (atributo de máscara MA).
  • Página 50 Conceptos básicos 5.8 SmartOperation y manejo multitáctil SINUMERIK Integrate Run MyScreens Manual de programación, 10/2020, A5E40869575E AE...
  • Página 51: Cuadros De Diálogo

    Cuadros de diálogo Estructura y elementos de un diálogo 6.1.1 Definir diálogos Definición Un diálogo es una parte de una interfaz de usuario que consta de línea de título, elementos de diálogo y/o gráfico, línea de salida para mensajes, así como de 8 pulsadores de menú horizontales y 8 verticales.
  • Página 52 Cuadros de diálogo 6.1 Estructura y elementos de un diálogo • Posición gráfico • Atributos ① Indicación del estado de la máquina ("cabecera") ② Elemento de diálogo ③ 8 pulsadores de menú verticales ④ 8 pulsadores de menú horizontales ⑤ Emisión de avisos de diagnóstico ⑥...
  • Página 53: Definir Propiedades Del Diálogo

    Cuadros de diálogo 6.1 Estructura y elementos de un diálogo Dentro del bloque descriptivo del diálogo se definen en primer lugar diferentes variables que son visibles en el diálogo como elementos de diálogo y los pulsadores de menú horizontales y verticales.
  • Página 54: Programación

    Cuadros de diálogo 6.1 Estructura y elementos de un diálogo Programación Sintaxis: //M(Identificador/[Título]/[Gráficos]/[Dimensión]/[Variable de sistema o de usuario]/[Posición gráfico]/[Atribu‐ tos]/Lista de ficheros de idioma específicos de máscara) Consulte también el capítulo Sintaxis de configuración ampliada (Página 47). Descripción: Definir diálogos SINUMERIK Integrate Run MyScreens Manual de programación, 10/2020, A5E40869575E AE...
  • Página 55 Cuadros de diálogo 6.1 Estructura y elementos de un diálogo Parámetro: Identificador Nombre del diálogo Título Título del diálogo como texto o llamada a un texto (p. ej. $85011) de un fichero de texto dependiente del idioma Gráficos Fichero gráfico con ruta entre comillas dobles Dimensión Posición y tamaño del diálogo en píxeles (distancia desde la izquierda, dis‐...
  • Página 56 Cuadros de diálogo 6.1 Estructura y elementos de un diálogo El desplazamiento libre por la máscara (SlGfwScrollArea), cuando se desea mostrar el teclado virtual en modo multitáctil, puede modificarse del modo siguiente: • En la línea de definición de máscara con el atributo de máscara "KM" (KeyboardMode) Ejemplo: //M(MyMTMask/"MultiTouch Mask"/////KM1)
  • Página 57 Cuadros de diálogo 6.1 Estructura y elementos de un diálogo //M(MyMTMask/"MultiTouch Mask"/////MA1) Si se ajusta el atributo de máscara MA explícitamente en la configuración de máscara, esto tiene prioridad por delante del ajuste global de "easys‐ creen.ini". (Ver también el capítulo SmartOperation y manejo multitáctil (Página 49)) No se realiza la adaptación Solo se adaptan los campos para los que no se ha configurado la distancia desde arriba o la altura y anchura de campo, es decir, los campos que ocupan...
  • Página 58 Cuadros de diálogo 6.1 Estructura y elementos de un diálogo La altura de campo y la distancia entre campos se amplían como hasta ahora (por compatibilidad: predeterminado) La altura de campo y la distancia entre campos se ajustan en proporción a la fuente (se ajusta automáticamente el atributo de máscara PA=1) Igual que FA1, pero además la coordenada X y el ancho de campo se amplían en proporción a la fuente.
  • Página 59: Acceso A Las Propiedades Del Diálogo

    Cuadros de diálogo 6.1 Estructura y elementos de un diálogo Lista de ficheros de idioma es‐ Separados por comas pecíficos de máscara Acceso a las propiedades del diálogo Dentro de los métodos (p. ej. PRESS Block) puede tener lugar un acceso de lectura y de escritura a las siguientes propiedades del diálogo: •...
  • Página 60: Consulte También

    Cuadros de diálogo 6.1 Estructura y elementos de un diálogo PRESS(HS7) LM("Mask2") END_PRESS //END //M(Mask2/"Example 2 : showing graphic"/"example.png") HS1=("new%nHeader") HS2=("") HS3=("") HS4=("") HS5=("") HS6=("") HS7=("") HS8=("") VS1=("") VS2=("") VS3=("") VS4=("") VS5=("") VS6=("") VS7=("") VS8=("") PRESS(HS1) Hd= "new Header" END_PRESS //END Consulte también Ejemplo de programación para el campo "Custom"...
  • Página 61: Propiedades De Variables

    Cuadros de diálogo 6.1 Estructura y elementos de un diálogo Propiedades de variables Todas las variables son válidas únicamente en el diálogo activo. Al definir una variable se le asignan propiedades. Dentro de los métodos (p. ej. de un método PRESS) se puede acceder a los valores de las propiedades del diálogo.
  • Página 62: Definir Diálogos Con Varias Columnas

    Cuadros de diálogo 6.1 Estructura y elementos de un diálogo /[Posición campo de entrada/salida (Left, Top, Width, Height)] /[Colores] /[Ayuda en línea] (Página 74) Ver también Parámetros de variables (Página 93) 6.1.4 Definir diálogos con varias columnas Vista general En un diálogo pueden representarse también diversas variables en una fila. En este caso todas las variables se definen en el fichero de configuración dentro de una línea de definición.
  • Página 63: Cuadros De Diálogo De Contraseña

    Cuadros de diálogo 6.1 Estructura y elementos de un diálogo 6.1.5 Cuadros de diálogo de contraseña Uso de cuadros de diálogo de contraseña estándar Los siguientes cuadros de diálogo de contraseña predefinidos pueden incorporarse en la configuración de máscara: • Definir contraseña Figura 6-5 Cuadro de diálogo de definición de contraseña •...
  • Página 64 Cuadros de diálogo 6.1 Estructura y elementos de un diálogo Figura 6-7 Cuadro de diálogo de borrado de contraseña Nota Con estos cuadros de diálogo se proporciona la funcionalidad de contraseña. Estos cuadros de diálogo no coinciden con los de SINUMERIK Operate. El cuadro de diálogo puede abrirse a través de la función Load Softkey (LS) o la función Load Mask (LM): 1.
  • Página 65: Utilizar Imágenes/Gráficos

    Cuadros de diálogo 6.2 Definir menús de pulsadores 6.1.6 Utilizar imágenes/gráficos Uso de gráficos Se tienen que distinguir: • Imágenes/gráficos en el área gráfica • Pantallas de ayuda que, por ejemplo, ilustran variables individuales y que se suceden en el área gráfica.
  • Página 66: Descripción

    Cuadros de diálogo 6.2 Definir menús de pulsadores Para empezar, la descripción de un menú de pulsadores (bloque descriptivo) está configurada como sigue: Bloque descriptivo Comentario Referencia cruzada a capítulos ;Identificador de arranque del menú de //S... pulsadores ;Definición de pulsadores de menú HSx=...
  • Página 67: Asignación De Los Niveles De Acceso

    Cuadros de diálogo 6.2 Definir menús de pulsadores Texto Indicar texto Nombre del fichero de "\\my_pic.png" imagen o a través de un fichero de texto separado $85199, p. ej., con el siguiente texto en el fichero de texto (dependiente del idioma): 85100 0 0 "\\my_pic.png". El tamaño de la imagen que se visualizará...
  • Página 68: Modificar Las Propiedades De Pulsadores De Menú En El Tiempo De Ejecución

    Cuadros de diálogo 6.2 Definir menús de pulsadores HS1=("NUEVO", ac6, se2) ; Definir el pulsador de menú HS1 y asignar el rótulo "NUEVO", el nivel de protección 6 y el estado "deshabilitado" HS2=("\\imagen1.png") ; Asignar un gráfico al pulsador de menú HS3=("Salir") HS4=(["Confirmar","\\sk_ok.png"],PA0,TP1) ;...
  • Página 69 Cuadros de diálogo 6.2 Definir menús de pulsadores Programación Sintaxis: SK.st = "Texto" ;Pulsador de menú con rotulación SK.ac = nivel de acceso ;Pulsador de menú con nivel de pro‐ tección SK.se = estado ;Pulsador de menú con estado SK.pa = "Ajuste de la imagen del pulsador de menú"...
  • Página 70 Cuadros de diálogo 6.2 Definir menús de pulsadores Ejemplo Figura 6-8 Ejemplo 3: Gráfico y pulsadores de menú //S(Start) HS7=("Example", ac7, se1) PRESS(HS7) LM("Maske3") END_PRESS //END //M(Maske3/"Example 2: showing graphic"/"example.png") HS1=("") HS2=("") HS3=("") HS4=("") HS5=("") HS6=("") HS7=("") HS8=("") VS1=("") VS2=("") SINUMERIK Integrate Run MyScreens Manual de programación, 10/2020, A5E40869575E AE...
  • Página 71: Texto Dependiente Del Idioma

    Cuadros de diálogo 6.2 Definir menús de pulsadores VS3=("") VS4=("\\sp_ok.png",,SE1) VS5=(["\\sp_ok_small.png","OEM Text"],,SE1) VS6=("") VS7=(SOFTKEY_OK,,SE1) VS8=(SOFTKEY_CANCEL,,SE1) PRESS(VS4) EXIT END_PRESS PRESS(VS5) EXIT END_PRESS PRESS(VS7) EXIT END_PRESS PRESS(VS8) EXIT END_PRESS //END 6.2.2 Texto dependiente del idioma Vista general Los textos dependientes del idioma se utilizan para: •...
  • Página 72: Ficheros De Idioma Específicos De Máscara

    Textos dependientes del idioma para los ciclos Siemens estándar almc.txt Textos dependientes del idioma para los ciclos de medida de Siemens Los ficheros de texto utilizados en tiempo de ejecución del programa se indican en el fichero "easyscreen.ini": [LANGUAGEFILES] LngFile03 = user.txt...
  • Página 73: Formato De Los Ficheros De Texto

    Cuadros de diálogo 6.2 Definir menús de pulsadores Si no hay ficheros de idioma definidos en la máscara, solo se buscará en los ficheros de idioma indicados en "easyscreen.ini". Nota Si un fichero de idioma no existe en el idioma seleccionado actualmente, se utilizará el fichero de idioma inglés (de manera predeterminada).
  • Página 74: Configuración De La Ayuda En Línea

    Cuadros de diálogo 6.3 Configuración de la ayuda en línea Ejemplos de textos dependientes del idioma: 85000 0 0 "Plano de retirada" 85001 0 0 "Profundidad de taladrado" 85002 0 0 "Paso de rosca" 85003 0 0 "Radio de la caja" Configuración de la ayuda en línea 6.3.1 Resumen...
  • Página 75: Programar Ficheros De Ayuda Online

    Cuadros de diálogo 6.3 Configuración de la ayuda en línea Programar ficheros de ayuda online Para más opciones de diseño de la ayuda online, puede utilizar el "Paquete de programación SINUMERIK HMI sl". Con este paquete de programación es posible desarrollar aplicaciones de lenguaje de alto nivel en el lenguaje de programación C++ para SINUMERIK Operate en la NCU 7x0.
  • Página 76 Cuadros de diálogo 6.3 Configuración de la ayuda en línea Descripción Comentarios Definition list Son compatibles los atributos de secuencia estándar Definition term Son compatibles los atributos de secuencia estándar Emphasized Mismo efecto que el tag i font Font size, family, color Atributos compatibles: size, face, and color (#RRGGBB) Level 1 heading Son compatibles los atributos de secuencia estándar...
  • Página 77: Atributos De Secuencia

    Cuadros de diálogo 6.3 Configuración de la ayuda en línea Descripción Comentarios Unordered list Son compatibles los atributos estándar para listas Variable Mismo efecto que el tag tt Atributos de secuencia Los siguientes atributos son compatibles con los tags div, dl, dt, h1, h2, h3, h4, h5, h6, p: •...
  • Página 78: Selectores Css Compatibles

    Cuadros de diálogo 6.3 Configuración de la ayuda en línea Propiedad Valores Descripción border-color <color> Color de borde para tablas de texto border-style none | dotted | dashed | dot- Estilo de borde para tablas de texto dash | dot-dot-dash | solid | double | groove | ridge | inset | outset background...
  • Página 79: Ejemplo De Libro De Ayuda

    Cuadros de diálogo 6.3 Configuración de la ayuda en línea Cantidad Significado II-INDEX_ENTRY Término de búsqueda que debe visualizarse Atributos: Designa el documento HTML al que se salta para esa entra‐ da de término de búsqueda. titel Título del término de búsqueda que se indica en el índice alfabético.
  • Página 80: Incorporar Ayuda Online En Sinumerik Operate

    Cuadros de diálogo 6.3 Configuración de la ayuda en línea El índice alfabético puede tener los tres formatos siguientes: 1. Entrada individual: <INDEX_ENTRY ...title="index"/> 2. Dos entradas de dos niveles en las que cada título tiene una entrada principal y una subentrada.
  • Página 81 Cuadros de diálogo 6.3 Configuración de la ayuda en línea Canti‐ Significado III-Technology Indica la tecnología para la que es válido el libro de ayuda. En este caso "All" se aplica a todas las tecnologías. Si el libro de ayuda es válido para varias tecnologías, estas últi‐ mas se indican separadas por una coma.
  • Página 82: Guardar Ficheros De Ayuda

    En la indicación del índice de contenido y alfabético de un libro de ayuda, los ficheros de ayuda se guardan en formato binario (slhlp_<Hilfe-Buch_*.hmi) en el directorio /siemens/ sinumerik/sys_cache/hmi/hlp para que el proceso sea más rápido. Si modifica el libro de ayuda, deberá...
  • Página 83: Incorporar Ayudas En Pdf

    Cuadros de diálogo 6.3 Configuración de la ayuda en línea Incorporar ayudas en PDF En la configuración de diálogos o de índices de contenidos o alfabéticos, los ficheros con extensión ".pdf" se incorporan de la misma manera que aquellos que tienen extensión ".html": <ENTRY ref="myFile.pdf"...
  • Página 84 Cuadros de diálogo 6.3 Configuración de la ayuda en línea SINUMERIK Integrate Run MyScreens Manual de programación, 10/2020, A5E40869575E AE...
  • Página 85: Variables

    Variables Definir variables Valor de las variables La propiedad más importante de una variable es su valor. El valor de la variable se puede asignar a través de: • El ajuste estándar en la definición de las variables • La asignación de una variable de sistema o de usuario •...
  • Página 86: Ejemplos De Aplicación

    Variables 7.2 Ejemplos de aplicación Ejemplos de aplicación Variables auxiliares Las variables auxiliares son variables internas de cálculo. Las variables de cálculo se definen como variables, pero no poseen ninguna propiedad excepto el valor y el estado de variable, es decir, las variables auxiliares no son visibles en el diálogo.
  • Página 87: Acceso Indirecto A Una Variable De Sistema

    Variables 7.3 Ejemplo 1: Asignar tipo de variable, textos, pantalla de ayuda, colores y tooltips Acceso indirecto a una variable de sistema Se puede acceder a una variable de sistema también de manera indirecta, es decir, en función de otra variable: PRESS(HS1) ACHSE=ACHSE+1 WEG.VAR="$AA_DTBW["<<ACHSE<<"]"...
  • Página 88: Consulte También

    Variables 7.4 Ejemplo 2: Asignar tipo de variable, valores límite, atributos, posición texto breve Ejemplo 1b En el siguiente ejemplo se define una variable para la que pueden establecerse las propiedades de tipo de variable, valor por defecto, textos, sugerencia de herramienta, modo de entrada y posición de texto breve.
  • Página 89: Ejemplo 3: Asignar Tipo De Variable, Valor Por Defecto, Variable De Sistema O De Usuario, Posición Campo De Entrada/Salida

    Variables 7.6 Ejemplo 4: campo de alternancia y campo de lista Ejemplo 3: Asignar tipo de variable, valor por defecto, variable de sistema o de usuario, posición campo de entrada/salida Ejemplo 3 En el siguiente ejemplo se define una variable para la que pueden establecerse las propiedades de tipo de variable, valor por defecto, variable de sistema o de usuario y posición.
  • Página 90: Ejemplo 5: Visualización De Imágenes

    Variables 7.8 Ejemplo 6: barra de progreso Ejemplo 4b El campo de lista corresponde a la configuración de un campo de alternancia pero debe establecerse además el tipo de visualización para el campo de lista (atributo de variable DT = 4). DEF VAR_LISTBOX_Text = (S/*$80000,$80001,$80002,$80003,$80004/$80001//DT4////200,,340,60) Tipo de variable: STRING...
  • Página 91 Variables 7.8 Ejemplo 6: barra de progreso En principio hay dos tipos de barras de progreso: 1. Barra de progreso con hasta dos cambios de color para indicar, p. ej., la temperatura o la carga (ver el ejemplo 6a) 2. Barra de progreso para indicar el progreso (sin cambio de color) en estilo de Operate (ver ejemplo 6b) Ejemplo 6a Barra de progreso con dos cambios de color:...
  • Página 92 Variables 7.8 Ejemplo 6: barra de progreso Con este ajuste ya se muestra, en función del valor actual de la variable PROGGY0, una barra de progreso con color de primer plano 3 (verde oscuro) y color de fondo 4 (gris claro). También pueden definirse uno o dos valores de señal SVAL1 y SVAL2 (parámetro de valor límite), por ejemplo, SVAL1: 50 y SVAL2: 100).
  • Página 93: Ejemplo 7: Modo De Entrada De Contraseña (Asteriscos)

    Variables 7.10 Parámetros de variables Ejemplo 7: modo de entrada de contraseña (asteriscos) Ejemplo 7 Para implementar un campo para introducir p. ej. la contraseña ocultando los caracteres, el modo de visualización DT debe ajustarse a 5. En lugar de los caracteres introducidos se muestran asteriscos.
  • Página 94 Variables 7.10 Parámetros de variables Parámetros Descripción Valores límite (Página 88) Valor límite MÍN, valor límite MÁX Ajuste predeterminado: vacío Los valores límite se separan mediante comas. Los valores límite se pueden introducir para los tipos I, C y R en formato decimal o como carácter en la forma "A", "F". Para que se visualice la barra de progreso con cambio de color (atributo de variable DT = 1) también pueden configurarse dos colores de señal SC1 y SC2 (Signal color), que se utiliza‐...
  • Página 95 Variables 7.10 Parámetros de variables Parámetros Descripción Atributos (Página 88) Los atributos influyen en las siguientes propiedades: • Modo de visualización • Opción de visualización • Frecuencia de actualización • Símbolo de alternancia • Sugerencia de herramienta • Modo de entrada •...
  • Página 96 Variables 7.10 Parámetros de variables Parámetros Descripción Si el atributo TG se establece como 1, aparece en la sugerencia de la herramienta del campo de entrada también el símbolo de alternancia. Ejemplo: DEF OFFS = (R//123.456/,,,,"My ToolTip"/TG1) Sugerencia de El texto de la sugerencia de la herramienta también puede modificarse herramienta en tiempo de ejecución con la propiedad de la variable "TT".
  • Página 97 Variables 7.10 Parámetros de variables Parámetros Descripción Si hay varios atributos, se anotan separados mediante comas (ver tam‐ bién AUTOHOTSPOT). Llamada del mé‐ CB0: El método CHANGE se inicia al mostrarse la máscara si la variable todo CHANGE tiene un valor válido en ese momento (p. ej. mediante valor predeter‐ minado o variable de CN/PLC).
  • Página 98 Variables 7.10 Parámetros de variables Parámetros Descripción Colores (Página 87) Color de primer plano y de fondo para campos de entrada/salida, textos breves, textos de gráficos, textos de unidad y colores de señal para barra de progreso: los colores se separan mediante comas. Para la indicación del color, ver capítulo AUTOHOTSPOT.
  • Página 99: Variable: Modificación De Las Propiedades

    Variables 7.10 Parámetros de variables Variable: modificación de las propiedades A las variables se les asigna un nuevo valor mediante la notación Identificador.Propiedad = Valor al efectuar una modificación. La expresión situada a la derecha del signo igual se evalúa y se asigna a la variable o a la propiedad de la variable. Identificador.ac = nivel de acceso (ac: access level) Identificador.al = ajuste de texto...
  • Página 100: Detalles Sobre El Tipo De Variable

    Variables 7.11 Detalles sobre el tipo de variable 7.11 Detalles sobre el tipo de variable Tipo de variable INTEGER Para el tipo "INTEGER", se puede disponer de las siguientes ampliaciones para especificar la representación en el campo de entrada/salida y el uso de memoria: 2.º...
  • Página 101: Tipo De Variable Variant

    Variables 7.11 Detalles sobre el tipo de variable Definiciones válidas de tipo para INTEGER: Variable entera de 32 bits en representación hexadecimal IHDU Variable entera de 32 bits en representación hexadecimal IHWU Variable entera de 16 bits en representación hexadecimal IHBU Variable entera de 8 bits en representación hexadecimal Tipo de variable VARIANT...
  • Página 102: Detalles Sobre El Campo De Alternancia

    Variables 7.12 Detalles sobre el campo de alternancia • En el tipo REAL solo puede modificarse la cantidad de posiciones decimales. No está permitido modificar el tipo y, en caso de hacerse, aparece un aviso de error en el fichero "easyscreen_log.txt". Ejemplo: Var1.tipo = "IBW"...
  • Página 103: Imágenes En Función Del Campo De Alternancia

    Variables 7.12 Detalles sobre el campo de alternancia Programación Sintaxis: DEF VAR1=(IB/+ $85000/15////"DB90.DBB5") o bien DEF VAR_TGL = (S/* "Hello", "Run", "MyScreens"/"Run") Descripción: Al visualizar el diálogo se emite el contenido del número de texto $85015 en el campo de entrada/salida. En las variables de sistema DB90.DBB5 se introduce el valor por defecto 15.
  • Página 104: Detalles Sobre Los Valores Por Defecto

    Variables 7.13 Detalles sobre los valores por defecto 7.13 Detalles sobre los valores por defecto Vista general En función de si el campo de una variable (campo de entrada/salida o campo de alternancia) tiene asignado un valor por defecto, una variable de usuario o de sistema o ambos, se obtienen diferentes estados para las variables (no calculado: la selección sólo es posible una vez que la variable tenga asignado un valor válido).
  • Página 105: Detalles Sobre La Posición Del Texto Breve, Posición Del Campo De Entrada/Salida

    Variables 7.14 Detalles sobre la posición del texto breve, posición del campo de entrada/salida 7.14 Detalles sobre la posición del texto breve, posición del campo de entrada/salida Vista general El texto breve y de gráficos, así como el campo de entrada/salida y el texto de unidad forman una unidad.
  • Página 106: Uso De Strings

    Variables 7.15 Uso de strings En este caso (la distancia entre el campo de entrada/salida y el campo de unidades o el ancho del campo de unidades están configurados) deben tenerse en cuenta los siguientes aspectos: • El ancho configurado del campo de entrada/salida no contiene el ancho fijo del campo de unidades (siempre 50 píxeles).
  • Página 107 Variables 7.15 Uso de strings Reglas Al emplear variables tipo string deben observarse las siguientes reglas: • Los vínculos de caracteres se procesan de izquierda a derecha. • Las expresiones anidadas se deshacen desde dentro hacia fuera. • Se ignora el uso de mayúsculas y minúsculas. •...
  • Página 108: Variable Curpos

    Variables 7.17 Variable CURVER • Comillas dobles dentro de un string: VAR2="Hola, esto es un " test"" ;Resultado: Hola, esto es un " test" • Strings de variables de sistema o de usuario dependientes de contenidos de variables: VAR2.Var = "$R[" << VAR8 << "]" ;Resultado: $R[4] Ver también Funciones STRING (Página 182)
  • Página 109: Variable Entry

    Variables 7.18 Variable ENTRY • No está permitido retirar variables de un diálogo de una versión a la siguiente. • El diálogo debe contener todas las variables de todas las versiones. Ejemplo (IF CURVER==1 ...) ; CURVER se activa automáticamente al decompilar con la versión del código decompilado.
  • Página 110: Variable Err

    Variables 7.20 Variable FILE_ERR 7.19 Variable ERR Descripción Con la variable ERR puede comprobarse si las líneas precedentes se han ejecutado sin errores en cada caso. Programación Sintaxis: Descripción: La variable ERR sólo puede ser leída. Valor de retorno: El resultado de la consulta puede ser: FALSE = la línea precedente se ha ejecutado sin errores, TRUE = la línea precedente se ha ejecutado con errores, Ejemplo...
  • Página 111 Variables 7.20 Variable FILE_ERR Valor de retorno: Los posibles resultados son: Operación en orden Unidad/ruta no existe 2 = Error de acceso a ruta/fichero 3 = Unidad no preparada 4 = Nombre de fichero incorrecto 5 = Fichero ya está abierto 6 = Acceso denegado 7 = Ruta de destino no existe o no permitida 8 = Fuente de copia idéntica al destino...
  • Página 112: Variable Foc

    Variables 7.21 Variable FOC 7.21 Variable FOC Descripción Con la variable FOC se controla el foco de entrada (campo de entrada/salida actualmente activo) en un diálogo. La reacción del cursor a la izquierda, a la derecha, arriba, abajo así como PGUP y PGDN está...
  • Página 113: Variable S_Alevel

    Variables 7.23 Variable S_CHAN 7.22 Variable S_ALEVEL Descripción El nivel de acceso actual puede consultarse con la propiedad de máscara S_ALEVEL en la configuración. Programación Sintaxis: S_ALEVEL Descripción: Consulta del nivel de acceso actual Valor de retorno: 0: Sistema 1: Fabricante 2: Servicio técnico 3: Usuario 4: Interruptor de llave 3...
  • Página 114: Variable S_Control

    Variables 7.25 Variable S_LANG Ejemplo REG[0] = S_CHAN Consulte también CHANNEL (Página 124) 7.24 Variable S_CONTROL Descripción El nombre de control actual puede consultarse con la propiedad de máscara S_CONTROL en la configuración. Programación Sintaxis: S_CONTROL Descripción: Consulta del nombre de control actual Valor de retorno: El nombre de control es el nombre de sección de "mmc.ini"...
  • Página 115: Variable S_Nccodereadonly

    Variables 7.27 Variables S_RESX y S_RESY Programación Sintaxis: S_LANG Descripción: Consulta del idioma actual Valor de retorno: Código de idioma de resources.xml, p. ej. "deu", "eng", etc. Ejemplo REG[0] = S_LANG Consulte también LANGUAGE (Página 125) 7.26 Variable S_NCCODEREADONLY Descripción La propiedad de máscara S_NCCODEREADONLY es significativa exclusivamente cuando en el editor se decompila un ciclo con un cuadro de diálogo "Run MyScreens".
  • Página 116 Variables 7.27 Variables S_RESX y S_RESY Consulte también RESOLUTION (Página 130) SINUMERIK Integrate Run MyScreens Manual de programación, 10/2020, A5E40869575E AE...
  • Página 117: Comandos De Programación

    Comandos de programación Operadores Vista general En la programación se pueden utilizar los siguientes operadores: • Operadores matemáticos • Operadores de comparación • Operadores lógicos (booleanos) • Operadores de bits • Funciones trigonométricas 8.1.1 Operadores matemáticos Vista general Operadores matemáticos Explicación Suma Resta...
  • Página 118: Utilización

    Comandos de programación 8.1 Operadores Utilización ROUND es controlado por el usuario mediante dos parámetros: VAR1 = 5,2328543 VAR2 = ROUND( VAR1, 4 ) Resultado: VAR2 = 5,2339 VAR1 contiene el número a redondear. El parámetro "4" indica el número de decimales del resultado, que se guarda en VAR2.
  • Página 119 Comandos de programación 8.1 Operadores Función Random: número aleatorio Sintaxis: RANDOM (valor límite inferior, valor límite superior) Descripción: La función RANDOM devuelve un número seudoaleatorio en un rango predefi‐ nido. Parámetro: Límite inferior Valor límite inferior >= -32767, Valor límite inferior < valor límite superior Límite superior Valor límite superior <= 32767 Ejemplo...
  • Página 120: Condiciones

    Comandos de programación 8.1 Operadores Condiciones La profundidad de anidamiento es ilimitada. Condición con un comando: ENDIF Condición con dos comandos: ELSE ENDIF 8.1.2 Operadores de bits Vista general Operadores de bits Explicación OR bit a bit BXOR XOR bit a bit BAND AND bit a bit BNOT...
  • Página 121: Operador Shr

    Comandos de programación 8.2 Métodos VAR01 = 16 SHL 2 ; Resultado = 64 VAR02 = VAR02 SHL VAR04 ; El contenido de VAR02 se transforma en un valor de 32 bits sin signo y se desplaza a la izquierda en un número de bits equivalente al contenido de VAR04.
  • Página 122: Accesslevel

    Comandos de programación 8.2 Métodos La programación básica de un método tiene el siguiente aspecto: Bloque descriptivo Comentario Referencia cruzada a capítulos ;Identificador de arranque del mé‐ PRESS(HS1) todo ;Funciones Ver capítulo Funciones (Pági‐ LM... na 134) LS... ;Modificación de propiedades Ver capítulos Definir menús de pul‐...
  • Página 123 Comandos de programación 8.2 Métodos Los métodos CHANGE se diferencian en específico del elemento y global: • El método CHANGE específico del elemento se ejecuta cuando se modifica el valor de la variable especificada. Si una variable tiene asignada una variable de sistema o de usuario, su valor puede actualizarse cíclicamente en un método CHANGE.
  • Página 124: Channel

    Comandos de programación 8.2 Métodos Ejemplo CHANGE() EXIT ; Si se modifica cualquier valor de variable, se abandona el diálogo. END_CHANGE 8.2.3 CHANNEL Descripción El método CHANNEL se ejecuta cuando se modifica el canal actual con la máscara abierta; es decir, si se ha producido un cambio de canal.
  • Página 125: Focus

    Comandos de programación 8.2 Métodos Consulte también Variable S_CONTROL (Página 114) 8.2.5 FOCUS Descripción El método FOCUS se ejecuta cuando en el diálogo el foco (cursor) se posiciona sobre otro campo. El método FOCUS no debe dispararse con un evento de navegación. La posición del cursor solo puede modificarse en los métodos PRESS, métodos CHANGE, etc.
  • Página 126: Load

    Comandos de programación 8.2 Métodos Programación Sintaxis: LANGUAGE <Instrucciones> END_LANGUAGE Descripción: Idioma Parámetros: - Ninguno - Consulte también Variable S_LANG (Página 114) 8.2.7 LOAD Descripción El método LOAD se ejecuta una vez interpretadas las definiciones de las variables y los pulsadores de menú...
  • Página 127: Unload

    Comandos de programación 8.2 Métodos 8.2.8 UNLOAD Descripción El método UNLOAD se ejecuta previamente a la descarga de un diálogo. Programación Sintaxis: UNLOAD END_UNLOAD Descripción: Descargar Parámetro: - Ninguno - Ejemplo UNLOAD REG[1] = VAR1 ; Guardar variable en el registro END_UNLOAD 8.2.9 OUTPUT...
  • Página 128: Press

    Comandos de programación 8.2 Métodos Números de secuencia y códigos de supresión El método OUTPUT no debe contener ningún número de línea ni código de supresión cuando los números de línea y códigos de supresión definidos directamente en el programa de pieza durante la ayuda activa a la programación deban conservar su valor al decompilar.
  • Página 129: Press(Enter)

    Comandos de programación 8.2 Métodos Parámetro: Tecla de función Nombre del pulsador de menú: HS1 - HS8 y VS1 - VS8 programable RECALL Tecla <RECALL> ENTER Tecla <ENTER>, ver PRESS(ENTER) (Página 129) TOGGLE Tecla <TOGGLE>, ver PRESS(TOGGLE) (Página 130) Re Pág avance página Av Pág retroceso página...
  • Página 130: Press(Toggle)

    Comandos de programación 8.2 Métodos Programación Sintaxis: PRESS(ENTER) <Instrucciones> END_PRESS Descripción: Tecla Intro pulsada Parámetros: - Ninguno - 8.2.12 PRESS(TOGGLE) Descripción Se accede al método PRESS(TOGGLE) siempre que se acciona la tecla de alternancia, independientemente de la variable enfocada en ese momento. Si es necesario, con ayuda de la propiedad de máscara FOC puede determinarse la variable que tiene el foco actualmente.
  • Página 131: Resume

    Comandos de programación 8.2 Métodos Programación Sintaxis: RESOLUTION <Instrucciones> END_RESOLUTION Descripción: Resolución Parámetros: - Ninguno - Consulte también Variables S_RESX y S_RESY (Página 115) 8.2.14 RESUME Descripción Se accede al método RESUME cuando la máscara se ha interrumpido, p. ej., por un cambio de área, y luego vuelve a mostrarse.
  • Página 132: Suspend

    Comandos de programación 8.2 Métodos 8.2.15 SUSPEND Descripción Se accede al método SUSPEND cuando la máscara se interrumpe y no se descarga. Lo mismo ocurre, p. ej., cuando se sale de la máscara con un sencillo cambio de área, pero no se descarga de forma explícita.
  • Página 133: Programación Con Indicador De Versión

    Comandos de programación 8.2 Métodos Al escribir el método OUTPUT puede hacerse referencia a una versión concreta, referida a la totalidad de las definiciones. Ejemplo: OUTPUT(NC1) ; Solo las variables de la versión original se ofre- cen en el método OUTPUT. OUTPUT(NC1,1) ;...
  • Página 134: Funciones

    Comandos de programación 8.3 Funciones OUTPUT(NC1,1) Versión 1 var100","var101"," var102 END_OUTPUT Funciones Vista general En diálogos y menús de pulsadores dependientes de ellas se dispone de diversas funciones que se pueden disparar a través de distintos eventos (p. ej.: salida del campo de entrada, operación de los pulsadores de menú) y se configuran en métodos.
  • Página 135: Leer Y Escribir Parámetros De Accionamiento: Rdop, Wdop, Mrdop

    Comandos de programación 8.3 Funciones 8.3.1 Leer y escribir parámetros de accionamiento: RDOP, WDOP, MRDOP Descripción Con ayuda de las funciones RDOP, WDOP y MRDOP, se pueden leer y escribir parámetros de accionamiento. Nota Los parámetros de accionamiento no deben leerse en ciclos de menos de 1 segundo, es mejor que se lean más despacio.
  • Página 136 Comandos de programación 8.3 Funciones Figura 8-1 Identificador del objeto de accionamiento Sintaxis: MRDOP("identificador del objeto de accionamiento", "número de pa‐ rámetro1"*"número de parámetro"[*…], índice del registro) Descripción: Multi Read de parámetros de accionamiento. Con el comando MRDOP pueden transferirse varios parámetros de accionamiento de un objeto de accionamiento con un acceso al re‐...
  • Página 137: Llamada De Un Subprograma (Call)

    Comandos de programación 8.3 Funciones Parámetros: Identificador del objeto de accio‐ El identificador del objeto de ac‐ namiento cionamiento puede tomarse, p. ej., de la pantalla básica del cam‐ po de manejo "Puesta en marcha" Número de parámetro Número de parámetro Valor Valor que se debe escribir Ejemplos...
  • Página 138: Definir Bloque (//B)

    Comandos de programación 8.3 Funciones //M(MÁSCARA1) CALL("MY_UP1") ; Llamar y ejecutar el subprograma END_CHANGE SUB(MY_UP1) ;do something END_SUB //END 8.3.3 Definir bloque (//B) Descripción Los subprogramas se identifican en el fichero de programa con el identificador de bloque //B y se finalizan con //END.
  • Página 139: Check Variable (Cvar)

    Comandos de programación 8.3 Funciones SUB(UP1) ; Inicio de subprograma REG[0] = 5 ; Asignar al registro 0 el valor 5 END_SUB ; Final de subprograma SUB(UP2) ; Inicio de subprograma IF VAR1.val=="Otto" VAR1.val="Hans" RETURN ENDIF VAR1.val="Otto" END_SUB ; Final de subprograma //END ;...
  • Página 140: Función De Fichero Copy Program (Cp)

    Comandos de programación 8.3 Funciones ELSE VS8.SE = 2 ; Si una variable contiene un valor erró- neo, el pulsador de menú VS8 está desha- bilitado ENDIF IF CVAR("VAR1", "VAR2") == TRUE ; Comprobación de las variables VAR1 y VAR2 DLGL ("VAR1 y VAR2 son correctas") ;...
  • Página 141: Función De Fichero Delete Program (Dp)

    Comandos de programación 8.3 Funciones Ejemplo Caso de aplicación con valor de retorno: CP("//NC/MPF.DIR/HOHO.MPF","//NC/MPF.DIR/ASLAN.MPF",VAR1) CP("CF_CARD:/wks.dir/MESS_BILD.WPD/MESS_BILD.MPF","//NC/WKS.DIR/AAA.WPD/HOHO2.MPF",VAR1) CP("//NC/MPF.DIR/HOHO.MPF","CF_CARD:/wks.dir/WST1.WPD/MESS.MPF",VAR1) ; WPD debe existir Caso de aplicación sin valor de retorno: CP("//NC/MPF.DIR/HOHO.MPF","//NC/MPF.DIR/ASLAN.MPF") CP("CF_CARD:/mpf.dir/MYPROG.MPF","//NC/MPF.DIR/HOHO.MPF") CP("//NC/MPF.DIR/HOHO.MPF","CF_CARD:/XYZ/MYPROG.MPF") ; XYZ debe existir Ver también Ayuda de FILE_ERR: Variable FILE_ERR (Página 110) 8.3.6 Función de fichero Delete Program (DP) Descripción...
  • Página 142: Función De Fichero Exist Program (Ep)

    Comandos de programación 8.3 Funciones DP("//NC/WKS.DIR/TEST.WPD/MYPROG.MPF") DP("//NC/CMA.DIR/MYPROG.SPF") 8.3.7 Función de fichero Exist Program (EP) Descripción La función EP (Exist Program) comprueba si un determinado programa de CN se encuentra en el sistema de ficheros del CN o del HMI bajo la ruta indicada. Programación Sintaxis: EP("Fichero")
  • Página 143: Función De Fichero Move Program (Mp)

    Comandos de programación 8.3 Funciones ; VAR1 = M El fichero se encuentra en el sistema de ficheros de HMI. ; VAR1 = N El fichero se encuentra en el sistema de ficheros del CN. ; VAR1 = B El fichero se encuentra en el sistema de ficheros del HMI y del CN. Ejemplo EP("/MPF.DIR/GROB.MPF",VAR1) ;...
  • Página 144: Función De Fichero Select Program (Sp)

    Comandos de programación 8.3 Funciones Ejemplos Con valor de retorno: MP("//NC/MPF.DIR/123.MPF","//NC/MPF.DIR/ASLAN.MPF",VAR1) ;dentro de CN MP("//NC/MPF.DIR/123.MPF",VAR0,VAR1) ;destino mediante variable MP(VAR4,VAR0,VAR1) ;fuente y destino mediante variable MP("CF_CARD:/mpf.dir/myprog.mpf","//NC/MPF.DIR/123.MPF",VAR1) ;de tarjeta CF a CN MP("//NC/MPF.DIR/HOHO.MPF","CF_CARD:/XYZ/123.mpf",VAR1) ;de CN a tarjeta CF ; con valor de retorno: ;...
  • Página 145: Acceso A Ficheros: Rdfile, Wrfile, Rdlinefile, Wrlinefile

    Comandos de programación 8.3 Funciones 8.3.10 Acceso a ficheros: RDFILE, WRFILE, RDLINEFILE, WRLINEFILE Descripción Para el acceso de lectura y escritura a ficheros con sintaxis INI se encuentran disponibles las funciones RDFILE y WRFILE. Para el acceso de lectura y escritura a determinadas líneas de un fichero se encuentran disponibles las funciones RDLINEFILE y WRLINEFILE.
  • Página 146 Comandos de programación 8.3 Funciones Nota • Los ficheros no pueden estar en el sistema de ficheros del CN (gestión de datos). • Si el fichero no existe, si se llega al final del fichero o si se produce otro error, la variable FILE_ERR y ERR se define de forma correspondiente.
  • Página 147: Dialog Line (Dlgl)

    Comandos de programación 8.3 Funciones Lectura de la 4.ª línea de un fichero: Requisitos/premisa: Contenido de c:/tmp/myfile.mpf: R[0]=0 F3500 G1 MYLOOPIDX1: X0 y-50 Z0 X150 Y50 Z10 R[0]=R[0]+1 GOTOB MYLOOPIDX1 MyVar = RDLINEFILE("C:/tmp/myfile.mpf", 4) Resultado: MyVar contiene ahora el valor " R[0]=R[0]+1"...
  • Página 148: Debug

    Comandos de programación 8.3 Funciones Número de caracteres posible con el tamaño de fuente estándar: aprox. 50 caracteres Nota Las funciones LS, LM, DLGL, EXIT y EXITLS no deben configurarse en los métodos SUSPEND o RESUME. Si se usan esas funciones en estos métodos, se impide la ejecución de las funciones. Programación Sintaxis: DLGL("String")
  • Página 149: Abandonar El Diálogo (Exit)

    Comandos de programación 8.3 Funciones Programación Sintaxis: DEBUG(Expresión) Descripción: Efectuar una entrada en el libro de incidencias "easyscreen_log.txt" Parámetros: Expresión que se va a evaluar, a partir de la cual se genera una entrada en el libro de incidencias Ejemplo IF Var1 >...
  • Página 150: Programación Con Variable De Transferencia

    Comandos de programación 8.3 Funciones Descripción Si se llamó al diálogo actual con una variable de transferencia, el valor de la variable puede modificarse y devolverse al diálogo inicial. Los valores de variable se asignan a las variables transferidas con la función "LM" del diálogo inicial al diálogo posterior.
  • Página 151: Manipulación Dinámica De Listas De Los Campos De Alternancia O De Cuadros De Lista

    Comandos de programación 8.3 Funciones ; Salir de máscara2 y regresar a máscara1 en la línea siguiente a LM. Asignar a la variable POSX el valor 5 y a la variable DIÁMETRO el valor de la varia- ble DIÁMETRO_CALCULADO. La variable POSY conserva su valor actual.
  • Página 152 Comandos de programación 8.3 Funciones Sintaxis: LISTADDITEM(Variablename, ItemValue[, ItemDispValue]) Descripción: Adición de un elemento al final de la lista Parámetros: Nombre de variable ItemValue Valor de la entrada de la lista ItemDispValue Valor tal como debe representar‐ se en la lista Sintaxis: LISTDELETEITEM(Variablename, Position) Descripción:...
  • Página 153: Evaluate (Eval)

    Comandos de programación 8.3 Funciones Inserción de un elemento 99="Maybe" en la posición 2: LISTINSERTITEM("VAR_AC", 2, 99, """Maybe""") Resultado: 0="Off", 1="On", 99="Maybe", -1="Undefined" Cálculo del número actual de elementos de la lista: REG[10]=LISTCOUNT("VAR_AC") Resultado: REG[10] = 4 Borrado del elemento en la posición 1: LISTDELETEITEM("VAR_AC", 1) Resultado: 0="Off", 99="Maybe", -1="Undefined"...
  • Página 154: Exit Loading Softkey (Exitls)

    Comandos de programación 8.3 Funciones CHANGE() REG[7] = EVAL("VAR"<<REG[5]) ; La expresión entre paréntesis produce VAR3 si el valor de REG[5] es igual a 3. En consecuencia, se asigna a REG[7] el valor de VAR3. IF REG[5] == 1 REG[7] = VAR1 ELSE IF REG[5] == 2 REG[7] = VAR2...
  • Página 155: Function (Fct)

    Comandos de programación 8.3 Funciones Ejemplo PRESS(HS1) EXITLS( "Menú1", "AEDITOR.COM" ) END_PRESS 8.3.17 Function (FCT) Descripción Las funciones externas se almacenan en un fichero DLL y se dan a conocer mediante una entrada en la línea de definición del fichero de configuración. Nota La función externa debe tener como mínimo un parámetro de retorno.
  • Página 156: Estructura De La Función Externa

    Comandos de programación 8.3 Funciones Estructura de la función externa La función externa debe observar una firma predeterminada concreta: Sintaxis: extern "C" dllexport void InitConnection (ExtFctStructPtr FctRet, ExtFctStructPtr FctPar, char cNrFctPar) Descripción: Exportación DLL solo al implementar en Windows Los especificadores y los parámetros de transferencia están preestablecidos de forma fija.
  • Página 157: Generate Code (Gc)

    Comandos de programación 8.3 Funciones extern "C" MY_EXPORT void InitConnection (ExtFctStructPtr FctRet, ExtFctStructPtr FctPar,char cNrFctPar) Si se utilizan las imágenes configuradas con "Run MyScreens" en la NCU y en la PCU/PC, debe omitirse la extensión del fichero binario: FCT InitConnection = ("xyz"/I/R,I,S/I,S) Al omitir la información de ruta absoluta, "Run MyScreens"...
  • Página 158: Ubicación Del Fichero De Destino

    Comandos de programación 8.3 Funciones DEF VAR1 = (R//1) DEF VAR2 = (R//2) DEF D_NAME LOAD VAR1 = 123 VAR2 = -6 END_LOAD OUTPUT(CODE1) "Cycle123(" VAR1 "," VAR2 ")" "M30" END_OUTPUT PRESS(VS1) D_NAME = "\MPF.DIR\MESSEN.MPF" GC("CODE1",D_NAME) ; Escribir el código de CN del método OUTPUT en el fichero \MPF.DIR\MESSEN.MPF: Cycle123(123, -6) END_PRESS...
  • Página 159: Particularidades En La Decompilación

    Comandos de programación 8.3 Funciones Decompilación • Sin indicación del fichero de destino: La función GC sólo puede utilizarse en la ayuda a la programación y escribe el código de CN en el fichero actualmente abierto en el editor. El código de CN no se puede decompilar. Si la función GC se configura sin indicación del fichero de destino en "Run MyScreens", aparece un mensaje de error durante la ejecución.
  • Página 160: Load Array (La)

    Comandos de programación 8.3 Funciones Ejemplo REG[0] = HMI_LOGIN("CUSTOMER") ; Resultado = TRUE si la contraseña se ha de- finido correctamente; de lo contrario, FALSE Función HMI_LOGOFF: Borrar contraseña Sintaxis: HMI_LOGOFF Descripción: Con la función HMI_LOGOFF puede restablecerse el nivel de acceso actual. Parámetros: - Ninguno - Ejemplo...
  • Página 161 Comandos de programación 8.3 Funciones Parámetro: Identificador Nombre de la matriz a recargar Fichero Fichero en el que está definida la matriz Nota Si se desea sustituir una matriz en el actual fichero de configuración por una matriz de otro fichero de configuración, los nombres de ambas matrices deberán ser idénticos.
  • Página 162: Load Block (Lb)

    Comandos de programación 8.3 Funciones 8.3.21 Load Block (LB) Descripción Con la función LB (Load Block) se pueden cargar bloques con subprogramas en tiempo de ejecución. LB debe configurarse preferiblemente en un método LOAD, para que los subprogramas cargados puedan llamarse en cualquier momento. Nota Los subprogramas también pueden definirse directamente en un diálogo, en cuyo caso no tienen que cargarse.
  • Página 163 Comandos de programación 8.3 Funciones Diálogo principal / subdiálogo Un diálogo que abre otro diálogo y no se cierra por sí mismo se denomina como diálogo principal. Un diálogo que es abierto desde un diálogo principal se denomina como subdiálogo. Programación Sintaxis: LM("Identificador"[,"Fichero"] [,MSx [, VARx] ] )
  • Página 164: Load Softkey (Ls)

    Comandos de programación 8.3 Funciones MÁSCARA1(diálogo principal): salto al subdiálogo MÁSCARA2 con transferencia de varia- bles LM("MÁSCARA2","CFI.COM",1, POSX, POSY, DIÁMETRO) ; Interrumpir máscara1 y mostrar máscara2: A su vez, se transfieren las variables POSX, POSY y DIÁMETRO. DLGL("Máscara2 finalizada") ; Al volver de máscara2, aparece en la línea de diálogo de máscara1 el texto: Máscara2 finali- zada.
  • Página 165: Load Grid (Lg)

    Comandos de programación 8.3 Funciones Parámetro: Identificador Nombre del menú de pulsadores Fichero Nombre de ruta (sistema de ficheros HMI o de CN) del fichero de configuración Ajuste predeterminado: fichero de configuración actual Merge 0: Todos los pulsadores de menú existentes se borran; se introducen los nuevos pulsadores de menú...
  • Página 166: Selección Múltiple Switch

    Comandos de programación 8.3 Funciones Parámetro: Nombre del grid Nombre de la tabla (Grid) entre comillas simples Nombre de varia‐ Nombre de la variable a la que debe asignarse la tabla, entre comillas simples Nombre de fichero Nombre del fichero en el que está definida la tabla (Grid), entre comillas simples.
  • Página 167: Multiple Read Nc Plc (Mrnp)

    Comandos de programación 8.3 Funciones Ejemplo FOCUS SWITCH (FOC) CASE "VarF" DLGL("Variable ""VarF"" has the input focus.") CASE "VarZ" DLGL("Variable ""VarZ"" has the input focus.") DEFAULT DLGL("Any other variable has the input focus.") END_SWITCH END_FOCUS 8.3.26 Multiple Read NC PLC (MRNP) Descripción Con el comando MRNP pueden transferirse varias variables del CN/PLC con un acceso al registro.
  • Página 168 Comandos de programación 8.3 Funciones Nota Se ha de tener en cuenta que la lista de variables puede tener máx. 500 caracteres y el número de registros está limitado. Ejemplo MRNP("$R[0]*$R[1]*$R[2]*$R[3]",1) ;REG[1] a REG[4] se escriben con el valor de las variables de $R[0] a $R[3].
  • Página 169: P_Logical_Filepath

    Comandos de programación 8.3 Funciones Datos PLC Byte de marcas x Word de marcas x Double Word de marcas x Byte de entrada x bit y Ix.y o Ex.y Byte de entrada x IBx o EBx Word de entrada x IWx o EWx Double Word de entrada x IDx o EDx...
  • Página 170: P_Real_Filepath

    Comandos de programación 8.3 Funciones 8.3.28 P_REAL_FILEPATH Descripción La función P_REAL_FILEPATH devuelve el nombre y la ruta real del programa de pieza editado actualmente en el editor. Nota La función solo está disponible en el contexto de máscaras de ciclo. Programación Sintaxis: P_REAL_FILEPATH()
  • Página 171: Leer (Rnp) Y Escribir (Wnp) Variable De Sistema O De Usuario

    Comandos de programación 8.3 Funciones Ejemplo PI_START("/NC,001,_N_LOGOUT") Nota Los servicios de PI dependientes del canal están referidos siempre al canal actual. Los servicios de PI de las funciones de herramienta (área TO) se refieren siempre al área TO asignada al canal actual. 8.3.30 Leer (RNP) y escribir (WNP) variable de sistema o de usuario Descripción...
  • Página 172: Resize_Var_Io Y Resize_Var_Txt

    Comandos de programación 8.3 Funciones Programación Sintaxis: WNP("Variable de sistema o de usuario", valor) Descripción: Escribir variables de CN o PLC o datos de máquina Parámetro: Variable de sistema o de Nombre de la variable de CN o PLC usuario Valor Valor que debe escribirse en la variable de sistema o de usuario...
  • Página 173: Descripción Valor De Registro

    Índice de registro con x = 0...19; Tipo: REAL o STRING = VARIANT Los registros con x ≥ 20 ya están definidos por Siemens. Descripción valor de registro La asignación de valores a los registros se configura en un método.
  • Página 174: Descripción Estado De Un Registro

    Comandos de programación 8.3 Funciones Parámetro: Identificador Nombre del registro Valor de un registro Valor del registro Ejemplo UNLOAD REG[0] = VAR1 ; Asignar al registro 0 el valor de la variable 1 END_UNLOAD UNLOAD REG[9].VAL = 84 ; Asignar al registro 9 el valor 84 END_UNLOAD ;...
  • Página 175: Return

    Comandos de programación 8.3 Funciones 8.3.33 RETURN Descripción Con la función RETURN puede cancelarse con antelación el subprograma actual y regresarse al punto de salida del último comando CALL. Si en el subprograma no se configura ningún RETURN, el subprograma se ejecuta hasta el final y se vuelve después al punto de salida.
  • Página 176 Comandos de programación 8.3 Funciones Programación Las variables del código de CN se aplican en el diálogo. Al hacerlo, los valores de variable del código de CN se comparan con los valores de variable calculados a partir del fichero de configuración.
  • Página 177: Decompilación Sin Comentarios

    Comandos de programación 8.3 Funciones 8.3.35 Decompilación sin comentarios Descripción En la ayuda a la programación existe la posibilidad de decompilar sin comentarios el código de CN creado con la función GC y volver a mostrar los valores de variables en el campo de entrada/ salida del diálogo de entrada correspondiente.
  • Página 178 Comandos de programación 8.3 Funciones Icon (opcional) Símbolo que se muestra en el programa de cadenas se‐ cuenciales, formato *.png Tamaño de imagen para cada resolución: 640 x 480 mm → 16 x 16 píxeles 800 x 600 mm → 20 x 20 píxeles 1024 x 768 mm →...
  • Página 179 Comandos de programación 8.3 Funciones LOAD VAR1 = 123 VAR2 = -6 END_LOAD OUTPUT(CODE1) "Cycle123(" VAR1 "," VAR2 ")" "M30" END_OUTPUT PRESS(VS1) D_NAME = "\MPF.DIR\MESSEN.MPF" GC("CODE1",D_NAME) ; Escribir el código de CN del método OUTPUT en el fichero \MPF.DIR\MES- SEN.MPF: Cycle123(123, -6) END_PRESS Limitaciones...
  • Página 180: Search Forward, Search Backward (Sf, Sb)

    Comandos de programación 8.3 Funciones "MYCYCLE(" MYPAR1 "," MYPAR2 "," MYPAR3 ")" MYCOMMENT END_OUTPUT 8.3.36 Search Forward, Search Backward (SF, SB) Descripción Con la función SF, SB (Search Forward, Search Backward) en el programa de CN actual del editor se puede buscar un string desde la posición actual del cursor y emitir su valor. Programación Sintaxis: SF("String")
  • Página 181: Sl_Hmi_Install_Dir

    Comandos de programación 8.3 Funciones X100 Y=200 ; La variable Abc recibe el valor 200 Abc = SB("Y") 8.3.37 SL_HMI_INSTALL_DIR Descripción La función SL_HMI_INSTALL_DIR devuelve la ruta del directorio de instalación de SINUMERIK Operate. Programación Sintaxis: SL_HMI_INSTALL_DIR() Descripción: Determinar el directorio de instalación de SINUMERIK Operate Parámetro: - Ninguno - 8.3.38...
  • Página 182: Funciones String

    Comandos de programación 8.3 Funciones 8.3.39 Funciones STRING Vista general Las siguientes funciones permiten procesar strings: • Cálculo de la longitud de strings • Búsqueda de un carácter en un string • Extracción de parte de un string comenzando por la izquierda •...
  • Página 183: Función Left: String Desde La Izquierda

    Comandos de programación 8.3 Funciones Parámetros: Inicio Posición inicial desde la cual se busca el string1 en string2. Cuando la búsqueda deba comenzar al principio de string2, debe introducirse 0. String1 Carácter que se busca String2 Cadena de caracteres en la que se busca Dirección (opción) Dirección en la que se busca 0: de izquierda a derecha (ajuste predeterminado)
  • Página 184: Función Right: String Desde La Derecha

    Comandos de programación 8.3 Funciones Función RIGHT: String desde la derecha Sintaxis: RIGHT(string, longitud) Descripción: RIGHT devuelve una cadena de caracteres que contiene el número de caracteres indicado comenzando por la derecha de un string. Parámetros: string Cadena de caracteres o variable con la cadena de caracteres que se desea procesar longitud Número de caracteres que se desea leer...
  • Página 185 Comandos de programación 8.3 Funciones Parámetros: string String en el que debe reemplazarse FindString por ReplaceS‐ tring. FindString String que se desea reemplazar ReplaceString String de reemplazo (se inserta en lugar de FindString) inicio Posición inicial a partir de la cual se busca y sustituye count Número de caracteres dentro de los que se debe buscar FindString a partir de la posición de inicio...
  • Página 186 Comandos de programación 8.3 Funciones Parámetros: string1 Cadena de caracteres en la que debe insertarse otra ca‐ dena de caracteres string2 Cadena de caracteres que debe insertarse insert position Posición en la que debe insertarse la cadena de caracteres Ejemplo REG[0]=STRINSERT("Hello!", "...
  • Página 187: Función Trimright: Eliminación De Espacios En Blanco A La Derecha Del String

    Comandos de programación 8.3 Funciones Función TRIMRIGHT: eliminación de espacios en blanco a la derecha del string Sintaxis: TRIMRIGHT(string1) Descripción: TRIMRIGHT elimina espacios en blanco a la derecha de la cadena de caracteres. Parámetros: string1 Cadena de caracteres de la que deben eliminarse espa‐ cios en blanco situados a la derecha Ejemplo REG[0]=TRIMRIGHT("Hello!
  • Página 188: Bucles While/Until

    Comandos de programación 8.3 Funciones Ejemplo DEF VAR1 DEF VAR2 LOAD VAR1 = 123 VAR2 = FORMAT("Hello %08b %.2f %s!", VAR1 + 1, 987.654321, "world") ; Resultado = "Hello 01111100 987.65 world!" END_LOAD Consulte también Uso de strings (Página 106) 8.3.40 Bucles WHILE/UNTIL Descripción...
  • Página 189 Comandos de programación 8.3 Funciones <Instrucciones> LOOP_UNTIL <Condición para finalizar el bucle> DO_WHILE <Condición para que continúe el bucle> <Instrucciones> LOOP DO_UNTIL <Condición para finalizar el bucle> <Instrucciones> LOOP Ejemplo REG[0] = 5 DEBUG("OUTER: " << REG[0]) REG[0] = REG[0] + 1 REG[1] = -5 DEBUG("INNER: "...
  • Página 190: Ejecución Cíclica De Scripts: Start_Timer, Stop_Timer

    Comandos de programación 8.3 Funciones REG[0] = 5 DO_WHILE 10 > REG[0] DEBUG("OUTER: " << REG[0]) REG[0] = REG[0] + 1 REG[1] = -5 DO_UNTIL 0 <= REG[1] DEBUG("INNER: " << REG[1]) REG[1] = REG[1] + 1 LOOP LOOP REG[0] = 5 DO_WHILE 10 >...
  • Página 191 Comandos de programación 8.3 Funciones Programación Sintaxis: START_TIMER("Nombre de SUB", intervalo) Descripción: Inicio del procesamiento cíclico de un método SUB Parámetros: Nombre de Nombre del método SUB al que se debe acceder cí‐ SUB: clicamente Intervalo: Intervalo en milisegundos Sintaxis: STOP_TIMER("Nombre de SUB") Descripción: Fin del procesamiento cíclico de un método SUB...
  • Página 192 Comandos de programación 8.3 Funciones SINUMERIK Integrate Run MyScreens Manual de programación, 10/2020, A5E40869575E AE...
  • Página 193: Elementos Gráficos Y Lógicos

    Elementos gráficos y lógicos Línea, línea de separación, rectángulo, círculo y elipse 9.1.1 Definir elementos gráficos Descripción Las líneas, las líneas de separación, los rectángulos y las elipses/los círculos se configuran en el método LOAD: • Para conseguir rectángulos transparentes debe establecerse como color de relleno el color de fondo del sistema.
  • Página 194 Elementos gráficos y lógicos 9.1 Línea, línea de separación, rectángulo, círculo y elipse Elemento RECT Programación: Sintaxis: RECT (x, y, w, h, frame color, fill color, style, tag, visible) Descripción: Definir rectángulo Parámetros: Coordenada x arriba izquierda Coordenada y arriba izquierda Anchura Altura frame co‐...
  • Página 195 Elementos gráficos y lógicos 9.1 Línea, línea de separación, rectángulo, círculo y elipse Con el mismo valor para la altura y la anchura se forma un círculo. Elemento V_SEPARATOR Programación: Sintaxis: V_SEPARATOR (x,w,color,pen) Descripción: Definición de línea de separación vertical Parámetros: Posición X pen width...
  • Página 196: Funciones Gráficas

    Elementos gráficos y lógicos 9.1 Línea, línea de separación, rectángulo, círculo y elipse 9.1.2 Funciones gráficas Sinopsis Las siguientes funciones gráficas se encuentran disponibles: • CLEAR_BACKGROUND • DELETE_GRAPHIC • HIDE_GRAPHIC • SHOW_GRAPHIC Las funciones se pueden utilizar en los elementos gráficos LINE, RECT, ELLIPSE, V_SEPARATOR y H_SEPARATOR (Página 193).
  • Página 197: Función Hide_Graphic: Ocultar Un Elemento Gráfico O Un Grupo De Elementos Gráficos

    Elementos gráficos y lógicos 9.1 Línea, línea de separación, rectángulo, círculo y elipse LINE(0, 30, 100, 30, "red", "dotted", 5, true) DELETE_GRAPHIC(5) ;los 3 elementos gráfi- cos del tipo LINE con tag=5 se borran Función HIDE_GRAPHIC: ocultar un elemento gráfico o un grupo de elementos gráficos Con la función HIDE_GRAPHIC se puede ocultar un elemento gráfico específico o un grupo de elementos gráficos.
  • Página 198: Definir Matriz

    Elementos gráficos y lógicos 9.2 Definir matriz Ejemplo LINE(0, 10, 100, 10, "black", "dotted", 1, true) LINE(0, 10, 100, 10, "red", "dotted", 5, true) LINE(0, 20, 100, 20, "red", "dotted", 5, true) LINE(0, 30, 100, 30, "red", "dotted", 5, true) SHOW_GRAPHIC(5) ;los 3 elementos gráfi- cos del tipo LINE con...
  • Página 199: Acceder Al Valor De Un Elemento De Matriz

    Elementos gráficos y lógicos 9.2 Definir matriz (0.3 / 0.075 / 0.202) (0.4 / 0.1 / 0.270) (0.5 / 0.125 / 0.338) (0.6 / 0.15 / 0.406) (0.8 / 0.2 / 0.540) (1.0 / 0.25 / 0.676) (1.2 / 0.25 / 0.676) (1.4 / 0.3 / 1.010)
  • Página 200: Modo De Acceso

    Elementos gráficos y lógicos 9.2 Definir matriz Parámetro: Identificador: Nombre de la matriz Valor de las filas (índice de filas o término buscado) Valor de las columnas (índice de columnas o término buscado) Modo de acceso Directo búsqueda para filas, directo para columnas directo para filas, búsqueda para columnas Búsqueda Buscar índice de fila...
  • Página 201: Ejemplo: Acceso A Un Elemento De Matriz

    Elementos gráficos y lógicos 9.2 Definir matriz Al emplear el modo de comparación P = 1 el término buscado debe encontrarse en la fila o columna de búsqueda. Si no se encuentra el término buscado, se muestra el valor 0 o un string vacío y la variable de error ERR es TRUE.
  • Página 202: Consultar El Estado De Un Elemento Matriz

    Elementos gráficos y lógicos 9.2 Definir matriz Ejemplos • Modo de acceso ejemplo 1: En F se encuentra el término buscado. Este término siempre se busca en la columna 0. Se muestra el valor de la columna C con el índice de fila del término encontrado: VAR1 = rosca[0.5,1,1] ;VAR1 tiene el valor 0.125 Aclaración:...
  • Página 203: Descripción De Tabla (Grid)

    Elementos gráficos y lógicos 9.3 Descripción de tabla (grid) Programación Sintaxis: Identificador [Z, S, [M[,C]]].vld Descripción: Esta propiedad es de sólo lectura. Parámetro: Identificador Nombre de la matriz Valor de retorno: FALSE = Valor no válido TRUE = Valor válido Ejemplo DEF MPIT = (R///"MPIT",,"MPIT",""/wr3) DEF PIT...
  • Página 204: Identificador De Tablas

    Elementos gráficos y lógicos 9.3 Descripción de tabla (grid) Identificador de tablas Identificador de una tabla del mismo tipo de valores que el NCK o del PLC, a los que se puede asignar un canal mediante bloques. El identificador de tablas se distingue de los valores límite o de los campos de alternancia mediante un signo % antepuesto.
  • Página 205: Definir Columnas

    Elementos gráficos y lógicos 9.3 Descripción de tabla (grid) Programación Sintaxis: //G(Identificador de tablas/tipo de tabla/número de filas/ [atributo fila fija],[atributo columna fija]) Descripción: Definición de tabla (grid) Parámetro: Identificador de tablas En este caso el identificador de tablas se utiliza sin anteponer el signo %.
  • Página 206: Título De Columna De Un Fichero De Texto

    Elementos gráficos y lógicos 9.3 Descripción de tabla (grid) Programación Sintaxis: (Tipo/valores límite/vacío/texto largo, título de columna/atributos/pantalla de ayuda/ variable de sistema o de usuario/ancho de columnas/Offset1, Offset2, Offset3) Ver también Sintaxis de configuración ampliada (Página 47). Descripción: Definir columnas Parámetro: por analogía a las variables Tipo...
  • Página 207: Control Del Foco En La Tabla (Grid)

    Elementos gráficos y lógicos 9.3 Descripción de tabla (grid) 9.3.3 Control del foco en la tabla (grid) Descripción Con las propiedades Row y Col el foco puede activarse y calcularse dentro de una tabla: • Identificador.Row • Identificador.Col Programación Cada celda de una tabla posee las propiedades Val y Vld. Para la lectura y escritura de las propiedades de las celdas debe indicarse un índice de fila y columna junto al identificador de la variable de la línea de definición.
  • Página 208: Widgets Personalizados

    Elementos gráficos y lógicos 9.4 Widgets personalizados Widgets personalizados 9.4.1 Definir widgets personalizados Descripción A través de un widget personalizado se configuran elementos de visualización específicos del usuario en el diálogo. Opción de software Para utilizar widgets personalizados en los diálogos, se necesita además la siguiente opción de software: "SINUMERIK Integrate Run MyHMI/3GL"...
  • Página 209: Estructura De La Interfaz De Widgets Personalizados

    Elementos gráficos y lógicos 9.4 Widgets personalizados Programación La definición de clase del fichero dll debe ser así: #define SLESTESTCUSTOMWIDGET_EXPORT Q_DECL_EXPORT class SLESTESTCUSTOMWIDGET_EXPORT SlEsTestCustomWidget : public QWidget Q_OBJECT ..public slots: bool serialize(const QString& szFilePath, bool bIsStoring); ..9.4.3 Estructura de la interfaz de widgets personalizados Descripción Para poder mostrar el widget personalizado en el diálogo, la librería se completa con una interfaz.
  • Página 210 Elementos gráficos y lógicos 9.4 Widgets personalizados Ejemplo Contenido del fichero sleswidgetfactory.cpp para un widget personalizado con el nombre de clase "SlEsTestCustomWidget": #include <Qt/qglobal.h> #include "slestestcustomwidget.h" /////////////////////////////////////////////////////////////////////////// // MAKROS FOR PLUGIN DLL-EXPORT - DO NOT CHANGE /////////////////////////////////////////////////////////////////////////// #ifndef Q_EXTERN_C #ifdef __cplusplus #define Q_EXTERN_C extern "C"...
  • Página 211: Interacción Entre Widget Personalizado Y Diálogo: Intercambio De Datos Automático

    Elementos gráficos y lógicos 9.4 Widgets personalizados #define WIDGET_CLASS_EXPORT(CLASSNAME) EXPORT_SL_ES_CUSTOM_WIDGET_PLUGIN(CLASSNAME,CLASSNAME(pParent)) /////////////////////////////////////////////////////////////////////////// // FOR OEM USER - please declare here your widget classes for export /////////////////////////////////////////////////////////////////////////// WIDGET_CLASS_EXPORT(SlEsTestCustomWidget) 9.4.4 Interacción entre widget personalizado y diálogo: intercambio de datos automático Los widgets personalizados interactúan con los diálogos y pueden mostrar o manipular valores. Condiciones Se produce un intercambio de datos automático si se cumplen las siguientes condiciones: Condición...
  • Página 212: Interacción Entre Widget Personalizado Y Diálogo: Intercambio De Datos Manual

    Elementos gráficos y lógicos 9.4 Widgets personalizados Ejemplo La definición de clase del fichero dll debe ser así: #define SLESTESTCUSTOMWIDGET_EXPORT Q_DECL_EXPORT class SLESTESTCUSTOMWIDGET_EXPORT SlEsTestCustomWidget : public QWidget Q_OBJECT Q_PROPERTY(double CUSVAR1 READ cusVar1 WRITE setCusVar1); ..9.4.5 Interacción entre widget personalizado y diálogo: intercambio de datos manual Además de automático, el intercambio de datos también puede ser manual.
  • Página 213 Elementos gráficos y lógicos 9.4 Widgets personalizados Parámetro: Nombre de variable Nombre de la variable diálogo asignada a un widget per‐ sonalizado Nombre de propiedad Nombre de la propiedad del widget personalizado que desea leerse Valor de retorno: Valor actual de la propiedad del widget personalizado Sintaxis: WriteCWProperty("Nombre de variable", "nombre de propiedad", "valor") Descripción:...
  • Página 214: Ejecución De Un Método Del Widget Personalizado

    Elementos gráficos y lógicos 9.4 Widgets personalizados Widget personalizado, declaración de clase: class SLESTESTCUSTOMWIDGET_EXPORT SlEsTestCustomWidget : public QWidget Q_OBJECT Q_PROPERTY(double MyRealVar READ myRealVar WRITE setMyRealVar); Configuración de diálogo: DEF MyCWVar1 = (W///,"slestestcustomwidget.SlEsTestCustomWidget") PRESS(VS1) WriteCWProperty("MyCWVar1", "MyRealVar", 3 + sin(123.456)) END_PRESS 9.4.5.2 Ejecución de un método del widget personalizado Descripción Para ejecutar métodos del widget personalizado se dispone de la función CallCWMethod en la...
  • Página 215 Elementos gráficos y lógicos 9.4 Widgets personalizados Parámetro: Nombre de variable Nombre de la variable diálogo asignada a un widget per‐ sonalizado Nombre de método Nombre del método del widget personalizado que desea llamarse Argumento 0 - 9 Parámetro de transferencia para el método del widget personalizado Formatos de datos soportados: ver arriba Nota: Los parámetros de transferencia siempre se trans‐...
  • Página 216 Elementos gráficos y lógicos 9.4 Widgets personalizados Nota El widget personalizado debe implementar el método "serialize". En este método es posible escribir los datos internos de un widget personalizado en un fichero predefinido, o volver a crearlo a partir de este. Esto es necesario, sobre todo, cuando, estando abierta la máscara "Run MyScreens", se pasa a otro campo de manejo y a continuación se vuelve al anterior.
  • Página 217: Reacción A Una Señal Del Widget Personalizado

    Elementos gráficos y lógicos 9.4 Widgets personalizados bool SlEsTestCustomWidget::serialize(const QString& szFilePath, bool bIsStoring) else streamData >> m_nDataCount >> m_dValueX; streamData.setDevice(0); fileData.flush(); fileData.close(); bReturn = true; return bReturn; 9.4.5.3 Reacción a una señal del widget personalizado Descripción En Run MyScreens es posible reaccionar a una señal determinada (invokeSub()) del widget personalizado para llamar un subprograma (SUB).
  • Página 218 Elementos gráficos y lógicos 9.4 Widgets personalizados Parámetro: rszSignalName Nombre del subprograma de Run MyScreens que desea llamarse rvntList Matriz QVariantList para transferir parámetros almace‐ nados en los parámetros globales SIGARG y disponibles en la configuración. Tamaño máximo: 10 elementos Formatos de datos soportados: ver arriba Nota: los parámetros de transferencia siempre se trans‐...
  • Página 219: Slesgraphcustomwidget

    Elementos gráficos y lógicos 9.5 SlEsGraphCustomWidget Configuración de diálogo: DEF MyCWVar1 = (W///,"slestestcustomwidget.SlEsTestCustomWidget") SUB(on_MyCWVar1_MySub) DEBUG("SUB(on_MyCWVar1_MySub) was called with parameter: """ << SIGARG[0] << """") END_SUB Resultado "easyscreen_log.txt": [10:22:40.445] DEBUG: SUB(on_MyCWVar1_MySub) was called with parameter: "123.456" SlEsGraphCustomWidget 9.5.1 SlEsGraphCustomWidget Generalidades Con ayuda de SlEsGraphCustomWidget pueden representarse objetos geométricos (punto, línea, rectángulo, rectángulo con esquinas redondeadas, elipse, arco, texto) y curvas a partir de nodos de interpolación (p.
  • Página 220 Elementos gráficos y lógicos 9.5 SlEsGraphCustomWidget En caso necesario, puede visualizarse un segundo eje Y (derecha) con escala propia. Este eje está acoplado al primer eje Y (izquierda) mediante un offset y un factor. La función de búsqueda permite encontrar un punto agregado anteriormente a un contorno a partir de una coordenada X especificada y, si se desea, colocar el cursor sobre él.
  • Página 221: Indicaciones Sobre El Rendimiento

    Elementos gráficos y lógicos 9.5 SlEsGraphCustomWidget //M(MyGraphSampleMask/"SlEsGraphCustomWidget Sample") END_LOAD PRESS(VS1) REG[0]= CALLCWMETHOD("MyGraphVar", "addLine", 10, 20, 40, 20) REG[0]= CALLCWMETHOD("MyGraphVar", "addLine", 40, 20, 40, 40) REG[0]= CALLCWMETHOD("MyGraphVar", "addLine", 40, 40, 60, 40) REG[0]= CALLCWMETHOD("MyGraphVar", "addLine", 80, 0, 80, 100) REG[0]= CALLCWMETHOD("MyGraphVar", "addLine", 90, 0, 90, 100) REG[0]= CALLCWMETHOD("MyGraphVar", "addRect", 25, 100, 50, 75) REG[0]= CALLCWMETHOD("MyGraphVar", "setPenColor", "#ff0000");red REG[0]= CALLCWMETHOD("MyGraphVar", "setFillColor", "#ffff00");yellow...
  • Página 222: Lectura Y Escritura De Propiedades

    Elementos gráficos y lógicos 9.5 SlEsGraphCustomWidget 9.5.3 Lectura y escritura de propiedades Descripción Las propiedades mencionadas en el siguiente capítulo se leen con la función ReadCWProperty() y se ajustan con WriteCWProperty(). Ejemplos Lectura de las propiedades "CursorX" del SlEsGraphCustomWidget conectado mediante la variable de visualización "MyGraphVar".
  • Página 223: Axisnamex: Identificaciones De Eje, Eje

    Elementos gráficos y lógicos 9.5 SlEsGraphCustomWidget Propiedad Descripción CursorY2 Posición Y del cursor referida al segundo eje Y (derecha) CursorStyle Tipo de representación del cursor ViewMoveZoomMode Comportamiento al ampliar y desplazar mediante gestos AxisNameX: identificaciones de eje, eje X Sintaxis: ReturnValue = ReadCWProperty(GraphVarName, "AxisNameX") WriteCWProperty(GraphVarName, "AxisNameX", Value) Descripción:...
  • Página 224: Axisy2Factor: Factor Segundo Eje Y (Derecha)

    Elementos gráficos y lógicos 9.5 SlEsGraphCustomWidget Parámetros: GraphVarName Nombre de la variable de visualización que contiene un SlEsGraphCustomWidget Return Value Valor leído de la propiedad (double) Value Valor que se desea ajustar (double) AxisY2Factor: factor segundo eje Y (derecha) Sintaxis: ReturnValue = ReadCWProperty(GraphVarName, "AxisY2Factor") WriteCWPro‐...
  • Página 225: Scaletextembedded: Posicionamiento De Los Textos De Escala

    Elementos gráficos y lógicos 9.5 SlEsGraphCustomWidget Ejemplo Y: de 0 a 200 corresponderá a Y2: de -25 a 25. • Offset: -100 • Factor: 0,25 Ejemplo de cálculo: Y2 = -30 Y = -30 / 0.25 – (-100) = -20 Ejemplo de cálculo: Y = 0 Y2 = (0 + (-100)) * 0,25 = -25...
  • Página 226 Elementos gráficos y lógicos 9.5 SlEsGraphCustomWidget Figura 9-3 Textos de escala fuera del área de dibujo Textos de escala dentro del área de dibujo: ScaleTextEmbedded = TRUE Figura 9-4 Textos de escala dentro del área de dibujo ScaleTextOrientationYAxis: alineación de los textos de escala del eje Y Sintaxis: ReturnValue = ReadCWProperty(GraphVarName, "ScaleTextOrientationYAxis") WriteCWProperty(GraphVarName, "ScaleTextOrientationYAxis", Value)
  • Página 227 Elementos gráficos y lógicos 9.5 SlEsGraphCustomWidget Alineación de texto vertical: • ScaleTextOrientationYAxis = 2 Figura 9-6 Textos de escala dentro del área de dibujo, alineación de texto vertical Textos de escala fuera del área de dibujo: • ScaleTextEmbedded = FALSE Alineación de texto horizontal: •...
  • Página 228: Keepaspectratio: Conservar Las Proporciones De La Página

    Elementos gráficos y lógicos 9.5 SlEsGraphCustomWidget Figura 9-8 Textos de escala fuera del área de dibujo, alineación de texto vertical KeepAspectRatio: conservar las proporciones de la página Sintaxis: ReturnValue = ReadCWProperty(GraphVarName, "KeepAspectRatio") WriteCWProperty(GraphVarName, "KeepAspectRatio", Value) Descripción: Esta propiedad determina si la vista definida con setView() se alineará, adaptará o ampliará...
  • Página 229: Selectedcontour: Nombre Del Contorno Actualmente Seleccionado

    Elementos gráficos y lógicos 9.5 SlEsGraphCustomWidget Figura 9-10 La relación de aspecto entre los ejes X e Y se deforma SelectedContour: nombre del contorno actualmente seleccionado Sintaxis: ReturnValue = ReadCWProperty(GraphVarName, " SelectedContour") WriteCWProperty(GraphVarName, " SelectedContour", Value) Descripción: Lee o ajusta la selección del contorno actual. Parámetros: GraphVarName Nombre de la variable de visualización que contiene un...
  • Página 230: Forecolor: Color De Primer Plano Para La Rotulación Y Color De Dibujo Predeterminado

    Elementos gráficos y lógicos 9.5 SlEsGraphCustomWidget Parámetros: GraphVarName Nombre de la variable de visualización que contiene un SlEsGraphCustomWidget Return Value Color leído de la propiedad (QString) Value Valor que se debe ajustar (QString) como valor RGB en el formato "#RRGGBB", p. ej., "#04B7FB" ForeColor: color de primer plano para la rotulación y color de dibujo predeterminado Sintaxis: ReturnValue = ReadCWProperty(GraphVarName, "ForeColor")
  • Página 231: Cursorcolor: Color Del Cursor

    Elementos gráficos y lógicos 9.5 SlEsGraphCustomWidget Parámetros: GraphVarName Nombre de la variable de visualización que contiene un SlEsGraphCustomWidget Return Value Color leído de la propiedad (QString) Value Valor que se debe ajustar (QString) como valor RGB en el formato "#RRGGBB", p. ej., "#04B7FB" CursorColor: color del cursor Sintaxis: ReturnValue = ReadCWProperty(GraphVarName, "CursorColor")
  • Página 232: Cursory: Posición Y Del Cursor

    Elementos gráficos y lógicos 9.5 SlEsGraphCustomWidget CursorY: posición Y del cursor Sintaxis: ReturnValue = ReadCWProperty(GraphVarName, "CursorY") WriteCWProperty(GraphVarName, "CursorY", Value) Descripción: Posición Y del cursor. Parámetros: GraphVarName Nombre de la variable de visualización que contiene un SlEsGraphCustomWidget Return Value Valor leído de la propiedad (double) Value Valor que se desea ajustar (double) Nota...
  • Página 233: Viewmovezoommode: Comportamiento Al Ampliar Y Desplazar Mediante Gestos

    Elementos gráficos y lógicos 9.5 SlEsGraphCustomWidget ViewMoveZoomMode: comportamiento al ampliar y desplazar mediante gestos Sintaxis: ReturnValue = ReadCWProperty(GraphVarName, "ViewMoveZoomMode") WriteCWProperty(GraphVarName, "ViewMoveZoomMode", Value) Descripción: Es posible modificar la vista del SlEsGraphCustomWidgets mediante gestos. Esta propiedad permite definir de qué modo se desea permitir esto. Por ejemplo, en determinados casos de aplicación puede ser útil que la vista solo pueda despla‐...
  • Página 234 Elementos gráficos y lógicos 9.5 SlEsGraphCustomWidget Función Descripción setIntegralFillMode Mostrar puntos de un contorno en forma de polilínea/curva repaint, update Actualizar vista addPoint Agregar punto a un contorno addLine Agregar línea a un contorno addRect Agregar rectángulo a un contorno addRoundedRect Agregar rectángulo con esquinas redondeadas a un contorno addEllipse...
  • Página 235 Elementos gráficos y lógicos 9.5 SlEsGraphCustomWidget Ejemplo setView(-8, -5, 11, 20) AxisNameX = "X" AxisNameY = "Y" ScaleTextOrientationYAxis = 1 ScaleTextEmbedded = false KeepAspectRatio = false update Figura 9-11 Ejemplo: setView setMaxContourObjects: definir el número máximo de objetos de un contorno (búfer circular) Sintaxis: ReturnValue = CallCWMethod(GraphVarName, "setMaxContourObjects", Value) ReturnValue = CallCWMethod(GraphVarName, "setMaxContourObjects", Value,...
  • Página 236 Elementos gráficos y lógicos 9.5 SlEsGraphCustomWidget addContour: agregar contorno Sintaxis: ReturnValue = CallCWMethod(GraphVarName, "addContour", ContourName) ReturnValue = CallCWMethod(GraphVarName, "addContour", ContourName, Se‐ lected) ReturnValue = CallCWMethod(GraphVarName, "addContour", ContourName, Se‐ lected, AssignedY2) Descripción: Con esta función se crea un contorno nuevo. Opcionalmente puede asignar el contorno al sistema de coordenadas del segundo eje Y (derecha).
  • Página 237 Elementos gráficos y lógicos 9.5 SlEsGraphCustomWidget showAllContours: visibilizar todos los contornos Sintaxis: ReturnValue = CallCWMethod(GraphVarName, "showAllContours") Descripción: Esta función hace visibles todos los contornos. Parámetros: GraphVarName Nombre de la variable de visualización que contiene un SlEsGraphCustomWidget Return Value Errorcode (bool): TRUE = correcto hideAllContours: invisibilizar todos los contornos Sintaxis: ReturnValue = CallCWMethod(GraphVarName, "hideAllContours")
  • Página 238 Elementos gráficos y lógicos 9.5 SlEsGraphCustomWidget fitViewToContours: adaptación automática de la vista Sintaxis: ReturnValue = CallCWMethod(GraphVarName, "fitViewToContours") ReturnValue = CallCWMethod(GraphVarName, "fitViewToContours", OnlyVisi‐ ble) Descripción: Con esta función se adapta la vista automáticamente a los contornos. En función del parámetro de transferencia, se determina si serán visibles solo todos los con‐ tornos visibles o todos los contornos.
  • Página 239 Elementos gráficos y lógicos 9.5 SlEsGraphCustomWidget setPolylineMode: mostrar puntos de un contorno en forma de polilínea/curva Sintaxis: ReturnValue = CallCWMethod(GraphVarName, "setPolylineMode", SetPoly) Descripción: Todos los puntos agregados al contorno actual después de esta llamada de fun‐ ción se unen en una polilínea/curva. Esta función es específica de contorno y puede activarse o desactivarse por segmentos.
  • Página 240 Elementos gráficos y lógicos 9.5 SlEsGraphCustomWidget Ejemplo Figura 9-14 Ejemplo: setIntegralFillMode: activado Figura 9-15 Ejemplo: setIntegralFillMode: desactivado repaint, update: actualizar la vista Sintaxis: ReturnValue = CallCWMethod(GraphVarName, "repaint") ReturnValue = CallCWMethod(GraphVarName, "update") Descripción: Estas funciones permiten actualizar manualmente la vista. Parámetros: GraphVarName Nombre de la variable de visualización que contiene un SlEsGraphCustomWidget...
  • Página 241 Elementos gráficos y lógicos 9.5 SlEsGraphCustomWidget addPoint: agregar punto a un contorno Sintaxis: ReturnValue = CallCWMethod(GraphVarName, "addPoint", x, y) ReturnValue = CallCWMethod(GraphVarName, "addPoint", x, y, DummyPoint) Descripción: Agregar un punto al contorno seleccionado. Además puede definirse un punto de prueba (dummy) que no se dibujará, pero puede posicionarse con el cursor. Parámetros: GraphVarName Nombre de la variable de visualización que contiene un...
  • Página 242 Elementos gráficos y lógicos 9.5 SlEsGraphCustomWidget Parámetros: GraphVarName Nombre de la variable de visualización que contiene un SlEsGraphCustomWidget Return Value Errorcode (bool): TRUE = correcto Borde izquierdo (double) Borde superior (double) Borde superior (double) Borde superior (double) Radio (double) addEllipse: agregar elipse a un contorno Sintaxis: ReturnValue = CallCWMethod(GraphVarName, "addEllipse", x1, y1, x2, y2, radius) Descripción:...
  • Página 243 Elementos gráficos y lógicos 9.5 SlEsGraphCustomWidget Parámetros: GraphVarName Nombre de la variable de visualización que contiene un SlEsGraphCustomWidget Return Value Errorcode (bool): TRUE = correcto Borde izquierdo (double) Borde superior (double) Borde derecho (double) Borde inferior (double) StartAngle Ángulo inicial en grados (double) SpanAngle Ángulo de apertura en grados (double) addText: agregar texto a un contorno...
  • Página 244 Elementos gráficos y lógicos 9.5 SlEsGraphCustomWidget Parámetros: GraphVarName Nombre de la variable de visualización que contiene un SlEsGraphCustomWidget Return Value Errorcode (bool): TRUE = correcto style 1: línea continua (___) 2 : línea discontinua (_ _) 3: línea de puntos (...) 4 : Línea-punto-línea (_._) 5 : línea-punto-punto (_..) setPenColor: ajustar el color de dibujo...
  • Página 245 Elementos gráficos y lógicos 9.5 SlEsGraphCustomWidget Nota Esta función actualiza la vista automáticamente. setCursorPositionY2Cursor: posicionar el cursor referido al segundo eje Y (derecha) Sintaxis: ReturnValue = CallCWMethod(GraphVarName, "setCursorPositionY2", x, y2) Descripción: Posiciona el cursor en el lugar especificado referido al segundo eje Y (derecha). Parámetros: GraphVarName Nombre de la variable de visualización que contiene un...
  • Página 246 Elementos gráficos y lógicos 9.5 SlEsGraphCustomWidget Ejemplo Figura 9-16 Ejemplo: setCursorOnContour moveCursorOnContourBegin: posicionar el cursor en el primer objeto gráfico de un contorno Sintaxis: ReturnValue = CallCWMethod(GraphVarName, "moveCursorOnContourBegin") ReturnValue = CallCWMethod(GraphVarName, "moveCursorOnContourBegin", ContourName) Descripción: Partiendo de la posición actual del cursor dentro de un contorno, esta función permite navegar con el cursor hasta el primer objeto de punto de un contorno.
  • Página 247 Elementos gráficos y lógicos 9.5 SlEsGraphCustomWidget Nota Esta función actualiza la vista automáticamente. moveCursorOnContourNext: posicionar el cursor en el siguiente objeto gráfico de un contorno Sintaxis: ReturnValue = CallCWMethod(GraphVarName, "moveCursorOnContourNext") ReturnValue = CallCWMethod(GraphVarName, "moveCursorOnContourNext", ContourName) Descripción: Partiendo de la posición actual del cursor dentro de un contorno, esta función permite navegar con el cursor hasta el siguiente objeto de punto de un contorno.
  • Página 248: Señales

    Elementos gráficos y lógicos 9.5 SlEsGraphCustomWidget serialize: guardar/restablecer el estado actual Sintaxis: ReturnValue = CallCWMethod(GraphVarName, "serialize", FilePath, IsStoring) Descripción: En caso necesario, esta función permite escribir el estado actual y el contenido del SlEsGraphWidget en formato binario en un fichero o DataStream, así como resta‐ blecerlo.
  • Página 249: Slestouchbutton

    Elementos gráficos y lógicos 9.6 SlEsTouchButton Ejemplo DEF MyGraphVar = (W///,"slesgraphcustomwidget.SlEsGraphCustomWidget"///// 10,10,340,340/0,0,0,0) SUB(on_MyGraphVar_ViewChanged DLGL("Current view: " << SIGARG[0] << ", " << SIGARG[1] << ", " << SIGARG[2] << ", " << SIGARG[3] END_SUB SlEsTouchButton 9.6.1 SlEsTouchButton Generalidades Run MyScreens permite crear fácilmente aplicaciones de distinto grado de funcionalidad. En especial facilita la configuración de botones de libre ubicación para manejo táctil (TouchButtons).
  • Página 250 Elementos gráficos y lógicos 9.6 SlEsTouchButton Figura 9-17 Ejemplos de TouchButton Ejemplo //M(MyTBMask/"My CustomWidget TouchButton ...") DEF MyTB1 = (W///,"slesstdcw.SlEsTouchButton"/////70,20,200,100/0,0,0,0) LOAD WRITECWPROPERTY("MyTB1", "text", "This is my first TouchButton !!!") WRITECWPROPERTY("MyTB1", "textPressed", "This is my first TouchButton (pressed)!!!") WRITECWPROPERTY("MyTB1", "picture", "dsm_remove_trashcan_red.png") WRITECWPROPERTY("MyTB1", "pic- tureAlignment", "left") WRITECWPROPERTY("MyTB1", "scalePicture", FALSE) WRITECWPROPERTY("MyTB1", "picturePressed", "slsu_topology_empty_round_slot.png") WRITECWPRO-...
  • Página 251: Lectura Y Escritura De Propiedades

    Elementos gráficos y lógicos 9.6 SlEsTouchButton 9.6.2 Lectura y escritura de propiedades Descripción Las propiedades mencionadas en el siguiente capítulo se leen con la función ReadCWProperty() y se ajustan con WriteCWProperty(). Ejemplos Lectura de la propiedad "Text" del SlEsTouchButton conectado a través de la variable de visualización "MyTouchButton".
  • Página 252: Buttonstyle: Estilo De Representación

    Elementos gráficos y lógicos 9.6 SlEsTouchButton Propiedad Descripción BackgroundPicture Imagen de fondo visualizada BackgroundPictureAlignment Orientación de la imagen de fondo BackgroundPictureAlignmentString ScaleBackgroundPicture La imagen de fondo se escala (se expande o se contrae) BackgroundPictureKeepAspectRatio Comportamiento de expansión de la imagen BackColor Color de fondo cuando el TouchButton se encuentra en el estado no pulsado normal...
  • Página 253: Flat: Tipo De Representación

    Elementos gráficos y lógicos 9.6 SlEsTouchButton Figura 9-20 ButtonStyle: Específico del usuario Flat: Tipo de representación Sintaxis: ReturnValue = ReadCWProperty(TouchButtonVarName, "Flat") WriteCWProperty(TouchButtonVarName, "Flat", Value) Descripción: Lee o ajusta la representación plana (predeterminada) o en 3D del TouchButton. Nota: Esta propiedad solo está disponible con el estilo de representación (But‐ tonStyle) "1 = específico del usuario"...
  • Página 254: Checkable: Activar/Desactivar Función De Alternancia

    Elementos gráficos y lógicos 9.6 SlEsTouchButton Figura 9-23 TouchButton habilitado Figura 9-24 TouchButton inhabilitado Nota Al hacer clic en un TouchButton deshabilitado, se envía la señal "clickedDisabled". La señal se puede evaluar y, p. ej., se puede emitir un mensaje para explicar por qué el TouchButton y la función asociada a él no están habilitados en ese momento.
  • Página 255: Checked: Estado Actual De Alternancia

    Elementos gráficos y lógicos 9.6 SlEsTouchButton Checked: Estado actual de alternancia Sintaxis: ReturnValue = ReadCWProperty(TouchButtonVarName, "Checked") WriteCWProperty(TouchButtonVarName, "Checked", Value) Descripción: Lee o ajusta el estado actual de alternancia del TouchButton. Parámetros: TouchButtonVarName Nombre de la variable de visualización que contiene un SlEsTouchButton Return Value Valor leído de la propiedad (bool)
  • Página 256: Picturepressed: Imagen Visualizada En Estado Pulsado

    Elementos gráficos y lógicos 9.6 SlEsTouchButton Figura 9-27 ShowFocusRect Picture: Imagen visualizada Sintaxis: ReturnValue = ReadCWProperty(TouchButtonVarName, "Picture") WriteCWProperty(TouchButtonVarName, "Picture", Value) Descripción: Lee o ajusta la imagen que se mostrará cuando el TouchButton se encuentre en estado de reposo (no pulsado). Parámetros: TouchButtonVarName Nombre de la variable de visualización que contiene un SlEsTouchButton...
  • Página 257: Picturealignment: Orientación De La Imagen

    Elementos gráficos y lógicos 9.6 SlEsTouchButton En estado desactivado, la imagen visualizada se muestra automáticamente en escala de grises. Nota Ver también las propiedades "Text", "TextAlignedToPicture", "PictureAlignment", "ScalePicture", "PictureKeepAspectRatio". PictureAlignment: Orientación de la imagen Sintaxis: ReturnValue = ReadCWProperty(TouchButtonVarName, "PictureAlignment") WriteCWProperty(TouchButtonVarName, "PictureAlignment", Value) Descripción: Lee o ajusta la orientación de la imagen visualizada en el TouchButton.
  • Página 258: Picturekeepaspectratio: Escalar La Imagen Visualizada Manteniendo La Relación De Aspecto

    Elementos gráficos y lógicos 9.6 SlEsTouchButton Nota Ver capítulo Posicionamiento y orientación de imagen y texto (Página 272). Ver también las propiedades "Text", "TextAlignedToPicture", "PictureAlignment", "ScalePicture", "PictureKeepAspectRatio". ScalePicture: Escalar la imagen visualizada Sintaxis: ReturnValue = ReadCWProperty(TouchButtonVarName, "ScalePicture") WriteCWProperty(TouchButtonVarName, "ScalePicture", Value) Descripción: Lee o ajusta el escalado de la imagen visualizada en el TouchButton en función de la orientación.
  • Página 259: Text: Texto Visualizado

    Elementos gráficos y lógicos 9.6 SlEsTouchButton Text: Texto visualizado Sintaxis: ReturnValue = ReadCWProperty(TouchButtonVarName, "Text") WriteCWProperty(TouchButtonVarName, "Text", Value) Descripción: Lee o ajusta el texto que se mostrará cuando el TouchButton se encuentre en estado de reposo (no pulsado). Parámetros: TouchButtonVarName Nombre de la variable de visualización que contiene un SlEsTouchButton Return Value Valor leído de la propiedad (String)
  • Página 260 Elementos gráficos y lógicos 9.6 SlEsTouchButton Parámetros: TouchButtonVarName Nombre de la variable de visualización que contiene un SlEsTouchButton Return Value Valor leído de la propiedad (int) Value Valor que se desea ajustar (int): 1 = izquierda 2 = derecha 32 = arriba 64 = abajo 128 = centrado (predeterminado) (ver ejemplos abajo)
  • Página 261: Textalignmentstring: Orientación Del Texto

    Elementos gráficos y lógicos 9.6 SlEsTouchButton Nota Ver capítulo Posicionamiento y orientación de imagen y texto (Página 272). Ver también las propiedades "Text", "TextAlignmentString", "TextAlignedToPicture". TextAlignmentString: Orientación del texto Sintaxis: ReturnValue = ReadCWProperty(TouchButtonVarName, "TextAlignmentS‐ tring") WriteCWProperty(TouchButtonVarName, "TextAlignmentString", Value) Descripción: Lee o ajusta la orientación del texto. Esta propiedad tiene el mismo significado que la propiedad "TextAlignment".
  • Página 262: Backcolorchecked: Color De Fondo En Estado Enclavado

    Elementos gráficos y lógicos 9.6 SlEsTouchButton Nota Ver capítulo Posicionamiento y orientación de imagen y texto (Página 272). Ver también las propiedades "Text", "TextPressed", "Picture", "PicturePressed". BackColor: Color de fondo Sintaxis: ReturnValue = ReadCWProperty(TouchButtonVarName, " BackColor") WriteCWProperty(TouchButtonVarName, " BackColor", Value) Descripción: Lee o ajusta el color de fondo que se mostrará...
  • Página 263: Backcolorpressed: Color De Fondo En Estado Pulsado

    Elementos gráficos y lógicos 9.6 SlEsTouchButton BackColorPressed: Color de fondo en estado pulsado Sintaxis: ReturnValue = ReadCWProperty(TouchButtonVarName, "BackColorPressed") WriteCWProperty(TouchButtonVarName, " BackColorPressed", Value) Descripción: Lee o ajusta el color de fondo cuando el TouchButton se encuentra en estado pulsado. Parámetros: TouchButtonVarName Nombre de la variable de visualización que contiene un SlEsTouchButton Return Value Color leído de la propiedad (String)
  • Página 264: Textcolorchecked: Color Del Texto En Estado Enclavado

    Elementos gráficos y lógicos 9.6 SlEsTouchButton Parámetros: TouchButtonVarName Nombre de la variable de visualización que contiene un SlEsTouchButton Return Value Color leído de la propiedad (String) Value Valor que se debe ajustar (String) como valor RGB en el formato "#RRGGBB", p.
  • Página 265: Textcolordisabled: Color Del Texto En Estado Desactivado

    Elementos gráficos y lógicos 9.6 SlEsTouchButton Nota Esta propiedad solo está disponible con el estilo de representación "1 = específico del usuario" activado. TextColorDisabled: Color del texto en estado desactivado Sintaxis: ReturnValue = ReadCWProperty(TouchButtonVarName, "TextColorDisabled") WriteCWProperty(TouchButtonVarName, "TextColorDisabled", Value) Descripción: Lee o ajusta el color del texto cuando el TouchButton se encuentra en estado desactivado.
  • Página 266: Backgroundpicturealignment: Orientación De La Imagen De Fondo

    Elementos gráficos y lógicos 9.6 SlEsTouchButton En estado desactivado, la imagen de fondo se muestra automáticamente en escala de grises. Nota Ver capítulo Utilizar imágenes/gráficos (Página 65). Ver también las propiedades "BackgroundPictureAlignment", "ScaleBackgroundPicture", "BackgroundPictureKeepAspectRatio". BackgroundPictureAlignment: Orientación de la imagen de fondo Sintaxis: ReturnValue = ReadCWProperty(TouchButtonVarName, "BackgroundPictureA‐...
  • Página 267: Scalebackgroundpicture: Escalar La Imagen De Fondo

    Elementos gráficos y lógicos 9.6 SlEsTouchButton Parámetros: TouchButtonVarName Nombre de la variable de visualización que contiene un SlEsTouchButton Return Value Valor leído de la propiedad (int) Value Valor que se desea ajustar (int): "Left" = izquierda "Right" = derecha "Top" = arriba "Bottom"...
  • Página 268: Funciones

    Elementos gráficos y lógicos 9.6 SlEsTouchButton Parámetros: TouchButtonVarName Nombre de la variable de visualización que contiene un SlEsTouchButton Return Value Valor leído de la propiedad (bool) Value Valor que se desea ajustar (bool): TRUE (predetermina‐ do) o FALSE Nota Ver capítulo Posicionamiento y orientación de imagen y texto (Página 272). 9.6.4 Funciones Las funciones que se indican a continuación pueden llamarse con la función CallCWMethod().
  • Página 269: Señales

    Elementos gráficos y lógicos 9.6 SlEsTouchButton Parámetros: TouchButtonVarName Nombre de la variable de visualización que contiene un SlEsTouchButton Return Value Errorcode (bool): TRUE = correcto left margen izquierdo (int) margen superior (int) right margen derecho (int) bottom margen inferior (int) center Distancia entre imagen y texto (int) si la alineación no es "center"...
  • Página 270 Elementos gráficos y lógicos 9.6 SlEsTouchButton • Si un TouchButton está habilitado y no es conmutable, al accionarlo se envía la señal "clicked". • Si un TouchButton está habilitado y es conmutable, al accionarlo se envía la siguiente secuencia de señales: "checked"...
  • Página 271 Elementos gráficos y lógicos 9.6 SlEsTouchButton checked: Conmutación de un TouchButton Sintaxis: SUB(on_<TouchButtonVarName>_checked) … END_SUB Descripción: Se ha pulsado un botón conmutable, por lo que su estado se ha modificado. Parámetros: TouchButtonVarName Nombre de la variable de visualización que contiene un SlEsTouchButton SIGARG[0] Devuelve el estado de alternancia del TouchButton (bool)
  • Página 272: Posicionamiento Y Orientación De Imagen Y Texto

    Elementos gráficos y lógicos 9.6 SlEsTouchButton 9.6.6 Posicionamiento y orientación de imagen y texto Posicionamiento de imágenes Con la orientación (alignment) especificada se posiciona una imagen de la siguiente manera: • En el primer paso se determina la imagen adecuada para la resolución actual del directorio de resolución correspondiente.
  • Página 273 Elementos gráficos y lógicos 9.6 SlEsTouchButton La pantalla se representa entonces del modo siguiente: • Propiedad "scalePicture": FALSE La imagen se reproduce en el lugar indicado sin escalado. Hay que procurar que la imagen original no sea demasiado grande para que pueda visualizarse por completo dentro del TouchButton.
  • Página 274: Textos Dependientes Del Idioma

    Elementos gráficos y lógicos 9.6 SlEsTouchButton Posicionamiento del texto El texto se posiciona de la siguiente manera en función de la propiedad "textAlignedToPicture": • Propiedad "textAlignedToPicture": FALSE El texto se muestra centrado en vertical y horizontal en la MarginArea. Figura 9-39 textAlignedToPicture FALSE •...
  • Página 275 Elementos gráficos y lógicos 9.6 SlEsTouchButton //M(MyTBMask/"My CustomWidget TouchButton ...") DEF MyTB1 = (W///,"slesstdcw.SlEsTouchButton"/////70,20,200,100/0,0,0,0) WRITECWPROPERTY("MyTB1", "text", $85000) END_LOAD LANGUAGE WRITECWPROPERTY("MyTB1", "text", $85000) END_LANGUAGE En los textos se introducen automáticamente saltos de línea en los límites de palabras en el recuadro disponible. El salto de línea forzado solo es posible si el texto visualizado procede de un fichero de idioma.
  • Página 276 Elementos gráficos y lógicos 9.6 SlEsTouchButton SINUMERIK Integrate Run MyScreens Manual de programación, 10/2020, A5E40869575E AE...
  • Página 277: Campo De Manejo "Custom

    Activar campo de manejo "Custom" El campo de manejo "Custom" no está activado en el momento de la entrega. 1. Copie primero el fichero "slamconfig.ini" del directorio [Directorio Siemens del sistema]/cfg al [Directorio OEM del sistema]/cfg o, análogamente, al [Directorio de addon del sistema]/cfg o [Directorio de usuario del sistema]/cfg.
  • Página 278: Procedimiento Para Configurar El Campo De Manejo "Custom

    Configurar el pulsador de menú para el campo de manejo "Custom" Para configurar el campo de manejo, necesita los ficheros "easyscreen.ini" y "custom.ini". En el directorio [Directorio Siemens del sistema]/templates/cfg se encuentran plantillas para ambos ficheros. 1. Copie primero los ficheros en el directorio [Directorio OEM del sistema]/cfg y realice allí las modificaciones.
  • Página 279 Campo de manejo "Custom" 10.3 Procedimiento para configurar el campo de manejo "Custom" 3. El fichero de proyecto "custom.com" se crea en el directorio [Directorio OEM del sistema]/ proj. En él está incluida la configuración, que se crea de forma análoga al fichero "aeditor.com"...
  • Página 280: Ejemplo De Programación Para El Campo "Custom

    Campo de manejo "Custom" 10.4 Ejemplo de programación para el campo "Custom" 10.4 Ejemplo de programación para el campo "Custom" Ejemplo Figura 10-1 Ejemplo con el pulsador de menú "Start example" SINUMERIK Integrate Run MyScreens Manual de programación, 10/2020, A5E40869575E AE...
  • Página 281: Lista De Ficheros

    Campo de manejo "Custom" 10.4 Ejemplo de programación para el campo "Custom" Figura 10-2 Ejemplo con mapa de bits y campos de texto Lista de ficheros Se necesitan los siguientes ficheros: • "custom.com" • "easyscreen.ini" Programación Contenido del fichero "custom.com": Nota El fichero gráfico "mcp.png"...
  • Página 282 Campo de manejo "Custom" 10.4 Ejemplo de programación para el campo "Custom" //END //M(Maske4/"Example: MCP"/"mcp.png") DEF byte=(I/0/0/"Input byte=0 (default)","Byte number:",""/wr1,li1///380,40,100/480,40,50) DEF Feed=(IBB//0/"","Feed override",""/wr1//"EB3"/20,180,100/130,180,100), Axistop=(B//0/"","Feed stop",""/wr1//"E2.2"/280,180,100/380,180,50/100) DEF Spin=(IBB//0/"","Spindle override",""/wr1//"EB0"/20,210,100/130,210,100), spinstop=(B// 0/"","Spindle stop",""/wr1//"E2.4"/280,210,100/380,210,50/100) DEF custom1=(IBB//0/""," User keys 1",""/wr1//"EB7.7"/20,240,100/130,240,100) DEF custom2=(IBB//0/"","User keys 2",""/wr1//"EB7.5"/20,270,100/130,270,100) DEF By1 DEF By2 DEF By3...
  • Página 283 Campo de manejo "Custom" 10.4 Ejemplo de programación para el campo "Custom" By7=7 END_LOAD PRESS(HS1) Byte.wr=2 END_PRESS CHANGE(Byte) By1=byte+1 By2=byte+2 By3=byte+3 By6=byte+6 By7=byte+7 Feed.VAR="EB"<<By3 Spin.VAR="EB"<<Byte Custom1.VAR="EB"<<By6 Custom2.VAR="EB"<<By7 Axisstop.VAR="E"<<By2<<".2" Spinstop.VAR="E"<<By2<<".4" Byte.wr=1 END_CHANGE CHANGE(Axis stop) IF Axistop==0 Axistop.BC=9 ELSE Axistop.BC=11 ENDIF END_CHANGE CHANGE(Spin stop) IF Spinstop==0 Spinstop.BC=9...
  • Página 284 Campo de manejo "Custom" 10.4 Ejemplo de programación para el campo "Custom" SINUMERIK Integrate Run MyScreens Manual de programación, 10/2020, A5E40869575E AE...
  • Página 285: Selección De Diálogos

    Selección de diálogos 11.1 Selección de diálogos mediante pulsadores de menú de PLC Configuración Descripción del procedimiento: • En "systemconfiguration.ini" existe una sección [keyconfiguration]. La entrada especifica una acción para un pulsador de menú de PLC especial. • Se indica como acción un número que, si es mayor o igual que 100, se trata de una llamada de "Run MyScreens".
  • Página 286: Llamada De Máscaras De Ciclo Run Myscreens En El Editor De Programas

    Selección de diálogos 11.1 Selección de diálogos mediante pulsadores de menú de PLC La configuración de los comandos LM y LS, que deben ejecutarse al recibir los pulsadores de menú de PLC correspondientes, se realiza en el fichero "easyscreen.ini", concretamente en secciones cuyo nombre tiene el patrón siguiente: La primera parte del nombre, "areaname", designa el campo de [areaname_dialogname]...
  • Página 287: Procedimiento

    //M{ MASK_E_DR_O1_MAIN, HD=$85305, LANGFILELIST=" drilling.txt", PLC_ID=9876} Ver también: Manual de funciones SINUMERIK 840D sl Funciones básicas Estado del editor de programas en la interfaz OA Se puede consultar el estado del editor de programas mediante la variable local de CAP "/Hmi/ StepEditorInfo".
  • Página 288: Selección De Diálogos Mediante Hardkeys De Plc

    Selección de diálogos 11.2 Selección de diálogos mediante hardkeys de PLC 11.2 Selección de diálogos mediante hardkeys de PLC Campo de aplicación Desde el PLC pueden iniciarse en el software de manejo las siguientes funciones: • Selección de campo de manejo •...
  • Página 289 Selección de diálogos 11.2 Selección de diálogos mediante hardkeys de PLC Las entradas del fichero de configuración "systemconfiguration.ini" pueden complementarse con ajustes específicos del usuario. Para ello están disponibles los directorios [Directorio de usuario del sistema]/cfg y [Directorio OEM del sistema]/cfg. Las líneas para la configuración de los eventos de hardkey tienen la siguiente estructura: KEYx.n = area:=area, dialog:=dialog, screen:=screen, forms:=form, menus:=menu,...
  • Página 290: Selección De Diálogos A Través Del Cn

    KEY55.0 = name := AreaStartup, dialog := SlSuDialog KEY56.0 = name := Custom, dialog := SlEsCustomDialog El identificador del área y del cuadro de diálogo se indican en "systemconfiguration.ini" en [Directorio Siemens del sistema]/cfg. 11.3 Selección de diálogos a través del CN Comando MMC en HMI Operate Los comandos MMC pueden utilizarse como se describe a continuación:...
  • Página 291: Ejemplos De Máscaras De Ciclo

    Ejemplos de máscaras de ciclo Al instalar SINUMERIK Operate se guardan también algunos ejemplos de máscaras de ciclo creadas con Run MyScreens. Encontrará los ejemplos de Run MyScreens en las siguientes rutas de almacenamiento: [Directorio Siemens del sistema] ...\siemens\sinumerik\hmi\template\easyscreen\ standard\ Pantallas de ayuda, PNG...
  • Página 292 Ejemplos de máscaras de ciclo 12.1 Ejemplos de máscaras de ciclo SINUMERIK Integrate Run MyScreens Manual de programación, 10/2020, A5E40869575E AE...
  • Página 293: Configuración En Sidescreen

    La configuración de Run MyScreens se agrega a una página de Sidescreen incluida en el volumen de suministro de SIEMENS. Este caso coincide con el punto 2 hasta la página de Sidescreen afectada. 4. Agregar una o varias configuraciones de Run MyScreens a un elemento Sidescreen.
  • Página 294: Visualización De Una Configuración De Run Myscreens En Una Página De Sidescreen

    Configuración en Sidescreen 13.1 Visualización de una configuración de Run MyScreens en una página de Sidescreen 13.1 Visualización de una configuración de Run MyScreens en una página de Sidescreen Para visualizar una configuración de Run MyScreens en una página (aparte) de Sidescreen, debe agregarse una nueva página de Sidescreen a la configuración de Sidescreen existente ("slsidescreen.ini").
  • Página 295 • El número de página (en este caso, "100") debe incrementarse en función de las páginas de Sidescreen existentes. El número de la página debe ser mayor o igual que 100. De este modo se evitan conflictos con las páginas de SIEMENS. • El nombre de la página (en este caso, "RMSPage") se puede elegir libremente.
  • Página 296: Visualización De Varias Configuraciones De Run Myscreens En Una Página De Sidescreen

    Configuración en Sidescreen 13.2 Visualización de varias configuraciones de Run MyScreens en una página de Sidescreen 13.2 Visualización de varias configuraciones de Run MyScreens en una página de Sidescreen Para visualizar varias configuraciones de Run MyScreens en una página (aparte) de Sidescreen, deben configurarse los llamados elementos Sidescreen, además de la página de Sidescreen.
  • Página 297 • El número de página (en este caso, "100") debe incrementarse en función de las páginas de Sidescreen existentes. El número de la página debe ser mayor o igual que 100. De este modo se evitan conflictos con las páginas de SIEMENS. • El nombre de la página (en este caso, "RMSPage") se puede elegir libremente.
  • Página 298: Agregar Configuraciones De Run Myscreens A Una Página De Sidescreen

    Agregar configuraciones de Run MyScreens a una página de Sidescreen Nota De las páginas de Sidescreen incluidas en el volumen de suministro de SIEMENS, solo puede ampliar WidgetsPage (ver fichero "slsidescreen.ini") con configuraciones de Run MyScreens. SINUMERIK Integrate Run MyScreens...
  • Página 299: Agregar Configuraciones De Run Myscreens A Un Elemento Sidescreen

    • Para nuevos elementos, utilice números a partir del 100, inclusive. De este modo se evitan conflictos con los elementos de visualización de SIEMENS. RMSElement se inserta en WidgetsPage de acuerdo con esta numeración por debajo de los elementos SIEMENS.
  • Página 300 Configuración en Sidescreen 13.4 Agregar configuraciones de Run MyScreens a un elemento Sidescreen TextContext=rmstexts TextContext=rmstexts WIDGET001= name:=RMSWidget001, implementation:=sleseasyscreen.SlEsSideScreenWidget WIDGET002= name:=RMSWidget002, implementation:=sleseasyscreen.SlEsSideScreenWidget • Si se utiliza la implementación SlSideScreenElement para el elemento Sidescreen (ver sección [Page_RMSPage]), el elemento Sidescreen tiene una línea de título en la que puede visualizarse un texto.
  • Página 301: Indicaciones Sobre La Ejecución De Configuraciones De Run Myscreens En Sidescreen

    Configuración en Sidescreen 13.5 Indicaciones sobre la ejecución de configuraciones de Run MyScreens en Sidescreen • Los nombres de las secciones de configuración de los widgets Sidescreen se forman añadiendo el nombre del widget que debe configurarse en esta sección tras el prefijo "Widget_".
  • Página 302 Configuración en Sidescreen 13.5 Indicaciones sobre la ejecución de configuraciones de Run MyScreens en Sidescreen SINUMERIK Integrate Run MyScreens Manual de programación, 10/2020, A5E40869575E AE...
  • Página 303: Configuración En El Display Manager

    Configuración en el Display Manager 14.1 Visualización de configuraciones de Run MyScreens en el Display Manager Dispone del cuadro de diálogo SlSideScreenDialog para visualizar configuraciones de Run MyScreens en el Display Manager: En este cuadro de diálogo pueden mostrarse una o varias páginas de Sidescreen, en función del espacio disponible (ver IM9, capítulo 3.13).
  • Página 304: 14.3 Integración En Siwidgetsapp

    Integración en SIWidgetsApp A continuación se describe la integración de una configuración de Run MyScreens en la aplicación SlWidgetsApp, incluida en el volumen de suministro de SIEMENS. En función de la página/columna de la aplicación SlWidgetsApp en la que deba integrarse la configuración de Run MyScreens, deberá...
  • Página 305: Indicaciones Sobre La Ejecución De Configuraciones De Run Myscreens En El Display Manager

    Nota Para nuevos elementos, utilice números a partir del 100, inclusive. De este modo se evitan conflictos con los elementos de visualización de SIEMENS. RMSElement se inserta en WidgetsPage de acuerdo con esta numeración por debajo de los elementos SIEMENS.
  • Página 306 Configuración en el Display Manager 14.4 Indicaciones sobre la ejecución de configuraciones de Run MyScreens en el Display Manager • Si se ejecutan las configuraciones de Run MyScreens en una página de Sidescreen, se dispone de toda la superficie de la página para la visualización. Si la ejecución se produce en los widgets o elementos Sidescreen, el sistema especifica en contexto la superficie disponible para la visualización.
  • Página 307: Listas De Referencia

    Listas de referencia Listas de los pulsadores de menú de inicio A.1.1 Lista de los pulsadores de menú de inicio para torneado Campo de manejo Programa para torneado HSK1 HSK2 HSK3 HSK4 HSK5 HSK6 HSK7 HSK8 Editar Taladrar Tornear Tornear con‐ Fresar Otros Simulación...
  • Página 308: Lista De Los Pulsadores De Menú De Inicio Para Fresado

    Listas de referencia A.1 Listas de los pulsadores de menú de inicio VSK7 Posiciones Ranurar d/i Mat. rest. resto saliente VSK8 Repetir posi‐ >> << Fresado << >> << ción del contor‐ Pulsadores de menú de inicio de ShopTurn: Taladrar Tornear Tornear contorno Fresar...
  • Página 309 Listas de referencia A.1 Listas de los pulsadores de menú de inicio Fresado En las tablas siguientes se muestran los pulsadores de menú de inicio posibles para la tecnología de fresado. Las asignaciones de determinados pulsadores de menú de inicio pueden variar debido a las características del sistema.
  • Página 310: A.2 Lista De Los Pulsadores De Menú Predefinidos

    SOFTKEY_NAV_BACK Lista de los niveles de acceso Los diferentes niveles de acceso tienen el siguiente significado: Nivel de protec‐ Bloqueado por Área ción Reservado para Siemens Contraseña Fabricante de la máquina Contraseña Servicio técnico Contraseña Usuario Interruptor de llave posición 3 Programador, preparador Interruptor de llave posición 2...
  • Página 311: A.4 Lista De Los Colores

    Listas de referencia A.4 Lista de los colores Lista de los colores Colores del sistema Para la configuración de diálogos se dispone de una tabla de colores unitaria (algunos de los colores estándar correspondientes). Para un elemento (texto, campo de entrada, fondo, etc.) se puede seleccionar uno de los siguientes colores, que pueden encontrarse entre 0 y 133.
  • Página 312: A.5 Lista De Códigos De Idioma En El Nombre Del Fichero

    Listas de referencia A.5 Lista de códigos de idioma en el nombre del fichero Índice Pictograma Cambiar Descripción del color Turquesa Color de fondo de un campo de alternancia Azul claro Color de fondo del cuadro de lista Lista de códigos de idioma en el nombre del fichero Idiomas admitidos Idiomas estándar: Idioma...
  • Página 313: A.6 Lista De Las Variables De Sistema Accesibles

    Listas de referencia A.7 Comportamiento al abrir el cuadro de diálogo (atributo CB) Idioma Abreviatura en el nombre del fichero Húngaro Vietnamita Lista de las variables de sistema accesibles Bibliografía Manual de listas Variables del sistema /PGAsl/ Comportamiento al abrir el cuadro de diálogo (atributo CB) La siguiente tabla le da una vista general de las condiciones en las que se llama al método CHANGE.
  • Página 314 Listas de referencia A.7 Comportamiento al abrir el cuadro de diálogo (atributo CB) Condición Reacción Tipo Variable de sistema o Valor predetermi‐ Ejecutar método CHAN‐ de usuario nado Campo de Sí Sí Sí Con la variable de CN/PLC configu‐ alternancia rada se obtiene siempre al menos una llamada automática del méto‐...
  • Página 315: Sugerencias Y Trucos

    Sugerencias y trucos Sugerencias generales • En la medida de lo posible, se utiliza la variante BTSS para variables de sistema (variables $). Motivo: Así se evita, en determinadas circunstancias, una laboriosa resolución del nombre. Ejemplo: En lugar de "$R[10]" se utiliza preferiblemente "/Channel/Parameter/R[u1,10]". •...
  • Página 316: B.2 Consejos Para La Depuración

    Sugerencias y trucos B.3 Consejos para el método CHANGE • Deben reemplazarse varias funciones RNP() sucesivas por una función MRNP()-. Deben reemplazarse varias funciones RDOP() sucesivas por una función MRDOP(). Motivo: Reducción de la carga de comunicación y aumento del rendimiento. •...
  • Página 317: B.4 Consejos Sobre Bucles Do-Loop

    Sugerencias y trucos B.4 Consejos sobre bucles DO-LOOP Ejemplo: con cada cambio del movimiento del eje por RNP() se efectúa una resolución de nombres para leer un dato de máquina específico del canal: DEF AXIS_POSITION_X = (R///,""///"$AA_IM[X]") CHANGE(AXIS_POSITION_X) DLGL("Axis """ << RNP("$MC_AXCONF_GEOAX_NAME_TAB[0]") << """ se ha movido: "...
  • Página 318 Sugerencias y trucos B.4 Consejos sobre bucles DO-LOOP Asimismo debe utilizarse, p. ej., un registro (REG[]) como variable de proceso, ya que las variables de visualización normales (en particular las ligadas a BTSS) pueden afectar al rendimiento del sistema a causa de la extremada frecuencia de actualización o de procesos de escritura.
  • Página 319: Elementos Animados

    Elementos animados Introducción Introducción El manual describe el trabajo con el visor de X3D, el cual permite integrar escenas gráficas (elementos animados) con o sin movimiento –en lo sucesivo denominadas pantallas de ayuda– en la interfaz gráfica de SINUMERIK Operate a partir de la versión V4.7 SP1. Existe la posibilidad de representar secuencias de movimiento y parámetros concretos en pantallas de ayuda contextual.
  • Página 320: C.2 Modelado

    Elementos animados C.2 Modelado Formato de fichero Descripción .fxw Fichero de gráficos de Vivaty Studio .x3d Fichero modelo en formato de intercambio .xml Fichero de definición para animaciones y escenas .hmi Fichero de salida para el visor de X3D Modelado C.2.1 Requisitos El objetivo del modelado es crear un fichero con los modelos 3D generados en el formato .x3d,...
  • Página 321 Elementos animados C.2 Modelado 4. Para ocultar los grupos, los valores de transformación deben ajustarse del siguiente modo: x = 1000000, y = 1000000 y z = 1000000 5. Los siguientes elementos deben tener el mismo nombre en los modelos gráficos de Vivaty Studio que en las definiciones de escenas XML (a este respecto, ver capítulo Vista general (Página 327)).
  • Página 322 Elementos animados C.2 Modelado 7. Para textos se recomiendan los siguientes ajustes (ver también el diálogo a continuación): – Los textos siempre deben alinearse en el centro. – El tamaño del texto debe ser 0.2. De este modo resulta fácil posicionar correctamente el texto.
  • Página 323: C.2.3 Importación De Gráficos (Modelos)

    Elementos animados C.2 Modelado 8. Para crear un sombreado utilice el fichero schnitt.png como textura. Las líneas siempre van de abajo arriba y de izquierda a derecha en un ángulo de 45°. Se recomienda ajustar el escalado a 3 en ambas dimensiones. La rotación depende del tipo de diseño y debe adaptarse manualmente.
  • Página 324 Elementos animados C.2 Modelado El comando de menú Create -> Create Inline permite insertar el objeto. El nombre de fichero se indica a continuación en las propiedades del objeto. Figura C-5 Importación mediante el objeto "Inline" SINUMERIK Integrate Run MyScreens Manual de programación, 10/2020, A5E40869575E AE...
  • Página 325: Importación De Datos Modelo 3D

    Elementos animados C.2 Modelado Importación de datos modelo 3D Para importar datos modelo desde un fichero, proceda del siguiente modo. 1. Abra el diálogo "Flux Studio Accutrans3D Translation Utility" a través del comando de menú File -> Import Other Format. 2.
  • Página 326 Elementos animados C.2 Modelado Plantilla Descripción rapid_traverse_line_vert.fxw Línea vertical para ilustrar el recorrido de desplaza‐ miento de la herramienta en rápido feed_traverse_line_hori.fxw Línea horizontal para ilustrar la trayectoria de la herramienta en avance feed_traverse_line_vert.fxw Línea vertical para ilustrar la trayectoria de la he‐ rramienta en avance dimensioning_lines_hori.fxw Líneas auxiliares de dimensión horizontales...
  • Página 327: C.3 Comandos Xml

    Elementos animados C.3 Comandos XML Comandos XML C.3.1 Vista general Para que el visor de X3D pueda acceder a los gráficos se necesita el fichero de descripción de escenas (*.xml). En el fichero de descripción de escenas se asignan los nombres de escena que se llaman desde la configuración a los tiempos del fichero *.x3d (TimeSensor) en los que se encuentran los gráficos.
  • Página 328 Elementos animados C.3 Comandos XML <!-- Adaptar la velocidad de la herramienta --> <ToolSpeedFactors planeSpeedFactor="0.4" rapidSpeedFactor="0.7" reducedSpeedFac¬tor="1.0"/> Descripción <ToolSpeedFactors Si es necesario modificar las velocidades de la herramienta, puede agregarse esta entrada. planeSpeedFactor="0.4" Factor para la velocidad de avance (0.4 = 40%) rapidSpeedFactor="0.7"...
  • Página 329 Elementos animados C.3 Comandos XML Descripción <Element name='1' Indica que se trata del primer elemento de la animación. time='0.110' Instante del primer elemento en el TimeSensor feed='rapid' Velocidad de desplazamiento del elemento plane = avance de mecanizado rapid = rápido reduced = velocidad reducida, más lento que "plane"...
  • Página 330: C.3.3 Simetrías Y Rotaciones

    Elementos animados C.3 Comandos XML Descripción <SceneKeyname=’Z1abs' Nombre de la imagen time='0,066' Instante de la pantalla en el TimeSensor view='camside' Cámara que se utiliza para la pantalla type="VIEW_SIDE" El tipo de vista determina la vista (ver capítu‐ lo Tipo de vista (Página 331)) highLightedGroup='dad_Z1abs'/>...
  • Página 331: C.3.4 Tipo De Vista

    Elementos animados C.4 Conversión a fichero hmi Ejemplos mirror="RotatePieceZ=180” mirror="RotatePieceZ=-90 MirrorScreenX" mirror="RotateScreenY=90" mirror="MirrorPieceX MirrorPieceY” mirror="MirrorPieceZ RotatePieceX=-90” C.3.4 Tipo de vista Con el tipo de vista se determinan las vistas. Las vistas se basan en valores empíricos y reglas que permiten representar convenientemente los objetos. De esta forma se garantiza que los objetos se representen de acuerdo con los ajustes del sistema de coordenadas de la interfaz de usuario (MD 52000 $MCS_DISP_COORDINATE_SYSTEM o bien MD 52001 $MCS_DISP_COORDINATE_SYSTEM_2).
  • Página 332: C.5 Visualización En Create Myhmi/3Gl

    Elementos animados C.5 Visualización en Create MyHMI/3GL Visualización en Create MyHMI/3GL C.5.1 Visor de X3D Para representar pantallas de ayuda concretas en una aplicación OA propia se debe integrar el widget del visor de X3D en dicha aplicación OA. El widget del visor de X3D ofrece interfaces que permiten presentar contenidos en X3D dentro del HMI.
  • Página 333: C.5.4 Slots Públicos

    Elementos animados C.5 Visualización en Create MyHMI/3GL C.5.4 Slots públicos void viewSceneSlot ( const QString& rsFileName, const QString& rsScene, const QString& rsAnimationScene, int nChannel, int nPlane, SlStepTechnology nTechnology ) Con el método viewSceneSlot se le indica al visor de X3D que debe cargar la escena estática rsScene y la escena animada rsAnimationSzene del fichero rsFileName y representarlas intercaladas.
  • Página 334: C.5.5 Librerías

    Elementos animados C.6 Visualización en Run MyScreens C.5.5 Librerías Para poder utilizar el visor de X3D en proyectos propios es necesario agregar la entrada 'slx3dviewer.lib' a la lista de dependencias de librerías. C.5.6 Ejemplo de implementación Encontrará un ejemplo de implementación en el paquete Create MyHMI/3GL, en \examples \GUIFrameWork\SlExGuiX3D.
  • Página 335 Elementos animados C.6 Visualización en Run MyScreens //M(MASK_F_DR_O1_MAIN/$85407////52,80/XG1) Para controlar las diferentes pantallas de ayuda se necesitan los siguientes parámetros, cuyo significado se describe en el capítulo 5.3 Slots públicos: 1. Nombre de fichero 2. StaticScene (opcional) 3. AnimationScene (opcional) 4.
  • Página 336 Elementos animados C.6 Visualización en Run MyScreens SINUMERIK Integrate Run MyScreens Manual de programación, 10/2020, A5E40869575E AE...
  • Página 337: Índice Alfabético

    Elemento de diálogo, 60 códigos de idioma, 312 ELLIPSE (definición de círculo), 194 Alcance estándar, 9 ELLIPSE (definición de elipse), 194 Aplicación "Siemens Industry Online Support", 13 Enviar feedback, 11 Árbol de manejo, 37 Estado de las variables, 85 Atributos, 95...
  • Página 338 Índice alfabético FORMAT (string), 187 WHILE, 188 GC (Generate Code), 157 WNP (Write NC PLC Variable), 171 HIDE_GRAPHIC, 197 WRFILE, 145 HMI_LOGIN, 159 WRLINEFILE), 145 HMI_LOGOFF, 160 Funciones matemáticas, 118 HMI_SETPASSWD, 160 Funciones trigonométricas, 118 INSTR (string), 182 LA (Load Array), 160 LB (Load Block), 162 leer y escribir parámetros de accionamiento, 135 Generar código de CN, 157...
  • Página 339 Reglamento general de protección de datos, 14 ScaleTextOrientationYAxis, 226 SelectedContour, 229 serialize, 248, 269 setCursorOnContour, 245 setCursorPosition, 244 Servicios de PI, 134 setCursorPositionY2Cursor, 245 Siemens Industry Online Support setFillColor, 244 App, 13 setIntegralFillMode, 239 SIEsButton setMargins, 268 Resumen de propiedades, 251 setMaxContourObjects, 235...
  • Página 340 Índice alfabético setPenStyle, 243 SlEsGraphCustomWidget setPenWidth, 243 Lectura y escritura de propiedades, 222 setPolylineMode, 239 SlEsTouchButton setView, 234 Lectura y escritura de propiedades, 251 showAllContours, 237 slhlp.xml, 80 showContour, 236 Slots públicos, 333 ShowCursor, 231 SlX3dViewerWidget, 332 ViewChanged, 248 Subdiálogo, 163 ViewMoveZoomMode, 233 Subprograma, 134 SIEsTouchButton, (Textos dependientes del idioma)
  • Página 341 Índice alfabético Modificación de la propiedad, 99 parámetros, 93 S_ALEVEL, 113 S_CHAN, 113 S_CONTROL, 114 S_LANG, 114 S_NCCODEREADONLY, 115 S_RESX, 115 S_RESY, 115 transferir, 150 Variable auxiliar, 86 Variable de CN Escribir, 171 Leer, 171 Variable de PLC Escribir, 171 Leer, 171 Variable de sistema, 87, 97 Variable de usuario, 97...
  • Página 342 Índice alfabético SINUMERIK Integrate Run MyScreens Manual de programación, 10/2020, A5E40869575E AE...

Este manual también es adecuado para:

Sinumerik integrate runMyscreens

Tabla de contenido