42
X X . . . 1 0 3 7 0 125 2 4 MW0 MW1 MW2 MW3 MD0 MD1 MB0 MB1 MB2 MB3 MB4 . . . FORMATO BYTE FORMATO PALABRA (WORD) M 0.3 BYTE BIT M 2.3 FORMATO DOBLE PALABRA (DOUBLE WORD) Posiciones de la memoria RAM Identificaciones de elementos y bloques y sintaxis de las constantes Elementos y bloques Constantes T Temporizador Versión breve Versión extensa DB Bloque de datos global B# Byte# DI Bloque de datos de instancia C# Counter# FC Función W# Word# FB Bloque de función DW# Dword# OB Bloque de organización D# Date# Z/C Contador (En función de la abreviatura Nemotecnia) T# Time# SDB Bloque de datos del sistema TOD# Time_of_day# SFC Función del sistema S5T# S5Time# SFB Bloque de función del sistema DT# Date_and_time# P# Pointer#

STEP 7 Funciones y operaciones

Embed Size (px)

DESCRIPTION

Descripcion de funciones y operaciones en la programacion KOP de la aplicacion STEP 7.

Citation preview

Page 1: STEP 7 Funciones y operaciones

X

X

.

.

.

1

0

3

7 0

125

2

4

MW0

MW1

MW2

MW3

MD0

MD1

MB0

MB1

MB2

MB3

MB4

.

.

.

FORMATO BYTE FORMATO PALABRA(WORD)

M 0.3

BYTE BIT

M 2.3FORMATO DOBLEPALABRA

(DOUBLE WORD)

Posiciones de la memoria RAM

Identificaciones de elementos y bloques y sintaxis de las constantes

Elementos y bloques ConstantesT Temporizador Versión breve Versión extensa

DB Bloque de datos global B# Byte#DI Bloque de datos de instancia C# Counter#FC Función W# Word#FB Bloque de función DW# Dword#OB Bloque de organización D# Date#Z/C Contador (En función de la

abreviatura Nemotecnia)T# Time#

SDB Bloque de datos del sistema TOD# Time_of_day#SFC Función del sistema S5T# S5Time#SFB Bloque de función del sistema DT# Date_and_time#

P# Pointer#

PACO
Stamp
Page 2: STEP 7 Funciones y operaciones

Areas de memoria y sus funciones

Nombredel área

Función del área Acceso a través deunidades de longitud

Abreviat.

Imagenproceso

deentradas

(E)

Al arrancar el programa, el sistema operativolee las entradas del proceso almacenando losvalores en este área

EntradaByte de entradaPalabra de entradaPalabra doble de entrada

EEBEWED

Imagenproceso

desalidas

(A)

Durante el ciclo, el programa calcula losvalores de salida y los deposita en este área.Al final del ciclo, el sistema operativo lee eneste área los valores de salida calculados ylos transfiere a las salidas del proceso

SalidaByte de salidaPalabra de salidaPalabra doble de salida

AABAWAD

Marcas(M)

Area que permite almacenar resultadosintermedios calculados en el programa

MarcasByte de salidaPalabra de salidaPalabra doble de salida

MMBMWMD

E/S:entradasexternas

E/S:Salidas

externas

Este área permite al programa el accesodirecto a los módulos de E/S (es decir,entradas y salidas de la periferia)

Byte de entrada de la periferiaPalabra de entrada de la perif.Palabra doble de entrada dela periferia

Byte de entrada de la periferiaPalabra de entrada de la perif.Palabra doble de entrada dela periferia

PEBPEWPED

PABPAWPAD

Temporizadores

(T)

Elementos funcionales del lenguaje deprogram. KOP. Area que permite almacenarcélulas de temporización. En este área, elreloj accede a estas células para seractualizado, decrementando el valor detemporización. En las células de temporiz. seaccede con operaciones de temporización

T

Contadores(C)

Elementos funcionales del lenguaje deprogram. KOP. Area de almacenamiento decontadores. Area de acceso con operacionesde conteo

Z

Bloquesde datos

(D)

Area que contiene datos a los que se puedeacceder desde cualquier bloque. Si se deseatener abiertos dos bloques al mismo tiempo,uno puede abrirse con la instrucción ”AUFDB” y otro con la instrucción “AUF DI”. Lanotación de los operandos determina a quebloque de datos se accede.Aunque la instrucción “AUF DI” puedautilizarse para abrir cualquier bloque de datos,su utilización principal consiste en abrirbloques de datos de instancia asociados abloques de función FB´s y a bloques defunción de sistema SFB´s

DBXDBBDBWDBD

DIXDIBDIWDID

Datoslocales

(L)

Area que contiene datos temporales debloque lógico (DB, FB, o FC). Estos, tambiéndenominados datos locales dinámic., sirvende memoria intermedia. Cuando se cierra elbloque lógico, se pierden estos datos. Losdatos están depositados en la pila de datoslocales (pila L)

LLBLWLD

PACO
Stamp
Page 3: STEP 7 Funciones y operaciones

Tipos de direccionamiento

En el programa STEP7, pueden identificarse las variables mediante dos tipos dedireccionamiento de variables:

Direccionamiento absoluto (direccionamiento directo)

La variable con la que se trabaja, es referenciada mediante una posición de memoria,denominada dirección absoluta, en la que está depositado el operando.En el direccionamiento directo el operando contiene la dirección de memoria del valor con elque la operación deberá operar. El operando se puede direccionar de forma absoluta osimbólica. Ejemplos:

Entrada E 12.1; palabra de marcas MW 25; bloque de datos DB 3.

Con la dirección A 4.0 se indica el bit 0 del byte 4 de la imagen de proceso de las salidas.

Direccionamiento simbólico (direccionamiento indirecto)

A la variable con la que se trabaja, le es asignado un símbolo o referencia con el que poderdistinguirla mas fácilmente durante la programación o visualización del programa.

Ejemplo:

Símbolo DireccionamientoMOTOR_ON A 0.1ACTIV_IMAN A 0.0

FINAL_CARRERA E 0.5

A 4.0Identificadorde operando

direccionamientode byte

direccionamientode bit

PACO
Stamp
Page 4: STEP 7 Funciones y operaciones

Selección del lenguaje de programación

Lenguaje deprogramación

Destinatarios Caso deaplicación

Entradaincremental

Entrada orientadaa fuente

Bloque auto-documentable de

la CPULista de

instruccionesAWL

Usuarios quedesean

programar anivel e maquina

Programasoptimizadosen tiempo deejecución y

uso dememoria

Sí Sí Sí

Esquema decontactos KOP

Usuariosfamiliarizadoscon esquemas

eléctricos

Programaciónde controles

combinacionales

Sí No Sí

Los lenguajes de programación sirven para crear programas de usuario, para cuyo fin ofrecendeterminadas reservas lingüísticas en forma de instrucciones gráficas o de texto. El usuariointroduce dichas instrucciones utilizando un editor, y estas instrucciones se compilan en unprograma de usuario ejecutable.El programa SIMATIC S7 ofrece los lenguajes de programación por lista de instrucciones(AWL), diagrama de funciones (FUP) y esquema de contactos (KOP) para programar bloques.

Lista de instrucciones (AWL)

La lista de instrucciones (AWL) es un lenguaje de programación textual orientado a la máquina.El lenguaje AWL es el lenguaje ensamblador de STEP 7. Si un programa ha sido programadoen lenguaje AWL, cada instrucción corresponderá a cada uno de los pasos que dará la CPUpara ejecutarlo.

Ejemplo:

U(O E 0.0U E 0.1)= A 2.0

Esquema de contactos (KOP)

El esquema de contactos es un lenguaje de programación gráfico mediante diagrama decontactos y diagrama de funciones. El esquema de contactos es uno de los lenguajes deprogramación de STEP 7. Esta representación está normalizada según la norma DIN 19239. Larepresentación del esquema de contactos corresponde a la de un esquema de circuitos. Alcontrario que en la lista de instrucciones (AWL), en KOP solamente se puede representar unacantidad limitada de operaciones.

Desde el editor de programación KOP, AWL, FUP, unavez cargado un proyecto, puede ser cambiado ellenguaje de programación a través del comando menú“Ver”, donde pueden verse los tipos tres tipos delenguajes KOP, AWL, FUP. El cambio de lenguaje deprogramación puede ser realizado en cualquiermomento. Sólo es posible cambiar de AWL aKOP/FUP si las instrucciones AWL asumen toda laasignación de parámetros de los correspondienteselementos KOP/FUP y respetan el orden. A losparámetros no usados en AWL se les asigna ”NOP 0”.

PACO
Stamp
Page 5: STEP 7 Funciones y operaciones

Componentes del editor KOP

Tabla correspondiente a las operaciones del lenguaje KOP por orden alfabético en la que semuestra el nombre de la función y la abreviatura SIMATIC correspondiente.

PACO
Stamp
Page 6: STEP 7 Funciones y operaciones
PACO
Stamp
Page 7: STEP 7 Funciones y operaciones
PACO
Stamp
Page 8: STEP 7 Funciones y operaciones

Instrucciones de bit

---I I--- Contacto normalmente abierto

Parámetro Tipo de datos Area de memoria Descripción<Operando> BOOL E, A, M, L, D, T, Z Bit consultado

Como se trabaja en lógica binaria, cuando el contacto esta abierto significa que estadesactivado “0”, es decir, circula flujo, por lo tanto el RLO es “ 0 ”.

---I/I--- Contacto normalmente cerrado

Parámetro Tipo de datos Area de memoria Descripción<Operando> BOOL E, A, M, L, D, T, Z Bit consultado

Como se trabaja en lógica binaria, cuando el contacto esta cerrado significa que esta activado“1”, es decir, circula flujo, por lo tanto el RLO es “ 1 ”.

---( ) Bobina de rele, salida

Parámetro Tipo de datos Area de memoria Descripción<Operando> BOOL E, A, M, L, D Bit asignado

Si del resultado de la operación lógica de contactos y funciones se obtiene un “ 1 ” en la salida,la bobina de relé se activa, si el resultado es un “ 0 ”, no se activa.

---(S) Activar salida

Parámetro Tipo de datos Area de memoria Descripción<Operando> BOOL E, A, M, L, D, T, Z Bit activado

