Documento de Step7 Nivel Basico

CURSO SIMATIC STEP7 NIVEL BASICO Septiembre de 2015 Tabla de Contenido CONFIGURACION NUEVO PROYECTO..................

Views 98 Downloads 6 File size 4MB

Report DMCA / Copyright

DOWNLOAD FILE

Recommend stories

Citation preview

CURSO SIMATIC STEP7 NIVEL BASICO

Septiembre de 2015

Tabla de Contenido CONFIGURACION NUEVO PROYECTO......................................................................4 Configuración de la CPU..................................................................................... 7 BLOQUES DE PROGRAMA Y TABLA DE SIMBOLOS................................................10 Bloques de organización................................................................................... 11 Bloques de función (FB)....................................................................................12 Funciones (FC).................................................................................................. 13 Bloques de datos globales (DB)........................................................................13 Tipos de datos de usuario (UDT).......................................................................14 Tabla de variables (VAT)....................................................................................14 Editor de símbolos............................................................................................ 15 LOGICA CON BITs................................................................................................. 16 LOGICA CON BITs, EJEMPLOS SET/RESET...........................................................20 LOGICA CON COMPARACIONES.........................................................................22 EJEMPLO LOGICA CON COMPARACIONES.......................................................26 TEMPORIZADORES, CONTADORES Y PULSOS.......................................................29 Temporizado como impulso prolongado...........................................................30 Temporizado retardo conexión..........................................................................31 Temporizado retardo conexión con memoria....................................................31 Temporizado retardo desconexión....................................................................32 TRABAJANDO CON BLOQUES DE DATOS (DBs).....................................................32 Ejemplo de Bloques de datos........................................................................... 34 EJEMPLO HIDRAULICO CONTROLADO CON WinCC FLEXIBLE................................36 Desarrollo PLC.................................................................................................. 40 Pantalla esquema hidráulico............................................................................. 50 MANEJO DE TABLA DE VARIABLES Y REFERENCIAS CRUZADAS............................54 Observar y forzar variables.............................................................................56 Datos de referencias......................................................................................... 57 OPERACIONES ARITMÉTICAS................................................................................ 59 Funciones con números enteros.......................................................................59 Conversiones.................................................................................................... 61 Ejemplos Conversiones..................................................................................... 62

Simatic Step7 Nivel Básico 2

2

Septiembre de 2015

Simatic Step7 Nivel Básico 3

3

Septiembre de 2015

CONFIGURACION NUEVO PROYECTO Cuando arranquemos STEP 7 se abre la ventana Asistente de STEP 7, esta ventana la cerramos ya que vamos a crear nosotros el nuevo proyecto. Tan pronto se haya cerrado el Asistente de STEP 7 aparecerá el Administrador SIMATIC. Los proyectos se estructuran de tal modo que permiten ordenar todos los datos y programas que se necesitan durante la programación.

Desde el Administrador crearemos un nuevo proyecto, para ello haremos clic en el icono nuevo. En la ventana nueva que nos aparece rellenaremos el nombre del proyecto, también podemos crear una ubicación para nuestro proyecto o dejar la ruta por defecto.

Simatic Step7 Nivel Básico 4

4

Septiembre de 2015

Una vez creada la carpeta curso nos situaremos encima y con el botón derecho seleccionaremos "insertar nuevo objeto" > "SIMATIC 300"

Una vez creado el sistema haremos doble clic en el Hardware. En la configuración del hardware se determinan la CPU y todos los módulos contenidos en su sistema de automatización, utilizando para ello un catálogo de hardware.

Simatic Step7 Nivel Básico 5

5

Septiembre de 2015 Dentro del Configurador de Hardware procederemos a montar nuestro PLC, para ello lo primero que tenemos que insertar es un bastidor. Nota: Si no aparece en pantalla la librería, podemos seleccionarla en Ver >Catalogo

Un bastidor 300 es un perfil standard, que se utiliza para sujetar los equipos Simatic 300

Simatic Step7 Nivel Básico 6

6

Septiembre de 2015 Después de configurar el bastidor tenemos que empezar a definir las tarjetas que queremos montar en él. La primera tarjeta que insertaremos será una fuente de alimentación. Nos desplazamos por el árbol de la librería y buscaremos un módulo PS-300

Configuración de la CPU. Nos desplazamos por el árbol de la librería y buscaremos un módulo CPU-300, nosotros para las pruebas insertaremos en el módulo 2 una CPU 315-2 DP. En cuanto arrastremos la CPU al chasis nos aparecerá un menú donde nos permitirá elegir varias opciones, pero nosotros las dejaremos por defecto aceptándolo.

