Você está na página 1de 35

MICRO PLCs

UNIDAD DIDCTICA 3

Curso:
Micro PLCs
Mdulo III: Programacin de Micro PLCs
Unidad Didctica 3: Caractersticas particulares de programacin
Unidad Didctica 3: Caractersticas particulares de programacin
1

MICRO PLCs

Unidad didctica nmero 3


CARACTERSTICAS PARTICULARES DE PROGRAMACIN
NDICE
Pg
Objetivos...................................................................................................................................

Contenidos...............................................................................................................................

Introduccin.............................................................................................................................

1 Variables...............................................................................................................................

1.1 Direccionamiento de variables...............................................................................

2 Lenguajes de programacin..................................................................................................

10

2.1 Lista de instrucciones.............................................................................................

10

2.2 Grafcet....................................................................................................................

11

2.3 Texto estructurado..................................................................................................

11

2.4 Diagrama de contactos LD.....................................................................................

12

2.5 Lenguaje de funciones lgicas FBD........................................................................

13

2.5.1 Funcin NOT............................................................................................

14

2.5.2 Funcin OR..............................................................................................

15

2.5.3 Funcin AND............................................................................................

16

2.5.4 Funcin NOR............................................................................................

17

2.5.5 Funcin NAND..........................................................................................

19

2.5.6 Funcin XOR...........................................................................................

20

2.5.7 Aplicaciones de las funciones lgicas......................................................

21

2.6 Caractersticas particulares de la programacin. Operaciones..............................

22

2.6.1 Marcas.....................................................................................................

23

2.6.2 Temporizadores........................................................................................

23

2.6.2.1 Temporizador con retardo a la activacin..................................

24

Unidad Didctica 3: Caractersticas particulares de programacin


2

MICRO PLCs

2.6.2.2 Temporizador con retardo a la desactivacin............................

25

2.6.2.3 Temporizador con retardo a la activacin con memoria............

26

2.6.3 Contadores...............................................................................................

27

3 Instalar LOGO! V3.0..............................................................................................................

29

Glosario unidad didctica 3.....................................................................................................

33

Unidad Didctica 3: Caractersticas particulares de programacin


3

MICRO PLCs

Objetivos
-

Reconocer las indicaciones de entradas y salidas de los autmatas programables.


Conocer los diferentes mtodos y lenguajes que existen para programar autmatas
programables.
Distinguir las funciones lgicas empleadas en la programacin de controladores
programables.
Conocer los operadores bsicos necesarios para programar.
Saber completar ejercicios de iniciacin a la programacin.

Contenidos
-

Variables
Lenguajes de programacin. Textuales y grficos.
Funciones lgicas bsicas.
Operadores bsicos de programacin.
Temporizadores.
Contadores.
Ejercicios.

Introduccin
Con esta unidad didctica se conocern los procedimientos ms comunes para realizar
programaciones en controladores programables; asimismo se conocern los operandos bsicos
que posteriormente permitirn realizar ejercicios de aplicacin.
Los lenguajes de programacin a los que se dedicar mayor atencin son LD, o lenguaje de
contactos, por su parecido a los esquemas de rels utilizados en automatismos cableados y FBD o
lenguaje de funciones lgicas, por emplear posteriormente un simulador (Programador, o
microcontrolador virtual) que utiliza este tipo de lenguaje.
En esta unidad se conocern los procedimientos de programacin y sus comandos, pero
ser en la unidad 4, en la que se desarrollarn ejercicios de aplicacin usando los conocimientos
de esta unidad y anteriores.

0.0 0.1 0.2 0.3

0 4 0 5 0.6 0.7

1.0 1.1

N L1

INPUT

SF
RUN
STOP
0.0 0.1 0.2 0.3 0.4 0.5 0.6 0.7

1.0 1.1 1.2 1.3 1.4 1.5

Unidad Didctica 3: Caractersticas particulares de programacin


4

MICRO PLCs

1 Variables
Cuando planteamos iniciar una programacin con Micro PLCs solemos coger una
instalacin de lgica cableada que sabemos que funciona y la convertimos a lgica programada
mediante un lenguaje de programacin determinado. Utilicemos el esquema de puesta en marcha
y parada de un motor:

L1

11

S0
12
13

S1

13

KM 1
14

14

A2
A1

L2

KM 1

En l observamos dos captadores S0 (pulsador de paro) y S1 (pulsador de marcha). El


primero est normalmente cerrado y el segundo est normalmente abierto, y slo se cierra en el
momento de activacin; y como actuador, un contactor denominado KM1. Si sta instalacin la
queremos realizar con un autmata, el cableado podra ser ste:

S0

S1

I1

I2
Entradas

I3

Salidas
Q1

Q2

Q3

A2

KM 1
A1

Comprobamos que el pulsador de paro S0 sigue estando cerrado y el pulsador de marcha


S1 sigue estando abierto; en cuanto al contactor KM1 se conecta a una salida del microcontrolador.
El funcionamiento de los dos procedimientos es en teora el mismo, si la programacin del
segundo as lo indica, es decir, pulsador de marcha activa al contactor (y ste al motor) y el
pulsador de paro detiene el proceso.

Unidad Didctica 3: Caractersticas particulares de programacin


5

MICRO PLCs

Veamos la programacin que tendra que cumplir el microcontrolador para que el


funcionamiento fuera igual que el primer esquema. Para ello utilizaremos el lenguaje de
programacin denominado LD, del que hablaremos con detalle ms adelante y que utiliza una
simbologa parecida a los contactos de rels:

I1

I2

Q1

Q1
Donde:
I1 equivale al pulsador de paro S0
I2 al pulsador de marcha S1
Q1 al contactor KM1.
Como S0 est normalmente cerrado, podemos decir que para que Q1 se active, I2 se tiene que
cerrar:

S0

S1

I1

I2
Entradas

I3

I1

I2

Q1

Salidas
Q1

Q2

Q3

A2