Si del resultado de la operación lógica de contactos y funciones se obtiene un “ 1 ” en la salida,la bobina de relé se activa “SET” permanentemente hasta que sea desactivada mediante un“RESET. Si el resultado es un “ 0 ”, no se activa.

---(R) Desactivar salida

Parámetro Tipo de datos Area de memoria Descripción<Operando> BOOL E, A, M, L, D, T, Z Bit desactivado

Si del resultado de la operación lógica de contactos y funciones se obtiene un “ 1 ” en la salida,la bobina de relé se desactiva “RESET”. Si el resultado es un “ 0 ”, no se desactiva. Paradesactivar una salida, previamente ha tenido que ser activada.

Básculas RS / SR

Parámetro Tipo de datos Area de memoria Descripción<Operando> BOOL E, A, M, L, D Bit activado o desactivado

S BOOL E, A, M, L, D Activación habilitadaR BOOL E, A, M, L, D Desactivacion habilitadaQ BOOL E, A, M, L, D Estado de señal del operando

RS (Activación de flip-flop de desactivación)

Si la entrada R recibe el estado 1 y la entrada S el estado 0, la basculadesactiva su salida. Si la entrada R recibe el estado 0 y la entrada S elestado 1, la bascula activa su salida. Cuando en ambas entradasrecibe el estado 1, primero desactiva y seguidamente activa.

PACO
Stamp
Page 9: STEP 7 Funciones y operaciones

SR (Desactivacion de flip-flop de activación)

Evaluación de flancos

---(P)--- Detectar flanco de subida (0⇒1)

Parámetro Tipo de datos Area de memoria Descripción<Operando> BOOL A, M, D Marca de flancos que almacena el

estado de señal anterior del RLO

Detección de cambio de estado del operando de “0” a “1”. El estado de señal actual del RLO escomparado con el estado de señal del operando (marca de flancos). Si el estado de señal deloperando es “0” y el RLO antes de la operación es “1”, el RLO después de la operación es “1”,en todos los otros casos “0”.

---(N)--- Detectar flanco de bajada (1⇒0)

Parámetro Tipo de datos Area de memoria Descripción<Operando> BOOL A, M, D Marca de flancos que almacena el

estado de señal anterior del RLO

Detección de cambio de estado del operando de “1” a “0”. El estado de señal actual del RLO escomparado con el estado de señal del operando (marca de flancos). Si el estado de señal deloperando es “1” y el RLO antes de la operación es “0”, el RLO después de la operación es “0”,en todos los otros casos “1”.

Detectar flanco de señal ( 0⇒1 )

Parámetro Tipo de datos Area de memoria Descripción<Operando1> BOOL E, A, M, L, D Señal consultada<Operando2> BOOL A, M, D Marca de flancos M_BIT, almacena el

estado de señal anterior del Operando1Q BOOL E, A, M, L, D Detección del cambio de señal

Detectar flanco de señal ( 1⇒0 )

Parámetro Tipo de datos Area de memoria Descripción<Operando1> BOOL E, A, M, L, D Señal consultada<Operando2> BOOL A, M, D Marca de flancos M_BIT, almacena el

estado de señal anterior del Operando1Q BOOL E, A, M, L, D Detección del cambio de señal

Compara el estado de la señal del operando 1 con la del estadoanterior almacenada en el operando 2. Si el estado anterior delRLO era “0”, ahora es “1” (Detección de un flanco de subida).Después de esta operación la salida Q será “1”, y en losrestantes casos “0”.

Si la entrada R recibe el estado 1 y la entrada S el estado 0, la basculadesactiva su salida. Si la entrada R recibe el estado 0 y la entrada S elestado 1, la bascula activa su salida. Cuando en ambas entradasrecibe el estado 1, primero activa y seguidamente desactiva.

Compara el estado de la señal del operando 1 con la del estadoanterior almacenada en el operando 2. Si el estado anterior delRLO era “1”, ahora es “0” (Detección de un flanco de bajada).Después de esta operación la salida Q será “0”, y en losrestantes casos “1”.

PACO
Stamp
Page 10: STEP 7 Funciones y operaciones

---(SAVE) Cargar resultado lógico

Almacena el resultado lógico RLO en el bit RB de la palabra de estado.ismos pero de signo opuesto.

PACO
Stamp
Page 11: STEP 7 Funciones y operaciones

Temporizadores de retardo

Tablas de características correspondientes a los temporizadores nombrados en los siguientesapartados:

ParámetroSIMATIC

Tipo dedatos

Area dememoria

Descripción

Nº de T TIMER T Numero de identificación del temporizador, el áreadepende de la CPU utilizada

S BOOL E, A, M, L, D Entrada de arranque.TV S5TIME E, A, M, L, D Valor del temporizador preseleccionado.R BOOL E, A, M, L, D Entrada de desactivación.BI WORD E, A, M, L, D Valor del temporizador actual, codificado en binario.

BCD WORD E, A, M, L, D Valor del temporizador actual, codificado en BCD.Q BOOL E, A, M, L, D Estado del temporizador.

Margen ResoluciónDe 10MS a 9S_990MS 0,01 segundos

De 100MS a 1M_39S_900MS 0,1 segundosDe 1S a 16M_39S 1 segundo

De 10S a 2H_46M_30S 10 segundos

S5TIME#4S = 4 segundoss5t#2h_15m = 2 horas y 15 minutosS5T#1H_12M_18S = 1 hora, 12 minutos y 18 segundos

Los valores no deben exceder de 2H_46M_30S. Los valores que son demasiado grandes paraun margen o una resolución se redondean de manera que correspondan a los valores límitepara ese margen y esa resolución (p. ej. 2H_10MS).

Temporizadores de retardo

S_EVERTZ (Temporizador con retardo a la conexión)

Al activarse su entrada “SET”, empieza a contar el tiempo programado, tras el cual activa lasalida “Q”. Al recibir un pulso en la entrada “SET”, empieza a contar el tiempo programado sinactivar la salida ”Q” desconectándose el conteo instantáneamente que cesa el pulso en el“SET”. La entrada “RESET” predomina sobre la entrada “SET”, por lo tanto al recibir un pulsoen la entrada “RESET” mientras el temporizador esta contando o activado, la salida ”Q” quedadesactivada ”0”.

S_SEVERTZ (Temporizador con retardo a la conexión con memoria)

Al activarse su entrada “SET”, empieza a contar el tiempo programado, tras el cual activa lasalida “Q”. Al recibir un pulso en la entrada “SET”, empieza a contar el tiempo programado sinactivar la salida ”Q” desconectándose el conteo instantáneamente que cesa el pulso en el“SET”, memorizando el tiempo transcurrido, que sumado al tiempo posterior de un siguiente“SET”, llegara al tiempo establecido activando la salida “Q”. La entrada “RESET” predomina

PACO
Stamp
Page 12: STEP 7 Funciones y operaciones

sobre la entrada “SET”, por lo tanto al recibir un pulso en la entrada “RESET” mientras eltemporizador esta contando o activado, la salida ”Q” queda desactivada ”0” además de borrarla memoria del temporizador.

S_AVERTZ (Temporizador con retardo a la desconexión)

Al cambiar su entrada “SET” de “1” a “0”, empieza a contar el tiempo programado, tras el cualdesactiva la salida “Q”. Al recibir un pulso en la entrada “SET”, empieza a contar el tiempoprogramado sin desactivar la salida ”Q” desconectándose el conteo instantáneamente querecibe el flanco de bajada de un nuevo pulso en el “SET”. La entrada “RESET” predominasobre la entrada “SET”, por lo tanto al recibir un pulso en la entrada “RESET” mientras eltemporizador esta contando o activado, la salida ”Q” queda desactivada ”0”.

Temporizadores de impulso

S_IMPULS (Arrancar temporizador con impulso)

Al activarse su entrada “SET”, activa instantáneamente la salida “Q”, empezando a contar eltiempo programado tras el cual desactiva la salida “Q”. La desactivación de la entrada “SET”durante el funcionamiento del temporizador interrumpe el estado activo de “Q” desactivando lasalida y desconectándose el conteo. La entrada “RESET” predomina sobre la entrada “SET”,por lo tanto al recibir un pulso en la entrada “RESET” mientras el temporizador estafuncionando, la salida ”Q” queda desactivada ”0”.

S_VIMP (Arrancar temporizador con impulso prolongado)

Al activarse su entrada “SET”, activa instantáneamente la salida “Q”, empezando a contar eltiempo programado tras el cual desactiva la salida “Q”. La desactivación de la entrada “SET”durante el funcionamiento del temporizador no interrumpe el estado activo de “Q”, si no que eltemporizador continua el conteo y manteniendo activa la salida “Q” hasta que termina el tiempoestablecido. En el supuesto caso que mientras el temporizador estuviese funcionando,recibiese un nuevo pulso en la entrada “SET” tras un pulso anterior en la misma entrada, lasalida “Q” se mantendría activa reactivándose el conteo, por lo tanto, manteniéndose por mas

PACO
Stamp
Page 13: STEP 7 Funciones y operaciones

tiempo el funcionamiento del temporizador y la salida “Q”. La entrada “RESET” predominasobre la entrada “SET”, por lo tanto al recibir un pulso en la entrada “RESET” mientras eltemporizador esta funcionando, la salida ”Q” y el tiempo de conteo quedan desactivados ”0”.

Instrucciones de bit para temporizadores

---(SI) Arrancar temporizador con impulso

---(SV) Arrancar temporizador con impulso

---(SE) Arrancar temporizador con retardo a la conexión

Basado en el mismo funcionamiento que el S_IMPULS, laactivación de la entrada E 0.0 de "0" a "1" (flanco crecienteen el RLO), el temporizador T5 arranca. El temporizadorcontinúa en marcha con el valor de temporización indicadode 2 s mientras E 0.0 sea "1". Si el estado de señal en E 0.0cambia de "1" a "0" antes de transcurrir el tiempo, eltemporizador se para. La salida A 4.0 es "1" mientras eltemporizador está en marcha. Si el estado de señal en laentrada E 0.1 cambia de "0" a "1", el temporizador T5 sepone a 0, es decir, se para y el valor de temporizaciónrestante se pone a "0".

