Está en la página 1de 84

AF: 6029

PROGRAMACION
ADMINISTRADOR
SIMATIC
Definición de un PLC
Es un equipo electrónico, basado en un
microprocesador microcontrolador, puede
programarse en lenguaje no informático y está
diseñado para controlar en tiempo real y en
ambiente industrial procesos que presentan una
evolución secuencial.
Funcionamiento básico
Un autómata programable consiste en
módulos de entradas, una CPU, y
módulos de salidas.
Identificación partes del PLC
Fuente de alimentación (PS)
La fuente de alimentación es el primer
módulo del autómata, su función es
alimentar con 24V DC la CPU del
autómata y el bus de comunicaciones
interior del conjunto de módulos.
Selector de Modo
CPU MRES = Función de reset de memoria
(Module Reset).
STOP = Modo Stop; el programa no se
ejecuta.
RUN = Ejecución del programa, es
posible el acceso sólo lectura desde la
PG.
RUN-P = Ejecución del programa, es
posible el acceso lectura/escritura desde
la PG

Indicadores de estado (leds)


SF = Error de grupo; fallo interno de la
CPU o fallo en un módulo con
capacidad de diagnóstico.
BATF = Fallo de batería; Batería vacía o
no presente.
DC5V = Indicador de tensión interna de 5
V DC.
FRCE = FORCE; indica que, al menos, una
entrada o salida está forzada.
RUN = Parpadea cuando la CPU está
arrancando, luce fija en modo RUN.
STOP = Muestra una luz fija en modoSTOP
Parpadea lentamente durante una petición
de reset de memoria,
Parpadea rápidamente cuando se está
efectuando un reset de memoria,
Parpadea lentamente cuando se necesita
un reset porque se ha insertado una memory
card.
Indicadores de estado y error
LED COLOR SIGNIFICADO

Error de grupo; fallo interno de la CPU o fallo en un módulo


SF Rojo con capacidad de diagnóstico.
Error de hardware o software

BATF Rojo Fallo de batería; Batería vacía o no presente.

Alimentación de 5V para CPU y bus del S7-300 correcta.


DC5V Verde

FORCE; indica que, al menos, una entrada o salida está


FRCE Amarillo forzada.

Parpadea cuando la CPU está arrancando, luce fija en


RUN Verde
modo RUN

Muestra una luz fija en modoSTOP


Parpadea lentamente durante una petición de reset de
memoria,
STOP Amarillo Parpadea rápidamente cuando se está efectuando un
reset de memoria,
Parpadea lentamente cuando se necesita un reset porque
se ha insertado una memory card
Módulos entradas y salidas
digitales

Entradas digitales
Se utilizan para decir a la CPU si un
equipo está activado o
desactivado
Salidas digitales
Se utilizan para activar los
componentes activos de la
máquina.
Módulos entradas y salidas
analógicas
La diferencia entre las señales
digitales y las analógicas es que las
digitales son todo o nada mientras
que las analógicas dan una señal
variable, proporcional al valor que
se está estudiando
Medir las señales analógicas
de 4-20mA
Se utiliza un téster, colocando las
bananas en serie con la señal. Esto
significa que no se puede medir
directamente entre bornas como cuando
se mide tensión sino que hay que
intercalar el téster en serie entre la señal
del sensor.
Tester: Medición mA

Negativo Positivo
DIRECCIONAMIENTO

Direcciones de los módulos digitales

Direccionar módulos analógicos


Direcciones de los módulos
digitales
Las direcciones de entradas y salidas
comienzan con la dirección 0 para el
primer módulo del rack.
A cada módulo se le asignan 4 bytes (se
usen o no).
Al configurar el Hardware del PLC con el
software STEP 7, siempre reserva el slot
para el módulo IM (se use o no)
Direccionar módulos
analógicos
La dirección de un canal de entrada o salida
analógico es siempre una dirección de
palabra.
La dirección del canal depende de la
dirección inicial del módulo. Si el primer
módulo analógico se encuentra en el slot 4,
entonces tiene la dirección inicial
predeterminada 256.
La dirección inicial de cualquier otro módulo
analógico aumentará en 16 con cada slot
CREACIÓN DE UN PROYECTO
MEDIANTE EL USO DEL ASISTENTE