Simatic Step7 Nivel Básico 7

7

Septiembre de 2015 Seguimos definiendo tarjetas, ahora vamos a insertar una tarjeta de entrada digitales, estas tarjetas las encontraremos en la carpeta DI-300.

Para nuestras pruebas de este curso vamos a utilizar salidas digitales para ello insertaremos una tarjeta, la buscamos en la carpeta DO-300.

Simatic Step7 Nivel Básico 8

8

Septiembre de 2015 Una vez añadidas las tarjetas de entras y salidas cambiaremos las direcciones que por defecto nos ha puesto. Para ello haremos doble clic sobre las direcciones para abrir el menú propiedades, seleccionado la pestaña "direcciones" y quitando la pestaña estándar podremos cambiar la dirección.

Simatic Step7 Nivel Básico 9

9

Septiembre de 2015 Antes de salir del Hardware guardaremos y compilaremos. El configurador nos generara una estructura con unas carpetas de fuentes y bloques, dentro de estas carpetas nosotros programaremos nuestros bloques.

BLOQUES DE PROGRAMA Y TABLA DE SIMBOLOS Para crear programas, seleccione la carpeta "Bloques" ya creado y elija el comando de menú "Insertar nuevos objetos > Bloque". En el menú siguiente podrá elegir el tipo de bloque (p. ej. Función, bloque de función, bloque de organización, tabla de variables (VAT)). Una vez abierto el bloque (vacío), podrá introducir el programa en AWL, KOP o FUP, respectivamente.

Simatic Step7 Nivel Básico 10

10

Septiembre de 2015 En esta tabla se muestra una breve descripción de los bloques y funciones.

Bloques de organización Los bloques de organización (OB) constituyen un enlace entre el sistema operativo y el programa de usuario. Son llamados por el sistema operativo y controlan el procesamiento cíclico y controlado por alarmas del programa, el comportamiento de arranque del sistema de automatización y el tratamiento de los errores. Programando los bloques de organización se define el comportamiento de la CPU.

Insertaremos varios bloques (p.ej.OB32,OB82 y OB121), estos bloques están establecidos por el sistema con lo que no hace falta ponerles ni símbolo ni comentario, ya que lo define el sistema.

Simatic Step7 Nivel Básico 11

11

Septiembre de 2015 Podemos encontrar ayuda de los OBs pulsando F1, teniendo seleccionado la OB

Bloques de función (FB) Los bloques de función son bloques programables. Un FB es un bloque "con memoria". Dispone de un bloque de datos asignado como memoria (bloque de datos de instancia). Los parámetros que se transfieren al FB, así como las variables estáticas, se memorizan en el DB de instancia. Las variables temporales se memorizan en la pila de datos locales. Los datos memorizados en el DB de instancia no se pierden al concluir el tratamiento del FB. Los datos memorizados en la pila de datos locales se pierden al concluir el tratamiento del FB. En estos bloques si definiremos el símbolo y el comentario, ya que nos ayudara a la búsqueda posterior de nuestro programa.

Simatic Step7 Nivel Básico 12

12

Septiembre de 2015

Funciones (FC) Las funciones son bloques programables. Una función es un bloque lógico "sin memoria". Las variables temporales de las FCs se memorizan en la pila de datos locales. Estos datos se pierden tras el tratamiento de las FCs. Para fines de memorización de datos, las funciones pueden utilizar bloques de datos globales. Como una FC no tiene asignada ninguna memoria, se han de indicar siempre parámetros actuales. A los datos locales de una FC no se pueden asignar valores iniciales. En todos los bloques menos en los OBs mencionados en el apartado anterior, deberíamos rellenar su símbolo y comentario.

Bloques de datos globales (DB) Al contrario de los bloques lógicos, los bloques de datos no contienen instrucciones STEP 7. En cambio, sirven para depositar datos de usuario, es decir que los bloques de datos contienen datos variables con los que trabaja el programa de usuario. Los bloques de datos globales contienen datos de usuario utilizables desde otros bloques.

Simatic Step7 Nivel Básico 13

13

Septiembre de 2015

Tipos de datos de usuario (UDT) Son estructuras de datos creadas por usted mismo y que, una vez definidas, pueden utilizarse en todo el programa de usuario S7 de dos formas: Como tipos de datos simples o como tipos de datos compuestos. Como plantilla para crear bloques de datos de estructura idéntica.

Tabla de variables (VAT) En esta tabla podemos observar y forzar variables, a fin de comprobar su programa. Las tablas de variables no se cargan en la CPU, estas tablas se quedan en el configurador.