Basado en el mismo funcionamiento que el S_VIMP, laactivación de la entrada E 0.0 de "0" a "1" (flanco crecienteen el RLO), el temporizador T5 arranca. El temporizadorcontinúa en marcha con el valor de temporización indicadosin ser afectado por un flanco negativo en el RLO. Si elestado de señal en E 0.0 cambia de "0" a "1" antes detranscurrir el tiempo, el temporizador se vuelve a arrancar. Lasalida A 4.0 es "1" mientras el temporizador está en marcha.Si el estado de señal en la entrada E 0.1 cambia de "0" a "1",el temporizador T5 se pone a 0, es decir que se para y que elvalor de temporización restante se pone a "0".

Basado en el mismo funcionamiento que el S_EVERZ, laactivación de la entrada E 0.0 de "0" a "1" (flanco crecienteen el RLO), el temporizador T5 arranca. Si transcurre eltiempo y el estado de señal en E 0.0 sigue siendo "1", lasalida A 4.0 es "1". Si el estado de señal en la entrada E 0.0cambia de "1" a "0", el temporizador cambia a la marcha envacío y A 4.0 es "0". Si el estado de señal en la entrada E 0.1cambia de "0" a "1", el temporizador T5 se pone a 0, es decir,se para y el valor de temporización restante se pone a "0".

PACO
Stamp
Page 14: STEP 7 Funciones y operaciones

---(SS) Arrancar temporizador con retardo a la conexión con memoria

---(SA) Arrancar temporizador con retardo a la desconexión

Basado en el mismo funcionamiento que el S_AVERZ, laactivación de la entrada E 0.0 de "1" a "0", el temporizadorarranca.A 4.0 es "1" si E 0.0 es "1" o si el temporizador está enmarcha. Si el estado de señal en la entrada E 0.1 cambia de"0" a "1", el temporizador T5 se pone a 0, es decir que separa y que el valor de temporización restante se pone a "0".

Basado en el mismo funcionamiento que el S_SEVERZ, laactivación de la entrada E 0.0 de "0" a "1" (flanco crecienteen el RLO), el temporizador T5 arranca. Si el estado de señalen la entrada E 0.0 cambia de "0" a "1" antes de transcurrir eltiempo, el temporizador se vuelve a arrancar. La salida A 4.0es "1" si ha transcurrido el tiempo. Si el estado de señal en laentrada E 0.1 es "1", el temporizador T5 se pone a 0, esdecir, se para y el valor de temporización restante se pone a"0".

PACO
Stamp
Page 15: STEP 7 Funciones y operaciones

Contadores

Tabla correspondiente al símbolo SIMATIC de los temporizadores anteriormente explicados.

ParámetroSIMATIC

Tipo dedatos

Area dememoria

Descripción

N de Z COUNTER Z Numero de identificación del contador, el áreadepende la CPU utilizada.

ZV BOOL E, A, M, L, D Entrada de conteo adelante.ZR BOOL E, A, M, L, D Entrada de conteo atrás.S BOOL E, A, M, L, D Entrada para preseleccionar el contador.

ZW WORD E, A, M, L, D Valor para preseleccionar el contador.R BOOL E, A, M, L, D Entrada de puesta a 0.

DUAL WORD E, A, M, L, D Valor actual del contador, numero binario.DEZ WORD E, A, M, L, D Valor actual del contador, numero BCD.

Q BOOL E, A, M, L, D Estado del contador.

Parámetro SIMATIC Tipo dedatos

Area dememoria

Descripción

<C-Nr.> COUNTER Z Numero del contadorpreseleccionado.

<Valor preseleccionado> WORD E, A, M, L, D Valor para la preselección BCD (0-999).

Valor para preseleccionar el contador en forma de C#<valor> en el margen comprendido entre0 y 999.

ZAEHLER (incrementar/decrementar)

La cantidad desde la que el contador comienza a contar es seleccionada en la entrada ZW alactivar S mediante un flanco ascendente. La entrada ZV incrementa en 1 por cada pulso querecibe el valor preseleccionado. La entrada ZR decrementa en 1 por cada pulso que recibe elvalor preseleccionado. Si hay un flanco ascendente en la entrada R, el contador se pone a ceroy el valor de contaje es 0. El máximo y mínimo valor admisible por el contadores "999" y “0”, yaque deja de incrementar y decrementar. Al producirse un flanco ascendente en ambas entradasde contaje, el valor de contaje no varía. El estado de señal de la salida Q será "1" si el valor decontaje es mayor que cero, y será "0" si el valor de contaje es igual a cero.

Al cambiar la entrada E 0.2 de "0" a "1", el contador toma el valor de preselección de MW10. Siel estado de señal en E 0.0 cambia de "0" a "1", el valor del contador Z10 incrementa en "1", amenos que el valor de Z10 fuera "999". Si E 0.1 cambia de "0" a "1", Z10 decrementa en "1", ano ser que el valor de Z10 fuera cero. La salida A 4.0 será "1" si el valor de Z10 no es cero.

PACO
Stamp
Page 16: STEP 7 Funciones y operaciones

Z_VORN (incrementar contador)

La cantidad desde la que el contador comienza a contar es seleccionada en la entrada ZW alactivar S mediante un flanco ascendente. La entrada ZV incrementa en 1 por cada pulso querecibe al valor preseleccionado. Si hay un flanco ascendente en la entrada R, el contador sepone a cero y el valor de contaje es 0. en la entrada R el contador se pone a 0, y entonces elvalor de contaje es cero. El máximo valor admisible por el contadores "999", a partir de aquí, elcontador deja de incrementar.

Al cambiar la entrada E 0.2 de "0" a "1", el contador toma el valor predeterminado para MW10.Si el estado de señal en E 0.0 cambia de "0" a "1", el valor del contador Z10 se incrementa en"1", a menos que el valor de Z10 fuera "999". La salida A 4.0 será "1" siempre que el valor deZ10 no sea cero.

Z_RUECK (decrementar contador)

La cantidad desde la que el contador comienza a contar es seleccionada en la entrada ZW alactivar S mediante un flanco ascendente. La entrada ZR decrementa en 1 por cada pulso querecibe al valor preseleccionado. Si hay un flanco ascendente en la entrada R, el contador sepone a cero y el valor de contaje es 0. en la entrada R el contador se pone a 0, y entonces elvalor de contaje es cero. El mínimo valor admisible por el contadores "0", a partir de aquí, elcontador deja de decrementar.

Al cambiar la entrada E 0.2 de "0" a "1", el contador toma el valor de preselección de MW10. Siel estado de señal en E 0.0 cambia de "0" a "1", el valor del contador Z10 decrementa en "1", amenos que el valor de Z10 fuera "0". La salida A 4.0 será "1" siempre que el valor de Z10 nosea cero.

Instrucciones de bit para contadores

---(SZ) Poner el contador en el valor inicial

Se ejecuta solamente en caso de que haya un flanco ascendente en el RLO. En este caso setransmite el valor predeterminado al contador indicado.

PACO
Stamp
Page 17: STEP 7 Funciones y operaciones

El valor ”100” quedará preseleccionado para el contador Z5 si en la entrada E 0.0 se produceun flanco ascendente (cambio de "0" a "1"). El valor del contador Z5 no se altera en caso deque no se produzca ningún flanco ascendente.

---(ZV) Contar adelante

Incrementa en "1" el valor del contador si hay un flanco ascendente en el RLO. El valor máximoa partir del cual no se puede incrementar mas es "999".

---(ZR) Contar atrás

Decrementa en "1" el valor del contador si hay un flanco ascendente en el RLO. El valormínimo a partir del cual no se puede decrementar mas es “0”.

Al cambiar E 0.0 de "0" a "1" (flanco ascendente en elRLO), se carga el valor predeterminado de "100" en elcontador Z10.Si el estado de señal de E 0.1 cambia de "0" a "1"(flanco ascendente en el RLO), se decrementa en "1".A partir de “0”, el contador deja de decrementar.

Al cambiar E 0.0 de "0" a "1" (flanco ascendente en elRLO), se carga el valor predeterminado de "100" en elcontador Z10. Si el estado de señal de E 0.1 cambia de"0" a "1" (flanco ascendente en el RLO), se aumenta en"1" el valor de contaje del contador Z10. Si el estado deseñal de E 0.2 es 1, el contador se pone a "0". A partirde “999” el contador deja de incrementar.

PACO
Stamp
Page 18: STEP 7 Funciones y operaciones

Operaciones de conversión

BCD_I Convertir BCD a entero de 16 bits

Parámetro Tipo de datos Area de memoria DescripciónEN BOOL E, A, M, L, D Entrada de habilitación

ENO BOOL E, A, M, L, D Salida de habilitaciónIN WORD E, A, M, L, D Numero BCD

OUT INT E, A, M, L, D Valor entero(16 bits) de un numero BCD

BCD_DI Convertir BCD a entero de 32 bits

Parámetro Tipo de datos Area de memoria DescripciónEN BOOL E, A, M, L, D Entrada de habilitación

ENO BOOL E, A, M, L, D Salida de habilitaciónIN DWORD E, A, M, L, D Numero BCD

OUT INT E, A, M, L, D Valor entero(32 bits) de un numero BCD

I_BCD Convertir entero de 16 bits a BCD

Parámetro Tipo de datos Area de memoria DescripciónEN BOOL E, A, M, L, D Entrada de habilitación

ENO BOOL E, A, M, L, D Salida de habilitaciónIN INT E, A, M, L, D Entero 16 bits

OUT WORD E, A, M, L, D Valor BCD de entero de16 bits

DI_BCD Convertir entero de 32 bits A BCD

Parámetro Tipo de datos Area de memoria DescripciónEN BOOL E, A, M, L, D Entrada de habilitación

ENO BOOL E, A, M, L, D Salida de habilitaciónIN DINT E, A, M, L, D Entero 32 bits

OUT DWORD E, A, M, L, D Valor BCD de entero de 32 bits

Lee el contenido de la entrada IN como un numero decimal codificadoen binario de 3 dígitos (+/- 999), convertiendolo en un valor entero de16 bits. La salida OUT contiene el resultado en forma de entero. Lasalida ENO siempre tiene el mismo estado de señal que la entrada EN.