Al arrancar el programa Administrador: Archivo Asistente “Nuevo


proyecto”
El proyecto se guarda en una carpeta con el nombre
del proyecto, y por defecto en la ruta: C:\Archivos de
programa\Siemens\Step7\s7proj\nombre proyecto
Insertamos los bloques de organización
Asignamos el nombre al proyecto
Cambio de la ruta donde guardar los proyectos

Herramientas Preferencias Examinar y seleccionaremos la


ruta que queramos, pero eligiendo la misma ruta para: Ruta
de proyectos y Ruta de librerías.
El quedará abierto y el Administrador presentará
este aspecto.
CONFIGURACIÓN MANUAL DE UN PROYECTO

Configuración componentes PLC (configuración Hardware)


Creamos un proyecto nuevo
Insertamos un PLC S7-300
Abrimos el PLC para ver los componentes que tiene
en este momento (solo el hardware)
Abrimos el editor del Hardware
Aparece la ventana HW Config
Insertamos el rack
Insertamos la fuente de Alimentación
Insertamos la CPU
Asignamos la dirección MPI
Las Entradas y Salidas integradas con la CPU, se insertan
automáticamente
Insertamos la tarjeta de Entradas y Salidas de periferia externa
Cambio de la dirección de las Entradas y Salidas. Opcional
Salvar y transferir al PLC la configuración realizada
VER / SIMULAR EL PROGRAMA. SIMULADOR
S7 – PLCSIM

Activando el Icono Observar (representa a unas gafas),


podemos ver cómo se van activando partes del
programa que se está ejecutando
Con la casilla RUN activada, no se puede transferir el programa ni forzar
elementos.
Con la casilla RUN-P activada, si se puede transferir el programa y forzar
elementos.
Para poder probar los circuitos que programamos en el S7, insertaremos
una tarjeta de entradas.
Las tarjetas de salidas las pondremos si queremos visualizar en el
simulador su funcionamiento.
CICLO DE TRABAJO EN EL
AUTÓMATA
Ejecución cíclica del programa

SiOp
PAA

PAE

OB1

La CPU comprueba el estado de las señales


de entrada y actualiza la tabla de imagen
de proceso de entrada.
LENJUAJES DE PROGRAMACIÓN

KOP (esquema de contactos) es un lenguaje


de programación gráfico. La sintaxis de las
instrucciones es similar a la de un esquema
de circuitos

AWL (lista de instrucciones) es un lenguaje


de programación textual orientado a la
máquina.

FUP (diagrama de funciones) es un lenguaje


de programación gráfico que utiliza los
cuadros del álgebra booleana para
representar la lógica
Estructura de la memoria en
Simatic S7
MEMORIA DE PROGRAMA

IMAGENES DE ENTRADAS Y SALIDAS

MARCAS DE MEMORIA

E/S DE LA PERIFERIA

ESTADO DE TEMPORIZADORES Y CONTADORES

MODULOS DE DATOS

DATOS TEMPORALES
TIPOS DE MÓDULOS
Bloques de Organización (OB‘s)
Funciones FC, SFC
Bloques de función FB, SFB
Bloques de datos DB
TIPOS DE REGISTROS

BIT: Un bit, es la unidad básica para trabajar


con dígitos binarios.

BYTE: Un byte es un grupo de 8 bits.

PALABRA: Una palabra está compuesta por


dos bytes o sea 16 bits.

DOBLE PALABRA: Una doble palabra, está


compuesta por dos palabras, o sea 4 bytes o
32 bits.
Tipos de memoria y propiedades
Área I: Entradas digitales e imagen del proceso de las entradas,
tipo lectura/escritura, no pueden ser remanentes, se pueden forzar