Simatic Step7 Nivel Básico 14

14

Septiembre de 2015 Después de crear los bloques definidos en los apartados anteriores deberíamos tener en la ventada derecha del configurador lo siguiente.

Editor de símbolos Con el editor de símbolos se gestionan todas las variables globales. Se definen los nombres simbólicos y comentarios para las señales del proceso (entradas y salidas), las marcas y los bloques.

Simatic Step7 Nivel Básico 15

15

Septiembre de 2015

LOGICA CON BITs Introducción Las operaciones lógicas con bits operan con dos dígitos, 1 y 0. Estos dos dígitos crean un sistema numérico denominado sistema binario. En el entorno de los contactos y bobinas, un 1 significa activado (conduce) y un 0 significa desactivado ("no conduce"). En este capítulo trabajaremos con estas operaciones lógicas: --| |-- Contacto normalmente abierto ---( ) Bobina de relé, salida 2. - Contacto normalmente abierto Símbolos habituales

Se cierra si el valor del bit es un 1

3. – Direccionamiento de entradas y salidas digitales Los tipos de datos que vamos a utilizar son: E -- Entradas A -- Salidas

Simatic Step7 Nivel Básico 16

16

Septiembre de 2015 Las CPUs de Siemens trabajan en byte, con lo cual cada dirección podrá definirse de 0 a 7 bits.

Cada uno de estos tipos se puede direccionar en 4 posibles modos • Por defecto (X para DB): Bit. • B: byte (8 bits). • W: palabra (16 bits). • D: palabra doble (32 bits). 4. Ejemplos conexión sin lógica • Activación de bobina En este ejemplo trabajaremos con un interruptor, un interruptor se mantiene enclavado una vez presionado. Lo que quiere decir que la salida quedara activada mientras no se vuelva a presionar en el otro sentido. Un interruptor es como los que tenemos en casa, que tiene dos posiciones que se quedan enclavadas manteniendo la luz apagada o encendida según la posición

Simatic Step7 Nivel Básico 17

17

Septiembre de 2015 Ingeniería

Lógica desde PLC

5. Ejemplos conexión serie Función AND (Y) Todas las entradas tienen que estar a 1 para que la salida se active. Ingeniería

Simatic Step7 Nivel Básico 18

18

Septiembre de 2015

Lógica desde PLC

6. Ejemplos conexión paralelo Función OR (O) Activando cualquiera de las entradas a 1 la salida se active. Ingeniería

Lógica desde PLC

Simatic Step7 Nivel Básico 19

19

Septiembre de 2015 7. Ejemplos conexión serie y paralelo También se puede hacer combinaciones para realizar lógicas variadas.

LOGICA CON BITs, EJEMPLOS SET/RESET Acá nos adentramos a utilizar contactos normalmente cerrados y bobinas con memorias Trabajaremos con estas operaciones lógicas: ---| / |--- Contacto normalmente cerrado ---( S ) Set, salida memorizada a 1 ---( R ) Reset, poner salida memorizada a 0 2. - Contacto normalmente cerrado Símbolos habituales

El contacto normalmente cerrado en reposo el estado de la señal es 1

Simatic Step7 Nivel Básico 20

20

Septiembre de 2015 3. Ejemplos Ingeniería

• Activación de bobina En este ejemplo se activara la bobina cuando se pulsa S1 y se deja sin pulsar el S2. Si pulsamos también el S2, la bobina no se activará ya que hemos abierto el circuito. Lógica desde PLC

4. Set y Reset Símbolos habituales

Cuando la bobina se activa a través del Set permanece memorizada hasta que se ejecute un 1 en el Reset.

Simatic Step7 Nivel Básico 21

21

Septiembre de 2015 Lógica desde PLC

LOGICA CON COMPARACIONES Las comparaciones comparar entre dos valores numéricos, según las operaciones siguientes: x == y ( x es igual a y ) x y ( x no es igual a y ) x < y ( x es menor que y ) x > y ( x es mayor que y ) x = y ( x es mayor o igual que y ) Se dispone de las operaciones de comparación siguientes: • CMP ? I Comparar enteros (16 Bit) • CMP ? D Comparar enteros dobles (32 Bit) • CMP ? R Comparar números en coma flotante

Simatic Step7 Nivel Básico 22

22

Septiembre de 2015 2. – Comparaciones con enteros

3. – Comparaciones con doble entero

4. – Comparaciones con reales

Simatic Step7 Nivel Básico 23

23

