Вы находитесь на странице: 1из 85

Simatic Step 7 Nivel Basico

1.- Configuracin nuevo proyecto



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








1.2.- Desde el Administrador crearemos un nuevo proyecto, para ello haremos clic en el
icono nuevo.

En la ventana nueva que nos aparece rellenaremos el nombre del proyecto, tambin
podemos crear una ubicacin para nuestro proyecto o dejar la ruta por defecto.









1.3.- Una vez creada la carpeta curso nos situaremos encima y con el botn derecho
seleccionaremos "insertar nuevo objeto" > "SIMATIC 300"













1.4.- Una vez creada la carpeta nos situaremos encima y con el botn derecho
seleccionaremos "insertar nuevo objeto" > "SIMATIC 300"













1.5.- Una vez dentro del Configurador de Hardware procederemos a montar nuestro PLC,
para ello lo primero que tenemos que insertar es un bastidor.

Nota: Si no aparece en pantalla la librera, podemos seleccionarla en Ver >Catalogo


Un bastidor 300 es un perfil standard, que utiliza Siemens para sujetar sus tarjetas de
Simatic 300






1.6.- Despus de configurar el bastidor tenemos que empezar a definir las tarjetas que
queremos montar en el.

La primera tarjeta que insertaremos ser una fuente de alimentacin. Nos desplazamos por
el rbol de la librera y buscaremos un mdulo PS-300














1.7.- Configuracin de la CPU.

Nos desplazamos por el rbol de la librera y buscaremos un mdulo CPU-300, nosotros
para las pruebas insertaremos en el mdulo 2 una CPU 315-2 DP.

En cuanto arrastremos la CPU al chasis nos aparecer un men donde nos permitir elegir
varias opciones pero nosotros las dejaremos por defecto aceptndolo.












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



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



1.10.- Una vez aadidas las tarjetas de entras y salidas cambiaremos las direcciones que por
defecto nos ha puesto. Para ello haremos doble clic sobre las direcciones para abrir el men
propiedades, seleccionado la pestaa "direcciones" y quitando la pestaa estndar
podremos cambiar la direccin.














1.11.- Antes de salir del Hardware grabaremos y compilaremos.

El configurador nos generara una estructura con unas carpetas de fuentes y bloques, dentro
de estas carpetas nosotros programaremos nuestros bloques.










Capitulo 2

2.- BLOQUES DE PROGRAMA Y TABLA DE SIMBOLOS

2.1.-Para crear programas, seleccione la carpeta "Bloques" ya creado y elija el comando de
men "Insertar nuevos objetos > Bloque". En el men siguiente podr elegir el tipo de
bloque (p. ej. Funcin, bloque de funcin, bloque de organizacin, tabla de variables
(VAT)). Una vez abierto el bloque (vaco), podr introducir el programa en AWL, KOP o
FUP, respectivamente.










En esta tabla explico una breve descripcin de los bloques y funciones.



2.2.- Bloques de organizacin. Los bloques de organizacin (OB) constituyen un enlace
entre el sistema operativo y el programa de usuario. Son llamados por el sistema operativo
y controlan el procesamiento cclico y controlado por alarmas del programa, el
comportamiento de arranque del sistema de automatizacin y el tratamiento de los errores.
Programando los bloques de organizacin se define el comportamiento de la CPU.

Insertaremos varios bloques (p.ej.OB32,OB82 y OB121), estos bloques estn establecidos
por el sistema con lo que no hace falta ponerles ni smbolo ni comentario, ya que lo define
el sistema.

Ponemos encontrar ayuda de los OBs pulsando F1, teniendo selecionado la OB



2.3.- Bloques de funcin (FB)

Los bloques de funcin 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
parmetros que se transfieren al FB, as como las variables estticas, se memorizan en el
DB de instancia. Las variables temporales se memorizan en la pila de datos locales. Los
datos memorizados en el DB de instancia no se pierden al concluir el tratamiento del FB.
Los datos memorizados en la pila de datos locales se pierden al concluir el tratamiento del
FB.







En estos bloques si definiremos el smbolo y el comentario, ya que nos ayudara a la
bsqueda posterior de nuestro programa.


2.4.- Funciones (FC)

