Instituto Schneider Electric de Formación Anexos Índice - Anexos Visualizar/Controlar datos en “tiempo real” en un archivo M.Excel p. 301 Comunicación con el protocolo Modnet (modbus TCP) p. 306 Comunicación OPC-OFS (OPC Factory Server) p. 312 Funciones para leer/escribir un bit en una palabra p. 341 Idiomas p. 345 Modificar las bases de datos DBF p. 356 Creación de una página de alarmas (sin plantilla) p. 359 Grabar datos en una base de datos y leer los datos grabados p. 375 Actualizar los drivers de CitectSCADA p. 392 F.A.Q. (Frequently Asked Questions) p. 398 Arquitecturas posibles p. 427 Aplicaciones desarrolladas con Citect p. 432 Lista de palabras claves p. 446 Lista de prácticas p. 448 Vijeo Citect Instituto Schneider Electric de Formación G. COLLET - Agosto 2007 301 Visualizar/Controlar datos en tiempo real desde M.Excel Lectura de los tags de variable: Para leer un tag de variable en una table M.Excel se tiene que abrir M.Excel y utilizar la sintaxis siguiente: =citect|variable!nombredeltagdevariable Vijeo Citect Instituto Schneider Electric de Formación G. COLLET - Agosto 2007 302 Visualizar/Controlar datos en tiempo real desde M.Excel Escritura de un tag de variable: añadir un parámetro al fichero citect.ini Para escribir un tag de variable en una table M.Excel se tiene que abrir el archivo Citect.ini (en C:\WINNT o C:\WINDOWS) y añadir un parámetro en la sección [General] Añadir este parámetro permite poder escribir un valor en la aplicación desde una hoja de Excel. Después de cambiar un parámetro en el citect.ini se aconseja cerrar Vijeo Citect y volver a ejecutarlo. Vijeo Citect Instituto Schneider Electric de Formación G. COLLET - Agosto 2007 303 Visualizar/Controlar datos en tiempo real desde M.Excel Escritura de un tag de variable: añadir un botón y crearse una macro Luego se tiene de añadir un botón desde el cuadro de controles y crear una macro asociada a este botón. Vijeo Citect Instituto Schneider Electric de Formación G. COLLET - Agosto 2007 304 Visualizar/Controlar datos en tiempo real desde M.Excel Resultado: Guardar la hoja de Excel y probar: Vijeo Citect Instituto Schneider Electric de Formación G. COLLET - Agosto 2007 305 Índice - Anexos Visualizar/Controlar datos en “tiempo real” en un archivo M.Excel p. 301 Comunicación con el protocolo Modnet (modbus TCP) p. 306 Comunicación OPC-OFS (OPC Factory Server) p. 312 Funciones para leer/escribir un bit en una palabra p. 341 Idiomas p. 345 Modificar las bases de datos DBF p. 356 Creación de una página de alarmas (sin plantilla) p. 359 Grabar datos en una base de datos y leer los datos grabados p. 375 Actualizar los drivers de CitectSCADA p. 392 F.A.Q. (Frequently Asked Questions) p. 398 Arquitecturas posibles p. 427 Aplicaciones desarrolladas con Citect p. 432 Lista de palabras claves p. 446 Lista de prácticas p. 448 Vijeo Citect Instituto Schneider Electric de Formación G. COLLET - Agosto 2007 306 Protocolo Modnet (Modbus TCP) Citect.ini Modicon creó el protocolo MODBUS en el año 1978 como solución sencilla de transferencia de datos entre PLC y sensores utilizando el puerto RS232. Este protocolo permite la integración de PLC’s, ordenadores, y otros dispositivos de supervisión, sensores, y control. Modbus sigue un estándar internacional de editores para la programación de PLC (IEC 61131-3) pero algunos desarrolladores de software para PLC o HMI/SCADA siguen trabajando con la versión clásica del protocolo (también algunos proponen las 2 posibilidades). Vijeo Citect trabaja con la versión original de bus y no sigue la IEC61131 con lo cual se tiene que realizar un cambio en el citect.ini Vijeo Citect Instituto Schneider Electric de Formación G. COLLET - Agosto 2007 307 Protocolo Modnet (Modbus TCP) Citect.ini Una de las diferencias entre estas 2 versiones del protocolo es el orden de los bits en una palabra. Por defecto Vijeo Citect utiliza el Modbus clásico y el bit 1 de la palabra es el bit 16 y el bit 16 es el bit 1 con lo cual se ha cambiar el orden de los bits si se trabaja con autómatas que siguen la norma IEC 61131-3 . Se ha de insertar el parámetro RegisterBitReverse = 1 en la sección [MODNET]. Se aconseja añadir la sección en el orden alfabético. C:\WINNT C:\WINDOWS Vijeo Citect Instituto Schneider Electric de Formación G. COLLET - Agosto 2007 308 Protocolo Modnet (Modbus TCP) Direccionamiento Si se trabaja con autómatas (p.e.: Modicon TSX Micro, Modicon TSX Premium, Modicon M340) que siguen la norma IEC 61131-3 y utilizan esta sintaxis %MW para definir palabras de memoria se tiene que tener en cuenta lo siguiente: Con los lenguajes IEC se empieza a contar a partir de 0 y con el Modbus estándar se empieza a contar a partir de 1 con lo cual en Vijeo Citect si se desea leer o escribir en la dirección %MW0 del autómata habrá que utilizar la dirección 400001 en Vijeo Citect %MW0 = 400001 %MW2 = 400003 %MWx = 40000x+1 Vijeo Citect Instituto Schneider Electric de Formación G. COLLET - Agosto 2007 309 Protocolo Modnet (Modbus TCP) Agrupamiento de datos (bits) con el Modicon TSX Premium y Unity Pro Para poder leer y escribir bits de memoria o entradas/salidas digitales en un Modicon TSX Premium se tiene que utilizar funciones de la biblioteca de Unity Pro. Bit para leer (bits de memoria o entradas/salid as digitales) Vijeo Citect Instituto Schneider Electric de Formación G. COLLET - Agosto 2007 Palabra a leer desde Vijeo Citect Palabra a escribir desde Vijeo Citect Bit para escribir (bits de memoria o salidas digitales) 310 Protocolo Modnet (Modbus TCP) Agrupamiento de datos (bits) con el Modicon TSX Premium y Unity Pro Ejemplo: %MW100 400101 entradas digitales Bit de memoria Bit de una palabra de memoria Salidas digitales Vijeo Citect Instituto Schneider Electric de Formación G. COLLET - Agosto 2007 %MW200 400201 Salidas digitales Bit de memoria Bit de una palabra de memoria 311 Índice - Anexos Visualizar/Controlar datos en “tiempo real” en un archivo M.Excel p. 301 Comunicación con el protocolo Modnet (modbus TCP) p. 306 Comunicación OPC-OFS (OPC Factory Server) p. 312 Funciones para leer/escribir un bit en una palabra p. 341 Idiomas p. 345 Modificar las bases de datos DBF p. 356 Creación de una página de alarmas (sin plantilla) p. 359 Grabar datos en una base de datos y leer los datos grabados p. 375 Actualizar los drivers de CitectSCADA p. 392 F.A.Q. (Frequently Asked Questions) p. 398 Arquitecturas posibles p. 427 Aplicaciones desarrolladas con Citect p. 432 Lista de palabras claves p. 446 Lista de prácticas p. 448 Vijeo Citect Instituto Schneider Electric de Formación G. COLLET - Agosto 2007 312 Comunicación con OFS (OPC Factory Server) OPC (OLE for Process Control) El bus OPC (OLE for Process Control) es un estándar de comunicación en el campo del control y supervisión de procesos. Este estándar permite que diferentes fuentes de datos envíen datos a un mismo servidor OPC, al que a su vez podrán conectarse diferentes programas compatibles con dicho estándar. De este modo se elimina la necesidad de que todos los programas cuenten con drivers para dialogar con múltiples fuentes de datos, basta que tengan un driver OPC. Este estándar está siendo mantenido por la Fundación OPC (http://www.opcfoundation.org/) Vijeo Citect Instituto Schneider Electric de Formación G. COLLET - Agosto 2007 313 Comunicación con OFS (OPC Factory Server) OFS (OPC Factory Server) Basados en el estándar OPC, el software OFS (OPC Factory Server) habilita las aplicaciones cliente bajo Windows con el fin de acceder a datos de los PLCs Modicon en tiempo real. La comunicación entre sus aplicaciones de software y su hardware se vuelve simple y clara. El software OFS actúa como pasarela entre los dispositivos de entradas/salidas y la aplicación que desea leer y escribir valores. Permite un acceso transparente a todas las variables del proceso (direccionables, indirectas y estructuradas). Vijeo Citect Instituto Schneider Electric de Formación G. COLLET - Agosto 2007 314 Comunicación con OFS (OPC Factory Server) Exportación de las variables (p.e.: fichero .XVM con Unity Pro) Exportar la lista de variables desde la herramienta de configuración y programación de PLC. Archivo.XVM Vijeo Citect Instituto Schneider Electric de Formación G. COLLET - Agosto 2007 315 Comunicación con OFS (OPC Factory Server) Configuración del Servidor OFS Ejecutar la herramienta OFS Configuration Tool. Vijeo Citect Instituto Schneider Electric de Formación G. COLLET - Agosto 2007 316 Comunicación con OFS (OPC Factory Server) Configuración del Servidor OFS Crear un nuevo alias. Vijeo Citect Instituto Schneider Electric de Formación G. COLLET - Agosto 2007 317 Comunicación con OFS (OPC Factory Server) Configuración del Servidor OFS: Configurar el driver a utilizar (dirección,...) Vijeo Citect Instituto Schneider Electric de Formación G. COLLET - Agosto 2007 318 Comunicación con OFS (OPC Factory Server) Configuración del Servidor OFS: Elegir el archivo que contiene la lista de las variables. Vijeo Citect Instituto Schneider Electric de Formación G. COLLET - Agosto 2007 319 Comunicación con OFS (OPC Factory Server) Configuración del Servidor OFS: Configuración del alias: seleccionar “simulated” en la ventana de propiedades “Alias Properties...” Vijeo Citect Instituto Schneider Electric de Formación G. COLLET - Agosto 2007 320 Comunicación con OFS (OPC Factory Server) Configuración del Servidor OFS: Pulsar en el botón Apply para validar la configuración. Después se tiene que reiniciar el servidor OFS para que lo cambios estén tomados en cuenta. Vijeo Citect Instituto Schneider Electric de Formación G. COLLET - Agosto 2007 321 Comunicación con OFS (OPC Factory Server) Ejecución del servidor OPC Factory Server: Ejecutar el servidor OFS. Vijeo Citect Instituto Schneider Electric de Formación G. COLLET - Agosto 2007 322 Comunicación con OFS (OPC Factory Server) Ejecución del cliente OPC: Ejecutar el cliente OPC. Vijeo Citect Instituto Schneider Electric de Formación G. COLLET - Agosto 2007 323 Comunicación con OFS (OPC Factory Server) Configuración del cliente OPC: En el cliente OPC se abre una ventana “server” en la que se tiene que elegir Schneider-Aut.OFS y pulsar en el botón OK. Vijeo Citect Instituto Schneider Electric de Formación G. COLLET - Agosto 2007 324 Comunicación con OFS (OPC Factory Server) Configuración del cliente OPC: Luego se tiene que ir al menú Group y seleccionar New Group... y pulsar en el botón OK para crear un grupo. Vijeo Citect Instituto Schneider Electric de Formación G. COLLET - Agosto 2007 325 Comunicación con OFS (OPC Factory Server) Configuración del cliente OPC: Después se tiene que ir al menú Item y seleccionar New... . Aparecerá una ventana en la que se ha de seleccionar la el dispositivo y la variable que se desea añadir y pulsar en el botón OK. Vijeo Citect Instituto Schneider Electric de Formación G. COLLET - Agosto 2007 326 Comunicación con OFS (OPC Factory Server) Configuración del cliente OPC: Vijeo Citect Instituto Schneider Electric de Formación G. COLLET - Agosto 2007 327 Comunicación con OFS (OPC Factory Server) Es posible guardar la configuración. Se almacena en un archivo .txt. : Vijeo Citect Instituto Schneider Electric de Formación G. COLLET - Agosto 2007 328 Comunicación con OFS (OPC Factory Server) Configuración del dispositivo de E/S en Vijeo Citect: Cuando el servidor OFS y el cliente OPC están configurados se ha de configurar el nuevo dispositivo en Vijeo Citect. Vijeo Citect Instituto Schneider Electric de Formación G. COLLET - Agosto 2007 329 Comunicación con OFS (OPC Factory Server) Configuración del dispositivo de E/S en Vijeo Citect: Se utiliza el mismo servidor y se crea un nuevo dispositivo Vijeo Citect Instituto Schneider Electric de Formación G. COLLET - Agosto 2007 330 Comunicación con OFS (OPC Factory Server) Configuración del dispositivo de E/S en Vijeo Citect: Luego se tiene que elegir Dispositivo de E/S externo y OPC en OPC Foundation. Vijeo Citect Instituto Schneider Electric de Formación G. COLLET - Agosto 2007 331 Comunicación con OFS (OPC Factory Server) Configuración del dispositivo de E/S en Vijeo Citect: La dirección de dispositivo será Schneider-Aut.OFS Schneider-Aut.OFS Vijeo Citect Instituto Schneider Electric de Formación G. COLLET - Agosto 2007 332 Comunicación con OFS (OPC Factory Server) Configuración del dispositivo de E/S en Vijeo Citect: Seleccionar Vincular dispositivo de E/S con base de datos de tags externos.,elegir OPC y luego seleccionar el servidor y su nodo. Vijeo Citect Instituto Schneider Electric de Formación G. COLLET - Agosto 2007 333 Comunicación con OFS (OPC Factory Server) Ver los tags de variable importados: Se tiene que ir al editor de proyectos y seleccionar tags y tags de variable. Se tiene que averiguar que el tipo de datos corresponda con la aplicación. ¡¡¡ MUY IMPORTANTE: Quitar la opción “simulated” (p.312) para volver a un modo real !!! Vijeo Citect Instituto Schneider Electric de Formación G. COLLET - Agosto 2007 334 Comunicación con OFS (OPC Factory Server) Cambios en el citect.ini: Se tienen que realizar algunos cambios en citect.ini (C:\WINNT ó C:\WINDOWS) 1. Definir una nueva sección [OPCAccessPaths] para escribir un nuevo parámetro relacionado con el dispositivo. 2. Añadir un parámetro para destruir los items cuando no se visualizan 3. Vijeo Citect trabaja por defecto con el OPC versión 1.0. Actualmente todos los OPCs trabajan con el OPC versión 2.0. 4. Para evitar problemas de comunicación (rebotes a la hora de leer/escribir palabras o fallo en la escritura) se ha de utilizar el parámetro WriteLocal. 5. La sintaxis utilizada a la hora de importar un tag de variable es la siguiente: direcciónPLC!nombrevariable. Para evitar problemas con el carácter “!” se tiene que modificar un parámetro. ¡¡¡ Antes de crear una nueva sección o nuevo parámetro asegurarse no existen todavía !!! Vijeo Citect Instituto Schneider Electric de Formación G. COLLET - Agosto 2007 335 Comunicación con OFS (OPC Factory Server) Cambios en el citect.ini: 1. Definir una nueva sección [OPCAccessPaths] para escribir un nuevo parámetro relacionado con el dispositivo. Servidor creado en Vijeo Citect Vijeo Citect Instituto Schneider Electric de Formación G. COLLET - Agosto 2007 Dispositivo creado en Vijeo Citect Dispositivo creado en el servidor OPC 336 Comunicación con OFS (OPC Factory Server) Cambios en el citect.ini: 2. Añadir un parámetro para destruir los items cuando no se visualizan Vijeo Citect Instituto Schneider Electric de Formación G. COLLET - Agosto 2007 337 Comunicación con OFS (OPC Factory Server) Cambios en el citect.ini: 3. Vijeo Citect trabaja por defecto con el OPC versión 1.0. Actualmente todos los OPCs trabajan con el OPC versión 2.0. Vijeo Citect Instituto Schneider Electric de Formación G. COLLET - Agosto 2007 338 Comunicación con OFS (OPC Factory Server) Cambios en el citect.ini: 4. Para evitar problemas de comunicación (rebotes a la hora de leer/escribir palabras o fallo en la escritura) se ha de utilizar el parámetro WriteLocal y ponerlo igual a 0. Vijeo Citect Instituto Schneider Electric de Formación G. COLLET - Agosto 2007 339 Comunicación con OFS (OPC Factory Server) Cambios en el citect.ini: 5. La sintaxis utilizada a la hora de importar un tag de variable es la siguiente: direcciónPLC!nombrevariable. Para evitar problemas con el carácter “!” se tiene que modificar un parámetro. Vijeo Citect Instituto Schneider Electric de Formación G. COLLET - Agosto 2007 340 Índice - Anexos Visualizar/Controlar datos en “tiempo real” en un archivo M.Excel p. 301 Comunicación con el protocolo Modnet (modbus TCP) p. 306 Comunicación OPC-OFS (OPC Factory Server) p. 312 Funciones para leer/escribir un bit en una palabra p. 341 Idiomas p. 345 Modificar las bases de datos DBF p. 356 Creación de una página de alarmas (sin plantilla) p. 359 Grabar datos en una base de datos y leer los datos grabados p. 375 Actualizar los drivers de CitectSCADA p. 392 F.A.Q. (Frequently Asked Questions) p. 398 Arquitecturas posibles p. 427 Aplicaciones desarrolladas con Citect p. 432 Lista de palabras claves p. 446 Lista de prácticas p. 448 Vijeo Citect Instituto Schneider Electric de Formación G. COLLET - Agosto 2007 341 Funciones Cicode para leer/escribir un bit en una palabra Práctica: Escribir funciones para leer/escribir un bit de una palabra Para poder leer o escribir bits de memoria o entradas/salidas digitales en una palabra de un dispositivo de E/S (que utiliza la norma IEC) sin tener que utilizar un tag de variable para cada bit para cada bits se tienen que crear varias funciones con el lenguaje Cicode: //Lectura de un bit en un word INT FUNCTION BitRead(INT iValue, INT iBitNo) //Escritura de un bit en un word INT FUNCTION BitWrite(INT iValue, INT iBitno, INT bState) //Escritura Toggle de un bit en un word INT FUNCTION BitToggle(INT iValue, INT iBitNo) Vijeo Citect Instituto Schneider Electric de Formación G. COLLET - Agosto 2007 342 Funciones Cicode para leer/escribir un bit en una palabra Práctica: Escribir funciones para leer un bit de una palabra LECTURA DE UN BIT DE UN WORD: INT FUNCTION BitRead(INT iValue, INT iBitNo) RETURN (iValue BITAND Pow(2, iBitNo)) <> 0; END ESCRITURA EN UN BIT DE UN WORD: INT FUNCTION BitWrite(INT iValue, INT iBitno, INT bState) IF bState = FALSE THEN RETURN iValue BITAND (4294967295 BITXOR Pow(2, iBitNo)); ELSE RETURN iValue BITOR Pow(2, iBitNo); END END Vijeo Citect Instituto Schneider Electric de Formación G. COLLET - Agosto 2007 343 Funciones Cicode para leer/escribir un bit en una palabra Práctica: Escribir funciones para leer un bit de una palabra ESCRITURA TOGGLE DE UN BIT DE UN WORD: INT FUNCTION BitToggle(INT iValue, INT iBitNo) RETURN iValue BITXOR Pow(2, iBitNo); END Vijeo Citect Instituto Schneider Electric de Formación G. COLLET - Agosto 2007 344 Índice - Anexos Visualizar/Controlar datos en “tiempo real” en un archivo M.Excel p. 301 Comunicación con el protocolo Modnet (modbus TCP) p. 306 Comunicación OPC-OFS (OPC Factory Server) p. 312 Funciones para leer/escribir un bit en una palabra p. 341 Idiomas p. 345 Modificar las bases de datos DBF p. 356 Creación de una página de alarmas (sin plantilla) p. 359 Grabar datos en una base de datos y leer los datos grabados p. 375 Actualizar los drivers de CitectSCADA p. 392 F.A.Q. (Frequently Asked Questions) p. 398 Arquitecturas posibles p. 427 Aplicaciones desarrolladas con Citect p. 432 Lista de palabras claves p. 446 Lista de prácticas p. 448 Vijeo Citect Instituto Schneider Electric de Formación G. COLLET - Agosto 2007 345 Idiomas Posibilidad de cambiar de idioma la herramienta “Process Analyst” Vijeo Citect utiliza el inglés como idioma por defecto. La ventada de propiedades de la herramienta Process Analyst en modo de ejecución aparece en inglés aunque se haya instalado el Vijeo Citect en español. ¿Cómo pasarlo al español? Vijeo Citect Instituto Schneider Electric de Formación G. COLLET - Agosto 2007 346 Idiomas Posibilidad de cambiar de idioma la herramienta “Process Analyst” Para poder configurar la herramienta Process Analyst en modo de ejecución en español se tiene que ir al archivo citect.ini (en la carpeta C:\WINNT o C:\WINDOWS) y añadir o modificar (si existe ya) en la sección [language] el parámetro localLanguage = spanish Vijeo Citect Instituto Schneider Electric de Formación G. COLLET - Agosto 2007 347 Idiomas Posibilidad de crear proyectos multi idiomas: introducción Es posible crear una aplicación con varios idiomas. Puede crearse una página gráfica o una ventana emergente con varios botones para cambiar a español, inglés, francés y alemán. Para ello: - Crear y configurar bases de datos de idiomas - Crear, por ejemplo, un genio (compuesto de un botón) al cual se le tendrá que pasar diferentes parámetros (idioma, charset,...) - Insertar en una página gráfica o ventana emergente varios genios “boton_idioma” Vijeo Citect Instituto Schneider Electric de Formación G. COLLET - Agosto 2007 348 ¿Qué es el “charset”? Es la codificación utilizada para la visualización de los caracteres Idiomas Posibilidad de crear proyectos multi idiomas: creación de la bases de datos de idiomas Se ha de tener un archivo en la carpeta de la aplicación (por defecto: C:\Schneider Application \ Vijeo Citect\Vijeo Citect 6.10\User\suproyecto ) llamado english.dbf (o spanish.dbf). Este archivo contiene 2 columnas: NATIVE: lista de la palabras con el lenguaje por defecto de la aplicación LOCAL: lista de la palabras con el lenguaje local (local language) seleccionado Vijeo Citect Instituto Schneider Electric de Formación G. COLLET - Agosto 2007 350 Idiomas Posibilidad de crear proyectos multi idiomas: creación de la bases de datos de idiomas Puede modificarse el archivo para añadir una fila más (ver ejemplo). Luego es posible crear copias de este archivo, llamándolos spanish.dbf, french.dbf y cambiar la traducción en la columna LOCAL Vijeo Citect Instituto Schneider Electric de Formación G. COLLET - Agosto 2007 351 Idiomas Posibilidad de crear proyectos multi idiomas: creación de un genio (botón) Luego crear un botón (un genio) para poder cambiar de idioma la aplicación pulsando el botón. ParameterPut("Language","LocalLanguage","%LanguageFile%") ParameterPut("Language","Charset","%Charset%") SetLanguage("%LanguageFile%","%Charset%") Vijeo Citect Instituto Schneider Electric de Formación G. COLLET - Agosto 2007 352 Idiomas Posibilidad de crear proyectos multi idiomas: inserción de los genios (botones) Luego insertar y configurar los botones (genio idioma) para gestionar el cambio de idioma. Vijeo Citect Instituto Schneider Electric de Formación G. COLLET - Agosto 2007 353 Idiomas Posibilidad de crear proyectos multi idiomas: configuración de un texto A la hora de escribir un texto debe escribirlo con la sintaxis siguiente: @(nombre_columna_NATIVE) Cuando se selecciona un idioma el texto que se visualizará será el texto de la columna LOCAL del archivo seleccionado (idioma seleccionado). @(hello) Vijeo Citect Instituto Schneider Electric de Formación G. COLLET - Agosto 2007 354 Idiomas Posibilidad de crear proyectos multi idiomas: resultado Guardar la página, compilar y ejecutar Vijeo Citect Instituto Schneider Electric de Formación G. COLLET - Agosto 2007 355 Índice - Anexos Visualizar/Controlar datos en “tiempo real” en un archivo M.Excel p. 301 Comunicación con el protocolo Modnet (modbus TCP) p. 306 Comunicación OPC-OFS (OPC Factory Server) p. 312 Funciones para leer/escribir un bit en una palabra p. 341 Idiomas p. 345 Modificar las bases de datos DBF p. 356 Creación de una página de alarmas (sin plantilla) p. 359 Grabar datos en una base de datos y leer los datos grabados p. 375 Actualizar los drivers de CitectSCADA p. 392 F.A.Q. (Frequently Asked Questions) p. 398 Arquitecturas posibles p. 427 Aplicaciones desarrolladas con Citect p. 432 Lista de palabras claves p. 446 Lista de prácticas p. 448 Vijeo Citect Instituto Schneider Electric de Formación G. COLLET - Agosto 2007 356 Modificar las bases de datos DBF Con Microsoft Excel Es posible modificar los diferentes campos y añadir datos siguiendo las reglas siguientes: • Nunca modificar el ancho de las columnas y filas • Nunca añadir datos después de la ultima línea • Siempre insertar un fila para escribir datos nuevos De forma general no se aconseja trabajar con M.Excel para la modificación de las bases de datos DBF Vijeo Citect Instituto Schneider Electric de Formación G. COLLET - Agosto 2007 357 Modificar las bases de datos DBF Con Microsoft Access Los posibles problemas con M.Excel desaparecen si se utiliza M.Access De forma general se aconseja trabajar con M.Access para la modificación de las bases de datos DBF Vijeo Citect Instituto Schneider Electric de Formación G. COLLET - Agosto 2007 358 Índice - Anexos Visualizar/Controlar datos en “tiempo real” en un archivo M.Excel p. 301 Comunicación con el protocolo Modnet (modbus TCP) p. 306 Comunicación OPC-OFS (OPC Factory Server) p. 312 Funciones para leer/escribir un bit en una palabra p. 341 Idiomas p. 345 Modificar las bases de datos DBF p. 356 Creación de una página de alarmas (sin plantilla) p. 359 Grabar datos en una base de datos y leer los datos grabados p. 375 Actualizar los drivers de CitectSCADA p. 392 F.A.Q. (Frequently Asked Questions) p. 398 Arquitecturas posibles p. 427 Aplicaciones desarrolladas con Citect p. 432 Lista de palabras claves p. 446 Lista de prácticas p. 448 Vijeo Citect Instituto Schneider Electric de Formación G. COLLET - Agosto 2007 359 Creación de una página de alarmas (sin plantilla) Práctica: Creación de páginas de alarmas sin utilizar las plantillas definidas en los diferentes estilos... Creación de grupos de alarmas Creación de alarmas Creación de una función CICODE para el reconocimiento de grupos de alarmas Creación de una función CICODE para realizar filtros de alarmas Creación de una página de alarmas Vijeo Citect Instituto Schneider Electric de Formación G. COLLET - Agosto 2007 360 Creación de una página de alarmas (sin plantilla) A. Creación de grupos de alarmas Se tiene que crear grupos de alarmas seleccionando fuentes según el estado de la alarma. Se aconseja poner fuentes diferentes para poder visualizar las alarmas de manera diferente. Vijeo Citect Instituto Schneider Electric de Formación G. COLLET - Agosto 2007 361 Creación de una página de alarmas (sin plantilla) B. Creación de alarmas y asociar las alarmas a grupos de alarmas Alarma Grupo de alarma Filtro: Grupo x Vijeo Citect Instituto Schneider Electric de Formación G. COLLET - Agosto 2007 362 Creación de una página de alarmas (sin plantilla) C. Creación de la página que contiene las alarmas (a partir de una página normal) Se puede utilizar el estilo XP y la plantilla Normal para dibujar la página de alarmas Vijeo Citect Instituto Schneider Electric de Formación G. COLLET - Agosto 2007 363 Creación de una página de alarmas (sin plantilla) C. Creación de la página que contiene las alarmas (a partir de una página normal) Se elige el objeto rectángulo. Luego seleccionar el color negro para el relleno. Vijeo Citect Instituto Schneider Electric de Formación G. COLLET - Agosto 2007 364 Ver página siguiente Creación de una página de alarmas (sin plantilla) C. Creación de la página que contiene las alarmas (a partir de una página normal) Se elige el objeto Cicode y se inserta la función AlarmDsp() en la pestaña Cicode. AlarmDsp(Número de AN, Número de Alarmas a Visualizar,Tipo) En este caso: - el número de AN = 204, - el Número de Alarmas a visualizar = 3, - el tipo: para ver alarmas activas entonces (Tipo=0) y para ver alarmas históricas (resumen) entonces Tipo=10 Vijeo Citect Instituto Schneider Electric de Formación G. COLLET - Agosto 2007 365 Descripción del método AlarmDsp() Displays an alarm list, starting at a specified AN and then on subsequent ANs. You specify the number of alarms to display and the type of alarms, for example, active hardware alarms or disabled non-hardware alarms. Before you call this function, you must first add animation points to the graphics page for each alarm to be displayed. Syntax: AlarmDsp(AN, Count, Type) AN: The AN where the first alarm is to display. Count: The number of alarms to display. Type: The type of alarms to display: Non-hardware alarms: 0 - All active alarms, i.e. Types 1 and 2 1 - All unacknowledged alarms, ON and OFF 2 - All acknowledged ON alarms 3 - All disabled alarms 4 - All configured (non-hardware) alarms, i.e. Types 0 to 3, plus acknowledged OFF alarms. Hardware alarms: 5 - All active alarms, i.e. Types 6 and 7 6 - All unacknowledged alarms, ON and OFF 7 - All acknowledged ON alarms 8 - All disabled alarms 9 - All configured alarms, i.e. Types 5 to 8 Alarm Summary: 10 - All summary alarms Alarm General: 11 - All ON alarms 12 - All OFF alarms 13 - All ON hardware alarms 14 - All OFF hardware alarms If you do not specify a Type, the default is 0. Return Value 0 (zero) if successful, otherwise an error is returned. Creación de una página de alarmas (sin plantilla) C. Creación de la página que contiene las alarmas (a partir de una página normal) Añadir 3 objetos Cicode. Asegurarse que su AN sea consecutivo, en nuestro caso, AN204,AN205,AN206 IMPORTANTE: La función AlarmDsp SÓLO va en el primer Cicode Object Vijeo Citect Instituto Schneider Electric de Formación G. COLLET - Agosto 2007 367 Ver página siguiente Creación de una página de alarmas (sin plantilla) C. Creación de la página que contiene las alarmas (a partir de una página normal) Se añade la posibilidad de reconocer las alarmas de forma individual haciendo un clic sobre ellas. Vijeo Citect Instituto Schneider Electric de Formación G. COLLET - Agosto 2007 368 Descripción del método AlarmAck() Acknowledges alarms. You can acknowledge the alarm where the cursor is positioned, one or more alarm lists on the active page, a whole category of alarms, or alarms of a particular priority. You would normally call this function from a keyboard command. No action is taken if the specified alarms have already been acknowledged. Syntax AlarmAck (Mode, Value) Mode: The type of acknowledgment: 0 - Acknowledge a single alarm where the cursor is positioned. Set Value to 0 (zero) - it is not used. 1 - Acknowledge a page of alarms. AN alarm page can contain more than one alarm list: Set Value to the AN where the alarm list is displayed. Set Value to 0 to acknowledge the (displayed) alarm list (on the active page) where the cursor is positioned. Set Value to -1 to acknowledge all (displayed) alarm lists on the active page. 2 - Acknowledge a category of alarms: Set Value to the alarm category (0 to 16376) of the alarms to be acknowledged. Note that Alarm category 0 indicates all categories; alarm category 255 indicates hardware alarms. Set Value to the group number to acknowledge a group of categories. 3 - Acknowledge alarms of a specific priority. Set Value to the alarm priority (0-255) of the alarms to be acknowledged. Alarm priority 0 indicates all priorities. Hardware alarms are not affected by priority. Set Value to the group handle to acknowledge a group of alarms of different priorities. Value: Used with Mode 1 and 2 to specify which alarms to acknowledge. Return Value 0 (zero) if successful, otherwise an error is returned. Creación de una página de alarmas (sin plantilla) C. Creación de la página que contiene las alarmas (a partir de una página normal) Creación de una función CICODE para el reconocimiento de las alarmas por grupo de alarmas. //Reconocimiento de Alarmas por Grupos FUNCTION ReconocimientoAlarmas() STRING Grupo; INT IForm; FormNew("Reconocimento por grupo de alarmas",25,3,0); FormPrompt(0,0,"Selecciona el Grupo") FormComboBox(0,1,16,4,Grupo,0) FormAddList("Grupo 2"); FormAddList("Grupo 3"); FormAddList("Grupo 4"); FormButton(0,2," OK ",0,1); FormButton(12,2," CANCEL ",0,2); IForm=FormRead(0) IF IForm <> 299 THEN IF Grupo="Grupo 2" THEN AlarmAck(2,2);END IF Grupo="Grupo 3" THEN AlarmAck(2,3);END IF Grupo="Grupo 4" THEN AlarmAck(2,4);END END END Vijeo Citect Instituto Schneider Electric de Formación G. COLLET - Agosto 2007 370 Creación de una página de alarmas (sin plantilla) C. Creación de la página que contiene las alarmas (a partir de una página normal) Creación de una función CICODE para el reconocimiento de las alarmas por grupo de alarmas. Vijeo Citect Instituto Schneider Electric de Formación G. COLLET - Agosto 2007 371 Creación de una página de alarmas (sin plantilla) C. Creación de la página que contiene las alarmas (a partir de una página normal) Creación de una función CICODE para filtrar las alarmas. //Filtrado de Alarmas por Grupos STRING msEquipment; FUNCTION FiltrarAlarmas() INT IForm; FormNew("Filtro de alarmas",25,3,0); FormPrompt(0,0,"Selecciona el Grupo"); FormComboBox(0,1,16,4,msEquipment,0); FormAddList("Grupo1"); FormAddList("Grupo2"); FormAddList("Grupo3"); FormAddList("Grupo4"); FormAddList("Todos") FormButton(0,2," OK ",0,1); FormButton(12,2," CANCEL ",0,2); IForm=FormRead(0); IF IForm <> 299 THEN AlarmSetQuery(-1,"QueryFunction",msEquipment); END END INT FUNCTION QueryFunction(INT nRid,INT nVer=0) STRING sCustom1; sCustom1=AlarmGetFieldRec(nRid,"CUSTOM1",0); IF msEquipment = "Todos" THEN msEquipment = ""; END IF StrSearch(0,StrUpper(sCustom1),StrUpper(msEquipment))=-1 THEN RETURN 0; ELSE RETURN 1; END END Vijeo Citect Instituto Schneider Electric de Formación G. COLLET - Agosto 2007 372 Creación de una página de alarmas (sin plantilla) C. Creación de la página que contiene las alarmas (a partir de una página normal) Creación de una función CICODE para filtrar las alarmas. Vijeo Citect Instituto Schneider Electric de Formación G. COLLET - Agosto 2007 373 Creación de una página de alarmas (sin plantilla) D. Resultado: Guardar la página, compilar y ejecutar. Alarma Activa No Reconocida Alarma No Activa No Reconocida Alarma Activa Reconocida Vijeo Citect Instituto Schneider Electric de Formación G. COLLET - Agosto 2007 374 Grabar datos en una base de datos y leer los datos grabados Práctica: Grabar datos en una base de datos (ejemplo realizado con Microsoft Access – funciona igual con MSQL- ) y leer los datos desde el control de intercambio de base de datos Crear una base de datos y una tabla (configuración de los campos) Crear el OBDC Crear un dispositivo para comunicar con el ODBC Crear un método Cicode para grabar datos Crear un evento para ejecutar la grabación de los datos Realizar la configuración del ordenador (activar el evento) Compilar y ejecutar Vijeo Citect Instituto Schneider Electric de Formación G. COLLET - Agosto 2007 376 Grabar datos en una base de datos y leer los datos grabados A. Creación de la base de datos Se tiene que ejecutar Microsoft Access y seleccionar el icono “Nuevo” Vijeo Citect Instituto Schneider Electric de Formación G. COLLET - Agosto 2007 377 Grabar datos en una base de datos y leer los datos grabados A. Creación de la base de datos Tiene que aparecer un menú, seleccionar la opción “Base de datos en blanco”, escribir un nombre y validar pulsando en Crear. Poner un nombre y validar pulsando en el botón Crear Vijeo Citect Instituto Schneider Electric de Formación G. COLLET - Agosto 2007 378 Grabar datos en una base de datos y leer los datos grabados B. Creación de la tabla de datos Pulsar en “Crear una tabla en vista diseño”, configurarla y guardarla. Número: entero largo Texto: tamaño 50 Número: simple Número: simple Crear los campos escribiendo un nombre, eligiendo un tipo de datos y su tamaño Vijeo Citect Instituto Schneider Electric de Formación G. COLLET - Agosto 2007 379 Grabar datos en una base de datos y leer los datos grabados C. Configuración del ODBC Ahora se ha de configurar un ODBC (pasarela entre la base de datos y Vijeo Citect) Vijeo Citect Instituto Schneider Electric de Formación G. COLLET - Agosto 2007 380 Grabar datos en una base de datos y leer los datos grabados C. Configuración del ODBC Pulsar en Agregar y seleccionar el Driver de Microsoft Access (*.mdb) Seleccionar el Microsoft Access Driver (.mdb) Vijeo Citect Instituto Schneider Electric de Formación G. COLLET - Agosto 2007 381 Grabar datos en una base de datos y leer los datos grabados C. Configuración del ODBC Introducir un nombre, seleccionar la base de datos creada previamente y pulsar en aceptar. Nombre del origen de datos: OBDC1 Base de datos: basedatos.mdb Vijeo Citect Instituto Schneider Electric de Formación G. COLLET - Agosto 2007 382 Grabar datos en una base de datos y leer los datos grabados D. Configuración de un dispositivo de sistema Tener un proyecto creado. Ir al menú Sistema y seleccionar Dispositivos. Nombre del dispositivo Formato de la tabla de la base de datos DSN=OBDC1 Nombre de la tabla en la base de datos Tipo de grabación -1: esto significa que sólo creará un solo fichero o tabla Vijeo Citect Instituto Schneider Electric de Formación G. COLLET - Agosto 2007 383 Grabar datos en una base de datos y leer los datos grabados E. Creación de una función Cicode Abrir el editor Cicode y escribir un método para grabar los datos del agitador. Vijeo Citect Instituto Schneider Electric de Formación G. COLLET - Agosto 2007 384 Grabar datos en una base de datos y leer los datos grabados F. Configuración de un evento Ir al menú Sistema y seleccionar Eventos. Elegir un nombre, seleccionar un periodo de tiempo y el método a ejecutar (método creado previamente para grabar los datos). Ejemplo: grabación de los datos cada 5s Escribir el método declarado en el editor Cicode Vijeo Citect Instituto Schneider Electric de Formación G. COLLET - Agosto 2007 385 Grabar datos en una base de datos y leer los datos grabados G. Configuración del ordenador Realizar la configuración personalizada del ordenador. Activar los eventos en la máquina y seleccionar el evento creado previamente. Configuración del ordenador personalizada Vijeo Citect Instituto Schneider Electric de Formación G. COLLET - Agosto 2007 386 Grabar datos en una base de datos y leer los datos grabados H. Cambiar los parámetros regionales del ordenador Para poder grabar reales en la base de datos se ha de cambiar los parámetros regionales del Ordenador en el panel de control. Vijeo Citect Instituto Schneider Electric de Formación G. COLLET - Agosto 2007 387 Grabar datos en una base de datos y leer los datos grabados H. Cambiar los parámetros regionales del ordenador Seleccionar el botón personalizar... y cambiar el “Símbolo decimal” por un punto (en lugar de una coma) Vijeo Citect Instituto Schneider Electric de Formación G. COLLET - Agosto 2007 388 Grabar datos en una base de datos y leer los datos grabados I. Visualizar los datos de la base de datos en la pantalla Seleccionar el objeto “base de datos”, seleccionar la pestaña “Connection” y luego pulsar en el botón Build. Aparecerá una ventana en la que se ha de elegir OBDC1. Pulsar en aceptar para validar. Seleccionar el origen creado Vijeo Citect Instituto Schneider Electric de Formación G. COLLET - Agosto 2007 389 Grabar datos en una base de datos y leer los datos grabados I. Visualizar los datos de la base de datos en la pantalla Luego seleccionar la opción “Data Table” y seleccionar la tabla de datos. Seleccionar la tabla creada Vijeo Citect Instituto Schneider Electric de Formación G. COLLET - Agosto 2007 390 Grabar datos en una base de datos y leer los datos grabados I. Visualizar los datos de la base de datos en la pantalla Resultado: Registro cada 5 segundos Vijeo Citect Instituto Schneider Electric de Formación G. COLLET - Agosto 2007 391 Índice - Anexos Visualizar/Controlar datos en “tiempo real” en un archivo M.Excel p. 301 Comunicación con el protocolo Modnet (modbus TCP) p. 306 Comunicación OPC-OFS (OPC Factory Server) p. 312 Funciones para leer/escribir un bit en una palabra p. 341 Idiomas p. 345 Modificar las bases de datos DBF p. 356 Creación de una página de alarmas (sin plantilla) p. 359 Grabar datos en una base de datos y leer los datos grabados p. 375 Actualizar los drivers de CitectSCADA p. 392 F.A.Q. (Frequently Asked Questions) p. 398 Arquitecturas posibles p. 427 Aplicaciones desarrolladas con Citect p. 432 Lista de palabras claves p. 446 Lista de prácticas p. 448 Vijeo Citect Instituto Schneider Electric de Formación G. COLLET - Agosto 2007 392 Programa DriverUpdate Se tiene que ir al menú inicio de Windows, buscar Citect el la lista de los programas y hacer clic en Driver Update. Si no existe la carpeta Citect en la lista de los programas se tiene que instalar mediante el CD de instalación de Vijeo Citect. Por defecto se instala cuando se instala Vijeo Citect Vijeo Citect Instituto Schneider Electric de Formación G. COLLET - Agosto 2007 393 Programa DriverUpdate Se abre una ventana en la que se ha de pulsar en el botón Scan PC... Aparecerá una ventana en la que se tiene que introducir un nombre de usuario y una contraseña. Vijeo Citect Instituto Schneider Electric de Formación G. COLLET - Agosto 2007 394 Programa DriverUpdate Al cabo de algunos segundos, aparecerá otro botón y una lista de drivers disponibles. Pulsar en el botón Add de los drivers que se desean actualizar y luego pulsar en el botón Proceed and download... Vijeo Citect Instituto Schneider Electric de Formación G. COLLET - Agosto 2007 395 Programa DriverUpdate El tiempo de la descarga depende de la conexión de red y del número de drivers a actualizar. Puede tardar varios minutos. Cuando se acaba la descarga aparece la ventana siguiente: Pulsar en Open Folder... Vijeo Citect Instituto Schneider Electric de Formación G. COLLET - Agosto 2007 396 Programa DriverUpdate Aparece una ventana que contiene todos los drivers descargados y comprimidos bajo el formato zip. Descomprimir los archivos y proceder a la instalación de los drivers. Por ejemplo: MODNET Vijeo Citect Instituto Schneider Electric de Formación G. COLLET - Agosto 2007 397 Índice - Anexos Visualizar/Controlar datos en “tiempo real” en un archivo M.Excel p. 301 Comunicación con el protocolo Modnet (modbus TCP) p. 306 Comunicación OPC-OFS (OPC Factory Server) p. 312 Funciones para leer/escribir un bit en una palabra p. 341 Idiomas p. 345 Modificar las bases de datos DBF p. 356 Creación de una página de alarmas (sin plantilla) p. 359 Grabar datos en una base de datos y leer los datos grabados p. 375 Actualizar los drivers de CitectSCADA p. 392 F.A.Q. (Frequently Asked Questions) p. 398 Arquitecturas posibles p. 427 Aplicaciones desarrolladas con Citect p. 432 Lista de palabras claves p. 446 Lista de prácticas p. 448 Vijeo Citect Instituto Schneider Electric de Formación G. COLLET - Agosto 2007 398 F.A.Q. (Frequently Asked Questions) ¿De donde vienen las plantillas y los símbolos que se utilizan por defecto? Vienen de los proyectos de inclusión. Un proyecto de inclusión es un proyecto que contiene objetos gráficos (como plantillas, páginas gráficas) y bases de datos (como tags de tendencia, fuentes,...), archivos Cicode. Si se utiliza el estilo XP (XP_Style) se incluye automáticamente el proyecto llamado CSV_Include que se encuentra en la lista de proyectos (opción Ver proyectos de inclusión seleccionada). Vijeo Citect Instituto Schneider Electric de Formación G. COLLET - Agosto 2007 399 F.A.Q. (Frequently Asked Questions) ¿Cómo crear un proyecto? Un proyecto puede crearse de esta forma: - Crear un proyecto de inclusión que contiene las plantillas y librerías de objetos, funciones Cicode,... - Crear un proyecto que incluye este proyecto de inclusión de tal forma que este proyecto hereda de los objetos gráficos, bases de datos, funciones creadas en el proyecto de inclusión para la creación de proyecto o varios proyectos. Proyecto de inclusión Proyecto final 1 Vijeo Citect Instituto Schneider Electric de Formación G. COLLET - Agosto 2007 Proyecto final 2 Proyecto final n 400 F.A.Q. (Frequently Asked Questions) ¿Cómo incluir un proyecto? Para incluir un proyecto se ha tiene que ir a al menú Sistema del Editor de Proyectos y elegir Proyectos Incluidos y escribir el nombre del proyecto o proyectos a incluir. Vijeo Citect Instituto Schneider Electric de Formación G. COLLET - Agosto 2007 401 F.A.Q. (Frequently Asked Questions) ¿Cómo cambiar los parámetros (nombre, descripción,..) de un proyecto? Se tiene que ir al explorador de proyectos y abrir las propiedades del proyecto haciendo un clic derecho y seleccionando Propiedades del proyecto o mediante el icono Vijeo Citect Instituto Schneider Electric de Formación G. COLLET - Agosto 2007 402 F.A.Q. (Frequently Asked Questions) ¿Dónde puedo modificar las plantillas del estilo XP (XP_Style)? Se tiene que ir al proyecto CSV_Include y seleccionar la carpeta Gráficas, Plantillas, XP_style, luego se tiene que seleccionar la resolución y luego abrir la plantilla que se desea modificar. Proceder igual para la modificación de los símbolos y genios,... Vijeo Citect Instituto Schneider Electric de Formación G. COLLET - Agosto 2007 403 F.A.Q. (Frequently Asked Questions) ¿Cómo crear una plantilla en un proyecto? Para crear una plantilla se tiene que ir al editor gráfico, seleccionar el icono nuevo y luego seleccionar la opción Plantilla. Aparece una ventana en la que se tiene que seleccionar un estilo existente, una resolución y una plantilla. Vijeo Citect Instituto Schneider Electric de Formación G. COLLET - Agosto 2007 404 F.A.Q. (Frequently Asked Questions) ¿Cómo crear su propio estilo? Para crear su propio estilo basta con crear una plantilla y guardar como... creando una nueva carpeta para el estilo y la resolución. Vijeo Citect Instituto Schneider Electric de Formación G. COLLET - Agosto 2007 405 F.A.Q. (Frequently Asked Questions) ¿Cómo tener vinculado o desvinculado una plantilla desde su proyecto de origen o un símbolo desde su librería de origen? Cuando se crea una página, se tiene que seleccionar una plantilla y es posible elegir si la página tendrá una plantilla vinculada con el proyecto de origen o no. Existe la misma opción cuando se inserta un símbolo (motor,...). Vijeo Citect Instituto Schneider Electric de Formación G. COLLET - Agosto 2007 406 F.A.Q. (Frequently Asked Questions) ¿Cómo hacer para que no aparezcan los nombres de las páginas en el menú “pages” en modo de ejecución? Guardar la página con un nombre que empieza por “!”. Por ejemplo: !paginaescondida. Vijeo Citect Instituto Schneider Electric de Formación G. COLLET - Agosto 2007 407 F.A.Q. (Frequently Asked Questions) ¿Cómo hacer para que aparezcan los nombres de las páginas escondidas (o páginas de sistema) cuando se desea abrir una página en modo de diseño? Ir al menú Herramientas y seleccionar Opciones... Vijeo Citect Instituto Schneider Electric de Formación G. COLLET - Agosto 2007 408 F.A.Q. (Frequently Asked Questions) ¿Cómo cambiar de página pulsando un botón? Crear un botón, ir a la pestaña Entradas y utilizar el método Título del botón PageGoto(“pagina02”) Vijeo Citect Instituto Schneider Electric de Formación G. COLLET - Agosto 2007 409 F.A.Q. (Frequently Asked Questions) ¿Cómo asegurarse que las bases de datos estén coherentes? Se tiene que ir al editor de proyectos, seleccionar el menú Archivo y luego elegir Empaquetar Vijeo Citect Instituto Schneider Electric de Formación G. COLLET - Agosto 2007 410 F.A.Q. (Frequently Asked Questions) ¿Cómo insertar una imagen en una página gráfica (o plantilla, símbolo, genio o super genio)? Abrir una página gráfica (o plantilla, símbolo, genio o super genio), seleccionar el menú Archivo y elegir Importar. Se abrirá una pagina en la que se tiene que elegir una imagen y seleccionar Aceptar. Se insertará la imagen si el formato está soportado. Vijeo Citect Instituto Schneider Electric de Formación G. COLLET - Agosto 2007 411 F.A.Q. (Frequently Asked Questions) ¿Cuáles son los formatos soportados? Los formatos autorizados en el editor gráfico de Vijeo Citect son los siguientes: • Imágenes bitmaps Windows 3.0 (*.BMP, *.DIB, *.RLE) • Imágenes bitmaps con formato PCX (*.PCX) • Archivos texto (*.TXT) • Archivo AutoCAD DXF (*.DXF), 2D únicamente. El formato binario está también autorizado. • Archivos metafiles Windows (*.WMF) • Encapsulated Postscript (*.EPS) Imágenes GIF no • Imagen tipo Fax (*.FAX) autorizadas • Imagen Ventura (*.IMG) • Imagen JPEG (*.JPG, *.JIF, *.JFF, *.JGE) • Photo CD (*.PCD) • Imagen “Portable Network Graphic” (*.PNG). (archivos PNG con “alpha channels” no aurorizados) • Targa (*.TGA) • Imagen formato “Tagged Image Format” (*.TIF) • WordPerfect (*.WPG) Vijeo Citect Instituto Schneider Electric de Formación G. COLLET - Agosto 2007 412 F.A.Q. (Frequently Asked Questions) ¿Cómo insertar una imagen animada (tipo GIF)? Abrir una página gráfica (o plantilla, símbolo, genio o super genio), seleccionar el menú Archivo y elegir Importar como destallo. Se abrirá una pagina en la que se ha de elegir la primera imagen y seleccionar Aceptar. Se cerrará esta ventana y abrirá otra pagina en la que se ha de elegir la segunda imagen y seleccionar Aceptar . Se insertarán la imágenes si el formato está soportado. Primera imagen Segunda imagen Vijeo Citect Instituto Schneider Electric de Formación G. COLLET - Agosto 2007 413 F.A.Q. (Frequently Asked Questions) ¿Cómo insertar una imagen en la biblioteca? Utilizar el editor gráfico. Crear un nuevo símbolo, insertar la imagen y guardar el símbolo. Posibilidad de crear su propia biblioteca Vijeo Citect Instituto Schneider Electric de Formación G. COLLET - Agosto 2007 414 F.A.Q. (Frequently Asked Questions) ¿Cómo modificar una imagen importada? Seleccionar la imagen, ir al menú Herramientas y elegir la opción Editor de mapa de bits. Modificar la imagen y pulsar en el botón . Hacer un clic derecho con el ratón para poner el color “transparente” Vijeo Citect Instituto Schneider Electric de Formación G. COLLET - Agosto 2007 415 F.A.Q. (Frequently Asked Questions) ¿Cómo insertar un video? Utilizar la herramienta ActiveX. Se abrirá una ventana en la que se elegirá el tipo de ActiveX y luego el archivo a asociar. Vijeo Citect Instituto Schneider Electric de Formación G. COLLET - Agosto 2007 416 F.A.Q. (Frequently Asked Questions) No se encuentran los tags de variable a la hora de insertar un genio, ¿Qué tengo que averiguar? Cuando aparece este mensaje, ha de asegurarse: Que los tags de variables existen en la base de datos Que la sintaxis en la creación de los tags sea correcta: Para visualizar un dato: pestaña Aspecto Para cambiar un valor: pestaña Entrada etc... Vijeo Citect Instituto Schneider Electric de Formación G. COLLET - Agosto 2007 417 F.A.Q. (Frequently Asked Questions) No se abre la ventana emergente cuando hago un clic sobre el genio, ¿Qué tengo que averiguar? Opción1: Se tiene que ir al editor gráfico, seleccionar el menú Modificar y luego elegir Adjuntar Super Genios... Se abrirá una ventana el la que tiene que aparecer el nombre del super genio que se desea adjuntar. Opción2: Se tiene que ir a la pestaña Entrada del objeto o grupo de objetos al que se ha asignado el método AssWin() y asegurarse de la sintaxis utilizada: - Nombre del super genio con el ! Delante - Nombre de los parámetros: “%horno01%_marcha” Vijeo Citect Instituto Schneider Electric de Formación G. COLLET - Agosto 2007 418 F.A.Q. (Frequently Asked Questions) ¿Cómo asegurarse que los cambios realizados en los genios y super genios se han actualizado en sus instancias (genios insertados en páginas gráficas)? Se tiene que ir al editor gráfico, seleccionar el menú Herramientas y luego elegir Actualizar páginas. Vijeo Citect Instituto Schneider Electric de Formación G. COLLET - Agosto 2007 419 F.A.Q. (Frequently Asked Questions) ¿Cómo saber si un proyecto está compilado? Existen 2 posibilidades: Se tiene que ir al editor de proyectos y mirar en la barra de título: O mediante el explorador de proyectos y las propiedades de un proyecto. Vijeo Citect Instituto Schneider Electric de Formación G. COLLET - Agosto 2007 420 F.A.Q. (Frequently Asked Questions) El servidor (y o cliente) no comunica con los dispositivos de entradas/salidas internos y/o externos Cuando se ejecuta un proyecto los resultados posibles son los siguientes: Comunicación correcta Comunicación incorrecta Tipo INT Tipo DIGITAL Si la comunicación es incorrecta, se tiene que asegurarse que: La configuración del ordenador haya sido realizada La conexión física entre los dispositivos sea correcta (p.e. Utilizando un comando “ping”) Los dispositivos hayan sido creados correctamente (dirección IP, puerto de comunicación) etc Vijeo Citect Instituto Schneider Electric de Formación G. COLLET - Agosto 2007 421 F.A.Q. (Frequently Asked Questions) ¿Cómo crear un script de aplicación que se ejecute cuando ocurre un evento o periódicamente? Ir al menú Sistema del Editor de proyectos y seleccionar Eventos. Se abrirá una ventana en la que se tiene que rellenar los campos deseados. Puede verse un ejemplo más abajo. p.e.: para incrementar una variable (contador de tiempo) cuando el motor está en marcha Ir a la página siguiente para ver como se activen los eventos... Vijeo Citect Instituto Schneider Electric de Formación G. COLLET - Agosto 2007 422 F.A.Q. (Frequently Asked Questions) ¿Cómo se activan los eventos? Ir a la configuración del ordenador mediante el icono y seleccionar la instalación personalizada. Pulsar en el botón siguiente hasta llegar a la página configuración de eventos. Se tienen que activar los eventos y luego seleccionar el evento creado previamente. Vijeo Citect Instituto Schneider Electric de Formación G. COLLET - Agosto 2007 423 F.A.Q. (Frequently Asked Questions) ¿Cómo asociar funciones o acciones a las teclas del teclado? Para ello ir al Editor de proyectos y asociar primero un nombre con una tecla y luego asociar una acción con un nombre creado previamente o varios nombres Etapa 1: Etapa 2: Vijeo Citect Instituto Schneider Electric de Formación G. COLLET - Agosto 2007 424 F.A.Q. (Frequently Asked Questions) ¿Qué hacer para que Vijeo Citect procese bien los caracteres especiales (accentos,...)? Se tiene que ir al archivo citect.ini que se encuentra en C:\windows o C:\winnt y modificar/añadir un parámetro en la categoría CtEdit. AnsiToOem=0 Vijeo Citect Instituto Schneider Electric de Formación G. COLLET - Agosto 2007 425 F.A.Q. (Frequently Asked Questions) ¿Qué hacer para que aparezca un texto de ayuda (tooltip) al lado de los botones? Se tiene que escribir un texto en el campo “Ayuda” en la pestaña “Acceso– General”. Este texto tiene una longitud máxima de 48 carácteres. Vijeo Citect Instituto Schneider Electric de Formación G. COLLET - Agosto 2007 426 Índice - Anexos Visualizar/Controlar datos en “tiempo real” en un archivo M.Excel p. 301 Comunicación con el protocolo Modnet (modbus TCP) p. 306 Comunicación OPC-OFS (OPC Factory Server) p. 312 Funciones para leer/escribir un bit en una palabra p. 341 Idiomas p. 345 Modificar las bases de datos DBF p. 356 Creación de una página de alarmas (sin plantilla) p. 359 Grabar datos en una base de datos y leer los datos grabados p. 375 Actualizar los drivers de CitectSCADA p. 392 F.A.Q. (Frequently Asked Questions) p. 398 Arquitecturas posibles p. 427 Aplicaciones desarrolladas con Citect p. 432 Lista de palabras claves p. 446 Lista de prácticas p. 448 Vijeo Citect Instituto Schneider Electric de Formación G. COLLET - Agosto 2007 427 Aplicaciones desarrolladas con Citect Arquitectura Cliente / Servidor (Flexibilidad) DisplayClient IOServer AlarmsServer ReportsServer TrendsServer Tarea de Visualización Proporciona datos a las pantallas del sistema Tarea de E/S Gestiona y Optimiza la Comunicación con los Dispositivos de E/S Tarea de Alarmas Monitoriza condiciones especiales (digitales, analógicas, etc) Tarea de Reports ORDENADOR STANDALONE Ejecuta informes instantáneos con variables del sistema Tarea de Tendencias Dispositivo de E/S (PLC) Vijeo Citect Instituto Schneider Electric de Formación G. COLLET - Agosto 2007 Recoge, registra y gestiona datos de Curvas de Tendencias 428 Aplicaciones desarrolladas con Citect Arquitectura redundancia (tolerancia a fallos) DisplayClient DisplayClient IOServer01 IOServer02 PrimaryAlarmsServer StandbyAlarmsServer PrimaryReportsServer StandbyReportsServer PrimaryTrendsServer StandbyTrendsServer ORDENADOR PRIMARIO ORDENADOR STAND-BY Redundancia Comunicaciones Comunica el Primario y replica datos al Secundario, pasando el control al Secundario en caso de fallo del Primario Redundancia de Alarmas Reconocimiento simultáneo en ambos Ordenadores Redundancia de Reports Generación simultánea de Reports Standby I/O Standby I/O Dispositivo de E/S (PLC) Vijeo Citect Instituto Schneider Electric de Formación G. COLLET - Agosto 2007 Redundancia de Tendencias Almacenamiento simultáneo de Datos en ambos Ordenadores y sincronización de históricos en caso de fallo de ordenador 429 Aplicaciones desarrolladas con Citect Arquitectura distribuida (Escalabilidad) IOServer01 IOServer02 Pr_Alarm St_Alarm Pr_Reports St_Reports Pr_Trend St_Trend Dispositivo de E/S (PLC) GRUPO1 GRUPO2 IOServer01 IOServer02 Grupo1AlarmsServer Grupo2AlarmsServer Grupo1ReportsServer Grupo2ReportsServer Grupo1TrendsServer Grupo2TrendsServer Vijeo Citect Instituto Schneider Electric de Formación G. COLLET - Agosto 2007 Agrupación Generación de Grupos-> uno para los primarios y otro para los standby 430 Aplicaciones desarrolladas con Citect Visualización y control Clientes Control (Display Client) CLIENTES WEB CONTROL Y VISUALIZACIÓN CLIENTES CONTROL Y VISUALIZACIÓN Permiten una Visualización y Control de una aplicación Vijeo Citect que está ejecutandose en otro ordenador, Clientes Visualización (Manager Client) Permiten una Visualización de una aplicación Vijeo Citect que está ejecutandose en otro ordenador, Interne t Clientes Web Control (Web Display Client) Utilizando el Internet Explorer permiten una Visualización y Control de una aplicación Vijeo Citect que está ejecutandose en otro ordenador, Clientes Web Visualización (Web Manager Client) Dispositivo de E/S (PLC) Vijeo Citect Instituto Schneider Electric de Formación G. COLLET - Agosto 2007 Utilizando el Internet Explorer permiten una Visualización de una aplicación Vijeo Citect que está ejecutandose en otro ordenador, 431 Índice - Anexos Visualizar/Controlar datos en “tiempo real” en un archivo M.Excel p. 301 Comunicación con el protocolo Modnet (modbus TCP) p. 306 Comunicación OPC-OFS (OPC Factory Server) p. 312 Funciones para leer/escribir un bit en una palabra p. 341 Idiomas p. 345 Modificar las bases de datos DBF p. 356 Creación de una página de alarmas (sin plantilla) p. 359 Grabar datos en una base de datos y leer los datos grabados p. 375 Actualizar los drivers de CitectSCADA p. 392 F.A.Q. (Frequently Asked Questions) p. 398 Arquitecturas posibles p. 427 Aplicaciones desarrolladas con Citect p. 432 Lista de palabras claves p. 446 Lista de prácticas p. 448 Vijeo Citect Instituto Schneider Electric de Formación G. COLLET - Agosto 2007 432 Aplicaciones desarrolladas con Citect City of flagstaff Vijeo Citect Instituto Schneider Electric de Formación G. COLLET - Agosto 2007 433 Aplicaciones desarrolladas con Citect EPAL – Lisbon Water Supply Vijeo Citect Instituto Schneider Electric de Formación G. COLLET - Agosto 2007 434 Aplicaciones desarrolladas con Citect Beiersdorf AG Vijeo Citect Instituto Schneider Electric de Formación G. COLLET - Agosto 2007 435 Aplicaciones desarrolladas con Citect BHP Billiton – Cannington Mine Vijeo Citect Instituto Schneider Electric de Formación G. COLLET - Agosto 2007 436 Aplicaciones desarrolladas con Citect Debswana Diamond Mine Vijeo Citect Instituto Schneider Electric de Formación G. COLLET - Agosto 2007 437 Aplicaciones desarrolladas con Citect Einstein III Vijeo Citect Instituto Schneider Electric de Formación G. COLLET - Agosto 2007 438 Aplicaciones desarrolladas con Citect Southgate Complex Vijeo Citect Instituto Schneider Electric de Formación G. COLLET - Agosto 2007 439 Aplicaciones desarrolladas con Citect Williams Gat Texas Transmission Vijeo Citect Instituto Schneider Electric de Formación G. COLLET - Agosto 2007 440 Aplicaciones desarrolladas con Citect Slovnaft Vijeo Citect Instituto Schneider Electric de Formación G. COLLET - Agosto 2007 441 Aplicaciones desarrolladas con Citect FARLO – Supplier to MacDonald’s Vijeo Citect Instituto Schneider Electric de Formación G. COLLET - Agosto 2007 442 Aplicaciones desarrolladas con Citect Pratt & Whitney Jet Engine Test Facility Vijeo Citect Instituto Schneider Electric de Formación G. COLLET - Agosto 2007 443 Aplicaciones desarrolladas con Citect Spectrum Industries Jet Engine Test Facility Vijeo Citect Instituto Schneider Electric de Formación G. COLLET - Agosto 2007 444 Aplicaciones desarrolladas con Citect Austal Ship Vijeo Citect Instituto Schneider Electric de Formación G. COLLET - Agosto 2007 445 Índice - Anexos Visualizar/Controlar datos en “tiempo real” en un archivo M.Excel p. 301 Comunicación con el protocolo Modnet (modbus TCP) p. 306 Comunicación OPC-OFS (OPC Factory Server) p. 312 Funciones para leer/escribir un bit en una palabra p. 341 Idiomas p. 345 Modificar las bases de datos DBF p. 356 Creación de una página de alarmas (sin plantilla) p. 359 Grabar datos en una base de datos y leer los datos grabados p. 375 Actualizar los drivers de CitectSCADA p. 392 F.A.Q. (Frequently Asked Questions) p. 398 Arquitecturas posibles p. 427 Aplicaciones desarrolladas con Citect p. 432 Lista de palabras claves p. 446 Lista de prácticas p. 448 Vijeo Citect Instituto Schneider Electric de Formación G. COLLET - Agosto 2007 446 Lista de palabras claves Alarma Arquitectura Arranque automático Base de datos Categoría de alarmas Cicode Configuración del ordenador Configuración regional y de idioma Copia de seguridad DBF Dispositivo de Entradas/Salidas Dispositivo de sistema Eventos Fuentes Genios Herramienta Active X Herramienta Botón Herramienta Grupo de símbolos Herramienta Número Herramienta Objeto Cicode Herramienta Polígono Herramienta Process Analyst Herramienta Símbolo Herramienta Tendencia Herramienta Texto Vijeo Citect Instituto Schneider Electric de Formación G. COLLET - Agosto 2007 p.111, p.141, p.359 p.6 p.292 p.378-379 p.147-149 p.269, p.341, p.384 p.80, p.150, p.386,p.421,p.423 p.387-388 p.17-18 p.137, p.141, p.356 p.25, p.306,p.312 p.133, p.138, p.142, p.152 p.422-423 p.169, p.187-188 p.159, p.348-355, p.418-419 p.416 p.68-69 p.73-75 p.104 p.229 p.166 p.240, p.249-268 p.186, p.383 p.240-246 p.79 Idiomas Imágenes Informes (reports) Logs Macro (Excel) Microsoft Office Access 2003 Modificar un valor analógico Modnet Nivel de privilegio ODBC OFS – OPC Organizar objetos Páginas Páginas de sistema Plantillas Proyecto Seguridad Super Genios Tag de tendencia Tag de variable Teclas / Teclado TXT Usuario Video Zoom p.345 p.411-415 p.151 p.132-140 p.301 p.377 p.105-p.107 p.306 p.118 p.380-382 p.26, p.312 p.77-78 p.59-64, p.403-409 p. 385 p.63, p.403-406 p.13, p.399-406 p.117 p.177, p.418-419 p.232-233 p.53-58 p.424 p.132-136 p.119 p.416 p.95 447 Índice - Anexos Visualizar/Controlar datos en “tiempo real” en un archivo M.Excel p. 301 Comunicación con el protocolo Modnet (modbus TCP) p. 306 Comunicación OPC-OFS (OPC Factory Server) p. 312 Funciones para leer/escribir un bit en una palabra p. 341 Idiomas p. 345 Modificar las bases de datos DBF p. 356 Creación de una página de alarmas (sin plantilla) p. 359 Grabar datos en una base de datos y leer los datos grabados p. 375 Actualizar los drivers de CitectSCADA p. 392 F.A.Q. (Frequently Asked Questions) p. 398 Arquitecturas posibles p. 427 Aplicaciones desarrolladas con Citect p. 432 Lista de palabras claves p. 446 Lista de prácticas p. 448 Vijeo Citect Instituto Schneider Electric de Formación G. COLLET - Agosto 2007 448 Lista de prácticas Para la realización de las prácticas, se ha de tener un proyecto y dispositivos de E/S internos o externos creados. 1. Puesta en marcha de un agitador p.67 2. Control de las revoluciones (rpm) del agitador p.97 3. Gestionar una alarma digital y analógica p.112 4. Gestionar la seguridad de la aplicación p.120 5. Registrar mensajes de log en un archivo TXT cuando se pulsan los botones de marcha y paro del agitador p.132 6. Registrar mensajes de log en un archivo DBF cuando se pulsan los botones de marcha y paro del agitador p.137 7. Grabar en un archivo DBF los diferentes eventos relacionados con alarmas p.141 8. Realizar un informe que permite visualizar el estado del agitador y las RPMs p.152 9. Abrir un informe pulsando en un botón p.157 10. Crear un genio “valvula” que permita visualizar el estado de los diferentes estados de una válvula p.159 11. Crear un super genio “Horno” que permita visualizar y controlar el funcionamiento de un horno p.181 12. Cambiar el tamaño del super genio p.208 13. Modificar el título en la barra de título del super genio: nombre identificativo, la fecha y la hora p.218 14. Modificar el título en la barra de título del super genio para que se actualice el tiempo. p.225 15. Crear tags de tendencia para visualizar la evolución de tags de variable digitales analógicos p.232 Vijeo Citect Instituto Schneider Electric de Formación G. COLLET - Agosto 2007 449 Lista de prácticas Para la realización de las prácticas, se ha de tener un proyecto y dispositivos de E/S internos o externos creados. 16. Visualizar tendencias con la herramienta “Tendencia” p.239 17. Visualizar tendencias con la herramienta “Process Analyst” p.247 18. Crear una función para cambiar el título de las páginas gráficas p.270 19. Crear una función para cargar una vista en un Process Analyst P.276 20. Crear funciones para gestionar los paneles y cargar un tag de tendencia en un Process Analyst p.282 21. Configurar el ordenador para que el proyecto se ejecute automáticamente al arrancar el ordenador p.292 22. Leer y escribir datos desde M.Excel p.299 23. Comunicar con el protocolo Modnet p.304 24. Comunicar con el OFS (OPC Factory Server) p.310 25. Escribir funciones para leer un bit de una palabra p.339 26. Creación de un proyecto multi idiomas p.346 27. Modificar las bases de datos con M.Access p.356 28. Creación de páginas de alarmas (sin utilizar las plantillas) p.359 29. Grabar datos en una base de datos p.376 30. Leer datos desde una base de datos p.389 Vijeo Citect Instituto Schneider Electric de Formación G. COLLET - Agosto 2007 450