Septiembre de 2015 5. Para las entradas de las comparaciones podemos utilizar los siguientes tipos de datos byte, Word, doble Word y Reales y el resultado da la comparación es un digito binario (Bool).

6. Lógica desde PLC Comparaciones con enteros La salida booleana se activara cuando la variable MW10 sea mayor de 32

Comparaciones con doble entero La salida booleana se activara cuando la variable MD12 sea igual a 32 Si ponemos un valor de comparación constante el valor se rellena anteponiendo L#.

Simatic Step7 Nivel Básico 24

24

Septiembre de 2015 Comparaciones con reales La salida booleana se activara cuando la variable MD16 sea igual a 2.0 La entrada IN2 se rellena con decimales.

Simatic Step7 Nivel Básico 25

25

Septiembre de 2015 EJEMPLO LOGICA CON COMPARACIONES Ejemplo de comparaciones con un nivel analógico. Haremos una serie de comparaciones para determinar el nivel bajo y muy bajo.

2. – Comparación nivel bajo El nivel analógico lo leemos en la dirección EW20, esta entrada hay que convertirla de unidades internas a %, pero como todavía no hemos visto las conversiones analógicas, trabajaremos directamente en %. El valor ira de 0-100%.

Simatic Step7 Nivel Básico 26

26

Septiembre de 2015 3. – Comparación nivel muy bajo

4. – Aplicación de los niveles Condicionaremos el arranque y paro de la bomba, según el nivel.

Marcha bomba No dejaremos arrancar la bomba mientras el nivel no supere el 20%

Simatic Step7 Nivel Básico 27

27

Septiembre de 2015 Paro bomba Pararemos la bomba si el nivel baja por debajo del 5%

Simatic Step7 Nivel Básico 28

28

Septiembre de 2015

TEMPORIZADORES, CONTADORES Y PULSOS Introducción temporizadores Existe un tipo de datos llamados temporizadores. Estos contienen variables de tiempo, los temporizadores se denotan con la letra T, seguida de un número. El número de temporizadores que puede gestionar una CPU depende del modelo. Valor de temporización predeterminado • S5TIME#xH_xM_xS_xMS - siendo: H (horas), M (minutos), S (segundos), MS (milisegundos); x son los tiempo que define el usuario. El valor de temporización máximo que puede introducirse es de 9 900 segundos ó 2H_46M_30S. Ejemplos: S5TIME#10S --> 10 segundos También se puede abreviar la palabra TIME de la siguiente manera: S5T#1H_10M --> 1 horas y 10 minutos S5T#1H_10M_11S --> 1 hora 10 minutos y 11 segundos 2. – Diferentes tipos S_IMPULS Temporizador como impulso S_VIMP Temporizador como impulso prolongado S_EVERZ Temporizador como retardo a la conexión S_SEVERZ Temporizador como retardo a la conexión con memoria S_AVERZ Temporizador como retardo a la desconexión 3. – Parámetros

Simatic Step7 Nivel Básico 29

29

Septiembre de 2015 4. – Descripción y ejemplos

Temporizado como impulso La salida del temporizado se activa en cuando se activa la entrada de arranque S, la salida estará activa mientras transcurra el tiempo predeterminado.

Temporizado como impulso prolongado La salida del temporizado se activa transcurrido el tiempo predeterminado cuando hay un flanco de activación de la entrada de arranque S, aunque el estado de señal en la entrada S se ponga a "0" el temporizador continúa en marcha durante el tiempo predeterminado.

Simatic Step7 Nivel Básico 30

30

Septiembre de 2015

Temporizado retardo conexión La salida del temporizado se activa transcurrido el tiempo predeterminado cuando permanece activa la entrada de arranque S.

Temporizado retardo conexión con memoria La salida del temporizado se activa transcurrido el tiempo predeterminado cuando hay un flanco de activación de la entrada de arranque S. La salida permanecerá memorizada hasta que se active la entrada R.

Simatic Step7 Nivel Básico 31

31

Septiembre de 2015

Temporizado retardo desconexión La salida del temporizado se activa cuando hay un flanco de activación de la entrada de arranque S. La salida permanecerá memorizada hasta que transcurra el tiempo predeterminado.

TRABAJANDO CON BLOQUES DE DATOS (DBs) Los bloques de datos, también llamados DB’s, son áreas donde se almacenan datos. Un DB no contiene instrucciones S7. Hay dos tipos de bloques de datos: • Bloques de datos globales: A sus datos pueden acceder todos los bloques. • Bloques de datos de instancia: Asociados a un bloque de función FB. En este apartado veremos los bloques de datos globales.