Lee el contenido de la entrada IN como un numero decimal codificadoen binario de 7 dígitos (+/- 9999999), convertiendolo en un valor enterode 32 bits. La salida OUT contiene el resultado en forma de entero. Lasalida ENO siempre tiene el mismo estado de señal que la entrada EN.

Lee el contenido de la entrada IN como un valor entero de 16 bits,convertiendolo en un numero de 3 dígitos en forma decimal codificadoen binario (+/- 999). La salida OUT contiene el resultado. En caso dedesbordamiento ENO = 0.

Lee el contenido de la entrada IN como un valor entero de 32 bits,convertiendolo en un numero de 7 dígitos en forma decimal codificadoen binario (+/- 9999999). La salida OUT contiene el resultado. En casode desbordamiento ENO = 0.

PACO
Stamp
Page 19: STEP 7 Funciones y operaciones

TRUNC Truncar entero

Parámetro Tipo de datos Area de memoria DescripciónEN BOOL E, A, M, L, D Entrada de habilitación

ENO BOOL E, A, M, L, D Salida de habilitaciónIN REAL E, A, M, L, D Numero real a convertir

OUT DINT E, A, M, L, D Parte entera del valor d´IN

ROUND Redondear entero

Parámetro Tipo de datos Area de memoria DescripciónEN BOOL E, A, M, L, D Entrada de habilitación

ENO BOOL E, A, M, L, D Salida de habilitaciónIN REAL E, A, M, L, D Valor a redondear

OUT DINT E, A, M, L, D IN, redondear al próximo entero

DI_R Convertir entero en 32 bits a real

Parámetro Tipo de datos Area de memoria DescripciónEN BOOL E, A, M, L, D Entrada de habilitación

ENO BOOL E, A, M, L, D Salida de habilitaciónIN DINT E, A, M, L, D Entero 32 bits

OUT REAL E, A, M, L, D Numero real

I_DI Convertir entero de 16 bits a entero de 32 bits

Parámetro Tipo de datos Area de memoria DescripciónEN BOOL E, A, M, L, D Entrada de habilitación

ENO BOOL E, A, M, L, D Salida de habilitaciónIN INT E, A, M, L, D Valor entero 16 bits a convertir

OUT DINT E, A, M, L, D Resultado entero 32 bits

Lee el contenido de la entrada IN como un valor real, convertiendoloen un entero de 32 bits. El resultado es la parte entera del numero realque extrae la salida OUT. En caso de desbordamiento ENO = 0.

Lee el contenido de la entrada IN como numero real, convertiendolo enun entero de 32 bits. El resultado es el numero entero mas próximo(redondeo). Si el numero real se encuentra en el centro de dosenteros, el numero par es devuelto. El resultado se deposita en lasalida OUT. En caso de desbordamiento ENO = 0.

Lee el contenido de la entrada IN como valor entero de 32 bits,convertiendolo en numero real. El resultado se deposita en la salidaOUT. La salida ENO siempre tiene el mismo estado de señal que laentrada EN.

Lee el contenido de la entrada IN como valor entero de 16 bits,convertiendolo en entero de 32 bits. El resultado se deposita en lasalida OUT. La salida ENO siempre tiene el mismo estado de señalque la entrada EN.

PACO
Stamp
Page 20: STEP 7 Funciones y operaciones

CEIL Redondear numero real a entero superior

Parámetro Tipo de datos Area de memoria DescripciónEN BOOL E, A, M, L, D Entrada de habilitación

ENO BOOL E, A, M, L, D Salida de habilitaciónIN REAL E, A, M, L, D Numero real a convertir

OUT INT E, A, M, L, D Entero de 32 bits inferior que es masgrande que el numero real

FLOOR Redondear numero real a entero inferior

Parámetro Tipo de datos Area de memoria DescripciónEN BOOL E, A, M, L, D Entrada de habilitación

ENO BOOL E, A, M, L, D Salida de habilitaciónIN REAL E, A, M, L, D Numero real a convertir

OUT DINT E, A, M, L, D Entero de 32 bits superior menor que elnumero real

INV_I Complemento a 1 de un entero de 16 bits

Parámetro Tipo de datos Area de memoria DescripciónEN BOOL E, A, M, L, D Entrada de habilitación

ENO BOOL E, A, M, L, D Salida de habilitaciónIN INT E, A, M, L, D Valor entero 16 bits

OUT INT E, A, M, L, D Complemento a 1 de un entero de 16bits d´IN

INV_DI Complemento a 1 de un entero de 32 bits

Parámetro Tipo de datos Area de memoria DescripciónEN BOOL E, A, M, L, D Entrada de habilitación

ENO BOOL E, A, M, L, D Salida de habilitaciónIN DINT E, A, M, L, D Valor entero de 32 bits de entrada

OUT DINT E, A, M, L, D Complemento a 1 de entero de 32 bitsd´IN

Lee el contenido de la entrada IN como numero real, convertiendolo enentero de 32 bits. El resultado es el entero inferior que es mas grandeque el numero real (redondear). En caso de desbordamiento ENO = 0.

Lee el contenido de la entrada IN como numero real, convertiendolo enentero de 32 bits. El resultado se deposita en MD12. La salida A 0.0ES “1” si se produce un desbordamiento o si no se procesa lainstrucción E 0.0 = 0.

Lee el contenido de la entrada IN combinando el patrón hexadecimalW#16#FFFF mediante O-EXCLUSIVA. Esta operación invierte elestado de cada bit. La salida ENO siempre tiene el mismo estado deseñal que la entrada EN.

Lee el contenido de la entrada IN combinando el patrón hexadecimalW#16#FFFF mediante O-EXCLUSIVA. Esta operación invierte elestado de cada bit. La salida ENO siempre tiene el mismo estado deseñal que la entrada EN.

PACO
Stamp
Page 21: STEP 7 Funciones y operaciones

NEG_I Complemento a 2 de un entero de 16 bits

Parámetro Tipo de datos Area de memoria DescripciónEN BOOL E, A, M, L, D Entrada de habilitación

ENO BOOL E, A, M, L, D Salida de habilitaciónIN INT E, A, M, L, D Valor entero de 16 bits de entrada

OUT INT E, A, M, L, D Complemento a 2 de entero de 16 bitsd´IN

NEG_DI Complemento a 2 de un entero de 32 bits

Parámetro Tipo de datos Area de memoria DescripciónEN BOOL E, A, M, L, D Entrada de habilitación

ENO BOOL E, A, M, L, D Salida de habilitaciónIN DINT E, A, M, L, D Valor entero de 32 bits de entrada

OUT DINT E, A, M, L, D Complemento a 2 de entero de 32 bitsd´IN

NEG_R Invertir el signo de un numero real

Parámetro Tipo de datos Area de memoria DescripciónEN BOOL E, A, M, L, D Entrada de habilitación

ENO BOOL E, A, M, L, D Salida de habilitaciónIN REAL E, A, M, L, D Valor de entrada: Numero real

OUT REAL E, A, M, L, D Numero real IN con signo negado

Lee el contenido de la entrada IN ejecutando la operaciónComplemento a 2. La operación invierte el signo (Ej: De un valorpositivo a uno negativo). La salida ENO siempre tiene el mismo estadode señal que la entrada EN, a excepción de que si el estado de señalde ENO es 1, se produce un desbordamiento, el estado de señal deENO es 0.

Lee el contenido de la entrada IN ejecutando la operaciónComplemento a 2. La operación invierte el signo (Ej: De un valorpositivo a uno negativo). La salida ENO siempre tiene el mismo estadode señal que la entrada EN, a excepción de que si el estado de señalde ENO es 1, se produce un desbordamiento, el estado de señal deENO es 0.

Lee el contenido de la entrada IN invertiendo el signo. Esta operaciónequivale a una multiplicación por (-1). La operación invierte el signo(Ej: de un valor positivo a uno negativo). La salida ENO siempre tieneel mismo estado de señal que la entrada EN, a excepción de que si elestado de señal de ENO es 1, se produce un desbordamiento, elestado de señal de ENO es 0.

PACO
Stamp
Page 22: STEP 7 Funciones y operaciones

Operaciones de comparación (>, <, ==, <>, <=, >=)

Las operaciones de comparación sirven para comparar los siguientes pares de valoresnuméricos:

- Dos enteros (16 bits)- Dos enteros dobles (32 bits)- Dos números reales (de coma flotante, 32 bits)

Los valores numéricos se cargan en los ACU's 1 y 2. Las operaciones de comparacióncomparan el valor del ACU2 con el valor depositado en el ACU1.El resultado de la comparación es un dígito binario. Un 1 significa que el resultado de lacomparación es verdadero, mientras que un 0 significa que el resultado de la comparación esfalso. Este resultado se encuentra almacenado en el bit de resultado lógico (RLO). Esteresultado puede emplearse para su posterior procesamiento.

Parámetro Carácter de relación Descripciónxx >, <, = =, <>, <=, >= Tipo de comparación

xx= Tipo de comparación: > Mayor< Menor

== Igual<> Diferente>= Mayor o igual<= Menor o igual

CMP_D >= xx Comparar enteros (32 bits) (>, <, ==, <>, <=, >=)

Parámetro Tipo de datos Area de memoria DescripciónEntrada de cuadro BOOL E, A, M, L, D Entrada de habilitaciónSalida de cuadro BOOL E, A, M, L, D Salida de habilitación

IN1 DINT E, A, M, L, D Primer valor a compararIN2 DINT E, A, M, L, D Segundo valor a comparar

Las entradas IN1 y IN2 son comparadas mediante al criterio de comparación que se hayaseleccionado.

La salida A 4.0 se activa si E0.0 Y E0.1 tienen el estado de señal 1 Y si MD0 >= MD4 Y si E0.2tiene el estado de señal 1.

CMP_I >= xx Comparar enteros (16 bits) (>, <, ==, <>, <=, >=)

Parámetro Tipo de datos Area de memoria DescripciónEntrada de cuadro BOOL E, A, M, L, D Entrada de habilitaciónSalida de cuadro BOOL E, A, M, L, D Salida de habilitación

IN1 INT E, A, M, L, D Primer valor a compararIN2 INT E, A, M, L, D Segundo valor a comparar

Las entradas IN1 y IN2 son comparadas mediante al criterio de comparación que se hayaseleccionado.

SímboloSIMATIC

