La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

PROGRAMACIÓN ESTRUCTURADA

Presentaciones similares


Presentación del tema: "PROGRAMACIÓN ESTRUCTURADA"— Transcripción de la presentación:

1 PROGRAMACIÓN ESTRUCTURADA

2 TIPOS DE ACCIONES TEMPORIZADA RETARDADA LIMITADA CONDICIONADA
X3 Sir. 5s. Sirena t/X3/5s RETARDADA X2 Cer. 0.5s. LIMITADA X3 Sir. 2s. CONDICIONADA X1 Ter. Cal. IMPULSIONAL Si X4↑ MEMORIZADA X6 X8 XBR Implementación: 1-S7-GRAPH 2-Programación: A) Temporizada: Temporizador SE arrancado por la etapa Retardada: Acción temporizada: temporizador SE (negado) arrancado con la etapa (Opción alternativa: Dibujo con acción condicionada SE) Limitada: Acción temporizada: temporizador SE arrancado con la etapa (Opción alternativa: Acción Temp. negado) Condicionada: Acción condicionada por etapa y variable de control Impulsional: Arranque: Con el flanco de etapa. No es una salida directa sino una variable de control Memorizada: Acción enclavada que no se desenclava al cambiar de etapa.

3 TIPOS DE ACCIONES IMPLEMENTACIÓN TEMPORIZADA RETARDADA LIMITADA
U E2 L S5T#0.5s SE T1 U T1 = Cerrar FC-X TEMPORIZADA X3 Sir. 5s. Sirena t/X3/5s U E3 L S5T#5s SE T1 U T1 //… OB1 = Sirena FC-X RETARDADA X2 Cer. 0.5s. LIMITADA X3 Sir. 2s. U E3 L S5T#2s SI T1 U T1 = Sirena FC-X U E4 FP M100.0 = Activar //… FC-X IMPULSIONAL Si X4

4 MACRO-ETAPAS REGLAS DE EXPANSIÓN
Entrada E1 =1 5 T5 3 4 T3 T4 S1 2 T2 6 T7 M1 =1 REGLAS DE EXPANSIÓN 1) La expansión de una macroetapa siempre tendrá una sola etapa de entrada y una sola etapa de salida. 2) La etapa de entrada (E) se activará cuando se active la macroetapa. 3) La activación de la etapa de salida (S) implicará la validación de las transiciones inmediatamente posteriores a la macroetapa. Salida

5 MACRO-ETAPAS IMPLEMENTACIÓN U M1 SPBN _001 CALL FC-M1 U S1 S E6 R M1
_001: NOP 0 OB1 U M1 FP M100.0 S E3 R E4 R E5 R S1 //Fin arranque U E3 U T3 S E4 R E3 //… //Salida U E5 U T5 S S1 FC-M1 E1 =1 5 T5 3 4 T3 T4 S1 2 T2 6 T7 M1 =1 1-Código depende del nombre (M1) 2-Problemas en la implementación por cajas CRÍTICAS

6 MACRO-ETAPAS (II) IMPLEMENTACIÓN BIT DE TRABAJO OB1 O M 500.0
ON M 500.0 FP M 100.0 SPBN ARR S E3 R E4 R E5 R S1 ARR: NOP 0 //… //Salida U E5 U T5 S S1 R M 100.0 FC-M1 E1 =1 5 T5 3 4 T3 T4 S1 U M1 SPBN _001 CALL FC-M1 U S1 S E6 R M1 _001: NOP 0 2 T2 6 T7 M1 =1 Notar: 1- Etapa E1 no se implementa como tal 2. O M500.0, ON M500.0 se puede sustituir por SET (Siemens) 1-Arranque independiente del bloque invocante 2-Válido para cualquier implementación de OB1 PROPIEDADES

7 MACRO-ETAPAS CORRECTO M2 No se pueden realizar llamadas consecutivas

8 MACRO-ACCIONES PLANTILLA 10 Inicialización 1 S 10 11 2 n
10 Inicialización Coordinación Horizontal 1 S 10 11 2 n