Las funciones son bloques programables. Una funcin es un bloque lgico "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 memorizacin de datos, las funciones
pueden utilizar bloques de datos globales. Como una FC no tiene asignada ninguna
memoria, se han de indicar siempre parmetros actuales. A los datos locales de una FC no
se pueden asignar valores iniciales.

En todos los bloques menos en los OBs mencionados en el apartado anterior, deberamos
rellenar su smbolo y comentario.



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

2.6.- Los tipos de datos de usuario (UDT) son estructuras de datos creadas por usted mismo
y que, una vez definidas, pueden utilizarse en todo el programa de usuario S7 de dos
formas:

Como tipos de datos simples o como tipos de datos compuestos.
Como plantilla para crear bloques de datos de estructura idntica.













2.7.- Tabla de variables (VAT).

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













2.8.- Despus de crear los bloques definidos en los apartados anteriores deberamos tener
en la ventada derecha del configurador lo siguiente.




















2.8.- Editor de smbolos
Con el editor de smbolos se gestionan todas las variables globales. Se definen los nombres
simblicos y comentarios para las seales del proceso (entradas y salidas), las marcas y los
bloques.













Capitulo 3.1

3.1.LOGICA CON BITs

1. - Introduccin

Las operaciones lgicas con bits operan con dos dgitos, 1 y 0. Estos dos dgitos crean un
sistema numrico denominado sistema binario.
En el entorno de los contactos y bobinas, un 1 significa activado (conduce) y un 0 significa
desactivado ("no conduce").

En este captulo trabajaremos con estas operaciones lgicas:

--| |-- Contacto normalmente abierto
---( ) Bobina de rel, salida

2. - Contacto normalmente abierto

Smbolos habituales



Se cierra si el valor del bit es un 1





3. Direccionamiento de entradas y salidas digitales

Los tipos de datos que vamos a utilizar son:
E -- Entradas
A -- Salidas

Las CPUs de Siemens trabajan en byte, con lo cual cada direccin podra definirse de 0 a 7
bits.


Cada uno de estos tipos se puede direccionar en 4 posibles modos

Por defecto (X para DB): Bit.
B: byte (8 bits).
W: palabra (16 bits).
D: palabra doble (32 bits).


4. Ejemplos conexin sin lgica

Activacin de bobina
En este ejemplo trabajaremos con un interruptor, un interruptor se mantiene enclavado una
vez presionado.
Lo que quiere decir que la salida quedara activada mientras no se vuelva a presionar en el
otro sentido.

Un interruptor es como los que tenemos en casa, que tiene dos posiciones que se quedan
enclavadas manteniendo la luz apagada o encendida segn la posicin

Ingeniera


Lgica desde PLC








5. Ejemplos conexin serie

Funcin AND (Y)
Todas las entradas tienen que estar a 1 para que la salida se active.

Ingeniera



Lgica desde PLC











6. Ejemplos conexin paralelo

Funcin OR (O)
Activando cualquiera de las entradas a 1 la salida se active.

Ingeniera


Lgica desde PLC










7. Ejemplos conexin serie y paralelo

Tambin se puede hacer combinaciones para realizar lgicas variadas.














Capitulo 3.2

3.2. LOGICA CON BITs, EJEMPLOS SET/RESET

1. Introduccin

En este captulo utilizaremos contactos normalmente cerrados y bobinas con memorias

Trabajaremos con estas operaciones lgicas:
---| / |--- Contacto normalmente cerrado
---( S ) Set, salida memorizada a 1
---( R ) Reset, poner salida memorizada a 0

2. - Contacto normalmente cerrado

Smbolos habituales


El contacto normalmente cerrado en reposo el estado de la seal es 1



3. Ejemplos

Ingeniera


Activacin de bobina

En este ejemplo se activara la bobina cuando se pulsa S1 y se deja sin pulsar el S2.
Si pulsamos tambin el S2, la bobina no se activar ya que hemos abierto el circuito.

Lgica desde PLC










4. Set y Reset

Smbolos habituales


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

Lgica desde PLC



Capitulo 4.1

4.1. LOGICA CON COMPARACIONES

1. - Introduccin
Las comparaciones comparar entre dos valores numricos, segn las operaciones
siguientes:

x == y ( x es igual a y )
x <> y ( x no es igual a y )
x < y ( x es menor que y )
x > y ( x es mayor que y )
x <= y ( x es menor o igual que y )
x >= y ( x es mayor o igual que y )