Área Q: Salidas digitales e imagen del proceso de las salidas, tipo


lectura/escritura, no pueden ser remanentes, se pueden forzar. Las
salidas son elementos sin memoria, que trabajan a nivel interno y
además dan una señal al exterior

Área M: Marcas internas tipo lectura/escritura, pueden ser


remanentes, se pueden forzar.

Área SM: Marcas especiales, tipo lectura/escritura, no pueden ser


remanentes, no se pueden forzar.

Área AI: Entradas analógicas, solo lectura a nivel de palabra, no


pueden ser remanentes, se pueden forzar.

Área AQ: Salidas analógicas, solo escritura a nivel de palabra, no


pueden ser remanentes, se pueden forzar.

Área T: Valores actuales y bits de temporizadores, permanece en


memoria valor actual del temporizador, no se puede forzar.
FUNCIONES BASICAS
---| |--- Contacto normalmente abierto

---| / |--- Contacto normalmente cerrado

---|NOT|--- Invertir resultado lógico (RLO)

---( ) Bobina de relé, salida

---(R) Desactivar salida

---(S) Activar salida

SR Desactivar flip-flop de activación

---(N) --- Detectar flanco decreciente (1 --> 0)

---( P )--- Detectar flanco creciente RLO (0 --> 1)

MOVE Asignar un valor

S_EVERZ

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


---| |--- Contacto normalmente abierto

Si se cierra si el valor del bit consultado, que se


almacena en el <Operando> indicado, es "1".
Si el estado de señal en el <operando> indicado
es "0", el contacto está abierto
---| / |--- 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".
---|NOT|--- Invertir resultado lógico (RLO)

(Invertir resultado lógico) invierte el bit RLO.


---( ) Bobina de relé, salida

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
---(R) Desactivar salida

Si fluye corriente a la bobina (RLO es "1"), el


<operando> indicado del elemento se pone a "0".
---(S) Activar salida

La salida A 4.0 sólo se pone a "1" si: (el estado en la entrada E 0.0 Y
en E 0.1 es "1") O el estado en la entrada E 0.2 es "1".
La salida se mantendrá activa.
SR Desactivar flip-flop de activación

SR (Desactivar flip-flop de activación) se activa si el estado en la


entrada S es "1" y si el estado de la entrada R es "0".

La entrada S es "0" y el estado de la entrada R es "1", se desactiva


el flip-flop.

Si el RLO es "1" en ambas entradas, la operación Desactivar flip-flop