9 ESCALADO (I) FC 105 VALOR de tipo REAL TARJETAS DE 16 BITS
Resolución real: Limite práctico: MW50: [ , ] U E 100.0 SPBNB _001 CALL "SCALE" IN :=MW 50 HI_LIM := e+003 LO_LIM := e+000 BIPOLAR:=E100.1 RET_VAL:=MW10 OUT :=MD108 _001: U BIE = A OB1 Tarjetas A/D, D/A: Módulos con 16 bits de resolución. Lectura/Escritura directamente de la periferia: L PEW128 Bipolar: Valores de MW50: , ;

10 ESCALADO (II) FC 106 VALOR ENTERO OB1 U E 100.0 SPBNB _001
CALL "UNSCALE" IN :=MD50 HI_LIM := e+002 LO_LIM := e+000 BIPOLAR:=E100.1 RET_VAL:=MW10 OUT :=MW108 _001: U BIE = A OB1

11 EJEMPLO-SECUENCIA CILINDROS
OB1 Cilindros simple efecto Pre-actuadores monoestables CORREGIR! Entrar A y B GRAFCETS NIVEL-1 A y B comprimidos 1 Salir A FC-X: Compresión de A 10 Arranque: no volver a ejecutar A ha salido Salir B =1 2 Ordenar compresión A B ha salido 11 Entrar A A comprimido 3 Nota: Se asumen cilindros de simple efecto. Una sola señal de mando para expansión y compresión BitDeFin = 1 12 A ha entrado 4 Entrar B =1 a OB1 B ha entrado

12 EJEMPLO-SECUENCIA CILINDROS
OB1 Sac Sbc Cilindros simple efecto Pre-actuadores monoestables Llamar FC3 Llamar FC4 Sbc.Sac 1 Llamar FC1 GRAFCET NIVEL-2 Sae Llamar FC2 2 TABLA DE SÍMBOLOS (Detalle) Sbe FC1 Expansion A Sac (E124.0) A comprimido FC2 Expansion B Sae (E124.1) A expandido FC3 Compresión A Sbc (E124.2) B comprimido FC4 Compresión B Sbe (E124.3) B expandido A 124.0 Exp/Comp A A 124.1 Exp/Comp B Llamar FC3 3 Se asumen cilindros de simple efecto. Una sola señal de mando para expansión y compresión Sac 4 Llamar FC4 Sbc

13 EJEMPLO-SECUENCIA CILINDROS
OB1 Sac Sbc PLANTILLA OB1 U E0 SPBN _001 CALL FC3 CALL FC4 U BitDeFinCA U BitDeFinCB S E1 R E0 _001: NOP 0 //… U BitDeErrorEA SPBN _500 Rutina Error _500: NOP 0 U BitDeErrorEB SPBN _501 _501: NOP 0 U PEMER SPBN _600 Rutina Emerg _600: NOP 0 Llamar FC3 Llamar FC4 Sbc.Sac 1 Llamar FC1 Sae Llamar FC2 2 Sbe Llamar FC3 3 Gestión de errores estructurada Sac 4 Llamar FC4 Sbc

14 EJEMPLO-SECUENCIA CILINDROS
O M500.0 ON M500.0 FP BitDeTrabajo SPBN _ARR R BitDeFinCA R BitDeErrorCA = MarcaPulsoArranque _ARR: NOP 0 U MarcaPulsoArranque L S5T#5s SS Tout S E11 //… U E12 //Actuador Etapa Final S BitDeFinCA R BitDeTrabajo R Tout U Tout //Gestión Error SPBN _500 S BitDeErrorCA //Rutina Error _500: NOP 0 PLANTILLA FC-3 FC3: Compresión de A Arranque: Tout=5s BitDeFinCA/ErrorCA=0 10 =1 11 A124.0 No usa estructura de cajas (evita posibles problemas de mostrar el cero) Error 12 BitDeFinCA = 1 Gestión directa actuadores U E11 R A124.0 1-Gestión de errores estructurada 2-Se podría pensar en un nivel adicional de estructuración donde se gestionan todas las imágenes de las salidas, pero en eSte caso no tendría demasiado sentido. 3- Se puede quitar de la plantilla la caja de arranque y colocar ahí los arranques por disparo 16/12/09 Puedo arrancar el Temporizador en la caja de arranque sin temor a necesitar mostrar el cero puesto que en ciclos sucesivos se muestra el cero inmnediatamente =1 a OB1