PACO
Stamp
Page 23: STEP 7 Funciones y operaciones

La salida A 4.0 se activa si E0.0 Y E0.1 son 1 Y si MW0 >= MW2.

CMP_R >= xx Comparar números reales (>, <, ==, <>, <=, >=)

Parámetro Tipo de datos Area de memoria DescripciónEntrada de cuadro BOOL E, A, M, L, D Entrada de habilitaciónSalida de cuadro BOOL E, A, M, L, D Salida de habilitación

IN1 REAL E, A, M, L, D Primer valor a compararIN2 REAL E, A, M, L, D Segundo valor a comparar

Las entradas IN1 y IN2 son comparadas mediante al criterio de comparación que se hayaseleccionado.

La salida A4.0 se activa si E0.0 Y E0.1 son 1 Y si MD0 >= MD4 Y si E0.2 es 1.

Operación de transferencia (MOVE)

Parámetro Tipo de datos Area dememoria

Descripción

EN BOOL E, A, M, L, D Entrada de habilitaciónENO BOOL E, A, M, L, D Salida de habilitación

IN Todos los tipos de datos de 8, 16i 32 bits de longitud

E, A, M, L, D,T, Z

Valor de la fuente

O E, A, M, L, D Dirección de destino

Al activar la entrada EN se copia el valor asignado en la entrada IN, en la dirección que indicala salida O. ENO tiene el mismo estado de señal que la entrada EN. Como muestra la tabla, laoperación MOVE solo puede copiar objetos con extensión byte, word o double word.

La dependencia del MCR solamente se activa si el cuadro MOVE se coloca dentro de un áreade MCR activa. En área MCR los datos direccionados se copian tal como se ha descrito arriba,siempre que el MCR esté conectado y haya corriente en la entrada de habilitación, el bitdireccionado se pone a "1" (se activa) ó a "0" (se desactiva), tal como se ha descrito másarriba. Si el MCR está desconectado y se ejecuta una operación MOVE, en la direcciónindicada por OUT se escribirá siempre el valor "0", independientemente de cuál sea el estadoactual de IN.

SímboloSIMATIC

SímboloSIMATIC

PACO
Stamp
Page 24: STEP 7 Funciones y operaciones

Acumuladores (ACU1 y ACU2)

El acumulador 1 (ACU 1) y el acumulador 2 (ACU 2) son dos registros universales de 32 bitsque se emplean para procesar bytes, palabras y palabras dobles. En estos acumuladores sepueden cargar constantes o valores depositados en la memoria como operandos y ejecutaroperaciones lógicas con ellos. También es posible transferir el resultado en ACU 1 a unadirección (un módulo de datos, una salida, etc.).Cada acumulador puede descomponerse en dos palabras de 16 bits (palabra baja y alta). Lapalabra baja contiene los bits de menor peso y la alta los de mayor peso lógico.Todas las posibles operaciones que pueden realizarse son:

Cargar: que siempre actúa sobre ACU 1 y guarda el antiguo contenido en ACU 2 (perdiéndoseel valor antiguo de ACU 2). La carga de una palabra actúa sobre la palabra baja del ACU 1.

Transferir: copia el contenido de ACU 1 en una dirección de memoria, sin perder el valor delos acumuladores.

Intercambiar el contenido de los acumuladores: mediante la instrucción TAK.Realizar una operación entre los acumuladores, almacenando el resultado en ACU 1 sinvariar ACU 2. Las operaciones pueden ser de comparación, de lógica digital y de aritmética.

Definición de bytes y palabras en un registro de 32 bits (por ejemplo en el ACU 1):

PACO
Stamp
Page 25: STEP 7 Funciones y operaciones

Funciones de salto

---( JMP)--- Operacion de salto incondicional (absoluto)

Interrumpen el desarrollo normal del programa, haciendo que el mismo salte a una metadeterminada. La meta define el punto en que deberá continuar el programa. El salto se efectúaindependientemente de condiciones.

---( JMP) Saltar si la señal es 1

Funciona como un salto absoluto cuando no hay otro elemento KOP entre el conductorizquierdo y la operación.

---( JMP) Salto en el bloque si el RLO es 1

Funciona como un salto condicional cuando el RLO de la combinación lógica anterior es "1".Si un salto condicional no se ejecuta, el RLO cambia a "1" después de la operación de salto.

---( JMPN) (Saltar si la señal es 0)

Funciona como un salto condicional cuando el RLO de la combinación lógica anterior es "0". Siun salto condicional no se lleva a cabo, el RLO cambia a "1" después de la operación de salto.

El salto es siempre ejecutado. Las operacionesque se encuentren entre la operación de salto yla meta no se ejecutan.

Si la entrada E 0.0 es 0 se ejecuta el salto a lameta CAS1. Al llevarse a cabo el salto, en lasalida A 4.0 no se ejecuta la operación ”Ponersalida a “0”, aunque E 0.3 sea 1.

PACO
Stamp
Page 26: STEP 7 Funciones y operaciones

LAVEL Meta

Cada salto ---( JMP ) tiene que tener una meta (LABEL). Una meta secompone de 4 caracteres como máximo. El primer carácter debe sersiempre una letra, no importando si el resto son números o letras. Lameta se especifica normalmente en el operando de la instrucción desalto, y seguida de dos puntos frente a la línea que posee la meta (verejemplos).

Si E 0.0 = 1 se ejecuta el salto a la metaCAS1. Al llevarse a cabo el salto, en la salidaA 4.0 no se ejecuta la operación ”Poner salidaa 0”, aunque E 0.3 sea 1.

Si la entrada E 0.0 es 0, se ejecuta el salto a lameta CAS1. Al ejecutarse el salto, en la salidaA 4.0 no se lleva a cabo la operación ”Ponersalida a 0”, aunque la entrada E 0.3 sea 1.

PACO
Stamp
Page 27: STEP 7 Funciones y operaciones

Funciones matemáticas fundamentales (Aritmética de coma fija)

ADD_I Suma de números enteros (16 bits)

Parámetro Tipo de datos Area de memoria DescripciónEN BOOL E, A, M, L, D Entrada de habilitación

ENO BOOL E, A, M, L, D Salida de habilitaciónIN1 INT E, A, M, L, D Primer valor de la sumaIN2 INT E, A, M, L, D Segundo valor de la suma

OUT INT E, A, M, L, D Resultado de la suma

ADD_DI Suma de números enteros (32 bits)

Parámetro Tipo de datos Area de memoria DescripciónEN BOOL E, A, M, L, D Entrada de habilitación

ENO BOOL E, A, M, L, D Salida de habilitaciónIN1 DINT E, A, M, L, D Primer valor de la sumaIN2 DINT E, A, M, L, D Segundo valor de la suma

OUT DINT E, A, M, L, D Resultado de la suma

SUB_I Resta de números enteros (16 bits)

Parámetro Tipo de datos Area de memoria DescripciónEN BOOL E, A, M, L, D Entrada de habilitación

ENO BOOL E, A, M, L, D Salida de habilitaciónIN1 INT E, A, M, L, D Primer valor de la restaIN2 INT E, A, M, L, D Segundo valor de la resta

OUT INT E, A, M, L, D Resultado de la resta

Realiza la suma de números enteros de las entradas IN1 e IN2 cuandola entrada de habilitación EN esta en “1”. El resultado puedeconsultarse en la salida OUT. En el caso que hubiese desbordamientoo desbordamiento negativo por salir el resultado del rango valido denúmeros enteros (16 bits), el bit OV y el bit OS, serian = “1”, y la salidaENO = “0”, por lo tanto, las siguientes operaciones a esta, combinadasa través de ENO, no serán ejecutadas.

Realiza la resta de números enteros de las entradas IN1 e IN2 cuandola entrada de habilitación EN esta en 1. El resultado puede consultarseen la salida OUT. En el caso que hubiese desbordamiento odesbordamiento negativo por salir el resultado del rango valido denúmeros enteros (16 bits), el bit OV y el bit OS, serian = “1”, y la salidaENO = “0”, por lo tanto, las siguientes operaciones a esta, combinadasa través de ENO, no serán ejecutadas.

Realiza la suma de números enteros de las entradas IN1 e IN2 cuandola entrada de habilitación EN esta en “1”. El resultado puedeconsultarse en la salida OUT. En el caso que hubiese desbordamientoo desbordamiento negativo por salir el resultado del rango valido denúmeros enteros (32 bits), el bit OV y el bit OS, serian = “1”, y la salidaENO = “0”, por lo tanto, las siguientes operaciones a esta, combinadasa través de ENO, no serán ejecutadas.

PACO
Stamp
Page 28: STEP 7 Funciones y operaciones

SUB_DI Resta de números enteros (32 bits)

Parámetro Tipo de datos Area de memoria DescripciónEN BOOL E, A, M, L, D Entrada de habilitación

ENO BOOL E, A, M, L, D Salida de habilitaciónIN1 DINT E, A, M, L, D Primer valor de la restaIN2 DINT E, A, M, L, D Segundo valor de la resta

OUT DINT E, A, M, L, D Resultado de la resta

MUL_I Producto de números enteros (16 bits)

Parámetro Tipo de datos Area de memoria DescripciónEN BOOL E, A, M, L, D Entrada de habilitación

ENO BOOL E, A, M, L, D Salida de habilitaciónIN1 INT E, A, M, L, D Primer valor del productoIN2 INT E, A, M, L, D Segundo valor del producto

OUT INT E, A, M, L, D Resultado del producto

MUL_DI Producto de números enteros (32 bits)

Parámetro Tipo de datos Area de memoria DescripciónEN BOOL E, A, M, L, D Entrada de habilitación

ENO BOOL E, A, M, L, D Salida de habilitaciónIN1 DINT E, A, M, L, D Primer valor del productoIN2 DINT E, A, M, L, D Segundo valor del producto

OUT DINT E, A, M, L, D Resultado del producto

Realiza el producto de números enteros de las entradas IN1 e IN2cuando la entrada de habilitación EN esta en “1”. El resultado puedeconsultarse en la salida OUT. En el caso que hubiese desbordamientoo desbordamiento negativo por salir el resultado del rango valido denúmeros enteros (16 bits), el bit OV y el bit OS, serian = “1”, y la salidaENO = “0”, por lo tanto, las siguientes operaciones a esta, combinadasa través de ENO, no serán ejecutadas.