Definición de Tabla de datos

Dirección: Indica la dirección que STEP 7 asigna automáticamente a la variable al terminar de introducir una declaración. Nombre: Se asigna el nombre a cada variable. Tipo: Introduzca el tipo de datos de la variable (BOOL, INT, WORD, ARRAY, etc.). Las variables pueden pertenecer a los tipos de datos simples, a los tipos de datos compuestos, o bien, a los tipos de datos de usuario. Valor inicial: Indique el valor inicial, en caso de que el software no deba tomar el valor predeterminado del tipo de datos introducido. Todos los valores introducidos deben ser compatibles con los tipos de datos.

Simatic Step7 Nivel Básico 32

32

Septiembre de 2015 Cuando guarde por primera vez el bloque de datos, el valor inicial será adoptado como valor actual de la variable, a menos que defina expresamente su valor actual. Recuerde que los valores iniciales no pueden cargarse en la CPU. Comentario: En este campo puede introducir un comentario para documentar la variable. El comentario no debe tener más de 80 caracteres.

Formato de datos Datos Simples

Datos compuestos:

Simatic Step7 Nivel Básico 33

33

Septiembre de 2015

Ejemplo de Bloques de datos Prepararemos una serie de bloques de datos para comunicar con el WinCC Flexible • En esta primera tabla una serie de bits de tipo booleanos, para las solicitudes que dibujemos en las pantallas (DB1)

• Para la indicación de tipo booleano generamos esta tabla. (DB2)

• Para las indicaciones analógicas de valores con decimales, se prepara esta tabla con variables de tipo real.

Simatic Step7 Nivel Básico 34

34

Septiembre de 2015 • Lo mismo hacemos con las consignas que vamos a dibujar para introducir datos desde HMI (WinCC Flexible) al PLC.

• Por ultimo vamos a preparar esta tabla con variables de tipo enteros(INT). Estas variables las utilizaremos para las condiciones de diferentes sistemas. (Bombas, electroválvulas, secuencias, etc.)

6.5- Llamada direccionamiento DBs Ejemplo consulta de un bit DB1.DBX0.0 Con esta consulta accedemos a DB1 a la dirección 0.0, que corresponde a la marcha alimentación bomba 1.

Simatic Step7 Nivel Básico 35

35

Septiembre de 2015 Ejemplo indicación de un bit DB2.DBX0.0

EJEMPLO HIDRAULICO CONTROLADO CON WinCC FLEXIBLE En este ejemplo se pretende controlar un hidráulico desde un panel de WinCC Flexible. En esta parte prepararemos el control de la bomba de alimentación 1

Pantallas Pantalla Hidráulico

Simatic Step7 Nivel Básico 36

36

Septiembre de 2015 Pantalla Condiciones

Desarrollo del PLC Lo primero que tenemos que hacer es rellenar la tabla de símbolos y las DBs de comunicaciones con el WinCC Flexible. Tabla de símbolos:

Simatic Step7 Nivel Básico 37

37

Septiembre de 2015 Tabla de datos: En la DB1 rellenaremos todas las solicitudes para arrancar y parar las bombas.

En la DB2 rellenaremos todas las indicaciones que vamos a poner en la pantalla del hidráulico. En esta parte no rellenaremos las indicaciones de las condiciones ya que vamos a preparar otra DB para esta labor.

Simatic Step7 Nivel Básico 38

38

Septiembre de 2015 En la DB3 la utilizaremos para las dos indicaciones de forma analógica, que son la temperatura y el nivel.

En la DB5 rellenaremos todas las indicaciones que vamos a poner en la pantalla de condiciones. La vamos a tratar como un integer para desglosar bit a bit cada condición

Simatic Step7 Nivel Básico 39

39

Septiembre de 2015

Desarrollo PLC Crearemos una función (FC10), donde prepararemos el programa para el control de la bomba 1 de alimentación Lo primero que vamos a preparar son las condiciones iniciales de la bomba. Una bomba de alimentación puede tener varias condiciones de arranque nosotros vamos a preparar cuatro. 1.- El tanque tiene que estar lleno, según el nivel hemos establecido un 20% 2.- La temperatura del aceite tiene que tener una temperatura mínima (5ºC) para que el aceite no este espesa. 3.- Un filtro en línea nos dirá si el aceite está sucio. 4.- También tenemos que tener la bomba de recirculación en marcha para poder arrancar