KM 1
A1

Q1

Por tanto:
I1 NO ES el pulsador de paro S0, sino el terminal o conector que une el pulsador de paro al
autmata y por donde el pulsador le da informacin de su estado (abierto o cerrado) a ste.
I2 NO ES el pulsador de marcha S1, sino el terminal que une el pulsador de marcha al autmata y
por donde el pulsador de marcha da informacin de su estado (abierto o cerrado) al autmata.
Q1 NO ES el contactor KM1, sino el terminal al cual est conectado el contactor KM1 y ste
terminal o conector dar corriente para activar al contactor si se cumple la programacin
establecida.
Se puede decir que I1 I2 no son contactos fsicos, sino que son consultas de los estados
de los captadores, es decir, comprueban en todo momento el estado del captador (p.ej. abiertos o
cerrados).
Unidad Didctica 3: Caractersticas particulares de programacin
6

MICRO PLCs

Otra cosa muy importante a destacar, es la diferencia de uso de los captadores en lgica
cableada respecto a los de lgica programada. Recordando el primer esquema, exista un pulsador
de paro S0 que estaba cerrado, es decir, pasaba en todo momento la corriente a travs de l. En
programacin esto ya no es preciso, es decir, no tiene sentido estar aplicando permanentemente
corriente al autmata, lo nico que tendramos que hacer es ajustar la programacin. Recuerda
que las entradas (I1, I2...) no son contactos sino consultas; la programacin consistira en: si la
entrada I1 que pertenece al pulsador de paro, cambia de estado, la salida Q1 se desactiva. No
importando realmente si el pulsador S0 estaba abierto o cerrado.
Se observa que el contacto cerrado no est en el pulsador sino en la Programacin.

S0

S1

I1

I2
Entradas

I2

I1

I3

Q1

Salidas
Q1

Q2

Q1

Q3

A2

KM 1
A1

Si el pulsador S0 cambia de estado, su programacin tambin lo har:

S0

S1

I1

I2
Entradas

I3

I2

I1

Q1

Salidas
Q1

Q2

A2

KM 1

Q3

Q1

A1

Una Variable es una parte del programa que puede cambiar de estado, por ejemplo I1, I2,
I3, Q1, Q2, etc.
Tambin podemos decir que en programacin, si un contacto est cerrado tiene bit 1
y si est abierto que tiene bit 0.

Unidad Didctica 3: Caractersticas particulares de programacin


7

MICRO PLCs

En el ejemplo anterior I1 y Q1 son variables que cambian de estado (abiertos o cerrados),


ambas son distintas ya que I1 es una variable de entrada y Q1 es una variable de salida.
Una labor importante en programacin es saber identificar las variables, es decir, la
equivalencia entre estas variables y los terminales de conexin del autmata.
1.1 Direccionamiento de variables
Hablamos de direccionamiento, cuando por ejemplo un terminal del autmata (entrada I
salida Q) utiliza un trozo de memoria para almacenar el estado de sta variable, es decir, si la
entrada I1 est cerrada, esa informacin se ha de guardar en algn lugar de la memoria del
autmata.
Normalmente la direccin de una variable se hace como mnimo con tres datos
Primer dato: tipo de variable, entrada, salida, marca, etc.
Segundo dato: byte al que pertenece.
Tercer dato Bit: al que pertenece.
Por ejemplo I0.4; nos referimos a una entrada que pertenece al byte 0, bit 4.
Por ejemplo Q2.0; nos referimos a una salida que pertenece al byte 2, bit 0.
Tipos de direccionamiento
-

Direccionamiento fijo, es cuando la direccin de byte y de bit es siempre la misma, esto


ocurre en Micro PLCs.

Direccionamiento variable, es cuando la direccin de byte y de bit se puede programar a


voluntad. Autmatas medianos y grandes.

En pequeos autmatas, en los que el nmero de entradas y salidas est limitado, la direccin
de sus variables de entrada, salida, marcas, etc, recurre simplemente a indicar el tipo de variable y
el nmero:
Observamos en el grfico que las entradas (I1,
I2, I3....), estn perfectamente asociadas a unos
terminales concretos, lo mismo que las salidas (Q1,
Q2, Q3....), con lo cual el programador sabe qu
terminales se utilizarn para conectar los captadores
y actuadores.
(La designacin de I como entradas y Q de
salidas son los identificadores a usar segn la norma
IEC 1131-3. No todas las marcas la utilizan o no en
todos sus equipos, aunque se tiende a generalizar)

Unidad Didctica 3: Caractersticas particulares de programacin


8

MICRO PLCs

En autmatas medianos o grandes la designacin de variables suele utilizar direcciones de


byte y bit, ms aun si son modulares, ya que pueden coincidir las direcciones de byte con los
mdulos.

I 1.2

Q 2.0

Ejemplo:

I 1.2 indica que es la variable


de entrada (I) nmero 2 situada en el
mdulo nmero 1 del autmata. (Entrada I,
byte 1, bit 2)

Q 2.0 indica que es la


variable de salida nmero 0 en el mdulo
nmero 2. (Salida Q, byte 2, bit 0).

CPU
Este otro controlador es compacto, pero se
observa en sus entradas y salidas que utiliza
direccionamiento de byte y bit (I0.0; I0.1; Q0.0;
Q0.1...).

SALIDAS SALIDAS

0.0 0.1 0.2 0.3

0 4 0 5 0.6 0.7

1.0 1.1

N L1

INPUT

Esto nos puede indicar que aunque


compacto, puede ser ampliable hasta una
determinada cantidad de entradas y salidas.
(siempre estos datos los encontraremos en la
documentacin tcnica de cada aparato).

ENTRADAS INPUTS (I)

STOP RUN
TERM

SF
RUN
STOP

SALIDAS OUTPUTS (Q)


0.0 0.1 0.2 0.3 0.4 0.5 0.6 0.7

ste ltimo microcrocontrolador utiliza una