Realiza la resta de números enteros de las entradas IN1 e IN2 cuandola entrada de habilitación EN esta en 1. El resultado puede consultarseen la salida OUT. En el caso que hubiese desbordamiento odesbordamiento negativo por salir el resultado del rango valido denúmeros enteros (32 bits), el bit OV y el bit OS, serian = “1”, y la salidaENO = “0”, por lo tanto, las siguientes operaciones a esta, combinadasa través de ENO, no serán ejecutadas.

Realiza el producto de números enteros de las entradas IN1 e IN2cuando la entrada de habilitación EN esta en “1”. El resultado puedeconsultarse en la salida OUT. En el caso que hubiese desbordamientoo desbordamiento negativo por salir el resultado del rango valido denúmeros enteros (32 bits), el bit OV y el bit OS, serian = “1”, y la salidaENO = “0”, por lo tanto, las siguientes operaciones a esta, combinadasa través de ENO, no serán ejecutadas.

PACO
Stamp
Page 29: STEP 7 Funciones y operaciones

DIV_I División de números enteros (16 bits)

Parámetro Tipo de datos Area de memoria DescripciónEN BOOL E, A, M, L, D Entrada de habilitación

ENO BOOL E, A, M, L, D Salida de habilitaciónIN1 INT E, A, M, L, D Primer valor de la divisiónIN2 INT E, A, M, L, D Segundo valor de la división

OUT INT E, A, M, L, D Resultado de la división

DIV_I División de números enteros (32 bits)

Parámetro Tipo de datos Area de memoria DescripciónEN BOOL E, A, M, L, D Entrada de habilitación

ENO BOOL E, A, M, L, D Salida de habilitaciónIN1 DINT E, A, M, L, D Primer valor de la divisiónIN2 DINT E, A, M, L, D Segundo valor de la división

OUT DINT E, A, M, L, D Resultado de la división

MOD_DI Obtener resta de división de enteros (32 bits)

Parámetro Tipo de datos Area de memoria DescripciónEN BOOL E, A, M, L, D Entrada de habilitación

ENO BOOL E, A, M, L, D Salida de habilitaciónIN1 DINT E, A, M, L, D DividendoIN2 DINT E, A, M, L, D Divisor

OUT DINT E, A, M, L, D Resta de la división

Realiza la división de números enteros de las entradas IN1 e IN2cuando la entrada de habilitación EN esta en “1”. El resultado puedeconsultarse en la salida OUT. En el caso que hubiese desbordamientoo desbordamiento negativo por salir el resultado del rango valido denúmeros enteros (16 bits), el bit OV y el bit OS, serian = “1”, y la salidaENO = “0”, por lo tanto, las siguientes operaciones a esta, combinadasa través de ENO, no serán ejecutadas.

Realiza la división de números enteros de las entradas IN1 e IN2cuando la entrada de habilitación EN esta en “1”. El resultado puedeconsultarse en la salida OUT. En el caso que hubiese desbordamientoo desbordamiento negativo por salir el resultado del rango valido denúmeros enteros (32 bits), el bit OV y el bit OS, serian = “1”, y la salidaENO = “0”, por lo tanto, las siguientes operaciones a esta, combinadasa través de ENO, no serán ejecutadas.

Realiza la división de números enteros de las entradas IN1 e IN2cuando la entrada de habilitación EN esta en “1”. La resta de la divisiónpuede consultarse en la salida OUT. En el caso que hubiesedesbordamiento o desbordamiento negativo por salir el resultado delrango valido de números enteros (32 bits), el bit OV y el bit OS, serian= “1”, y la salida ENO = “0”, por lo tanto, las siguientes operaciones aesta, combinadas a través de ENO, no serán ejecutadas.

PACO
Stamp
Page 30: STEP 7 Funciones y operaciones

Bits de resultado (>, <, >=, <=, = =, <> 0)

Estas operaciones son utilizadas para determinar la relación entre el resultado obtenido de unafunción aritmética y “0” mediante la comparación.

Comparación con cero Negación de la comparación>0---I I--- >0---I/I---<0---I I--- <0---I/I---

>=0---I I--- >=0---I/I---<=0---I I--- <=0---I/I---==0---I I--- ==0---I/I---<>0---I I--- <>0---I/I---

Comparación con cero Descripción detallada>0 Más grande que cero<0 Menor que cero

>=0 Más grande o igual que ceroM Menor o igual que cero

==0 Igual que cero<>0 Diferente que cero

PACO
Stamp
Page 31: STEP 7 Funciones y operaciones

Funciones matemáticas fundamentales (Aritmética de coma flotante)

ADD_R Suma de números reales

Parámetro Tipo de datos Area de memoria DescripciónEN BOOL E, A, M, L, D Entrada de habilitación

ENO BOOL E, A, M, L, D Salida de habilitaciónIN1 REAL E, A, M, L, D Primer valor de la sumaIN2 REAL E, A, M, L, D Segundo valor de la suma

OUT REAL E, A, M, L, D Resultado de la suma

SUB_R Resta de números reales

Parámetro Tipo de datos Area de memoria DescripciónEN BOOL E, A, M, L, D Entrada de habilitación

ENO BOOL E, A, M, L, D Salida de habilitaciónIN1 REAL E, A, M, L, D Primer valor de la restaIN2 REAL E, A, M, L, D Segundo valor de la resta

OUT REAL E, A, M, L, D Resultado de la resta

MUL_R Producto de números reales

Parámetro Tipo de datos Area de memoria DescripciónEN BOOL E, A, M, L, D Entrada de habilitación

ENO BOOL E, A, M, L, D Salida de habilitaciónIN1 REAL E, A, M, L, D Primer valor del productoIN2 REAL E, A, M, L, D Segundo valor del producto

OUT REAL E, A, M, L, D Resultado del producto

Realiza la suma de números reales de las entradas IN1 e IN2 cuandola entrada de habilitación EN esta en “1”. El resultado puedeconsultarse en la salida OUT. En el caso que hubiese desbordamientoo desbordamiento negativo por salir el resultado del rango valido denúmeros reales, el bit OV y el bit OS, serian = “1”, y la salida ENO =“0”, por lo tanto, las siguientes operaciones a esta, combinadas através de ENO, no serán ejecutadas.

Realiza la resta de números reales de las entradas IN1 e IN2 cuandola entrada de habilitación EN esta en 1. El resultado puede consultarseen la salida OUT. En el caso que hubiese desbordamiento odesbordamiento negativo por salir el resultado del rango valido denúmeros reales, el bit OV y el bit OS, serian = “1”, y la salida ENO =“0”, por lo tanto, las siguientes operaciones a esta, combinadas através de ENO, no serán ejecutadas.

Realiza el producto de números reales de las entradas IN1 e IN2cuando la entrada de habilitación EN esta en “1”. El resultado puedeconsultarse en la salida OUT. En el caso que hubiese desbordamientoo desbordamiento negativo por salir el resultado del rango valido denúmeros reales, el bit OV y el bit OS, serian = “1”, y la salida ENO =“0”, por lo tanto, las siguientes operaciones a esta, combinadas através de ENO, no serán ejecutadas.

PACO
Stamp
Page 32: STEP 7 Funciones y operaciones

DIV_R División de números reales

Parámetro Tipo de datos Area de memoria DescripciónEN BOOL E, A, M, L, D Entrada de habilitación

ENO BOOL E, A, M, L, D Salida de habilitaciónIN1 REAL E, A, M, L, D Primer valor de la divisiónIN2 REAL E, A, M, L, D Segundo valor de la división

OUT REAL E, A, M, L, D Resultado de la división

ABS Valor absoluto de un número real

Parámetro Tipo de datos Area de memoria DescripciónEN BOOL E, A, M, L, D Entrada de habilitación

ENO BOOL E, A, M, L, D Salida de habilitaciónIN REAL E, A, M, L, D Numero real

OUT REAL E, A, M, L, D Valor absoluto del numero real

Realiza la división de números reales de las entradas IN1 e IN2cuando la entrada de habilitación EN esta en “1”. El resultado puedeconsultarse en la salida OUT. En el caso que hubiese desbordamientoo desbordamiento negativo por salir el resultado del rango valido denúmeros reales, el bit OV y el bit OS, serian = “1”, y la salida ENO =“0”, por lo tanto, las siguientes operaciones a esta, combinadas através de ENO, no serán ejecutadas.

Realiza el valor absoluto del numero real introducido por la entrada IN,cuando la entrada de habilitación EN esta en “1”. En la salida OUT seobtiene el valor absoluto. Si la salida ENO es = “1”, se realiza laconversión.

PACO
Stamp
Page 33: STEP 7 Funciones y operaciones

Funciones matemáticas avanzadas (Aritmética de coma flotante)

SIN Calculo del seno

Parámetro Tipo de datos Area de memoria DescripciónEN BOOL E, A, M, L, D Entrada de habilitación

ENO BOOL E, A, M, L, D Salida de habilitaciónIN REAL E, A, M, L, D Valor de entrada: Numero real

OUT REAL E, A, M, L, D Valor de salida: seno del numero real

ASIN Calculo del arcoseno

Parámetro Tipo de datos Area de memoria DescripciónEN BOOL E, A, M, L, D Entrada de habilitación

ENO BOOL E, A, M, L, D Salida de habilitaciónIN REAL E, A, M, L, D Valor de entrada: Numero real

OUT REAL E, A, M, L, D Valor de salida: arcoseno del numeroreal

COS Calculo del coseno

Parámetro Tipo de datos Area de memoria DescripciónEN BOOL E, A, M, L, D Entrada de habilitación

ENO BOOL E, A, M, L, D Salida de habilitaciónIN REAL E, A, M, L, D Valor de entrada: Numero real

OUT REAL E, A, M, L, D Valor de salida: coseno del numeroreal

ACOS Calculo del arcocoseno

Parámetro Tipo de datos Area de memoria DescripciónEN BOOL E, A, M, L, D Entrada de habilitación

ENO BOOL E, A, M, L, D Salida de habilitaciónIN REAL E, A, M, L, D Valor de entrada: Numero real

OUT REAL E, A, M, L, D Valor de salida: arcocoseno delnumero real

