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...
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...
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 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ú...
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á...
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).
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...
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á...
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: •...
• 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...
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...
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)
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...
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...
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...
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ú...
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.
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...
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"> </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>...
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"...
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...
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.
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 ..
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ú...
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 →...
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.
• [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...
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...
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.
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) •...
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ú...
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...
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 ⑥...
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.
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.
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: •...
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"...
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.
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.
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.
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.
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=...
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á...
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...
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...
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).
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...
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...
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: •...
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...
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.
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.
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á...
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...
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 •...
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.
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<<"]"...
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.
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.
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).
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.
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...
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.º...
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...
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"...
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.
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).
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.
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. •...
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)
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.
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...
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á...
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...
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"...
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...
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...
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...
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...
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.
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.
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.
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.
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ú...
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...
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.
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...
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.
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.
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.
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) ;...
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.
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‐...
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...
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.
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 ;...
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") ;...
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...
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")
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) ;...
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: ;...
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.
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"...
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")
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 >...
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.
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:...
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"...
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...
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.
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.
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"...
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.
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.
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] ] )
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.
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ú...
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.
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].
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...
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()
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...
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...
Í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.
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 ;...
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.
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...
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")
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...
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 •...
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)
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!", "...
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 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...
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...
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).
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.
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...
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.
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:...
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...
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.
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 %.
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...
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.
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"...
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"...
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...
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:...
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.
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‐...
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.
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".
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:...
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‐...
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: •...
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á...
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...
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")
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")
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...
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.
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.
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".
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...
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"...
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.
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)
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...
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.
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.
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)
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".
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á...
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)
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.
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.
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‐...
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"...
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().
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)
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.
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...
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.
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"...
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...
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...
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".
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]...
//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".
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,...
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:...
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...
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.
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.
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.
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...
• 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.
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...
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).
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á...
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.
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...
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.
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...
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.
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...
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‐...
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]". •...
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. •...
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.
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.
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.
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...
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...
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"...
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'/>...
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).
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.
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.
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...
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...