Documentos de Académico
Documentos de Profesional
Documentos de Cultura
S7300basico PDF
S7300basico PDF
PRÓLOGO
Esta documentación forma parte de una serie de manuales que un grupo de profesores
de tres institutos de educación secundaria de Catalunya, como son:
Este grupo de trabajo continúa trabajando en cada uno de los temas para poder ir
actualizando día a día esta documentación, es por ello, que nos podéis enviar vuestras
sugerencias a través de la información que encontrareis en la web dedicada a este grupo
de trabajo y que desde aquí os invitamos a participar.
www.iespalauausit.xtec.net:8081/edcaiweb/
Esperamos que el esfuerzo y dedicación que hemos realizado pueda ayudar a mejorar
vuestra labor educativa.
ÍNDICE:
Direccionamiento digital:
• Las direcciones de entradas y salidas comienzan con la dirección 0 para el primer modulo del rack.
• A cada modulo se le asignan 4 bytes (se usen o no).
• Para hacer ampliaciones de entradas y salidas en otro rack, se debe colocar un modulo IM para
comunicar ambos racks.
Direccionamiento analógico:
• Las direcciones analógicas para entradas y salidas empiezan con la dirección 256 en el rack 0, estas
direcciones dependen del tipo de CPU.
• Cada módulo analógico, se le asignan 16 bytes (se usen o no).
• Cada entrada analógica ocupa 2 bytes.
2 TIPOS DE REGISTROS
Bit:
• Un bit, es la unidad básica para trabajar con dígitos binarios.
• es la unidad más pequeña de información
• Únicamente tiene dos estados: 0 y 1.
• Pueden agruparse formando registros mayores
E 124. 0
Tipo de operando Byte al que pertenece este bit Posición del bit dentro del Byte (0 al 7)
Byte:
• Un byte es un grupo de 8 bits.
• Se utilizan para representar valores numéricos de 8 dígitos binarios.
E B124
Este Byte esta formado por los bits: E124.7, E124.6, E124.5, E124.4, E124.3, E124.2, E124.1 y E124.0
Palabra (Word):
• Una palabra esta formada por dos bytes es decir 16 bits.
M W10
15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
M10.7 M10.6 M10.5 M10.4 M10.3 M10.2 M10.1 M10.0 M11.7 M11.6 M11.5 M11.4 M11.3 M11.2 M10.1 M11.0
MB10 MB11
M D 10
Tipo de operando Indica que el registro es una doble palabra Dirección de la doble palabra
• Esta doble palabra esta formada por los Bytes MB10, MB11,MB12 y MB13
• En MB10 están los bits que dentro de MD10 ocupan la posición de la 24 a la 31
• En MB11 están los bits que dentro de MD10 ocupan la posición de la 16 a la 23
• En MB12 están los bits que dentro de MD10 ocupan la posición de la 8 a la 15
• En MB13 están los bits que dentro de MD10 ocupan la posición de la 0 a la 7
De este elemento repetido, solo se necesita tener una entrada física de referencia.
La CPU, cada vez que se encuentra con un contacto mientras lee el programa, va a consultar el valor que
tiene la entrada física (o el valor que tiene el registro de entradas) correspondiente a esa referencia.
FC1 AWL
E124.0 A124.1
E124.1
E124.2
Observaciones:
Recuerda también:
Que este circuito se ha de hacer en dos segmentos.
FC2 AWL
E124.4
E124.5
E124.6
Observaciones:
Recuerda que has de modificar el módulo OB1. (borrar la llamada a FC1 y llamar a FC2)
<Operando>
---| |---
Descripción de la operación
---| |--- (Contacto normalmente abierto) se cierra si el valor del bit consultado, que se almacena en el
<operando> indicado, es "1". Si el contacto está cerrado, la corriente fluye a través del contacto y el
resultado lógico (RLO) es "1".
En las conexiones en serie, el contacto ---| |--- se combina bit a bit por medio de una Y lógica con el RLO.
Cuando las conexiones se realizan en paralelo, el contacto se combina con el RLO por medio de una O
lógica.
Palabra de estado
Ejemplo:
E 0.0 E 0.1
E 0.2
El estado en las entradas E 0.0 Y E 0.1 es "1" O el estado en la entrada E 0.2 es "1".
Símbolo
<Operando>
---( )
Descripción de la operación
---( ) (Bobina de relé (salida)) opera como una bobina en un esquema de circuitos. Si la corriente fluye
hasta la bobina (RLO = 1), el bit en el <operando> se pone a "1". Si no fluye corriente hasta la bobina
(RLO = 0), el bit en el <operando> se pone a "0".
Una bobina de salida sólo puede colocarse dentro de un esquema de contactos en el extremo derecho de
un circuito.
Se puede crear una salida negada anteponiendo a la bobina de salida la operación ---|NOT|--- (invertir el
resultado lógico).
La dependencia con respecto al MCR solamente se activa cuando una bobina de salida se encuentra
dentro de un área MCR activa. Si el MCR está conectado y la corriente fluye a una bobina de salida, el bit
direccionado toma el estado de señal actual del flujo de corriente. Si el MCR está desconectado se escribe
un "0" en el operando indicado, independientemente del estado del flujo de corriente.
Palabra de estado
Ejemplo
Al estar conectado el MCR, las salidas A 4.0 y A 4.1 se ponen a 1 conforme al estado de señal del flujo de
corriente, tal como se ha descrito más arriba.
Si el MCR está desconectado, las salidas A 4.0 y A 4.1 se ponen a "0", independientemente del estado de
señal del flujo de corriente.
Cuando programamos un contacto normal (abierto), estamos diciendo que en este punto del programa
queremos el mismo valor que tenga el elemento de referencia.
Cuando programamos un contacto negado, estamos diciendo que en este punto del programa, queremos
tener el valor contrario al que tiene el elemento de referencia.
FC3
AWL
E124.0 A124.0
E124.0 A124.7
Observaciones:
Símbolo
<Operando>
---| / |---
Descripción de la operación
---| / |--- (Contacto normalmente cerrado) se abre si el valor del bit consultado, que se almacena en el
<operando> indicado, es "0". Si el contacto está cerrado, la corriente fluye a través del contacto y el
resultado lógico (RLO) es "1".
Cuando se realizan conexiones en serie, el contacto ---| / |--- se combina bit a bit por medio de una Y
lógica con el RLO. Si las conexiones se efectúan en paralelo, el contacto se combina con el RLO por
medio de una O lógica.
Palabra de estado
Ejemplo
E 0.0 E 0.1
E 0.2
el estado en las entradas E 0.0 Y E 0.1 es "1" O el estado en la entrada E 0.2 es "0".
Podemos programar contactos de las salidas, tanto normales como negados y el valor de referencia de
estos, será el mismo que su bobina.
Cuando queramos tener en un contacto el mismo valor que la bobina, pondremos un contacto abierto.
Cuando queramos tener en un contacto el valor contrario al de su bobina, pondremos un contacto negado.
Las salidas A124.0 y A124.1, funcionaran de forma directa con las entradas E124.0 y E124.1
respectivamente.
Funcionamiento:
• La salida A124.3 funcionara si funciona al mismo tiempo la salida A124.0 y A124.1
• La salida A124.4 funcionara si funciona la salida A124.0 o A124.1
• La salida A124.5 funcionara si no funciona la salida A124.0 y no funciona A124.1
• La salida A124.6 funcionara si funciona la salida A124.0 y no funciona A124.1
• La salida A124.6 funcionara si funciona la salida A124.0 y no funciona A124.1
FC4 AWL
E124.0 A124.0
E124.1 A124.1
A124.0 A124.4
A124.1
Indica el valor de las salidas A124.3 a la A124.7 según sea el valor de A124.0 y A124.1
Observaciones:
Documentación de un programa:
En cada módulo podemos editar:
• Título del bloque.
• Comentario del bloque.
• Título de los segmentos.
• Comentarios de los segmentos.
• Elementos comunes a todos los bloques: entradas, salidas, etc.
Rellena la tabla:
Símbolo Dirección Tipo de dato Comentario
1 Paro1 E124.1 BOOL Pulsador de paro motor 1
2 Marcha1 E124.2 BOOL Pulsador de marcha motor 1
3 Termico1 E124.0 BOOL Relé térmico de protección motor 1
4 Motor1 A124.0 BOOL Contactor motor 1
5 Averia1 A124.1 BOOL Piloto de señalización disparo térmico 1
6 Paro2 E124.4 BOOL Pulsador de paro motor 2
7 Marcha2 E124.5 BOOL Pulsador de marcha motor 2
8 Termico2 E124.3 BOOL Relé térmico de protección motor 2
9 Motor2 A124.2 BOOL Contactor motor 2
10 Averia2 A124.3 BOOL Piloto de señalización disparo térmico 2
Una vez grabada la tabla de símbolos, se puede programar utilizando la dirección o el símbolo.
Símbolos y direcciones:
Para poder visualizar una opción u otra, estando dentro de un módulo (FC, OB, etc.) Tenemos que activar
simultáneamente las teclas CTRL + Q, o Ver--ÆMostrar--Æ Representación simbólica
Observaciones:
Realizado por: Fecha:01/09/05 Página: 18/102
Ramon L. Yuste Yuste IES SEP COMTE DE RIUS
Versión: 2.0 Fichero:
Lluís Martínez Novoa
Departament d’Educació
INSTRUCCIONES BÁSICAS DEL
AUTÓMATA S7- 300
Electricitat/Electrònica
En este ejercicio, aplicaremos el concepto de contacto negado, utilizando en cada caso diferentes tipos de
pulsadores normalmente abiertos o normalmente cerrados.
Para ello utilizaremos el esquema para la puesta en marcha de un motor trifásico mediante una botonera
paro-marcha y protección por relé térmico, aplicado a dos motores, uno con el paro y el térmico con
contactos nc (normalmente cerrados) y el otro con contactos no (normalmente abiertos).
FC5
AWL
A124.0
E124.0 A124.1
2
Posibles averías:
Fallo en el pulsador de paro: Si el motor esta funcionando y se suelta el cable del pulsador de paro, el
motor se para al instante.
Fallo en el pulsador de marcha: Si el motor esta parado y se suelta el cable del pulsador de marcha, de
momento no pasa nada, pero cuando se quiera poner en marcha el motor no se pondrá.
IMPORTANTE:
Con un elemento de seguridad o de parada (paros de emergencia, final de carrera de seguridad, etc.)
SIEMPRE ha de utilizarse un contacto físico CERRADO conectado al autómata.
Observaciones:
FC5
A124.2
E124.3 A124.3
4
Posibles averías:
Fallo en el pulsador de paro: Si el motor esta funcionando y se suelta el cable del pulsador de paro, el
motor NO SE PARA y detectaremos la avería solo en el momento que queramos parar el motor.
Fallo en el relé térmico: Si el motor esta funcionando y se suelta el cable del relé térmico, cuando éste
dispare el motor continua funcionando.
Observaciones:
FC6
AWL
E124.0 A124.0
S
E124.1 A124.0
R
E124.1 A124.1
R
E124.0 A124.1
S
M0.0
E124.0 SR A124.2
S Q
E124.1 --- R
M0.1
E124.1 RS A124.3
R Q
E124.0 --- S
A124.0
E124.0
E124.1
Observaciones:
Símbolo
<Operando>
---( S )
Descripción de la operación
---( S ) (Activar bobina) sólo se ejecuta si el RLO de las operaciones anteriores es "1" (flujo de corriente en
la bobina). Si el RLO es "1", el <operando> indicado del elemento se pone a "1".
Un RLO = 0 no tiene efecto alguno, de forma que el estado de señal actual del operando indicado del
elemento no se altera.
La dependencia con respecto al MCR solamente se activa cuando una bobina se encuentra dentro de un
área MCR activa. Si el MCR está conectado y la corriente fluye a una bobina, el bit direccionado toma el
estado de señal actual del flujo de corriente. Si el MCR está desconectado se escribe un "0" en el
operando indicado del elemento, independientemente del estado del flujo de corriente.
Palabra de estado
Ejemplo
Al estar conectado el MCR, la salida A 4.0 se pone a 1, tal como se ha descrito más arriba.
Si el MCR está desconectado, la salida A 4.0 no se modifica, independientemente del estado de señal del
RLO (estado de señal del flujo de corriente).
Símbolo
<Operando>
---( R )
Descripción de la operación
---( R ) (Desactivar salida) sólo se ejecuta si el RLO de las operaciones anteriores es "1" (flujo de corriente
en la bobina). Si fluye corriente a la bobina (RLO es "1"), el <operando> indicado del elemento se pone a
"0". Un RLO de "0" (= no hay flujo de corriente en la bobina) no tiene efecto alguno, de forma que el estado
de señal del operando indicado del elemento no varía.
El <operando> también puede ser un temporizador (N.° de T) cuyo valor de temporización se pone a "0", o
un contador (N.° de Z) cuyo valor de contaje se pone a "0".
La dependencia con respecto al MCR solamente se activa cuando una bobina se encuentra dentro de un
área MCR activa. Si el MCR está conectado y la corriente fluye a una bobina, el bit direccionado se pone a
“0“. Si el MCR está desconectado el estado de señal del operando indicado del elemento no varía,
independientemente del estado del flujo de corriente.
Palabra de estado
Ejemplo
Segmento 1
E 0.0 E 0.1 A 4.0
(R)
E 0.2
(el estado en la entrada E 0.0 Y en la entrada E 0.1 es "1") O el estado en la entrada E 0.2 es "0".
Segmento 2
E 0.0 T1
(R)
Segmento 3
E 0.0 Z1
(R)
Al estar conectado el MCR, A 4.0, T1 y SZ1 se ponen a 0, tal como se ha descrito más arriba.
Si el MCR está desconectado, A 4.0, T1 y Z1 no se modifican, independientemente del estado de señal del
RLO (estado de señal del flujo de corriente).
Símbolo
<Operando>
SR
S Q
Descripción de la operación
La dependencia con respecto al MCR solamente se activa si la operación Desactivar flip-flop de activación
se encuentra dentro de un área MCR activa. Si el MCR está conectado, 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, el
estado actual del operando indicado no se altera, independientemente de cuál sea es estado de las
entradas.
Palabra de estado
Ejemplo
M 0.0
E 0.0 SR A 4.0
S Q ( )
E 0.1
R
Si el estado en la entrada E 0.0 es "1" y en la entrada E 0.1 es el estado es "0", se activa la marca M 0.0, y
la salida A 4.0 es "1". De no ser así, cuando el estado de señal en la entrada E 0.0 es 0 y en E 0.1 es 1, se
desactiva la marca M 0.0 y la salida A 4.0 es "0".
Si ambos estados de señal son "1", domina la operación Desactivar debido al orden en que están
dispuestas las operaciones. M 0.0 se desactiva y la salida A 4.0 es "0".
Cuando el MCR está conectado, A 4.0 se pone a 1 ó a 0, tal como se ha descrito más arriba.
Si el MCR está desconectado, A4.0 no varía, independientemente del estado de señal de las entradas.
Símbolo
<Operando>
RS
R Q
Descripción de la operación
La dependencia con respecto al MCR solamente se activa si la operación Activar flip-flop de desactivación
se encuentra dentro de un área MCR activa. Si el MCR está conectado, 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, el
estado actual del operando indicado no se altera, independientemente de cuál sea es estado de las
entradas.
Palabra de estado
Ejemplo
M 0.0
E 0.0 RS A 4.0
R Q ( )
E 0.1
S
Si el estado en la entrada E 0.0 es "1" y en la entrada E 0.1 es "0", se activa la marca M 0.0 y la salida
A 4.0 es "0". De no ser así, cuando el estado de señal en la entrada E 0.0 es 0 y en E 0.1 es 1, se activa la
marca M 0.0 y la salida A 4.0 es "1".
Si ambos estados de señal son "1" domina la operación Activar, debido al orden en que están dispuestas
las operaciones. M 0.0 se activa y la salida A 4.0 es "1".
Cuando el MCR está conectado, la salida A 4.0 se pone a 1 ó a 0, tal como se ha descrito arriba.
Si el MCR está desconectado, la salida A 4.0 no se modifica, independientemente cuál sea el estado de
señal de las entradas.
Existen unas funciones especiales de Set-Reset de funcionamiento similar al Set-Reset del S7-200.
Ir al Administrador Æ Seleccionar los FC82 y FC83 y transferirlos al automata Æ Tranferir el FC7 y el OB1
desde el Administrador (Si estan guardados) o desde el editor de FUP/KOP/AWL
Funcionamiento:
Función 83 (Set):
Al poner un 1 en EN, se ponen a Set N elementos a partir de S_BIT (En este caso se activaran las salidas
A124.0, A124.1 , A124.2 y A124.3.
Cuando pongamos un 1 en EN, si la función se ejecuta correctamente, tendremos un 1 en ENO.
Función 82 (Reset):
Al poner un 1 en EN, se ponen a Reset a N elementos a partir de S_BIT (En este caso se desactivaran las
salidas A124.0, A124.1 , A124.2 y A124.3.
Cuando pongamos un 1 en EN, si la función se ejecuta correctamente, tendremos un 1 en ENO.
FC7 AWL
FC83
E124.0 SET A124.5
EN ENO
A124.0 S_BIT
4 N
FC82
E124.1 RESET
EN ENO
A124.0 S_BIT
4 N
Observaciones:
Descripción
La función RSET pone a cero el estado de señal de todos los bits que están dentro de un área
especificada, siempre que el bit MCR sea 1. Si el bit MCR es 0, el estado de señal de los bits de este área
no cambia. El parámetro N indica la cantidad de bits del área a desactivar. El puntero S_BIT apunta al
primer bit de este área.
* Puntero en formato de palabra doble cuando se trata de direccionamiento interárea indirecto por registro.
Si el puntero S_BIT apunta al área de memoria de la periferia externa (memoria P) no cambia el estado de
señal de ningún bit dentro del área en cuestión, y el estado de señal de la salida de habilitación (ENO) se
pone a 0.
Ejemplo
Antes de la ejecución Después de la ejecución
RSET
M 0.7 M 0.0 M 0.7 M 0.0
FC82
E 0.0 A 4.0
EN ENO ( ) 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0
P#M0.0 S_BIT
M 1.7 M 1.0 M 1.7 M 1.0
10 N
1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0
La figura muestra cómo opera la función RSET. La función se ejecuta cuando el estado de señal de la
entrada E 0.0 es 1 (activada) y el bit MCR es 1. En este ejemplo, S_BIT apunta al primer bit en la dirección
M0.0. El parámetro N indica que son 10 los bits a desactivar. Una vez que se ha ejecutado la función, se
pone a cero el estado de señal de los 10 bits del área comprendida entre M0.0 y M1.1.
Si la función se ejecuta sin errores, los estados de señal de la salida de habilitación (ENO) y de la salida A
4.0 se ponen a 1 (activadas).
Descripción
La función SET activa el estado de señal de todos los bits dentro de un área especificada, siempre que el
bit MCR sea 1. Si el bit MCR es 0, el estado de señal de los bits de este área no cambia. El parámetro N
indica la cantidad de bits a activar dentro del área. El puntero S_BIT apunta al primer bit de este área.
* Puntero en formato de palabra doble cuando se trata de direccionamiento interárea indirecto por registro.
Si el puntero S_BIT apunta al área de memoria de la periferia externa (memoria P), no cambia el estado
de señal de ningún bit dentro del área en cuestión, y el estado de señal de la salida de habilitación (ENO)
se pone a 0.
Ejemplo
P#M0.0 S_BIT
M 1.7 M 1.0 M 1.7 M 1.0
10 N
0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1
La figura muestra cómo opera la función "Activar un área de marcas o de periferia en la imagen del
proceso" (SET). Si el estado de señal de la entrada E 0.0 es 1 (activada) y el bit MCR es 1, entonces se
ejecuta la función. En este ejemplo, S_BIT apunta al primer bit en la dirección M0.0. El parámetro N indica
que son 10 los bits a desactivar. Una vez que se ha ejecutado la función se pone a 1 el estado de señal de
los 10 bits del área comprendida entre M0.0 y M1.1.
Si la función se ejecuta sin errores, los estados de señal de la salida de habilitación (ENO) y de la salida A
4.0 se ponen a 1 (activadas).
11 REGISTRO DE ENTRADAS
En cada scan el autómata antes de comenzar a leer el programa, copia el valor que tienen las entradas
físicas en el registro de entradas.
A partir de ahí, cada vez que el autómata encuentre el contacto de una entrada, NO ira a leer su valor a la
entrada física, sino que leerá su valor del registro de entradas. Como consecuencia de esto, una entrada
tendrá el mismo valor (aunque mientras lea, cambie su estado físico) desde que empieza a ejecutarse el
ciclo hasta que acabe.
El autómata, ejecuta las instrucciones siguiendo el orden en que han sido programados los segmentos,
esto puede provocar en algunos casos que el orden de colocación de los segmentos sea vital para su
correcto funcionamiento.
En el siguiente ejemplo:
• Programar y probar la parte A y comprobar su funcionamiento. (razonándolo).
• Programar y probar la parte B y comprobar su funcionamiento. (razonándolo).
FC8
A
E124.0 A124.1
E124.1 A124.0
R
E124.0 A124.3
E124.1 A124.2
R
Observaciones:
12 REGISTRO DE SALIDAS
Cuando por programa se pone un 1 en una salida, este 1 es enviado al registro de salidas, NO a la salida
física.
Cuando el autómata, acaba de leer todo el programa, vuelca el valor del registro de salidas en las salidas
físicas.
Si programamos por error la bobina de una salida repetida, a nivel externo solo responderá a un
funcionamiento correcto la ultima bobina programada.
Las bobinas de Set-Reset se pueden repetir tantas veces como queramos. El valor que tomará la salida
física, será el de la ultima bobina activa.
Cuando el programa es leído y encuentra un contacto de una salida, toma el valor que tenga en ese
instante el registro de salida.
Prueba:
• Añadir detrás del segmento 2 un contacto de la salida A124.1 que conecte la salida A124.6
• Añadir detrás del último segmento un contacto de la salida A124.1 que conecte la salida A124.7
FC9 AWL
E124.0 A124.0
1
E124.1 A124.1
2
A124.1 A124.6
E124.3 A124.3
3
E124.4 A124.1
4
A124.1 A124.7
Observaciones:
Las salidas son elementos sin memoria, que trabajan a nivel interno y además dan una señal al exterior.
Las marcas solamente trabajan a nivel interno. Las hay remanentes y no remanentes.
Que una marca sea remanente, es decir que tenga memoria, significa que después de un corte de tensión,
esta marca recuerda el estado que tenia antes del corte y lo mantendrá.
Cambio del margen de las marcas remanentes. Para modificar el margen de las marcas se ha de seguir
el siguiente proceso:
En la ventana HW Config, clicar dos veces sobre la CPU Æ Seleccionar la pestaña Remanencia Æ
Colocar el número de Bytes de marcas que queremos que tengan memoria a partir del MB0 Æ Guardar y
compilar y Cargar al autómata.
Realiza el ejemplo siguiente y comprueba que en funcionamiento normal las tres salidas funcionan
exactamente igual.
Estando activadas las tres salidas, corta la tensión y conéctala de nuevo y comprueba que las salidas que
dependen de marcas remanentes han guardado el valor que tenían antes del corte de tensión.
Para simular un corte de tensión con el Simulador, has de entrar en el desplegable PLC y después pasar
el PLC a STP y a RUN de nuevo.
Una vez que hayas comprobado el funcionamiento de las marcas remanentes, cambia el margen de
estas, de manera que M16.0 también lo sea, y vuelve a comprobar el funcionamiento.
FC10
AWL
E124.0 A124.0
S
M0.0
S
M16.0
S
E124.1 A124.0
R
M0.0
R
M16.0
R
M0.0 A124.1
M16.0 A124.2
Observaciones:
En la casilla Bytes de marca desde MB0 pondremos como mínimo 17 (de MB0 a MB16)
En este ejercicio queremos que después de un corte de tensión, el proceso sigua por donde estaba antes
de este momento.
M0.0 es una marca remanente, por tanto después de un corte de tensión mantendrá el valor anterior, y
dirá si la salida A124.0 puede conectarse automáticamente sin necesidad de accionar el marcha E124.0 o
no, y E 124.7 sería como un pulsador de seguridad que dará el permiso para que la salida se conecte.
FC11 AWL
E124.7 M16.0
S
E124.0 M0.0
S
E124.1 M0.0
R
Observaciones:
La instrucción NOT, coge el valor que tiene a su izquierda, lo invierte y lo pone a su derecha.
Segmento 1:
Resultado de la combinación de E124.0 y E124.1
• Antes del NOT 0 Æ Después del NOT Æ 1
• Antes del NOT 1 Æ Después del NOT Æ 0
Segmento 3:
En este segmento solo invertimos el resultado de la combinación serie de E124.2 y E124.3.
La instrucción NOT no afecta a E124.5 y E124.4
FC12 AWL
E124.0 A124.1
E124.1
E124.5
Observaciones:
Símbolo
---|NOT|---
Descripción de la operación
Palabra de estado
Ejemplo
E 0.0 A 4.0
NOT ( )
E 0.1 E 0.2
Por defecto todos son sin memoria. Se pueden configurar con memoria del T0 al T7
Para configurarlos con memoria, se ha proceder igual que con la configuración de marcas remanentes.
Si al colocar el tiempo, el valor supera la unidad anterior, realiza la conversión automáticamente. Por
ejemplo: S5T# 90s se convierte en S5T# 1m 30s.
FC13 AWL
T0
E124.0 S_IMPULS A124.0
S Q
S5T#10S TW DUAL
R DEZ
1
A124.0
0
TIEMPO
1
E124.0
0
T5 A125.0
Observaciones:
Realizado por: Fecha:01/09/05 Página: 41/102
Ramon L. Yuste Yuste IES SEP COMTE DE RIUS
Versión: 2.0 Fichero:
Lluís Martínez Novoa
Departament d’Educació
INSTRUCCIONES BÁSICAS DEL
AUTÓMATA S7- 300
Electricitat/Electrònica
Símbolo
Inglés Aleman
Nº T Nº T
S_PULSE S_IMPULS
S Q S Q
TV BI TV BI
R BCD R BCD
Descripción de la operación
Para arrancar un temporizador tiene que producirse necesariamente un cambio de señal. El estado de
señal en la salida Q será "1" si el estado de señal en la entrada S es "1", y también mientras el
temporizador esté en marcha. El temporizador se para si el estado de señal en la entrada S cambia de "0"
a "1" mientras el temporizador está en marcha.
El temporizador sólo vuelve a arrancar si el estado de señal en la entrada S vuelve a cambiar de "1" a "0".
El valor de temporización actual queda depositado en las salidas BI/DUAL y BCD/DEZ. El valor de
temporización en la salida BI/DUAL está en código binario, el valor en la salida BCD/DEZ está en formato
decimal codificado en binario. El valor de temporización actual equivale al valor inicial de TV/TW menos el
valor de temporización que ha transcurrido desde el arranque del temporizador.
Diagrama de temporización
Palabra de estado
Ejemplo
T5
S_IMPULS
E 0.0 A 4.0
S Q ( )
S5TIME#2S TW DUAL
E 0.1
R DEZ
Si el estado de señal de la entrada E 0.0 cambia de "0" a "1" (flanco creciente en el RLO), se activa el
temporizador T5. El temporizador continúa en marcha con el valor de temporización indicado de
2 segundos (2 s) mientras la entrada E 0.0 sea 1. Si el estado de señal de la entrada 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 esté en marcha el temporizador, y "0" si el tiempo ha transcurrido o si el
temporizador fue puesto a 0.
FC14 AWL
T1
E124.1 S_VIMP A124.1
S Q
S5T#10S TW DUAL
R DEZ
1
A124.1
0
TIEMPO TIEMPO
1
E124.1
0
T6 A125.1
Observaciones:
Configura el Hardware del PLC para que el temporizador T1 sea remanente y comprueba la diferencia de
funcionamiento respecto T6.
Símbolo
Inglés Aleman
Nº T Nº T
S_PEXT S_VIMP
S Q S Q
TV BI TV BI
R BCD R BCD
Descripción de la operación
Para arrancar un temporizador tiene que producirse necesariamente un cambio de señal. El temporizador
continúa en marcha durante el tiempo predeterminado -indicado en la entrada TV/TW-, aunque el estado
de señal en la entrada S se ponga a "0" antes de haber transcurrido el intervalo de tiempo. El estado de
señal en la salida Q es "1" mientras el temporizador esté en marcha.
El valor de temporización actual queda depositado en las salidas BI/DUAL y BCD/DEZ. El valor de
temporización en la salida BI/DUAL está en código binario, el valor en la salida BCD/DEZ está en formato
decimal codificado en binario. El valor de temporización actual equivale al valor inicial de TV/TW menos el
valor de temporización que ha transcurrido desde el arranque del temporizador.
Diagrama de temporización
Palabra de estado
Ejemplo
T5
S_VIMP
E 0.0 A 4.0
S Q ( )
S5TIME#2S TW DUAL
E 0.1
R DEZ
Si el estado de señal de la entrada E 0.0 cambia de "0" a "1" (flanco creciente en el RLO), se activa el
temporizador T5. El temporizador continúa en marcha con el valor de temporización indicado de dos
segundos sin ser afectado por un flanco decreciente en la entrada S. Si el estado de señal de la entrada
E 0.0 cambia de "0" a "1" antes de transcurrir el tiempo, el temporizador vuelve a arrancar.
Si el estado de señal de la entrada E 0.1 cambia de "0" a "1" mientras el temporizador está en marcha,
éste se pone a 0. La salida A 4.0 es "1" mientras esté en marcha el temporizador.
FC15 AWL
T2
E124.2 S_EVERZ A124.2
S Q
S5T#10S TW DUAL
R DEZ
1
A124.2
0
TIEMPO <TIEMPO
1
E124.2
0
T7 A125.2
Observaciones:
Configura el Hardware del PLC para que el temporizador T2 sea remanente y inserta en el simulador un
módulo temporizador para comprobar el funcionamiento de los temporizadors.
Símbolo
Inglés Aleman
Nº T Nº T
S_ODT S_EVEREZ
S Q S Q
TV BI TV BI
R BCD R BCD
Descripción de la operación
Para arrancar un temporizador tiene que producirse necesariamente un cambio de señal. El temporizador
continúa en marcha con el valor de temporización indicado en la entrada TV/TW mientras el estado de
señal en la entrada S sea positivo. El estado de señal en la salida Q será "1" si el tiempo ha transcurrido
sin que se produjeran errores y si el estado de señal en la entrada S es "1".
Si el estado de señal en la entrada S cambia de "1" a "0" mientras está en marcha el temporizador, éste se
para. En este caso, el estado de señal en la salida Q será "0".
El valor de temporización actual queda depositado en las salidas BI/DUAL y BCD/DEZ. El valor de
temporización en la salida BI/DUAL está en código binario, el valor en la salida BCD/DEZ está en formato
decimal codificado en binario. El valor de temporización actual equivale al valor inicial de TV/TW menos el
valor de temporización que ha transcurrido desde el arranque del temporizador.
Diagrama de temporización
Palabra de estado
Ejemplo
T5
S_EVEREZ
E 0.0 A 4.0
S Q ( )
S5TIME#2S TW DUAL
E 0.1
R DEZ
Si el estado de señal de la entrada E 0.0 cambia de "0" a "1" (flanco creciente en el RLO), se activa el
temporizador T5. Si transcurre el tiempo de dos segundos y el estado de señal en la entrada E 0.0 sigue
siendo "1", la salida A 4.0 será "1". Si el estado de señal de la entrada E 0.0 cambia de "1" a "0", el
temporizador se para y la salida A 4.0 será "0".
Si el estado de señal de la entrada E 0.1 cambia de "0" a "1", el temporizador se pone a 0, tanto si estaba
funcionando como si no.
FC16 AWL
T3
E124.3 S_SEVERZ A124.3
S Q
S5T#10S TW DUAL
E124.7 R DEZ
1
A124.3
0
TIEMPO
1
E124.3
0
1
E124.7
0
T8 A125.3
E124.7 T8
R
Símbolo
Inglés Aleman
Nº T Nº T
S_ODTS S_SEVERZ
S Q S Q
TV BI TV BI
R BCD R BCD
Descripción de la operación
S_SEVERZ (Parametrizar y arrancar temporizador como retardo a la conexión con memoria) arranca el
temporizador indicado cuando hay un flanco creciente en la entrada de arranque S.
Para arrancar un temporizador tiene que producirse necesariamente un cambio de señal. El temporizador
continúa en marcha con el valor de temporización indicado en la entrada TV/TW aunque el estado de
señal en la entrada S se ponga a "0" antes de que haya transcurrido el tiempo. El estado de señal en la
salida Q será "1" si ha transcurrido el tiempo, independientemente del estado de señal que tenga la
entrada S.
El valor de temporización actual queda depositado en las salidas BI/DUAL y BCD/DEZ. El valor de
temporización en la salida BI/DUAL está en código binario, el valor en la salida BCD/DEZ está en formato
decimal codificado en binario. El valor de temporización actual equivale al valor inicial de TV/TW menos el
valor de temporización que ha transcurrido desde el arranque del temporizador.
Diagrama de temporización
Palabra de estado
Ejemplo
T5
S_SEVERZ
E 0.0 A 4.0
S Q ( )
S5TIME#2S TV DUAL
E 0.1
R DEZ
Si el estado de señal de la entrada E 0.0 cambia de "0" a "1" (flanco creciente en el RLO), se activa el
temporizador T5. El temporizador continúa en marcha sin que un cambio de señal de "1" a "0" en la
entrada E 0.0 repercuta en él. Si el estado de señal de la entrada E 0.0 cambia de "1" a "0" antes de que
haya transcurrido el tiempo, el temporizador vuelve a arrancar. La salida A 4.0 será "1" si ha transcurrido el
tiempo
Si el estado de señal de la entrada E 0.1 cambia de "0" a "1", el temporizador se pone a "0",
independientemente de cuál sea el RLO en S.
FC17 AWL
T4
E124.4 S_AVEREZ A124.4
S Q
S5T#10S TW DUAL
R DEZ
1
A124.5
0
TIEMPO
1
E125.0
0
T9 A125.4
Observaciones:
Después de probar este ejercicio, modifica el OB1 y llama también a los bloques FC13, FC14, FC15 y
FC16, para comprobar el funcionamiento de todos los temporizadores a la vez.
Crea una tabla de variables y observa en ella el funcionamiento de todos los temporizadores.
Símbolo
Inglés Aleman
Nº T Nº T
S_OFDDT S_AVERZ
S Q S Q
TV BI TV BI
R BCD R BCD
Descripción de la operación
Para arrancar un temporizador tiene que producirse necesariamente un cambio de señal. El estado de
señal en la salida Q será "1" si el estado de señal en la entrada S es "1", y también mientras el
temporizador esté en marcha. El temporizador se para si el estado de señal en la entrada S cambia de "0"
a "1" mientras el temporizador está en marcha.
El temporizador sólo vuelve a arrancar si el estado de señal en la entrada S vuelve a cambiar de "1" a "0".
El valor de temporización actual queda depositado en las salidas BI/DUAL y BCD/DEZ. El valor de
temporización en la salida BI/DUAL está en código binario, el valor en la salida BCD/DEZ está en formato
decimal codificado en binario. El valor de temporización actual equivale al valor inicial de TV/TW menos el
valor de temporización que ha transcurrido desde el arranque del temporizador.
Diagrama de temporización
Palabra de estado
Ejemplo
T5
S_AVERZ
E 0.0 A 4.0
S Q ( )
S5TIME#2S TV DUAL
E 0.1
R DEZ
A 4.0 es "1" si E 0.0 es "1" o el temporizador está en marcha (Si el estado de señal en E 0.1 cambia de "0"
a "1", mientras está en marcha el temporizador, éste se pone a 0).
21 GENERADORES DE IMPULSOS
Para poder trabajar con estos elementos se han de configurar siguiendo los siguientes pasos:
Administrador Æ Equipo Simatic 300 Æ Hardware Æ Clicar dos veces sobre la CPU Æ Seleccionamos la
pestaña Ciclo/Marca de ciclo Æ Activamos la casilla Marca de ciclo y ponemos el byte de marca que
queramos, en este caso MB255 Æ Aceptar Æ Guardar y compilar Æ Cargar al autómata
Cuando guardamos y compilamos, se almacena la configuración del Hardware en Datos del sistema, y al
Cargar transferimos estos datos al PLC, que quedan guardados aunque este se desconecte.
Pero en el caso de trabajar con el simulador, se pierden cada vez que salimos del Administrador, por tanto
deberemos cargarlos de nuevo cada vez que abramos el programa.
Después de hacer esto podemos trabajar con los siguientes generadores de impulsos:
Observaciones:
FC18 AWL
E124.0 M255.0 A124.0
Una vez realizado y comprobado el programa, crea una tabla de estado (desde el Administrador: Insertar
nuevo objeto Æ Tabla de variables) para visualizar el byte de marcas que hemos configurado como
generador de impulsos.
Vamos a utilizar este ejercicio para aprender a editar los operandos de la tabla de golpe, para ello sigue
los siguientes pasos:
Observaciones:
FC19 AWL
E124.0 T1 A124.0
E124.0 T2 A124.7
T2 T1
SE
S5T#2S
T1 T2
SE
S5T#2S
1
A124.0
0
TIEMPO 2 TIEMPO 1
1 SCAN
1
A124.7
0
Observaciones:
Cambia los valores de los temporizadores y observa el funcionamiento.
El tiempo que tarda en dar los impulsos se puede variar con el temporizador T3.
FC19 AWL
E124.4 T3 A124.4
T3 T3
SE
S5T#100ms
1 SCAN
A124.4
0
TIEMPO
Observaciones:
En el simulador selecciona Ciclo individual y ejecuta el programa ciclo a ciclo para ver como se conecta la
salida A124.4 durante un ciclo.
24 CONTADORES DE IMPULSOS
En la CPU 314C-2DP, hay un total de 256 contadores. Por defecto del contador 0 al contador 7 tienen
memoria (si queremos configurarlos de forma diferente, actuaremos igual que con las marcas remanentes
y los temporizadores).
Los elementos con los cuales se puede trabajar con un contador son los siguientes:
• ZV Incrementar. Contaje hacia arriba
• ZR Decrementar. Contaje hacia abajo
• SZ Carga del valor de preselección
• ZW Valor de preselección, el valor máximo 999 y en formato BCD
• R Puesta a cero del valor del contador
• Q Conexión de la salida
• DUAL Carga el valor del contador en binario
• DEZ Carga el valor del contador en BCD
IMPORTANTE: En la salida Q tendremos un 1 siempre que el valor del contador sea superior a 0.
FC20 AWL
Z0
E124.0 ZAEHLER A124.0
ZV Q
E124.1
ZR
E124.2
S
C#10 ZW DUAL
E124.3
R DEZ
Observaciones:
FC20
AWL
E124.0 Z1
ZV
E124.1 Z1
ZR
E124.2 Z1
SZ
C#10
E124.3 Z1
R
Z1 A124.1
Z1 A124.2
Observaciones:
Símbolo
Inglés Aleman
C Nº Z Nr
S_CUD ZAEHLER
CU Q ZV Q
CD ZR
S CV S DUAL
PV CV_BCD ZW DEZ
R R
Descripción de la operación
El contador incrementa en "1" si el estado de señal de la entrada ZV cambia de "0" a "1" y el valor del
contador era menor que "999".
Si se inicializa el contador y el RLO de las entradas ZV/ZR = 1, el contador contará así en el siguiente
ejemplo aunque no haya habido ningún cambio de flanco.
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.
Realizado por: Fecha:01/09/05 Página: 62/102
Ramon L. Yuste Yuste IES SEP COMTE DE RIUS
Versión: 2.0 Fichero:
Lluís Martínez Novoa
Departament d’Educació
INSTRUCCIONES BÁSICAS DEL
AUTÓMATA S7- 300
Electricitat/Electrònica
Palabra de estado
Nota:
No utilice un mismo contador en varios puntos del programa (riesgo de errores de contaje).
Ejemplo
Z10
S_AVERZ
E 0.0 A 4.0
ZV Q ( )
E 0.1
ZR
E 0.2
S DUAL
S5TIME#2S ZW DEZ
E 0.3
R
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.
El operario pone en marcha el proceso mediante el selector E124.0, al accionar el pulsador E124.1 carga
el valor de preselección, esto provoca que la cinta A124.0 se ponga en marcha al instante.
Hay un detector de piezas E124.7 que cuenta las piezas que pasan. Cuando ha contado las piezas
preseleccionadas (el contador llega a 0), se para la cinta y se pone en marcha de forma intermitente el
zumbador A124.7.
El operario retira entonces la caja llena, pone una caja vacía y acciona de nuevo el pulsador E124.1 y el
ciclo comienza de nuevo.
FC21 AWL
E124.7 E124.0 Z1
ZR
E124.1 E124.0 Z1
SZ
C#8
Z1 E124.0 A124.0
A124.0
E124.7
A124.7
E124.0
E124.1
Queremos controlar la cantidad de piezas que pasan por un proceso de producción, cuantas piezas hemos
fabricado, cuantas han sido defectuosas y cuantas han sido buenas.
Disponemos de 3 contadores:
• Un contador que solo cuenta hacia arriba para contar las piezas totales. (Z1)
• Un contador que solo cuenta hacia arriba para contar las piezas defectuosas (Z2)
• Un contador con contaje hacia arriba (cuenta todas las piezas) y contaje hacia abajo (descuenta las
malas) (Z3)
Tenemos dos detectores. Uno detectará todas las piezas que pasen (E124.0) y el otro que detectará
solamente las piezas malas. (E124.1).
Tenemos un pulsador de reset. Al acabar la jornada, el responsable de producción mirará el valor de los
contadores y accionando el reset, los pondrá a 0, quedando preparados para la siguiente jornada
FC22
AWL
E124.0 Z1
ZV
Z3
ZV
E124.1 Z2
ZV
Z3
ZR
E124.7 Z1
R
Z2
R
Z3
R
Observaciones:
Mediante el pulsador E124.7, accionado por llave para asegurarnos que solo lo puede accionar personal
autorizado y después de comprobar que el parking está vacío, el contador se pondrá al valor 10.
Mientras el parking no esté lleno, se conecta la salida A124.0 y cada vez que entre un coche, se activará
el detector E124.1 que hará que el contador baje de valor.
Cada vez que salga un coche, se activará un detector E124.0 que hará que el contador incremente en 1 su
valor.
Cuando el contador llegue al valor 0, querrá decir que el parking está lleno y entonces se activará la salida
A124.1de manera intermitente.
FC23 AWL
E124.0 Z1
ZV
E124.1 Z1 Z1
ZR
E124.7 Z1
SZ
C#10
Z1 A124.0
Z1 M255.5 A124.1
Observaciones:
Queremos que cuando una bomba lleve acumulado un cierto tiempo de funcionamiento (120 segundos en
este caso) dé una señal intermitente en un piloto que indicará que se ha de realizar el mantenimiento.
Con los pulsadores E124.0 y E124.1, arrancamos y paramos el motor, salida A124.0.
Cada vez que funcione el motor, el piloto A124.3 funcionará de manera fija y haremos que el generador de
impulsos M255.5 incremente el valor del contador Z1, que controla el tiempo de funcionamiento del motor.
Cuando lleve acumulado un total de dos minutos, la salida A124.3 se activará de forma intermitente.
Una vez realizado el mantenimiento, accionaremos el pulsador de reset E124.7, con la cual cosa el
contador queda preparado para controlar el siguiente mantenimiento.
FC24 AWL
E124.0 A124.0
S
E124.1 A124.0
R
A124.0 M255.5 Z1
ZR
E124.7 Z1
SZ
C#120
Z1 M255.3 A124.3
Z1 A124.0
Observaciones:
Nota: Razona el funcionamiento del circuito si el segmento 1 se programa detrás del segmento 4
FC25
A124.0 Z2
2 ZV
E124.7 Z1
3 R
Z2
R
A124.0
A124.0 M255.5
E124.0 M255.0
Un flanco de un elemento, convierte una señal continua en un impulso de 1 Scan de duración (1 lectura de
programa)
Flanco positivo:
Si activemos de forma constante la entrada E124.0, hacemos que la salida A124.0 funcione durante 1
Scan cuando la entrada pasa del estado 0 al estado 1 (flanco de subida)
Flanco negativo:
Si desactivamos la entrada E124.0, hacemos que la salida A124.1 funcione durante 1 Scan cuando la
entrada pasa del estado 1 al estado 0 (flanco de bajada)
FC26 AWL
E124.0
0
1 SCAN 1 SCAN
A124.0
0
1SCAN 1 SCAN
A124.1
Observaciones:
Como las salidas se conectan solo durante un ciclo, es posible que alguna vez no se aprecie su conexión.
Símbolo
<Operando>
---( P )---
Descripción de la operación
---( P )--- (Detectar flanco creciente RLO (0 --> 1)) detecta un cambio del estado de señal en el operando,
de "0" a "1", e indica este cambio tras la operación mediante RLO = 1. El estado de señal actual del RLO
se compara con el estado de señal del operando, es decir, con la marca de flancos.
Si el estado de señal del operando es "0" y el RLO anterior a la operación es "1", el RLO detrás de la
operación será "1" (impulso); en todos los demás casos será "0". El RLO anterior a la operación se
almacena en el operando.
Palabra de estado
Ejemplo
La marca de flancos M 0.0 almacena el estado del RLO de toda la combinación de bits.
Si el estado de señal del RLO cambia de "0" a "1", se ejecuta el salto a la meta CAS1.
Símbolo
<Operando>
---( N )---
Descripción de la operación
---( N )--- (Detectar flanco decreciente (1 --> 0)) detecta un cambio del estado de señal en el operando de
"1" a "0", e indica este cambio tras la operación con RLO = 1. El estado de señal del RLO se compara con
el estado de señal del operando, es decir, con la marca de flancos.
Si el estado de señal del operando es "1" y el RLO anterior a la operación es "0", el RLO posterior a la
operación será "1" (impulso); en todos los otros casos será "0". El RLO anterior a la operación se
almacena en el operando.
Palabra de estado
Ejemplo
La marca de flancos M 0.0 almacena el estado del RLO de la combinación de bits en su conjunto.
Si el estado de señal del RLO cambia de "1" a "0", se ejecuta el salto a la meta CAS1.
FC27 AWL
A124.0 M0.1
R
M0.1 A124.0
2
E124.4 A124.2
4
R
Observaciones:
Cuando necesitamos utilizar una misma estructura varias veces, pero con elementos diferentes, se puede
hacer una plantilla y después llamarla cada vez que la necesitemos.
En este caso queremos programar el control de diversos motores, el funcionamiento de los cuales es
idéntico.
Para ello marcamos el tipo de parámetro a la izquierda y rellenamos a la derecha los elementos
correspondientes a este tipo de parámetro.
• Una vez definida la plantilla la podemos llamar desde cualquier bloque, las veces que nos interese
colocando en cada caso los elementos de control de cada motor
Montamos el diagrama de
contactos (programa)
utilizando el nombre de los
parámetros definidos en la
plantilla
FC28
Datos de la plantilla
Interface
Nombre Tipo de datos Comentario
Tipo de parámetro
In Térmico BOOL Relé térmico protección
In Paro BOOL Pulsador de paro
In Marcha BOOL Pulsador de marcha
Out Marcha_Motor BOOL Piloto motor en marcha
Out Paro_Motor BOOL Piloto motor parado
Out Averia_Motor BOOL Piloto avería motor
In_out Motor BOOL Contactor de motor
temp
#Motor
#Motor #Marcha_Motor
#Motor #Paro_Motor
En el FC29 realizamos la llamada a la plantilla (bloque FC28) tantas veces como motores tengamos,
colocando en cada FC28 llamado, los datos que correspondan a los operandos de cada motor.
En este ejercicio vamos a utilizar los siguientes elementos correspondientes a cada motor:
FC29
FC28 AWL
EN ENO
A124.0 Motor
FC28
EN ENO
A124.4 Motor
Los saltos a metas, son saltos condicionales. Se han de definir con un inicio (JMP) y un final (LBL)
Las etiquetas de las metas, están compuestas por cuatro caracteres de los cuales al menos 1 tiene que
ser una letra.
FC30
AWL
E124.0 SAL1
JMP
E124.1 A124.1
E124.2 A124.2
E124.3 A124.3
SAL1
E124.4 A124.4
Observaciones:
Debemos tener en cuenta que cuando realizamos un salto, dejamos de ejecutar las líneas de programa
que saltamos, por tanto si había algo en marcha, continuará en marcha y no se podrá parar hasta que se
vuelvan a ejecutar estas instrucciones.
Símbolo
LABEL
Descripción de la operación
LABEL marca la meta de una operación de salto. Esta meta puede tener hasta un máximo 4 caracteres.
Cada salto ---( JMP ) o ---( JMPN ) tiene que tener una meta del salto (LABEL).
Ejemplo
Segmento 1
E 0.0 CAS1
( JMP )
Segmento 2
E 0.3 A 4.0
( R)
Segmento 3
CAS1
E 0.4 A 4.1
( R)
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.
Símbolo
<Meta>
---( JMP )
Descripción de la operación
---( 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 (v. ejemplo).
Cada salto ---( JMP ) tiene que tener una meta (LABEL).
¡No se ejecutarán las operaciones que se encuentren entre la operación de salto y la meta!
Palabra de estado
Ejemplo
Segmento 1
CAS1
( JMP )
. . . . . .
. . . . . .
. . . . . .
. . . . . .
Segmento x
CAS1
E 0.4 A 4.1
( R)
El salto se ejecuta en todos los casos, omitiéndose (“pasando por alto“) las operaciones que se
encuentren entre la operación de salto y la meta.
Símbolo
<Meta>
---( JMP )
Descripción de la operación
---( JMP ) (Saltar en el bloque si es 1) funciona como un salto condicional cuando el RLO de la
combinación lógica anterior es "1".
Cada salto ---( JMP ) tiene que tener una meta (LABEL).
¡No se ejecutarán las operaciones que se encuentren entre la operación de salto y la meta!
Palabra de estado
Ejemplo
Segmento 1
E 0.0 CAS1
( JMP )
Segmento 2
E 0.3 A 4.0
( R)
Segmento 3
CAS1
E 0.4 A 4.1
( R)
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.
El bloque OB1 es un módulo que se ejecuta siempre, desde él podemos realizar llamadas a otros
módulos.
Cuando se llama a un módulo, deja de leerse el módulo donde estamos y se lee el módulo llamado,
cuando éste se acaba de leer, el programa vuelve al segmento siguiente del módulo desde el que
habíamos realizado la llamada.
FC31 AWL
E124.0 A124.0
1
E125.0 FC 32
2 EN ENO
E124.1 A124.1
3
FC32 AWL
E125.1 FC 33
4 EN ENO
E124.2 A124.2
5
E124.3 A124.3
6
FC33 AWL
E124.4 A124.4
7
E124.5 A124.5
8
U E 125.2
9
BEB
E124.6 A124.6
10
En este ejercicio, la CPU del PLC ejecutará el programa siguiendo un orden en función del estado de las
entradas.
A continuación vemos el orden en que se ejecutarán las líneas del programa en diferentes casos:
Observaciones:
Cuando trabajamos con programación estructurada, debemos tener en cuenta que siempre que desde un
bloque, llamamos a otro bloque, este debe estar cargado en el PLC, sino el PLC se pondrá en STOP.
Funcionamiento Automático:
• Al accionar el pulsador E124.0, se activa la salida A124.0 (electroválvula) y la salida A124.7 (Piloto)
funciona de forma intermitente lento.
• Al cabo de 10 segundos de funcionar, se desconectan las salida A124.0 y A124.7.
Funcionamiento Manual:
• Mientras mantengamos accionado el pulsador E124.0, se activa la salida A124.0 (electro válvula) y la
salida A124.7 (Piloto) funciona de forma intermitente rápido.
• Al dejar el pulsador E124.0. las salidas se desconectan
FC34 AWL
E125.0 FC 35
EN ENO
E125.0 FC 36
EN ENO
E124.0 T1
SV
S5T#10S
T1 A124.0
FC36 (MANUAL)
AWL
E124.0 A124.0
A124.7
E125.0 E124.0
Observaciones:
Este OB, se ejecuta 1 vez durante 1 scan cuando el autómata pasa de STOP a RUN.
Al OB100 no hay que llamarlo desde ningún otro módulo, pues se ejecuta de manera automática, pero
recuerda que hay que cargarlo a la CPU.
RUN
STOP
1 SCAN 1 SCAN
EJECUTA
OB100
NO SE EJECUTA
OB100 AWL
M200.0 M200.0
Se trata simplemente de, en el momento de arrancar el PLC, conectar la marca M200.0 de manera
permanente para que después se desconecte en función del programa.
FC37
AWL
M200.0 T1
SE
S5T#20S
T1 M200.0
R
E124.7 A124.0
A124.0
Observaciones:
Módulos OB100 solo hay uno, por tanto si ya está creado solo hay que abrirlo y añadir todas las
operaciones que queremos realizar.
Consideremos que M0.0 es la etapa inicial de un grafcet de 6 etapas o estado inicial de una guía gemma
de 6 estados.
Funcionamiento:
Cuando el autómata pasa de STOP a RUN, se ejecutará el OB100 solo durante 1 scan, pero suficiente
para ejecutar el programa y por tanto provocará la desconexión de 6 bits a partir del M0.0 y conectará solo
M0.0
AWL
OB100
FC82
RESET M0.0
EN ENO S
M0.0 S_BIT
6 N
Otra forma de hacerlo seria con la instrucción MOVE (transferir), aunque aquí realiza la operación con un
Byte, es decir desconecta 8 nits.
AWL
MOVE M4.0
EN ENO S
0 IN OUT MB4
Observaciones:
Comprueba mediante la tabla de variables el funcionamiento del programa y cuando lo hayas hecho,
cambia el bit que se conecta.
Símbolo
MOVE
EN ENO
IN OUT
Descripción de la operación
MOVE (Asignar un valor) es activada por la entrada de habilitación EN. El valor indicado por la entrada IN
se copia en la dirección que la salida OUT. La salida de habilitación ENO tiene el mismo estado de señal
que la entrada de habilitación EN.
La operación MOVE sólo puede copiar los objetos de datos que tengan las longitudes de BYTE, WORD o
de DWORD. Los tipos de datos de usuario talas como los arrays o las estructuras han de copiarse con
SFC 20 „BLKMOV“.
Palabra de estado
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.
Nota
Al transferir un valor a un tipo de datos de longitud diferente los bytes más significativos se truncan o se
rellenan con ceros si es preciso:
Realizado por: Fecha:01/09/05 Página: 87/102
Ramon L. Yuste Yuste IES SEP COMTE DE RIUS
Versión: 2.0 Fichero:
Lluís Martínez Novoa
Departament d’Educació
INSTRUCCIONES BÁSICAS DEL
AUTÓMATA S7- 300
Electricitat/Electrònica
Palabra doble 1111 1111 0000 1111 1111 0000 0101 0101
Transferencia Resultado
a una palabra doble: 1111 1111 0000 1111 1111 0000 0101 0101
a un byte: 0101 0101
a una palabra: 1111 0000 0101 0101
Ejemplo
MOVE
E 0.0 A 4.0
EN ENO ( )
Si el MCR está conectado, los datos se copian de MW10 a DBW12 , tal como se ha explicado arriba en la
descripción de la operación.
36 INSTRUCCIONES DE COMPARACIÓN
NOTA: Un comparador, actúa como un contacto en el que hay valor 1 cuando se cumple la comparación.
FC 38 AWL
E124.0 A124.0
CMP==I
1
MW0 IN1
135 IN2
E124.1 A124.1
CMP<>I
2
MW0 IN1
135 IN2
E124.2 A124.2
CMP>I
3
MW0 IN1
135 IN2
E124.3 A124.3
CMP<I
4
MW0 IN1
135 IN2
E124.4 A124.4
AWL
CMP>=I
5
MW0 IN1
135 IN2
E124.5 A124.5
CMP<=I
6
MW0 IN1
135 IN2
Observaciones:
Una vez comprobado el funcionamiento del programa, varia los valores de IN2 de las comparaciones y
mediante los bytes de entradas EB0 y EB1 comprueba el resultado.
Símbolos
Descripción de la operación
CMP ? y (Comparar enteros) puede utilizarse como un contacto normal. El cuadro puede colocarse en las
mismas posiciones que puede tomar un contacto normal. Las entradas IN1 y IN2 son comparadas
atendiendo al criterio de comparación que se haya seleccionado.
Si la comparación es verdadera, el RLO de la operación es "1". El RLO se combina mediante una Y lógica
con el RLO del circuito completo siempre que el elemento de comparación esté conectado en serie, y
mediante una O lógica si el cuadro está conectado en paralelo.
Palabra de estado
Ejemplo:
E 0.0 E 0.1 CMP A 4.0
>=1 (S)
MW0 IN1
MW2 IN2
La salida A4.0 se activa si E 0.0 Y E 0.1 son 1 Y si MW0>=MW2
La función WAND_W coge los 16 bits de IN1 y los 16 bits de IN2, realiza la operación serie (bit a bit) de los
bits de la misma posición (dentro de su palabra) y el resultado lo envía a OUT .
La función WOR_W coge los 16 bits de IN1 y los 16 bits de IN2, realiza la operación paralelo (bit a bit) de
los bits de la misma posición (dentro de su palabra) y el resultado lo envía a OUT .
La función WXOR_W coge los 16 bits de IN1 y los 16 bits de IN2, realiza la operación Or exclusiva (bit a
bit) de los bits de la misma posición (dentro de su palabra) y el resultado lo envía a OUT . (tendremos un 1
cuando los bits de IN1 y IN2 sean diferentes)
Inserta en el simulador los bytes de entradas que necesites para comprobar el programa y una vez que lo
hayas probado y entendido, cambia EW0 por MW0 y EW2 por MW2, y los valores de estas marcas los
introduces forzándolos desde la tabla de variables.
FC 39
AWL
E124.0 WAND_W
1 EN ENO
EW0 IN1
OUT MW4
EW2 IN2
E124.1 WOR_W
2 EN ENO
EW0 IN1
OUT MW4
EW2 IN2
E124.2 WXOR_W
3 EN ENO
EW0 IN1
OUT MW4
EW2 IN2
Observaciones:
En este ejercicio estamos utilizando los mismos operandos en las 3 operaciones.
Prueba una a una y recuerda que si activas varias operaciones a la vez, solo se ejecutará bien la
programada en último lugar.
Símbolo
WAND_W
EN ENO
IN1 OUT
IN2
Descripción de la operación
WAND_W (Y lógica con palabras) se activa cuando la entrada de habilitación (EN) tiene el estado de señal
"1". Esta operación combina entonces los dos valores de palabra de IN1 y IN2 bit a bit realizando una Y
lógica. Los valores se interpretan como puras configuraciones binarias. El resultado queda depositado en
la salida OUT. La salida de habilitación ENO tiene el mismo estado de señal que EN.
Palabra de estado
Ejemplo
WAND_W
E 0.0 A 4.0
EN ENO ( )
MW0 IN1 OUT MW2
La operación se ejecuta si E 0.0 es 1. Sólo son relevantes los bits de 0 a 3 de MW0; los demás bits son
enmascarados por la configuración binaria de la palabra en IN2:
Símbolo
WOR_W
EN ENO
IN1 OUT
IN2
Descripción de la operación
WORD_W (O lógica con palabras) se activa cuando la entrada de habilitación (EN) tiene el estado de
señal "1". Esta operación combina los dos valores de palabra de IN1 y IN2 bit a bit realizando una O
lógica. Los valores se interpretan como puras configuraciones binarias. El resultado queda depositado en
la salida OUT. La salida de habilitación ENO tiene el mismo estado de señal que EN.
Palabra de estado
Ejemplo
WOR_W
E 0.0 A 4.0
EN ENO ( )
MW0 IN1 OUT MW2
La operación se ejecuta si E 0.0 es 1. Los bits 0 a 3 se ponen a “1”, los demás bits de Mw0 no varían.
Símbolo
WXOR_W
EN ENO
IN1 OUT
IN2
Descripción de la operación
WXOR_W (O esclusiva con palabras) se activa cuando la entrada de habilitación (EN) tiene el estado de
señal "1". Esta operación lógica combina los dos valores de palabra IN1 y IN2 bit a bit realizando una O
exclusiva. Los valores se interpretan como puras configuraciones binarias. El resultado queda depositado
en la salida OUT. La salida de habilitación ENO tiene el mismo estado de señal que EN.
Palabra de estado
Ejemplo
WXOR_W
E 0.0 A 4.0
EN ENO ( )
MW0 IN1 OUT MW2
En cualquiera de estas cuatro operaciones, el resultado ha de estar comprendido dentro de los límites de
los números enteros.
Fuerza los valores de MW0 y MW2 desde la tabla de variables y recuerda que igual que en el ejercicio
anterior no debemos activar simultáneamente varias operaciones.
FC40
AWL
E124.0 ADD_I A124.0
1 EN ENO
MW2 IN2
OV M255.3 A124.1
MW2 IN2
OV M255.3 A124.3
MW2 IN2
OV M255.3 A124.5
MW2 IN2
OV M255.3 A124.7
Símbolo
ADD_I
EN ENO
IN1
IN2 OUT
Descripción de la operación
ADD_I (Sumar enteros) Suma las entradas IN1 y IN2 si el estado de señal en la entrada de habilitación
(EN) es “1”. La salida OUT proporciona el resultado. Si el resultado es un valor fuera del margen válido
para enteros (de 16 bits), los bits OV y OS son 1 y ENO es 0, de forma que otras operaciones que siguen
a esta operación aritmética, combinadas a través de ENO (ejecución en cascada) no se ejecutan.
Palabra de estado
Ejemplo
ADD_I
E 0.0 A 4.0
EN ENO NOT (S)
MW0 IN1
El cuadro ADD_I se activa si E 0.0 es 1. El resultado de la suma MW0 + MW2 se deposita en MW10. Si el
resultado es un valor fuera del margen válido para enteros o si el estado de señal de E 0.0 es 0, la salida A
4.0 se pone a 1.
Símbolo
SUB_I
EN ENO
IN1
IN2 OUT
Descripción de la operación
SUB_I (Restar enteros) resta el valor de IN2 del valor de IN1 si el estado de señal en la entrada de
habilitación (EN) es “1”. La salida OUT proporciona el resultado. Si el resultado es un valor fuera del
margen válido para enteros (de 16 bits), los bits OV y OS son 1 y ENO es 0, de forma que otras
operaciones que siguen a esta operación aritmética, combinadas a través de ENO (ejecución en cascada)
no se ejecutan.
Palabra de estado
Ejemplo
SUB_I
E 0.0 A 4.0
EN ENO NOT (S)
MW0 IN1
El cuadro SUB_I se activa si E 0.0 es 1. El resultado de la sustracción MW0 - MW2 se deposita en MW10.
Si el resultado es un valor fuera del margen válido para enteros (de 16 bits) o si el estado de señal de E0.0
es 0, la salida A 4.0 se pone a 1.
Símbolo
MUL_I
EN ENO
IN1
IN2 OUT
Descripción de la operación
MUL_I (Multiplicar enteros) multiplica las entradas IN1 y IN2 si el estado de señal en la entrada de
habilitación (EN) es “1”. La salida OUT proporciona el resultado. Si el resultado es un valor fuera del
margen válido para enteros (de 16 bits), los bits OV y OS son 1 y ENO es 0, de forma que otras
operaciones que siguen a esta operación aritmética, combinadas a través de ENO (ejecución en cascada)
no se ejecutan.
Palabra de estado
Ejemplo
MUL_I
E 0.0 A 4.0
EN ENO NOT (S)
MW0 IN1
Símbolo
DIV_I
EN ENO
IN1
IN2 OUT
Descripción de la operación
DIV_I (Dividir enteros) divide el valor de IN1 entre el valor de IN2 si el estado de señal en la entrada de
habilitación (EN) es “1”. La salida OUT proporciona el resultado. Si el resultado es un valor fuera del
margen válido para enteros (de 16 bits), los bits OV y OS son 1 y ENO es 0, de forma que otras
operaciones que siguen a esta operación aritmética, combinadas a través de ENO (ejecución en cascada)
no se ejecutan.
Palabra de estado
Ejemplo
DIV_I
E 0.0 A 4.0
EN ENO NOT (S)
MW0 IN1
El cuadro DIV_I se activa si E 0.0 es 1. El resultado de la división de MW0 entre MW2 se deposita en
MW10. Si el resultado es un valor fuera del margen válido para enteros o si el estado de señal de E 0.0 es
0, la salida A 4.0 se pone a 1.