Realiza el calculo de seno del numero real introducido por la entradaIN cuando en la entrada de habilitación EN hay un “1”. El numero realrepresenta un ángulo en radianes. Si la salida ENO es = “1”, se realizala conversión.

Realiza el calculo del arcoseno del numero real introducido por laentrada IN cuando en la entrada de habilitación EN hay un “1” y elvalor introducido en la entrada tiene un rango de –1<= Valor deentrada <=1. El numero real representa un ángulo en radianes. Si lasalida ENO es = “1”, se realiza la conversión. El valor de salida tieneun rango de -π/2<= Valor de salida <=+π/2.

Realiza el calculo de coseno del numero real introducido por la entradaIN cuando en la entrada de habilitación EN hay un “1”. El numero realrepresenta un ángulo en radianes. Si la salida ENO es = “1”, se realizala conversión.

PACO
Stamp
Page 34: STEP 7 Funciones y operaciones

TAN Calculo de la tangente

Parámetro Tipo de datos Area de memoria DescripciónEN BOOL E, A, M, L, D Entrada de habilitación

ENO BOOL E, A, M, L, D Salida de habilitaciónIN REAL E, A, M, L, D Valor de entrada: Numero real

OUT REAL E, A, M, L, D Valor de salida: tangente del numeroreal

ATAN Calculo de la arcotangente

Parámetro Tipo de datos Area de memoria DescripciónEN BOOL E, A, M, L, D Entrada de habilitación

ENO BOOL E, A, M, L, D Salida de habilitaciónIN REAL E, A, M, L, D Valor de entrada: Numero real

OUT REAL E, A, M, L, D Valor de salida: tangente del numeroreal

EXP Calculo el exponente

Parámetro Tipo de datos Area de memoria DescripciónEN BOOL E, A, M, L, D Entrada de habilitación

ENO BOOL E, A, M, L, D Salida de habilitaciónIN REAL E, A, M, L, D Valor de entrada: Numero real

OUT REAL E, A, M, L, D Valor de salida: exponente del numeroreal

Realiza el calculo del arcocoseno del numero real introducido por laentrada IN cuando en la entrada de habilitación EN hay un “1” y elvalor introducido en la entrada tiene un rango de –1<= Valor deentrada <=1. El numero real representa un ángulo en radianes. Si lasalida ENO es = “1”, se realiza la conversión. El valor de salida tieneun rango de 0<= Valor de salida <=+π.

Realiza el calculo de la tangente del numero real introducido por laentrada IN cuando en la entrada de habilitación EN hay un “1”. Elnumero real representa un ángulo en radianes. Si la salida ENO es =“1”, se realiza la conversión.

Realiza el calculo de la arcotangente del numero real introducido por laentrada IN cuando en la entrada de habilitación EN hay un “1”. Elnumero real representa un ángulo en radianes. Si la salida ENO es =“1”, se realiza la conversión. El valor de salida tiene un rango de -π/2<=Valor de salida <=+π/2.

Realiza el calculo del exponente del numero real con la base e(=2.71828), introducido por la entrada IN cuando en la entrada dehabilitación EN hay un “1”. El numero real representa un ángulo enradianes. Si la salida ENO es = “1”, se realiza la conversión.

PACO
Stamp
Page 35: STEP 7 Funciones y operaciones

LN Calculo del logaritmo natural

Parámetro Tipo de datos Area de memoria DescripciónEN BOOL E, A, M, L, D Entrada de habilitación

ENO BOOL E, A, M, L, D Salida de habilitaciónIN REAL E, A, M, L, D Valor de entrada: Numero real

OUT REAL E, A, M, L, D Valor de salida: logaritmo natural delnumero real

SQR Calculo del cuadrado

Parámetro Tipo de datos Area de memoria DescripciónEN BOOL E, A, M, L, D Entrada de habilitación

ENO BOOL E, A, M, L, D Salida de habilitaciónIN REAL E, A, M, L, D Valor de entrada: Numero real

OUT REAL E, A, M, L, D Valor de salida: cuadrado del numeroreal

SQRT Calculo de la raíz cuadrada

Parámetro Tipo de datos Area de memoria DescripciónEN BOOL E, A, M, L, D Entrada de habilitación

ENO BOOL E, A, M, L, D Salida de habilitaciónIN REAL E, A, M, L, D Valor de entrada: Numero real

OUT REAL E, A, M, L, D Valor de salida: raíz cuadrada delnumero real

Realiza el calculo del logaritmo natural del numero real introducido porla entrada IN cuando en la entrada de habilitación EN hay un “1”. Elnumero real representa un ángulo en radianes. Si la salida ENO es =“1”, se realiza la conversión.

Realiza el calculo del cuadrado del numero real introducido por laentrada IN cuando en la entrada de habilitación EN hay un “1”. Elnumero real representa un ángulo en radianes. Si la salida ENO es =“1”, se realiza la conversión.

Realiza el calculo de la raíz cuadrada del numero real introducido porla entrada IN cuando en la entrada de habilitación EN hay un “1”. Elnumero real representa un ángulo en radianes. Si la salida ENO es =“1”, se realiza la conversión.

PACO
Stamp
Page 36: STEP 7 Funciones y operaciones

Funciones de desplazamiento y rotación

SHL_W Desplazar 16 bits a la izquierda

Parámetro Tipo de datos Area de memoria DescripciónEN BOOL E, A, M, L, D Entrada de habilitación

ENO BOOL E, A, M, L, D Salida de habilitaciónIN WORD E, A, M, L, D Valor a desplazarN WORD E, A, M, L, D Numero de posiciones

OUT WORD E, A, M, L, D Resultado de la operación dedesplazamiento

SHR_W Desplazar 16 bits a la derecha

Parámetro Tipo de datos Area de memoria DescripciónEN BOOL E, A, M, L, D Entrada de habilitación

ENO BOOL E, A, M, L, D Salida de habilitaciónIN WORD E, A, M, L, D Valor a desplazarN WORD E, A, M, L, D Numero de posiciones

OUT WORD E, A, M, L, D Resultado de la operación dedesplazamiento

SHL_DW Desplazar 32 bits a la izquierda

Parámetro Tipo de datos Area de memoria DescripciónEN BOOL E, A, M, L, D Entrada de habilitación

ENO BOOL E, A, M, L, D Salida de habilitaciónIN WORD E, A, M, L, D Valor a desplazarN DWORD E, A, M, L, D Numero de posiciones

OUT WORD E, A, M, L, D Resultado de la operación dedesplazamiento

Cuando en la entrada de habilitación EN hay un “1”,se activa estafunción desplazando a la izquierda bit a bit, los bits del 0 al 15 que sehallen en la entrada IN. La entrada N indica el numero de posicionesde bit que se mueven en el desplazamiento a la izquierda. Si en laentrada N se introduce un numero mayor que 16, en la salida OUT hayun “0”. Desde la derecha se van ocupando en “0”, las posiciones de bitque van siendo desplazadas. Si en la salida EN se obtiene un “1”, lasalida ENO indica el estado de señal del último bit desplazado.

Cuando en la entrada de habilitación EN hay un “1”,se activa estafunción desplazando a la derecha bit a bit, los bits del 0 al 15 que sehallen en la entrada IN. La entrada N indica el numero de posicionesde bit que se mueven en el desplazamiento a la derecha. Si en laentrada N se introduce un numero mayor que 16, en la salida OUT hayun “0”. Desde la izquierda se van ocupando en “0”, las posiciones debit que van siendo desplazadas. Si en la salida EN se obtiene un “1”, lasalida ENO indica el estado de señal del último bit desplazado.

Cuando en la entrada de habilitación EN hay un “1”,se activa estafunción desplazando a la izquierda bit a bit, los bits del 0 al 31 que sehallen en la entrada IN. La entrada N indica el numero de posicionesde bit que se mueven en el desplazamiento a la izquierda. Si en laentrada N se introduce un numero mayor que 32, en la salida OUT hayun “0”. Desde la derecha se van ocupando en “0”, las posiciones de bitque van siendo desplazadas. Si en la salida EN se obtiene un “1”, lasalida ENO indica el estado de señal del último bit desplazado.

PACO
Stamp
Page 37: STEP 7 Funciones y operaciones

SHR_DW Desplazar 32 bits a la derecha

Parámetro Tipo de datos Area de memoria DescripciónEN BOOL E, A, M, L, D Entrada de habilitación

ENO BOOL E, A, M, L, D Salida de habilitaciónIN WORD E, A, M, L, D Valor a desplazarN DWORD E, A, M, L, D Numero de posiciones

OUT WORD E, A, M, L, D Resultado de la operación dedesplazamiento

SHR_I Desplazar entero de 16 bits a la derecha

Parámetro Tipo de datos Area de memoria DescripciónEN BOOL E, A, M, L, D Entrada de habilitación

ENO BOOL E, A, M, L, D Salida de habilitaciónIN INT E, A, M, L, D Valor a desplazarN WORD E, A, M, L, D Numero de posiciones

OUT INT E, A, M, L, D Resultado de la operación dedesplazamiento

SHR_DI Desplazar entero de 32 bits a la derecha

Parámetro Tipo de datos Area de memoria DescripciónEN BOOL E, A, M, L, D Entrada de habilitación

ENO BOOL E, A, M, L, D Salida de habilitaciónIN DINT E, A, M, L, D Valor a desplazarN WORD E, A, M, L, D Numero de posiciones

OUT DINT E, A, M, L, D Resultado de la operación dedesplazamiento

Cuando en la entrada de habilitación EN hay un “1”,se activa estafunción desplazando a la derecha bit a bit, los bits del 0 al 31 que sehallen en la entrada IN. La entrada N indica el numero de posicionesde bit que se mueven en el desplazamiento a la derecha. Si en laentrada N se introduce un numero mayor que 32, en la salida OUT hayun “0”. Desde la izquierda se van ocupando en “0”, las posiciones debit que van siendo desplazadas. Si en la salida EN se obtiene un “1”, lasalida ENO indica el estado de señal del último bit desplazado.