Se dispone de las operaciones de comparacin siguientes:

CMP ? I Comparar enteros (16 Bit)
CMP ? D Comparar enteros dobles (32 Bit)
CMP ? R Comparar nmeros en coma flotante

2. Comparaciones con enteros













3. Comparaciones con doble entero



4. Comparaciones con reales


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


6. Lgica desde PLC

Comparaciones con enteros
La salida booleana se activara cuando la variable MW10 sea mayor de 32


Comparaciones con doble entero

La salida booleana se activara cuando la variable MD12 sea igual a 32
Si ponemos un valor de comparacin constante el valor se rellena anteponiendo L#.











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














Capitulo 4.2

4.2. EJEMPLO LOGICA CON COMPARACIONES


1. - Introduccin

Ejemplo de comparaciones con un nivel analgico.
Haremos una serie de comparaciones para determinar el nivel bajo y muy bajo.













2. Comparacin nivel bajo

El nivel analgico lo leemos en la direccin EW20, esta entrada hay que convertirla de
unidades internas a %, pero como todava no hemos visto las conversiones analgicas,
trabajaremos directamente en %.

El valor ira de 0-100%.


3. Comparacin nivel muy bajo



4. Aplicacin de los niveles
Condicionaremos el arranque y paro de la bomba, segn el nivel.


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









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











Capitulo 5

5. TEMPORIZADORES, CONTADORES Y PULSOS

1. Introduccin temporizadores

Existe un tipo de datos llamados temporizadores. Estos contienen variables de tiempo,
los temporizadores se denotan con la letra T, seguida de un nmero. El nmero de
temporizadores que puede gestionar una CPU depende del modelo.

Valor de temporizacin predeterminado

S5TIME#xH_xM_xS_xMS

- siendo: H (horas), M (minutos), S (segundos), MS (milisegundos);
x son los tiempo que define el usuario.

El valor de temporizacin mximo que puede introducirse es de 9 900 segundos
2H_46M_30S.

Ejemplos:

S5TIME#10S --> 10 segundos
Tambin se puede abreviar la palabra TIME de la siguiente manera:
S5T#1H_10M --> 1 horas y 10 minutos
S5T#1H_10M_11S --> 1 hora 10 minutos y 11 segundos

2. Diferentes tipos

S_IMPULS Temporizador como impulso
S_VIMP Temporizador como impulso prolongado
S_EVERZ Temporizador como retardo a la conexin
S_SEVERZ Temporizador como retardo a la conexin con memoria
S_AVERZ Temporizador como retardo a la desconexin







3. Parmetros


4. Descripcin y ejemplos

Temporizado como impulso

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







Temporizado como impulso prolongado

La salida del temporizado se activa transcurrido el tiempo predeterminado cuando hay un
flanco de activacin de la entrada de arranque S, aunque el estado de seal en la entrada S
se ponga a "0" el temporizador contina en marcha durante el tiempo predeterminado.


Temporizado retardo conexin

La salida del temporizado se activa transcurrido el tiempo predeterminado cuando
permanece activa la entrada de arranque S.






Temporizado retardo conexin con memoria

La salida del temporizado se activa transcurrido el tiempo predeterminado cuando hay un
flanco de activacin de la entrada de arranque S. La salida permanecer memorizada hasta
que se active la entrada R.























Temporizado retardo desconexin

La salida del temporizado se activa cuando hay un flanco de activacin de la entrada de
arranque S. La salida permanecer memorizada hasta que transcurra el tiempo
predeterminado..
















Capitulo 6

TRABAJAR CON BLOQUES DE DATOS (DBs)

6.1- Introduccin bloque de datos

Los bloques de datos, tambin llamados DBs, son reas donde se almacenan datos. Un DB
no contiene instrucciones S7.
Hay dos tipos de bloques de datos:
Bloques de datos globales: A sus datos pueden acceder todos los bloques.
Bloques de datos de instancia: Asociados a un bloque de funcin FB.

En este apartado veremos los bloques de datos globales.


6.2 Definicin de Tabla de datos



Direccin:
Indica la direccin que STEP 7 asigna automticamente a la variable al terminar de
introducir una declaracin.

Nombre:
Se asigna el nombre a cada variable.