nomenclatura de entradas y salidas sencilla, es decir, sin
indicar byte o bit.

I 1 I 2 I 3 I4

I5 I6 I7 I8

1.0 1.1 1.2 1.3 1.4 1.5

I 9 I 10

N L1

INPUT

Este aspecto nos puede indicar que el


microcontrolador no es ampliable y que el nmero total
de entradas y salidas son las que se ven. Por tanto para
programar las entradas y salidas, solo se indica si es E/S
y el conector correspondiente. I 5 , entrada 5. Q 6,
Salida 6.

SF
RUN
STOP
Q1

Q2

Q3

Q4

Q5

Q6

Q7

Nota: Sirvan stos datos SLO de referencia, ya que cada fabricante de autmatas puede
designar a sus variables con otros formatos.

Unidad Didctica 3: Caractersticas particulares de programacin


9

MICRO PLCs

2 Lenguajes de programacin
Cuando se tiene que programar un autmata programable para que este realice una funcin
automtica determinada, el usuario dispone de unas herramientas que van a permitir disear,
comprobar, modificar, la aplicacin que deber realizar el PLC. El lenguaje de programacin
maneja el juego de instrucciones que realizar las funciones lgicas y de clculo de la unidad
central de proceso.
Son cada vez ms las marcas de autmatas programables que se acogen a una norma
(IEC 1131-3) que regula los procedimientos de programacin en PLCs. Esto supone que se crea
un estndar comn, consiguiendo que la labor de programacin no sea desconocida entre modelos
de diferentes firmas.
La utilizacin de entornos grficos en unidades de programacin, como por ejemplo un PC
(dibujos orientativos, vietas, ayudas, etc) ha hecho de la programacin un acto menos tcnico y
ms fcil que los programadores antecesores.

De los cinco lenguajes que define el estndar, tres son en forma grfica y dos en forma
textual; haremos hincapi en dos de ellos, ambos grficos, uno por su parecido a los esquemas
elctricos y otro por su auge en los ltimos tiempos. En definitiva los cinco lenguajes son:
2.1 Lista de instrucciones (IL, Instruccin List)
Este lenguaje es adecuado para personas que no tienen gran conocimiento en esquemas
elctricos, ya que la programacin se realiza de forma textual.
Realmente es un lenguaje que se aproxima a la forma de operar de la CPU, y utiliza
caracteres alfanumricos que definen las lneas de operaciones lgicas. Asimismo permite insertar
comentarios informativos; esto supone que cada lnea de programacin puede ser explicada en el
propio programa, y que posteriormente podr se impreso.
Un ejemplo de programacin en lista de instrucciones (IL) sera el siguiente:

Unidad Didctica 3: Caractersticas particulares de programacin


10

MICRO PLCs

NETWORK 1: Puesta en marcha de un motor con proteccin

Donde:

LD
O
A
AN
=

Primera lnea de
programacin

Programacin

Marcha
Motor nmero 1
Paro
Rel de proteccin
Motor nmero 1

NETWORK 1:
LD
O
A
AN
=

Puesta en marcha de un motor con proteccin

Marcha
Motor nmero 1
Paro
Rel de proteccin
Motor nmero 1

Comentarios a la primera
lnea de programacin
Es importante destacar que los softwares actuales permiten realizar programas en
diferentes lenguajes, lo que facilita la labor del programador que puede elegir y cambiar de
lenguaje a conveniencia.
2.2 Grfico secuencial de funciones (Grafcet)
El Grafcet es un lenguaje grfico que representa las secuencias del programa en forma de
diagrama. Para conocer este lenguaje, es necesario tener conocimientos en circuitos secuenciales,
concepto que se escapa a los requerimientos del curso.

Grafcet
2

2.3 Texto estructurado (ST, Structured Text)


Es un lenguaje de alto nivel tipo Pascal o Basic, utilizado para programaciones complejas
por lo que su conocimiento tambin se sale de los objetivos de este curso.

Unidad Didctica 3: Caractersticas particulares de programacin


11

MICRO PLCs

2.4 Diagrama de contactos (LD, Ladder Diagram)


El lenguaje grfico LD, es sin duda el ms utilizado para programar autmatas
programables, ya que la simbologa utilizada, es parecida a los esquemas elctricos empleados en
instalaciones elctricas con rels o contactores. La utilizacin de entornos grficos, hace que la
programacin se pueda enriquecer con textos complementarios explicativos, como suceda en el
lenguaje por lista de instrucciones IL.

Lnea 1: Puesta en marcha de un motor


I0.1

I0.0

Q0.0

Q0.0

Lnea 1: Puesta en marcha de un motor


Pulsador
marcha

Pulsador
paro

Motor 1

Motor 1

Observamos en el grfico anterior dos formas de programar; en la primera las variables


toman su direccin de variable (I0.0; Q0.0; I0.1), pero en la segunda la descripcin de las
variables es sustituida por un nombre que las identifica. Esto sirve para facilitar ms el proceso de
programacin.
En este lenguaje de programacin los smbolos (que son elementos de programacin
aunque sean parecidos a esquemas elctricos) ms usados son:
Contacto abierto
Contacto cerrado
NOT

Negacin
Bobina directa
Bobina inversa

Activacin de bobina en SET

Desactivacin de bobina en RESET

Unidad Didctica 3: Caractersticas particulares de programacin


12

MICRO PLCs

Existen otros smbolos dentro de este lenguaje que representan operaciones como,
temporizacin, contaje, transferencia, suma, resta, multiplicacin, reloj en tiempo real, etc; veamos
un ejemplo:

Temporizador 1
IN

20 segundos

TON

PT

En el grfico apreciamos como una entrada puede activar a un temporizador. En este caso
si el bit de la entrada antecesora al temporizador es 1 y permanece en esa posicin 20 segundos la
salida se activar, es decir tendr bit 1.
2.5 Lenguaje de funciones lgicas (FBD, Function Block Diagram)
El lenguaje grfico FBD es parecido a los esquemas utilizados en electrnica digital,
utilizando funciones lgicas. Tambin se le pueden insertar textos explicativos.
Veamos un ejemplo de una programacin sencilla:

I1

>1

&
Q

I2

De la cual conocemos las entradas (I1 e I2) y la salida (Q), sin embargo lo que quieren decir
esas cajas con esos smbolos en su interior ( 1; &) lo desconocemos. Podemos decir que su
programacin equivalente en lenguaje LD es la que se muestra a continuacin. Esto quiere decir
que el autmata har lo mismo tanto si se programa de una manera (FBD) cmo de otra (LD), son
dos lenguajes diferentes, aunque los ms usados:

I1

I2

Para comprender el lenguaje de programacin FBD hay que conocer las funciones
lgicas bsicas. Se describirn a continuacin y tienen como base el lgebra de Boole.
Unidad Didctica 3: Caractersticas particulares de programacin
13

MICRO PLCs

Antes de explicar las funciones lgicas, pensemos que en esta caja se realizar una
operacin y a su salida habr un resultado, pongamos un ejemplo:

x5
Entrada

Salida

En la caja se indica multiplicado por 5, por tanto si la entrada fuera 4, la salida sera 20:

x5
4

20

2.5.1 Funcin lgica NO o inversin NOT


La salida toma el valor contrario a la entrada. S =
Entendemos por salidas o entradas a variables que pueden cambiar de estado (0 1)

KA 1

KA 1

Q=
Funcin NOT con pulsador

Funcin NOT con rel

Simbologa puerta NOT

Recuerda que:
Es un pulsador que puede estar abierto o cerrado:
Es una lmpara:
Es un rel o contactor auxiliar:
Es un contacto cerrado del rel auxiliar:
Ejemplo:
Qu valor tomar la salida Q en una puerta lgica NOT, si la entrada es 1?

1
I=1

Q=0

Unidad Didctica 3: Caractersticas particulares de programacin


14

MICRO PLCs

Como la salida toma el valor contrario a la entrada ser 0.


Ejemplo:
Qu valor tomar la salida Q en una puerta lgica , si la entrada es 0?

1
I=0

Q=1

En este caso la salida es 1.


Tabla de la verdad
Es una representacin grfica del resultado que tendr la variable de salida, realizando
todas las posibles combinaciones con las variables de entrada.
Tabla de la verdad de la Funcin NOT:
a

Q=

La tabla de la verdad viene a decir: cul ser la salida, si la entrada es 0, cul ser la
salida si la entrada es 1.
2.5.2 Funcin O, OR.
La salida tendr valor 1, cuando cualquiera de las variables de entrada tenga valor 1. Se le
llama suma lgica y para tres variables se expresa: S = a + b + c. Equivale a un circuito elctrico
con componentes en paralelo.

a
b
c

KA 1

>1

KA 1

Circuito OR

Funcin OR con rel

Simbologa puerta OR

Ejemplo:
Qu valor tomar la salida Q en una puerta lgica OR con tres entradas (a,b,c), si el valor de
estas son: a=1, b=0 y c=0?

Unidad Didctica 3: Caractersticas particulares de programacin


15

MICRO PLCs

I1= 1

>1

I2 = 0

Q=1

I3 = 0

Tomar valor de 1 porque con esta puerta lgica cualquier valor 1 en la entrada dar valor 1 en la
salida.
Tabla de la verdad de la Funcin OR con tres variables:

a
b
c

Si observamos el circuito elctrico y la tabla


de la verdad, comprobamos que la salida Q se
activar siempre que alguno de los tres interruptores
(a, b, c) se cierre, ya que estn los tres
conectados en paralelo. Slo en caso de que
ninguno est activado, la salida no lo estar.

Q=a+b+c

2.5.3 Funcin Y, AND


La salida tendr valor de 1, cuando todas las variables de entrada tengan valor 1. En caso
de que alguna de ellas no lo tenga, la salida no tendr valor 1. Se le llama producto lgico, y para
tres variables se expresa: S = a b c. Equivale a un circuito elctrico con sus componentes
conectados en serie.

&

KA 1

c
Q

KA 1

Circuito AND

Funcin AND con rel

Unidad Didctica 3: Caractersticas particulares de programacin


16

Simbologa puerta AND

MICRO PLCs

Ejemplo:
Qu valor tomar la salida Q en una puerta lgica AND con tres entradas (a, b, c,) si el valor de
estas son a=1, b=1 y c= 0?

I1 = 1

&

I2 = 1

Q=0

I3 = 0
Tomar el valor de 0 porque en una funcin AND han de estar todas las variables de entrada con
valor 1 para que la salida tenga ese valor.
Tabla de la verdad de la funcin AND con tres variables:

Si observamos el circuito elctrico y la tabla


de la verdad, comprobamos que la salida Q
nicamente se podr activar cuando los tres
interruptores asociados en serie estn activados. En
caso de que alguno de ellos no lo est, la salida no
se activar nunca.

Q=abc

2.5.4 Funciones lgicas inversas: NO-O; NOR


La funcin inversa NOR realiza la misma operacin que la funcin OR pero invierte el valor
del resultado.
S= a + b + c. Es una funcin inversa a la funcin OR.

KA 1

>1

Q
KA 1

Circuito NOR

Funcin NOR con rel

Unidad Didctica 3: Caractersticas particulares de programacin


17

Simbologa puerta NOR

MICRO PLCs

Ejemplo:
Qu valor tomar la salida Q en una puerta lgica NOR con tres entradas (a, b, c), si el valor de
stas son a=1, b=1, c=0?

I1 = 1

>1

I2 = 1

I3 = 0
Tomar el valor de 0 porque decimos que la funcin NOR invierte el valor del resultado de la
funcin OR que en este caso sera 1.
Otro ejemplo Qu valor tomar la salida Q en una puerta lgica NOR con tres entradas (a, b, c), si
el valor de stas son a=0, b=0, c=0?

I1 = 0

>1

I2 = 0

I3 = 0
Tomar el valor de 1 porque la funcin NOR invierte el valor del resultado de la funcin OR que
en este caso sera 0.
Tabla de la verdad de la funcin NOR con tres
variables:

Si observamos el circuito elctrico y la tabla


de la verdad, comprobamos que la salida Q
nicamente se podr activar cuando los tres
interruptores asociados en serie estn sin activar en
su posicin de cerrados. En caso de que alguno
de ellos se active y abra, la salida no se activar.

Unidad Didctica 3: Caractersticas particulares de programacin


18

Q=a+b+c

MICRO PLCs

2.5.5 Funciones lgicas inversas: NO-Y, NAND


La funcin inversa NAND realiza la misma operacin que la funcin AND pero invierte el valor del
resultado.
S = a b. c

Es una funcin inversa a la funcin AND.

a
b

&

KA 1

Q
KA 1

Circuito NAND

Simbologa puerta NAND

Funcin NAND con rel

Ejemplo:
Qu valor tomar la salida Q en una puerta lgica NAND con tres entradas (a, b, c), si el valor de
estas son a=1, b=1, c=0?

I1 = 1

&

I2 = 1

Q=1

I3 = 0

Tomar el valor de 1 porque decimos que la funcin NAND invierte el valor del resultado de la
funcin AND que en este caso sera 0.
Tabla de la verdad de la funcin NAND con tres variables:

a
b
c

Si observamos el circuito elctrico y la tabla


de la verdad, comprobamos que la salida Q est
siempre activada en condiciones de reposo.
nicamente se desconectar cuando los tres
interruptores (que estn normalmente cerrados y
asociados en paralelo) se activen, que en su caso
ser abrirse.

Unidad Didctica 3: Caractersticas particulares de programacin


19

Q=abc

MICRO PLCs

2.5.6 Funciones lgicas especiales OR-Exclusiva, XOR


En esta funcin especial XOR, la salida Q tomar valor de 1 cuando una de sus dos
variables de entrada tenga un valor 0 1 y el valor de la otra en ese instante tenga un valor
contrario, ya que esta funcin slo tiene dos variables de entrada. En caso de que coincidan las
dos variables (1,1) (0,0), la salida ser de valor 0. S = a b

=1
a

Simbologa puerta XOR

Circuito XOR
Ejemplo:

Qu valor tomar la salida Q en una puerta lgica XOR con dos entradas (a y b), si el valor de
estas son a=1, b=1?

I1 =1

=1
Q=0

I2 = 1

Tomar el valor de 0 porque decimos que la funcin XOR no tiene salida con valor 1 si
coinciden los valores de las variables de entrada.
Tabla de la verdad de la funcin XOR
Si observamos el circuito elctrico y la tabla de la verdad, la salida Q slo tomar valor de
activado cuando no coincidan a y b activadas o desactivadas.
b

Q
b

S=ab

Unidad Didctica 3: Caractersticas particulares de programacin


20

MICRO PLCs

2.5.7 Aplicaciones de las funciones lgicas


A continuacin vamos a realizar un ejemplo de las aplicaciones que pueden ejercer las
combinaciones lgicas en programacin de Micro PLCs, concretamente con funciones AND (&) y
funciones OR (1).
Primero observemos este circuito elctrico:
Tiene tres elementos de mando o entradas, A, B y C, que
pueden ser pulsadores o interruptores.
Su misin es activar la lmpara final.
Cada elemento de mando (A, B y C) se puede activar
independientemente por separado.
La pregunta es cul es la combinacin que han de tener
los pulsadores para que la lmpara se active?
Podemos hallarle la tabla de la verdad:

LMPARA

A
C
B

De esta tabla de la verdad podemos obtener varias conclusiones:


a) Siempre que la entrada C est activada, la salida tendr valor de 1, independientemente
del estado que tomen A y B.
b) Siempre que A y B = 1, no importa el valor de C, la salida ser 1.
c) Este circuito va a tener en ms ocasiones la salida activada que desactivada, segn las
posibilidades de combinacin de las entradas.
Ahora se realizar el mismo circuito con funciones lgicas -Programacin FBD - y
programacin con lenguaje de contactos o LD:

I1
A
C

I2

Q
Esquema elctrico

&

I2

I1

>1

Q0

I3

I3
Programacin con lenguaje FBD

Programacin con lenguaje LD

Los tres sistemas de representacin equivalen al mismo circuito.


Unidad Didctica 3: Caractersticas particulares de programacin
21

MICRO PLCs

Ya que:

I1
A
C

&

I2

>1

I3
y que en realidad equivale a:

&
>1

C
En programacin FBD tambin existen operadores que realizan funciones especiales como
las comentadas para el lenguaje LD, como temporizadores, relojes, contadores, etc.
2.6 Caractersticas particulares de la programacin. Operaciones.
Cuando la programacin a realizar es demasiado grande, algunos softwares de
programacin permiten trocear el programa de usuario en pequeos programas para que la tarea
de programacin, revisin, puesta en marcha, depuramiento de errores, etc, sea menos laboriosa.
An as deber de existir un programa principal como eje central; a los pequeos trozos de
programas se les llama subrutinas.
Algunos Micro PLCs permiten programar con subrutinas, aunque este hecho se tiende a
generalizar por los fabricantes.
Programa
principal

Subrutinas
nivel 1

Subrutinas
nivel 2

Subrutinas
nivel 3...

Programa principal y subrutinas


Unidad Didctica 3: Caractersticas particulares de programacin
22

MICRO PLCs

2.6.1 Marcas
Las marcas son como rels auxiliares dentro del autmata, es decir, es el resultado de una
operacin que termina en activar o desactivar una salida internamente (M); por tanto una marca es
una salida no visible aparentemente, pero que juega un papel muy importante en la
programacin.
Ejemplo, en una programacin, el resultado lgico de sta puede ser que la salida del
microcontrolador Q1 se active, conectando lo que hubiera cableado a ella (por ejemplo una
lmpara), pero qu ocurre si el resultado de la programacin activa una salida invisible pero
totalmente operativa? Decimos invisible porque no es necesario que se vea aunque s que exista.
Esa salida interna es una marca.
La simbologa de las marcas es idntica a las salidas visibles Q, slo que el identificador
es una M en lugar de una Q. Tambin pueden aparecer directas o negadas:

M
Marca

En este ejemplo observamos que tiene un


comportamiento parecido a las salidas aunque
fsicamente no veremos nada activado en el autmata
programable. Una marca tambin es una variable, slo
que no tiene terminales exteriores como podran ser
entradas (I) o salidas (Q).

Marca negada

I1

I2

M1

2.6.2 Temporizadores
Un temporizador realizar una accin, en funcin de un tiempo programado.
Tcnicamente diremos que activar o desactivar (bit 1 o bit 0) una variable en funcin de un
tiempo predeterminado y por tanto programable. Observemos el cronograma:

Pulsador
de activacin

1
0

Temporizador

Tiempo Programado
1

Salida

Unidad Didctica 3: Caractersticas particulares de programacin


23

MICRO PLCs

Funcionamiento: al presionar el pulsador o interruptor de activacin (dejndolo presionado),


el temporizador comienza a contar un tiempo que hemos debido de preseleccionar antes; cuando
el tiempo concluye, el temporizador cambiar a un bit de valor; de 1 a 0 de 0 a 1, por ejemplo
un contacto abierto pasa a cerrado; activando lo que hubiera conectado a ste. (una salida Q, una
marca M...)
Atendamos a estos dos tipos de
representacin; en primer lugar observamos que
un contacto I1 es la entrada que activar al
temporizador; si esta entrada est activada (con
valor 1) 20 segundos o ms, la salida se
activar, es decir, la salida Q1 tendr bit 1, lo
que fsicamente significar que el autmata
activar lo que haya conectado al terminal de
salida Q1.
En el segundo caso el funcionamiento es
el mismo, la diferencia reside en que el
temporizador cuando termina de contar activa
un bit en un contacto suyo, es decir, este
contacto no es de I1, I2..Q3..., sino que es del
propio temporizador.

I1

Temporizador 1
IN

20 segundos

I1

Q1

TON

PT

Temporizador 1
IN

TON

El resultado es el mismo, activa la salida


Q1.

20 segundos

PT

Temporizador 1

Q1

Tipos de temporizadores:
2.6.2.1 Temporizador con retardo a la Activacin (TON)
Este temporizador necesita que la entrada de activacin est permanentemente activada
para activar y habilitar al temporizador. Es el mismo que el ejemplo inicial.
Pulsador
de activacin

1
0

Temporizador

Tiempo Programado
1

Salida

Cronograma del temporizador con retardo a la activacin

Unidad Didctica 3: Caractersticas particulares de programacin


24

MICRO PLCs

El temporizador, al cumplir el tiempo de activacin programado, activa la salida, pero si la


entrada es desactivada antes de que el tiempo programado haya concluido, la salida del
temporizador tambin caer.
A partir de ahora se representarn los tipos de temporizadores en lenguaje de
programacin LD y FBD. La simbologa de este segundo lenguaje es parecida al lenguaje LD, sin
embargo se representar la simbologa del simulador que ms adelante nos servir para realizar
prcticas.

Temporizador 1
TON
IN

I1

Tiempo

Temp_1
I1

IN

Tiempo

PT

Q1
T

Q1

Temp_1

Lenguaje LD

Lenguaje FBD

Representacin del temporizador con retardo a la activacin en dos lenguajes de programacin

2.6.2.2 Temporizador con retardo a la desactivacin (TOF)


En este caso al activar la entrada, la salida tambin se activa; y una vez la entrada no
est activada, comienza el tiempo preseleccionado que culminar con la desactivacin de la salida.
Es decir, si mantenemos la entrada presionada x tiempo, la temporizacin no comenzar hasta que
soltemos o desactivemos la entrada.

Pulsador
de activacin

Temporizador

Tiempo Programado
1

Salida

Cronograma del temporizador con retardo a la desactivacin

Unidad Didctica 3: Caractersticas particulares de programacin


25

MICRO PLCs

Programacin y simbologa:

Temporizador 1
TOF
IN

I1

Temp_1
I1

IN

Q1

PT

Tiempo

Tiempo

Q1

Temp_1

Lenguaje LD

Lenguaje FBD

Representacin del temporizador con retardo a la desactivacin en dos lenguajes de programacin

Si el temporizador cuenta con una entrada (adems de la de activacin y la de consigna de


tiempo) denominada R (reset), indica que si es activada, todo se pone a cero, la temporizacin y
la salida. En el ejemplo, si la entrada I2 es activada el temporizador no contar y la salida no se
activar.

Temp_1
I1

IN

I2

Tiempo
2.6.2.3

Q1

Temporizador
con retardo a la activacin con memoria (en algunos Micro PLCs)

Esta variante, activa la salida pasado un tiempo programado; la diferencia con respecto al
temporizador con retardo a la activacin, es que ste no necesita que la entrada est activada todo
el proceso, se habilita con un solo impulso. Para poner a cero la salida, se utiliza la entrada reset
( R ).
Pulsador
de activacin

1
0

Temporizador

Tiempo Programado
1

Salida

Reset

Cronograma del temporizador con retardo a la activacin con memoria


Unidad Didctica 3: Caractersticas particulares de programacin
26

MICRO PLCs

Temp_1
I1

IN

I2

Q1

10 seg

Representacin del temporizador con retardo a la activacin memorizado en FBD

stos son los tipos de temporizadores ms representativos, pero no los nicos. Adems,
algunas firmas comerciales incorporan temporizadores propios en sus Micro PLCs con
caractersticas de temporizacin particulares.
Ejemplo de temporizadores; sin duda los semforos, en los cuales el tiempo es el factor a
controlar en todo momento:
-

Tiempo de verde a amarillo.


Tiempo de amarillo a rojo.
Tiempo de rojo a verde.
Tiempo de verde, paso de peatones.
Tiempo de verde intermitente, paso de peatones.
Tiempo de rojo peatones, etc.

2.6.3 Contadores
Un contador realizar una accin, cuando una entrada sea activada un nmero
programado de veces. Tcnicamente, los contadores activarn o desactivarn una salida, o un bit
(bit a 1 bit a 0) cuando se alcanza un nmero predeterminado de conexiones en su entrada.
Este nmero de activaciones es la programacin. Por ejemplo, cuando la entrada del contador se
active 8 veces, se activar la salida Q.
Veamos el grfico:
Pulsador
de activacin

Contador (valor
programado 8)

Salida

Unidad Didctica 3: Caractersticas particulares de programacin


27

MICRO PLCs

- Primero, el contador est programado a 8; esto no quiere decir que la entrada no pueda ser
activada ms, si no que al llegar a 8, la salida se activar.
- Segundo, el contador puede disponer de descontador, lo cual hace que, si el nmero total del
cmputo ascendente no es 8 la salida se desactivar. En el siguiente grfico se muestra como el
cmputo llega a 8, la salida se activa, pero el descontador baja el cmputo a un valor menor de 8,
con lo cual la salida se desconecta.

Pulsador
de activacin

Contador (valor
programado 8)

8
7

Pulsador
descontador
1

Salida

Adems, los contadores disponen de una entrada de Reset (R), que hace que el nmero de
entradas acumuladas pasen a ser 0.
Al igual que se indic para los temporizadores, los tipos de contadores tambin
pueden variar segn el tipo de controlador o firma comercial que los fabrique.
A continuacin se muestra la simbologa de un contador-descontador para lenguaje LD y para FBD
(de LOGO! de Siemens)
Contador_1

I1

CU

I2

CTUD

CD
R

Valor del contaje

Contador_1

Lenguaje LD

Conta_1
I1
I2

PV
Q1

Cnt

Dir

100

Q1

Par

Lenguaje FBD

LD: donde una entrada cuenta positivamente CU; otra cuenta negativamente CD; una
entrada de reset pone todo a cero R, y la entrada PV indica el valor que tendr el cmputo.
FBD en LOGO!: la entrada Cnt es la que cuenta; la entrada Dir tiene una doble funcin; si
no est activada el contador contar positivamente, pero si est activada, el contador contar
negativamente. La entrada R, reset pone todo a cero. La entrada Par indica el valor del cmputo,
en el ejemplo 100.

Unidad Didctica 3: Caractersticas particulares de programacin


28

MICRO PLCs

Ejemplo:
Un autmata programable controlar las manzanas de una cinta transportadora de manera
que cuando cuente 100 manzanas, la cinta se detendr hasta que un operario las almacene; una
vez hecho esto el operario presionar un pulsador que har que el ciclo comience de nuevo:
Clula fotoelctrica

donde:
I1: clula fotoelctrica que activa un
bit cada vez que cruza una manzana.
I2: pulsador que pone todo a cero
para que comience todo de nuevo.
Q1: motor de la cinta transportadora.

Conta_1
I2

I1

Cnt

Dir

100

1
+

Par

Q1

En la que la funcin NOT cambia el resultado lgico de la salida del contador; es decir, si no
cuenta 100 manzanas la salida ser cero pero al pasar por la puerta Not ser 1. cuando el cmputo
llegue a 100 la salida del contador ser 1 y la puerta Not la convertir en cero, parando la cinta.
Para comprobar el funcionamiento de las operaciones vistas hasta este momento y algunas
ms que se vern ms adelante, y sobre todo para demostrar su funcionalidad, se emplear un
simulador informtico que tiene exactamente el mismo modo de programacin que el aparato
verdadero, (LOGO! V3.0 de Siemens); tiene la particularidad de utilizar el tipo de programacin con
funciones lgicas FBD. Se entiende que para iniciados en Micro PLCs el lenguaje ms sencillo
para programar es el LD o lenguaje de contactos por su parecido con contactos de automatismos
(Contactores, rels, temporizadores, etc), por este motivo los ejemplos y ejercicios que realicemos,
los programaremos en FBD y buscaremos su correspondencia en LD.
3 Instalar LOGO V3.0 de Siemens
Antes de comenzar a realizar ejercicios bsicos de programacin, hemos de instalar el
software que nos ayudar a comprender mejor el ejercicio de la programacin.
Primero.- buscamos dentro del CD la carpeta que
contiene el software y la copiamos a la unidad C: se
aconseja copiar la carpeta completa a Mis documentos.

Unidad Didctica 3: Caractersticas particulares de programacin


29

MICRO PLCs

Segundo.- Una vez la carpeta Logo! Soft V3.0 est copiada en la carpeta Mis documentos, la
abrimos y buscamos el icono setup. Lo activamos.

Tercero.- el programa empieza a


instalarse, pulsamos OK.

Cuarto.- Pulsamos I Agree,


acuerdo con las condiciones.

Quinto.- elegimos destino de instalacin. Si lo


dejamos por defecto se instalar en la carpeta
LOGO_V30 dentro de la unidad C:\.

Sexto.- elegimos idioma.

Unidad Didctica 3: Caractersticas particulares de programacin


30

estamos

de

MICRO PLCs

Sptimo.- observamos el proceso de instalacin.

Octavo.- esta ventana indica que la instalacin


se ha realizado correctamente. Pulsamos OK.

Noveno.- ahora nos pide que reiniciemos


el equipo, pulsamos Restart Windows.

Dcimo.- una vez reiniciado el PC, encontramos


los iconos de la aplicacin, activamos LOGO!Soft
V3.0 que es el programa de aplicacin.
Ahora podemos eliminar la carpeta LOGO! soft V3.0- que copiamos al inicio en mis
documentos, ya que esta operacin slo sirvi para la instalacin del programa.
Con esta pantalla nos indica que estamos
listos para utilizar el programa; como se
ve, da una pequea explicacin de las
funciones principales de logo! en varias
pginas; si no queremos leerlo pulsamos
acabar la introduccin.

Aparecer esta pantalla; en ella debemos de elegir el


modelo de microcontrolador a utilizar. Seleccionamos OBA1
y LOGO!-L. Esta seleccin indica que hemos elegido un
microcontrolador con ms funciones que el bsico. Es
importante recordar que las programaciones a realizar con
este emulador son las mismas que se haran con el aparato
real.
Unidad Didctica 3: Caractersticas particulares de programacin
31

MICRO PLCs

En caso de que no apareciera esta pantalla de seleccin de tipo de


logo!, pulsamos arriba en men LOGO!, despus en Cambiar
LOGO! y aparecer la pantalla anterior. Haramos la eleccin antes
comentada. OBA1 y LOGO!-L

Este ser el aspecto que tendr la


pantalla principal. A partir de ahora
estamos preparados para realizar
programaciones y comprobar sus
resultados.

Todava no se va a utilizar, pero


antes de cerrar la aplicacin, se comentarn algunos de los iconos de funcionamiento ms usuales.
La forma de operar es igual a
cualquier aplicacin informtica. Si
comenzamos un nuevo trabajo
pulsamos nuevo. Este programa no
permite dos aplicaciones abiertas a la
misma vez, por tanto los proyectos se
trabajarn uno a uno.
Si el programa ya est realizado
lo buscaremos pulsando el icono
abrir.

Si comenzamos de cero y pulsamos


nuevo habr que seleccionar el icono
programar. Con esta accin el
microcontrolador est dispuesto para
empezar a programar.

Unidad Didctica 3: Caractersticas particulares de programacin


32

MICRO PLCs

El aspecto del microcontrolador ser


siguiente; que como observamos permite tres
opciones. A partir de ahora este emulador se
programar de idntica manera que el
aparato real, esto quiere decir que se har
pulsando con el ratn- sobre alguna de las
seis teclas (arriba, abajo, izquierda, derecha,
ESC y OK). En este caso como queremos
comenzar a programar, pulsamos OK.

La pantalla cambiar y aparecern otras tres opciones; nosotros


pulsamos OK si aparece seleccionada en la pantalla editar
programa Edit Prg. Si no estuviera seleccionada esta opcin, lo
haramos con las teclas de arriba y abajo.

Esta pantalla indica que la salida de rel Q1 ya est lista para ser
programada. Esto sera el comienzo de la programacin.

Glosario
lgebra de Boole
lgebra en el que sus componentes slo pueden tomar dos valores. Se considera un
lgebra especial para el sistema binario. Proporciona el modo de expresar el funcionamiento de un
circuito lgico compuesto por una combinacin de puertas lgicas, en la que se puede saber el
resultado de la salida segn la combinacin de los valores de entrada.
Cronograma
Observemos el grfico; en l un pulsador pasa de no estar (0), a estar (1) presionado. La
forma de representar este hecho es un grfico que muestre la evolucin del dispositivo.

Pulsador
Pulsador
Pulsador
desactivado = 0 activado = 1

1
0

Unidad Didctica 3: Caractersticas particulares de programacin


33

MICRO PLCs

En este caso podemos saber la evolucin respecto a una unidad de tiempo:


Fase 1

Fase 2

Fase 3
Pulsador

20 seg

5 seg

Pulsador
desactivado = 0

Pulsador
Pulsador
desactivado = 0 activado = 1

1
0

Cuando se representan valores de tiempo variables, se suele indicar la evolucin de la


temporizacin:

Tiempo a programar

Proceso de tiempo

1
0

Salida
Circuito paralelo

Elctricamente es cuando la corriente puede tomar ms de un camino para completar un


circuito.
L1

L1

L1

Lmpara
L2

L2

L2

Circuito paralelo
Circuito serie
Elctricamente es cuando la corriente tiene que tomar un nico camino para completar el
circuito atravesando todos los componentes del mismo.
L1

L2

Lmpara

Circuito serie
CTD
Expresin utilizada para designar a los contadores con cmputo descendente. CTD = Count
down counter.
Unidad Didctica 3: Caractersticas particulares de programacin
34

MICRO PLCs

CTU
Expresin utilizada para designar a los contadores con cmputo ascendente. CTU = Count
up counter.
CTUD
Expresin utilizada para designar a los contadores con cmputo ascendente y descendente.
CTUD = Count up/down counter.
FBD
Lenguaje de programacin mediante funciones lgicas (FBD, Function Block Diagram) El
lenguaje grfico FBD es parecido a los esquemas utilizados en electrnica digital, utilizando
funciones lgicas.
IEC 1131-3
Norma sobre autmatas programables dividida en cinco captulos: 1.- Apreciacin global
general 2.- Hardware. 3.- Lenguajes de programacin. 4 Gua de usuario. y 5.- Comunicaciones.

LD (Ladder Diagram) diagrama de contactos


Es un lenguaje de programacin tipo grfico, y la simbologa utilizada, es parecida a los
esquemas elctricos empleados en instalaciones elctricas con rels o contactores.
LOGO!
LOGO! es un microcontrolador de la firma Siemens.
Subrutina
Una subrutina es una divisin del programa principal, es decir, cuando el programa principal
es muy extenso se hacen pequeos programas operativos, que normalmente dependen de un
principal.
Reset
Puesta a cero.
TON
Expresin utilizada para designar a los temporizadores con retardo a la activacin. TON =
Timer ON delay.
TOF
Expresin utilizada para designar a los temporizadores con retardo a la desactivacin. TOF
= Timer OFf delay.
Unidad Didctica 3: Caractersticas particulares de programacin
35