Upload
rubenramm
View
23
Download
3
Embed Size (px)
Citation preview
1
INICIACION A LA PROGRAMACION DEL PLC
2
AREAS DE MEMORIA
La memoria del PLC se encuentra dividida en varias áreas, cada una de ellas con un cometido y características distintas: AREA DE PROGRAMA:
Donde se encuentra almacenado el programa del PLC (en lenguaje Ladder ó mnemónico).
AREA DE DATOS:Usada para almacenar valores ó para obtener
información sobre el estado del PLC.Esta dividida según funciones en IR, SR, AR,
HR, LR, DM, TR, T/C.
3
AREAS DE MEMORIA
DIRECCIONAMIENTO
Formato de las direcciones :
XXX Número de canal (Registro) YY Número de Bit (relé), (entre 00 y 15)
• p.ej. 21710 = CANAL 217, bit 10
X X X Y Y
4
AREAS DE MEMORIA
AREA DE E/S y AREA INTERNA (IR): Esta área de memoria comprende:
Los canales asociados a los terminales externos (entradas y salidas)
los relés internos (no correspondidos con el terminal externo), gestionados como relés de E/S.
Accesibles como bits ó Canales Los relés E/S no usados pueden usarse como IR No retienen estado frente falta de alimentación ó
cambio de modo de operación
5
AREAS DE MEMORIA
AREA ESPECIAL (SR)
Son relés de señalización de funciones particulares como:
SERVICIO (siempre ON, OFF) DIAGNOSIS (señalización ó anomalías) TEMPORIZACIONES (relojes a varias frecuencias) CALCULO (<,>,=) COMUNICACIONES
6
AREAS DE MEMORIA
AREA AUXILIAR (AR): Contiene bits de control e información de
recursos del PLC como: puerto RS232C, puerto de periféricos, casetes de memoria, …
Se dividen en dos bloques: Señalización
• Errores de Configuración• Datos del Sistema
Memorización y gestión de datos. Es un area de retención.
7
AREAS DE MEMORIA
La memoria del PLC se encuentra dividida en varias áreas, cada una de ellas con un cometido y características distintas.
AREA DE PROGRAMA: Donde se encuentra almacenado el programa del PLC (en lenguaje
Ladder ó mnenónico).
AREA DE DATOS: Usada para almacenar valores o para obtener información sobre el
estado del PLC. Está dividida según funciones en IR, SR, AR, HR, LR, DM, TR, T/C
8
AREA DE MEMORIA
AREA DE ENLACE (LR):
Se utilizan para el intercambio de datos entre dos PLC’s unidos en forma PC Link (1:1)
Dedicados al intercambio de información entre PLC’s.
Si no se utilizan como LR pueden usarse como IR.
9
AREAS DE MEMORIA
Todas estas áreas (IR, SR, AR, LR) tienen como características comunes:
Accesibles en forma de BIT ó de CANAL
Los relés de E/S no utilizados como E/S físicas o desempeñando la función específicada, pueden utilizarse como relés internos.
No conservan su estado en caso de fallo de alimentación ó cambio de modo de PLC (PROGRAM-RUN).
10
AREAS DE MEMORIA
AREA DE RETENCIÓN (HR)
Mantienen su estado ante fallos de alimentación ó cambio de modo del PLC.
Son gestionados igual que los IR, y direccionables como BIT ó como CANAL.
11
AREAS DE MEMORIA
MEMORIA DE DATOS (DM)
Se trata de memorias de 16 bit (palabra) Utilizables para gestión de valores numéricos Mantienen su estado ante cambios en modos
de trabajo ó fallos de tensión Direccionables como CANAL Este área suele contener los parámetros de
configuración del PLC (SETUP)
12
AREAS DE MEMORIA
TEMPORIZADORES Y CONTADORES (TIM y CNT)
Es el área de memoria que simula el funcionamiento de estos dispositivos.
Son usados por el PLC para programar retardos y contajes.
Elementos característicos:
SV. Valor de preselección PV. Valor actual BIT. Valor de estado.
13
ARQUITECTURA DE PROGRAMAS
Determinar los requisitos del sistema al cual se aplica el PLC. Identificar los dispositivos de E/S y asociarlos a las direcciones
físicas mediante una tabla de asignación. Preparar tablas que indiquen:
canales y bits de trabajo Temporizadores, contadores y saltos
Dibujar el diagrama de relés. (O en el lenguaje seleccionado). Transferir el programa a la CPU. Si se realiza mediante consola
habrá que traducir el programa a mnemónico. Verificar, vía simulación, el correcto funcionamiento del
programa. Memorizar el programa definitivo.
14
INSTRUCCIONES
INSTRUCCION : Especifica la operación a realizar (operador)
PARÁMETROS OPERANDOS : Son los DATOS asociados a la operación lógica (operando). Los parámetros son en general de formato TIPO y VALOR.
DIRECCION : Indica la posición de la instrucción en la memoria de programa Tomando como ejemplo 0000 LD H0501
DIRECCIÓN
INSTRUCCIÓN
PARÁMETRO
TIPO
VALOR
0000 LD H0501
15
INSTRUCCIONES
LD Instrucción de apertura de una rama de circuito. Está asociada a un contacto.
OUT Activa una bobina de salida. Constituye la terminación de un circuito
AND Coloca 2 contactos en serie OR Coloca 2 contactos en paralelo NOT Invierte la lógica del contacto (cerrado/abierto)
Pueden ser usadas en combibación: LD-AND-OR-OUT
16
LENGUAJES DE PROGRAMACIONMNEMÓNICO :
Constituído por el conjunto ó “SET” de instrucciones de la CPU.
Las funciones de control vienen representadas con expresiones abreviadas.
No es muy intuitiva la correspondencia con el esquema eléctrico
La fase de programación es más rápida.
LD
OR
AND NOT
OUT
0100
0000
0101
1000
Ej:
17
LENGUAJES DE PROGRAMACION
DIAGRAMA DE RELES
SIMBOLOS FUNDAMENTALES
/
Contactonormalmente abierto
Contactonormalmente cerrado
Salida
18
LENGUAJES DE PROGRAMACION
DIAGRAMA DE RELES Esquema de contactos
Permite una representación de la lógica de control similar a los esquemas electromecánicos
0100 0101
0000
1000/
19
LENGUAJES DE PROGRAMACION
ESQUEMA FUNCIONAL Cada función lógica tiene asociado un bloque
funcional que realiza la operación correspondiente. Requiere una aproximación más matemática y
lógica.
0100
0000 0101
1000OR AND
20
LENGUAJE DE PROGRAMACION
GRAFCET
Método utilizado en procesos secuenciales, cíclicos ó repetitivos.
Los estados y transiciones (paso entre estados) se implementan con funciones del autómata.
21
PROGRAMACIÓN BÁSICA DEL PLC CON CONSOLA
22
MANEJO DE LA CONSOLAELEMENTOS DE LA CONSOLA
DISPLAYPermite la visualización de datos, instrucciones del programa y mensajes de diagnósticos
SELECTORDetermina la modalidad operativa de la CPU <PROGRAM><MONITOR><RUN>
TECLADO
Permite la interacción de autómata y operario
23
MANEJO DE LA CONSOLATECLADO
Está compuesto por:
TECLAS NUMÉRICAS- Para introducir direcciones, datos, constantes,etc.
TECLA CLR- Produce la cancelación de la operación en curso.
TECLAS OPERATIVAS- Para las funciones de edición de programas.
TECLAS DE INSTRUCCIÓN- Para seleccionar las instrucciones de programación del PLC.
TECLA SHIFT- Selecciona la opción superior de las teclas de doble opción.
24
MANEJO DE LA CONSOLATECLAS DE INSTRUCCIONES
LD AND OR OUT NOT : Instrucciones básicas de un diagrama de relés
FUN : Funciones especiales (cada una lleva su código numérico 00..99)
SHIFT + CONT/# : BIT (o CONTACTO) genérico
SHIFT + CH/* : CANAL genérico (16 bit).
DM : Data Memory.
TIM CNT : Temporizador, contador
SFT : Registro de desplazamiento.
HR : Relés de retención.
TR : Relés temporales.
25
MANEJO DE LA CONSOLAMODO DE LA CPU
A través de la consola es posible realizar diferentes operaciones:
<RUN> Monitorización del área de dato Visualización de diagnósticos
<MONITOR> Permite las mismas operaciones que en modo <RUN> y además: + Cambio de datos y forzado de E/S + Cambio de SV de TIM/CNT
<PROGRAM> Mismas operaciones que en <MONITOR> y además: + Edición de programas
26
MANEJO DE LA CONSOLAPETICIÓN DE CONTRASEÑA (PASSWORD):
La contraseña es requerida para evitar las maniobras accidentales cuando se
inicializa el funcionamiento de la consola:
- Cuando se activa el PLC con consola puesta.
- Cuando se conecta la consola con el PLC activado.
CLR <PROGRAM>
PASSWORD!
MONTR
CLR
<PROGRAM> BZ
0000
27
MANEJO DE LA CONSOLAOPERACIÓN DEL BUZZER
Para activar y desactivar el Buzzer
<PROGRAM>
<PROGRAM> BZ
SHIFT 1B
28
MANEJO DE LA CONSOLABORRADO DE MEMORIA
Es posible borrar datos/programas contenidos en en la memoria RAM.
- Área de programa
- Área de datos: HR, DM, TC, EM
Este comando elimina un error eventual “Memory Error”.
La memoria de programa se llena de NOP (00).
Es posible borrar el programa a partir de una cierta dirección.
Es posible NO borrar de modo selectivo las áreas de datos: HR, CNT, DM, EM.
29
MANEJO DE LA CONSOLABORRADO DE MEMORIA
CLRSET
PLAYNOT
REC
RESET MONTR
HR
CNT
DM
EM
CANCELACIÓN TOTAL
DIRECCIÓN CANCELACIÓN PARCIAL
ÁREA DE DATOS
30
MANEJO DE LA CONSOLA
BORRADO DE MEMORIA
* Se selecciona el área EM con: SHIFT DM
De esta manera se borrará el único banco de memoria EM (CQM1H)
00000
EM CLR ?
31
MANEJO DE LA CONSOLAINTRODUCCIÓN DE UN PROGRAMA
Seleccionar el modo <Program>
Borrar la memoria
Seleccionar la dirección 0000.
Teclear las instrucciones y parámetros, memorizando con la tecla WRITE.
La dirección de la memoria de programa se incrementa automáticamente.
No olvidar programar la instrucción END - FUN(01).
32
DIAGRAMA DE RELÉS. CONCEPTOS/1
Un programa en diagrama de relés (L.D.) es una serie de ramas de circuito
Una rama (network) está compuesta de una serie de contactos, conectados en serie o en paralelo, que dan origen a una salida (activación de una bobina o de una función especial)
/0000
0001
0002
HR 0000
0003
TIM01
HR0000
TIM01
0206
33
DIAGRAMA DE RELÉS. CONCEPTOS/2
Las ramas de circuitos tienen origen en una barra vertical puesta a la izquierda del diagrama
El flujo de la señal va de izquierda a derecha y de arriba a abajo
A B
C D
E
R1
R2
34
DIAGRAMA DE RELÉS. CONCEPTOS/3
A una rama de circuito en L.D., corresponde una secuencia de instrucciones en forma mnemónica
Todas las ramas de circuito se inician con una instrucción LOAD
0005 0006
1000 0000000100020003
LDANDOUTEND
000500061000
Dirección Instrucción Datos
- Ejemplo de circuito - Mnemónico del ejemplo
35
DIAGRAMA DE RELÉS. CONCEPTOS/4
Una bobina no puede venir conectada directamente de la barra de inicio.
En tal caso es necesario interponer un contacto siempre cerrado (ver fig.)
A la derecha de una bobina no es posible programar ningún contacto
El número de contactos posibles en serie o en paralelo es prácticamente ilimitado
/0200 0200
0000
36
DIAGRAMA DE RELÉS. CONCEPTOS/5
Es aconsejable no programar una salida, como una bobina, más de una vez
Es posible utilizar libremente el contacto de una salida como una entrada auxiliar
Es posible colocar en paralelo 2 o más bobinas (ver fig.)
0000
0001
0208
0209
37
MANEJO DE LA CONSOLACIRCUITO DE ENCLAVAMIENTO
00010000
0500
0500
END(01)
38
INSTRUCCIONES BÁSICAS
AND LD Coloca en SERIE 2 bloques de circuito
Dirección Instrucción Datos
00000 00001 00002 00003 00004
LD OR LD OR NOT AND LD
00000 00001 00002 00003 -
00000 00002
00001 00003
1000
39
INSTRUCCIONES BÁSICASOR LD Coloca en PARALELO 2 bloques de circuito
00000 00001
00002 00003
1000
Dirección Instrucción Datos
00000 00001 00002 00003 00004 00005
LD AND NOT LD AND OR LD OUT
00000 00001 00002 00003 - 1000
40
PROGRAMACIÓN /100000 00001
00002 00003
1000
00004 00005 Dirección Instrucción Datos
00000 00001 00002 00003 00004 00005 00006 00007 ::: 00012
LD AND NOT LD NOT AND NOT OR LD LD AND OR LD ::: OUT
00000 00001 00002 00003 - 00004 00005 - ::: 1000
Dirección Instrucción Datos
00000 00001 00002 00003 00004 00005 ::: 00013 00014 ::: 00019
LD AND NOT LD NOT AND NOT LD AND ::: OR LD OR LD ::: OUT
00000 00001 00002 00003 00004 00005 ::: - - :::: 1000
1º Método 2º Método
Ejemplo de varios bloques en paralelo Con el 2º método de codificación, es posible al máximo 8 niveles de LD
41
PROGRAMACIÓN /2 Es fundamental conocer la correspondencia entre el diagrama de relés y la lista de instrucciones
00000 00001
01000 01001
00500
00002 00003 00004 00005
00006
1000
42
PROGRAMACIÓN /3 Para codificar en lista de instrucciones una red en diagrama de relés, es necesario primero identificar bloques elementales, formando simples circuitos en SERIE o en PARALELO
0000 0001
1000 1001
0500
0002 0003 0004 0005
0006
0000 0001
1000 1001
0500
0003
0004 0005
0006
1000 [a]
[b]
[c]
0002
[d]
[e]
[f]
43
PROGRAMACIÓN /4 Una vez realizado se programan los bloques elementales y se unen procediendo de arriba abajo y de izquierda a derecha
0000 0001
LD 000AND 0001
1000 1001
LD 100AND 1001
OR LD
0500
OR 0500
0002 0003
AND 0002AND NOT 0003
0004 0005
LD 0004AND 0005
0006
OR 0006
AND LD
1000
OUT 1000
[b][a]
[c]
[d]
[e]
[f]
Dirección Instrucción Datos 0000 LD 0000 0001 AND 0001 0002 LD 1000 0003 AND 1001 0004 OR LD - 0005 OR 0500 0006 AND 0002 0007 AND NOT 0003 0008 LD 0004 0009 AND 0005 0010 OR 0006 0011 AND LD - 0012 OUT 1000
[a]
[b]
[c]
[d]
[e]
[f]
44
MANEJO DE LA CONSOLAOPERACIONES DE BÚSQUEDA
La búsqueda puede hacerse de bit o de instrucción y desde cualquier modo operativo del PLC.
Se debe especificar el Contacto/Instrucción de búsqueda, antes de pulsar la tecla SRCH.
La búsqueda comienza en dirección actual y se detiene en la dirección en la que se halla el elemento buscado.
Pulsando de nuevo SRCH, la búsqueda sigue hasta la instrucción END.
45
MANEJO DE LA CONSOLABÚSQUEDA DE UNA INSTRUCCIÓN
CLR SRCH SRCH
CLR 0000
LD
SRCH
0000
LD 0000
INSTRUCCIÓN
46
MANEJO DE LA CONSOLABÚSQUEDA DE UN BIT
CLR SHIFTCONT
#
HR
TIM
CNT
SRCH SRCHNÚMERO
47
MANEJO DE LA CONSOLAINSERCIÓN DE UNA INSTRUCCIÓN
Modo <Program>
Buscar y posicionarse en la instrucción sobre la cual se va a efectuar la inserción.
Programar la instrucción
Pulsar:
INS
48
MANEJO DE LA CONSOLASELECCIÓN DE UNA DIRECCIÓN DE MEMORIA
(Ejemplo: dirección 0123) CLR0000
1B
2C
3D 0123
0123
49
MANEJO DE LA CONSOLALECTURA DE LA MEMORIA DE PROGRAMA
DIRECCIÓN SELECCIONADA
50
MANEJO DE LA CONSOLABORRADO DE UNA INSTRUCCIÓN
Modo <Program>
Buscar y posicionarse en la instrucción a ser borrada.
Pulsar
DEL
51
MANEJO DE LA CONSOLA
MONITORIZACIÓN
Es posible visualizar, en cualquier modalidad operativa, el estado de los relés internos de cualquier área del PLC, al igual que los valores actuales de Temporizadores/Contadores.
Al monitorizar un relé, pulsando las teclas:
se monitoriza el estado del relé consecutivo.
52
MANEJO DE LA CONSOLAMONITORIZACIÓN
CLR SHIFT
SHIFT
CONT
#
CH
*HR
LD
OUT
TIM
CNT
DM
MONTR
MONTR
CLR
SHIFT CLR
Dirección
53
MANEJO DE LA CONSOLAMONITORIZACIÓN
Es posible seleccionar simultáneamente hasta 6 datos (relés / canales).
A partir de los datos seleccionados es posible visualizar simultáneamente un máximo de 3. La rotación de datos para visualización se consigue pulsando:
MONTR
54
MANEJO DE LA CONSOLACAMBIO DE ÁREA DE DATOS
El cambio de un dato en el área del PLC es posible exclusivamente en modalidad <Monitor> o <Program>
Es posible modificar:
- Área interna del PLC (DM, HR, CNT, TIM)
- CANALES o BITS de E/S
Las operaciones de cambio de datos deben ser efectuadas a partir de la monitorización de dichos datos.
En el caso de monitorización múltiple, el dato a modificar deberá ser trasladado al extremo izquierdo del display.
55
MANEJO DE LA CONSOLACAMBIO DE ÁREA DE DATOS
SET / RESET DE UN BIT
CAMBIO DE VALOR (CH)
BIT o TIM-CNT en monitor
SET
PLAY
REC
RESET
CH
en monitor CHG (nuevo dato) WRITE
56
MANEJO DE LA CONSOLALECTURA DE ERRORES
Tipos de errores
- NO FATALES (FAL)
Implica el parpadeo del led de señalización de la CPU
- FATALES (FALS)
Implica la parada de la ejecución del programa y el encendido permanente del led de señalización de la CPU.
CLR FUN MONTR MONTR
La cancelación de errores eventuales puede efectuarse pulsando de
MONTR nuevo la tecla: en modo <Program>.
57
MANEJO DE LA CONSOLALECTURA DE ERRORES
Relación de mensajes de errorMensaje Descripción
MEMORY ERR Memoria defectuosa o mal programadaBorrar la memoria
NO END INST Falta instrucción ENDProgramar FUN(01)
I/O BUS ERR Error en el bus de módulos de E/SComprobar conexionado de módulos
BATT LOW Batería gastada. Sustituir batería
SCAN TIME OVER Superación del tiempo de ciclo máx.Optimizar el programa
58
TIM /1 LA INSTRUCCIÓN TIM (TEMPORIZADOR) SE UTILIZA PARA GENERAR UN
RETARDO A LA CONEXIÓN, RESPECTO A LA SEÑAL DE HABILITACIÓN “START” EL RETARDO (SV) PUEDE VARIAR ENTRE 0 Y 999.9 s, Y ES PROGRAMABLE EN
UNIDADES DE 0.1 s.. CUANDO “START” PONE A ON, EL VALOR ACTUAL DEL TIM (PV, INICIALMENTE
PUESTO A SV) EMPIEZA A DECREMENTARSE.
CUANDO PV => 0, EL CONTACTO TIM SE PONE A ON Y EXCITA LA SALIDA
CUANDO “START” PASA A OFF, EL CONTACTO TIM SE PONE A OFF, PV=SV Y EL
TEMPORIZADOR ES RESETEADO Y PREPARADO DE NUEVO NO SE PUEDEN PROGRAMAR TIM Y CNT CON LOS MISMOS NÚMEROS
59
TIM /2 EJEMPLO DE TEMPORIZADORES CONECTADOS EN CASCADA:
SE OBTIENE UN TEMPORIZADOR CON VALOR DE PRESELECCIÓN SV POR LA SUMA DE SV1+SV2
60
CNT /1 LA INSTRUCCIÓN CNT REALIZA LA FUNCIÓN DE UN CONTADOR CON
PRESELECCIÓN
EL VALOR DE PRESELECCIÓN (SV) PUEDE VARIAR ENTRE 0…9999
EL CONTADOR TIENE DOS ENTRADAS: - Cp CONTAJE DE PULSOS
- Rt RESET
EL FLANCO DE SUBIDA DE Cp DETERMINA EL DECREMENTO DE PV (SI Rt= OFF)
EN UNA UNIDAD
CUANDO PV =>0, EL CONTACTO DEL CNT SE PONE A ON
CUANDO Rt SE PONE A ON, EL CNT SE PREPARA DE NUEVO EN
CONDICIONES DE RESET (CONTACTO=0, PV=SV)
61
CNT /2 EL CNT ES RETENTIVO Y CONSERVA SU ESTADO (CONTACTO , PV) MANTENIDO INCLUSO ANTE UN FALLO DE TENSIÓN O CAMBIO DE MODO DE OPERACIÓN DE LA CPU
CUANDO PV=0, (CONTACTO A ON) LOS SIGUIENTES PULSOS DE ENTRADA SE IGNORAN
ACOPLADO A UNA BASE DE TIEMPOS DEL SISTEMA, UN CNT PUEDE SER UTILIZADO COMO TEMPORIZADOR RETENTIVO
NO PUEDEN PROGRAMARSE CNT Y TIM CON LOS MISMOS NÚMEROS
ACOPLANDO 2 CNT EN CASCADA, SE OBTIENE UN CONTAJE RESULTADO DEL PRODUCTO DE PV1 Y PV2
62
CNT /3 EJEMPLO DE TEMPORIZADORES CONECTADOS EN CASCADA:
SE UTILIZA SR 25502 (1s)
LA ENTRADA DE ACTIVACIÓN DEL TEMPORIZADOR ES AQUÍ LA ENTRADA DE RESET DEL CNT
63
MANEJO DE LA CONSOLACAMBIO DE TIM/CNT
Estado
PVTIM/CNT
En fase de monitorización
CHG
SET
PLAY
REC
RESET
[PV] WRITEValor actual
SV
TIM/CNT Contenido
en programaCHG [SV] WRITE
Valor de Preset
Set
Reset
64
MANEJO DE LA CONSOLA
CLR 0000
TIM0000TIM 00
1B
3D 0000
TIM 13
MONTR
CHG
2C
9 7
T139000
PRES VAL?T13 9000 ????
PRES VAL?T13 9000 0297
WRITE T130297
CAMBIO DE TIM/CNT (PV)
Cambio del valor actual del TIM 13: El valor actual PV se modifica de 9000 a 297.
65
MANEJO DE LA CONSOLACAMBIO DE TIM/CNT (SV)
Cambio del valor de preselección del TIM 00 programado en el paso 11. El valor de preselección se cambia de #1234 a #0297.
CLR0000
TIM0000TIM 000
0011 SRCHTIM
CHG
2C
9 7
0011 TIM DATAT00
#1234 #????
WRITE
SRCH 000
#1234
0011 TIM DATA
0011 TIM DATAT00 #1234 #0297
0011 TIM DATA #0297
66
MANEJO DE LA CONSOLACAMBIO DE TIM/CNT (SV)
En este caso el valor de preselección viene expresado por un canal externo (CH 01).
CLR0000
TIM0000TIM 00
1B
3D 0000
TIM 13
MONTRT13
9000
CHG PRES VAL?T13 9000 ????
2C
9 7PRES VAL?
T13 9000 0297
WRITE T130297
67
MANEJO DE LA CONSOLAVERIFICACIÓN DE PROGRAMA
Permite verificar eventualmente errores de programación.
Sólo puede realizarse en modo <Program>
CLR SRCH SRCH
CLR
Interrupción de la
modificación
Relación mensajes de error
????NO END INSTRCIRCUIT ERR
IL-ILC ERRJMP-JME ERR
COIL DUPLDIF OVERLOCN ERR
JME UNDEFDJMP UNDEFD
DUPLSNB-RET ERRSBN UNDEFDSBS UNDEFDSTEP OVERSNTX OVERSTEP ERR
68
MANEJO DE LA CONSOLAVERIFICACIÓN DE PROGRAMA
Si no hay errores, tendremos: (para 64 líneas).
0064 PROG CHK
Si existen errores, se da el error y la línea de programa.
0053 CIRCUIT ERROUT 0100
Pulsando SRCH la búsqueda prosigue.
69
MANEJO DE LA CONSOLALECTURA TIEMPO DE SCAN
En el modo <MONITOR> y <RUN> es posible visualizar el tiempo de scan medio así como el valor mínimo y máximo.
MONTR
CLR 0000
0000 SCAN TIME
AVG 018.3 MS
0000 SCAN TIME
MIN 013.2 MS
0000 SCAN TIME
MAX 023.6 MS
70
EJEMPLOS DE PROGRAMACIÓNRETARDO A LA DESCONEXIÓN
0000
1000
1000 0000
1000TIM0
TIM00
#0050
T T T
ENTRADA 0000
SALIDA 1000
RETARDO T 5s
LD 0000
OR 1000
AND NOT TIM00
OUT 1000
LD 1000
AND NOT 0000
TIM 00
#0050
SE GENERA UNA SEÑAL
DE RETARDO TRAS LA
CAÍDA DE LA SEÑAL DE
ENTRADA
71
EJEMPLOS DE PROGRAMACIÓNCIRCUITO DE BIESTABLE
LA SEÑAL DE SALIDA ES UNA ONDA CUADRADA CON TIEMPO A OFF=T1 Y TIEMPO A ON =T2
SALIDA
ENTRADAT2 T2 T2
T1 T1 T1
72
EJEMPLOS DE PROGRAMACIÓNCIRCUITO DE BIESTABLE
LD 0000AND NOT TIM02
TIM 01#0050
LD TIM01TIM 02
#0100LD TIM01OUT 1000
ENTRADA 0000SALIDA 1000T1 5sT2 10s
73
LLENADO AUTOMÁTICO DE BOTELLAS
ALARMA
PANEL
PULSADOR MARCHA
RESET
PULSADOR PARADA
SIRENA VÁLVULA
CÉLULA
MOTOR CINTA
DETECCIÓN DE NIVEL BAJO
DETECCIÓN DE VACÍO
EJEMPLOS DE PROGRAMACIÓN
74
EJEMPLOS DE PROGRAMACIÓNLLENADO AUTOMÁTICO DE BOTELLAS
Una cantidad constante de líquido se vierte en cada botella según va pasando por la cinta.
El piloto de alarma lucirá si el nivel del tanque alcanza un mínimo.
Cuando quede vacío sonará una sirena y la cinta se parará.
ASIGNACIÓN DE ENTRADA/SALIDA
INPUTSPULSADOR PARADA 0006
PULSADOR MARCHA 0002
RESET 0007
DETECCIÓN DE VACÍO 0009 DETECCIÓN DE NIVEL BAJO 0008
CÉLULA 0003
OUTPUTSSIRENA 1007
ALARMA 1006
MOTOR CINTA 1000
VÁLVULA 1001
75
EJEMPLOS DE PROGRAMACIÓNLLENADO AUTOMÁTICO DE BOTELLAS
1s
2s
START 0002
MOTOR CINTA 1000
CÉLULA 0003
VÁLVULA 1001
PULSADOR PARADA 0006
LS1 0008
ALARMA 1006
LS2 0009
SIRENA 1007
MOTOR 1000
RESET 0007
El motor 1500 funcionará cuando el pulsador de marcha 0002 se active. Cuando la célula detecta botella el motor se para. Se abre la válvula 1001 durante 2 segundos y se llena la botella. Un segundo después, el motor se pone en marcha hasta la próxima botella. Todas las operaciones cesan cuando se activa el pulsador de parada (emergencia, 0006).
Cuando se detecta nivel bajo (0008 a ON), el piloto de alarma lucirá con flashes de 2 seg. Cuando se detecta nivel vacío (0009 a ON) la sirena sonará y el motor de la cinta parará. Después de solucionar las anomalías, hacer un reset (0007) y todo volverá a condiciones iniciales.
76
EJEMPLOS DE PROGRAMACIÓN
77
EJEMPLOS DE PROGRAMACIÓNARRANQUE ESTRELLA - TRIÁNGULO
ATIM BTIM AYC
Pulsador de marcha (P.M.) = 000.00Pulsador de paro (P.P.) = 000.01Contactor (C) = 10.00Estrella (Y) = 10.01Triángulo (A) = 10.02Temporizador A = TIM000Temporizador B = TIM001
ASIGNACIÓN DE E/S
P.M.
P.P.
C
TIM A
A
C
TIM A
C
TIM B
Y
C
78
EJEMPLOS DE PROGRAMACIÓNARRANQUE ESTRELLA - TRIÁNGULO
( )
( )
( )
( )
0000 0001
10.00
10.00
10.00 TIM 000 15.02 10.01
10.00
10.00
10.00
TIM 000
# 0020
# 0010
TIM 001TIM 000
TIM 001 10.01 10.02
END
LD 0000
OR 1000
AND 0001
OUT 1000
LD 1000
AND NOT TIM 000
AND NOT 1002
OUT 1001
LD 1000
TIM 000
#0020
LD 1000
AND TIM 000
TIM 001
#0010
LD 1500
AND TIM 001
AND NOT 1002
OUT 1002
FUN(01) END
79
DIFU/DIFD, FUN(13)/(14)
LA INSTRUCCIÓN DIFU(13) GENERA, EN EL FLANCO ASCENDENTE DE LA SEÑAL DE ENTRADA, UN IMPULSO DE LA DURACIÓN DE UN CICLO DE SCAN.
USANDO DIFD(14), EL IMPULSO SE GENERA CON EL FLANCO DESCENDENTE DE LA SEÑAL
EN EL EJEMPLO, EL RELÉ HR0 PUEDE SER UTILIZADO PARA HABILITAR UNA FUNCIÓN QUE SE EJECUTARÁ UNA SOLA VEZ (EJ. FUNCIONES ARITMÉTICAS O DE TRANSFERENCIA DE DATOS).
80
KEEP, FUN(11)
LA INSTRUCCIÓN KEEP PERMITE CREAR UN RELÉ DE ENCLAVAMIENTO.
SI TENEMOS DOS ENTRADAS:
— S - SET
— R - SET CON R=OFF , UN IMPULSO SOBRE S ACTIVA DE FORMA PERMANENTE EL BIT PROGRAMADO COMO SALIDA.
UN IMPULSO SOBRE R DETERMINA LA DESACTIVACIÓN DEL BIT DE SALIDA.
EN EL EJEMPLO, LAS ENTRADAS 5 Y 6 PODRÍAN SER LOS PULSADORES DE START Y STOP DEL MOTOR 500.
81
EJEMPLOS DE PROGRAMACIÓNMARCHA - PARO CON RETENCIÓN
1501
1502HR 0000
HR 00001500
1500
00000
1501
1502
1000HR 0000
END
DIFU 1500
KEEP HR 00
( )
( )
( )
( )
00000
00002
00005
00008
00009
00011
00013
Éste programa activa una salida de control cuando se activa una entrada y desactiva la salida cuando la misma entrada se vuelve a activar por segunda vez. Cuando se produzca un fallo de alimentación la salida de control mantendrá el estado..
LD 00000FUN(13) DIFU
1500LD 1500AND NOT HR
OUT 15010000
LD 1500AND HR 0000 OUT 1502LD 1501LD 1502FUN(11) KEEP
HR 0000 LD HR 0000OUT 1000FUN(01) END
82
EJEMPLOS DE PROGRAMACIÓNPUERTA AUTOMÁTICA
DETECTOR ULTRASONIDOS (D.U.)
FOTOCÉLULA (FC) FINAL DE CARRERA (FC1)
FINAL DE CARRERA (FC2)
MANUAL-AUTOMATICO (M - A)
ABRIR MANUAL (Ab)
CERRAR MANUAL (C)
ASIGNACIÓN DE E/S
D.U. = 000.01FC = 000.03FC2 = 000.05FC1 = 000.07M - A = 000.09 off (M) on (A)Ab = 000.11C = 000.13
Apertura puerta = 10.00
Cierre puerta = 10.01
83
EJEMPLOS DE PROGRAMACIÓNPUERTA AUTOMÁTICA
DIFD 1501
DIFU 1500
( )
0003 0009
1500
10.00 1501 0009
0007 10.0110.00
0011 0009
0001 0009
1501
10.01 1500 0009
0013 0009
0005 10.0010.01
END
LD 0003AND 0009DIFD (14)
1501LD 1500LD 10.00AND NOT 1501AND 0009OR LDLD 0011AND NOT 0009OR LDAND NOT 0007AND NOT 10.01OUT 10.00LD 0001
AND 0009
DIFU (13)1500
LD 1501LD 1501AND NOT 1500
OR LDLD 0013AND NOT 0009OR LDAND NOT 0005AND NOT 10.00OUT 10.01END (01)
AND 0009
84
CMP, FUN(20) /1 LA INSTRUCCIÓN CMP COMPARA EL DATO DE UN CANAL (16 BIT) O UNA CONSTANTE, CON EL CONTENIDO DE OTRO CANAL.
EN RELACIÓN CON EL RESULTADO DE LA COMPARACIÓN, EXISTEN LOS FLAGS DEL SISTEMA:
— GR — EQ — LE
LOS PARÁMETROS C1 Y C2 A COMPARAR PUEDEN PERTENECER A LAS ÁREAS: #, IR, SR, HR, TIM, CNT.
85
CMP, FUN(20) /2
DADO QUE LOS FLAGS GR, EQ, LE PUEDEN IR ASOCIADOS A VARIAS INSTRUCCIONES Y QUE SE RESETEAN AL FINAL DEL CICLO DE SCAN ES NECESARIO CHEQUEAR EL RESULTADO DE LA COMPARACIÓN EN LA RAMA DE PROGRAMA INMEDIATAMENTE SUCESIVA A LA QUE HA ACTIVADO LA CMP.
LAS CONSTANTES UTILIZABLES EN LA COMPARACIÓN PUEDEN SER TANTO
HEXADECIMALES (0…FFFF) COMO BCD (0…9999).
TRAS LA OPERACIÓN DE COMPARACIÓN SE ACTIVARÁ UNO SOLO DE LOS FLAGS GR, EQ, LE.
86
EJEMPLOS DE PROGRAMACIÓNPOSICIONAMIENTO CON ENCODER
Se pretende posicionar un eje partiendo de la posición que nos marca un encoder.
El sistema consiste en movimientos repetitivos de una longitud determinada en el DM 0000.
El relé 25200 pone a “0” el contador de alta velocidad del Autómata. Se activa cada vez que iniciamos una maniobra.
En el DM 0001 guardamos la posición en la cual queremos que el motor baje de velocidad para posicionarse mejor.
La salida 1000 pone en marcha el motor, la 1001 activa la velocidad lenta y la 1002 la rápida.
87
EJEMPLOS DE PROGRAMACIÓN SELECCIONES DEL CONTADOR DE ALTA VELOCIDAD
(Estas selecciones son efectivas después de transferirlas al PLC y en la siguiente operación)
88
EJEMPLOS DE PROGRAMACIÓNPOSICIONAMIENTO CON ENCODER
DIFU 01500
0000000000
0150025200
00000CMP230
D000025507
1000
CMP230
D0001
00000
25505
25505
1001
1002
00002
00004
00008
00016 ( )END
LD 00000
LD 1500
AND 25507
OUT 25200
DIFU (13)1500
END (01)
LD 00000OUT TR 00CMP (20)
230DM 0000
LD TR 00
OUT 1000LD 00000OUT TR 00CMP (20)
230DM 0001
LD TR 00AND 25505
OUT 1001LD TR 00
OUT 1002
AND NOT 25505