SlideShare una empresa de Scribd logo
PLC TSX 07
Software PL7-07
El PLC en el sistema de C.A.
Terminal de Programación
Memoria de
Programa
Procesador
O
U
T
P
U
T
S
I
N
P
U
T
S
PLC
PC
Operación
Procesamiento
Interno
Lectura
Entradas
Ejecución
programa
Actualización
Salidas
Scan
Direccionamiento
de I/O
• Entrada:
% I 0 o 1 . i
(entrada) 0 = PLC base nro.entrada
1 = ext. I/O i = 0 a 8
• Salida
% Q 0 o 1 . i
(salida) 0 = PLC base nro.salida
1 = ext. I/O i = 0 a 6
Display del estado del PLC
Led Estado Significado
RUN Encendido Aplicación en ejecución
Intermitente Aplic.en STOP / falla en ejecución
Apagado PLC apagado / aplic.no ejecutable
ERR Encendido Fallas internas
Intermitente Aplicación no ejecutable
Apagado OK
COM Encendido Vínculo de extensión activo
Apagado Vínculo de extensión no activo
I/O Encendido Fallas de I/O
Intermitente - (para la extensión)
Apagado OK
RUN
COM
ERR
I/O
Display de I/O
0 1 2 3 4 5 6 7 8
0 1 2 3 4 5 6
I
O
Encendido: I/O en ON
Apagado: I/O en OFF
Intermitente: error en la I/O
Salvando el programa
y los datos
• El programa y los datos del
usuario están en la memoria
RAM del PLC.
• El programa puede también
ser transferido a la EEPROM.
Programación
• Modo Lista
003 LD %I0.1
Nro.Línea Código Operando
Instrucción
• Modo Ladder
%I0.0 %I0.2 %I0.4 %Q0.4
%I0.1 %I0.7
Reversibilidad
%I0.5 %Q0.4
%I0.4
Es equivalente a:
LD %I0.5
OR %I0.4
ST %Q0.4
Modo Lista
Operandos de tipo bit
Valores inmediatos 0 o 1
Bits de I/O
%I0.i (0 ≤ i ≤ 8)
%Q0.i (0 ≤ i ≤ 6)
Bits internos %Mi (0 ≤ i ≤ 127)
Bits del sistema %Si (0 ≤ i ≤ 127)
Bits de bloques de
función
%BLK.x
Ej.: %TMi.Q
Bits extraídos de
palabras
%•:Xk
Ej.: %MWi:Xk (0 ≤ k ≤ 15)
Expresiones de
comparación
[
Ej.: [%MWi < 1000]
Instrucciones booleanas
• Elementos de condición
LD %I0.0 (LOAD)
Carga en el acumulador la imagen lógica del
estado eléctrico de la entrada %I0.0.
• Elementos de acción
ST %Q0.0 (STORE)
El objeto bit asociado toma el valor lógico del
acumulador (resultado de la lógica previa).
• Ecuaciones booleanas
LD %I0.0
AND %I0.1
ST %Q0.0
El resultado booleano de los elementos de
condición es aplicado al elemento de acción.
Detección de flancos
ascendentes y descendentes
• Flanco ascendente: detecta el
cambio de una entrada de 0 a 1.
• Flanco descendente: detecta el
cambio de una entrada de 1 a 0.
1 scan del PLC
%I0.2
Tiempo
Resultado
booleano
1 scan del PLC
%I0.2
Tiempo
Resultado
booleano
Instrucciones de carga
Código Operando
LD 0/1, %I, %Q, %M, %S, %BLK.x, %•:Xk, [
LDN %I, %Q, %M, %S, %BLK.x, %•:Xk, [
LDR %I
LDF %I
Estas instrucciones cargan el valor del
operando, su inversa, su subida o su bajada,
respectivamente, en el acumulador.
Instrucciones de asignación
Código Operando
ST %Q, %M, %S, %BLK.x, %•:Xk
STN %Q, %M, %S, %BLK.x, %•:Xk
S %Q, %M, %S, %BLK.x, %•:Xk
R %Q, %M, %S, %BLK.x, %•:Xk
Las dos primeras instrucciones asignan el
valor del acumulador o su inversa en el
operando.
Las dos últimas instrucciones setean o
resetean el valor del operando dependiendo
del resultado de la lógica previa.
Instrucciones lógicas AND
Código Operando
AND 0/1, %I, %Q, %M, %S, %BLK.x, %•:Xk, [
ANDN %I, %Q, %M, %S, %BLK.x, %•:Xk, [
ANDR %I
ANDF %I
Estas instrucciones ejecutan un AND lógico
entre el operando, (su inversa, su subida o su
bajada), y el resultado booleano de la
instrucción previa.
Instrucciones lógicas OR
Código Operando
OR 0/1, %I, %Q, %M, %S, %BLK.x, %•:Xk, [
ORN %I, %Q, %M, %S, %BLK.x, %•:Xk, [
ORR %I
ORF %I
Estas instrucciones ejecutan un OR lógico
entre el operando, (su inversa, su subida o su
bajada), y el resultado booleano de la
instrucción previa.
Instrucciones lógicas XOR
Código Operando
XOR %I, %Q, %M, %S, %BLK.x, %•:Xk, [
XORN %I, %Q, %M, %S, %BLK.x, %•:Xk, [
XORR %I
XORF %I
Estas instrucciones ejecutan un OR exclusivo
entre el operando, (su inversa, su subida o su
bajada), y el resultado booleano de la
instrucción previa.
Instrucción NOT
Código Operando
N -
Esta instrucción niega el resultado booleano
de la instrucción previa.
Uso de paréntesis
Las instrucciones AND y OR pueden usar
paréntesis. La apertura va asociada con la
instrucción AND u OR.
Por cada paréntesis abierto debe aparecer
una instrucción de cierre de paréntesis.
Ejemplo:
LD %I0.0
AND( %I0.1
OR %I0.2
)
ST %Q0.0
%I0.0 %I0.1 %Q0.0
%I0.2
%I0.0 %I0.1 %Q0.0
%I0.2
LD %I0.0
AND %I0.1
OR %I0.2
ST %Q0.0
Uso de paréntesis
• Se pueden agregar
modificadores al paréntesis
que abre:
– N negación AND(N u OR(N
– R subida AND(R u OR(R
– F bajada AND(F u OR(F
– [ comparación
Ejemplo:
LD %I0.0
AND %I0.1
OR(N %I0.2
AND %I0.3
)
ST %Q0.0
Uso de paréntesis
• Se pueden anidar hasta 8
niveles de paréntesis.
• No se deben ubicar rótulos ni
subrutinas entre paréntesis.
• No se deben ubicar
instrucciones de bloques de
función entre paréntesis.
• No se deben ubicar
instrucciones ST, STN, S y R
entre paréntesis.
Bloques de función
• Timers
• Contadores
Manejan objetos de tipo:
– Bit: Salidas del bloque
– Palabra: Parámetros de
configuración y valores
actuales
Timers
%TMi
TYPE: TON
TB: 1 min
ADJ: y
%TMi.P: 9999
IN Q
Timers: Tipos
Existen tres tipos:
• TON: Para controlar
acciones on-delay
• TOF: Para controlar
acciones off-delay
• TP: Para crear pulsos de
duración exacta
Timers: Características
Nro. Timer %TMi 0 a 31
Tipo TON
TOF
TP
On-delay (defecto)
Off-delay
Pulso
Tiempo
base
TB 1 min (defecto), 1s, 100ms,
10ms, 1ms (%TM0 y %TM1)
Valor actual %TMi.V Se incrementa de 0 a %TMi.P
Puede ser leída pero no
escrita por el programa
Valor de
preset
%TMi.P 0 ≤ %TMi.P ≤ 9999 (defecto)
Puede ser leída y escrita por
el programa
Delay grado. = %TMi.P x TB
Entrada de
seteo
IN El timer arranca con
su subida (TP / TON)
o con su bajada (TOF)
Salida del
timer
Q Se hace 1 según el tipo de
timer
Timer TON:
Funcionamiento
• El timer se inicia con una subida de IN.
• El valor %TMi.V se incrementa de 0 a
%TMi.P una unidad por cada pulso de
duración TB.
• %TMi.Q se hace 1 cuando %TMi.V
alcanza a %TMi.P y %TMi.Q se hace 0
con una caída de IN.
• Con una caída de IN el timer se
detiene y %TMi.V vuelve a 0.
IN
Q
%TMi.P
%TMi.V
Timer TOF:
Funcionamiento
• Una subida de IN setea el valor de %TMi.V a 0.
• Una caída de IN inicia el timer.
• El valor %TMi.V se incrementa de 0 a %TMi.P
una unidad por cada pulso de duración TB.
• %TMi.Q se hace 1 con la subida de IN y
%TMi.Q se hace 0 cuando %TMi.V llega a
%TMi.P.
• Es reseteado con una subida de IN (el timer se
detiene y %TMi.V vuelve a 0).
IN
Q
%TMi.P
%TMi.V
Timer TP:
Funcionamiento
• Una subida de IN inicia el timer.
• El valor %TMi.V se incrementa de 0 a %TMi.P
una unidad por cada pulso de duración TB.
• %TMi.Q se hace 1 al iniciarse el timer y
%TMi.Q se hace 0 cuando %TMi.V llega a
%TMi.P.
• No puede ser reseteado.
• Cuando %TMi.V llega a %TMi.P e IN está en
0, %TMi.V cae a 0.
IN
Q
%TMi.P
%TMi.V
Timers: Programación
LD %I0.0
IN %TM1
LD %TM1.Q
ST %Q0.3
%I0.0 %Q0.3
%TM1
IN Q
Se deben configurar:
• el tipo
•TB
•%TMi.P
Timers: Configuración
Contadores
Se usan para contar eventos en
forma ascendente o descendente.
%Ci
%Ci.P: 9999
R
E
S
CU
CD
D
F
Contadores:
Características
Nro. Contador %Ci 0 a 15
Valor Actual %Ci.V
Palabra inc. o decr. según
CU y CD
Valor Preset %Ci.P 0 ≤ %Ci.P ≤ 9999 (defecto)
Entrada de
reseteo
R Si vale 1 ⇒ %Ci.V = 0
Entrada de
seteo
S Si vale 1 ⇒ %Ci.V = %Ci.P
Entrada
cuenta
ascendente
CU
Una subida incrementa
%Ci.V
Entrada
cuenta
descendente
CD
Una subida decrementa
%Ci.V
Salida
underflow
E
(empty)
En 1 cuando %Ci.V pasa de
0 a 9999
Salida preset
alcanzado
D
(done)
En 1 cuando %Ci.V = %Ci.P
Salida overflow F (full)
En 1 cuando %Ci.V pasa de
9999 a 0
Contadores:
Funcionamiento
• Cuenta ascendente:
– Una subida en CU, inicia el incremento de
%Ci.V.
– Cuando %Ci.V llega a %Ci.P, %Ci.D = 1.
– Cuando %Ci.V pasa de 9999 a 0, %Ci.F=1,
y vuelve a 0 si la cuenta sigue.
• Cuenta descendente:
– Una subida en CD, inicia el decremento de
%Ci.V.
– Cuando %Ci.V pasa de 0 a 9999, %Ci.E=1,
y vuelve a 0 si la cuenta sigue.
• Reset: Cuando esta entrada vale 1:
– %C1.V=0, %Ci.E=0, %Ci.D=0 y %Ci.F=0.
Esta entrada tiene prioridad.
• Set: Cuando vale 1, si R está en 0:
– %Ci.V=%Ci.P y %Ci.D=1.
Contadores: Programación
LD %I0.1
R %C8
LD %I0.2
AND %M0
CU %C8
LD %C8.D
ST %Q0.3
Se debe configurar %Ci.P.
%I0.1
%C8
R
E
S
CU
CD
D
F
%C8.D %Q0.3
%I0.2 %M0
Contadores: Configuración
Instrucciones de control
• Fin de Programa
– END: Fin incondicional del programa
– ENDC: Fin del programa si el
resultado de la operación previa es 1
– ENDCN: Fin del programa si el
resultado de la operación previa es 0
(Cuando se activa el fin de programa,
se actualizan las salidas y se inicia el
próximo scan).
• Instrucción NOP
Se usa para reservar líneas para
insertar luego instrucciones sin
modificar los números de línea.
Instrucciones de control
• Instrucciones de salto
– JMP: Salto incondicional
– JMPC: Salto si op. previa = 1
– JMPCN: Salto si op. previa = 0
(Van seguidas por un rótulo %Li (0 ≤ i ≤ 15)
Ejemplo: LD %M15
JMPC %L8
LD %I0.1
ST %M15
JMP %L12
%L8:
LD %M12
ST %M2
%L12:
LD %I0.0
– No se pueden ubicar entre paréntesis.
– El rótulo sólo puede ser seguido por LD, LDN, LDR, LDF o
BLK.
Instrucciones de Subrutina
• SRn
Llama a la subrutina
referenciada por el rótulo SRn:
si el resultado de la operación
previa es 1.
• RET
Se ubica al final de la
subrutina. Provoca el retorno
al programa principal.
– No pueden ser ubicadas entre paréntesis.
– Una subrutina no puede llamar a otra.
– El rótulo sólo puede ser ubicado antes de un
LD o BLK.
– La llamada no puede ser seguida por una
asignación (ST).
Operandos de tipo Palabra
• Los objetos de tipo palabra son
direccionados como palabras de
16 bits, que se almacenan en la
memoria de datos y que pueden
contener un valor entero entre
–32768 y 32767.
• Se almacenan en código binario
de 16 bits. El bit 15 indica el signo
(1→ - , 0 → +).
• Se pueden ingresar o recuperar
en formato:
– Decimal (ej: 1579)
– Hexadecimal (ej: 16#A536 o #A536)
Operandos de tipo Palabra
Valores
inmediatos
Valores enteros entre –32768 y
32767
Palabras
internas
%MWi (0 ≤ i ≤ 255)
Para uso del usuario
Palabras
constantes
%KWi (0 ≤ i ≤ 63)
Se modifican desde el menú de
configuración
Palabras
del sistema
%SWi (0 ≤ i ≤ 127)
Acceso a datos que vienen del PLC
Bits extraídos de palabras: Es posible extraer
uno de los 16 bits de algunas palabras.
Sintaxis: %palabra : Xk (0 ≤ k ≤ 15)
Ejemplo: %MW5:X6
Instrucciones numéricas
• Generalmente se aplican a
palabras de 16 bits.
• Se escriben entre corchetes.
• Se ejecutan si el resultado
de la operación previa fue 1.
Instrucciones numéricas:
Asignación
Operador Sintaxis
:= [Op1:=Op2]
Op1 Op2
%MWi, %SWi
Valor inmediato,
%MWi, %KWi,
%SWi, %BLK.x
Instrucciones numéricas:
Comparación
Operador Sintaxis
>, >=, <, <=, =, <>
LD [Op1 oper Op2]
AND [Op1 oper Op2]
OR [Op1 oper Op2]
Op1 Op2
%MWi, %KWi,
%Swi, %BLK.x
Valor inmediato, %MWi,
%KWi, %SWi, %BLK.x
Instrucciones numéricas:
Aritméticas
Operador Sintaxis
+, -, *, /, REM [Op1 := Op2 oper Op3]
SQRT [Op1 := SQRT(Op2)]
INC, DEC [oper Op1]
Op1 Op2/Op3
%MWi, %SWi
Valor inmediato, %MWi,
%KWi, %SWi, %BLK.x
Instrucciones numéricas:
Reglas
• Suma
– Overflow: %S18 = 1 y el resultado
no es correcto.
• Resta
– Resultado negativo: %S17 = 1.
• Multiplicación
– Overflow: %S18 = 1 y el resultado
no es correcto.
• División / Resto (REM)
– División por 0: %S18 = 1 y el
resultado no es correcto.
– Overflow: %S18 = 1 y el resultado
no es correcto.
• Raíz cuadrada
– Operando negativo: %S18 = 1 y el
resultado no es correcto.
Es responsabilidad del programador resetear
los bits %S17 y %S18.
Software
• El software PL707 puede ser
utilizado para programar el
PLC desde una PC, pero
requiere la conexión del PLC
a la PC.
• Existe un producto que
permite simular la
programación del PLC en
modo Lista en:
http://www.exa.unicen.edu.ar/~control/

Más contenido relacionado

PDF
Unidad III: Polos y Ceros de una función de transferencia.
PDF
Motores sincronos
PDF
Máquinas Eléctricas Rotativas
PPTX
Motores DC & Variadores de Velocidad
PPTX
Sistemas de primer orden, segundo orden y orden superior
PDF
004. diseño de circuitos neumaticos metodo cascada
PDF
PPTX
Sintonización pid
Unidad III: Polos y Ceros de una función de transferencia.
Motores sincronos
Máquinas Eléctricas Rotativas
Motores DC & Variadores de Velocidad
Sistemas de primer orden, segundo orden y orden superior
004. diseño de circuitos neumaticos metodo cascada
Sintonización pid

La actualidad más candente (20)

PDF
Electroneumática y Neumática: ejercicios básicos en fluidsim
PDF
008. diseño de circuitos secuenciales electroneumaticos cableados
PDF
Control de-motores-electricos
PDF
problemas-resueltos engranajes rectos helicoidales
PPSX
Sistemas de control de lazo abierto y lazo cerrado
PDF
PLC: ejercicios de sistemas secuenciales
PDF
08 instrucciones latch_y_unlatch_plc__40490__
DOC
Circuitos electroneumaticos
PPTX
Motorreductores y motores de DC
PDF
PDF
Sistema de Control de Lazo Cerrado
PDF
05 respuesta en el tiempo de un sistema de control
PDF
005. diseño de circuitos neumaticos metodo paso a paso
PDF
Sistema de automatización para el llenado de un tanque de agua por bombas con...
PDF
métodos de sintonización de controladores P, PI, PD, PID.
PPTX
MOSFET uso aplicaciones definicion
PPTX
3.2 control on off y proporcional
PPT
Orden superior
PDF
Ingenieria de control moderna - Ogata 5ed
PDF
Control Moderna (Ogata Katsuhiko).pdf
Electroneumática y Neumática: ejercicios básicos en fluidsim
008. diseño de circuitos secuenciales electroneumaticos cableados
Control de-motores-electricos
problemas-resueltos engranajes rectos helicoidales
Sistemas de control de lazo abierto y lazo cerrado
PLC: ejercicios de sistemas secuenciales
08 instrucciones latch_y_unlatch_plc__40490__
Circuitos electroneumaticos
Motorreductores y motores de DC
Sistema de Control de Lazo Cerrado
05 respuesta en el tiempo de un sistema de control
005. diseño de circuitos neumaticos metodo paso a paso
Sistema de automatización para el llenado de un tanque de agua por bombas con...
métodos de sintonización de controladores P, PI, PD, PID.
MOSFET uso aplicaciones definicion
3.2 control on off y proporcional
Orden superior
Ingenieria de control moderna - Ogata 5ed
Control Moderna (Ogata Katsuhiko).pdf
Publicidad

Similar a Plc intrucciones basicas (20)

PPTX
5_a-Programacion-de-PLC-2 (1).pptx wwww ww
PPTX
Elaboracion de circuitos modulos logicos programables
PDF
102108144 plc-1-v2
DOCX
PPTX
SESIÓN 11 automatzacon de rocesos ndustrales.pptx
PPTX
Clases de procesos industriales SESIÓN 11.pptx
PDF
Ejercicios de-programacic3b3n-resueltos-con-step-7
PDF
EJERCICIOS_DE_PROGRAMACION_RESUELTOS_CON (1).pdf
PDF
Ejercicios de programacion_resueltos_con
PDF
4.1 programación del autómata programable
PPTX
Automatización de procesos industriales
PPTX
218727950 curso-robots-motoman-pptx
PDF
PLC: Ejercicios de programación resueltos con step-7
PPT
Niple diapopsitiva
PPT
Niple diapopsitiva
PPT
Niple diapopsitiva
PDF
PLC: programación avanzada de PLC
PDF
Curso-de-PLC.pdf
PPT
Presentaciones plc
PDF
Software lenguajes ld_y_il
5_a-Programacion-de-PLC-2 (1).pptx wwww ww
Elaboracion de circuitos modulos logicos programables
102108144 plc-1-v2
SESIÓN 11 automatzacon de rocesos ndustrales.pptx
Clases de procesos industriales SESIÓN 11.pptx
Ejercicios de-programacic3b3n-resueltos-con-step-7
EJERCICIOS_DE_PROGRAMACION_RESUELTOS_CON (1).pdf
Ejercicios de programacion_resueltos_con
4.1 programación del autómata programable
Automatización de procesos industriales
218727950 curso-robots-motoman-pptx
PLC: Ejercicios de programación resueltos con step-7
Niple diapopsitiva
Niple diapopsitiva
Niple diapopsitiva
PLC: programación avanzada de PLC
Curso-de-PLC.pdf
Presentaciones plc
Software lenguajes ld_y_il
Publicidad

Último (20)

PPTX
Manual ISO9001_2015_IATF_16949_2016.pptx
PDF
Copia de Presentación Propuesta de Marketing Corporativo Blanco y Negro.pdf
PPTX
Presentación - Taller interpretación iso 9001-Solutions consulting learning.pptx
PPTX
NILS actividad 4 PRESENTACION.pptx pppppp
PPTX
MARITIMO Y LESGILACION DEL MACO TRANSPORTE
PPTX
GEOLOGIA, principios , fundamentos y conceptos
PDF
Sugerencias Didacticas 2023_Diseño de Estructuras Metalicas_digital.pdf
PPTX
Introducción al Diseño de Máquinas Metodos.pptx
PDF
TESTAMENTO DE DESCRIPTIVA ..............
PDF
Módulo-de Alcance-proyectos - Definición.pdf
DOCX
Cumplimiento normativo y realidad laboral
PDF
Supervisión del PROC. 228_Osinergmin.pdf
PPTX
1 CONTAMINACION AMBIENTAL EN EL PLANETA.pptx
PPTX
clase MICROCONTROLADORES ago-dic 2019.pptx
PDF
Pensamiento Politico Siglo XXI Peru y Mundo.pdf
PPTX
Curso Corto de PLANTA CONCENTRADORA FREEPORT
PDF
Primera formulación de cargos de la SEC en contra del CEN
PDF
5 Presentación de PowerPointGENERACIÓN DESECHOS UIS 18-02-2023 (1).pdf
DOC
informacion acerca de la crianza tecnificada de cerdos
PPT
Sustancias Peligrosas de empresas para su correcto manejo
Manual ISO9001_2015_IATF_16949_2016.pptx
Copia de Presentación Propuesta de Marketing Corporativo Blanco y Negro.pdf
Presentación - Taller interpretación iso 9001-Solutions consulting learning.pptx
NILS actividad 4 PRESENTACION.pptx pppppp
MARITIMO Y LESGILACION DEL MACO TRANSPORTE
GEOLOGIA, principios , fundamentos y conceptos
Sugerencias Didacticas 2023_Diseño de Estructuras Metalicas_digital.pdf
Introducción al Diseño de Máquinas Metodos.pptx
TESTAMENTO DE DESCRIPTIVA ..............
Módulo-de Alcance-proyectos - Definición.pdf
Cumplimiento normativo y realidad laboral
Supervisión del PROC. 228_Osinergmin.pdf
1 CONTAMINACION AMBIENTAL EN EL PLANETA.pptx
clase MICROCONTROLADORES ago-dic 2019.pptx
Pensamiento Politico Siglo XXI Peru y Mundo.pdf
Curso Corto de PLANTA CONCENTRADORA FREEPORT
Primera formulación de cargos de la SEC en contra del CEN
5 Presentación de PowerPointGENERACIÓN DESECHOS UIS 18-02-2023 (1).pdf
informacion acerca de la crianza tecnificada de cerdos
Sustancias Peligrosas de empresas para su correcto manejo

Plc intrucciones basicas

  • 2. El PLC en el sistema de C.A. Terminal de Programación Memoria de Programa Procesador O U T P U T S I N P U T S PLC PC
  • 4. Direccionamiento de I/O • Entrada: % I 0 o 1 . i (entrada) 0 = PLC base nro.entrada 1 = ext. I/O i = 0 a 8 • Salida % Q 0 o 1 . i (salida) 0 = PLC base nro.salida 1 = ext. I/O i = 0 a 6
  • 5. Display del estado del PLC Led Estado Significado RUN Encendido Aplicación en ejecución Intermitente Aplic.en STOP / falla en ejecución Apagado PLC apagado / aplic.no ejecutable ERR Encendido Fallas internas Intermitente Aplicación no ejecutable Apagado OK COM Encendido Vínculo de extensión activo Apagado Vínculo de extensión no activo I/O Encendido Fallas de I/O Intermitente - (para la extensión) Apagado OK RUN COM ERR I/O
  • 6. Display de I/O 0 1 2 3 4 5 6 7 8 0 1 2 3 4 5 6 I O Encendido: I/O en ON Apagado: I/O en OFF Intermitente: error en la I/O
  • 7. Salvando el programa y los datos • El programa y los datos del usuario están en la memoria RAM del PLC. • El programa puede también ser transferido a la EEPROM.
  • 8. Programación • Modo Lista 003 LD %I0.1 Nro.Línea Código Operando Instrucción • Modo Ladder %I0.0 %I0.2 %I0.4 %Q0.4 %I0.1 %I0.7
  • 9. Reversibilidad %I0.5 %Q0.4 %I0.4 Es equivalente a: LD %I0.5 OR %I0.4 ST %Q0.4
  • 11. Operandos de tipo bit Valores inmediatos 0 o 1 Bits de I/O %I0.i (0 ≤ i ≤ 8) %Q0.i (0 ≤ i ≤ 6) Bits internos %Mi (0 ≤ i ≤ 127) Bits del sistema %Si (0 ≤ i ≤ 127) Bits de bloques de función %BLK.x Ej.: %TMi.Q Bits extraídos de palabras %•:Xk Ej.: %MWi:Xk (0 ≤ k ≤ 15) Expresiones de comparación [ Ej.: [%MWi < 1000]
  • 12. Instrucciones booleanas • Elementos de condición LD %I0.0 (LOAD) Carga en el acumulador la imagen lógica del estado eléctrico de la entrada %I0.0. • Elementos de acción ST %Q0.0 (STORE) El objeto bit asociado toma el valor lógico del acumulador (resultado de la lógica previa). • Ecuaciones booleanas LD %I0.0 AND %I0.1 ST %Q0.0 El resultado booleano de los elementos de condición es aplicado al elemento de acción.
  • 13. Detección de flancos ascendentes y descendentes • Flanco ascendente: detecta el cambio de una entrada de 0 a 1. • Flanco descendente: detecta el cambio de una entrada de 1 a 0. 1 scan del PLC %I0.2 Tiempo Resultado booleano 1 scan del PLC %I0.2 Tiempo Resultado booleano
  • 14. Instrucciones de carga Código Operando LD 0/1, %I, %Q, %M, %S, %BLK.x, %•:Xk, [ LDN %I, %Q, %M, %S, %BLK.x, %•:Xk, [ LDR %I LDF %I Estas instrucciones cargan el valor del operando, su inversa, su subida o su bajada, respectivamente, en el acumulador.
  • 15. Instrucciones de asignación Código Operando ST %Q, %M, %S, %BLK.x, %•:Xk STN %Q, %M, %S, %BLK.x, %•:Xk S %Q, %M, %S, %BLK.x, %•:Xk R %Q, %M, %S, %BLK.x, %•:Xk Las dos primeras instrucciones asignan el valor del acumulador o su inversa en el operando. Las dos últimas instrucciones setean o resetean el valor del operando dependiendo del resultado de la lógica previa.
  • 16. Instrucciones lógicas AND Código Operando AND 0/1, %I, %Q, %M, %S, %BLK.x, %•:Xk, [ ANDN %I, %Q, %M, %S, %BLK.x, %•:Xk, [ ANDR %I ANDF %I Estas instrucciones ejecutan un AND lógico entre el operando, (su inversa, su subida o su bajada), y el resultado booleano de la instrucción previa.
  • 17. Instrucciones lógicas OR Código Operando OR 0/1, %I, %Q, %M, %S, %BLK.x, %•:Xk, [ ORN %I, %Q, %M, %S, %BLK.x, %•:Xk, [ ORR %I ORF %I Estas instrucciones ejecutan un OR lógico entre el operando, (su inversa, su subida o su bajada), y el resultado booleano de la instrucción previa.
  • 18. Instrucciones lógicas XOR Código Operando XOR %I, %Q, %M, %S, %BLK.x, %•:Xk, [ XORN %I, %Q, %M, %S, %BLK.x, %•:Xk, [ XORR %I XORF %I Estas instrucciones ejecutan un OR exclusivo entre el operando, (su inversa, su subida o su bajada), y el resultado booleano de la instrucción previa.
  • 19. Instrucción NOT Código Operando N - Esta instrucción niega el resultado booleano de la instrucción previa.
  • 20. Uso de paréntesis Las instrucciones AND y OR pueden usar paréntesis. La apertura va asociada con la instrucción AND u OR. Por cada paréntesis abierto debe aparecer una instrucción de cierre de paréntesis. Ejemplo: LD %I0.0 AND( %I0.1 OR %I0.2 ) ST %Q0.0 %I0.0 %I0.1 %Q0.0 %I0.2 %I0.0 %I0.1 %Q0.0 %I0.2 LD %I0.0 AND %I0.1 OR %I0.2 ST %Q0.0
  • 21. Uso de paréntesis • Se pueden agregar modificadores al paréntesis que abre: – N negación AND(N u OR(N – R subida AND(R u OR(R – F bajada AND(F u OR(F – [ comparación Ejemplo: LD %I0.0 AND %I0.1 OR(N %I0.2 AND %I0.3 ) ST %Q0.0
  • 22. Uso de paréntesis • Se pueden anidar hasta 8 niveles de paréntesis. • No se deben ubicar rótulos ni subrutinas entre paréntesis. • No se deben ubicar instrucciones de bloques de función entre paréntesis. • No se deben ubicar instrucciones ST, STN, S y R entre paréntesis.
  • 23. Bloques de función • Timers • Contadores Manejan objetos de tipo: – Bit: Salidas del bloque – Palabra: Parámetros de configuración y valores actuales
  • 24. Timers %TMi TYPE: TON TB: 1 min ADJ: y %TMi.P: 9999 IN Q
  • 25. Timers: Tipos Existen tres tipos: • TON: Para controlar acciones on-delay • TOF: Para controlar acciones off-delay • TP: Para crear pulsos de duración exacta
  • 26. Timers: Características Nro. Timer %TMi 0 a 31 Tipo TON TOF TP On-delay (defecto) Off-delay Pulso Tiempo base TB 1 min (defecto), 1s, 100ms, 10ms, 1ms (%TM0 y %TM1) Valor actual %TMi.V Se incrementa de 0 a %TMi.P Puede ser leída pero no escrita por el programa Valor de preset %TMi.P 0 ≤ %TMi.P ≤ 9999 (defecto) Puede ser leída y escrita por el programa Delay grado. = %TMi.P x TB Entrada de seteo IN El timer arranca con su subida (TP / TON) o con su bajada (TOF) Salida del timer Q Se hace 1 según el tipo de timer
  • 27. Timer TON: Funcionamiento • El timer se inicia con una subida de IN. • El valor %TMi.V se incrementa de 0 a %TMi.P una unidad por cada pulso de duración TB. • %TMi.Q se hace 1 cuando %TMi.V alcanza a %TMi.P y %TMi.Q se hace 0 con una caída de IN. • Con una caída de IN el timer se detiene y %TMi.V vuelve a 0. IN Q %TMi.P %TMi.V
  • 28. Timer TOF: Funcionamiento • Una subida de IN setea el valor de %TMi.V a 0. • Una caída de IN inicia el timer. • El valor %TMi.V se incrementa de 0 a %TMi.P una unidad por cada pulso de duración TB. • %TMi.Q se hace 1 con la subida de IN y %TMi.Q se hace 0 cuando %TMi.V llega a %TMi.P. • Es reseteado con una subida de IN (el timer se detiene y %TMi.V vuelve a 0). IN Q %TMi.P %TMi.V
  • 29. Timer TP: Funcionamiento • Una subida de IN inicia el timer. • El valor %TMi.V se incrementa de 0 a %TMi.P una unidad por cada pulso de duración TB. • %TMi.Q se hace 1 al iniciarse el timer y %TMi.Q se hace 0 cuando %TMi.V llega a %TMi.P. • No puede ser reseteado. • Cuando %TMi.V llega a %TMi.P e IN está en 0, %TMi.V cae a 0. IN Q %TMi.P %TMi.V
  • 30. Timers: Programación LD %I0.0 IN %TM1 LD %TM1.Q ST %Q0.3 %I0.0 %Q0.3 %TM1 IN Q Se deben configurar: • el tipo •TB •%TMi.P Timers: Configuración
  • 31. Contadores Se usan para contar eventos en forma ascendente o descendente. %Ci %Ci.P: 9999 R E S CU CD D F
  • 32. Contadores: Características Nro. Contador %Ci 0 a 15 Valor Actual %Ci.V Palabra inc. o decr. según CU y CD Valor Preset %Ci.P 0 ≤ %Ci.P ≤ 9999 (defecto) Entrada de reseteo R Si vale 1 ⇒ %Ci.V = 0 Entrada de seteo S Si vale 1 ⇒ %Ci.V = %Ci.P Entrada cuenta ascendente CU Una subida incrementa %Ci.V Entrada cuenta descendente CD Una subida decrementa %Ci.V Salida underflow E (empty) En 1 cuando %Ci.V pasa de 0 a 9999 Salida preset alcanzado D (done) En 1 cuando %Ci.V = %Ci.P Salida overflow F (full) En 1 cuando %Ci.V pasa de 9999 a 0
  • 33. Contadores: Funcionamiento • Cuenta ascendente: – Una subida en CU, inicia el incremento de %Ci.V. – Cuando %Ci.V llega a %Ci.P, %Ci.D = 1. – Cuando %Ci.V pasa de 9999 a 0, %Ci.F=1, y vuelve a 0 si la cuenta sigue. • Cuenta descendente: – Una subida en CD, inicia el decremento de %Ci.V. – Cuando %Ci.V pasa de 0 a 9999, %Ci.E=1, y vuelve a 0 si la cuenta sigue. • Reset: Cuando esta entrada vale 1: – %C1.V=0, %Ci.E=0, %Ci.D=0 y %Ci.F=0. Esta entrada tiene prioridad. • Set: Cuando vale 1, si R está en 0: – %Ci.V=%Ci.P y %Ci.D=1.
  • 34. Contadores: Programación LD %I0.1 R %C8 LD %I0.2 AND %M0 CU %C8 LD %C8.D ST %Q0.3 Se debe configurar %Ci.P. %I0.1 %C8 R E S CU CD D F %C8.D %Q0.3 %I0.2 %M0 Contadores: Configuración
  • 35. Instrucciones de control • Fin de Programa – END: Fin incondicional del programa – ENDC: Fin del programa si el resultado de la operación previa es 1 – ENDCN: Fin del programa si el resultado de la operación previa es 0 (Cuando se activa el fin de programa, se actualizan las salidas y se inicia el próximo scan). • Instrucción NOP Se usa para reservar líneas para insertar luego instrucciones sin modificar los números de línea.
  • 36. Instrucciones de control • Instrucciones de salto – JMP: Salto incondicional – JMPC: Salto si op. previa = 1 – JMPCN: Salto si op. previa = 0 (Van seguidas por un rótulo %Li (0 ≤ i ≤ 15) Ejemplo: LD %M15 JMPC %L8 LD %I0.1 ST %M15 JMP %L12 %L8: LD %M12 ST %M2 %L12: LD %I0.0 – No se pueden ubicar entre paréntesis. – El rótulo sólo puede ser seguido por LD, LDN, LDR, LDF o BLK.
  • 37. Instrucciones de Subrutina • SRn Llama a la subrutina referenciada por el rótulo SRn: si el resultado de la operación previa es 1. • RET Se ubica al final de la subrutina. Provoca el retorno al programa principal. – No pueden ser ubicadas entre paréntesis. – Una subrutina no puede llamar a otra. – El rótulo sólo puede ser ubicado antes de un LD o BLK. – La llamada no puede ser seguida por una asignación (ST).
  • 38. Operandos de tipo Palabra • Los objetos de tipo palabra son direccionados como palabras de 16 bits, que se almacenan en la memoria de datos y que pueden contener un valor entero entre –32768 y 32767. • Se almacenan en código binario de 16 bits. El bit 15 indica el signo (1→ - , 0 → +). • Se pueden ingresar o recuperar en formato: – Decimal (ej: 1579) – Hexadecimal (ej: 16#A536 o #A536)
  • 39. Operandos de tipo Palabra Valores inmediatos Valores enteros entre –32768 y 32767 Palabras internas %MWi (0 ≤ i ≤ 255) Para uso del usuario Palabras constantes %KWi (0 ≤ i ≤ 63) Se modifican desde el menú de configuración Palabras del sistema %SWi (0 ≤ i ≤ 127) Acceso a datos que vienen del PLC Bits extraídos de palabras: Es posible extraer uno de los 16 bits de algunas palabras. Sintaxis: %palabra : Xk (0 ≤ k ≤ 15) Ejemplo: %MW5:X6
  • 40. Instrucciones numéricas • Generalmente se aplican a palabras de 16 bits. • Se escriben entre corchetes. • Se ejecutan si el resultado de la operación previa fue 1.
  • 41. Instrucciones numéricas: Asignación Operador Sintaxis := [Op1:=Op2] Op1 Op2 %MWi, %SWi Valor inmediato, %MWi, %KWi, %SWi, %BLK.x
  • 42. Instrucciones numéricas: Comparación Operador Sintaxis >, >=, <, <=, =, <> LD [Op1 oper Op2] AND [Op1 oper Op2] OR [Op1 oper Op2] Op1 Op2 %MWi, %KWi, %Swi, %BLK.x Valor inmediato, %MWi, %KWi, %SWi, %BLK.x
  • 43. Instrucciones numéricas: Aritméticas Operador Sintaxis +, -, *, /, REM [Op1 := Op2 oper Op3] SQRT [Op1 := SQRT(Op2)] INC, DEC [oper Op1] Op1 Op2/Op3 %MWi, %SWi Valor inmediato, %MWi, %KWi, %SWi, %BLK.x
  • 44. Instrucciones numéricas: Reglas • Suma – Overflow: %S18 = 1 y el resultado no es correcto. • Resta – Resultado negativo: %S17 = 1. • Multiplicación – Overflow: %S18 = 1 y el resultado no es correcto. • División / Resto (REM) – División por 0: %S18 = 1 y el resultado no es correcto. – Overflow: %S18 = 1 y el resultado no es correcto. • Raíz cuadrada – Operando negativo: %S18 = 1 y el resultado no es correcto. Es responsabilidad del programador resetear los bits %S17 y %S18.
  • 45. Software • El software PL707 puede ser utilizado para programar el PLC desde una PC, pero requiere la conexión del PLC a la PC. • Existe un producto que permite simular la programación del PLC en modo Lista en: http://www.exa.unicen.edu.ar/~control/