de activación ejecuta en el <operando> indicado primero la
operación Activar y seguidamente la operación Desactivar, de
modo que la dirección permanece desactivada para el resto del
ciclo de programa.
---(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.
MOVE Asignar un valor

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.
Temporizador retardo a la conexión S_EVERZ
ESTRUCTURA DEL PROGRAMA
Programa Lineal. Todo el programa
se encuentra en un módulo (OB1)
con todas las instrucciones juntas.

Programa Dividido. El programa


está dividido en bloques, cada
bloque solo contiene el programa
para resolver una tarea parcial.

Programa Estructurado. Un
programa estructurado contiene
bloques con parámetros, llamados
bloques parametrizables. Estos
bloques se diseñan para que
puedan usarse de forma universal.
BLOQUES DE ORGANIZACIÓN (OB)
Los bloques de organización (OB) constituyen el interface
entre el sistema operativo y el programa de usuario.

Son llamados por el sistema operativo y controlan el


procesamiento cíclico y controlado por alarmas del
programa, el comportamiento de arranque del sistema de
automatización y el tratamiento de los errores.

Programando los bloques de organización se define el


comportamiento de la CPU.

La ejecución de un OB puede ser interrumpida por la


llamada de otro OB. Qué OB puede interrumpir a otro OB
depende de su prioridad.

Los OBs de mayor prioridad pueden interrumpir a los de


menor prioridad. La prioridad más baja la tiene el OB de
tarea no prioritaria
El OB1
Es la subrutina principal en la que
empieza el ciclo de programa de PLC y
por la que finaliza. Toda subrutina para
poder ser ejecutada debe de ser
llamada desde la OB1. De no ser así no se
ejecutará, pese a encontrarse en la
memoria del PLC.

En esta subrutina se pueden hacer


llamadas a bloques de función (FBs, SFBs)
o a funciones (FCs, SFCs).
OB’s de alarma horaria (OB 10 hasta
OB 17)
Las CPUs S7 ofrecen OBs de alarmas horarias
que pueden ejecutarse a una fecha
determinada o en intervalos específicos.

Una vez, en una fecha determinada


(indicación de hora absoluta con fecha).

Periódicamente, indicando la fecha de


arranque y la frecuencia de repetición (por
ej., cada minuto, cada hora, cada día).
Bloques de organización de alarma de
retardo (OB 20 a OB 23)

Las CPUs S7 ofrecen OBs de alarmas de


retardo permiten ejecutar una acción un
tiempo después de que se produzca un
evento. No se repiten automáticamente,
es necesario llamarlas nuevamente por
código de programación.
Bloques de organización de
alarma cíclica (OB 30 a OB 38)
Las CPUs S7 ofrecen OBs de alarmas cíclicas que
interrumpen la ejecución cíclica del programa en
intervalos determinados.

El periodo de tiempo para las llamadas a las OB´s


de alarma cíclica es parametrizable desde
Hardware de Step 7.

En los Simatic S7 300 únicamente se encuentra


habilitada la OB35. Se suele utilizar la OB35 para
las llamadas a lecturas analógicas, regulación
PID, y otros procesos que requieran un tratamiento
uniforme en el tiempo, e independiente del
tiempo de ciclo del programa.
Otros OBs del S7
Bloques de organización de alarma de
proceso (OB 40 a OB 47).

Bloques de organización de arranque (OB


100 / OB 101 / OB 102).

Bloque de organización de tarea no


prioritaria (OB 90).

Bloques de organización de tratamiento de


errores (OB 70 a OB 87 / OB 121 a OB 122).
Funciones (FC) o módulos de
función
Las funciones son bloques programables. Una
función es un bloque lógico "sin memoria".

Las variables temporales de las FCs se memorizan


en la pila de datos locales. Estos datos se pierden
tras el tratamiento de las FCs. Para fines de
memorización de datos, las funciones pueden
utilizar bloques de datos globales.
BLOQUES DE FUNCIÓN (FB)
Los bloques de función son bloques
programables. Un FB es un bloque "con memoria".

Dispone de un bloque de datos asignado como


memoria (bloque de datos de instancia). Los
parámetros que se transfieren al FB, así como las
variables estáticas, se memorizan en el DB de
instancia. Las variables temporales se memorizan
en la pila de datos locales.
BLOQUES DE DATOS INSTANCIA
A cada llamada de un bloque de función que transfiere
parámetros está asignado un bloque de datos de
instancia.

En el DB de instancia están depositados los parámetros


actuales y los datos estáticos del FB.

Las variables declaradas en el FB definen la estructura del


bloque de datos de instancia.

La instancia define la llamada de un bloque de función.


BLOQUES DE DATOS GLOBALES (DB)

Los bloques de datos no contienen


instrucciones STEP 7.
Los bloques de datos contienen datos
variables con los que trabaja el programa
de usuario.
Los bloques de datos globales contienen
datos de usuario utilizables desde otros
bloques.
BLOQUES DE FUNCIÓN DE
SISTEMA (SFB)
Un SFB es un bloque de funciones integrado en la
CPU S7.

Forman parte del sistema operativo, no se cargan


como parte integrante del programa.
Son bloques "con memoria".

Se han de crear también bloques de datos de


instancia y cargar en la CPU como parte
integrante del programa.

Las CPUs S7 ofrecen SFBs


Para la comunicación vía enlaces configurados
Para las funciones especiales integradas
FUNCIONES DEL SISTEMA (SFC)
Es una función preprogramada integrada en la
CPU S7.

Se puede llamar desde el programa.

Forman parte del sistema operativo, no se cargan


como parte integrante del programa.

Son bloques "sin memoria".

Las CPUs S7 ofrecen SFCs para:


Funciones de copia y de bloque
Control del programa
Manipulación del reloj y del contador de horas de
funcionamiento
Transferencia de registros
etc
Procedimiento: puesta en
marcha del hardware
Debido a la estructura modular y a las
múltiples posibilidades de ampliación, un
sistema de automatización S7-300 puede ser
muy amplio y complejo.

No es conveniente conectar por primera vez


un S7-300 con varios bastidores y con todos
los módulos (montados) enchufados.

Es recomendable realizar la puesta en


marcha paso a paso.
Acción Notas
Comprobar el montaje y el
-
cableado de acuerdo con la lista de verificación

De este modo evitará los efectos de posibles errores de


programación sobre la instalación.
Interrumpir la conexión con accionamientos y
Sugerencia: Desviando las señales de salida a un bloque
actuadores
de datos, se puede comprobar el estado de las salidas
en cualquier momento.

Preparar la CPU Conectar la PG.


Ponga en marcha el aparato central con la fuente de
alimentación y la CPU conectadas.
En los aparatos de ampliación (EGs) con fuente de
Aparato central (ZG):
alimentación propia, conecte primero ésta última y, a
Poner en marcha la CPU y la fuente de alimentación y
continuación, la fuente de alimentación del aparato
comprobar los LEDs
central.

Compruebe los indicadores LED de ambos módulos.

Borrado total de la CPU y comprobación de LEDs -

Conecte cada uno de los demás módulos al aparato


ZG: Puesta en marcha de los restantes módulos
central y póngalos sucesivamente en marcha.

Dado el caso, acople el aparato central a aparatos de


Aparato de ampliación (EG): ampliación: Inserte en el aparato central como máximo
Acoplamiento un IM emisor, y en el aparato de ampliación el IM
receptor que corresponda.
Conecte los demás módulos a los aparatos de
EG:
ampliación y póngalos sucesivamente en
Puesta en marcha
marcha.
Procedimiento: puesta en
marcha del software
Ha montado y cableado su S7-300.

Usa el paquete de programas actual de STEP 7 para


aprovechar toda la funcionalidad de su CPU.

Al conectar en red el S7-300 con MPI o PROFIBUS

• Se deberán haber ajustado las direcciones


MPI/PROFIBUS
• Se deberán haber activado las resistencias
terminadoras en los límites de los segmentos
Al conectar en red el S7-300 con PROFINET

• La interfaz PROFINET integrada de la CPU 31x PN/DP se


deberá haber configurado con STEP 7 (dirección IP y
nombre del dispositivo ajustado con HW Config)
• La CPU se deberá haber conectado a la subred.
Acción Notas

• Conectar la PG y arrancar el Administrador SIMATIC


-
• Transferir la configuración y el programa a la CPU

Las funciones siguientes se adecuan para ello:


• Observar y forzar variables
• Comprobar con el estado del programa
• Forzado permanente
Comprobar las entradas y salidas
• Forzar las salidas en STOP (desbloquear salidas)
Sugerencia: Compruebe las señales en las entradas y
salidas. Utilice para ello p.ej. el módulo de simulación SM
374.

Puesta en marcha de
PROFIBUS DP y Ethernet

Puesta en marcha de
PROFINET IO

Conectar las salidas Poner las salidas sucesivamente en marcha.


Cargar y probar el programa
Establecer una conexión online

Requisitos
Haber configurado el hardware para el
proyecto.
Configurar el hardware.
Cargar el programa en el sistema
de destino
Para poder cargar el programa se tiene que
haber establecido la conexión online.

Aplicar tensión

Conecte la alimentación con el


interruptor ON/OFF a 'ON'. Se
encenderá el diodo "DC 5V" de la
CPU.
Gire el selector de modo hasta la
posición 'STOP' (si no está ya en
'STOP'). El LED "STOP" rojo se
encenderá.
Borrar totalmente la CPU y
ponerla a RUN
Gire el selector de modo hasta
la posición MRES y manténgalo
en esta posición unos 3 s como
mínimo hasta que el LED "STOP"
rojo parpadee lentamente.

Suelte el selector y, antes de


que transcurran 3 s, vuélvalo a
poner en la posición MRES. Si el
LED "STOP" parpadea
rápidamente, significa que ha
finalizado el borrado total de la
CPU.

Si el LED "STOP" no parpadea


rápidamente, repita el proceso.
Cargar el programa en la CPU
Para cargar el programa, el selector
debe encontrarse en la posición
"STOP".

Arranque el Administrador SIMATIC y


abra el proyecto que se ha creado
en el cuadro de diálogo "Abrir" (si es
que aún no está abierto).

Seleccione la carpeta Bloques en


la ventana "Offline" y, a
continuación, cargue el programa
en la CPU eligiendo el comando
Sistema de destino > Cargar.
Confirme con Aceptar.
En la ventana "Online" se visualizarán los bloques
del programa después de la operación de carga.
Conectar la CPU y comprobar
el estado operativo
Gire el selector de modo hasta la
posición RUN-P.

Entonces se encenderá el LED


"RUN" verde y se apagará el LED
"STOP" rojo. La CPU está lista para
el servicio.

Cuando el LED verde está


encendido se puede realizar el
test del programa.

Si el LED rojo no cambia a verde,


significa que se ha producido un
error. Para diagnosticar este error
se deberá evaluar el búfer de
diagnóstico.
Test visualizando el estado del
programa

Establecer una conexión online con la CPU.


Con la función 'Status' (observar el programa) se puede
testear el código de un bloque.
La CPU tiene que estar en RUN o RUN-P y el programa
tiene que haberse cargado en la CPU.
Abra el OB1 en la ventana "Getting Started
Online" del programa.

Se abrirá la ventana KOP/AWL/FUP.

Active la función Test > Observar


Crear la tabla de variables

Con el proyecto abierto en el Administrador SIMATIC


Navegue hasta la carpeta Bloques y haga clic con la tecla
derecha del ratón en la mitad derecha de la ventana.
Inserte la tabla de variables del menú contextual
que aparece al pulsar la tecla derecha del ratón.

Acepte los ajustes estándar cerrando el cuadro de


diálogo "Propiedades" con Aceptar.
Si lo prefiere puede darle un nombre simbólico a la
tabla de variables y asignarle un comentario.
Se creará una VAT1 (tabla de variables) en la
carpeta 'Bloques'.
Conectar la tabla de variables
online
Haga clic en la ventana
"Observar y forzar
variable" en ON para
establecer la conexión
con la CPU configurada.
En la barra de estado
aparecerá "Online".

Posicione el selector de
modo de la CPU en
RUN-P (si aún no lo está).
Observar variables

Haga clic en Observar variable. En la barra de


estado se visualizará el funcionamiento de la CPU.
Oprima los pulsadores 1 y 2 y observe el resultado
en la tabla de variables.
Los valores de estrado de la tabla cambian de
“false”a “true”.
Forzar variables

En la columna 'Valor de forzado' introducimos el valor


"1500" para el operando MW2 y "1300" para el
operando MW4.

Transfiera los valores de estado a la CPU.


Una vez transferidos, se procesarán estos valores
en la CPU y se visualizará el resultado de la
comparación.
Finalice la observación de las variables y cierre la
ventana. Si aparece un mensaje en la pantalla,
confirme con Sí o con Aceptar.
ERRORES
INFORMACIÓN DEL SISTEMA

La información de la CPU nos ayuda en los diagnósticos


del sistema sin tener que programar nada, y hace posible
una detección, localización y eliminación rápida de
errores.
La función Información del Módulo lee los datos más
importantes del módulo directamente conectado.