Seguimos con las condiciones permanentes de la bomba. Una bomba de alimentación puede tener varias condiciones permanentes que provoquen la parada. Las condiciones tienen que estar a 1, solo con perder cualquiera de ellas perderemos el resumen e inmediatamente pararemos la bomba 1.- Si el nivel del tanque es muy bajo, para que la condición sea 1, compararemos el nivel para que sea mayor de 5% 2.- La temperatura del aceite tiene que ser menor de 90ºC. 3.- Que no tengamos fallo del automático. 4.- Que no perdamos la presión.

Simatic Step7 Nivel Básico 40

40

Septiembre de 2015 • Lógica de marcha de la bomba. La solicitud de marcha lo realizamos con el pulsador que dibujaremos en el WinCC, y realizaremos la marcha siempre que tengamos todas las condiciones iniciales.

• Lógica de paro de la bomba. Resetearemos la marcha con el pulsador y por falta de condiciones permanentes

Simatic Step7 Nivel Básico 41

41

Septiembre de 2015 • Indicaciones para reflejar en la pantalla hidráulico

Simatic Step7 Nivel Básico 42

42

Septiembre de 2015 • Indicaciones para reflejar en la pantalla condiciones iniciales Otra forma de comunicar con WinCC, es a través de entero (Integer). Solo definimos una variable y podemos tener 16 condiciones, lo único que hay que tener en cuenta es que el PLC de Siemens trabaja con los bytes cambiados.

Simatic Step7 Nivel Básico 43

43

Septiembre de 2015

Simatic Step7 Nivel Básico 44

44

Septiembre de 2015 • Indicaciones para reflejar en la pantalla condiciones permanentes

Simatic Step7 Nivel Básico 45

45

Septiembre de 2015 Para realizar las otras dos bombas copiaremos FC10, renombrándolo con otra función

Una vez creada la copia, le cambiaremos el nombre del símbolo, seleccionando con el botón derecho las propiedades.

Después hay que entrar en la funciones FC11 y FC12 y modificar las variables. La bomba 2 es idéntica a la bomba 1 en condiciones marcha y paro, pero las indicaciones son menos ya que en la primera bomba hemos indicado variables comunes como niveles, temperaturas, etc. y no hay que volverlas a repetir.

Simatic Step7 Nivel Básico 46

46

Septiembre de 2015 Las indicaciones de la bomba 2 quedaran así:

La bomba 3, cambia las condiciones ya que esta bomba es de recirculación las condiciones son las indicadas en estos cuadros. • Las condiciones de la bomba 3 de recirculación son las siguientes. Condiciones iniciales: 1.- El tanque tiene que estar lleno, según el nivel hemos establecido un 20% 2.- La temperatura del aceite tiene que tener una temperatura mínima (5ºC) para que el aceite no este espesa.

Simatic Step7 Nivel Básico 47

47

Septiembre de 2015 • Condiciones permanentes: 1.- El tanque tiene que estar lleno, según el nivel hemos establecido un 20% 2.- La temperatura del aceite tiene que tener una temperatura mínima (5ºC) para que el aceite no este espesa.

Simatic Step7 Nivel Básico 48

48

Septiembre de 2015 7.3. Desarrollo del WinCC Flexible 7.3.1.- Tabla de variables

7.3.2.- Simbológica

Simatic Step7 Nivel Básico 49

49

Septiembre de 2015

Pantalla esquema hidráulico • Definición de bomba Para indicación de las bombas utilizaremos las variables de tipo booleanos proveniente de la DB2. La lógica que utilizaremos es: Valor 0 color rojo, representa bomba parada. Valor 1 color verde, representa bomba roja.

• Definición de filtro, presostato y fallos Para todos tipos de indicaciones booleanos utilizaremos la DB2. Y normalmente utilizaremos el rojo para indicar fallos y el verde para indicar estado ok.

Simatic Step7 Nivel Básico 50

50

Septiembre de 2015 • Definición Nivel Para indicación del nivel utilizaremos las variables de tipo real proveniente de la DB3. Los valores se han establecido en tanto por cien.

• Definición Temperatura Para indicación de valores numéricos utilizaremos variables de tipo real.

Simatic Step7 Nivel Básico 51

51

Septiembre de 2015 • Definición panel de control Para los pulsadores generaremos eventos, al pulsar utilizaremos la función ActivarBit y al soltar utilizaremos DesactivarBit. Siempre utilizando la misma variable. Las cuatro indicaciones que tiene este panel de control (marcha, paro, fallo y listo), se indicara de la misma manera que hemos definido la indicación de la bomba.

Para el pulsador de listo utilizaremos los eventos para hacer una llamada a otra pantalla.

Simatic Step7 Nivel Básico 52

52