15 EJEMPLO-SECUENCIA CILINDROS
2 OB1 OB1 B ha salido U E3 SPBN _004 CALL FC3 U BitDeFinCA S E4 R E3 _004: NOP 0 Entrar A 3 A ha entrado 4 FC-3: Compresión de A O M 500.0 ON M500.0 FP BitDeTrabajo S E11 R E12 R BitDeFinCA U E11 //Actuador R A124.0 U E11 U Sac S E12 R E11 U E12 S BitDeFinCA R BitDeTrabajo FC-3 Arranque: BitDeFinCA=0 10 =1 Ordenar compresión A 11 A comprimido BitDeFinCA = 1 12 =1 a OB1

16 EJEMPLO-SECUENCIA CILINDROS
FC-1: Compresión de A Control TIME-OUT Arranque: Tout=5s BitDeFinCA/ErrorCA=0 10 O M 500.0 ON M500.0 FP BitDeTrabajo S E11 R E12 R BitDeErrorCA R BitDeFinCA L S5T#5s //Timeout SS Tout U E11 //Actuador R ExpandirA U E11 U Sac S E12 R E11 U E12 //Final S BitDeFinCA R BitDeTrabajo U Tout //Error S BitDeErrorCA FC-1 U E3 SPBN _001 CALL FC3 U BitDeFinCA S E4 R E3 _001: NOP 0 //Errores U BitDeErrorCA SPBN _500 R E4 Rutina Tratamiento Errores _500: NOP 0 OB1 =1 Ordenar compresión A 11 a OB1 A comprimido.NOT(Tout) Tout 12 BitDeFinCA = 1 =1 a OB1 1-Gestión del Temporizador Tout!! 2-No hay un punto de salida común 3-¿Tout puede ser un SE? ¿y un SV? Comentarios

17 ESQUEMA DE LLAMADAS ENTRE BLOQUES
CALL CC UC CALL<FBX,DBX> FBX FCX DBX OB1: Ciclo principal Sistema Operativo FBX FCX DBX Accesible por cualquier bloque OB_X DBY (global)

18 BLOQUES DE DATOS GLOBALES
DEFINICION VISUALIZACIÓN DE VALORES DIRECCIONAMIENTO EM AWL AUF DB1 L DBB0 T MB0 L DBW0 T MW0 U DBX 0.0 S M 0.0 L DB1.DBB0 T MB0 //etc... L “Temp”.DATO1 T MB0 //etc...

19 PASO DE PARÁMETROS BLOQUE SUMADOR: FUNCIÓN
Se usa # para indicar parámetro

20 PASO DE PARÁMETROS BLOQUE SUMADOR: BLOQUE INVOCANTE
Completar la gestión del Enable Out Solución: Para llamadas incondicionales (un poco sofisticado) SET SPBNB _001 CALL FC1 _001: U BIE = M 100.0 Nota: Falta ejemplo de bloque FB (Evento Interno código ejemplo S7).

21 PASO DE PARÁMETROS BLOQUE OPERACION NUMÉRICA: [(A+B)/C]-D FC1 A IN
TEMP (A+B/C)-D B OUT RES C D FC1 L #A L #B +I L #C /I //División entera T #Div L #Div L #D -I T #RES Ejemplo: Transparencia de la escalera mecánica usando un solo bloque

22 PASO DE PARÁMETROS IMPLEMENTACIÓN AWL MOTOR 1 Tipo IN Tipo OUT FC1
2 MOTOR 1 Tipo IN Tipo OUT FC1 S5T#50s Motor1 T1 Etapa0 Etapa1 Etapa2 Grafcet de la escalera mecánica (actuador de la Práctica 4)

23 PASO DE PARÁMETROS IMPLEMENTACIÓN AWL 1 2 MOTOR 1


Descargar ppt "PROGRAMACIÓN ESTRUCTURADA"

Presentaciones similares


Anuncios Google