Post on 04-Feb-2015
Programación S7 1Dpto. de electrónica, automática e informática industrial (EUITI-UPM)
PROGRAMACIÓN
ESTRUCTURADA
Programación S7 2Dpto. de electrónica, automática e informática industrial (EUITI-UPM)
TIPOS DE ACCIONES
CCONDICIONADAONDICIONADA
X1X1
Ter.Ter.
Cal.Cal.
RRETARDADAETARDADA
X2X2
Cer.Cer.0.5s.0.5s.
LLIMITADAIMITADA
X3X3
Sir.Sir. 2s.2s.
MMEMORIZADAEMORIZADA
X6X6
X8X8
XBRXBR
IIMPULSIONALMPULSIONAL
Si X4↑
TTEMPORIZADAEMPORIZADA
X3X3
Sir.Sir. 5s.5s.
Sirena
t/X3/5s
Programación S7 3Dpto. de electrónica, automática e informática industrial (EUITI-UPM)
TIPOS DE ACCIONES
RRETARDADAETARDADA
X2X2
Cer.Cer.0.5s.0.5s.
LLIMITADAIMITADA
X3X3
Sir.Sir. 2s.2s.
IIMPULSIONALMPULSIONAL
Si X4
TTEMPORIZADAEMPORIZADA
X3X3
Sir.Sir. 5s.5s.
Sirena
t/X3/5s
IMPLEMENTACIÓN
U E4
FP M100.0
= Activar
//…
FC-X
U E2
L S5T#0.5s
SE T1
U E2
U T1
= Cerrar
FC-X
U E3
L S5T#2s
SI T1
U E3
U T1
= Sirena
FC-X
U E3
L S5T#5s
SE T1
U E3
U T1
//…
OB1
U E3
= Sirena
FC-X
Programación S7 4Dpto. de electrónica, automática e informática industrial (EUITI-UPM)
MACRO-ETAPAS
2
T2
6
T7
M1
=1
E1
=1
5
T5
3
4
T3
T4
S1
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.
Entrada
Salida
Programación S7 5Dpto. de electrónica, automática e informática industrial (EUITI-UPM)
MACRO-ETAPAS
2
T2
6
T7
M1
=1
E1
=1
5
T5
3
4
T3
T4
S1
IMPLEMENTACIÓN
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
R E5
FC-M1
1-Código depende del nombre (M1)
2-Problemas en la implementación por cajas
CRÍTICAS
U M1
SPBN _001
CALL FC-M1
U S1
S E6
R M1
_001: NOP 0
OB1
Programación S7 6Dpto. de electrónica, automática e informática industrial (EUITI-UPM)
MACRO-ETAPAS (II)
2
T2
6
T7
M1
=1
E1
=1
5
T5
3
4
T3
T4
S1
IMPLEMENTACIÓN
U M1
SPBN _001
CALL FC-M1
U S1
S E6
R M1
_001: NOP 0
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 E4
R M 100.0
FC-M1
1-Arranque independiente del bloque invocante
2-Válido para cualquier implementación de OB1
PROPIEDADES
BIT DE TRABAJO
Programación S7 7Dpto. de electrónica, automática e informática industrial (EUITI-UPM)
MACRO-ETAPAS
CCORRECTOORRECTO
M2
Programación S7 8Dpto. de electrónica, automática e informática industrial (EUITI-UPM)
MACRO-ACCIONES PLANTILLA
S 10
0
1
2
10
11
n
1XCoordinación Horizontal
Inicialización
1X
nX
Programación S7 9Dpto. de electrónica, automática e informática industrial (EUITI-UPM)
ESCALADO (I)
U E 100.0
SPBNB _001
CALL "SCALE"
IN :=MW 50
HI_LIM :=1.000000e+003
LO_LIM :=0.000000e+000
BIPOLAR:=E100.1
RET_VAL:=MW10
OUT :=MD108
_001: U BIE
= A 1.0
OB1
VALOR de tipo REAL
FC 105
TARJETAS DE 16 BITSResolución real: 0-32768Limite práctico: 0-27648
MW50: [-27.648, +27.648]
Programación S7 10Dpto. de electrónica, automática e informática industrial (EUITI-UPM)
ESCALADO (II)
U E 100.0
SPBNB _001
CALL "UNSCALE"
IN :=MD50
HI_LIM :=1.000000e+002
LO_LIM :=0.000000e+000
BIPOLAR:=E100.1
RET_VAL:=MW10
OUT :=MW108
_001: U BIE
= A 1.0
OB1
VALOR ENTERO
FC 106
Programación S7 11Dpto. de electrónica, automática e informática industrial (EUITI-UPM)
EJEMPLO-SECUENCIA CILINDROS
0
1
2
GRAFCETS NIVEL-1
0
4
Salir A
Salir B
Entrar A
Entrar B
A ha salido
B ha salido
A ha entrado
B ha entrado
Entrar
A y B
A y B comprimidos
3
10
11
12
Ordenar compresión A
BitDeFin = 1
A comprimido
Arranque: no volver a ejecutar
FC-X: Compresión de A
=1
=1
a OB1
OB1 Cilindros simple efecto
Pre-actuadores monoestables
CORREGIR!
Programación S7 12Dpto. de electrónica, automática e informática industrial (EUITI-UPM)
EJEMPLO-SECUENCIA CILINDROS
0
1
2TABLA DE SÍMBOLOS (Detalle)
0
4
Llamar FC1
Llamar FC2
Llamar FC3
Llamar FC4
Sae
Sbe
Sac
Sbc
3
OB1 Cilindros simple efecto
Pre-actuadores monoestables
GRAFCET NIVEL-2
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
Sbc.Sac
Llamar FC3 Llamar FC4
Sac Sbc
Programación S7 13Dpto. de electrónica, automática e informática industrial (EUITI-UPM)
EJEMPLO-SECUENCIA CILINDROS
0
1
2
0
4
Llamar FC1
Llamar FC2
Llamar FC3
Llamar FC4
Sae
Sbe
Sac
Sbc
Llamar FC3
3
OB1
Sbc.Sac
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 BitDeErrorEBSPBN _501Rutina Error
_501: NOP 0//…U PEMERSPBN _600Rutina Emerg
_600: NOP 0
PLANTILLA OB1
Llamar FC4
Sac Sbc
Programación S7 14Dpto. de electrónica, automática e informática industrial (EUITI-UPM)
EJEMPLO-SECUENCIA CILINDROS
10
11
12
A124.0
BitDeFinCA = 1
Arranque: Tout=5s
BitDeFinCA/ErrorCA=0
FC3: Compresión de A
=1
=1
a OB1
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
No usa estructura de cajas (evita posibles problemas de mostrar el cero)Gestión directa actuadores
U E11
R A124.0
ac outS ToutT
Error
Programación S7 15Dpto. de electrónica, automática e informática industrial (EUITI-UPM)
EJEMPLO-SECUENCIA CILINDROS
Entrar A
B ha salido
A ha entrado
3
10
11
12
Ordenar compresión A
BitDeFinCA = 1
A comprimido
Arranque:
BitDeFinCA=0
FC-3: Compresión de A
=1
=1
a OB1
4
2 OB1
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 E12
R BitDeTrabajo
FC-3
U E3
SPBN _004
CALL FC3
U BitDeFinCA
S E4
R E3
_004: NOP 0
OB1
Programación S7 16Dpto. de electrónica, automática e informática industrial (EUITI-UPM)
EJEMPLO-SECUENCIA CILINDROS
10
11
12
Ordenar compresión A
BitDeFinCA = 1
A comprimido.NOT(Tout)
Arranque: Tout=5s
BitDeFinCA/ErrorCA=0
FC-1: Compresión de A
=1
=1
a OB1
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 E12
R BitDeTrabajo
U Tout //Error
S BitDeErrorCA
FC-1
Tout
a OB1
U E3
SPBN _001
CALL FC3
U BitDeFinCA
S E4
R E3
_001: NOP 0
…
//Errores
U BitDeErrorCA
SPBN _500
R E3
R E4
Rutina
Tratamiento
Errores
…
_500: NOP 0
OB1
Control TIME-OUT
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
Programación S7 17Dpto. de electrónica, automática e informática industrial (EUITI-UPM)
DBX
ESQUEMA DE LLAMADAS ENTRE BLOQUES
Sistema Operativo
OB1: Ciclo principal
OB_X
FCX
FBX
DBY
(global)
DBX
FBX
FCX
CALL
CC
UCCALL<FBX,DBX>
Accesible por cualquier bloque
Programación S7 18Dpto. de electrónica, automática e informática industrial (EUITI-UPM)
BLOQUES DE DATOS GLOBALES
DEFINICION
VISUALIZACIÓN DE VALORES
DIRECCIONAMIENTO EM AWL
AUF DB1L DBB0T MB0
L DBW0T MW0
U DBX 0.0S M 0.0
L DB1.DBB0T MB0 //etc...
L “Temp”.DATO1T MB0 //etc...
Programación S7 19Dpto. de electrónica, automática e informática industrial (EUITI-UPM)
PASO DE PARÁMETROS BLOQUE SUMADOR: FUNCIÓN
Se usa # para indicar parámetro
Programación S7 20Dpto. de electrónica, automática e informática industrial (EUITI-UPM)
PASO DE PARÁMETROS BLOQUE SUMADOR: BLOQUE INVOCANTE
Completar la gestión del Enable Out
Programación S7 21Dpto. de electrónica, automática e informática industrial (EUITI-UPM)
PASO DE PARÁMETROS BLOQUE OPERACION NUMÉRICA: [(A+B)/C]-D
TEMP(A+B/C)-D
FC1
A
B
C
D
RES
IN
OUT
FC1L #AL #B+I L #C/I //División entera T #Div
L #DivL #D-I T #RES
Programación S7 22Dpto. de electrónica, automática e informática industrial (EUITI-UPM)
PASO DE PARÁMETROS IMPLEMENTACIÓN AWL
1SE 1
2
1
MOTOR 1
1SE
1SE
1 1( / / 50 ) 1T X s SE
0
1SE
S5T#50s
Etapa0
Etapa1
Etapa2
Motor1
FC1Tipo IN Tipo OUT
T1
Programación S7 23Dpto. de electrónica, automática e informática industrial (EUITI-UPM)
PASO DE PARÁMETROS IMPLEMENTACIÓN AWL
1SE 1
2
1
MOTOR 1
1SE
1SE
1 1( / / 50 ) 1T X s SE
0