Septiembre de 2015 • Definición de pantalla de condiciones Dibujaremos una pantalla con todas las condiciones iniciales y permanentes de las tres bombas.

• Para definir las indicaciones seleccionaremos la variable de las condiciones “CI_HMI_00” Elegiremos el tipo Bit, a partir de aquí tenemos que seleccionar el bit 0,1,2, etc. Bit 0 Nivel bajo Bit 1 Temperatura muy bajo Bit 2 Filtro Ok Bit 3 B. Recirc. en marcha. Recordad que cada cuadro es una variable distinta.

Simatic Step7 Nivel Básico 53

53

Septiembre de 2015

MANEJO DE TABLA DE VARIABLES Y REFERENCIAS CRUZADAS Tabla de variables Estas tablas sirven para observar y forzar variables, este tipo de bloques no se cargan en la CPU. Existen diferentes forma de acceder a este tipo de tablas. • Podemos crear una tabla insertando un nuevo objeto Después de creado la tabla se puede abrir como un bloque normal, haciendo doble clic sobre él.

• También podemos abrir una tabla de variables desde SIMATIC Manager, desplegaremos la opción Sistema de destino y seleccionando Observar/forzar variable, nos abre una tabla vacía y sin nombre. Este mismo enlace se puede realizar estando dentro de los bloques de programa.

Simatic Step7 Nivel Básico 54

54

Septiembre de 2015 Utilización Tabla de variables Insertar variables: Se puede escribir las variables a mano introduciendo la dirección en el campo Operador o escribir el símbolo. Podemos separar las variables por grupos introduciendo un comentario, siempre que escriba dos barras de dividir seguidas lo interpretara como un comentario.

• Hay muchas variables que nos interesara verlas en diferentes formatos, para ello podemos cambiar el formato situándonos encima del cuadro formato de visualización y pulsando el botón derecho nos dejara elegir diferentes formatos.

Simatic Step7 Nivel Básico 55

55

Septiembre de 2015 • Se puede introducir varias variables a la vez utilizando insertar área. Esta tabla aparece situándonos encima de la última línea libre, pulsando el botón derecho. Podemos rellenar la primera variable que queremos visualizar y cuantas a partir de esta queremos que nos rellene. También podemos decirle de que tipo serán todas las variables que vamos a insertar en la tabla.

Observar y forzar variables • Para poder observar el estado de las variables, hay seleccionar Variables -> Observar, también pulsando el icono de las gafas observaremos las variables.

• También podemos forzar variables. Se puede escribir un valor de forzado y forzarlo pulsando el icono de forzar.

Simatic Step7 Nivel Básico 56

56

Septiembre de 2015

Datos de referencias Podemos abrir las referencias cruzadas desde Herramientas  Datos de referencias  Mostar, se pueden abrir desde los bloques y desde Manager

Podemos visualizar cinco vistas: • Referencias cruzadas Nos dará todas las variables utilizados en programa, si pulsamos punto de aplicación nos abrirá los bloques donde esta utilizada la variable.

Simatic Step7 Nivel Básico 57

57

Septiembre de 2015 • Ocupación de variables En esta tabla podemos ver que variables están ocupadas y cual libres. Es importante que cuando se empiece un programa ver en esta tabla que variables podemos utilizar.

• Estructura del programa La estructura del programa describe el orden de llamada de los bloques dentro de un programa. • Símbolos no utilizados Con esta vista podemos ver todos los símbolos no utilizados en programa. • Operaciones sin símbolo Podemos ver también si hay alguna variable sin símbolo. Nota: Las dos primeras vistas son las importantes, no hay que olvidar que hay que utilizarlas muy a menudo en la realización de nuestros programas.

Simatic Step7 Nivel Básico 58

58

Septiembre de 2015

OPERACIONES ARITMÉTICAS En Step 7 se pueden realizar operaciones aritméticas con funciones estándar que dispone el software. Existen varias funciones con números enteros y números con coma flotante.

Funciones con números enteros • Suma enteros

Parámetro Tipo de datos Área de memoria IN1 INT E, A, M, L, D o constante IN2 INT E, A, M, L, D o constante OUT INT E, A, M, L, D

Descripción Primer sumando Segundo sumando Resultado de la suma

• Resta enteros

Parámetro Tipo de datos Área de memoria Descripción IN1 INT E, A, M, L, D o constante Sustraendo IN2 INT E, A, M, L, D o constante Minuendo OUT INT E, A, M, L, D Resultado de la sustracción • Multiplicar enteros

Parámetro Tipo de datos IN1 INT IN2 INT OUT INT • Dividir enteros