Tipo:
Introduzca el tipo de datos de la variable (BOOL, INT, WORD, ARRAY, etc.). Las
variables pueden pertenecer a los tipos de datos simples, a los tipos de datos compuestos, o
bien, a los tipos de datos de usuario.

Valor inicial:

Indique el valor inicial, en caso de que el software no deba tomar el valor predeterminado
del tipo de datos introducido. Todos los valores introducidos deben ser compatibles con los
tipos de datos.
Cuando guarde por primera vez el bloque de datos, el valor inicial ser adoptado como
valor actual de la variable, a menos que defina expresamente su valor actual.
Recuerde que los valores iniciales no pueden cargarse en la CPU.

Comentario:
En este campo puede introducir un comentario para documentar la variable. El comentario
no debe tener ms de 80 caracteres.


6.3- Formato de datos

Datos Simples



Datos compuestos:












6.4- Ejemplo de Bloques de datos

Prepararemos una serie de bloques de datos para comunicar con el WinCC Flexible

En esta primera tabla una serie de bits de tipo booleanos, para las solicitudes que
dibujemos en las pantallas (DB1)




Para la indicacin de tipo booleano generamos esta tabla.(DB2)



Para las indicaciones analgicas de valores con decimales, se prepara esta tabla con
variables de tipo real.



Lo mismo hacemos con las consignas que vamos a dibujar para introducir datos desde
HMI(Wincc Flexible) al PLC.



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



















6.5- Llamada direccionamiento DBs

Ejemplo consulta de un bit

DB1.DBX0.0

Con esta consulta accedemos a DB1 a la direccin 0.0, que corresponde a la marcha
alimentacin bomba 1.


Ejemplo indicacin de un bit

DB2.DBX0.0





Capitulo 7

7.- Ejemplo hidrulico controlado con WIN CC Flexible

7.1.- Desarrollo del PLC Parte I

7.1.1.- Introduccin

En este ejemplo se pretende controlar un hidrulico desde un panel de WinCC Flexible.
En esta parte prepararemos el control de la bomba de alimentacin 1

7.1.2.- Pantallas

Pantalla Hidrulico














Pantalla Condiciones
























7.1.3.- Desarrollo del PLC

Lo primero que tenemos que hacer es rellenar la tabla de smbolos y las DBs de
comunicaciones con el WinCC Flexible.


Tabla de smbolos:
Nota: pinchar en las tablas para agrandarlas










Tabla de datos:

En la DB1 rellenaremos todas las solicitudes para arrancar y parar las bombas.






















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










En la DB3 la utilizaremos para las dos indicaciones de forma analgica, que son la
temperatura y el nivel.




























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





7.1.3.- Desarrollo PLC

Crearemos una funcin (FC10), donde prepararemos el programa para el control de la
bomba 1 de alimentacin

Lo primero que vamos a preparar son las condiciones iniciales de la bomba.
Una bomba de alimentacin puede tener varias condiciones de arranque nosotros vamos a
preparar cuatro.
1.- El tanque tiene que estar lleno, segn el nivel hemos establecido un 20%
2.- La temperatura del aceite tiene que tener una temperatura mnima (5C) para que el
aceite no este espesa.
3.- Un filtro en lnea nos dir si el aceite est sucio.
4.- Tambin tenemos que tener la bomba de recirculacin en marcha para poder arrancar



Seguimos con las condiciones permanentes de la bomba.
Una bomba de alimentacin puede tener varias condiciones permanentes que provoquen la
parada.

Las condiciones tienen que estar a 1, solo con perder cualquiera de ellas perderemos el
resumen e inmediatamente pararemos la bomba
1.- Si el nivel del tanque es muy bajo, para que la condicin sea 1, compararemos el nivel
para que sea mayor de 5%
2.- La temperatura del aceite tiene que ser menor de 90C.
3.- Que no tengamos fallo del automtico.
4.- Que no perdamos la presin.



Lgica de marcha de la bomba.
La solicitud de marcha lo realizamos con el pulsador que dibujaremos en el WinCC, y
realizaremos la marcha siempre que tengamos todas las condiciones iniciales.




Lgica de paro de la bomba.
Resetearemos la marcha con el pulsador y por falta de condiciones permanentes


Indicaciones para reflejar en la pantalla hidrulico



