Está en la página 1de 7

CURSO: PLC – SIMATIC S7 300 – NIVEL BASICO.

Semana Nro. 03.

Stalin Rafael Hernández.

Tarea de programación lineal y estructurada.

Parte I:

Con la ayuda del asistente de simatic se crea el proyecto. El cual denominamos


Confhard (Configuración hardware) Seleccionamos la CPU 312C y procedemos agregar
los demás periféricos solicitados.

Se selecciona Hardware (doble clic) y esta acción nos lleva a la ventana de HW Config
de Simatic. En esta ventana nos muestra el bastidor de nuestro PLC, al cual
agregaremos con ayuda de la librería los módulos que necesitamos. Para este caso
añadiremos a nuestro PLC de estructura modular: Una fuente de alimentación PS 307
24VDC 5A. Un modulo de 16 entradas y 16 salidas digitales, un modulo para manejar 4
entradas analógicas y por último, un modulo de 4 salidas analógicas. En la siguiente
imagen se muestra nuestra configuración.
Direccionamientos:

Usando la nomenclatura alemana, se definen las entradas y salidas como sigue:

Para entradas digitales:

Para Slot 2:

Byte 124: E124.0 hasta E124.7

Byte 125: E125.0 hasta E125.7

Para Slot 4:

Byte 0: E0.0 hasta E0.7

Byte 1: E1.0 hasta E1.7

Para salidas digitales, se tiene:

Para Slot 2:

Byte 124: A124.0 hasta A124.7

Para Slot 4:

Byte 0: A0.0 hasta A0.7

Byte 1: A1.0 hasta A1.7

Entradas y salidas analógicas:

Para entradas analógicas, se define slot 5: PEW272; PEW274; PEW276 Y PEW278.

Para salidas analógicas, se define slot 6: PAW288; PAW290; PAW292 Y PAW294.


Parte 2:

Programación de arranque, parada y sentido de giro de un motor.

Aprovechando la programación del hardware del CPU 312C de la parte 1 (parte


anterior) partimos de ella y realizamos la definición de la tabla de símbolos como
sigue:

Ahora que tenemos nuestras variables definidas podemos avanzar a la programación


en las diferentes modalidades: Programación lineal y estructurada.

2.1 Programación Lineal:

En el segmento uno: Observamos la programación para que el motor gire de una


manera directa cuando se activa el pulsador “Avanzar” implementada a la entrada
E0.1. Esto hace que la entrada digital del PLC reciba un pulso de arranque (1 lògico-
24Vdc) y por lo tanto entienda que debe poner en marcha el motor a través de la
salida digital A0.0 (Salida a bobina de contactor) Esto último hace que la bobina del
contactor A0.0 se energice y aprovechando esta acción, se programa un contacto N.A
en paralelo al pulsador de arranque. Esto, hace que nuestro sistema quede activo a
través de un enclavamiento (el contacto asociado a la bobina A0.0 dejara su estado de
reposo y pasara a su modo de acción N.C)

Es importante destacar que el pulsador de STOP programado en la entrada digital E0.0


se programa como un contacto normalmente abierto (pues, físicamente es
Normalmente Cerrado). Ya que si llegáramos a programarlo como contacto
normalmente cerrado, la entrada digital correspondiente del PLC al activarla
(entendería un 1 lógico a su entrada) y seguido de esto, el contacto pasaría a su
modalidad activa, es decir, abriéndose y desactivaría por completo el sistema. Esta
acción abriría el lazo (segmento) y la bobina del motor no se energizaría.

Además para proteger el motor de una acción de activar ambos sentidos de giro a la
vez. En el caso de marcha para avanzar (segmento 1) se coloca un contacto NC
asociado a la bobina A0.1 (salida reversa activa) de manera que si se activa el modo
reverso o el motor viene girando de forma inversa, el contacto NC abandona su estado
de reposo y pasa a modo activo -se abre- Y de esta manera inhibe la señal de salida del
PLC para que el motor gire de manera directa. Lo mismo ocurre en el segmento 2, se
coloca el contacto NC asociado a la bobina A0.0 (salida directa activa) para evitar
activar la modalidad de reversa mientras el motor gira de forma directa.
2.2 Programación estructurada:

Para este tipo de programación, se debe definir primeramente el bloque de función


FB1 en el programa. Esta función será llamada desde el programa principal OB1.

Para programar esta función, primeramente definimos el conjunto de variables locales.


Las variables de entrada: stop, pulsador de giro directo y de giro inverso y las variables
de salida (M_FW y M_RV)

Luego se procede a programar el bloque de función utilizando el lenguaje KOP


(escalera) como se muestra a continuación:
Es importante destacar, que la lógica empleada de programación dentro de este
bloque de función es la misma que se siguió en la programación lineal (parte 2.1) Solo
que, en este caso se programan los segmentos: segmento 1 y segmento 2 (sentido de
giro directo y sentido de giro inverso, respectivamente) dentro de un bloque de
función, y usando el nombre y dirección de las variables locales. En la programación
del bloque OB1 solo encontraremos la llamada del bloque de función FB1, el cual
interactúa con el bloque de datos DB1 para leer y escribir (modificar/actualizar) los
datos definidos, según la función programada. A continuación, se muestra el arranque
del motor para ambos sentidos (directo e inverso).

Sentido de Giro Directo:


Sentido de Giro Inverso:

En esta ultima forma, se demuestra que en la programación estructurada en el bloque


de organización 1 (OB1) se evita la programación extensa (añadir varios segmentos) lo
cual puede resultar confuso y tedioso para el programador a la hora de escribir
soluciones automatizadas para problemas industriales grandes y complejos. Una de las
diferencias relevantes de la programación estructurada contra la lineal, es que la
primera te permite dividir en varias partes un problema (ser practico, divide y
vencerás) y a su vez no redundar tantas líneas de código. Haciendo que sea fácil la
búsqueda y corrección de un error en el código, y factible a la hora de agregar o
ampliar (actualizar) el programa en el PLC.

También podría gustarte