Área de memoria Descripción E, A, M, L, D o constante Multiplicando E, A, M, L, D o constante Multiplicador E, A, M, L, D Resultado de la multiplicación

Simatic Step7 Nivel Básico 59

59

Septiembre de 2015

Parámetro IN1 IN2 OUT

Tipo de datos Área de memoria Descripción INT E, A, M, L, D o constante Dividendo INT E, A, M, L, D o constante Divisor INT E, A, M, L, D Cociente la división

Funciones con números doble enteros Estas mismas operaciones se pueden realizar con variables tipo DINT Las funciones son: ADD_DI, SUB_DI, MUL_DI Y DIV_DI. Hay una nueva función con este tipo de datos. • Obtener el resto de una división de enteros dobles

9.4.- Funciones con números reales Estas mismas operaciones se pueden realizar con variables tipo REAL Las funciones son: ADD_R, SUB_R, MUL_R Y DIV_R. En esta modalidad veremos algunas nuevas funciones nuevas • Valor absoluto

Parámetro Tipo de datos Área de memoria Descripción IN REAL E, A, M, L, D Número en coma flotante OUT REAL E, A, M, L, D Valor absoluto del número en coma flotante

Simatic Step7 Nivel Básico 60

60

Septiembre de 2015 • Raíz cuadrada

Parámetro Tipo de datos Área de memoria IN REAL E, A, M, L, D OUT REAL E, A, M, L, D flotante

Descripción Número en coma flotante Raíz cuadrada del número en coma

Existe otra función de raíz “SQR” También existen funciones de trigonometría. Lista de funciones: LN >>> Logaritmo natural EXP >>> Exponente SIN >>> Seno COS >>> Coseno TAN >>> Tangente ASIN >>> Arcoseno ACOS >> Arcocoseno ATAN >> Arcotangente

Conversiones Hay varias funciones internas de conversión, estas funciones nos ayudaran a convertir diferentes tipos de datos. Lista de operaciones de conversión

Simatic Step7 Nivel Básico 61

61

Septiembre de 2015

Ejemplos Conversiones Todas las funciones contienen estos dos parámetros Parámetro Tipo de datos Área de memoria EN BOOL E, A, M, L, D ENO BOOL E, A, M, L, D

Descripción Entrada de habilitación Salida de habilitación

• Conversión BCD en entero

Parámetro Tipo de datos IN WORD OUT INT

Área de memoria E, A, M, L, D E, A, M, L, D

Descripción Número BCD Valor entero (16 bits) de un número BCD

También existe la conversión contraria, de entero a BCD. Y conversiones de BCD a doble entero, doble entero a BCD. • Conversión doble entero a real

Parámetro Tipo de datos IN DINT OUT REAL

Área de memoria E, A, M, L, D E, A, M, L, D

Descripción Entero doble Número real

• Complemento a 1 de un entero

Simatic Step7 Nivel Básico 62

62

Septiembre de 2015

Parámetro Tipo de datos Área de memoria IN INT E, A, M, L, D OUT INT E, A, M, L, D

Descripción Valor entero (de 16 bits) de entrada Complemento a 1 del entero (de 16 bits)

También existe complemento a 1 de un número doble entero (INV_DI). • Complemento a 2 de un entero

Parámetro IN OUT

Tipo de datos Área de memoria Descripción INT E, A, M, L, D Valor entero (de 16 bits) de entrada INT E, A, M, L, D Complemento a 2 del entero (de 16 bits)

También existe complemento a 2 de un número doble entero y real (NEG_DI,NEG_R). • Redondear a entero doble

Parámetro Tipo de datos IN REAL OUT DINT

Área de memoria Descripción E, A, M, L, D Valor a redondear E, A, M, L, D IN, redondeado al próximo entero

El redondeo que realiza esta función es el siguiente: Ejemplo: Valor 1.0 a 1.4 redondea a 1 Valor 1.5 a 1.9 redondea a 2

Simatic Step7 Nivel Básico 63

63

Septiembre de 2015 • Truncar a entero doble

Parámetro Tipo de datos IN REAL OUT DINT

Área de memoria Descripción E, A, M, L, D Número real a convertir E, A, M, L, D Parte entera del valor de IN

• Convertir número real en el entero doble más próximo

Parámetro Tipo de datos IN REAL OUT DINT

Área de memoria Descripción E, A, M, L, D Número real a convertir E, A, M, L, D Primer entero doble que es mayor el número real

• Redondear número real a entero doble inferior

Simatic Step7 Nivel Básico 64

64