PLC TSX 07 Software PL 7 07 El

  • Slides: 45
Download presentation
PLC TSX 07 Software PL 7 -07

PLC TSX 07 Software PL 7 -07

El PLC en el sistema de C. A. Terminal de Programación PC Memoria de

El PLC en el sistema de C. A. Terminal de Programación PC Memoria de Programa I N P U T S Procesador PLC O U T P U T S

Operación Procesamiento Interno Scan Lectura Entradas Ejecución programa Actualización Salidas

Operación Procesamiento Interno Scan Lectura Entradas Ejecución programa Actualización Salidas

Direccionamiento de I/O • Entrada: % I (entrada) 0 o 1 . 0 =

Direccionamiento de I/O • Entrada: % I (entrada) 0 o 1 . 0 = PLC base 1 = ext. I/O i nro. entrada i=0 a 8 • Salida % Q (salida) 0 o 1 . 0 = PLC base 1 = ext. I/O i nro. salida i=0 a 6

Display del estado del PLC Led RUN ERR COM I/O Estado RUN Encendido Significado

Display del estado del PLC Led RUN ERR COM I/O Estado RUN Encendido Significado Aplicación en ejecución Intermitente Aplic. en STOP / falla en ejecución Apagado ERR Encendido PLC apagado / aplic. no ejecutable Fallas internas Intermitente Aplicación no ejecutable Apagado COM Encendido I/O OK Vínculo de extensión activo Apagado Vínculo de extensión no activo Encendido Fallas de I/O Intermitente - (para la extensión) Apagado OK

Display de I/O I O 0 1 2 3 4 5 6 Encendido: I/O

Display de I/O I O 0 1 2 3 4 5 6 Encendido: I/O en ON Apagado: I/O en OFF Intermitente: error en la I/O 7 8

Salvando el programa y los datos • El programa y los datos del usuario

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 Nro. Línea LD %I 0. 1 Código Instrucción Operando

Programación • Modo Lista 003 Nro. Línea LD %I 0. 1 Código Instrucción Operando • Modo Ladder %I 0. 0 %I 0. 2 %I 0. 4 %I 0. 1 %I 0. 7 %Q 0. 4

Reversibilidad %I 0. 5 %Q 0. 4 %I 0. 4 Es equivalente a: LD

Reversibilidad %I 0. 5 %Q 0. 4 %I 0. 4 Es equivalente a: LD OR ST %I 0. 5 %I 0. 4 %Q 0. 4

Modo Lista

Modo Lista

Operandos de tipo bit Valores inmediatos 0 o 1 Bits de I/O %I 0.

