SlideShare une entreprise Scribd logo
1  sur  42
Télécharger pour lire hors ligne
Posiciones de la memoria RAM




                                            BYTE                   BIT



FORMATO BYTE                                           M 0.3                    FORMATO PALABRA
                                                                                    (WORD)
                                      7                                    0

                        MB0       0                         X
                                                                                  MW0

                        MB1       1
           MD0                                                                       MW1

                        MB2       2             X
   MD1                                                                                  MW2

                        MB3       3
                                                                                           MW3

                        MB4       4
                           .                            .
                           .                            .
                           .                            .
FORMATO DOBLE                   125                                                     M 2.3
   PALABRA
(DOUBLE WORD)


    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                T#          Time#
                   abreviatura Nemotecnia)
         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#
Areas de memoria y sus funciones

Nombre                   Función del área                     Acceso a través de         Abre
del área                                                     unidades de longitud        viat.
Imagen     Al arrancar el programa, el sistema operativo Entrada                           E
proceso    lee las entradas del proceso almacenando los Byte de entrada                   EB
    de     valores en este área                          Palabra de entrada               EW
entradas                                                 Palabra doble de entrada         ED
   (E)
Imagen     Durante el ciclo, el programa calcula los         Salida                        A
proceso    valores de salida y los deposita en este área.    Byte de salida               AB
    de     Al final del ciclo, el sistema operativo lee en   Palabra de salida            AW
 salidas   este área los valores de salida calculados y      Palabra doble de salida      AD
   (A)     los transfiere a las salidas del proceso
 Marcas    Area que permite almacenar resultados Marcas                                   M
   (M)     intermedios calculados en el programa Byte de salida                           MB
                                                 Palabra de salida                       MW
                                                 Palabra doble de salida                  MD
  E/S:   Este área permite al programa el acceso Byte de entrada de la periferia         PEB
entradas directo a los módulos de E/S (es decir, Palabra de entrada de la perif.         PEW
externas entradas y salidas de la periferia)     Palabra doble de entrada de             PED
                                                 la periferia

  E/S:                                                      Byte de entrada de la periferia PAB
 Salidas                                                    Palabra de entrada de la perif. PAW
externas                                                    Palabra doble de entrada de     PAD
                                                            la periferia
Tempori    Elementos funcionales del lenguaje de                                              T
zadores    program. KOP. Area que permite almacenar
  (T)      células de temporización. En este área, el
           reloj accede a estas células para ser
           actualizado, decrementando el valor de
           temporización. En las células de temporiz. se
           accede con operaciones de temporización
 Conta     Elementos funcionales del lenguaje de                                              Z
 dores     program. KOP. Area de almacenamiento de
  (C)      contadores. Area de acceso con operaciones
           de conteo
Bloques    Area que contiene datos a los que se puede                                       DBX
de datos   acceder desde cualquier bloque. Si se desea                                      DBB
  (D)      tener abiertos dos bloques al mismo tiempo,                                      DBW
           uno puede abrirse con la instrucción ”AUF                                        DBD
           DB” y otro con la instrucción “AUF DI”. La
           notación de los operandos determina a que
           bloque de datos se accede.
           Aunque la instrucción “AUF DI” pueda
           utilizarse para abrir cualquier bloque de datos,                                 DIX
           su utilización principal consiste en abrir                                       DIB
           bloques de datos de instancia asociados a                                        DIW
           bloques de función FB´s y a bloques de                                           DID
           función de sistema SFB´s
 Datos     Area que contiene datos temporales de                                              L
locales    bloque lógico (DB, FB, o FC). Estos, también                                      LB
  (L)      denominados datos locales dinámic., sirven                                        LW
           de memoria intermedia. Cuando se cierra el                                        LD
           bloque lógico, se pierden estos datos. Los
           datos están depositados en la pila de datos
           locales (pila L)
Tipos de direccionamiento

En el programa STEP7, pueden identificarse las variables mediante dos tipos de
direccionamiento 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 el
que la operación deberá operar. El operando se puede direccionar de forma absoluta o
simbó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.


                                        A 4.0
              Identificador                                   direccionamiento
              de operando                                           de bit

                                      direccionamiento
                                           de byte

Direccionamiento simbólico (direccionamiento indirecto)

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

Ejemplo:

                            Símbolo              Direccionamiento
                          MOTOR_ON                     A 0.1
                          ACTIV_IMAN                   A 0.0
                        FINAL_CARRERA                  E 0.5
Selección del lenguaje de programación

 Lenguaje de      Destinatarios      Caso de         Entrada     Entrada orientada   Bloque auto-
programación                        aplicación     incremental        a fuente     documentable de
                                                                                        la CPU
   Lista de      Usuarios que        Programas         Sí                Sí                Sí
instrucciones       desean          optimizados
     AWL          programar a      en tiempo de
                nivel e maquina     ejecución y
                                       uso de
                                      memoria
 Esquema de         Usuarios       Programación        Sí              No                Sí
contactos KOP     familiarizados    de controles
                  con esquemas     combinaciona
                    eléctricos           les

Los lenguajes de programación sirven para crear programas de usuario, para cuyo fin ofrecen
determinadas reservas lingüísticas en forma de instrucciones gráficas o de texto. El usuario
introduce dichas instrucciones utilizando un editor, y estas instrucciones se compilan en un
programa 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.

                                            Desde el editor de programación KOP, AWL, FUP, una
                                            vez cargado un proyecto, puede ser cambiado el
                                            lenguaje de programación a través del comando menú
                                            “Ver”, donde pueden verse los tipos tres tipos de
                                            lenguajes KOP, AWL, FUP. El cambio de lenguaje de
                                            programación puede ser realizado en cualquier
                                            momento. Sólo es posible cambiar de AWL a
                                            KOP/FUP si las instrucciones AWL asumen toda la
                                            asignación de parámetros de los correspondientes
                                            elementos KOP/FUP y respetan el orden. A los
                                            parámetros no usados en AWL se les asigna ”NOP 0”.
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 programado
en lenguaje AWL, cada instrucción corresponderá a cada uno de los pasos que dará la CPU
para ejecutarlo.

Ejemplo:

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

Esquema de contactos (KOP)

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

Tabla correspondiente a las operaciones del lenguaje KOP por orden alfabético en la que se
muestra el nombre de la función y la abreviatura SIMATIC correspondiente.
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 esta
desactivado “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. Para
desactivar 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 habilitada
       R                    BOOL              E, A, M, L, D         Desactivacion habilitada
       Q                    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 bascula
                            desactiva su salida. Si la entrada R recibe el estado 0 y la entrada S el
                            estado 1, la bascula activa su salida. Cuando en ambas entradas
                            recibe el estado 1, primero desactiva y seguidamente activa.
SR (Desactivacion de flip-flop de activación)

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

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 es
comparado con el estado de señal del operando (marca de flancos). Si el estado de señal del
operando 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 es
comparado con el estado de señal del operando (marca de flancos). Si el estado de señal del
operando 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 Operando1
      Q               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 estado
                               anterior almacenada en el operando 2. Si el estado anterior del
                               RLO 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 los
                               restantes casos “0”.
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 Operando1
      Q               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 estado
                               anterior almacenada en el operando 2. Si el estado anterior del
                               RLO 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 los
                               restantes casos “1”.
---(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.
Temporizadores de retardo

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

Parámetro      Tipo de       Area de        Descripción
 SIMATIC        datos        memoria
  Nº de T      TIMER            T           Numero de identificación del temporizador, el área
                                            depende 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ón
          De 10MS a 9S_990MS                                    0,01 segundos
        De 100MS a 1M_39S_900MS                                 0,1 segundos
           De 1S    a 16M_39S                                    1    segundo
         De 10S   a 2H_46M_30S                                  10    segundos

S5TIME#4S = 4 segundos
s5t#2h_15m = 2 horas y 15 minutos
S5T#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 para
un margen o una resolución se redondean de manera que correspondan a los valores límite
para 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 la
salida “Q”. Al recibir un pulso en la entrada “SET”, empieza a contar el tiempo programado sin
activar 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 pulso
en la entrada “RESET” mientras el temporizador esta contando o activado, la salida ”Q” queda
desactivada ”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 la
salida “Q”. Al recibir un pulso en la entrada “SET”, empieza a contar el tiempo programado sin
activar 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
sobre la entrada “SET”, por lo tanto al recibir un pulso en la entrada “RESET” mientras el
temporizador esta contando o activado, la salida ”Q” queda desactivada ”0” además de borrar
la 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 cual
desactiva la salida “Q”. Al recibir un pulso en la entrada “SET”, empieza a contar el tiempo
programado sin desactivar la salida ”Q” desconectándose el conteo instantáneamente que
recibe el flanco de bajada de un nuevo pulso en el “SET”. La entrada “RESET” predomina
sobre la entrada “SET”, por lo tanto al recibir un pulso en la entrada “RESET” mientras el
temporizador 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 el
tiempo 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 la
salida 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 esta
funcionando, 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 el
tiempo 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 el
temporizador continua el conteo y manteniendo activa la salida “Q” hasta que termina el tiempo
establecido. 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, la
salida “Q” se mantendría activa reactivándose el conteo, por lo tanto, manteniéndose por mas
tiempo el funcionamiento del temporizador y la salida “Q”. La entrada “RESET” predomina
sobre la entrada “SET”, por lo tanto al recibir un pulso en la entrada “RESET” mientras el
temporizador esta funcionando, la salida ”Q” y el tiempo de conteo quedan desactivados ”0”.




Instrucciones de bit para temporizadores

---(SI) Arrancar temporizador con impulso
                                 Basado en el mismo funcionamiento que el S_IMPULS, la
                                 activación de la entrada E 0.0 de "0" a "1" (flanco creciente
                                 en el RLO), el temporizador T5 arranca. El temporizador
                                 continúa en marcha con el valor de temporización indicado
                                 de 2 s mientras E 0.0 sea "1". Si el estado de señal en E 0.0
                                 cambia de "1" a "0" antes de transcurrir el tiempo, el
                                 temporizador se para. La salida 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, se para y el valor de temporización
                                 restante se pone a "0".



---(SV) Arrancar temporizador con impulso

                                 Basado en el mismo funcionamiento que el S_VIMP, la
                                 activación de la entrada E 0.0 de "0" a "1" (flanco creciente
                                 en el RLO), el temporizador T5 arranca. El temporizador
                                 continúa en marcha con el valor de temporización indicado
                                 sin ser afectado por un flanco negativo en el RLO. Si el
                                 estado de señal en E 0.0 cambia de "0" a "1" antes de
                                 transcurrir el tiempo, el temporizador se vuelve a arrancar. La
                                 salida 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 el
                                 valor de temporización restante se pone a "0".



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

                                 Basado en el mismo funcionamiento que el S_EVERZ, la
                                 activación de la entrada E 0.0 de "0" a "1" (flanco creciente
                                 en el RLO), el temporizador T5 arranca. Si transcurre el
                                 tiempo y el estado de señal en E 0.0 sigue siendo "1", la
                                 salida A 4.0 es "1". Si el estado de señal en la entrada E 0.0
                                 cambia de "1" a "0", el temporizador cambia a la marcha en
                                 vacío y A 4.0 es "0". 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,
                                 se para y el valor de temporización restante se pone a "0".
---(SS) Arrancar temporizador con retardo a la conexión con memoria

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




---(SA) Arrancar temporizador con retardo a la desconexión
                                 Basado en el mismo funcionamiento que el S_AVERZ, la
                                 activación de la entrada E 0.0 de "1" a "0", el temporizador
                                 arranca.
                                 A 4.0 es "1" si E 0.0 es "1" o si 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 el valor de temporización restante se pone a "0".
Contadores

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

 Parámetro        Tipo de          Area de        Descripción
  SIMATIC          datos           memoria
   N de Z        COUNTER              Z           Numero de identificación del contador, el área
                                                  depende 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 de           Area de      Descripción
                                datos            memoria
         <C-Nr.>              COUNTER               Z         Numero del contador
                                                              preseleccionado.
<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 entre
0 y 999.

ZAEHLER (incrementar/decrementar)

La cantidad desde la que el contador comienza a contar es seleccionada en la entrada ZW al
activar S mediante un flanco ascendente. La entrada ZV incrementa en 1 por cada pulso que
recibe el valor preseleccionado. La entrada ZR decrementa en 1 por cada pulso que recibe el
valor preseleccionado. Si hay un flanco ascendente en la entrada R, el contador se pone a cero
y el valor de contaje es 0. El máximo y mínimo valor admisible por el contadores "999" y “0”, ya
que deja de incrementar y decrementar. Al producirse un flanco ascendente en ambas entradas
de contaje, el valor de contaje no varía. El estado de señal de la salida Q será "1" si el valor de
contaje 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. Si
el estado de señal en E 0.0 cambia de "0" a "1", el valor del contador Z10 incrementa en "1", a
menos que el valor de Z10 fuera "999". Si E 0.1 cambia de "0" a "1", Z10 decrementa en "1", a
no ser que el valor de Z10 fuera cero. La salida A 4.0 será "1" si el valor de Z10 no es cero.
Z_VORN (incrementar contador)

La cantidad desde la que el contador comienza a contar es seleccionada en la entrada ZW al
activar S mediante un flanco ascendente. La entrada ZV incrementa en 1 por cada pulso que
recibe al valor preseleccionado. Si hay un flanco ascendente en la entrada R, el contador se
pone a cero y el valor de contaje es 0. en la entrada R el contador se pone a 0, y entonces el
valor de contaje es cero. El máximo valor admisible por el contadores "999", a partir de aquí, el
contador 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 de
Z10 no sea cero.

Z_RUECK (decrementar contador)

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




Al cambiar la entrada E 0.2 de "0" a "1", el contador toma el valor de preselección de MW10. Si
el estado de señal en E 0.0 cambia de "0" a "1", el valor del contador Z10 decrementa en "1", a
menos que el valor de Z10 fuera "0". La salida A 4.0 será "1" siempre que el valor de Z10 no
sea 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 se
transmite el valor predeterminado al contador indicado.
El valor ”100” quedará preseleccionado para el contador Z5 si en la entrada E 0.0 se produce
un flanco ascendente (cambio de "0" a "1"). El valor del contador Z5 no se altera en caso de
que 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áximo
a partir del cual no se puede incrementar mas es "999".

                                      Al cambiar E 0.0 de "0" a "1" (flanco ascendente en el
                                      RLO), se carga el valor predeterminado de "100" en el
                                      contador 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 de
                                      señal de E 0.2 es 1, el contador se pone a "0". A partir
                                      de “999” el contador deja de incrementar.




---(ZR) Contar atrás

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


                                        Al cambiar E 0.0 de "0" a "1" (flanco ascendente en el
                                        RLO), se carga el valor predeterminado de "100" en el
                                        contador 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.
Operaciones de conversión

BCD_I Convertir BCD a entero de 16 bits

 Parámetro      Tipo de datos    Area de memoria     Descripción
    EN              BOOL           E, A, M, L, D     Entrada de habilitación
   ENO              BOOL           E, A, M, L, D     Salida de habilitación
     IN            WORD            E, A, M, L, D     Numero BCD
   OUT               INT           E, A, M, L, D     Valor entero(16 bits) de un numero BCD
                       Lee el contenido de la entrada IN como un numero decimal codificado
                       en binario de 3 dígitos (+/- 999), convertiendolo en un valor entero de
                       16 bits. La salida OUT contiene el resultado en forma de entero. La
                       salida ENO siempre tiene el mismo estado de señal que la entrada EN.

BCD_DI Convertir BCD a entero de 32 bits

 Parámetro      Tipo de datos    Area de memoria     Descripción
    EN              BOOL           E, A, M, L, D     Entrada de habilitación
   ENO              BOOL           E, A, M, L, D     Salida de habilitación
     IN            DWORD           E, A, M, L, D     Numero BCD
   OUT               INT           E, A, M, L, D     Valor entero(32 bits) de un numero BCD
                       Lee el contenido de la entrada IN como un numero decimal codificado
                       en binario de 7 dígitos (+/- 9999999), convertiendolo en un valor entero
                       de 32 bits. La salida OUT contiene el resultado en forma de entero. La
                       salida ENO siempre tiene el mismo estado de señal que la entrada EN.


I_BCD Convertir entero de 16 bits a BCD

 Parámetro      Tipo de datos    Area de memoria     Descripción
    EN              BOOL           E, A, M, L, D     Entrada de habilitación
   ENO              BOOL           E, A, M, L, D     Salida de habilitación
     IN              INT           E, A, M, L, D     Entero 16 bits
   OUT             WORD            E, A, M, L, D     Valor BCD de entero de16 bits
                       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 codificado
                       en binario (+/- 999). La salida OUT contiene el resultado. En caso de
                       desbordamiento ENO = 0.


DI_BCD Convertir entero de 32 bits A BCD

 Parámetro      Tipo de datos    Area de memoria     Descripción
    EN              BOOL           E, A, M, L, D     Entrada de habilitación
   ENO              BOOL           E, A, M, L, D     Salida de habilitación
     IN             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 valor entero de 32 bits,
                       convertiendolo en un numero de 7 dígitos en forma decimal codificado
                       en binario (+/- 9999999). La salida OUT contiene el resultado. En caso
                       de desbordamiento ENO = 0.
TRUNC Truncar entero

  Parámetro      Tipo de datos     Area de memoria     Descripción
     EN              BOOL            E, A, M, L, D     Entrada de habilitación
    ENO              BOOL            E, A, M, L, D     Salida de habilitación
      IN             REAL            E, A, M, L, D     Numero real a convertir
    OUT              DINT            E, A, M, L, D     Parte entera del valor d´IN
                         Lee el contenido de la entrada IN como un valor real, convertiendolo
                         en un entero de 32 bits. El resultado es la parte entera del numero real
                         que extrae la salida OUT. En caso de desbordamiento ENO = 0.



ROUND Redondear entero

  Parámetro      Tipo de datos     Area de memoria     Descripción
     EN              BOOL            E, A, M, L, D     Entrada de habilitación
    ENO              BOOL            E, A, M, L, D     Salida de habilitación
      IN             REAL            E, A, M, L, D     Valor a redondear
    OUT              DINT            E, A, M, L, D     IN, redondear al próximo entero

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

  Parámetro      Tipo de datos     Area de memoria     Descripción
     EN              BOOL            E, A, M, L, D     Entrada de habilitación
    ENO              BOOL            E, A, M, L, D     Salida de habilitación
      IN             DINT            E, A, M, L, D     Entero 32 bits
    OUT              REAL            E, A, M, L, D     Numero real

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

I_DI Convertir entero de 16 bits a entero de 32 bits

  Parámetro      Tipo de datos     Area de memoria     Descripción
     EN              BOOL            E, A, M, L, D     Entrada de habilitación
    ENO              BOOL            E, A, M, L, D     Salida de habilitación
      IN              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 valor entero de 16 bits,
                         convertiendolo en entero de 32 bits. El resultado se deposita en la
                         salida OUT. La salida ENO siempre tiene el mismo estado de señal
                         que la entrada EN.
CEIL Redondear numero real a entero superior

 Parámetro      Tipo de datos    Area de memoria     Descripción
    EN              BOOL           E, A, M, L, D     Entrada de habilitación
   ENO              BOOL           E, A, M, L, D     Salida de habilitación
     IN             REAL           E, A, M, L, D     Numero real a convertir
   OUT               INT           E, A, M, L, D     Entero de 32 bits inferior que es mas
                                                     grande que el numero real
                       Lee el contenido de la entrada IN como numero real, convertiendolo en
                       entero de 32 bits. El resultado es el entero inferior que es mas grande
                       que el numero real (redondear). En caso de desbordamiento ENO = 0.



FLOOR Redondear numero real a entero inferior

 Parámetro      Tipo de datos    Area de memoria     Descripción
    EN              BOOL           E, A, M, L, D     Entrada de habilitación
   ENO              BOOL           E, A, M, L, D     Salida de habilitación
     IN             REAL           E, A, M, L, D     Numero real a convertir
   OUT              DINT           E, A, M, L, D     Entero de 32 bits superior menor que el
                                                     numero real

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

INV_I Complemento a 1 de un entero de 16 bits

 Parámetro      Tipo de datos    Area de memoria     Descripción
    EN              BOOL           E, A, M, L, D     Entrada de habilitación
   ENO              BOOL           E, A, M, L, D     Salida de habilitación
     IN              INT           E, A, M, L, D     Valor entero 16 bits
   OUT               INT           E, A, M, L, D     Complemento a 1 de un entero de 16
                                                     bits d´IN

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


INV_DI Complemento a 1 de un entero de 32 bits

 Parámetro      Tipo de datos    Area de memoria     Descripción
    EN              BOOL           E, A, M, L, D     Entrada de habilitación
   ENO              BOOL           E, A, M, L, D     Salida de habilitación
     IN             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 bits
                                                     d´IN

                       Lee el contenido de la entrada IN combinando el patrón hexadecimal
                       W#16#FFFF mediante O-EXCLUSIVA. Esta operación invierte el
                       estado de cada bit. La salida ENO siempre tiene el mismo estado de
                       señal que la entrada EN.
NEG_I Complemento a 2 de un entero de 16 bits

 Parámetro      Tipo de datos    Area de memoria    Descripción
    EN              BOOL           E, A, M, L, D    Entrada de habilitación
   ENO              BOOL           E, A, M, L, D    Salida de habilitación
     IN              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 bits
                                                    d´IN
                       Lee el contenido de la entrada IN ejecutando la operación
                       Complemento a 2. La operación invierte el signo (Ej: De un valor
                       positivo a uno negativo). La salida ENO siempre tiene el mismo estado
                       de señal que la entrada EN, a excepción de que si el estado de señal
                       de ENO es 1, se produce un desbordamiento, el estado de señal de
                       ENO es 0.

NEG_DI Complemento a 2 de un entero de 32 bits

 Parámetro      Tipo de datos    Area de memoria    Descripción
    EN              BOOL           E, A, M, L, D    Entrada de habilitación
   ENO              BOOL           E, A, M, L, D    Salida de habilitación
     IN             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 bits
                                                    d´IN

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

NEG_R Invertir el signo de un numero real

 Parámetro      Tipo de datos    Area de memoria    Descripción
    EN              BOOL           E, A, M, L, D    Entrada de habilitación
   ENO              BOOL           E, A, M, L, D    Salida de habilitación
     IN             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 invertiendo el signo. Esta operación
                       equivale a una multiplicación por (-1). La operación invierte el signo
                       (Ej: de un valor positivo a uno negativo). La salida ENO siempre tiene
                       el mismo estado de señal que la entrada EN, a excepción de que si el
                       estado de señal de ENO es 1, se produce un desbordamiento, el
                       estado de señal de ENO es 0.
Operaciones de comparación (>, <, ==, <>, <=, >=)

Las operaciones de comparación sirven para comparar los siguientes pares de valores
numé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ón
comparan 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 la
comparación es verdadero, mientras que un 0 significa que el resultado de la comparación es
falso. Este resultado se encuentra almacenado en el bit de resultado lógico (RLO). Este
resultado puede emplearse para su posterior procesamiento.

         Parámetro                  Carácter de relación        Descripción
             xx                      >, <, = =, <>, <=, >=      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ón
Entrada de cuadro           BOOL              E, A, M, L, D      Entrada de habilitación
 Salida de cuadro           BOOL              E, A, M, L, D      Salida de habilitación
        IN1                 DINT              E, A, M, L, D      Primer valor a comparar
        IN2                 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 haya
seleccionado.
     Símbolo
     SIMATIC




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.2
tiene el estado de señal 1.

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

   Parámetro            Tipo de datos       Area de memoria      Descripción
Entrada de cuadro           BOOL              E, A, M, L, D      Entrada de habilitación
 Salida de cuadro           BOOL              E, A, M, L, D      Salida de habilitación
        IN1                  INT              E, A, M, L, D      Primer valor a comparar
        IN2                  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 haya
seleccionado.
Símbolo
    SIMATIC




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ón
Entrada de cuadro           BOOL               E, A, M, L, D      Entrada de habilitación
 Salida de cuadro           BOOL               E, A, M, L, D      Salida de habilitación
        IN1                 REAL               E, A, M, L, D      Primer valor a comparar
        IN2                 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 haya
seleccionado.
     Símbolo
     SIMATIC




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 de       Descripción
                                                       memoria
      EN                      BOOL                   E, A, M, L, D    Entrada de habilitación
     ENO                      BOOL                   E, A, M, L, D    Salida de habilitación
      IN        Todos los tipos de datos de 8, 16    E, A, M, L, D,   Valor de la fuente
                      i 32 bits de longitud               T, Z
      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 indica
la salida O. ENO tiene el mismo estado de señal que la entrada EN. Como muestra la tabla, la
operació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 área
de 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 bit
direccionado se pone a "1" (se activa) ó a "0" (se desactiva), tal como se ha descrito más
arriba. Si el MCR está desconectado y se ejecuta una operación MOVE, en la dirección
indicada por OUT se escribirá siempre el valor "0", independientemente de cuál sea el estado
actual de IN.
Acumuladores (ACU1 y ACU2)

El acumulador 1 (ACU 1) y el acumulador 2 (ACU 2) son dos registros universales de 32 bits
que se emplean para procesar bytes, palabras y palabras dobles. En estos acumuladores se
pueden cargar constantes o valores depositados en la memoria como operandos y ejecutar
operaciones lógicas con ellos. También es posible transferir el resultado en ACU 1 a una
dirección (un módulo de datos, una salida, etc.).
Cada acumulador puede descomponerse en dos palabras de 16 bits (palabra baja y alta). La
palabra 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éndose
el 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 de
los 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 sin
variar 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):
Funciones de salto

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

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

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

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




                                                El salto es siempre ejecutado. Las operaciones
                                                que se encuentren entre la operación de salto y
                                                la meta no se ejecutan.