Indicaciones para reflejar en la pantalla condiciones iniciales
Otra forma de comunicar con WinCC, es a travs de entero (Interger).
Solo definimos una variable y podemos tener 16 condiciones, lo nico que hay que tener en
cuenta es que el Plc de Siemens trabaja con los bytes cambiados.






Indicaciones para reflejar en la pantalla condiciones permanentes





Capitulo 17.1

17.-Tratamiento de alarmas

17.1- Desarrollo Plc

Para el desarrollo de las alarmas vamos a generar un nuevo bloque de datos (DB7
AL_HMI)
El tipo que vamos a utilizar es entero (INT), con lo cual con este tag podemos tener 32
alarmas.



Las alarmas se pueden generar de muchas maneras, muchas de ellas suelen ser muy
sencillas.
Por ejemplo las dos primeras que vamos a generar, solo vamos a igualar la entrada digital a
una direccin de la DB7.
Recordar que Siemens trabaja con los bytes cambiados, para ello nosotros tenemos que
hacer el swapeo, esto significa cruzar los bytes.
El bit 0 tiene a direccin DB7.DBX1.0, y el bit 8 su direccin es DB7.DBX0.0.

El fallo de la bomba y el fallo filtro la programaremos igualando la direccin a la alarma,
pero para el fallo de presin lo vamos a generar un tiempo.




Para elaborar este ltimo, aplicaremos un temporizado, si cualquiera de las bombas de
alimentacin est en marcha, si el presostato no da seal a de 20 segundo activaremos una
memoria que nos indicara que hay una fuga de aceite.





Tambin vamos a sustituir la entrada digital E10.7 (Baja presin lnea hco.) por el fallo que
hemos generado, en todos los sitios del programa menos en la indicacin.
Unas de las ms importantes son las condiciones permanentes, ya que nada ms arrancar las
bombas no va a coger presin, como tenamos antes las condiciones se parara las bombas
nada ms arrancar.



Como podis comprobar hemos utilizado un SET para activar esta alarma, es recomendable
utilizar memoria ya que cuando se active la alarma se apagara la bomba.
Si hubiramos utilizado una bobina (=) en muchas ocasiones no se vera en el Wincc est
alarma, ya que en el siguiente ciclo la bobina se pone a 0.

Recomiendo que en casi todas las alarmas se utilic un SET.

Vamos a preparar un acuse de alarmas desde Wincc, este solicitud la utilizaremos para
todas las alarmas que vayamos generando a lo largo del curso.



Capitulo 17.2


17.2- Desarrollo WinCC Flexible

Lo primero que tenemos que hacer es rellenar la variable nueva AL_HMI_00 en la tabla de
variables.





Una vez hemos rellenado la variable hay que abrir la carpeta Gestin de avisos y hacer
doble clic en Avisos de bit, aqu en esta tabla hay que rellenar los textos de la alarma.
Para empezar aadimos la variable AL_HMI_00 en Variables de trigger, por defecto nos
aade el nmero 0 y la direccin DB7.DBX1.0.
Una vez rellenada la primera, seleccionamos un cuadro y pinchamos en el punto negro y
desplazamos hacia abajo para crear los otros 15 bits








Rellenamos el texto, este texto es el que aparecer en pantalla.



Hay que agregar una nueva imagen, donde aadiremos el cuadro de alarmas.




En la parte derecha en el cuadro de herramientas seleccionamos los objetos ampliados,
arrastramos la vista de avisos a la pantalla. Ampliamos la imagen para que cubra toda la
pantalla dejando sitio para el ttulo y los pulsadores.
Tambin colocaremos un pulsador para reset de las alarmas.
























Capitulo 18

18.- USO DE STRINGS

18.1- Introduccin

El STRING es una cadena de caracteres, con un mximo de 254 caracteres, cada carcter
utiliza un byte.
Un STRING consta de un cuerpo 254 Bytes y una cabecera de 2 Bytes (Byte 0 y Byte 1).
El Byte 0 define la longitud mxima y el Byte 1 define la longitud real del STRING.

Ejemplo;
Tipo de dato: Ejemplo Formato:
STRING[2] ED

Byte 0 = Longitud mximo del string = 4
Byte 1 = Longitud real del string = ED =2
Byte 2 = Valor ASCII de E
Byte 3 = Valor ASCII de D


18.2- Ejemplo

Crearemos una nueva tabla de datos (DB8), donde definiremos unas variables de tipo
STRING.
El valor inicial puede ser un carcter o un espacio en blanco, como en el ejemplo.






Vamos a definir una tabla de variables donde definiremos los dos primeros string.
Para ello definiremos 20 bytes, los 10 primeros corresponde al STRING_00 de 0 a 9 y los
10 siguientes corresponde al STRING_01 de 10 a 19 bytes.




En la tabla de variables del WinCC, insertaremos dos campos nuevos definidos como
String.
En la direccin de cada string rellenaremos el inicio de cada string.



Despus de definir las variables, insertaremos dos campos ES, el primero lo vamos a definir
como modo Entrada, lo utilizaremos para introducir caracteres.
La variable que elegiremos es STRING_00 y seleccionaremos el formato Secuencia de
caracteres, la longitud del campo ser 8, que son los mximos caracteres que queremos
reflejar en el campo.

Para el segundo, utilizaremos el STRING_01, colocando las mismas propiedades menos el
modo que ser de Salida.


















Vista en Runtime, donde apreciamos los dos campos creados.

























EJERCICIOS DE REPASO

Ejercicio 1

1.- Inversin de sentido giro de un motor

En este ejercicio sencillo intentaremos aplicar varias cosas aprendidas en este temario.

La idea es definir una remota donde conectaremos el panel que controlara el motor.



Automatizar un motor para el control de dos sentidos.
Conectaremos un panel de mando con tres pulsadores y 2 lmparas.
Lgica del panel:
1.- Pulsador luminoso para marcha adelante y indicacin
2.- Pulsador luminoso para marcha atrs y visualizacin
3.- Pulsador para paro





La conexin de este panel, lo realizaremos a travs de una remota conectada a profibus.

Definiremos unas tarjetas de entradas digitales con direccin E300 y unas salidas digitales
con direccin A300.



2.- Conexin elctrica

Diagrama de fuerza y mando 220 voltios
Para invertir el sentido de giro de un motor trifsico solo es necesario invertir cualquiera de
las fases.



Diagrama del PLC

En las entradas conectaremos los pulsadores del panel y las dos confirmaciones de los dos
contactores.
En la salidas conectaremos dos rels de 24 voltios de continua y dos lmparas




Simbologa de entradas y salidas

SOL_ADEL = E300.0 Solicitud giro adelante motor
SOL_ATRAS = E300.1 Solicitud giro atrs motor
SOL_PARO = E300.2 Solicitud paro motor
AUTO_OK = E300.3 Automtico OK
CONF_ADEL = E301.0 Confirmacin giro adelante motor
CONF_ATRAS = E301.1 Confirmacin giro atrs motor

ORD_ADEL = A300.0 Orden giro adelante motor
ORD_ATRAS = A300.1 Orden giro atrs motor
IND_ADEL = A300.2 Indicacin giro adelante motor
IND_ATRAS = A300.3 Indicacin giro atras motor










































Ejercicio 1.1

1.1.- Desarrollo sin subrutina

Para empezar con el desarrollo de este ejercicio, vamos a definir una red de profibus donde
insertaremos la remota ET200s

Vamos a definir las siguientes tarjetas:
Slot 1 => PM-E DC24V (Ref.6ES7 138-4CA00-0AA0)
Slot 2 => 4DI DC24V ST (Ref.6ES7 131-4BD01-0AA0) E300.0 a E300.3
Slot 3 => 4DI DC24V ST (Ref.6ES7 131-4BD01-0AA0) E301.0 a E301.3
Slot 4 => 4DO DC24V/0,5A ST (Ref.6ES7 132-4BD01-0AA0) A300.0 a A300.3
Slot 5 => 4DO DC24V/0,5A ST (Ref.6ES7 132-4BD01-0AA0) A301.0 a A301.3











El siguiente paso que realizaremos ser rellenar la tabla de smbolos, con todas direcciones
de entradas y salidas, segn la hemos cableado.






























Definimos una funcin nueva (FC14), en esta funcin programaremos las condiciones
iniciales, permanentes, la marcha delante, marcha atrs, el paro y indicaciones.

Condiciones
Vamos a definir un segmento para cada condicin.
Aunque no tenemos ninguna condicin inicial la preparamos por defecto, para tenerlo
preparado.
La nica condicin permanente que tenemos que aadir el contacto del automtico o
guardamotor.

Las marcas que vamos a utilizar la rellenaremos en la tabla de smbolos segn vallamos
necesitando.



















Marcha adelante

Ejecutaremos la marcha adelante una vez tengo las condiciones iniciales (que en esta caso
siempre a 1) y pulsemos a solicitud de adelante, en este caso daremos marcha a travs de la
salida A300.0 dejndola memorizada con un SET y reseteando (RESET) la orden contraria.
Esto es muy importante ya que si activaramos las dos a la vez haramos un corto 400V.
Existen en el mercado contactores en clavados para que no puedan meterse a la vez, pero
este contactor es ms caro que dos normales. Lo normal es encontrarse con contactores
normales.





















Marcha atrs
En la marcha atrs hacemos lo mismo que la anterior.
Normalmente nos interesara tener condiciones de adelante y condiciones de atrs, en este
ejemplo he utilizado solo una condicin inicial y una permanente.


























Paro del motor
Como las rdenes de marcha las hemos memorizado, hay que utilizar algo para
desactivarlas, para ello utilizaremos el pulsador de paro y la perdida de condiciones
permanentes.
Como he comentado en anteriores ocasiones el paro se suele cablear cerrado por seguridad.


























Indicaciones panel

Con las confirmaciones de los contactores indicaremos cuando est en marcha adelante o
marcha atrs.
Como podis comprobar me gusta poner el uno permanente para utilizar varias cosas en el
mismo segmento, es una forma de no utilizar tantos segmentos.
























Ejercicio 1.2

1.2.- Desarrollo con subrutina

Utilizaremos los smbolos ya rellenados en el apartado anterior.

Vamos a preparar las subrutinas, para la subrutina accionamiento dos sentidos de giro
utilizaremos la que disponemos (FB10 SUB_ACCTO_2S).

Pero en este ejercicio vamos a preparar una que se encargu de las condiciones.
Insertamos un bloque de funcin nuevo (FB11 SUB_COND_8).

Preparacin entradas (IN)
Esta subrutina va a tener 8 entradas de condiciones iniciales y 8 de condiciones
permanentes

El valor inicial de todas estas variables la vamos a poner a TRUE, para si no rellenamos
nada en la entrada que por defecto tenga un 1.


Preparacin salidas (OUT)
Definiremos dos salidas que nos indicara el resumen de si todas las condiciones estn a 1







Preparacin de programa
Para la realizacin de la lgica, solo tenemos que poner en serie todas las entras de cada
condicin inicial y si todas estn a 1 activaremos la bobina (RES_CI).
Igual con las condiciones permanentes.





























Ahora crearemos el bloque para el control del accionamiento.
Insertaremos un bloque de funcin nuevo (FB152), para hacer las llamadas a las dos
subrutinas.

Arrastraremos de los elementos de proyecto las dos subrutinas (FB11 SUB_COND y FB10
SUB_ACCTO_2S)

Para convertirla la subrutina en multiinstancia seleccionaremos la subrutina y haremos clic
con el botn derecho, nos aparecer un tabla donde seleccionaremos Convertir en llamada
multiinstancia.
Esta accin nos rellenara en la parte de STAT, el tipo de dato necesario para trabajar.
















Condiciones

Solo vamos a rellenar las condiciones necesarias ya que si dejamos sin rellenar nada en las
patas de entrada, por defecto estarn a 1, necesario para tener el resumen a 1 para
funcionar.
Como para este ejemplo solo tenemos el automatico, solo rellenaremos una condicin
permanente.
En la parte de salida la misma marca que hemos utilizados en el ejemplo anterior.
Nota: A la hora de probar hay que quitar el FC14 del bloque de organizacin para que no se
machaquen las marchas.











Control del Accionamiento
Aqu vamos rellenando todas las entradas y salidas necesarias.
Esta subrutina tiene condiciones para cada movimiento, como para este ejemplo solo hemos
utilizado las mismas condiciones de un sentido y del otro, rellenaremos las dos condiciones
iniciales y permanentes con la misma.
Como solo tenemos dos indicaciones las de mas indicaciones las dejamos sin rellenar.

Вам также может понравиться