Operandos de tipo bit Valores inmediatos 0 o 1 Bits de I/O %I 0. i %Q 0. i (0 i 8) (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 %I 0. 0 (LOAD) Carga en el

Instrucciones booleanas • Elementos de condición LD %I 0. 0 (LOAD) Carga en el acumulador la imagen lógica del estado eléctrico de la entrada %I 0. 0. • Elementos de acción ST %Q 0. 0 (STORE) El objeto bit asociado toma el valor lógico del acumulador (resultado de la lógica previa). • Ecuaciones booleanas LD %I 0. 0 AND %I 0. 1 ST %Q 0. 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

Detección de flancos ascendentes y descendentes • Flanco ascendente: detecta el cambio de una entrada de 0 a 1. %I 0. 2 Resultado booleano 1 scan del PLC Tiempo • Flanco descendente: detecta el cambio de una entrada de 1 a 0. %I 0. 2 Resultado booleano 1 scan del PLC Tiempo

Instrucciones de carga Estas instrucciones cargan el valor del operando, su inversa, su subida

Instrucciones de carga Estas instrucciones cargan el valor del operando, su inversa, su subida o su bajada, respectivamente, en el acumulador. 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

Instrucciones de asignación Las dos primeras instrucciones asignan el valor del acumulador o su

Instrucciones de asignación Las dos primeras instrucciones asignan el valor del acumulador o su inversa en el operando. 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 últimas instrucciones setean o resetean el valor del operando dependiendo del resultado de la lógica previa.

Instrucciones lógicas AND Estas instrucciones ejecutan un AND lógico entre el operando, (su inversa,

Instrucciones lógicas AND 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. 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

Instrucciones lógicas OR Estas instrucciones ejecutan un OR lógico entre el operando, (su inversa,

Instrucciones lógicas OR 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. 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

Instrucciones lógicas XOR Estas instrucciones ejecutan un OR exclusivo entre el operando, (su inversa,

Instrucciones lógicas XOR 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. Código Operando XOR %I, %Q, %M, %S, %BLK. x, % : Xk, [ XORN %I, %Q, %M, %S, %BLK. x, % : Xk, [ XORR %I XORF %I

Instrucción NOT Esta instrucción niega el resultado booleano de la instrucción previa. Código Operando

Instrucción NOT Esta instrucción niega el resultado booleano de la instrucción previa. Código Operando N -

Uso de paréntesis Las instrucciones AND y OR pueden usar paréntesis. La apertura va

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: %I 0. 0 %I 0. 1 %Q 0. 0 %I 0. 2 %I 0. 0 %I 0. 2 LD AND OR ST %I 0. 0 %I 0. 1 %I 0. 2 %Q 0. 0 LD AND( OR ) ST %I 0. 0 %I 0. 1 %I 0. 2 %Q 0. 0

Uso de paréntesis • Se pueden agregar modificadores al paréntesis que abre: – N

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 AND OR(N AND ) ST %I 0. 0 %I 0. 1 %I 0. 2 %I 0. 3 %Q 0. 0

Uso de paréntesis • Se pueden anidar hasta 8 niveles de paréntesis. • No

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

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 IN Q TYPE: TON TB: 1 min ADJ: y %TMi. P: 9999

Timers %TMi IN Q TYPE: TON TB: 1 min ADJ: y %TMi. P: 9999

Timers: Tipos Existen tres tipos: • TON: Para controlar acciones on-delay • TOF: Para

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)

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), 1 s, 100 ms, 1 ms (%TM 0 y %TM 1) 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 IN Q %TMi. P %TMi. V • El timer se inicia

Timer TON: Funcionamiento IN Q %TMi. P %TMi. V • 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.

Timer TOF: Funcionamiento IN Q %TMi. P %TMi. V • Una subida de IN

Timer TOF: Funcionamiento IN Q %TMi. P %TMi. V • 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).

Timer TP: Funcionamiento IN Q %TMi. P %TMi. V • Una subida de IN

Timer TP: Funcionamiento IN Q %TMi. P %TMi. V • 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.

Timers: Programación %I 0. 0 %TM 1 IN Q %Q 0. 3 LD IN

Timers: Programación %I 0. 0 %TM 1 IN Q %Q 0. 3 LD IN LD ST %I 0. 0 %TM 1. Q %Q 0. 3 Timers: Configuración Se deben configurar: • el tipo • TB • %TMi. P

Contadores Se usan para contar eventos en forma ascendente o descendente. %Ci R E

Contadores Se usan para contar eventos en forma ascendente o descendente. %Ci R E S D CU F CD %Ci. P: 9999

Contadores: Características Nro. Contador %Ci 0 a 15 Valor Actual %Ci. V Palabra inc.

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 CU ascendente Una subida incrementa %Ci. V Entrada cuenta CD descendente Una subida decrementa %Ci. V Salida underflow E En 1 cuando %Ci. V pasa de (empty) 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

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: – %C 1. 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 %I 0. 1 R %C 8 S CU %I 0. 2 %M

Contadores: Programación %I 0. 1 R %C 8 S CU %I 0. 2 %M 0 %C 8. D CD E D F %Q 0. 3 LD R LD AND CU LD ST %I 0. 1 %C 8 %I 0. 2 %M 0 %C 8. D %Q 0. 3 Contadores: Configuración Se debe configurar %Ci. P.

Instrucciones de control • Fin de Programa – END: Fin incondicional del programa –

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

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 JMPC LD ST JMP %L 8: LD ST %L 12: LD %M 15 %L 8 %I 0. 1 %M 15 %L 12 %M 2 %I 0. 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:

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

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#A 536 o #A 536)

Operandos de tipo Palabra Valores inmediatos Valores enteros entre – 32768 y 32767 Palabras

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: %MW 5: X 6

Instrucciones numéricas • Generalmente se aplican a palabras de 16 bits. • Se escriben

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 : = [Op 1: =Op 2] Op 1 Op

Instrucciones numéricas: Asignación Operador Sintaxis : = [Op 1: =Op 2] Op 1 Op 2 %MWi, %SWi Valor inmediato, %MWi, %KWi, %SWi, %BLK. x

Instrucciones numéricas: Comparación Operador Sintaxis LD [Op 1 oper Op 2] >, >=, <,

Instrucciones numéricas: Comparación Operador Sintaxis LD [Op 1 oper Op 2] >, >=, <, <=, =, <> AND [Op 1 oper Op 2] OR [Op 1 oper Op 2] Op 1 Op 2 %MWi, %KWi, %Swi, %BLK. x Valor inmediato, %MWi, %KWi, %SWi, %BLK. x

Instrucciones numéricas: Aritméticas Operador Sintaxis +, -, *, /, REM [Op 1 : =

Instrucciones numéricas: Aritméticas Operador Sintaxis +, -, *, /, REM [Op 1 : = Op 2 oper Op 3] SQRT [Op 1 : = SQRT(Op 2)] INC, DEC [oper Op 1] Op 1 Op 2/Op 3 %MWi, %SWi Valor inmediato, %MWi, %KWi, %SWi, %BLK. x

Instrucciones numéricas: Reglas • Suma – Overflow: %S 18 = 1 y el resultado

Instrucciones numéricas: Reglas • Suma – Overflow: %S 18 = 1 y el resultado no es correcto. • Resta – Resultado negativo: %S 17 = 1. • Multiplicación – Overflow: %S 18 = 1 y el resultado no es correcto. • División / Resto (REM) – División por 0: %S 18 = 1 y el resultado no es correcto. – Overflow: %S 18 = 1 y el resultado no es correcto. • Raíz cuadrada – Operando negativo: %S 18 = 1 y el resultado no es correcto. Es responsabilidad del programador resetear los bits %S 17 y %S 18.

Software • El software PL 707 puede ser utilizado para programar el PLC desde

Software • El software PL 707 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/