---( 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.




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




---( 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". Si
un salto condicional no se lleva a cabo, el RLO cambia a "1" después de la operación de salto.
Si la entrada E 0.0 es 0, se ejecuta el salto a la
                                   meta CAS1. Al ejecutarse el salto, en la salida
                                   A 4.0 no se lleva a cabo la operación ”Poner
                                   salida a 0”, aunque la entrada E 0.3 sea 1.




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




                                     Si E 0.0 = 1 se ejecuta el salto a la meta
                                     CAS1. Al llevarse a cabo el salto, en la salida
                                     A 4.0 no se ejecuta la operación ”Poner salida
                                     a 0”, aunque E 0.3 sea 1.
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ón
    EN              BOOL            E, A, M, L, D       Entrada de habilitación
   ENO              BOOL            E, A, M, L, D       Salida de habilitación
    IN1              INT            E, A, M, L, D       Primer valor de la suma
    IN2              INT            E, A, M, L, D       Segundo valor de la suma
   OUT               INT            E, A, M, L, D       Resultado de la suma

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

ADD_DI Suma de números enteros (32 bits)

 Parámetro      Tipo de datos     Area de memoria       Descripción
    EN              BOOL            E, A, M, L, D       Entrada de habilitación
   ENO              BOOL            E, A, M, L, D       Salida de habilitación
    IN1             DINT            E, A, M, L, D       Primer valor de la suma
    IN2             DINT            E, A, M, L, D       Segundo valor de la suma
   OUT              DINT            E, A, M, L, D       Resultado de la suma

                       Realiza la suma de números enteros de las entradas IN1 e IN2 cuando
                       la entrada de habilitación EN esta en “1”. El resultado puede
                       consultarse en la salida OUT. En el caso que hubiese desbordamiento
                       o desbordamiento negativo por salir el resultado del rango 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 a esta, combinadas
                       a través de ENO, no serán ejecutadas.

SUB_I Resta de números enteros (16 bits)

 Parámetro      Tipo de datos     Area de memoria       Descripción
    EN              BOOL            E, A, M, L, D       Entrada de habilitación
   ENO              BOOL            E, A, M, L, D       Salida de habilitación
    IN1              INT            E, A, M, L, D       Primer valor de la resta
    IN2              INT            E, A, M, L, D       Segundo valor de la resta
   OUT               INT            E, A, M, L, D       Resultado de la resta
                       Realiza la resta de números enteros de las entradas IN1 e IN2 cuando
                       la entrada de habilitación EN esta en 1. El resultado puede consultarse
                       en la salida OUT. En el caso que hubiese desbordamiento o
                       desbordamiento negativo por salir el resultado del rango valido de
                       números enteros (16 bits), el bit OV y el bit OS, serian = “1”, y la salida
                       ENO = “0”, por lo tanto, las siguientes operaciones a esta, combinadas
                       a través de ENO, no serán ejecutadas.
SUB_DI Resta de números enteros (32 bits)

 Parámetro      Tipo de datos     Area de memoria       Descripción
    EN              BOOL            E, A, M, L, D       Entrada de habilitación
   ENO              BOOL            E, A, M, L, D       Salida de habilitación
    IN1             DINT            E, A, M, L, D       Primer valor de la resta
    IN2             DINT            E, A, M, L, D       Segundo valor de la resta
   OUT              DINT            E, A, M, L, D       Resultado de la resta
                       Realiza la resta de números enteros de las entradas IN1 e IN2 cuando
                       la entrada de habilitación EN esta en 1. El resultado puede consultarse
                       en la salida OUT. En el caso que hubiese desbordamiento o
                       desbordamiento negativo por salir el resultado del rango 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 a esta, combinadas
                       a través de ENO, no serán ejecutadas.

MUL_I Producto de números enteros (16 bits)

 Parámetro      Tipo de datos     Area de memoria       Descripción
    EN              BOOL            E, A, M, L, D       Entrada de habilitación
   ENO              BOOL            E, A, M, L, D       Salida de habilitación
    IN1              INT            E, A, M, L, D       Primer valor del producto
    IN2              INT            E, A, M, L, D       Segundo valor del producto
   OUT               INT            E, A, M, L, D       Resultado del producto
                       Realiza el producto de números enteros de las entradas IN1 e IN2
                       cuando la entrada de habilitación EN esta en “1”. El resultado puede
                       consultarse en la salida OUT. En el caso que hubiese desbordamiento
                       o desbordamiento negativo por salir el resultado del rango valido de
                       números enteros (16 bits), el bit OV y el bit OS, serian = “1”, y la salida
                       ENO = “0”, por lo tanto, las siguientes operaciones a esta, combinadas
                       a través de ENO, no serán ejecutadas.

MUL_DI Producto de números enteros (32 bits)

 Parámetro      Tipo de datos     Area de memoria       Descripción
    EN              BOOL            E, A, M, L, D       Entrada de habilitación
   ENO              BOOL            E, A, M, L, D       Salida de habilitación
    IN1             DINT            E, A, M, L, D       Primer valor del producto
    IN2             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 IN2
                       cuando la entrada de habilitación EN esta en “1”. El resultado puede
                       consultarse en la salida OUT. En el caso que hubiese desbordamiento
                       o desbordamiento negativo por salir el resultado del rango 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 a esta, combinadas
                       a través de ENO, no serán ejecutadas.
DIV_I División de números enteros (16 bits)

 Parámetro       Tipo de datos     Area de memoria       Descripción
    EN               BOOL            E, A, M, L, D       Entrada de habilitación
   ENO               BOOL            E, A, M, L, D       Salida de habilitación
    IN1               INT            E, A, M, L, D       Primer valor de la división
    IN2               INT            E, A, M, L, D       Segundo valor de la división
   OUT                INT            E, A, M, L, D       Resultado de la división

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

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

 Parámetro       Tipo de datos     Area de memoria       Descripción
    EN               BOOL            E, A, M, L, D       Entrada de habilitación
   ENO               BOOL            E, A, M, L, D       Salida de habilitación
    IN1              DINT            E, A, M, L, D       Primer valor de la división
    IN2              DINT            E, A, M, L, D       Segundo valor de la división
   OUT               DINT            E, A, M, L, D       Resultado de la división

                        Realiza la división de números enteros de las entradas IN1 e IN2
                        cuando la entrada de habilitación EN esta en “1”. El resultado puede
                        consultarse en la salida OUT. En el caso que hubiese desbordamiento
                        o desbordamiento negativo por salir el resultado del rango 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 a esta, combinadas
                        a través de ENO, no serán ejecutadas.

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

 Parámetro       Tipo de datos     Area de memoria       Descripción
    EN               BOOL            E, A, M, L, D       Entrada de habilitación
   ENO               BOOL            E, A, M, L, D       Salida de habilitación
    IN1              DINT            E, A, M, L, D       Dividendo
    IN2              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 IN2
                        cuando la entrada de habilitación EN esta en “1”. La resta de la división
                        puede consultarse en la salida OUT. En el caso que hubiese
                        desbordamiento o desbordamiento negativo por salir el resultado del
                        rango 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 a
                        esta, combinadas a través de ENO, no serán ejecutadas.
Bits de resultado (>, <, >=, <=, = =, <> 0)

Estas operaciones son utilizadas para determinar la relación entre el resultado obtenido de una
funció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 cero
                          M                   Menor o igual que cero
                         ==0                  Igual que cero
                         <>0                  Diferente que cero
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ón
    EN              BOOL           E, A, M, L, D      Entrada de habilitación
   ENO              BOOL           E, A, M, L, D      Salida de habilitación
    IN1             REAL           E, A, M, L, D      Primer valor de la suma
    IN2             REAL           E, A, M, L, D      Segundo valor de la suma
   OUT              REAL           E, A, M, L, D      Resultado de la suma

                       Realiza la suma de números reales de las entradas IN1 e IN2 cuando
                       la entrada de habilitación EN esta en “1”. El resultado puede
                       consultarse en la salida OUT. En el caso que hubiese desbordamiento
                       o desbordamiento negativo por salir el resultado del rango valido de
                       nú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 a
                       través de ENO, no serán ejecutadas.

SUB_R Resta de números reales

 Parámetro      Tipo de datos    Area de memoria      Descripción
    EN              BOOL           E, A, M, L, D      Entrada de habilitación
   ENO              BOOL           E, A, M, L, D      Salida de habilitación
    IN1             REAL           E, A, M, L, D      Primer valor de la resta
    IN2             REAL           E, A, M, L, D      Segundo valor de la resta
   OUT              REAL           E, A, M, L, D      Resultado de la resta
                       Realiza la resta de números reales de las entradas IN1 e IN2 cuando
                       la entrada de habilitación EN esta en 1. El resultado puede consultarse
                       en la salida OUT. En el caso que hubiese desbordamiento o
                       desbordamiento negativo por salir el resultado del rango valido de
                       nú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 a
                       través de ENO, no serán ejecutadas.

MUL_R Producto de números reales

 Parámetro      Tipo de datos    Area de memoria      Descripción
    EN              BOOL           E, A, M, L, D      Entrada de habilitación
   ENO              BOOL           E, A, M, L, D      Salida de habilitación
    IN1             REAL           E, A, M, L, D      Primer valor del producto
    IN2             REAL           E, A, M, L, D      Segundo valor del producto
   OUT              REAL           E, A, M, L, D      Resultado del producto
                       Realiza el producto de números reales de las entradas IN1 e IN2
                       cuando la entrada de habilitación EN esta en “1”. El resultado puede
                       consultarse en la salida OUT. En el caso que hubiese desbordamiento
                       o desbordamiento negativo por salir el resultado del rango valido de
                       nú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 a
                       través de ENO, no serán ejecutadas.
DIV_R División de números reales

 Parámetro      Tipo de datos      Area de memoria     Descripción
    EN              BOOL             E, A, M, L, D     Entrada de habilitación
   ENO              BOOL             E, A, M, L, D     Salida de habilitación
    IN1             REAL             E, A, M, L, D     Primer valor de la división
    IN2             REAL             E, A, M, L, D     Segundo valor de la división
   OUT              REAL             E, A, M, L, D     Resultado de la división

                       Realiza la división de números reales de las entradas IN1 e IN2
                       cuando la entrada de habilitación EN esta en “1”. El resultado puede
                       consultarse en la salida OUT. En el caso que hubiese desbordamiento
                       o desbordamiento negativo por salir el resultado del rango valido de
                       nú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 a
                       través de ENO, no serán ejecutadas.
ABS Valor absoluto de un número real

 Parámetro      Tipo de datos      Area de memoria     Descripción
    EN              BOOL             E, A, M, L, D     Entrada de habilitación
   ENO              BOOL             E, A, M, L, D     Salida de habilitación
     IN             REAL             E, A, M, L, D     Numero real
   OUT              REAL             E, A, M, L, D     Valor absoluto del numero real

                       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 se
                       obtiene el valor absoluto. Si la salida ENO es = “1”, se realiza la
                       conversión.
Funciones matemáticas avanzadas (Aritmética de coma flotante)

SIN Calculo del seno

 Parámetro      Tipo de datos      Area de memoria      Descripción
    EN              BOOL             E, A, M, L, D      Entrada de habilitación
   ENO              BOOL             E, A, M, L, D      Salida de habilitación
     IN             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
                         Realiza el calculo de seno del numero real introducido por la entrada
                         IN cuando en la entrada de habilitación EN hay un “1”. El numero real
                         representa un ángulo en radianes. Si la salida ENO es = “1”, se realiza
                         la conversión.



ASIN Calculo del arcoseno

 Parámetro      Tipo de datos      Area de memoria      Descripción
    EN              BOOL             E, A, M, L, D      Entrada de habilitación
   ENO              BOOL             E, A, M, L, D      Salida de habilitación
     IN             REAL             E, A, M, L, D      Valor de entrada: Numero real
   OUT              REAL             E, A, M, L, D      Valor de salida: arcoseno del numero
                                                        real
                         Realiza el calculo del arcoseno del numero real introducido por la
                         entrada IN cuando en la entrada de habilitación EN hay un “1” y el
                         valor introducido en la entrada tiene un rango de –1<= Valor de
                         entrada <=1. El numero 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.

COS Calculo del coseno

 Parámetro      Tipo de datos      Area de memoria      Descripción
    EN              BOOL             E, A, M, L, D      Entrada de habilitación
   ENO              BOOL             E, A, M, L, D      Salida de habilitación
     IN             REAL             E, A, M, L, D      Valor de entrada: Numero real
   OUT              REAL             E, A, M, L, D      Valor de salida: coseno del numero
                                                        real
                         Realiza el calculo de coseno del numero real introducido por la entrada
                         IN cuando en la entrada de habilitación EN hay un “1”. El numero real
                         representa un ángulo en radianes. Si la salida ENO es = “1”, se realiza
                         la conversión.



ACOS Calculo del arcocoseno

 Parámetro      Tipo de datos      Area de memoria      Descripción
    EN              BOOL             E, A, M, L, D      Entrada de habilitación
   ENO              BOOL             E, A, M, L, D      Salida de habilitación
     IN             REAL             E, A, M, L, D      Valor de entrada: Numero real
   OUT              REAL             E, A, M, L, D      Valor de salida: arcocoseno del
                                                        numero real
Realiza el calculo del arcocoseno del numero real introducido por la
                       entrada IN cuando en la entrada de habilitación EN hay un “1” y el
                       valor introducido en la entrada tiene un rango de –1<= Valor de
                       entrada <=1. El numero 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 0<= Valor de salida <=+π.

TAN Calculo de la tangente

 Parámetro      Tipo de datos     Area de memoria       Descripción
    EN              BOOL            E, A, M, L, D       Entrada de habilitación
   ENO              BOOL            E, A, M, L, D       Salida de habilitación
     IN             REAL            E, A, M, L, D       Valor de entrada: Numero real
   OUT              REAL            E, A, M, L, D       Valor de salida: tangente del numero
                                                        real
                       Realiza el calculo de la tangente del numero real introducido por la
                       entrada IN cuando en la entrada de habilitación EN hay un “1”. El
                       numero real representa un ángulo en radianes. Si la salida ENO es =
                       “1”, se realiza la conversión.



ATAN Calculo de la arcotangente

 Parámetro      Tipo de datos     Area de memoria       Descripción
    EN              BOOL            E, A, M, L, D       Entrada de habilitación
   ENO              BOOL            E, A, M, L, D       Salida de habilitación
     IN             REAL            E, A, M, L, D       Valor de entrada: Numero real
   OUT              REAL            E, A, M, L, D       Valor de salida: tangente del numero
                                                        real
                       Realiza el calculo de la arcotangente del numero real introducido por la
                       entrada IN cuando en la entrada de habilitación EN hay un “1”. El
                       numero 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.


EXP Calculo el exponente

 Parámetro      Tipo de datos     Area de memoria       Descripción
    EN              BOOL            E, A, M, L, D       Entrada de habilitación
   ENO              BOOL            E, A, M, L, D       Salida de habilitación
     IN             REAL            E, A, M, L, D       Valor de entrada: Numero real
   OUT              REAL            E, A, M, L, D       Valor de salida: exponente del numero
                                                        real

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

 Parámetro       Tipo de datos     Area de memoria      Descripción
    EN               BOOL            E, A, M, L, D      Entrada de habilitación
   ENO               BOOL            E, A, M, L, D      Salida de habilitación
     IN              REAL            E, A, M, L, D      Valor de entrada: Numero real
   OUT               REAL            E, A, M, L, D      Valor de salida: logaritmo natural del
                                                        numero real

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



SQR Calculo del cuadrado

 Parámetro       Tipo de datos     Area de memoria      Descripción
    EN               BOOL            E, A, M, L, D      Entrada de habilitación
   ENO               BOOL            E, A, M, L, D      Salida de habilitación
     IN              REAL            E, A, M, L, D      Valor de entrada: Numero real
   OUT               REAL            E, A, M, L, D      Valor de salida: cuadrado del numero
                                                        real

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



SQRT Calculo de la raíz cuadrada

 Parámetro       Tipo de datos     Area de memoria      Descripción
    EN               BOOL            E, A, M, L, D      Entrada de habilitación
   ENO               BOOL            E, A, M, L, D      Salida de habilitación
     IN              REAL            E, A, M, L, D      Valor de entrada: Numero real
   OUT               REAL            E, A, M, L, D      Valor de salida: raíz cuadrada del
                                                        numero real
                        Realiza el calculo de la raíz cuadrada del numero real introducido por
                        la entrada IN cuando en la entrada de habilitación EN hay un “1”. El
                        numero real representa un ángulo en radianes. Si la salida ENO es =
                        “1”, se realiza la conversión.
Funciones de desplazamiento y rotación

SHL_W Desplazar 16 bits a la izquierda

 Parámetro      Tipo de datos     Area de memoria      Descripción
    EN              BOOL            E, A, M, L, D      Entrada de habilitación
   ENO              BOOL            E, A, M, L, D      Salida de habilitación
     IN            WORD             E, A, M, L, D      Valor a desplazar
      N            WORD             E, A, M, L, D      Numero de posiciones
   OUT             WORD             E, A, M, L, D      Resultado de la operación de
                                                       desplazamiento
                       Cuando en la entrada de habilitación EN hay un “1”,se activa esta
                       función desplazando a la izquierda bit a bit, los bits del 0 al 15 que se
                       hallen en la entrada IN. La entrada N indica el numero de posiciones
                       de bit que se mueven en el desplazamiento a la izquierda. Si en la
                       entrada N se introduce un numero mayor que 16, en la salida OUT hay
                       un “0”. Desde la derecha se van ocupando en “0”, las posiciones de bit
                       que van siendo desplazadas. Si en la salida EN se obtiene un “1”, la
                       salida ENO indica el estado de señal del último bit desplazado.

SHR_W Desplazar 16 bits a la derecha

 Parámetro      Tipo de datos     Area de memoria      Descripción
    EN              BOOL            E, A, M, L, D      Entrada de habilitación
   ENO              BOOL            E, A, M, L, D      Salida de habilitación
     IN            WORD             E, A, M, L, D      Valor a desplazar
      N            WORD             E, A, M, L, D      Numero de posiciones
   OUT             WORD             E, A, M, L, D      Resultado de la operación de
                                                       desplazamiento

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

SHL_DW Desplazar 32 bits a la izquierda

 Parámetro      Tipo de datos     Area de memoria      Descripción
    EN              BOOL            E, A, M, L, D      Entrada de habilitación
   ENO              BOOL            E, A, M, L, D      Salida de habilitación
     IN            WORD             E, A, M, L, D      Valor a desplazar
      N            DWORD            E, A, M, L, D      Numero de posiciones
   OUT             WORD             E, A, M, L, D      Resultado de la operación de
                                                       desplazamiento

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

 Parámetro      Tipo de datos     Area de memoria      Descripción
    EN              BOOL            E, A, M, L, D      Entrada de habilitación
   ENO              BOOL            E, A, M, L, D      Salida de habilitación
     IN            WORD             E, A, M, L, D      Valor a desplazar
      N            DWORD            E, A, M, L, D      Numero de posiciones
   OUT             WORD             E, A, M, L, D      Resultado de la operación de
                                                       desplazamiento

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


SHR_I Desplazar entero de 16 bits a la derecha

 Parámetro      Tipo de datos     Area de memoria       Descripción
    EN              BOOL            E, A, M, L, D       Entrada de habilitación
   ENO              BOOL            E, A, M, L, D       Salida de habilitación
     IN              INT            E, A, M, L, D       Valor a desplazar
      N            WORD             E, A, M, L, D       Numero de posiciones
   OUT               INT            E, A, M, L, D       Resultado de la operación de
                                                        desplazamiento
                       Cuando en la entrada de habilitación EN hay un “1”,se activa esta
                       función desplazando a la derecha bit a bit, los bits del 0 al 15 que se
                       hallen en la entrada IN. La entrada N indica el numero de posiciones
                       de bit que se mueven en el desplazamiento a la derecha. Si en la
                       entrada N se introduce un numero mayor que 16, en la salida OUT hay
                       un “0”. Desde la izquierda se van ocupando en “0”, las posiciones de
                       bit que van siendo desplazadas en caso de ser un valor entero positivo
                       y 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.

SHR_DI Desplazar entero de 32 bits a la derecha

 Parámetro      Tipo de datos     Area de memoria      Descripción
    EN              BOOL            E, A, M, L, D      Entrada de habilitación
   ENO              BOOL            E, A, M, L, D      Salida de habilitación
     IN             DINT            E, A, M, L, D      Valor a desplazar
      N            WORD             E, A, M, L, D      Numero de posiciones
   OUT              DINT            E, A, M, L, D      Resultado de la operación de
                                                       desplazamiento

                       Cuando en la entrada de habilitación EN hay un “1”,se activa esta
                       función desplazando a la derecha bit a bit, los bits del 0 al 31 que se
                       hallen en la entrada IN. La entrada N indica el numero de posiciones
                       de bit que se mueven en el desplazamiento a la derecha. Si en la
                       entrada N se introduce un numero mayor que 32, en la salida OUT hay
                       un “0”. Desde la izquierda se van ocupando en “0”, las posiciones de
                       bit que van siendo desplazadas en caso de ser un valor entero positivo
                       y 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.
ROL_DW Rotar 32 bits a la izquierda

 Parámetro      Tipo de datos    Area de memoria      Descripción
    EN              BOOL           E, A, M, L, D      Entrada de habilitación
   ENO              BOOL           E, A, M, L, D      Salida de habilitación
     IN            DWORD           E, A, M, L, D      Valor a rotar
      N            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 esta
                       función rotando bit a bit, el contenido completo de la entrada IN a la
                       izquierda los bits del 0 al 31. La entrada N indica el numero de
                       posiciones de bit que se rotan a la izquierda. Si en la entrada N se
                       introduce un numero mayor que 32, la palabra doble IN es rotada en
                       ((N-1) modulo 32)+1 posiciones. Las posiciones de bit que se arrastran
                       desde la derecha, son ocupadas por el estado de señal de los bits
                       rotados a la izquierda. La palabra doble que se obtiene como resultado
                       de la operación de rotación, puede verse en la salida OUT. ENO indica
                       el estado del ultimo bit rotado, si en la entrada EN hay un “1”, esto
                       significa que las operaciones combinadas a la salida ENO, no serán
                       ejecutadas si el último bit desplazado tiene como estado “0”

ROR_DW Rotar 32 bits a la derecha

 Parámetro      Tipo de datos    Area de memoria      Descripción
    EN              BOOL           E, A, M, L, D      Entrada de habilitación
   ENO              BOOL           E, A, M, L, D      Salida de habilitación
     IN            DWORD           E, A, M, L, D      Valor a desplazar
      N            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 esta
                       función rotando bit a bit, el contenido completo de la entrada IN a la
                       derecha los bits del 0 al 31. La entrada N indica el numero de
                       posiciones de bit que se rotan a la derecha. Si en la entrada N se
                       introduce un numero mayor que 32, la palabra doble IN es rotada en
                       ((N-1) modulo 32)+1 posiciones. Las posiciones de bit que se arrastran
                       desde la izquierda, son ocupadas por el estado de señal de los bits
                       rotados a la derecha. La palabra doble que se obtiene como resultado
                       de la operación de rotación, puede verse en la salida OUT. ENO indica
                       el estado del ultimo bit rotado, si en la entrada EN hay un “1”, esto
                       significa que las operaciones combinadas a la salida ENO, no serán
                       ejecutadas si el último bit desplazado tiene como estado “0”
Sistemas de protección de control

Relé de control

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

       L1
        L2
        L3
        N




             Transformador
               separador




                  Pulsador de
                  emergencia

                   Pulsador de
                      paro


                                                   Fuente de
                  Pulsador de
                                                  alimentacion
                    marcha                            24 Vcc
                                                     para E/S




Master Control Relay (MCR)

Empleado para inhibir el funcionamiento de una determinada parte del programa en casos de
emergencia 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 no
modifican 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 entre
                                                 las operaciones MCR< y MCR> (salidas
                                                 A 4.0, A 4.1) se ejecutan de forma que
                                                 E 0.0 = 1 (MCR está ON): la salida A 4.0 se
                                                 pone a "1" si la entrada E 0.3 está en el
                                                 estado "1", y no cambia si la entrada E 0.3
                                                 está en el estado "0". A la salida A 4.1 se le
                                                 asigna el estado de la entrada E 0.4.
                                                 E 0.0 = 0 (MCR está OFF): la salida A 4.0
                                                 no varía, independientemente del estado
                                                 de E 0.3; la salida A 4.1 es "0",
                                                 independientemente de cuál sea el estado
                                                 de E 0.4. En el circuito siguiente, la
                                                 operación ---(MCRD) desactiva el MCR.
                                                 Esto significa que ya no se pueden
                                                 programar áreas MCR con las dos
                                                 operaciones ---(MCR<) y ---(MCR>).
---(MCRD) Final de un Master Control Relay

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

                                                       MCRA activa el MCR. Los circuitos entre
                                                       las operaciones MCR< y MCR> (salidas
                                                       A 4.0, A 4.1) se ejecutan de forma que
                                                       E 0.0 = 1 (MCR está ON): la salida A 4.0
                                                       se pone a "1" si la entrada E 0.3 está en
                                                       el estado "1"; A 4.0 no se modifica si la
                                                       entrada E 0.3 está en el estado "0". A la
                                                       salida A 4.1 se le asigna el estado de la
                                                       entrada E 0.4.
                                                       E 0.0 = 0 (MCR está OFF): la salida A 4.0
                                                       no varía, independientemente del estado
                                                       de E 0.3, y la salida A 4.1 es "0",
                                                       independientemente del estado de E 0.4
                                                       En el circuito siguiente, la operación ---
                                                       (MCRD) desactiva el MCR. Esto significa
                                                       que ya no se pueden programar áreas
                                                       MCR con la pareja de operaciones
                                                       ---(MCR<) y ---(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 pila
LIFO (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 siguientes
elementos dependen del MCR y varían según cuál sea el estado de señal del RLO que se
almacena en la pila MCR mientras está abierta un área MCR:
STEP 7 Funciones y operaciones
STEP 7 Funciones y operaciones

Contenu connexe

Tendances

Tutorial de cambio ip al plc festo rev b
Tutorial de cambio ip al plc festo rev bTutorial de cambio ip al plc festo rev b
Tutorial de cambio ip al plc festo rev bChristian Vera Graciano
 
Apuntes básicos sobre PLc's
Apuntes básicos sobre PLc'sApuntes básicos sobre PLc's
Apuntes básicos sobre PLc'sPablo Angulo
 
Manual de manutenção de caminhões eletrônicos
Manual de manutenção de caminhões eletrônicosManual de manutenção de caminhões eletrônicos
Manual de manutenção de caminhões eletrônicosMarcelo Auler
 
Pic16f877 guia detallada parte2
Pic16f877 guia detallada parte2Pic16f877 guia detallada parte2
Pic16f877 guia detallada parte2Alejandro Garcia
 
PROGRAMACION DE PLCs: LENGUAJE BLOQUES FUNCIONALES
PROGRAMACION DE PLCs: LENGUAJE BLOQUES FUNCIONALESPROGRAMACION DE PLCs: LENGUAJE BLOQUES FUNCIONALES
PROGRAMACION DE PLCs: LENGUAJE BLOQUES FUNCIONALESUDO Monagas
 
Curso básico de PLC
Curso básico de PLCCurso básico de PLC
Curso básico de PLCPablo Zirpolo
 
Programación del robot mitsubishi con el software cosirop
Programación del robot mitsubishi con el software cosiropProgramación del robot mitsubishi con el software cosirop
Programación del robot mitsubishi con el software cosiropJose Antonio Velasquez Costa
 
PROFIBUS
PROFIBUSPROFIBUS
PROFIBUSmisatav
 
PWM con PIC16F877A: Modulos y Registros Involucrados
PWM con PIC16F877A: Modulos y Registros InvolucradosPWM con PIC16F877A: Modulos y Registros Involucrados
PWM con PIC16F877A: Modulos y Registros InvolucradosEduardo Henriquez
 
Simulacion de fluid sim y tia portal
Simulacion de fluid sim y tia portalSimulacion de fluid sim y tia portal
Simulacion de fluid sim y tia portalEdgar Chacca Cuti
 
Cuaderno de logo
Cuaderno de logoCuaderno de logo
Cuaderno de logoandogon
 
Ejercicios ladder
Ejercicios ladderEjercicios ladder
Ejercicios laddererney03
 
Clp completa
Clp completaClp completa
Clp completapanelada
 
Teoria s7 300-basico
Teoria s7 300-basicoTeoria s7 300-basico
Teoria s7 300-basicoGerardo Moya
 

Tendances (20)

Tutorial de cambio ip al plc festo rev b
Tutorial de cambio ip al plc festo rev bTutorial de cambio ip al plc festo rev b
Tutorial de cambio ip al plc festo rev b
 
Apuntes básicos sobre PLc's
Apuntes básicos sobre PLc'sApuntes básicos sobre PLc's
Apuntes básicos sobre PLc's
 
Manual de manutenção de caminhões eletrônicos
Manual de manutenção de caminhões eletrônicosManual de manutenção de caminhões eletrônicos
Manual de manutenção de caminhões eletrônicos
 
Pic16f877 guia detallada parte2
Pic16f877 guia detallada parte2Pic16f877 guia detallada parte2
Pic16f877 guia detallada parte2
 
MEMORIAS DE LOS PLC
MEMORIAS DE LOS PLCMEMORIAS DE LOS PLC
MEMORIAS DE LOS PLC
 
PROGRAMACION DE PLCs: LENGUAJE BLOQUES FUNCIONALES
PROGRAMACION DE PLCs: LENGUAJE BLOQUES FUNCIONALESPROGRAMACION DE PLCs: LENGUAJE BLOQUES FUNCIONALES
PROGRAMACION DE PLCs: LENGUAJE BLOQUES FUNCIONALES
 
Fiat code
Fiat    codeFiat    code
Fiat code
 
Curso básico de PLC
Curso básico de PLCCurso básico de PLC
Curso básico de PLC
 
Diagrama escalera
Diagrama escaleraDiagrama escalera
Diagrama escalera
 
Programación del robot mitsubishi con el software cosirop
Programación del robot mitsubishi con el software cosiropProgramación del robot mitsubishi con el software cosirop
Programación del robot mitsubishi con el software cosirop
 
PROFIBUS
PROFIBUSPROFIBUS
PROFIBUS
 
PWM con PIC16F877A: Modulos y Registros Involucrados
PWM con PIC16F877A: Modulos y Registros InvolucradosPWM con PIC16F877A: Modulos y Registros Involucrados
PWM con PIC16F877A: Modulos y Registros Involucrados
 
Simulacion de fluid sim y tia portal
Simulacion de fluid sim y tia portalSimulacion de fluid sim y tia portal
Simulacion de fluid sim y tia portal
 
Cuaderno de logo
Cuaderno de logoCuaderno de logo
Cuaderno de logo
 
Sinamics g110
Sinamics g110Sinamics g110
Sinamics g110
 
-Mercedes-Benz-OM904-OM-906-LA.pdf
-Mercedes-Benz-OM904-OM-906-LA.pdf-Mercedes-Benz-OM904-OM-906-LA.pdf
-Mercedes-Benz-OM904-OM-906-LA.pdf
 
Ejercicios ladder
Ejercicios ladderEjercicios ladder
Ejercicios ladder
 
Clp completa
Clp completaClp completa
Clp completa
 
Domotica con logo
Domotica con logoDomotica con logo
Domotica con logo
 
Teoria s7 300-basico
Teoria s7 300-basicoTeoria s7 300-basico
Teoria s7 300-basico
 

En vedette

Variadores de velocidad
Variadores de velocidadVariadores de velocidad
Variadores de velocidadPedro JJ
 
01 curso dimensionamiento
01 curso dimensionamiento01 curso dimensionamiento
01 curso dimensionamientorrpeyton
 
Ruedas de fricción transmisión por correa engranajes
Ruedas de fricción transmisión por correa engranajesRuedas de fricción transmisión por correa engranajes
Ruedas de fricción transmisión por correa engranajesArturo Iglesias Castro
 
Practica de curvas cracteristicas de un motor diesel
Practica de curvas cracteristicas de un motor dieselPractica de curvas cracteristicas de un motor diesel
Practica de curvas cracteristicas de un motor dieselFredy Toscano
 
Catalogo Siemens Motores Trifasicos
Catalogo Siemens Motores TrifasicosCatalogo Siemens Motores Trifasicos
Catalogo Siemens Motores TrifasicosJeffer Garcia
 
Variadores de frecuencia
Variadores de frecuenciaVariadores de frecuencia
Variadores de frecuenciaDaniel Garcia
 
Transmisión del movimiento circular
Transmisión del movimiento circularTransmisión del movimiento circular
Transmisión del movimiento circularHarold Urrea
 
E. motores diapositivas 04. caracteristicas de los motores reducido
E. motores diapositivas 04. caracteristicas de los motores reducidoE. motores diapositivas 04. caracteristicas de los motores reducido
E. motores diapositivas 04. caracteristicas de los motores reducidoDiego Algaba
 
motores eléctricos variacion de velocidad
motores eléctricos variacion de velocidadmotores eléctricos variacion de velocidad
motores eléctricos variacion de velocidadGustavo Garcia
 
Trabajo potencia energía fisíca 2
Trabajo potencia energía fisíca 2Trabajo potencia energía fisíca 2
Trabajo potencia energía fisíca 2Andrea Alarcon
 
Fuerza, trabajo, potencia y energia m.
Fuerza, trabajo, potencia y energia m.Fuerza, trabajo, potencia y energia m.
Fuerza, trabajo, potencia y energia m.Michel Lizarazo
 
Trabajo, Potencia Y EnergíA
Trabajo, Potencia Y EnergíATrabajo, Potencia Y EnergíA
Trabajo, Potencia Y EnergíAmiguelolallap
 
Trabajo, potencia y energia
Trabajo, potencia y energiaTrabajo, potencia y energia
Trabajo, potencia y energiakarolina Lema
 
manual-de-motores-electricos
 manual-de-motores-electricos manual-de-motores-electricos
manual-de-motores-electricosEléctricos BMC
 

En vedette (20)

Profibus by pgf
Profibus by pgfProfibus by pgf
Profibus by pgf
 
Variadores de velocidad
Variadores de velocidadVariadores de velocidad
Variadores de velocidad
 
Temarios automatizacion
Temarios automatizacionTemarios automatizacion
Temarios automatizacion
 
01 curso dimensionamiento
01 curso dimensionamiento01 curso dimensionamiento
01 curso dimensionamiento
 
Ruedas de fricción transmisión por correa engranajes
Ruedas de fricción transmisión por correa engranajesRuedas de fricción transmisión por correa engranajes
Ruedas de fricción transmisión por correa engranajes
 
Step 7 avanzado
Step 7 avanzadoStep 7 avanzado
Step 7 avanzado
 
Practica de curvas cracteristicas de un motor diesel
Practica de curvas cracteristicas de un motor dieselPractica de curvas cracteristicas de un motor diesel
Practica de curvas cracteristicas de un motor diesel
 
Catalogo Siemens Motores Trifasicos
Catalogo Siemens Motores TrifasicosCatalogo Siemens Motores Trifasicos
Catalogo Siemens Motores Trifasicos
 
Variadores de Velocidad
Variadores de VelocidadVariadores de Velocidad
Variadores de Velocidad
 
Variadores de frecuencia
Variadores de frecuenciaVariadores de frecuencia
Variadores de frecuencia
 
Transmisión del movimiento circular
Transmisión del movimiento circularTransmisión del movimiento circular
Transmisión del movimiento circular
 
E. motores diapositivas 04. caracteristicas de los motores reducido
E. motores diapositivas 04. caracteristicas de los motores reducidoE. motores diapositivas 04. caracteristicas de los motores reducido
E. motores diapositivas 04. caracteristicas de los motores reducido
 
Mantenimiento a Motor Electrico
Mantenimiento a Motor ElectricoMantenimiento a Motor Electrico
Mantenimiento a Motor Electrico
 
motores eléctricos variacion de velocidad
motores eléctricos variacion de velocidadmotores eléctricos variacion de velocidad
motores eléctricos variacion de velocidad
 
sistema de control de movimiento
sistema de control de movimientosistema de control de movimiento
sistema de control de movimiento
 
Trabajo potencia energía fisíca 2
Trabajo potencia energía fisíca 2Trabajo potencia energía fisíca 2
Trabajo potencia energía fisíca 2
 
Fuerza, trabajo, potencia y energia m.
Fuerza, trabajo, potencia y energia m.Fuerza, trabajo, potencia y energia m.
Fuerza, trabajo, potencia y energia m.
 
Trabajo, Potencia Y EnergíA
Trabajo, Potencia Y EnergíATrabajo, Potencia Y EnergíA
Trabajo, Potencia Y EnergíA
 
Trabajo, potencia y energia
Trabajo, potencia y energiaTrabajo, potencia y energia
Trabajo, potencia y energia
 
manual-de-motores-electricos
 manual-de-motores-electricos manual-de-motores-electricos
manual-de-motores-electricos
 

Similaire à STEP 7 Funciones y operaciones

Arquitecturas de bd
Arquitecturas de bdArquitecturas de bd
Arquitecturas de bdLuis Jherry
 
Parametrizacion de bloques de funcion y funciones.pdf
Parametrizacion de bloques de funcion y funciones.pdfParametrizacion de bloques de funcion y funciones.pdf
Parametrizacion de bloques de funcion y funciones.pdfEradHernandez
 
Lenguajes ensamblador
Lenguajes ensambladorLenguajes ensamblador
Lenguajes ensambladorARAELGM
 
estructura_de_un_programa_en_lenguaje_ensamblador
estructura_de_un_programa_en_lenguaje_ensambladorestructura_de_un_programa_en_lenguaje_ensamblador
estructura_de_un_programa_en_lenguaje_ensambladorGloria Azúa
 
Lenguaje de programación
Lenguaje de programaciónLenguaje de programación
Lenguaje de programaciónvero_00
 
2.Teoria-II PROGRAMACION SIEMENS TIA PORTAL NIVEL II
2.Teoria-II PROGRAMACION SIEMENS TIA PORTAL NIVEL II2.Teoria-II PROGRAMACION SIEMENS TIA PORTAL NIVEL II
2.Teoria-II PROGRAMACION SIEMENS TIA PORTAL NIVEL IIavaldero
 
Dialnet programando microcontroladorespicenlenguajec-4587553
Dialnet programando microcontroladorespicenlenguajec-4587553Dialnet programando microcontroladorespicenlenguajec-4587553
Dialnet programando microcontroladorespicenlenguajec-4587553RoxanneLamas2
 
Como encaja Fast Track 3.0 en la arquitectura de nuestro datawarehouse
Como encaja Fast Track 3.0 en la arquitectura de nuestro datawarehouseComo encaja Fast Track 3.0 en la arquitectura de nuestro datawarehouse
Como encaja Fast Track 3.0 en la arquitectura de nuestro datawarehouseSolidQ
 
INFOSAN Delphi 603-752
INFOSAN Delphi  603-752INFOSAN Delphi  603-752
INFOSAN Delphi 603-752FRANCIACOCO
 
Ejb30 3
Ejb30 3 Ejb30 3
Ejb30 3 oscar
 

Similaire à STEP 7 Funciones y operaciones (20)

Db2
Db2Db2
Db2
 
DB2
DB2DB2
DB2
 
Arquitecturas de bd
Arquitecturas de bdArquitecturas de bd
Arquitecturas de bd
 
Jin Unidad6
Jin Unidad6Jin Unidad6
Jin Unidad6
 
Parametrizacion de bloques de funcion y funciones.pdf
Parametrizacion de bloques de funcion y funciones.pdfParametrizacion de bloques de funcion y funciones.pdf
Parametrizacion de bloques de funcion y funciones.pdf
 
Lenguajes ensamblador
Lenguajes ensambladorLenguajes ensamblador
Lenguajes ensamblador
 
Trabajo ddl
Trabajo ddlTrabajo ddl
Trabajo ddl
 
Cap 1 almacenamiento de datos
Cap 1 almacenamiento de datosCap 1 almacenamiento de datos
Cap 1 almacenamiento de datos
 
estructura_de_un_programa_en_lenguaje_ensamblador
estructura_de_un_programa_en_lenguaje_ensambladorestructura_de_un_programa_en_lenguaje_ensamblador
estructura_de_un_programa_en_lenguaje_ensamblador
 
Lenguaje de programación
Lenguaje de programaciónLenguaje de programación
Lenguaje de programación
 
Csharp
CsharpCsharp
Csharp
 
2.Teoria-II PROGRAMACION SIEMENS TIA PORTAL NIVEL II
2.Teoria-II PROGRAMACION SIEMENS TIA PORTAL NIVEL II2.Teoria-II PROGRAMACION SIEMENS TIA PORTAL NIVEL II
2.Teoria-II PROGRAMACION SIEMENS TIA PORTAL NIVEL II
 
SEVILLA Meetups23032023.pdf
SEVILLA Meetups23032023.pdfSEVILLA Meetups23032023.pdf
SEVILLA Meetups23032023.pdf
 
Dialnet programando microcontroladorespicenlenguajec-4587553
Dialnet programando microcontroladorespicenlenguajec-4587553Dialnet programando microcontroladorespicenlenguajec-4587553
Dialnet programando microcontroladorespicenlenguajec-4587553
 
Como encaja Fast Track 3.0 en la arquitectura de nuestro datawarehouse
Como encaja Fast Track 3.0 en la arquitectura de nuestro datawarehouseComo encaja Fast Track 3.0 en la arquitectura de nuestro datawarehouse
Como encaja Fast Track 3.0 en la arquitectura de nuestro datawarehouse
 
Ec6
Ec6Ec6
Ec6
 
Programacion C#
Programacion C#Programacion C#
Programacion C#
 
Java
JavaJava
Java
 
INFOSAN Delphi 603-752
INFOSAN Delphi  603-752INFOSAN Delphi  603-752
INFOSAN Delphi 603-752
 
Ejb30 3
Ejb30 3 Ejb30 3
Ejb30 3
 

Plus de techonmyweb

Amplificadores operacionales
Amplificadores operacionalesAmplificadores operacionales
Amplificadores operacionalestechonmyweb
 
Automatizacion conceptos generales y diseño
Automatizacion conceptos generales y diseñoAutomatizacion conceptos generales y diseño
Automatizacion conceptos generales y diseñotechonmyweb
 
Diagrama de contactos y funciones
Diagrama de contactos y funcionesDiagrama de contactos y funciones
Diagrama de contactos y funcionestechonmyweb
 
Simatic s7 300 caracteristicas
Simatic s7 300 caracteristicasSimatic s7 300 caracteristicas
Simatic s7 300 caracteristicastechonmyweb
 
STEP 7 Crear un projecto nuevo
STEP 7 Crear un projecto nuevoSTEP 7 Crear un projecto nuevo
STEP 7 Crear un projecto nuevotechonmyweb
 
Programación estructurada plc siemens
Programación estructurada plc siemensProgramación estructurada plc siemens
Programación estructurada plc siemenstechonmyweb
 
Automata programable
Automata programableAutomata programable
Automata programabletechonmyweb
 

Plus de techonmyweb (12)

Amplificadores operacionales
Amplificadores operacionalesAmplificadores operacionales
Amplificadores operacionales
 
Opam 741 00
Opam 741 00Opam 741 00
Opam 741 00
 
Opam 741 02
Opam 741 02Opam 741 02
Opam 741 02
 
Opam 741 01
Opam 741 01Opam 741 01
Opam 741 01
 
Automatizacion conceptos generales y diseño
Automatizacion conceptos generales y diseñoAutomatizacion conceptos generales y diseño
Automatizacion conceptos generales y diseño
 
Diagrama de contactos y funciones
Diagrama de contactos y funcionesDiagrama de contactos y funciones
Diagrama de contactos y funciones
 
Simatic s7 300 caracteristicas
Simatic s7 300 caracteristicasSimatic s7 300 caracteristicas
Simatic s7 300 caracteristicas
 
Grafcet
GrafcetGrafcet
Grafcet
 
STEP 7 Crear un projecto nuevo
STEP 7 Crear un projecto nuevoSTEP 7 Crear un projecto nuevo
STEP 7 Crear un projecto nuevo
 
Programación estructurada plc siemens
Programación estructurada plc siemensProgramación estructurada plc siemens
Programación estructurada plc siemens
 
Automata programable
Automata programableAutomata programable
Automata programable
 
Automatización
AutomatizaciónAutomatización
Automatización
 

Dernier

Estas son las escuelas y colegios que tendrán modalidad no presencial este lu...
Estas son las escuelas y colegios que tendrán modalidad no presencial este lu...Estas son las escuelas y colegios que tendrán modalidad no presencial este lu...
Estas son las escuelas y colegios que tendrán modalidad no presencial este lu...fcastellanos3
 
PPT GESTIÓN ESCOLAR 2024 Comités y Compromisos.pptx
PPT GESTIÓN ESCOLAR 2024 Comités y Compromisos.pptxPPT GESTIÓN ESCOLAR 2024 Comités y Compromisos.pptx
PPT GESTIÓN ESCOLAR 2024 Comités y Compromisos.pptxOscarEduardoSanchezC
 
Estrategia de Enseñanza y Aprendizaje.pdf
Estrategia de Enseñanza y Aprendizaje.pdfEstrategia de Enseñanza y Aprendizaje.pdf
Estrategia de Enseñanza y Aprendizaje.pdfromanmillans
 
PLANIFICACION ANUAL 2024 - INICIAL UNIDOCENTE.docx
PLANIFICACION ANUAL 2024 - INICIAL UNIDOCENTE.docxPLANIFICACION ANUAL 2024 - INICIAL UNIDOCENTE.docx
PLANIFICACION ANUAL 2024 - INICIAL UNIDOCENTE.docxJUANSIMONPACHIN
 
PPT_Formación integral y educación CRESE (1).pdf
PPT_Formación integral y educación CRESE (1).pdfPPT_Formación integral y educación CRESE (1).pdf
PPT_Formación integral y educación CRESE (1).pdfEDILIAGAMBOA
 
TUTORIA II - CIRCULO DORADO UNIVERSIDAD CESAR VALLEJO
TUTORIA II - CIRCULO DORADO UNIVERSIDAD CESAR VALLEJOTUTORIA II - CIRCULO DORADO UNIVERSIDAD CESAR VALLEJO
TUTORIA II - CIRCULO DORADO UNIVERSIDAD CESAR VALLEJOweislaco
 
CIENCIAS NATURALES 4 TO ambientes .docx
CIENCIAS NATURALES 4 TO  ambientes .docxCIENCIAS NATURALES 4 TO  ambientes .docx
CIENCIAS NATURALES 4 TO ambientes .docxAgustinaNuez21
 
cuadernillo de lectoescritura para niños de básica
cuadernillo de lectoescritura para niños de básicacuadernillo de lectoescritura para niños de básica
cuadernillo de lectoescritura para niños de básicaGianninaValeskaContr
 
Mapa Mental de estrategias de articulación de las areas curriculares.pdf
Mapa Mental de estrategias de articulación de las areas curriculares.pdfMapa Mental de estrategias de articulación de las areas curriculares.pdf
Mapa Mental de estrategias de articulación de las areas curriculares.pdfvictorbeltuce
 
Instrucciones para la aplicacion de la PAA-2024b - (Mayo 2024)
Instrucciones para la aplicacion de la PAA-2024b - (Mayo 2024)Instrucciones para la aplicacion de la PAA-2024b - (Mayo 2024)
Instrucciones para la aplicacion de la PAA-2024b - (Mayo 2024)veganet
 
periodico mural y sus partes y caracteristicas
periodico mural y sus partes y caracteristicasperiodico mural y sus partes y caracteristicas
periodico mural y sus partes y caracteristicas123yudy
 
Tarea 5_ Foro _Selección de herramientas digitales_Manuel.pdf
Tarea 5_ Foro _Selección de herramientas digitales_Manuel.pdfTarea 5_ Foro _Selección de herramientas digitales_Manuel.pdf
Tarea 5_ Foro _Selección de herramientas digitales_Manuel.pdfManuel Molina
 
PINTURA ITALIANA DEL CINQUECENTO (SIGLO XVI).ppt
PINTURA ITALIANA DEL CINQUECENTO (SIGLO XVI).pptPINTURA ITALIANA DEL CINQUECENTO (SIGLO XVI).ppt
PINTURA ITALIANA DEL CINQUECENTO (SIGLO XVI).pptAlberto Rubio
 
SISTEMA INMUNE FISIOLOGIA MEDICA UNSL 2024
SISTEMA INMUNE FISIOLOGIA MEDICA UNSL 2024SISTEMA INMUNE FISIOLOGIA MEDICA UNSL 2024
SISTEMA INMUNE FISIOLOGIA MEDICA UNSL 2024gharce
 

Dernier (20)

Aedes aegypti + Intro to Coquies EE.pptx
Aedes aegypti + Intro to Coquies EE.pptxAedes aegypti + Intro to Coquies EE.pptx
Aedes aegypti + Intro to Coquies EE.pptx
 
Estas son las escuelas y colegios que tendrán modalidad no presencial este lu...
Estas son las escuelas y colegios que tendrán modalidad no presencial este lu...Estas son las escuelas y colegios que tendrán modalidad no presencial este lu...
Estas son las escuelas y colegios que tendrán modalidad no presencial este lu...
 
PPT GESTIÓN ESCOLAR 2024 Comités y Compromisos.pptx
PPT GESTIÓN ESCOLAR 2024 Comités y Compromisos.pptxPPT GESTIÓN ESCOLAR 2024 Comités y Compromisos.pptx
PPT GESTIÓN ESCOLAR 2024 Comités y Compromisos.pptx
 
Estrategia de Enseñanza y Aprendizaje.pdf
Estrategia de Enseñanza y Aprendizaje.pdfEstrategia de Enseñanza y Aprendizaje.pdf
Estrategia de Enseñanza y Aprendizaje.pdf
 
PLANIFICACION ANUAL 2024 - INICIAL UNIDOCENTE.docx
PLANIFICACION ANUAL 2024 - INICIAL UNIDOCENTE.docxPLANIFICACION ANUAL 2024 - INICIAL UNIDOCENTE.docx
PLANIFICACION ANUAL 2024 - INICIAL UNIDOCENTE.docx
 
PPT_Formación integral y educación CRESE (1).pdf
PPT_Formación integral y educación CRESE (1).pdfPPT_Formación integral y educación CRESE (1).pdf
PPT_Formación integral y educación CRESE (1).pdf
 
TUTORIA II - CIRCULO DORADO UNIVERSIDAD CESAR VALLEJO
TUTORIA II - CIRCULO DORADO UNIVERSIDAD CESAR VALLEJOTUTORIA II - CIRCULO DORADO UNIVERSIDAD CESAR VALLEJO
TUTORIA II - CIRCULO DORADO UNIVERSIDAD CESAR VALLEJO
 
La luz brilla en la oscuridad. Necesitamos luz
La luz brilla en la oscuridad. Necesitamos luzLa luz brilla en la oscuridad. Necesitamos luz
La luz brilla en la oscuridad. Necesitamos luz
 
CIENCIAS NATURALES 4 TO ambientes .docx
CIENCIAS NATURALES 4 TO  ambientes .docxCIENCIAS NATURALES 4 TO  ambientes .docx
CIENCIAS NATURALES 4 TO ambientes .docx
 
cuadernillo de lectoescritura para niños de básica
cuadernillo de lectoescritura para niños de básicacuadernillo de lectoescritura para niños de básica
cuadernillo de lectoescritura para niños de básica
 
Mapa Mental de estrategias de articulación de las areas curriculares.pdf
Mapa Mental de estrategias de articulación de las areas curriculares.pdfMapa Mental de estrategias de articulación de las areas curriculares.pdf
Mapa Mental de estrategias de articulación de las areas curriculares.pdf
 
VISITA À PROTEÇÃO CIVIL _
VISITA À PROTEÇÃO CIVIL                  _VISITA À PROTEÇÃO CIVIL                  _
VISITA À PROTEÇÃO CIVIL _
 
Instrucciones para la aplicacion de la PAA-2024b - (Mayo 2024)
Instrucciones para la aplicacion de la PAA-2024b - (Mayo 2024)Instrucciones para la aplicacion de la PAA-2024b - (Mayo 2024)
Instrucciones para la aplicacion de la PAA-2024b - (Mayo 2024)
 
periodico mural y sus partes y caracteristicas
periodico mural y sus partes y caracteristicasperiodico mural y sus partes y caracteristicas
periodico mural y sus partes y caracteristicas
 
Tarea 5_ Foro _Selección de herramientas digitales_Manuel.pdf
Tarea 5_ Foro _Selección de herramientas digitales_Manuel.pdfTarea 5_ Foro _Selección de herramientas digitales_Manuel.pdf
Tarea 5_ Foro _Selección de herramientas digitales_Manuel.pdf
 
PINTURA ITALIANA DEL CINQUECENTO (SIGLO XVI).ppt
PINTURA ITALIANA DEL CINQUECENTO (SIGLO XVI).pptPINTURA ITALIANA DEL CINQUECENTO (SIGLO XVI).ppt
PINTURA ITALIANA DEL CINQUECENTO (SIGLO XVI).ppt
 
Earth Day Everyday 2024 54th anniversary
Earth Day Everyday 2024 54th anniversaryEarth Day Everyday 2024 54th anniversary
Earth Day Everyday 2024 54th anniversary
 
DIA INTERNACIONAL DAS FLORESTAS .
DIA INTERNACIONAL DAS FLORESTAS         .DIA INTERNACIONAL DAS FLORESTAS         .
DIA INTERNACIONAL DAS FLORESTAS .
 
SISTEMA INMUNE FISIOLOGIA MEDICA UNSL 2024
SISTEMA INMUNE FISIOLOGIA MEDICA UNSL 2024SISTEMA INMUNE FISIOLOGIA MEDICA UNSL 2024
SISTEMA INMUNE FISIOLOGIA MEDICA UNSL 2024
 
Tema 7.- E-COMMERCE SISTEMAS DE INFORMACION.pdf
Tema 7.- E-COMMERCE SISTEMAS DE INFORMACION.pdfTema 7.- E-COMMERCE SISTEMAS DE INFORMACION.pdf
Tema 7.- E-COMMERCE SISTEMAS DE INFORMACION.pdf
 

STEP 7 Funciones y operaciones

  • 1. Posiciones de la memoria RAM BYTE BIT FORMATO BYTE M 0.3 FORMATO PALABRA (WORD) 7 0 MB0 0 X MW0 MB1 1 MD0 MW1 MB2 2 X MD1 MW2 MB3 3 MW3 MB4 4 . . . . . . FORMATO DOBLE 125 M 2.3 PALABRA (DOUBLE WORD) 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 T# Time# abreviatura Nemotecnia) 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#
  • 2. Areas de memoria y sus funciones Nombre Función del área Acceso a través de Abre del área unidades de longitud viat. Imagen Al arrancar el programa, el sistema operativo Entrada E proceso lee las entradas del proceso almacenando los Byte de entrada EB de valores en este área Palabra de entrada EW entradas Palabra doble de entrada ED (E) Imagen Durante el ciclo, el programa calcula los Salida A proceso valores de salida y los deposita en este área. Byte de salida AB de Al final del ciclo, el sistema operativo lee en Palabra de salida AW salidas este área los valores de salida calculados y Palabra doble de salida AD (A) los transfiere a las salidas del proceso Marcas Area que permite almacenar resultados Marcas M (M) intermedios calculados en el programa Byte de salida MB Palabra de salida MW Palabra doble de salida MD E/S: Este área permite al programa el acceso Byte de entrada de la periferia PEB entradas directo a los módulos de E/S (es decir, Palabra de entrada de la perif. PEW externas entradas y salidas de la periferia) Palabra doble de entrada de PED la periferia E/S: Byte de entrada de la periferia PAB Salidas Palabra de entrada de la perif. PAW externas Palabra doble de entrada de PAD la periferia Tempori Elementos funcionales del lenguaje de T zadores program. KOP. Area que permite almacenar (T) células de temporización. En este área, el reloj accede a estas células para ser actualizado, decrementando el valor de temporización. En las células de temporiz. se accede con operaciones de temporización Conta Elementos funcionales del lenguaje de Z dores program. KOP. Area de almacenamiento de (C) contadores. Area de acceso con operaciones de conteo Bloques Area que contiene datos a los que se puede DBX de datos acceder desde cualquier bloque. Si se desea DBB (D) tener abiertos dos bloques al mismo tiempo, DBW uno puede abrirse con la instrucción ”AUF DBD DB” y otro con la instrucción “AUF DI”. La notación de los operandos determina a que bloque de datos se accede. Aunque la instrucción “AUF DI” pueda utilizarse para abrir cualquier bloque de datos, DIX su utilización principal consiste en abrir DIB bloques de datos de instancia asociados a DIW bloques de función FB´s y a bloques de DID función de sistema SFB´s Datos Area que contiene datos temporales de L locales bloque lógico (DB, FB, o FC). Estos, también LB (L) denominados datos locales dinámic., sirven LW de memoria intermedia. Cuando se cierra el LD bloque lógico, se pierden estos datos. Los datos están depositados en la pila de datos locales (pila L)
  • 3. Tipos de direccionamiento En el programa STEP7, pueden identificarse las variables mediante dos tipos de direccionamiento 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 el que la operación deberá operar. El operando se puede direccionar de forma absoluta o simbó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. A 4.0 Identificador direccionamiento de operando de bit direccionamiento de byte Direccionamiento simbólico (direccionamiento indirecto) A la variable con la que se trabaja, le es asignado un símbolo o referencia con el que poder distinguirla mas fácilmente durante la programación o visualización del programa. Ejemplo: Símbolo Direccionamiento MOTOR_ON A 0.1 ACTIV_IMAN A 0.0 FINAL_CARRERA E 0.5
  • 4. Selección del lenguaje de programación Lenguaje de Destinatarios Caso de Entrada Entrada orientada Bloque auto- programación aplicación incremental a fuente documentable de la CPU Lista de Usuarios que Programas Sí Sí Sí instrucciones desean optimizados AWL programar a en tiempo de nivel e maquina ejecución y uso de memoria Esquema de Usuarios Programación Sí No Sí contactos KOP familiarizados de controles con esquemas combinaciona eléctricos les Los lenguajes de programación sirven para crear programas de usuario, para cuyo fin ofrecen determinadas reservas lingüísticas en forma de instrucciones gráficas o de texto. El usuario introduce dichas instrucciones utilizando un editor, y estas instrucciones se compilan en un programa 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. Desde el editor de programación KOP, AWL, FUP, una vez cargado un proyecto, puede ser cambiado el lenguaje de programación a través del comando menú “Ver”, donde pueden verse los tipos tres tipos de lenguajes KOP, AWL, FUP. El cambio de lenguaje de programación puede ser realizado en cualquier momento. Sólo es posible cambiar de AWL a KOP/FUP si las instrucciones AWL asumen toda la asignación de parámetros de los correspondientes elementos KOP/FUP y respetan el orden. A los parámetros no usados en AWL se les asigna ”NOP 0”. 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 programado en lenguaje AWL, cada instrucción corresponderá a cada uno de los pasos que dará la CPU para ejecutarlo. Ejemplo: U( O E 0.0 U E 0.1) = A 2.0 Esquema de contactos (KOP) El esquema de contactos es un lenguaje de programación gráfico mediante diagrama de contactos y diagrama de funciones. El esquema de contactos es uno de los lenguajes de programación de STEP 7. Esta representación está normalizada según la norma DIN 19239. La representación del esquema de contactos corresponde a la de un esquema de circuitos. Al contrario que en la lista de instrucciones (AWL), en KOP solamente se puede representar una cantidad limitada de operaciones.
  • 5. Componentes del editor KOP Tabla correspondiente a las operaciones del lenguaje KOP por orden alfabético en la que se muestra el nombre de la función y la abreviatura SIMATIC correspondiente.
  • 6.
  • 7.
  • 8. 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 esta desactivado “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. Para desactivar 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 habilitada R BOOL E, A, M, L, D Desactivacion habilitada Q 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 bascula desactiva su salida. Si la entrada R recibe el estado 0 y la entrada S el estado 1, la bascula activa su salida. Cuando en ambas entradas recibe el estado 1, primero desactiva y seguidamente activa.
  • 9. SR (Desactivacion de flip-flop de activación) Si la entrada R recibe el estado 1 y la entrada S el estado 0, la bascula desactiva su salida. Si la entrada R recibe el estado 0 y la entrada S el estado 1, la bascula activa su salida. Cuando en ambas entradas recibe el estado 1, primero activa y seguidamente desactiva. 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 es comparado con el estado de señal del operando (marca de flancos). Si el estado de señal del operando 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 es comparado con el estado de señal del operando (marca de flancos). Si el estado de señal del operando 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 Operando1 Q 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 estado anterior almacenada en el operando 2. Si el estado anterior del RLO 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 los restantes casos “0”. 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 Operando1 Q 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 estado anterior almacenada en el operando 2. Si el estado anterior del RLO 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 los restantes casos “1”.
  • 10. ---(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.
  • 11. Temporizadores de retardo Tablas de características correspondientes a los temporizadores nombrados en los siguientes apartados: Parámetro Tipo de Area de Descripción SIMATIC datos memoria Nº de T TIMER T Numero de identificación del temporizador, el área depende 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ón De 10MS a 9S_990MS 0,01 segundos De 100MS a 1M_39S_900MS 0,1 segundos De 1S a 16M_39S 1 segundo De 10S a 2H_46M_30S 10 segundos S5TIME#4S = 4 segundos s5t#2h_15m = 2 horas y 15 minutos S5T#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 para un margen o una resolución se redondean de manera que correspondan a los valores límite para 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 la salida “Q”. Al recibir un pulso en la entrada “SET”, empieza a contar el tiempo programado sin activar 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 pulso en la entrada “RESET” mientras el temporizador esta contando o activado, la salida ”Q” queda desactivada ”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 la salida “Q”. Al recibir un pulso en la entrada “SET”, empieza a contar el tiempo programado sin activar 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
  • 12. sobre la entrada “SET”, por lo tanto al recibir un pulso en la entrada “RESET” mientras el temporizador esta contando o activado, la salida ”Q” queda desactivada ”0” además de borrar la 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 cual desactiva la salida “Q”. Al recibir un pulso en la entrada “SET”, empieza a contar el tiempo programado sin desactivar la salida ”Q” desconectándose el conteo instantáneamente que recibe el flanco de bajada de un nuevo pulso en el “SET”. La entrada “RESET” predomina sobre la entrada “SET”, por lo tanto al recibir un pulso en la entrada “RESET” mientras el temporizador 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 el tiempo 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 la salida 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 esta funcionando, 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 el tiempo 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 el temporizador continua el conteo y manteniendo activa la salida “Q” hasta que termina el tiempo establecido. 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, la salida “Q” se mantendría activa reactivándose el conteo, por lo tanto, manteniéndose por mas
  • 13. tiempo el funcionamiento del temporizador y la salida “Q”. La entrada “RESET” predomina sobre la entrada “SET”, por lo tanto al recibir un pulso en la entrada “RESET” mientras el temporizador esta funcionando, la salida ”Q” y el tiempo de conteo quedan desactivados ”0”. Instrucciones de bit para temporizadores ---(SI) Arrancar temporizador con impulso Basado en el mismo funcionamiento que el S_IMPULS, la activación de la entrada E 0.0 de "0" a "1" (flanco creciente en el RLO), el temporizador T5 arranca. El temporizador continúa en marcha con el valor de temporización indicado de 2 s mientras E 0.0 sea "1". Si el estado de señal en E 0.0 cambia de "1" a "0" antes de transcurrir el tiempo, el temporizador se para. La salida 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, se para y el valor de temporización restante se pone a "0". ---(SV) Arrancar temporizador con impulso Basado en el mismo funcionamiento que el S_VIMP, la activación de la entrada E 0.0 de "0" a "1" (flanco creciente en el RLO), el temporizador T5 arranca. El temporizador continúa en marcha con el valor de temporización indicado sin ser afectado por un flanco negativo en el RLO. Si el estado de señal en E 0.0 cambia de "0" a "1" antes de transcurrir el tiempo, el temporizador se vuelve a arrancar. La salida 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 el valor de temporización restante se pone a "0". ---(SE) Arrancar temporizador con retardo a la conexión Basado en el mismo funcionamiento que el S_EVERZ, la activación de la entrada E 0.0 de "0" a "1" (flanco creciente en el RLO), el temporizador T5 arranca. Si transcurre el tiempo y el estado de señal en E 0.0 sigue siendo "1", la salida A 4.0 es "1". Si el estado de señal en la entrada E 0.0 cambia de "1" a "0", el temporizador cambia a la marcha en vacío y A 4.0 es "0". 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, se para y el valor de temporización restante se pone a "0".
  • 14. ---(SS) Arrancar temporizador con retardo a la conexión con memoria Basado en el mismo funcionamiento que el S_SEVERZ, la activación de la entrada E 0.0 de "0" a "1" (flanco creciente en el RLO), el temporizador T5 arranca. Si el estado de señal en la entrada E 0.0 cambia de "0" a "1" antes de transcurrir el tiempo, el temporizador se vuelve a arrancar. La salida A 4.0 es "1" si ha transcurrido el tiempo. Si el estado de señal en la entrada E 0.1 es "1", el temporizador T5 se pone a 0, es decir, se para y el valor de temporización restante se pone a "0". ---(SA) Arrancar temporizador con retardo a la desconexión Basado en el mismo funcionamiento que el S_AVERZ, la activación de la entrada E 0.0 de "1" a "0", el temporizador arranca. A 4.0 es "1" si E 0.0 es "1" o si 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 el valor de temporización restante se pone a "0".
  • 15. Contadores Tabla correspondiente al símbolo SIMATIC de los temporizadores anteriormente explicados. Parámetro Tipo de Area de Descripción SIMATIC datos memoria N de Z COUNTER Z Numero de identificación del contador, el área depende 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 de Area de Descripción datos memoria <C-Nr.> COUNTER Z Numero del contador preseleccionado. <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 entre 0 y 999. ZAEHLER (incrementar/decrementar) La cantidad desde la que el contador comienza a contar es seleccionada en la entrada ZW al activar S mediante un flanco ascendente. La entrada ZV incrementa en 1 por cada pulso que recibe el valor preseleccionado. La entrada ZR decrementa en 1 por cada pulso que recibe el valor preseleccionado. Si hay un flanco ascendente en la entrada R, el contador se pone a cero y el valor de contaje es 0. El máximo y mínimo valor admisible por el contadores "999" y “0”, ya que deja de incrementar y decrementar. Al producirse un flanco ascendente en ambas entradas de contaje, el valor de contaje no varía. El estado de señal de la salida Q será "1" si el valor de contaje 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. Si el estado de señal en E 0.0 cambia de "0" a "1", el valor del contador Z10 incrementa en "1", a menos que el valor de Z10 fuera "999". Si E 0.1 cambia de "0" a "1", Z10 decrementa en "1", a no ser que el valor de Z10 fuera cero. La salida A 4.0 será "1" si el valor de Z10 no es cero.
  • 16. Z_VORN (incrementar contador) La cantidad desde la que el contador comienza a contar es seleccionada en la entrada ZW al activar S mediante un flanco ascendente. La entrada ZV incrementa en 1 por cada pulso que recibe al valor preseleccionado. Si hay un flanco ascendente en la entrada R, el contador se pone a cero y el valor de contaje es 0. en la entrada R el contador se pone a 0, y entonces el valor de contaje es cero. El máximo valor admisible por el contadores "999", a partir de aquí, el contador 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 de Z10 no sea cero. Z_RUECK (decrementar contador) La cantidad desde la que el contador comienza a contar es seleccionada en la entrada ZW al activar S mediante un flanco ascendente. La entrada ZR decrementa en 1 por cada pulso que recibe al valor preseleccionado. Si hay un flanco ascendente en la entrada R, el contador se pone a cero y el valor de contaje es 0. en la entrada R el contador se pone a 0, y entonces el valor de contaje es cero. El mínimo valor admisible por el contadores "0", a partir de aquí, el contador deja de decrementar. Al cambiar la entrada E 0.2 de "0" a "1", el contador toma el valor de preselección de MW10. Si el estado de señal en E 0.0 cambia de "0" a "1", el valor del contador Z10 decrementa en "1", a menos que el valor de Z10 fuera "0". La salida A 4.0 será "1" siempre que el valor de Z10 no sea 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 se transmite el valor predeterminado al contador indicado.
  • 17. El valor ”100” quedará preseleccionado para el contador Z5 si en la entrada E 0.0 se produce un flanco ascendente (cambio de "0" a "1"). El valor del contador Z5 no se altera en caso de que 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áximo a partir del cual no se puede incrementar mas es "999". Al cambiar E 0.0 de "0" a "1" (flanco ascendente en el RLO), se carga el valor predeterminado de "100" en el contador 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 de señal de E 0.2 es 1, el contador se pone a "0". A partir de “999” el contador deja de incrementar. ---(ZR) Contar atrás Decrementa en "1" el valor del contador si hay un flanco ascendente en el RLO. El valor mínimo a partir del cual no se puede decrementar mas es “0”. Al cambiar E 0.0 de "0" a "1" (flanco ascendente en el RLO), se carga el valor predeterminado de "100" en el contador 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.
  • 18. Operaciones de conversión BCD_I Convertir BCD a entero de 16 bits Parámetro Tipo de datos Area de memoria Descripción EN BOOL E, A, M, L, D Entrada de habilitación ENO BOOL E, A, M, L, D Salida de habilitación IN WORD E, A, M, L, D Numero BCD OUT INT E, A, M, L, D Valor entero(16 bits) de un numero BCD Lee el contenido de la entrada IN como un numero decimal codificado en binario de 3 dígitos (+/- 999), convertiendolo en un valor entero de 16 bits. La salida OUT contiene el resultado en forma de entero. La salida ENO siempre tiene el mismo estado de señal que la entrada EN. BCD_DI Convertir BCD a entero de 32 bits Parámetro Tipo de datos Area de memoria Descripción EN BOOL E, A, M, L, D Entrada de habilitación ENO BOOL E, A, M, L, D Salida de habilitación IN DWORD E, A, M, L, D Numero BCD OUT INT E, A, M, L, D Valor entero(32 bits) de un numero BCD Lee el contenido de la entrada IN como un numero decimal codificado en binario de 7 dígitos (+/- 9999999), convertiendolo en un valor entero de 32 bits. La salida OUT contiene el resultado en forma de entero. La salida ENO siempre tiene el mismo estado de señal que la entrada EN. I_BCD Convertir entero de 16 bits a BCD Parámetro Tipo de datos Area de memoria Descripción EN BOOL E, A, M, L, D Entrada de habilitación ENO BOOL E, A, M, L, D Salida de habilitación IN INT E, A, M, L, D Entero 16 bits OUT WORD E, A, M, L, D Valor BCD de entero de16 bits 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 codificado en binario (+/- 999). La salida OUT contiene el resultado. En caso de desbordamiento ENO = 0. DI_BCD Convertir entero de 32 bits A BCD Parámetro Tipo de datos Area de memoria Descripción EN BOOL E, A, M, L, D Entrada de habilitación ENO BOOL E, A, M, L, D Salida de habilitación IN 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 valor entero de 32 bits, convertiendolo en un numero de 7 dígitos en forma decimal codificado en binario (+/- 9999999). La salida OUT contiene el resultado. En caso de desbordamiento ENO = 0.
  • 19. TRUNC Truncar entero Parámetro Tipo de datos Area de memoria Descripción EN BOOL E, A, M, L, D Entrada de habilitación ENO BOOL E, A, M, L, D Salida de habilitación IN REAL E, A, M, L, D Numero real a convertir OUT DINT E, A, M, L, D Parte entera del valor d´IN Lee el contenido de la entrada IN como un valor real, convertiendolo en un entero de 32 bits. El resultado es la parte entera del numero real que extrae la salida OUT. En caso de desbordamiento ENO = 0. ROUND Redondear entero Parámetro Tipo de datos Area de memoria Descripción EN BOOL E, A, M, L, D Entrada de habilitación ENO BOOL E, A, M, L, D Salida de habilitación IN REAL E, A, M, L, D Valor a redondear OUT DINT E, A, M, L, D IN, redondear al próximo entero Lee el contenido de la entrada IN como numero real, convertiendolo en un entero de 32 bits. El resultado es el numero entero mas próximo (redondeo). Si el numero real se encuentra en el centro de dos enteros, el numero par es devuelto. El resultado se deposita en la salida OUT. En caso de desbordamiento ENO = 0. DI_R Convertir entero en 32 bits a real Parámetro Tipo de datos Area de memoria Descripción EN BOOL E, A, M, L, D Entrada de habilitación ENO BOOL E, A, M, L, D Salida de habilitación IN DINT E, A, M, L, D Entero 32 bits OUT REAL E, A, M, L, D Numero real Lee el contenido de la entrada IN como valor entero de 32 bits, convertiendolo en numero real. El resultado se deposita en la salida OUT. La salida ENO siempre tiene el mismo estado de señal que la entrada EN. I_DI Convertir entero de 16 bits a entero de 32 bits Parámetro Tipo de datos Area de memoria Descripción EN BOOL E, A, M, L, D Entrada de habilitación ENO BOOL E, A, M, L, D Salida de habilitación IN 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 valor entero de 16 bits, convertiendolo en entero de 32 bits. El resultado se deposita en la salida OUT. La salida ENO siempre tiene el mismo estado de señal que la entrada EN.
  • 20. CEIL Redondear numero real a entero superior Parámetro Tipo de datos Area de memoria Descripción EN BOOL E, A, M, L, D Entrada de habilitación ENO BOOL E, A, M, L, D Salida de habilitación IN REAL E, A, M, L, D Numero real a convertir OUT INT E, A, M, L, D Entero de 32 bits inferior que es mas grande que el numero real Lee el contenido de la entrada IN como numero real, convertiendolo en entero de 32 bits. El resultado es el entero inferior que es mas grande que el numero real (redondear). En caso de desbordamiento ENO = 0. FLOOR Redondear numero real a entero inferior Parámetro Tipo de datos Area de memoria Descripción EN BOOL E, A, M, L, D Entrada de habilitación ENO BOOL E, A, M, L, D Salida de habilitación IN REAL E, A, M, L, D Numero real a convertir OUT DINT E, A, M, L, D Entero de 32 bits superior menor que el numero real Lee el contenido de la entrada IN como numero real, convertiendolo en entero de 32 bits. El resultado se deposita en MD12. La salida A 0.0 ES “1” si se produce un desbordamiento o si no se procesa la instrucción E 0.0 = 0. INV_I Complemento a 1 de un entero de 16 bits Parámetro Tipo de datos Area de memoria Descripción EN BOOL E, A, M, L, D Entrada de habilitación ENO BOOL E, A, M, L, D Salida de habilitación IN INT E, A, M, L, D Valor entero 16 bits OUT INT E, A, M, L, D Complemento a 1 de un entero de 16 bits d´IN Lee el contenido de la entrada IN combinando el patrón hexadecimal W#16#FFFF mediante O-EXCLUSIVA. Esta operación invierte el estado de cada bit. La salida ENO siempre tiene el mismo estado de señal que la entrada EN. INV_DI Complemento a 1 de un entero de 32 bits Parámetro Tipo de datos Area de memoria Descripción EN BOOL E, A, M, L, D Entrada de habilitación ENO BOOL E, A, M, L, D Salida de habilitación IN 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 bits d´IN Lee el contenido de la entrada IN combinando el patrón hexadecimal W#16#FFFF mediante O-EXCLUSIVA. Esta operación invierte el estado de cada bit. La salida ENO siempre tiene el mismo estado de señal que la entrada EN.
  • 21. NEG_I Complemento a 2 de un entero de 16 bits Parámetro Tipo de datos Area de memoria Descripción EN BOOL E, A, M, L, D Entrada de habilitación ENO BOOL E, A, M, L, D Salida de habilitación IN 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 bits d´IN Lee el contenido de la entrada IN ejecutando la operación Complemento a 2. La operación invierte el signo (Ej: De un valor positivo a uno negativo). La salida ENO siempre tiene el mismo estado de señal que la entrada EN, a excepción de que si el estado de señal de ENO es 1, se produce un desbordamiento, el estado de señal de ENO es 0. NEG_DI Complemento a 2 de un entero de 32 bits Parámetro Tipo de datos Area de memoria Descripción EN BOOL E, A, M, L, D Entrada de habilitación ENO BOOL E, A, M, L, D Salida de habilitación IN 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 bits d´IN Lee el contenido de la entrada IN ejecutando la operación Complemento a 2. La operación invierte el signo (Ej: De un valor positivo a uno negativo). La salida ENO siempre tiene el mismo estado de señal que la entrada EN, a excepción de que si el estado de señal de ENO es 1, se produce un desbordamiento, el estado de señal de ENO es 0. NEG_R Invertir el signo de un numero real Parámetro Tipo de datos Area de memoria Descripción EN BOOL E, A, M, L, D Entrada de habilitación ENO BOOL E, A, M, L, D Salida de habilitación IN 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 invertiendo el signo. Esta operación equivale a una multiplicación por (-1). La operación invierte el signo (Ej: de un valor positivo a uno negativo). La salida ENO siempre tiene el mismo estado de señal que la entrada EN, a excepción de que si el estado de señal de ENO es 1, se produce un desbordamiento, el estado de señal de ENO es 0.
  • 22. Operaciones de comparación (>, <, ==, <>, <=, >=) Las operaciones de comparación sirven para comparar los siguientes pares de valores numé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ón comparan 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 la comparación es verdadero, mientras que un 0 significa que el resultado de la comparación es falso. Este resultado se encuentra almacenado en el bit de resultado lógico (RLO). Este resultado puede emplearse para su posterior procesamiento. Parámetro Carácter de relación Descripción xx >, <, = =, <>, <=, >= 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ón Entrada de cuadro BOOL E, A, M, L, D Entrada de habilitación Salida de cuadro BOOL E, A, M, L, D Salida de habilitación IN1 DINT E, A, M, L, D Primer valor a comparar IN2 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 haya seleccionado. Símbolo SIMATIC 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.2 tiene el estado de señal 1. CMP_I >= xx Comparar enteros (16 bits) (>, <, ==, <>, <=, >=) Parámetro Tipo de datos Area de memoria Descripción Entrada de cuadro BOOL E, A, M, L, D Entrada de habilitación Salida de cuadro BOOL E, A, M, L, D Salida de habilitación IN1 INT E, A, M, L, D Primer valor a comparar IN2 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 haya seleccionado.
  • 23. Símbolo SIMATIC 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ón Entrada de cuadro BOOL E, A, M, L, D Entrada de habilitación Salida de cuadro BOOL E, A, M, L, D Salida de habilitación IN1 REAL E, A, M, L, D Primer valor a comparar IN2 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 haya seleccionado. Símbolo SIMATIC 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 de Descripción memoria EN BOOL E, A, M, L, D Entrada de habilitación ENO BOOL E, A, M, L, D Salida de habilitación IN Todos los tipos de datos de 8, 16 E, A, M, L, D, Valor de la fuente i 32 bits de longitud T, Z 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 indica la salida O. ENO tiene el mismo estado de señal que la entrada EN. Como muestra la tabla, la operació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 área de 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 bit direccionado se pone a "1" (se activa) ó a "0" (se desactiva), tal como se ha descrito más arriba. Si el MCR está desconectado y se ejecuta una operación MOVE, en la dirección indicada por OUT se escribirá siempre el valor "0", independientemente de cuál sea el estado actual de IN.
  • 24. Acumuladores (ACU1 y ACU2) El acumulador 1 (ACU 1) y el acumulador 2 (ACU 2) son dos registros universales de 32 bits que se emplean para procesar bytes, palabras y palabras dobles. En estos acumuladores se pueden cargar constantes o valores depositados en la memoria como operandos y ejecutar operaciones lógicas con ellos. También es posible transferir el resultado en ACU 1 a una dirección (un módulo de datos, una salida, etc.). Cada acumulador puede descomponerse en dos palabras de 16 bits (palabra baja y alta). La palabra 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éndose el 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 de los 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 sin variar 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):
  • 25. Funciones de salto ---( JMP)--- Operacion de salto incondicional (absoluto) Interrumpen el desarrollo normal del programa, haciendo que el mismo salte a una meta determinada. La meta define el punto en que deberá continuar el programa. El salto se efectúa independientemente de condiciones. ---( JMP) Saltar si la señal es 1 Funciona como un salto absoluto cuando no hay otro elemento KOP entre el conductor izquierdo y la operación. El salto es siempre ejecutado. Las operaciones que se encuentren entre la operación de salto y la meta no se ejecutan. ---( 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. Si la entrada E 0.0 es 0 se ejecuta el salto a la meta CAS1. Al llevarse a cabo el salto, en la salida A 4.0 no se ejecuta la operación ”Poner salida a “0”, aunque E 0.3 sea 1. ---( 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". Si un salto condicional no se lleva a cabo, el RLO cambia a "1" después de la operación de salto.
  • 26. Si la entrada E 0.0 es 0, se ejecuta el salto a la meta CAS1. Al ejecutarse el salto, en la salida A 4.0 no se lleva a cabo la operación ”Poner salida a 0”, aunque la entrada E 0.3 sea 1. LAVEL Meta Cada salto ---( JMP ) tiene que tener una meta (LABEL). Una meta se compone de 4 caracteres como máximo. El primer carácter debe ser siempre una letra, no importando si el resto son números o letras. La meta se especifica normalmente en el operando de la instrucción de salto, y seguida de dos puntos frente a la línea que posee la meta (ver ejemplos). Si E 0.0 = 1 se ejecuta el salto a la meta CAS1. Al llevarse a cabo el salto, en la salida A 4.0 no se ejecuta la operación ”Poner salida a 0”, aunque E 0.3 sea 1.
  • 27. 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ón EN BOOL E, A, M, L, D Entrada de habilitación ENO BOOL E, A, M, L, D Salida de habilitación IN1 INT E, A, M, L, D Primer valor de la suma IN2 INT E, A, M, L, D Segundo valor de la suma OUT INT E, A, M, L, D Resultado de la suma Realiza la suma de números enteros de las entradas IN1 e IN2 cuando la entrada de habilitación EN esta en “1”. El resultado puede consultarse en la salida OUT. En el caso que hubiese desbordamiento o desbordamiento negativo por salir el resultado del rango valido de números enteros (16 bits), el bit OV y el bit OS, serian = “1”, y la salida ENO = “0”, por lo tanto, las siguientes operaciones a esta, combinadas a través de ENO, no serán ejecutadas. ADD_DI Suma de números enteros (32 bits) Parámetro Tipo de datos Area de memoria Descripción EN BOOL E, A, M, L, D Entrada de habilitación ENO BOOL E, A, M, L, D Salida de habilitación IN1 DINT E, A, M, L, D Primer valor de la suma IN2 DINT E, A, M, L, D Segundo valor de la suma OUT DINT E, A, M, L, D Resultado de la suma Realiza la suma de números enteros de las entradas IN1 e IN2 cuando la entrada de habilitación EN esta en “1”. El resultado puede consultarse en la salida OUT. En el caso que hubiese desbordamiento o desbordamiento negativo por salir el resultado del rango 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 a esta, combinadas a través de ENO, no serán ejecutadas. SUB_I Resta de números enteros (16 bits) Parámetro Tipo de datos Area de memoria Descripción EN BOOL E, A, M, L, D Entrada de habilitación ENO BOOL E, A, M, L, D Salida de habilitación IN1 INT E, A, M, L, D Primer valor de la resta IN2 INT E, A, M, L, D Segundo valor de la resta OUT INT E, A, M, L, D Resultado de la resta Realiza la resta de números enteros de las entradas IN1 e IN2 cuando la entrada de habilitación EN esta en 1. El resultado puede consultarse en la salida OUT. En el caso que hubiese desbordamiento o desbordamiento negativo por salir el resultado del rango valido de números enteros (16 bits), el bit OV y el bit OS, serian = “1”, y la salida ENO = “0”, por lo tanto, las siguientes operaciones a esta, combinadas a través de ENO, no serán ejecutadas.
  • 28. SUB_DI Resta de números enteros (32 bits) Parámetro Tipo de datos Area de memoria Descripción EN BOOL E, A, M, L, D Entrada de habilitación ENO BOOL E, A, M, L, D Salida de habilitación IN1 DINT E, A, M, L, D Primer valor de la resta IN2 DINT E, A, M, L, D Segundo valor de la resta OUT DINT E, A, M, L, D Resultado de la resta Realiza la resta de números enteros de las entradas IN1 e IN2 cuando la entrada de habilitación EN esta en 1. El resultado puede consultarse en la salida OUT. En el caso que hubiese desbordamiento o desbordamiento negativo por salir el resultado del rango 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 a esta, combinadas a través de ENO, no serán ejecutadas. MUL_I Producto de números enteros (16 bits) Parámetro Tipo de datos Area de memoria Descripción EN BOOL E, A, M, L, D Entrada de habilitación ENO BOOL E, A, M, L, D Salida de habilitación IN1 INT E, A, M, L, D Primer valor del producto IN2 INT E, A, M, L, D Segundo valor del producto OUT INT E, A, M, L, D Resultado del producto Realiza el producto de números enteros de las entradas IN1 e IN2 cuando la entrada de habilitación EN esta en “1”. El resultado puede consultarse en la salida OUT. En el caso que hubiese desbordamiento o desbordamiento negativo por salir el resultado del rango valido de números enteros (16 bits), el bit OV y el bit OS, serian = “1”, y la salida ENO = “0”, por lo tanto, las siguientes operaciones a esta, combinadas a través de ENO, no serán ejecutadas. MUL_DI Producto de números enteros (32 bits) Parámetro Tipo de datos Area de memoria Descripción EN BOOL E, A, M, L, D Entrada de habilitación ENO BOOL E, A, M, L, D Salida de habilitación IN1 DINT E, A, M, L, D Primer valor del producto IN2 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 IN2 cuando la entrada de habilitación EN esta en “1”. El resultado puede consultarse en la salida OUT. En el caso que hubiese desbordamiento o desbordamiento negativo por salir el resultado del rango 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 a esta, combinadas a través de ENO, no serán ejecutadas.
  • 29. DIV_I División de números enteros (16 bits) Parámetro Tipo de datos Area de memoria Descripción EN BOOL E, A, M, L, D Entrada de habilitación ENO BOOL E, A, M, L, D Salida de habilitación IN1 INT E, A, M, L, D Primer valor de la división IN2 INT E, A, M, L, D Segundo valor de la división OUT INT E, A, M, L, D Resultado de la división Realiza la división de números enteros de las entradas IN1 e IN2 cuando la entrada de habilitación EN esta en “1”. El resultado puede consultarse en la salida OUT. En el caso que hubiese desbordamiento o desbordamiento negativo por salir el resultado del rango valido de números enteros (16 bits), el bit OV y el bit OS, serian = “1”, y la salida ENO = “0”, por lo tanto, las siguientes operaciones a esta, combinadas a través de ENO, no serán ejecutadas. DIV_I División de números enteros (32 bits) Parámetro Tipo de datos Area de memoria Descripción EN BOOL E, A, M, L, D Entrada de habilitación ENO BOOL E, A, M, L, D Salida de habilitación IN1 DINT E, A, M, L, D Primer valor de la división IN2 DINT E, A, M, L, D Segundo valor de la división OUT DINT E, A, M, L, D Resultado de la división Realiza la división de números enteros de las entradas IN1 e IN2 cuando la entrada de habilitación EN esta en “1”. El resultado puede consultarse en la salida OUT. En el caso que hubiese desbordamiento o desbordamiento negativo por salir el resultado del rango 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 a esta, combinadas a través de ENO, no serán ejecutadas. MOD_DI Obtener resta de división de enteros (32 bits) Parámetro Tipo de datos Area de memoria Descripción EN BOOL E, A, M, L, D Entrada de habilitación ENO BOOL E, A, M, L, D Salida de habilitación IN1 DINT E, A, M, L, D Dividendo IN2 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 IN2 cuando la entrada de habilitación EN esta en “1”. La resta de la división puede consultarse en la salida OUT. En el caso que hubiese desbordamiento o desbordamiento negativo por salir el resultado del rango 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 a esta, combinadas a través de ENO, no serán ejecutadas.
  • 30. Bits de resultado (>, <, >=, <=, = =, <> 0) Estas operaciones son utilizadas para determinar la relación entre el resultado obtenido de una funció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 cero M Menor o igual que cero ==0 Igual que cero <>0 Diferente que cero
  • 31. 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ón EN BOOL E, A, M, L, D Entrada de habilitación ENO BOOL E, A, M, L, D Salida de habilitación IN1 REAL E, A, M, L, D Primer valor de la suma IN2 REAL E, A, M, L, D Segundo valor de la suma OUT REAL E, A, M, L, D Resultado de la suma Realiza la suma de números reales de las entradas IN1 e IN2 cuando la entrada de habilitación EN esta en “1”. El resultado puede consultarse en la salida OUT. En el caso que hubiese desbordamiento o desbordamiento negativo por salir el resultado del rango valido de nú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 a través de ENO, no serán ejecutadas. SUB_R Resta de números reales Parámetro Tipo de datos Area de memoria Descripción EN BOOL E, A, M, L, D Entrada de habilitación ENO BOOL E, A, M, L, D Salida de habilitación IN1 REAL E, A, M, L, D Primer valor de la resta IN2 REAL E, A, M, L, D Segundo valor de la resta OUT REAL E, A, M, L, D Resultado de la resta Realiza la resta de números reales de las entradas IN1 e IN2 cuando la entrada de habilitación EN esta en 1. El resultado puede consultarse en la salida OUT. En el caso que hubiese desbordamiento o desbordamiento negativo por salir el resultado del rango valido de nú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 a través de ENO, no serán ejecutadas. MUL_R Producto de números reales Parámetro Tipo de datos Area de memoria Descripción EN BOOL E, A, M, L, D Entrada de habilitación ENO BOOL E, A, M, L, D Salida de habilitación IN1 REAL E, A, M, L, D Primer valor del producto IN2 REAL E, A, M, L, D Segundo valor del producto OUT REAL E, A, M, L, D Resultado del producto Realiza el producto de números reales de las entradas IN1 e IN2 cuando la entrada de habilitación EN esta en “1”. El resultado puede consultarse en la salida OUT. En el caso que hubiese desbordamiento o desbordamiento negativo por salir el resultado del rango valido de nú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 a través de ENO, no serán ejecutadas.
  • 32. DIV_R División de números reales Parámetro Tipo de datos Area de memoria Descripción EN BOOL E, A, M, L, D Entrada de habilitación ENO BOOL E, A, M, L, D Salida de habilitación IN1 REAL E, A, M, L, D Primer valor de la división IN2 REAL E, A, M, L, D Segundo valor de la división OUT REAL E, A, M, L, D Resultado de la división Realiza la división de números reales de las entradas IN1 e IN2 cuando la entrada de habilitación EN esta en “1”. El resultado puede consultarse en la salida OUT. En el caso que hubiese desbordamiento o desbordamiento negativo por salir el resultado del rango valido de nú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 a través de ENO, no serán ejecutadas. ABS Valor absoluto de un número real Parámetro Tipo de datos Area de memoria Descripción EN BOOL E, A, M, L, D Entrada de habilitación ENO BOOL E, A, M, L, D Salida de habilitación IN REAL E, A, M, L, D Numero real OUT REAL E, A, M, L, D Valor absoluto del numero real 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 se obtiene el valor absoluto. Si la salida ENO es = “1”, se realiza la conversión.
  • 33. Funciones matemáticas avanzadas (Aritmética de coma flotante) SIN Calculo del seno Parámetro Tipo de datos Area de memoria Descripción EN BOOL E, A, M, L, D Entrada de habilitación ENO BOOL E, A, M, L, D Salida de habilitación IN 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 Realiza el calculo de seno del numero real introducido por la entrada IN cuando en la entrada de habilitación EN hay un “1”. El numero real representa un ángulo en radianes. Si la salida ENO es = “1”, se realiza la conversión. ASIN Calculo del arcoseno Parámetro Tipo de datos Area de memoria Descripción EN BOOL E, A, M, L, D Entrada de habilitación ENO BOOL E, A, M, L, D Salida de habilitación IN REAL E, A, M, L, D Valor de entrada: Numero real OUT REAL E, A, M, L, D Valor de salida: arcoseno del numero real Realiza el calculo del arcoseno del numero real introducido por la entrada IN cuando en la entrada de habilitación EN hay un “1” y el valor introducido en la entrada tiene un rango de –1<= Valor de entrada <=1. El numero 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. COS Calculo del coseno Parámetro Tipo de datos Area de memoria Descripción EN BOOL E, A, M, L, D Entrada de habilitación ENO BOOL E, A, M, L, D Salida de habilitación IN REAL E, A, M, L, D Valor de entrada: Numero real OUT REAL E, A, M, L, D Valor de salida: coseno del numero real Realiza el calculo de coseno del numero real introducido por la entrada IN cuando en la entrada de habilitación EN hay un “1”. El numero real representa un ángulo en radianes. Si la salida ENO es = “1”, se realiza la conversión. ACOS Calculo del arcocoseno Parámetro Tipo de datos Area de memoria Descripción EN BOOL E, A, M, L, D Entrada de habilitación ENO BOOL E, A, M, L, D Salida de habilitación IN REAL E, A, M, L, D Valor de entrada: Numero real OUT REAL E, A, M, L, D Valor de salida: arcocoseno del numero real
  • 34. Realiza el calculo del arcocoseno del numero real introducido por la entrada IN cuando en la entrada de habilitación EN hay un “1” y el valor introducido en la entrada tiene un rango de –1<= Valor de entrada <=1. El numero 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 0<= Valor de salida <=+π. TAN Calculo de la tangente Parámetro Tipo de datos Area de memoria Descripción EN BOOL E, A, M, L, D Entrada de habilitación ENO BOOL E, A, M, L, D Salida de habilitación IN REAL E, A, M, L, D Valor de entrada: Numero real OUT REAL E, A, M, L, D Valor de salida: tangente del numero real Realiza el calculo de la tangente del numero real introducido por la entrada IN cuando en la entrada de habilitación EN hay un “1”. El numero real representa un ángulo en radianes. Si la salida ENO es = “1”, se realiza la conversión. ATAN Calculo de la arcotangente Parámetro Tipo de datos Area de memoria Descripción EN BOOL E, A, M, L, D Entrada de habilitación ENO BOOL E, A, M, L, D Salida de habilitación IN REAL E, A, M, L, D Valor de entrada: Numero real OUT REAL E, A, M, L, D Valor de salida: tangente del numero real Realiza el calculo de la arcotangente del numero real introducido por la entrada IN cuando en la entrada de habilitación EN hay un “1”. El numero 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. EXP Calculo el exponente Parámetro Tipo de datos Area de memoria Descripción EN BOOL E, A, M, L, D Entrada de habilitación ENO BOOL E, A, M, L, D Salida de habilitación IN REAL E, A, M, L, D Valor de entrada: Numero real OUT REAL E, A, M, L, D Valor de salida: exponente del numero real Realiza el calculo del exponente del numero real con la base e (=2.71828), introducido por la entrada IN cuando en la entrada de habilitación EN hay un “1”. El numero real representa un ángulo en radianes. Si la salida ENO es = “1”, se realiza la conversión.
  • 35. LN Calculo del logaritmo natural Parámetro Tipo de datos Area de memoria Descripción EN BOOL E, A, M, L, D Entrada de habilitación ENO BOOL E, A, M, L, D Salida de habilitación IN REAL E, A, M, L, D Valor de entrada: Numero real OUT REAL E, A, M, L, D Valor de salida: logaritmo natural del numero real Realiza el calculo del logaritmo natural del numero real introducido por la entrada IN cuando en la entrada de habilitación EN hay un “1”. El numero real representa un ángulo en radianes. Si la salida ENO es = “1”, se realiza la conversión. SQR Calculo del cuadrado Parámetro Tipo de datos Area de memoria Descripción EN BOOL E, A, M, L, D Entrada de habilitación ENO BOOL E, A, M, L, D Salida de habilitación IN REAL E, A, M, L, D Valor de entrada: Numero real OUT REAL E, A, M, L, D Valor de salida: cuadrado del numero real Realiza el calculo del cuadrado del numero real introducido por la entrada IN cuando en la entrada de habilitación EN hay un “1”. El numero real representa un ángulo en radianes. Si la salida ENO es = “1”, se realiza la conversión. SQRT Calculo de la raíz cuadrada Parámetro Tipo de datos Area de memoria Descripción EN BOOL E, A, M, L, D Entrada de habilitación ENO BOOL E, A, M, L, D Salida de habilitación IN REAL E, A, M, L, D Valor de entrada: Numero real OUT REAL E, A, M, L, D Valor de salida: raíz cuadrada del numero real Realiza el calculo de la raíz cuadrada del numero real introducido por la entrada IN cuando en la entrada de habilitación EN hay un “1”. El numero real representa un ángulo en radianes. Si la salida ENO es = “1”, se realiza la conversión.
  • 36. Funciones de desplazamiento y rotación SHL_W Desplazar 16 bits a la izquierda Parámetro Tipo de datos Area de memoria Descripción EN BOOL E, A, M, L, D Entrada de habilitación ENO BOOL E, A, M, L, D Salida de habilitación IN WORD E, A, M, L, D Valor a desplazar N WORD E, A, M, L, D Numero de posiciones OUT WORD E, A, M, L, D Resultado de la operación de desplazamiento Cuando en la entrada de habilitación EN hay un “1”,se activa esta función desplazando a la izquierda bit a bit, los bits del 0 al 15 que se hallen en la entrada IN. La entrada N indica el numero de posiciones de bit que se mueven en el desplazamiento a la izquierda. Si en la entrada N se introduce un numero mayor que 16, en la salida OUT hay un “0”. Desde la derecha se van ocupando en “0”, las posiciones de bit que van siendo desplazadas. Si en la salida EN se obtiene un “1”, la salida ENO indica el estado de señal del último bit desplazado. SHR_W Desplazar 16 bits a la derecha Parámetro Tipo de datos Area de memoria Descripción EN BOOL E, A, M, L, D Entrada de habilitación ENO BOOL E, A, M, L, D Salida de habilitación IN WORD E, A, M, L, D Valor a desplazar N WORD E, A, M, L, D Numero de posiciones OUT WORD E, A, M, L, D Resultado de la operación de desplazamiento Cuando en la entrada de habilitación EN hay un “1”,se activa esta función desplazando a la derecha bit a bit, los bits del 0 al 15 que se hallen en la entrada IN. La entrada N indica el numero de posiciones de bit que se mueven en el desplazamiento a la derecha. Si en la entrada N se introduce un numero mayor que 16, en la salida OUT hay un “0”. Desde la izquierda se van ocupando en “0”, las posiciones de bit que van siendo desplazadas. Si en la salida EN se obtiene un “1”, la salida ENO indica el estado de señal del último bit desplazado. SHL_DW Desplazar 32 bits a la izquierda Parámetro Tipo de datos Area de memoria Descripción EN BOOL E, A, M, L, D Entrada de habilitación ENO BOOL E, A, M, L, D Salida de habilitación IN WORD E, A, M, L, D Valor a desplazar N DWORD E, A, M, L, D Numero de posiciones OUT WORD E, A, M, L, D Resultado de la operación de desplazamiento Cuando en la entrada de habilitación EN hay un “1”,se activa esta función desplazando a la izquierda bit a bit, los bits del 0 al 31 que se hallen en la entrada IN. La entrada N indica el numero de posiciones de bit que se mueven en el desplazamiento a la izquierda. Si en la entrada N se introduce un numero mayor que 32, en la salida OUT hay un “0”. Desde la derecha se van ocupando en “0”, las posiciones de bit que van siendo desplazadas. Si en la salida EN se obtiene un “1”, la salida ENO indica el estado de señal del último bit desplazado.
  • 37. SHR_DW Desplazar 32 bits a la derecha Parámetro Tipo de datos Area de memoria Descripción EN BOOL E, A, M, L, D Entrada de habilitación ENO BOOL E, A, M, L, D Salida de habilitación IN WORD E, A, M, L, D Valor a desplazar N DWORD E, A, M, L, D Numero de posiciones OUT WORD E, A, M, L, D Resultado de la operación de desplazamiento Cuando en la entrada de habilitación EN hay un “1”,se activa esta función desplazando a la derecha bit a bit, los bits del 0 al 31 que se hallen en la entrada IN. La entrada N indica el numero de posiciones de bit que se mueven en el desplazamiento a la derecha. Si en la entrada N se introduce un numero mayor que 32, en la salida OUT hay un “0”. Desde la izquierda se van ocupando en “0”, las posiciones de bit que van siendo desplazadas. Si en la salida EN se obtiene un “1”, la salida ENO indica el estado de señal del último bit desplazado. SHR_I Desplazar entero de 16 bits a la derecha Parámetro Tipo de datos Area de memoria Descripción EN BOOL E, A, M, L, D Entrada de habilitación ENO BOOL E, A, M, L, D Salida de habilitación IN INT E, A, M, L, D Valor a desplazar N WORD E, A, M, L, D Numero de posiciones OUT INT E, A, M, L, D Resultado de la operación de desplazamiento Cuando en la entrada de habilitación EN hay un “1”,se activa esta función desplazando a la derecha bit a bit, los bits del 0 al 15 que se hallen en la entrada IN. La entrada N indica el numero de posiciones de bit que se mueven en el desplazamiento a la derecha. Si en la entrada N se introduce un numero mayor que 16, en la salida OUT hay un “0”. Desde la izquierda se van ocupando en “0”, las posiciones de bit que van siendo desplazadas en caso de ser un valor entero positivo y 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. SHR_DI Desplazar entero de 32 bits a la derecha Parámetro Tipo de datos Area de memoria Descripción EN BOOL E, A, M, L, D Entrada de habilitación ENO BOOL E, A, M, L, D Salida de habilitación IN DINT E, A, M, L, D Valor a desplazar N WORD E, A, M, L, D Numero de posiciones OUT DINT E, A, M, L, D Resultado de la operación de desplazamiento Cuando en la entrada de habilitación EN hay un “1”,se activa esta función desplazando a la derecha bit a bit, los bits del 0 al 31 que se hallen en la entrada IN. La entrada N indica el numero de posiciones de bit que se mueven en el desplazamiento a la derecha. Si en la entrada N se introduce un numero mayor que 32, en la salida OUT hay un “0”. Desde la izquierda se van ocupando en “0”, las posiciones de bit que van siendo desplazadas en caso de ser un valor entero positivo y 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.
  • 38. ROL_DW Rotar 32 bits a la izquierda Parámetro Tipo de datos Area de memoria Descripción EN BOOL E, A, M, L, D Entrada de habilitación ENO BOOL E, A, M, L, D Salida de habilitación IN DWORD E, A, M, L, D Valor a rotar N 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 esta función rotando bit a bit, el contenido completo de la entrada IN a la izquierda los bits del 0 al 31. La entrada N indica el numero de posiciones de bit que se rotan a la izquierda. Si en la entrada N se introduce un numero mayor que 32, la palabra doble IN es rotada en ((N-1) modulo 32)+1 posiciones. Las posiciones de bit que se arrastran desde la derecha, son ocupadas por el estado de señal de los bits rotados a la izquierda. La palabra doble que se obtiene como resultado de la operación de rotación, puede verse en la salida OUT. ENO indica el estado del ultimo bit rotado, si en la entrada EN hay un “1”, esto significa que las operaciones combinadas a la salida ENO, no serán ejecutadas si el último bit desplazado tiene como estado “0” ROR_DW Rotar 32 bits a la derecha Parámetro Tipo de datos Area de memoria Descripción EN BOOL E, A, M, L, D Entrada de habilitación ENO BOOL E, A, M, L, D Salida de habilitación IN DWORD E, A, M, L, D Valor a desplazar N 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 esta función rotando bit a bit, el contenido completo de la entrada IN a la derecha los bits del 0 al 31. La entrada N indica el numero de posiciones de bit que se rotan a la derecha. Si en la entrada N se introduce un numero mayor que 32, la palabra doble IN es rotada en ((N-1) modulo 32)+1 posiciones. Las posiciones de bit que se arrastran desde la izquierda, son ocupadas por el estado de señal de los bits rotados a la derecha. La palabra doble que se obtiene como resultado de la operación de rotación, puede verse en la salida OUT. ENO indica el estado del ultimo bit rotado, si en la entrada EN hay un “1”, esto significa que las operaciones combinadas a la salida ENO, no serán ejecutadas si el último bit desplazado tiene como estado “0”
  • 39. Sistemas de protección de control Relé de control Relé físico que corta el suministro de corriente en entradas y salidas del autómata programable, manteniendo la alimentación de la CPU y así poder revisar el estado del programa o controlar los errores, etc. L1 L2 L3 N Transformador separador Pulsador de emergencia Pulsador de paro Fuente de Pulsador de alimentacion marcha 24 Vcc para E/S Master Control Relay (MCR) Empleado para inhibir el funcionamiento de una determinada parte del programa en casos de emergencia 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 no modifican 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 entre las operaciones MCR< y MCR> (salidas A 4.0, A 4.1) se ejecutan de forma que E 0.0 = 1 (MCR está ON): la salida A 4.0 se pone a "1" si la entrada E 0.3 está en el estado "1", y no cambia si la entrada E 0.3 está en el estado "0". A la salida A 4.1 se le asigna el estado de la entrada E 0.4. E 0.0 = 0 (MCR está OFF): la salida A 4.0 no varía, independientemente del estado de E 0.3; la salida A 4.1 es "0", independientemente de cuál sea el estado de E 0.4. En el circuito siguiente, la operación ---(MCRD) desactiva el MCR. Esto significa que ya no se pueden programar áreas MCR con las dos operaciones ---(MCR<) y ---(MCR>).
  • 40. ---(MCRD) Final de un Master Control Relay Desactiva un MCR. Después de esta operación no se pueden programar áreas MCR. MCRA activa el MCR. Los circuitos entre las operaciones MCR< y MCR> (salidas A 4.0, A 4.1) se ejecutan de forma que E 0.0 = 1 (MCR está ON): la salida A 4.0 se pone a "1" si la entrada E 0.3 está en el estado "1"; A 4.0 no se modifica si la entrada E 0.3 está en el estado "0". A la salida A 4.1 se le asigna el estado de la entrada E 0.4. E 0.0 = 0 (MCR está OFF): la salida A 4.0 no varía, independientemente del estado de E 0.3, y la salida A 4.1 es "0", independientemente del estado de E 0.4 En el circuito siguiente, la operación --- (MCRD) desactiva el MCR. Esto significa que ya no se pueden programar áreas MCR con la pareja de operaciones ---(MCR<) y ---(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 pila LIFO (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 siguientes elementos dependen del MCR y varían según cuál sea el estado de señal del RLO que se almacena en la pila MCR mientras está abierta un área MCR: