Академический Документы
Профессиональный Документы
Культура Документы
PRESENTA:
GUSTAVO OCAMPO HERNNDEZ
Con todo mi cario y amor hacia las personas que hicieron todo en la vida para
que yo pudiera lograr mis sueos, por motivarme y ensearme la luz que
ilumin cuando senta que el camino se terminaba, a ustedes
por siempre mi corazn y mi agradecimiento.
NDICE
CAPTULO 1 EL P.L.C
1.1 INTRODUCCIN 1
1.1.1 COMPONENTES DE UN SISTEMA DE CONTROL CON P.L.C 2
1.2 CONEXIN DE ENTRADAS Y SALIDAS 6
1.2.1 CONEXIN DE ENTRADAS 6
1.2.2 CONEXIN DE SALIDAS 8
1.2.3 EL CONTACTOR 8
1.2.3.1FUNCIONAMIENTO DEL CONTACTOR 12
1.2.3.2 CONTACTOS AUXILIARES 15
1.2.3.3 CIRCUITO DE POTENCIA O FUERZA 17
1.2.4 CONEXIN ELCTRICA DEL CONTROL FEC 18
CAPTULO 4 TEMPORIZADORES
4.1 INTRODUCCIN 57
4.2 FUNCIONAMIENTO DE UN TEMPORIZADOR 58
4.3 TEMPORIZADOR ESTNDAR 59
4.3.1 INICIALIZANDO EL TIMER PRESELECT 59
4.3.2ARRANCANDO UN TIMER 60
4.4 TEMPORIZADOR CON RETARDO A LA CONEXIN 63
4.5 TEMPORIZADOR CON RETARDO A LA DESCONEXIN 65
CAPTULO 5 CONTADORES
5.1 INTRODUCCIN 67
5.2 CONTADORES EN LISTA DE INSTRUCCIONES 67
5.2.1 INICIALIZANDO EL COUNTER PRESELECT 67
5.2.2 ARRANCANDO UN COUNTER 68
5.3 CONTADORES EN DIAGRAMA DE ESCALERA 69
5.4 COMANDOS INC Y DEC 72
5.5 DESARROLLO 73
CAPTULO 9
9.1 CONCLUSIONES 121
1.1 INTRODUCCION
P.L.C
Qu es un P.L.C.?
Un sistema electrnico de funcionamiento digital, diseado para ser utilizado en un entorno industrial,
que utiliza una memoria programable para el almacenamiento interno de instrucciones orientadas al
usuario, para la realizacin de funciones de: enlaces lgicos, secuenciacin, temporizacin, recuento y
clculo, para controlar a travs de entradas y salidas digitales o analgicas, diversos tipos de mquinas o
Procesos. (Segn IEC-1131)
El sistema de un P.L.C.
1
1.1.1 COMPONENTES DE UN SISTEMA DE CONTROL CON PLC
Seal binaria
La seal binaria es una seal discontinua (0=Inactivo 1=Activo). Todos los PLCs procesan seales
binarias. Es ms fcil manejar slo 2 valores (0 1, 0V 24V, No S, Apagado Encendido).
Actuadores o elementos de trabajo, como por ejemplo: motores elctricos, cilindros neumticos, focos
piloto, alarmas sonoras, etc.
2
Fig. 1.4 El P.L.C.
Computadora personal con el Software de programacin previamente cargado (por ejemplo: FST)
Este manual est enfocado para el P.L.C. de FESTO FC20, as que a continuacin se muestran las
caractersticas fsicas y tcnicas.
3
Fig. 1.6 Descripcin fsica del P.L.C. FEC20 de FESTO
4
Caractersticas tcnicas
12 entradas (configurables a NPN o PNP).
8 salidas (relevador).
256 Contadores
5
1.2 CONEXIONES DE ENTRADAS Y SALIDAS
6
Fig. 1.9 Conexin de entradas (sensors) del P.L.C. FEC20 de FESTO
7
1.2.2 CONEXIN DE SALIDAS
La ventaja de nuestro controlador es que tiene salida para bobina de contactor de 24vcd, 120vca 220
vca
1.2.3 EL CONTACTOR
Es un mecanismo cuya misin es la de cerrar unos contactos, para permitir el paso de la corriente a
travs de ellos. Esto ocurre cuando la bobina del contactor recibe corriente elctrica, comportndose
como electroimn y atrayendo dichos contactos.
8
Aspecto fsico
9
Partes de que est compuesto
10
Fig. 1.23 Partes que componen un contactor.
11
1.2.3.1 FUNCIONAMIENTO DEL CONTACTOR
Al no existir corriente, no hay campo 12xcel12s12o capaz de desplazar el martillo hacia la culata. El
martillo est unido fsicamente al grupo de contactos del contactor.
12
Caso 2. Bobina del contactor excitada.
El campo magntico creado por la bobina del contactor al ser alimentado con corriente elctrica, en este
caso puede ser alimentado con una de las salidas del P.L.C, ya sea a 24vcd, 120vca o 220vca. Y de esta
manera se conseguir desplazar el conjunto formado por el martillo y el conjunto de contactos
elctricos asociados, realizando la conexin (o desconexin) de los mismos.
13
Fig. Dos posibles casos de un contactor. Bobina excitada (lado derecho), Bobina sin excitar (lado izquierdo)
14
1.2.3.2 CONTACTOS AUXILIARES
Para aumentar la capacidad del contactor, se pueden asociar bloques de contactos, o 15xcel15s de
contactos auxiliares, que incrementan as la capacidad del contactor al acrecentar el nmero de
contactos a manejar, incluidos temporizadores (15xcel15 de contactos temporizados).
El procedimiento de unin o encaje entre el contactor y el bloque auxiliar suele realizarse a travs de
unas pequeas guas, que permiten el acoplamiento.
Puesta en marcha
Cuando la bobina del contactor es excitada, y el martillo (armadura 15xcel), se desplaza a causa del
campo magntico hacia abajo, adems de conmutar los contactos propios del contactor, desplaza
15xcel15s la parte superior del contactor, normalmente de material plstico, en la cual van adosados los
bloques de contactos auxiliares, haciendo que estos, o bien conmuten sus contactos, o exciten un
mecanismo para la 15xcel15s15-desconexion retardada como es el caso de los bloques temporizadores
15xcel15s15os.
- Cmara de un contacto
15
- Cmara de cuatro contactos
16
Normalmente, las cmaras temporizadas neumticas utilizan como elemento principal un fuelle de
goma y un resorte antagonista dentro de l. Un tornillo solidario al conjunto fuelle-cmara, servir para
la regulacin del tiempo. No se consideran instrumentos de precisin.
17
1.2.4 CONEXION ELCTRICA DEL CONTROL FEC
18
CAPITULO 2
USO DEL SOFTWARE
2.1 INTRODUCCION
Una vez que se instala el software, se procede hacer la comunicacin entre el PLC y la computadora
donde se encuentra instalado el software
Dependiendo del sistema operativo ser la verificacin de la frecuencia de trabajo. En este caso
el sistema operativo es Windows 7, y el procedimiento es el siguiente.
19
20
En este momento ya sabemos cul es la velocidad de operacin del convertidor y que COM se le asigno.
Procedemos a configurar esto con el software.
21
2.2 EJECUCIN DEL SOFTWARE
Ejecutamos el software
Extras
Preferences
22
En este momento ya le asignamos el COM5 y una velocidad de 9600. Ya se hermano el software con el
USB
Ahora es necesario saber qu tipo de PLC tenemos, en este caso es un PLC compacto. Tambin hay que
seleccionar esto en el software para que no haya ningn problema de comunicacin con el PLC.
Para seleccionar el tipo de PLC hay que dar doble clik sobre la pantalla para que aparezca el
siguiente cuadro de dialogo
23
Se selecciona FEC y aparecer lo siguiente
Nombramos al proyecto
24
Seleccionamos el tipo de PLC que se est usando, en nuestro caso es FEC compact. Y se le da
algn comentario en COMMENT de as requerirlo.
Project settings
25
Y seleccionamos el tipo de PLC
26
2.3 ESTRUCTRURA DE PROGRAMACION EN LISTA DE
INSTRUCCIONES
A pesar de que la instruccin STEP ( Paso ) es opcional, muchos de los programas AWL utilizan la
instruccin STEP. Esta instruccin se utiliza para marcar el inicio de un bloque lgico de programa
Cada programa AWL puede contener hasta 255 STEPs ( Pasos ) y cada Paso puede contener una o
ms Frases. A cada Paso se le puede asignar un nombre o etiqueta opcional. Una Etiqueta de
Paso solamente se requiere si el Paso correspondiente debe ser posteriormente nombrado como el
destino de una instruccin de salto.
Es posible crear programas enteros que consten solamente de frases sin utilizar en ningn caso la
instruccin STEP. Los programas construidos de esta forma suelen llamarse programas paralelos, y
reaccionan igual que los programas escritos en diagrama de contactos. Esto significa que, sin utilizar
27
la instruccin STEP, tales programas seran procesados una sola vez. Para que estos programas
puedan procesarse continuamente, es necesario incluir la instruccin PSE.
FRASES
La Frase forma el nivel ms elemental de la organizacin de un programa. Cada Frase consta de una
Parte Condicional y de una Parte Ejecutiva .
La Parte Condicional sirve para indicar una o ms condiciones que son evaluadas durante el
funcionamiento por su condicin de ciertas o falsas. La Parte Condicional siempre empieza con la
palabra clave IF y sigue con una o ms instrucciones que describen las condiciones a evaluar.
Si las condiciones programadas son evaluadas como ciertas, entonces sern ejecutadas todas las
instrucciones programadas en la parte ejecutiva de la frase. El inicio de la parte ejecutiva se indica
con la palabra clave THEN.
Instruccin STEP
Los programas que no utilizan la instruccin STEP pueden procesarse de modo paralelo ( scanning ). A
pesar de que este tipo de ejecucin de programas puede ser adecuado para resolver ciertas tareas de
control, el lenguaje AWL ofrece la instruccin STEP que permite que los programas sean divididos en
compartimentos (STEPS o PASOS ), que sern ejecutados independientemente. En su forma ms
sencilla, un STEP incluye por lo menos una frase y toma la forma siguiente:
Es importante comprender que el programa ESPERAR en este paso hasta que las condiciones sean
ciertas, en cuyo momento se ejecutarn las acciones y solamente entonces el programa seguir
procesando el siguiente paso.
La etiqueta (#### ) del paso es opcional y solo se requiere si el paso va a ser el destino de una
instruccin de salto ( JMP ). Debe observarse que cuando el software FST carga un programa AWL en el
control programable, asigna automticamente una numeracin relativa a cada paso del programa.
Dentro de la instruccin STEP se pueden incluir varias frases segn lo requiera el programa
28
En el ejemplo anterior, hemos introducido el concepto de varias frases en un solo paso. Cuando el
programa llega a este paso, procesar la primera frase ( en este caso, activando la salida 4.4 si la entrada
2.2 est activa ) y a continuacin se desplaza a la siguiente frase independientemente de si las condiciones
de la primera frase son ciertas o falsas.
Cuando la ltima frase de un paso (en este caso la segunda ) es procesada, si la parte condicional es
cierta , entonces se realiza la parte ejecutiva y el programa continua en el siguiente paso. Si la parte
condicional de la ltima frase no es cierta, entonces el programa regresa a la primera frase del paso
actual.
Si las Condiciones de una frase se cumplen, se ejecutarn las acciones programadas en ella
Si las Condiciones de la ltima (o la nica ) frase dentro de un paso se cumplen, se ejecutarn las
Acciones programadas y el programa seguir en el siguiente paso
El lenguaje AWL no utiliza accionamiento por flancos ... las condiciones son evaluadas cada vez que se
procesan, sin tener en cuenta su anterior estado.
Esta situacin se resuelve fcilmente o bien utilizando STEPs, Flags (Marcas ) u otras formas de
control
29
Influencia en el flujo del programa
Instruccin NOP
La instruccin NOP puede utilizarse indistintamente en la parte Condicional o en la Ejecutiva de una frase.
Cuando se utiliza en la parte condicional siempre es evaluada como cierta. Pudiendo utilizarse para
forzar la ejecucin incondicional de una frase
Instruccin JMP
Otra instruccin AWL que puede utilizarse para influir en el flujo de ejecucin de un programa, es la
instruccin JMP ( salto ). Esta instruccin aade la posibilidad de ramificar el lenguaje AWL.
30
Instruccin OTHRW
La instruccin OTHRW ( otherwise, sino ) tambin puede utilizarse para influir en el flujo del programa.
La instruccin OTHRW es ejecutada cuando la ltima IF es evaluada como falsa
STEP 1 PASO 1
IF NOP SI NO HAY NINGUNA OPERACIN
THEN SET Y0 ENTONCES PRENDE Y0
STEP 2 PASO 2
IF S0 SI ESTA PRENDIDO S0
THEN SET Y1 ENTONCES PRENDE Y1
OTHRW JMP TO 1 DE LO CONTRARIO SALTA AL PASO 1
2.5 COMANDOS
31
ROL Gira a la izquierda los bits de un acumulador.
2.6 DESARROLLO
Ejecutar el software FST 4.10
Nombramos al proyecto
32
Seleccionamos el tipo de PLC que se est usando, en nuestro caso es FEC compact. Y se le da
algn comentario en COMMENT de as requerirlo.
PROGRAM NEW
33
Seleccionamos el lenguaje de programacin, ya sea lista de instrucciones (AWL STL) o
diagrama de escalera (LDR KOP). En nuestro caso seleccionamos AWL (Statement list).
Una vez seleccionado el lenguaje de programacin aparecer una ventana, la cual nos indicara
el nmero de programa, el cual debemos tener cuidado de que este en cero, pues cuando
cargamos el programa al PLC, este se carga con el nmero que seleccionamos, y cuando se
ejecuta en el PLC este siempre busca el programa nmero cero y de no encontrarlo despliega
un error.
34
Damos OK y se despliega una pantalla en la cual vamos a estructurar nuestro programa
Antes de empezar nuestro programa hay que abrir nuestra ALLOCATION LIST para nombrar
nuestras entradas y salidas.
35
Una vez seleccionada la ALLOCATION LIST se despliega una pantalla en la cual vamos a nombrar
nuestras entradas y salidas. Esto lo vamos a lograr dando doble clic sobre la pantalla, y
aparecer lo siguiente:
Ahora si estamos listos para empezar a desarrollar nuestro programa. Como ya tenemos nuestra
ALLOCATION LIST, cuando queramos hacer referencia a una entrada o salida e incluso a un
contador, podemos usar solo su smbolo de operacin.
36
Nuestro programa est estructurado de tal manera que se pueda visualizar la estructura bsica
de un programa en lista de instrucciones.
STEP 1
IF S0 SENSOR 0
THEN SET Y0 lLED 0
STEP 2
IF S1 SENSOR 1
THEN RESET Y0 lLED 0
STEP 3
IF S2 SENSOR 2
THEN SET Y1
STEP 4
IF N S2 SENSOR 2
THEN RESET Y1
JMP TO 1
Una vez que se ha concluido el programa se procede a compilarlo para ver si existe algn error
37
Si no existe ningn error se procede a cargar el programa en el PLC.
Una vez que aparece esta leyenda, significa que el programa est cargado en el PLC. Y ya
podemos checarlo directamente con el PLC, poniendo el interruptor en RUN.
Una vez que se checa el perfecto funcionamiento, se ha logrado el objetivo de esta prctica, el
cual es comprender la estructura bsica de programacin en lista de instrucciones en un PLC.
38
CAPTULO 3
LGICA DE CONTACTOS
3.1 INTRODUCCIN
Lgica de contactos
39
Fig. 3.1 Representacin de funciones lgicas
Los elementos de entrada pueden ser pulsadores, interruptores, captadores tales como finales de carrera,
detectores de proximidad, etc. Son los dispositivos fsicos mediante los cuales el automatismo realiza la
observacin de las variables de entrada. Por tanto, se debe asociar a dichos elementos las variables de
entrada de cuya combinacin resultar una funcin lgica que activar o no la salida correspondiente.
40
* Variables de entrada directa
* Variables de entrada inversa
La variable de entrada pura, proviene de acciones de mando del operador, o bien de la lectura de los
elementos de entrada. La variable de salida realimentada, proviene de la realimentacin de una variable
de salida y posterior consideracin como variable de entrada. Esto puede tener lugar en automatismos
que deban ser tratados segn la lgica secuencial sncrona o asncrona.
Asociacin de elementos
Los diversos elementos bien sean normalmente abiertos o normalmente cerrados, pueden conectarse de
forma asociada formando diversas funciones lgicas
41
3.3 FUNCIONES LGICAS
Funcin lgica O
Se trata de la conexin en paralelo de diversos elementos de entrada
Funcin lgica Y
Se trata de la conexin en serie de diversos elementos de entrada
42
Fig. 3.5 Funcin lgica O lgica de funciones Y
A partir de las funciones bsicas enumeradas, se pueden establecer combinaciones entre ellas de diversa
complejidad
Lgica de funciones
Los sistemas digitales se caracterizan por funcionar de modo binario, es decir, emplean dispositivos
mediante los cuales solo son posibles dos estados. Por tanto, al transistor solo le vamos a permitir trabajar
en la zona de corte o en la de saturacin, nunca en la zona activa ( ideal para el uso del transistor como
amplificador ). Esta naturaleza biestable ( todo nada ) o nivel alto nivel bajo de muchos dispositivos
industriales hace posible tratar su funcin mediante un clculo matemtico que solo opere con dos
valores 0 y 1
Lgica positiva: Cuando el estado alto coincide con el 1 lgico y el estado bajo con el 0 lgico
Lgica negativa: Cuando el estado alto coincide con el 0 lgico y el estado bajo con el 1 lgico
43
El desarrollo de los distintos bloques lgicos se puede realizar con elementos de alguna de las siguientes
familias lgicas:
La representacin de todas las combinaciones posibles de las variables de entrada y su repercusin en las
salidas se expresa mediante una tabla llamada Tabla de verdad
44
Los smbolos ms generalizados para la representacin de la funcin lgica AND son:
45
Fig. 3.13 Smbolos generalizados de la funcin NOR
Funcin NAND ( NO Y )
Si despus de efectuar una operacin AND, realizamos una inversin, obtenemos la funcin NO Y o
NAND.
46
Fig. 3.17 Smbolos generalizados de la funcin XOR
Funcin IGUALDAD
Se trata de una puerta lgica de igualdad, lo que quiere decir que su salida siempre tiene el mismo valor
que su entrada. Es utilizada como amplificador digital.
47
Fig. 3.21 Smbolos generalizados de la funcin IGUALDAD
3.4 DESARROLLO
Ejecutar el software FST 4.10
Nombramos al proyecto
48
Seleccionamos el tipo de PLC que se est usando, en nuestro caso es FEC compact. Y se le da
algn comentario en COMMENT de as requerirlo.
PROGRAM NEW
49
Seleccionamos el lenguaje de programacin, ya sea lista de instrucciones (AWL STL) o
diagrama de escalera (LDR KOP).
Una vez seleccionado el lenguaje de programacin aparecer una ventana, la cual nos indicara
el nmero de programa, el cual debemos tener cuidado de que este en cero, pues cuando
cargamos el programa al PLC, este se carga con el nmero que seleccionamos, y cuando se
ejecuta en el PLC este siempre busca el programa nmero cero y de no encontrarlo despliega
un error.
50
Damos OK y se despliega una pantalla en la cual vamos a estructurar nuestro programa
Antes de empezar nuestro programa hay que abrir nuestra ALLOCATION LIST para nombrar
nuestras entradas y salidas.
51
Una vez seleccionada la ALLOCATION LIST se despliega una pantalla en la cual vamos a nombrar
nuestras entradas y salidas. Esto lo vamos a lograr dando doble clic sobre la pantalla, y
aparecer lo siguiente:
Y como ya se ha visto, se nombran las entradas y las salidas segn nos convenga.
52
Ahora si estamos listos para empezar a desarrollar nuestro programa. Como ya tenemos nuestra
ALLOCATION LIST, cuando queramos hacer referencia a una entrada o salida e incluso a un
contador, podemos usar solo su smbolo de operacin.
STEP 1
IF N S0 SENSOR 0 SI SE APAGA EL SENSOR 0
THEN SET Y6 LED 6 ENTONCES PRENDE EL LED 6
STEP 2
IF NOP
THEN RESET Y6 LED 6 RETORNA EL CICLO
JMP TO 1
NOTA
LA INSTRUCCIN N SE UTILIZA PARA PREGUNTAR SOBRE EL ESTADO DE UN SENSOR, Y LA INSTRUCCIN
NOP SE REFIERE A QUE NO HAY NINGUNA OPERACIN Y VA A EJECUTAR LO QUE AS DEMANDE LA SENTENCIA
STEP 1
IF S0 SENSOR 0 SI EL SENSOR 0
AND S1 SENSOR 1 Y EL SENSOR 1
AND Y1 ACTUADOR 1 Y EL ACTUADOR 1
ESTAN PRENDIDOS
53
THEN SET Y6 LED 6 ENTONCES PRENDE EL LED 6
STEP 2
IF NOP RETORNA EL CICLO
THEN RESET Y6 LED 6
JMP TO 1
STEP 1
IF S0 SENSOR 0 SI EL SENSOR 0
OR S1 SENSOR 1 O EL SENSOR 1
OR Y1 ACTUADOR 1 O EL ACTUADOR 1
SE ACTIVAN
THEN SET Y6 LED 6 ENTONCES PRENDE EL LED 6
54
Ahora desarrollaremos el mismo programa, pero en diagrama de escalera
STEP 1
IF S0 SENSOR 0
EXOR S1 SENSOR 1
THEN SET Y6 LED 6
STEP 2
IF NOP
THEN RESET Y6 LED 6
JMP TO 1
55
56
CAPTULO 4
TEMPORIZADORES
4.1 INTRODUCCIN
Los temporizadores
Muchas funciones de control exigen la programacin del tiempo. Ejemplo : En una mquina deber
avanzar el cilindro B cuando el cilindro A haya vuelto a su posicin normal.
A modo de unidad bsica se define o selecciona un determinado tiempo para las secuencias de los pulsos:
Un milisegundo
Una centsima de segundo
Una dcima de segundo
Un segundo
Un minuto
En el programa, los tiempos son confeccionados recurriendo a las unidades bsicas respectivas, estando
limitada la duracin del tiempo programable.
57
4.2 FUNCIONAMIENTO DE UN TEMPORIZADOR
Un temporizador est compuesto de los siguientes elementos:
Valor nominal
Valor efectivo
Estado
El valor nominal indica el tiempo que deber transcurrir en funcin del programa y expresado
mediante un nmero que indica la cantidad de cadencias que se haya seleccionado. El valor
nominal tambin puede ser igual a 0; en este caso, el tiempo que se haya ajustado es igual
al valor efectivo.
El valor efectivo indica el valor instantneo del temporizador. Los temporizadores pueden
contar hacia atrs o hacia adelante. El valor efectivo va cambiando respectivamente
58
segundos). El nmero 4 es el valor efectivo y el conteo se produce hacia atrs hasta que se
alcanza el valor efectivo 0. El temporizador cuenta los flancos positivos de los pulsos
secuenciales.
El temporizador se inicia:
Cuando la cuenta actual (TWn) es igual a (TPn) el Estado del Timer (Tn) cambia
a inactivo (Tn=0)
59
Ejemplo:
Inicializando el Timer Preselect con un valor absoluto
Arrancar un temporizador solo requiere de una instruccin SET y especificar que timer debe
arrancarse:
60
Este temporizador tambin llamado de impulso, se puede utilizar en diagrama de escalera, a
continuacin se muestra cmo hacerlo:
61
Como parte condicional (Contactos):
62
Fig. 4.3 grafica de un temporizador
63
Como parte condicional (Contactos):
64
Fig. 4.4 Grafica de un temporizador TON
65
A continuacin se muestra la grfica de un temporizador con retardo a la desconexin
66
CAPTULO 5
CONTADORES
5.1 INTRODUCCIN
Los contadores
Los modelos de controladores que incorporan bateras de respaldo mantienen los valores de
Preseleccin del Counter, Bits de Estado y Words durante los perodos sin energa de red. Igualmente
con los nuevos equipados con EEPROM/ FLASH NVRAM.
Un Counter Estndar es til para conteo de eventos determinados y llevar luego a cabo una accin
deseada cuando se arribe a la cuenta predefinida.
El Counter se inicia:
Cuando la cuenta actual (CWn) = preselect (CPn) el Estado del Counter (Cn) cambia
a inactivo (Cn=0)
67
Esta inicializacin solo necesita ser realizada nuevamente si el valor para actividades de conteo
subsecuentes debe ser cargado.
No es necesario cargar de nuevo al Counter Preselect cada vez que el contador es arrancado.
Ejemplo:
Inicializando el counter preselect con un valor absoluto
68
5.3 CONTADORES EN DIAGRAMA DE ESCALERA
69
Una vez que tengamos la barra de herramientas SHORTCUTS, seleccionamos nuestro
contador.
Como ya tenemos nuestra ALLOCATION LIST, solo ponemos el operador absoluto (C0..C255) y
automticamente aparecer el comentario.
En este caso no es necesario tener en nuestra ALLOCATION LIST la preseleccin del contador
(Counter Preselect CP0..CP255), ya que esta se pone directamente en el representativo del
contador.
70
Como parte ejecutiva (Inicializacin):
71
Como parte condicional (Contactos):
Para poder hacer que nuestro contador registre un INCremento o DECremento hacemos lo
siguiente:
Seleccionamos una bobina y la nombramos con el nombre del operador absoluto del contador
que queremos INCrementar o DECrementar.
72
Y para seleccionar el INCremento o DECremento nos colocamos en nuestra barra de
herramientas, seleccionamos el icono y damos clic consecutivamente hasta que aparezca una
D o una I haciendo referencia a decremento o incremento respectivamente.
Decremento Incremento
Estos se van a activar igual que el contador. Cuando se cierren todos los contactos abiertos y los
contactos normalmente cerrados permanezcan en ese estado.
5.5 DESARROLLO
En la siguiente imagen se puede visualizar como luce la pantalla en la cual vamos a estructurar
nuestro programa.
73
Antes de empezar nuestro programa hay que abrir nuestra ALLOCATION LIST para nombrar
nuestras entradas y salidas.
Una vez seleccionada la ALLOCATION LIST se despliega una pantalla en la cual vamos a nombrar
nuestras entradas y salidas. Esto lo vamos a lograr dando doble clic sobre la pantalla, y
aparecer lo siguiente:
74
Aqu tenemos nuestra ALLOCATION LIST
Ahora si estamos listos para empezar a desarrollar nuestro programa. Como ya tenemos nuestra
ALLOCATION LIST, cuando queramos hacer referencia a una entrada o salida e incluso a un
contador, podemos usar solo su smbolo de operacin.
Nuestro programa est estructurado de tal manera que se pueda visualizar el uso de un
contador.
As que nuestro programa hace lo siguiente:
Se simula el uso de dos pistones los cuales hacen la funcin de sacar un producto X de un almacn
que est alimentando una banda transportadora. El producto baja a la banda gracias a la gravedad.
Con el pistn dos, se hace la funcin de acomodar el producto. Pasa un tiempo y el producto llega
a su destino y un pistn tres lo saca de la banda que lo transporta y un cuarto pistn lo vuelve a
acomodar en el destino al cual ha llegado. Esta operacin se hace solo cinco veces ya que se sabe
que solo hay capacidad para cinco paquetes.
Cuando se ha cumplido que los cinco paquetes han sido acomodados se despliega una alarma
simulado por la salida cero.
75
76
77
CAPTULO 6
REGISTROS Y FLAGS
6.1 REGISTROS
Los controles programables FESTO que pueden programarse utilizando el lenguaje AWL,
poseen un nmero de registros de 16 bits. La cantidad exacta de estos registros vara segn
el modelo de FPC.
Estos registros son operandos multibit que pueden utilizarse para almacenar nmeros en la
gama de :
Si el modelo de FPC utilizado lleva una batera, el contenido de los registros ser mantenido durante los
periodos de desconexin. Los registros que no han sido nunca inicializados contendrn un valor
aleatorio.
Los Registros ( Registers ) son generalmente utilizados con la instruccin LOAD TO y en operaciones
lgicas multibit. Los Registros no pueden direccionarse directamente bit a bit. Si se requiere acceder a
un determinado bit, ser ms adecuado utilizar Flag Words.
Los registros tambin pueden utilizarse para simplificar procesos secuenciales dentro de una seccin de
programa de exploracin simple, como alternativa a la instruccin STEP
Con la diferencia de que este no se va a prender ni apagar, solo es una referencia, a la cual podemos
se le puede asignar algn valor y preguntar por ella, compararla con algn nmero o algn otro registro
segn sea el caso y la conveniencia del programador.
78
IF NOP
THEN LOAD V5
TO R0
79
6.2 REGISTROS EN DIAGRAMA DE ESCALERA
Previo a la inicializacin del registro se le debe asignar un valor inicial, ya sea que el registro inicie en
cero y a partir de ah comenzar el conteo o de un nmero determinado y a partir de este nmero
comenzar el decremento del registro, esto se va a utilizar segn sea nuestra situacin.
Y seleccionamos LOAD TO TO
80
Y de esta forma le asignamos un valor inicial al registro
El registro se puede cargar en cualquier paso del programa y segn sean nuestras
condiciones.
81
6.3 COMANDOS INC Y DEC PARA UN REGISTRO
82
6.4 FLAGS
Bits internos (banderas) Una bandera es un bit interno de control, el cual tambin se conoce como:
Marca
Recordador
Relevador interno
83
Las banderas se utilizan como:
Detectores de flanco
Recordadores de paso
Aplicaciones en donde se requiere memorizar ciertos eventos (por ejemplo, en un teclado display)
La forma de utilizar las banderas en un programa de control puede resumirse como a continuacin se
indica:
Se activa la bandera
Se desactiva la bandera
84
Fig. 6.1 Estructura de las FLAGS
Los Flag Words ( o Palabras de Marcas ) son, en muchas cosas, idnticos a los Registros. Cada Flag Word
contiene 16 bits de informacin. Cuando son referenciados como unidades de 16 bits ( MBO / Multibit
Operands ), se utiliza el trmino Flag Word. Los Flag Word son capaces de almacenar datos numricos
en la gama
Si el modelo de FPC utilizado lleva una batera, el contenido de los registros ser mantenido durante los
periodos de desconexin. Los Flag Word que no han sido nunca inicializados contendrn un valor
aleatorio.
Los Flag Word difieren de otros operandos multibit en varios puntos importantes
Tambin es posible direccionar bits ( Flags o Marcas ) individuales para cada Flag Word, utilizando la
sintaxis:
85
F (nmero de Flag Word). Nmero del bit donde el nmero de bit est entre 0 y 15
Por ejemplo, F 7.14 se refiere al bit 14 del FW7. Este sistema de direccionamiento es similar al utilizado
con las E / S digitales.
Mientras que los Flag Words pueden utilizarse con cualquier instruccin AWL adecuada para operandos
multibit, los Flags individuales slo son accesibles utilizando instrucciones adecuadas para los operandos
monobit
Los Flags o Marcas, como elementos monobit, son frecuentemente utilizados para memorizar eventos.
En este aspecto, son similares a los rels internos frecuentemente citados en el lenguaje de Diagrama
de Contactos
2.- Los modelos de FPC que permiten varios mdulos de CPU ( Multiproceso ), permiten que cualquier
programa en cualquier CPU pueda acceder a los Flags de cualquier otra CPU. Esto es, cada CPU es capaz
de leer desde o escribir hacia los Flags de otra CPU
Por esta razn, los Flags proporcionan el medio adecuado para intercomunicar datos entre CPUs. En
tales sistemas de mltiples CPUs, cada Flag es referenciado como:
De la misma forma tambin es posible direccionar Flags en forma monobit en otras CPUs, extendiendo
la sintaxis de direccionamiento:
Por ejemplo, F0,11,9 se refiere al Flag ( o bit, o marca ) 9 en el Flag Word 11, de la CPU 0
Los Flags individuales (as como los Flag Words ) pueden programarse indistintamente en la parte
condicional o en la ejecutiva de una frase. En la parte condicional pueden ser interrogados por su estado
(0 = inactivo, 1 = activo ); mientras que los Flag Words pueden compararse con valores u otros MBOs
86
Al igual que con los otros operandos monobit o multibit, los Flags pueden combinarse con otros
operandos
En la parte ejecutiva de una frase, los Flag Words pueden utilizarse como fuente o destino de cualquier
instruccin multibit
La bandera es una bobina virtual y como tal se selecciona una variable de salida.
87
Una vez seleccionada la variable se procede a nombrarla para as de esta manera hacer notar que es
una bandera y la estamos utilizando a nivel bit.
Es posible desactivar el bit de estado de una bandera, por ejemplo, sea el caso de hacer memoria
de un evento.
88
La bandera Como parte condicional (Contactos):
CAPTULO 7
MTODOS DE PROGRAMACIN
7.1 DIAGRAMA ESPACIO-FASE
Cuando se sta programando se debe tener en cuenta que podemos encontrarnos con algn problema
de sincrona, que es originado cuando se tienen condiciones similares en alguna parte del programa, y
como recordaremos que un programa en diagrama de escalera se ejecuta de forma simultnea. En el
caso de la programacin en lista de instrucciones no se tiene este problema ya que la ejecucin de este
es en forma ordenada. Pero no queda exent de poder aplicarle algn mtodo de programacin.
89
El diagrama espacio-fase sirve para poder visualizar como se van a accionar los actuadores atendiendo a
las condiciones de las seales de entrada. Esto se puede visualizar con la siguiente ecuacin de
movimiento.
A+A-B+B-
Sabiendo que se requerirn dos cilindros de doble efecto y dos vlvulas biestables. Como se muestra a
continuacin.
Fig. 7.1 Representacin de dos cilindros de doble efecto y dos vlvulas biestables.
S0 Pulsador I0.4
E A0 Cilindro A en I0.0
N reposo
T A1 Cilindro A I0.1
R expandido
A B0 Cilindro B en I0.2
D reposo
A B1 Cilindro B I0.3
S expandido
S Y1 Avanza el O0.0
A cilindro A
L Y2 Retrocede el O0.1
I cilindro A
D Y3 Avanza el O0.3
A cilindro B
S Y4 Retrocede el O0.4
cilindro B
90
Ahora procedemos a desarrollar el diagrama espacio-fase
Del diagrama espacio-fase nos encontramos con un problema de sincrona que se encuentra
demarcado en rojo y a estos los llamaremos renglones repetidos.
ENTRADAS SALIDAS
A0 A1 B0 B1 Y1 Y2 Y3 Y4
I 1 0 1 0 1 0 0 1
II 0 1 1 0 0 1 0 1
III 1 0 1 0 0 1 1 0
IV 1 0 0 1 0 1 0 1
91
A continuacin se presenta el programa desarrollado en diagrama de escalera y en el cual nos
encontramos con el problema de sincrona
Una vez que tenemos detectado el problema de sincrona aplicamos el mtodo de la bandera. Sus pasos
dictan lo siguiente:
92
1.- En base al diagrama espacio-fase se determinan los renglones repetidos. Los renglones repetidos se
refiere al problema de sincronismo, que es cuando las condiciones se repiten y de esta forma no se
puede hacer la programacin de manera comn.
2.- Preguntar en el primer rengln repetido que la bandera no se encuentra presente, esto haciendo
referencia a un contacto normalmente cerrado
3.- Preguntar en el segundo rengln repetido que este activa la bandera, esto haciendo referencia a un
contacto normalmente abierto.
4.- Un paso antes de encontrar el segundo rengln repetido, activar la bandera y un paso despus de
este mismo desactivar la bandera.
Ejemplo
93
DEFINIR LA ECUACION DE MOVIMIENTO
A+A-B+B-
REALIZAR EL PROGRAMA
94
7.3 METODO ESTRUCTURADO
95
3.- Se hace el movimiento
Nota
El primer paso lleva todas las banderas negadas a excepcin de la primera y la ltima bandera
Para poder visualizar mejor este mtodo desarrollaremos un programa que haga lo siguiente:
96
97
7.4 METODO SECUENCIAL PASO A PASO
Un sistema secuencial es aquel que se ejecuta en un orden cronolgico y lgico. Por lo que se requiere
que la programacin se lleve a cabo tomando en cuenta lo ya mencionado, y para esto se propone un
mtodo secuencial PASO A PASO para tal fin.
Definir tantas banderas como pasos existan en la secuencia. Por ejemplo: F0.1 = Paso1, F0.2 =
Paso2, etc., en la lista de asignaciones.
En la seccin de control, activar las bobinas de dichas banderas tomando en cuenta la informacin
proporcionada por el diagrama de funciones.
98
A grandes rasgos el mtodo dicta lo siguiente
Hacer memoria
Preparar el siguiente paso
Hacer el movimiento
A+B+B-C+C-A-
99
100
CAPTULO 8
FUNCIONES AVANZADAS DE UN P.L.C
8.1 MULTITAREA
Multitarea es el trmino utilizado para una ejecucin Simultnea de un nmero de tareas distintas.
La ventaja de este mtodo de trabajo es que se incluyen estructuras ms claras de programa y adems,
los tiempos de ciclo son ms cortos.
Con la multitarea es fcil programar diferentes modos de operacin y adems es posible llamarlos en
cualquier momento y ejecutarlos de manera paralela con el programa principal.
Con la multitarea, podemos utilizar varios programas en el proyecto. Estos programas se ejecutarn en
paralelo con el programa principal cuando sean llamados. stos se numeran como: P1, P2, etc.
Adems de los programas, tambin se utilizan los mdulos. Generalmente utilizados como subrutinas.
Existen dos tipos de mdulos:
101
Fig. 8.1 Estructura de la multitarea
La instruccin de Llamada al Mdulo de Funcin se utiliza para solicitar la ejecucin de una rutina
externa. Los mdulos de funcin se pueden considerar como llamadas a funciones especiales.
Cuando se invoca un CFM, la funcin se activar y se ejecutar junto con el programa principal, el cual
seguir ejecutndose. La funcin se ejecuta en paralelo.
Estos CFM estn disponibles desde el programa, y para tener una mejor referencia abra el archivo de
Ayuda para obtener informacin del mtodo de llamada del CFM.
102
Elija el mdulo que desee emplear.
De un clic en OK
El mdulo elegido estar en el proyecto.
La instruccin de llamada a un Mdulo de Programa se utiliza para solicitar la ejecucin de una rutina
externa. Los mdulos de programa pueden considerarse como subrutinas.
Cuando se invoca a un CMP, el programa principal se detiene y permanecer en el paso en que fue
invocado el CMP y la subrutina se activar. Slo cuando la subrutina se haya completado, regresar el
control al programa principal en el punto en el que se qued.
Llamada de mdulos
Para llamar a los mdulos, solo aada al paso las instrucciones THEN CFM x o THEN CMP x donde x
es el nmero del mdulo.
103
8.2 DESARROLLO
Cree un programa para encendido intermitente (Blinking). ste puede ser un CFM o un CMP.
STEP start
IF start boton de inicio
THEN SET P1 carga los parametros
SET lampara
STEP blink
IF NOP
THEN CFM 0 BLINK
LOAD FU32
TO FW10
STEP 1
IF F10.0 0.25s transcuridos
THEN SET lampara
OTHRW RESET lampara
JMP TO 1
Puede utilizar la palabra de banderas 10 (FW10). Donde se almacenaran los bits del mdulo blink. Y se
ocupara F10.0 en la cual se encuentra el bit que ocupamos segn la tabla siguiente.
104
habilitamos el mdulo de funciones que necesitemos, en este caso el modulo blink.
Para lograr esto, nos colocamos en el rbol de proyectos y nos ubicamos en CFM,
damos clik derecho Y SELECCIONAMOS Import
105
Ahora creamos nuestro programa auxiliar
106
Para carga el programa principal los programas auxiliares y el mdulo de funciones,
tenemos que seleccinalos con una paloma como se muestra.
107
8.3 VISUALIZACIN DE DATOS EN EXCEL
En el caso de los automatismos tendramos un PLC conectado a una red, Ethernet, Serie, etc. En un PC
tendremos instalado un servidor DDE, que se encargar de establecer comunicacin con nuestra red
industrial (Ethernet, serie,etc.), mediante diversos protocolos (can, Modbus, Ina2000, profibus, etc.). El
servidor solicita informacin a 3 niveles (Lista de dispositivos, Lista de estaciones, Lista de variables).
Imaginemos que tenemos 4 mquinas, cada una de las mquinas est compuesta por 3 PLCs y en cada
PLC hay 3 variables que queremos compartir con un cliente DDE (por ejemplo una hoja de clculo de
Excel). Tendremos en total 36 etiquetas que queremos plasmar en nuestra hoja de clculo. Una vez que
tenemos todas estas variables etiquetadas en nuestro servidor DDE, el cliente DDE slo tendr que
llamar a cada una de las etiquetas.
Como particularidad podremos destacar el servidor fast DDE que B&R ha desarrollado para permitir el
intercambio de datos de un modo sencillo con Intouch de Wonderware.
El Objeto OLE de algn modo actualiza la tecnologa DDE. Un objeto OLE permite vincular o incrustar una
aplicacin dentro de otra, de modo que el intercambio de datos entre ambas aplicaciones es inmediata.
Por ejemplo podramos incrustar una hoja de clculo dentro de un informe en 108xce, de este modo
podemos tener un grfico incrustado en nuestro informe creado en 108xce. Por lo tanto cuando
cambiamos los datos, el grfico cambia automticamente, no es necesario copiarle nuevamente y
pegarle como una imagen esttica dentro de nuestro documento. De este modo se simplifica el trabajo
y no es necesario estar abriendo y cerrando aplicaciones constantemente, evitando as mismo errores
en el proceso.
108
8.3.3 OPC (Ole for Process Control)
-OPC (Ole for Process Control): La revolucin industrial que estamos viviendo en los ltimos aos hizo
necesario establecer una herramienta abierta, que permitiese una mayor flexibilidad y efectividad al
intercambio de informacin. De este modo en 1995 un grupo de fabricantes junto con Microsoft
plantearon la posibilidad de crear una especificacin abierta que estandarizara la comunicacin para la
adquisicin de datos, de alarmas y eventos, de datos histricos y de paquetes. De este modo surge un
estndar basado en tecnologa OLE/COM, comunicacin tipo servidor-cliente, que permite ligar de una
forma abierta el hardware de diversos fabricantes sin necesidad de crear un driver especfico para cada
equipo.
Al igual que ocurra en el protocolo DDE, en este caso tambin tenemos que enrutar la informacin que
queremos compartir en niveles a modo de 109xcel, al estilo del explorador de 109xcel109s. As,
tendremos que declarar una etiqueta, que corresponder a una variable contenida en un dispositivo
concreto (Dispositivo, Estacin, variable). El estndar OPC permite agrupar nuestras etiquetas en
distintos grupos. De este modo en nuestro servidor OPC tendremos grupos, subgrupos y elementos
109xcel. Cualquier cliente OPC podr acceder a los 109xcel contenidos en el servidor OPC. Al ser OPC
una especificacin abierta, encontramos multitud de fabricantes de software que disponen de muchas
herramientas OPC ya programadas para las necesidades que surgen en el da a da de la gestin de la
informacin de planta. Por ejemplo servidores OPC multifabricante, clientes OPC para documentos
109xcel, para vincular los datos del servidor OPC con bases de datos ODBC, etc.
109
8.4 DESARROLLO
Se realizara un programa, el cual va utilizar un registro que nos ayudara a llevar el conteo de los eventos
a visualizar en Excel.
El programa es el siguiente:
STEP 0
IF NOP
THEN LOAD V0
TO R0 REGISTRO
STEP 1
IF NOP
LOAD V200
TO TP1
STEP 2
IF N T1 tiempo 1
STEP 3
IF NOP
STEP 4
IF N T1 tiempo 1
110
INC R0 REGISTRO
JMP TO 1
111
Una vez seleccionado el protocolo de comunicacin nos aparece la siguiente ventana
Seleccionamos Config y aqu seleccionaremos el puerto COM en el cual esta nuestro PLC.
112
Debe aparecer la leyenda FESTO IPC V2.22. esto nos indica que la comunicacin se ha
establecido.
Ya estando en Excel nos posicionamos en cualquier celda de la hoja de clculo. En ella vamos a
colocar la siguiente formula =FPC_DATA|FPC_1!R0. Si es el caso de que la comunicacin sea
va Ethernet entonces se coloca =IPC_DATA|IPC_1!R0
La frmula indica lo siguiente; que se ejecutara el programa IPC DATA SERVER, que se transmitirn datos
de la posicin FPC_1, y que la informacin transmitida va a ser la del registro cero R0
En la siguiente tabla se muestra que tipo de variable es la que queremos escanear ya sea un registro,
bandera, temporizador etc.
113
As se visualizan los datos en Excel. Se subraya en rojo la formula mencionada,
En la casilla C2 de Excel se puede ver que se lleva el conteo del registro cero.
114
8.5 MODIFICACIN DE DATOS DE UN P.L.C. DESDE EXCEL
Ahora procedamos a cambiar datos desde la hoja de clculos Excel
Antes de proseguir tenemos que tener en cuenta que vamos a usar la herramienta de Visual Basic, y
para esto tenemos que tener activado el men de PROGRAMADOR.
Otra opcin sera oprimir las teclas Alt +F11 y de esta forma se ejecutara Visual Basic
115
Ya estando en las opciones de Excel, seleccionamos Personalizar cinta de opciones y aqu
habilitamos la opcin de Programador
Creamos un botn para as poder mandar datos desde una casilla de Excel.
116
Una vez que ya tenemos el botn en la hoja de calculo damos clic fuera del botn hasta que este
quede deseleccionado, posicionamos el puntero en el botn y damos click derecho sobre el
botn
117
Ahora abrimos la herramienta Visual Basic y escribimos los siguientes comandos
Application.DDETerminate Channel
End Sub
118
Se entra en el modo diseador. Una vez que esta echo nuestro programa, salimos de modo
programado y depuramos el programa
En uno de los valos se puede observar la herramienta diseador y tambin la opcin DEPURAR.
Se sale del modo programador y se selecciona depurar y luego compilar
El programa indica lo siguiente; se abrir comunicacin con el programa IPC DATA SERVER se
enviaran datos por FPC_1, en el PLC se prendera la salida AO.1 (O0.1), los datos que se
transmitan deben estar contenidos en la celda E5 de la HOJA1
119
Cuando la celda tenga el valor de 1 y se envi este dato, la salida uno del PLC se prendera. Cuando la
celda contenga el valor de 0 y sea enviado este dato, la salida uno se apagara.
120
CAPTULO 9
9.1 CONCLUSIONES
Como resultado de este trabajo se determin que cualquier persona interesada en el tema de
automatizacin con controladores lgicos programables (P.L.C.) puede adquirir conocimiento en
este tema de una forma introductoria, pero tambin puede llevar acabo funciones avanzadas de
un P.L.C. ya que se dan bases slidas para que pueda ejercer estas funciones.
De esta manera se busca que los estudiantes de ingeniera interesados en este tema, encuentren
en este curso una forma muy til y prctica de conocer todos los alcances que puede tener un
P.L.C. y as tener herramientas para el mundo laboral.
121
9.2 BIBLIOGRAFIA
Libros
Robert L. Boylestad
Anlisis introductorio de circuitos
Trillas
Benjamin C. Kuo
Sistemas de control digital
CECSA
John J. Craig
Robtica
Prentice Hall
Salvador Milln
Automatizacin neumtica y electroneumtica
Norgren
Katsuiko Ogata
Ingeniera de control moderna
Prentice Hall
122
MANUALES
Controles lgicos programables nivel bsico TP-301/2000 FESTO
CURSOS
Automatizacin y control elctrico I: programacin bsica de PLCs
Impartido en el periodo 2011-II
Con una duracin de 20 horas
Centro de Cmputo de la Facultad de Estudios Superiores Cuautitln
DIPLOMADO
SISTEMAS MECATRNICOS:
123