Cuando en la entrada de habilitación EN hay un “1”,se activa estafunción desplazando a la derecha bit a bit, los bits del 0 al 15 que sehallen en la entrada IN. La entrada N indica el numero de posicionesde bit que se mueven en el desplazamiento a la derecha. Si en laentrada N se introduce un numero mayor que 16, en la salida OUT hayun “0”. Desde la izquierda se van ocupando en “0”, las posiciones debit que van siendo desplazadas en caso de ser un valor entero positivoy en “1” si el valor entero es negativo. Si en la salida EN se obtiene un“1”, la salida ENO indica el estado de señal del último bit desplazado.

Cuando en la entrada de habilitación EN hay un “1”,se activa estafunción desplazando a la derecha bit a bit, los bits del 0 al 31 que sehallen en la entrada IN. La entrada N indica el numero de posicionesde bit que se mueven en el desplazamiento a la derecha. Si en laentrada N se introduce un numero mayor que 32, en la salida OUT hayun “0”. Desde la izquierda se van ocupando en “0”, las posiciones debit que van siendo desplazadas en caso de ser un valor entero positivoy en “1” si el valor entero es negativo. Si en la salida EN se obtiene un“1”, la salida ENO indica el estado de señal del último bit desplazado.

PACO
Stamp
Page 38: STEP 7 Funciones y operaciones

ROL_DW Rotar 32 bits a la izquierda

Parámetro Tipo de datos Area de memoria DescripciónEN BOOL E, A, M, L, D Entrada de habilitación

ENO BOOL E, A, M, L, D Salida de habilitaciónIN DWORD E, A, M, L, D Valor a rotarN WORD E, A, M, L, D Numero de posiciones (bits) a rotar

OUT DWORD E, A, M, L, D Resultado de la operación de rotación

ROR_DW Rotar 32 bits a la derecha

Parámetro Tipo de datos Area de memoria DescripciónEN BOOL E, A, M, L, D Entrada de habilitación

ENO BOOL E, A, M, L, D Salida de habilitaciónIN DWORD E, A, M, L, D Valor a desplazarN WORD E, A, M, L, D Numero de posiciones (bits) a rotar

OUT DWORD E, A, M, L, D Resultado de la operación de rotación

Cuando en la entrada de habilitación EN hay un “1”,se activa estafunción rotando bit a bit, el contenido completo de la entrada IN a laizquierda los bits del 0 al 31. La entrada N indica el numero deposiciones de bit que se rotan a la izquierda. Si en la entrada N seintroduce un numero mayor que 32, la palabra doble IN es rotada en((N-1) modulo 32)+1 posiciones. Las posiciones de bit que se arrastrandesde la derecha, son ocupadas por el estado de señal de los bitsrotados a la izquierda. La palabra doble que se obtiene como resultadode la operación de rotación, puede verse en la salida OUT. ENO indicael estado del ultimo bit rotado, si en la entrada EN hay un “1”, estosignifica que las operaciones combinadas a la salida ENO, no seránejecutadas si el último bit desplazado tiene como estado “0”

Cuando en la entrada de habilitación EN hay un “1”,se activa estafunción rotando bit a bit, el contenido completo de la entrada IN a laderecha los bits del 0 al 31. La entrada N indica el numero deposiciones de bit que se rotan a la derecha. Si en la entrada N seintroduce un numero mayor que 32, la palabra doble IN es rotada en((N-1) modulo 32)+1 posiciones. Las posiciones de bit que se arrastrandesde la izquierda, son ocupadas por el estado de señal de los bitsrotados a la derecha. La palabra doble que se obtiene como resultadode la operación de rotación, puede verse en la salida OUT. ENO indicael estado del ultimo bit rotado, si en la entrada EN hay un “1”, estosignifica que las operaciones combinadas a la salida ENO, no seránejecutadas si el último bit desplazado tiene como estado “0”

PACO
Stamp
Page 39: STEP 7 Funciones y operaciones

Sistemas de protección de control

Relé de control

Relé físico que corta el suministro de corriente en entradas y salidas del autómataprogramable, manteniendo la alimentación de la CPU y así poder revisar el estado delprograma o controlar los errores, etc.

Master Control Relay (MCR)

Empleado para inhibir el funcionamiento de una determinada parte del programa en casos deemergencia o puestas en marcha del sistema sin que ello afecte a la alimentación de la CPU(secuencia de instrucciones que escribe un cero en lugar del valor calculado, o bien nomodifican el valor de memoria existente).

---(MCRA) Inicio de un Master Control Relay

Activa un Master Control Relay. Una vez efectuada esta operación se pueden programar lasáreas MCR utilizando las operaciones ---(MCR<) y ---(MCR>).

MCRA activa el MCR. Los circuitos entrelas operaciones MCR< y MCR> (salidasA 4.0, A 4.1) se ejecutan de forma queE 0.0 = 1 (MCR está ON): la salida A 4.0 sepone a "1" si la entrada E 0.3 está en elestado "1", y no cambia si la entrada E 0.3está en el estado "0". A la salida A 4.1 se leasigna el estado de la entrada E 0.4.E 0.0 = 0 (MCR está OFF): la salida A 4.0no varía, independientemente del estadode E 0.3; la salida A 4.1 es "0",independientemente de cuál sea el estadode E 0.4. En el circuito siguiente, laoperación ---(MCRD) desactiva el MCR.Esto significa que ya no se puedenprogramar áreas MCR con las dosoperaciones ---(MCR<) y ---(MCR>).

Transformadorseparador

L1L2L3N

Pulsador deemergencia

Pulsador deparo

Pulsador demarcha

Fuente dealimentacion

24 Vccpara E/S

PACO
Stamp
Page 40: STEP 7 Funciones y operaciones

---(MCRD) Final de un Master Control Relay

Desactiva un MCR. Después de esta operación no se pueden programar áreas MCR.

---(MCR<) Conectar un Master Control Relay

Almacena el RLO en la pila MCR y abre un área MCR. La pila de paréntesis MCR es una pilaLIFO (last in, first out) que da cabida, como máximo, a 8 registros (8 niveles). Si la pila ya estállena, la operación ---(MCR<) provoca un error de la pila MCR (MCRF). Los siguienteselementos dependen del MCR y varían según cuál sea el estado de señal del RLO que sealmacena en la pila MCR mientras está abierta un área MCR:

MCRA activa el MCR. Los circuitos entrelas operaciones MCR< y MCR> (salidasA 4.0, A 4.1) se ejecutan de forma queE 0.0 = 1 (MCR está ON): la salida A 4.0se pone a "1" si la entrada E 0.3 está enel estado "1"; A 4.0 no se modifica si laentrada E 0.3 está en el estado "0". A lasalida A 4.1 se le asigna el estado de laentrada E 0.4.E 0.0 = 0 (MCR está OFF): la salida A 4.0no varía, independientemente del estadode E 0.3, y la salida A 4.1 es "0",independientemente del estado de E 0.4En el circuito siguiente, la operación ---(MCRD) desactiva el MCR. Esto significaque ya no se pueden programar áreasMCR con la pareja de operaciones---(MCR<) y ---(MCR>).

PACO
Stamp
Page 41: STEP 7 Funciones y operaciones

MCRA activa el MCR, creándose hasta un máximo de ocho áreas MCR anidadas. En esteejemplo hay dos áreas MCR. Las operaciones se ejecutan de forma que E 0.0 = 1 (el MCR estáON en el área 1). A la salida A 4.1 se le asigna el estado de señal de la entrada E 0.4.E 0.0 = 0 (el MCR está OFF en el área 1), la salida A 4.1 es "0", independientemente de cuálsea el estado de la entrada E 0.4.E 0.1 y E 0.1 = 1 (el MCR está ON en el área 2): la salida A 4.0 se pone a "1" si E 0.3 es “1”.E 0.0 y E 0.1 = 0 (el MCR está OFF en el área 2): la salida A 4.0 no varía, independientementedel estado de E 0.3.

---(MCR>) Desconectar un Master Control Relay

Borra un registro RLO de la pila MCR. La pila de paréntesis MCR es una pila LIFO (last in, firstout) que da cabida a un máximo de 8 registros (8 niveles). Si la pila ya está vacía, la operación---(MCR >) provoca un error de la pila MCR (MCRF). Los siguientes elementos dependen delMCR y se ven afectados por el estado de señal del RLO que se almacena en la pila MCRmientras está abierta un área MCR:

---(MCRA) activa el MCR, creándose hasta un máximo de ocho áreas MCR. En este ejemplohay dos áreas MCR. El primero circuito ---(MCR>) (MCR OFF) forma parte del segundo circuito---(MCR<) (MCR ON). Todos los circuitos que hay entre estos dos pertenecen al área MCR 2.Las funciones se ejecutan de forma que:E 0.0 = 1: el estado de señal de la entrada E 0.4 se asigna a la salida A 4.1.E 0.0 = 0: la salida A 4.1 es "0", independientemente del estado de E 0.4. E 0.0 y E 0.1 = 1: lasalida A 4.0 se pone a "1" si E 0.3 es “1”.E 0.0 y E 0.1 = 0: la salida A 4.0 no varía, independientemente del estado de E 0.3

PACO
Stamp
Page 42: STEP 7 Funciones y operaciones

Programación estructurada

En la programación estructurada, la tarea a automatizar se divide en tareas menos complejas,las cuales son llamadas desde un programa o modulo raíz (OB1). En este tipo de programaciónresulta ser muy organizado, ya que es muy recomendable sobretodo para el diseño de tareascomplejas y por lo tanto el seccionamiento y resolución de errores en el caso que los hubiese.El programa raíz se encarga de llamar a los sub-modulos para la realización de las tareasprogramadas, recibiendo respuesta de estos cuando han realizado la tarea programada.

Ventajas:

- Las tareas se dividen en partes que pueden ser tratadas independientemente.

- En un grupo de programadores cada uno puede encargarse de la programación de unaparte concreta de la tarea.

- Los bloques pueden ser escritos en diferentes lenguajes, buscando el mas adecuado parael tratamiento de las variables que contiene.

- Los cambios de la programación en la puesta a punto se realizan mas rápidamente ya quees un sistema muy organizado.

- Los bloques o módulos realizados pueden ser utilizados en otras tareas de automatización.

- El programa que se obtiene como resultado de este tipo de programación resulta massencillo a la hora de ser leído por técnicos no programadores.

Ejemplo de programación estructurada

PACO
Stamp