SlideShare una empresa de Scribd logo
1 de 25
Descargar para leer sin conexión
1/1
Técnicas de la automatización
(Cód. 201987)
4. PLC-II: Programación con Texto Estructurado (ST)
y con Diagramas de Bloques de Función (FBD)
Escuela Politécnica Superior
UNIVERSIDAD DE ALCALÁ
ST Funciones Bloques Bloques estándar Referencias 2/25
Índice
1 Lenguaje ST (Structured Text)
2 Funciones
3 Bloques de función
4 Bloques de función estándar
5 Referencias
ST Funciones Bloques Bloques estándar Referencias 3/25
Estructuras de control (i)
ST es un lenguaje de alto nivel similar Pascal o Ada. 1
Un programa ST se compone de una secuencia de estructuras de
control separadas por el carácter ;.
Estructuras de control:
:= (asignación) Asigna el valor de una expresión a una
variable:
1 K3 := (K2 And KT3) Or (K3 And Not S1);
IF (selección) Selección entre alternativas por medio de
expresiones Boolean:
1 If d<e Then f := 1;
2 Elsif d=e Then f := 2;
3 Else f := 3;
4 End_If;
1
[IEC, 2006, pp. 129–134] y [John, 2010, pp. 116–133].
ST Funciones Bloques Bloques estándar Referencias 4/25
Estructuras de control (ii)
CASE (selección por casos) Selección entre alternativas por medio
de una expresión:
1 Case expr Of
2 1: g:=11;
3 2,3: g:=12;
4 5..10: g:=13;
5 Else: g:=-1;
6 End_Case;
FOR Bucle con inicialización, condición para continuar y
progresión:
1 Var
2 V : Array[1..5] Of Int :=
3 [2, 16, 4, 7, 32];
4 I : Int;
5 nV : Int:=5;
6 Max: Int:=0;
7 End_Var;
1 For I:=1 To nV By 1 Do
2 If V[I] > Max Then
3 Max:=V[I];
4 End_If;
5 End_For;
ST Funciones Bloques Bloques estándar Referencias 5/25
Estructuras de control (iii)
WHILE Bucle con condición para continuar:
1 I:=1; (∗ Inicialización. ∗)
2 While I<=nV Do (∗ Condición. ∗)
3 If V[I] > Max Then
4 Max:=V[I];
5 End_If;
6 I:=I+1; (∗ Progresión. ∗)
7 End_While;
REPEAT Bucle con condición para finalizar:
1 I:=1; (∗ Inicialización. ∗)
2 Repeat
3 If V[I] > Max Then
4 Max:=V[I];
5 End_If;
6 I:=I+1; (∗ Progresión. ∗)
7 Until I>nV End_Repeat; (∗ Condición. ∗)
ST Funciones Bloques Bloques estándar Referencias 6/25
Estructuras de control (iv) y operadores
EXIT Finaliza el bucle donde se encuentra.
RETURN Abandona el POU actual.
Operadores
Aritméticos: -(unario), ** a, *, /, MOD, +, -.
De comparación: <, >, <=, >=, =, <>.
Lógicos: NOT, AND, &b, OR, XOR.
Paréntesis: (, ). Modifica la prioridad de los operadores anteriores.
a
Potencia a**b ” ab
.
b
&”AND.
ST Funciones Bloques Bloques estándar Referencias 7/25
Tipos de datos en ST
Tipo Descripción Nro. de bits Rango
BOOL Bit 1 0, 1
BYTE Byte 8 0..#FF
WORD Cadena 16 #0..#FFFF
DWORD Cadena doble 32 #0..#FFFFFFFF
LWORD Cadena larga 64 #0..#FFFFFFFFFFFFFFFF
INT Entero 16 ´32568..32567
UINT Entero sin signo 16 0..65535
DINT Entero doble 32 ´231
..231
´ 1
UDINT Entero doble sin signo 32 0..232
´ 1
LINT Entero largo 64 263
..263
´ 1
ULINT Entero largo sin signo 64 0..264
´ 1
REAL Número real 32 ˘10´38
.. ˘ 1038
LREAL Número real largo 64 ˘10´308
.. ˘ 10308
STRING Cadena de caracteres de 1 a 125 caracteres
ST Funciones Bloques Bloques estándar Referencias 8/25
Algunas funciones disponibles en ST
Función Nombre Operandos Resultado
y:=ABS(x) Valor absoluto, y “ |x| Z o R Z o R
y:=SQRT(x) Raíz cuadrada, y “
?
x R R
y:=LN(x) Logaritmo natural R R
y:=LOG(x) Logaritmo decimal R R
y:=EXP(x) Exponencial, y “ ex R R
y:=EXPT(x,n) Potencia, y “ xn x P R, n P Z R
y:=SIN(x) Seno R R
y:=COS(x) Coseno R R
y:=TAN(x) Tangente R R
y:=ASIN(x) Arco seno R R
y:=ACOS(x) Arco coseno R R
y:=ATAN(x) Arco tangente R R
ST Funciones Bloques Bloques estándar Referencias 9/25
Índice
1 Lenguaje ST (Structured Text)
2 Funciones
3 Bloques de función
4 Bloques de función estándar
5 Referencias
ST Funciones Bloques Bloques estándar Referencias 10/25
Llamadas entre POUs
Ya hemos visto que la parte de código de un programa se compone de:
1 secuencias de instrucciones,
2 llamadas a funciones y
3 llamadas a bloques de función.
PROGRAMA
FUNCIÓN BLOQUE de FUNCIÓN
FUNCIÓN FUNCIÓN BLOQUE de FUNCIÓN
1 Un programa puede llamar a funciones y a bloques de funciones.
2 Un bloque de función puede llamar a funciones y bloque de funciones.
3 Una función solo puede llamar a funciones.
4 Ningún POU puede llamarse de forma recursiva.
ST Funciones Bloques Bloques estándar Referencias 11/25
Partes de una función
Función
1 Secuencia de instrucciones y
llamadas a otras funciones que
2 operan sobre unos datos de
entrada para producir una salida.
3 Carece de memoria o estado
interno.
nstrccones
(cerpo de POU)
rbes de  nterƒz
rbes oces
FUNCTION Nombre:Tipo_Retorno
END_FUNCTION
Prte
decrt
Prte de
códgo
Nombre:= resultado;
ST Funciones Bloques Bloques estándar Referencias 12/25
Índice
1 Lenguaje ST (Structured Text)
2 Funciones
3 Bloques de función
4 Bloques de función estándar
5 Referencias
ST Funciones Bloques Bloques estándar Referencias 13/25
Diagramas de bloques de función (FBD)
1 FBD es un lenguaje gráfico que trabaja con conexiones de funciones y
de bloques de función. 2
2 Los programas dibujados con FBD se asemejan a los diagramas con
circuitos integrados.
3 Un bloque de función es un POU que consta de un conjunto de datos
encapsulados e independientes y los algoritmos para trabajar con esos
datos.
4 A diferencia de las funciones, los bloques de función pueden tener en
estado interno asociado.
5 Para utilizar un bloque de función es necesario crear un ejemplar
(instance) derivado.
6 Los bloques de función se pueden emplear en programas escritos en
lenguaje IL, LD, ST y FBD.
2
[IEC, 2006, p. 143] y [John, 2010, pp. 134–147].
ST Funciones Bloques Bloques estándar Referencias 14/25
Declaración y uso de un bloque de función
nombreFB
ENT1
Tipo_ENT1
...
...
ENTn
Tipo_ENTn
SAL1 Tipo_SAL1
... ...
SALm Tipo_SALm
nombreFB
ejemplarFB
ENT1
varENT1
...
...
ENTn
varENTn
SAL1 varSAL1
... ...
SALm varSALm
1 VAR
2 ejemplarFB: nombreFB;
3 varENT1: Tipo_ENT1;
4 ...
5 varENTn: Tipo_ENTn;
6 varSAL1: Tipo_SAL1;
7 ...
8 varSALm: Tipo_SALm;
9 END_VAR
10 ...
11 ejemplarFB(ENT1:=varENT1,...,
12 ENTn:=varENTn);
13 ...
14 varSAL1 := nombreFB.SAL1;
15 ...
16 varSALm := nombreFB.SALm;
17 ...
18 ejemplarFB(ENT1:=varENT1,...,
19 SAL1=>varSAL1,...);
ST Funciones Bloques Bloques estándar Referencias 15/25
Entrada EN y salida ENO
nombre
EN
BOOL
ENT1
Tipo_ENT1
...
...
ENTn
Tipo_ENTn
ENO BOOL
SAL1 Tipo_SAL1
... ...
SALm Tipo_SALm
Tanto EN (enable input) como ENO (enable output) son optativas.
EN
Significado ENO
FALSE No se ejecuta el código del bloque al lla-
marlo
ENO:=FALSE
(no se actualizan las salidas)
TRUE Se ejecuta el código del bloque ENO:=TRUE
(se actualizan las salidas)
En el bloque se puede fijar el valor de ENO ENO:=TRUE o FALSE
Cuando se detecta algún fallo ENO:=FALSE
ST Funciones Bloques Bloques estándar Referencias 16/25
Índice
1 Lenguaje ST (Structured Text)
2 Funciones
3 Bloques de función
4 Bloques de función estándar
5 Referencias
ST Funciones Bloques Bloques estándar Referencias 17/25
Temporizadores IEC 61131-3 – TON
Los temporizadores son los primeros ejemplos de bloques de función IEC
61131-3.
TON — temporizador con retardo a
la conexión
TON
IN
BOOL
PT
TIME
Q BOOL
ET TIME
IN → ET:=0 y empieza a contar
el tiempo.
ET alcanza PT → Q:=TRUE.
IN! → Q:=FALSE y ET:=0.
TON – cronograma
t1 t2 t4
t3 t5
IN
Q
ET
t0+PT t4+PT
PT
t0
PT PT
PT
Time t
Figure B.6. Timing diagram for on-delay timer TON dependin
The on-delay timer TON supplies the input value IN at Q
ST Funciones Bloques Bloques estándar Referencias 18/25
Temporizadores IEC 61131-3 – TOF
TOF — temporizador con retardo a la
desconexión
TOF
IN
BOOL
PT
TIME
Q BOOL
ET TIME
IN → Q:=TRUE.
IN! → ET:=0 y empieza a contar el
tiempo.
ET alcanza PT → Q:=FALSE.
TOF – cronograma
t0+PT t4+PT
Figure B.6. Timing diagram for on-delay timer TON depe
The on-delay timer TON supplies the input value IN
rising edge is detected at IN. If input IN is "1" only
PT), the timer is not started for this edge.
The elapsed time can be read off at output ET.
t1 t2 t4
t3 t5
t0
PT PT
IN
Q
ET
t1+PT t5+PT
PT
Time
Figure B.7. Timing diagram for off-delay timer TOF depe
The off-delay timer performs the inverse function t
edge in the same way as TON delays a rising one.
The behaviour of the timer TOF if PT is modified du
ST Funciones Bloques Bloques estándar Referencias 19/25
Temporizadores IEC 61131-3 – TP
TP — aestable
TP
IN
BOOL
PT
TIME
Q BOOL
ET TIME
IN → Q:=TRUE, ET:=0 y
empieza a contar el tiempo.
ET alcanza PT → Q:=FALSE.
IN o IN! antes de que ET
alcance PT → no ocurre nada.
IN! después de que ET haya
alcanzado PT → ET:=0.
TP – cronograma
The timers TP, TON and TOF are specified here using ti
This time behaviour is only possible if the cycle time
in which the timer is used is negligibly small in compari
the timer is called only once in the cycle.
The diagrams show the behaviour of outputs Q and E
The time axis runs from left to right and is labelled "t".
and Q change between "0" and "1" and the time value ET
t1 t2 t4
t3 t5
t0
PT PT PT
IN
Q
ET
Time t
t0+PT t2+PT t4+PT
PT
Figure B.5. Timing diagram for pulse timer TP depending on
The standard FB "TP" acts as a pulse generator which s
length at output Q when a rising edge is detected at in
elapsed so far can be read off at output ET at any time.
ST Funciones Bloques Bloques estándar Referencias 20/25
Biestables
SR: Set (prioritario)–Reset
SR
SET1
BOOL
RESET
BOOL
Q1 BOOL
1 FUNCTION_BLOCK SR
2 VAR_INPUT
3 SET1: BOOL;
4 RESET : BOOL;
5 END_VAR
6 VAR_OUTPUT
7 Q1: BOOL;
8 END_VAR
9 Q1 := SET1 OR (NOT RESET AND Q1);
10 END_FUNCTION_BLOCK
RS: Reset (prioritario)–Set
RS
SET
BOOL
RESET1
BOOL
Q1 BOOL
1 FUNCTION_BLOCK RS
2 VAR_INPUT
3 SET : BOOL;
4 RESET1: BOOL;
5 END_VAR
6 VAR_OUTPUT
7 Q1: BOOL;
8 END_VAR
9 Q1 := NOT RESET1 AND (SET OR Q1);
10 END_FUNCTION_BLOCK
ST Funciones Bloques Bloques estándar Referencias 21/25
Detectores de flanco
R_TRIG: flanco de subida
R_TRIG
CLK
BOOL Q BOOL
1 FUNCTION_BLOCK R_TRIG
2 VAR_INPUT
3 CLK: BOOL;
4 END_VAR
5 VAR_OUTPUT
6 Q: BOOL;
7 END_VAR
8 VAR
9 MEM: BOOL:= 0;
10 END_VAR
11 Q := CLK AND NOT MEM;
12 MEM := CLK;
13 END_FUNCTION_BLOCK
F_TRIG: flanco de bajada
F_TRIG
CLK
BOOL Q BOOL
1 FUNCTION_BLOCK F_TRIG
2 VAR_INPUT
3 CLK: BOOL;
4 END_VAR
5 VAR_OUTPUT
6 Q: BOOL;
7 END_VAR
8 VAR
9 MEM: BOOL:= 0;
10 END_VAR
11 Q := NOT CLK AND MEM;
12 MEM := CLK;
13 END_FUNCTION_BLOCK
ST Funciones Bloques Bloques estándar Referencias 22/25
CTU– Contador ascendente
CTU
CU
BOOL
RESET
BOOL
PV
INT
Q BOOL
CV INT
CU– count up (flanco de
subida)
RESET– reset (CV:=0)
PV– program value
Q– cuenta finalizada
CV– current value
1 FUNCTION_BLOCK CTU
2 VAR_INPUT
3 CU: BOOL R_EDGE;
4 RESET : BOOL;
5 PV: INT;
6 END_VAR
7 VAR_OUTPUT
8 Q : BOOL;
9 CV: INT;
10 END_VAR
11 IF RESET THEN (∗ Puesta a cero. ∗)
12 CV := 0;
13 ELSIF CU AND (CV<PV) THEN
14 CV := CV+1; (∗ Cuenta ascendente. ∗)
15 END_IF;
16 Q := (CV >= PV); (∗ Cuenta finalizada. ∗)
17 END_FUNCTION_BLOCK
ST Funciones Bloques Bloques estándar Referencias 23/25
CTD– Contador descendente
CTD
CD
BOOL
LOAD
BOOL
PV
INT
Q BOOL
CV INT
CD– count down (flanco de
subida)
LOAD– load (CV:=PV)
PV– program value
Q– cuenta finalizada
CV– current value
Código ST:
1 FUNCTION_BLOCK CTD
2 VAR_INPUT
3 CU: BOOL R_EDGE;
4 LOAD: BOOL;
5 PV: INT;
6 END_VAR
7 VAR_OUTPUT
8 Q : BOOL;
9 CV: INT;
10 END_VAR
11 IF LOAD THEN (∗ Carga del contador. ∗)
12 CV := PV;
13 ELSIF CU AND (CV>0) THEN
14 CV := CV-1; (∗ Cuenta descendente. ∗)
15 END_IF;
16 Q := (CV<=0); (∗ Cuenta finalizada. ∗)
17 END_FUNCTION_BLOCK
ST Funciones Bloques Bloques estándar Referencias 24/25
Índice
1 Lenguaje ST (Structured Text)
2 Funciones
3 Bloques de función
4 Bloques de función estándar
5 Referencias
ST Funciones Bloques Bloques estándar Referencias 25/25
Referencias
International Electrotechnical Commission.
Programmable controllers - Part 3: Programming languages.
IEC, 2006.
Karl-Heinz John and Michael Tiegelkamp.
IEC 61131–3: Programming Industrial Automation Systems.
Springer, 2010.

Más contenido relacionado

Similar a PLC-II EMERSON EDUARDO RODRIGUES ENGENHEIRO.pdf

Curso de programacion en c++ para microcontroladores pic 16 f87xx
Curso de programacion en c++ para microcontroladores pic 16 f87xxCurso de programacion en c++ para microcontroladores pic 16 f87xx
Curso de programacion en c++ para microcontroladores pic 16 f87xx
freddymadriz
 
Curso de programacion en c++ para microcontroladores pic 16 f87xx
Curso de programacion en c++ para microcontroladores pic 16 f87xxCurso de programacion en c++ para microcontroladores pic 16 f87xx
Curso de programacion en c++ para microcontroladores pic 16 f87xx
Jose Manuel Mansilla Carrasco
 
Estructuras algoritnicas de control
Estructuras algoritnicas de controlEstructuras algoritnicas de control
Estructuras algoritnicas de control
Miguel Martinez
 

Similar a PLC-II EMERSON EDUARDO RODRIGUES ENGENHEIRO.pdf (20)

Curso de programacion en c++ para microcontroladores pic 16 f87xx
Curso de programacion en c++ para microcontroladores pic 16 f87xxCurso de programacion en c++ para microcontroladores pic 16 f87xx
Curso de programacion en c++ para microcontroladores pic 16 f87xx
 
Curso de programacion en c++ para microcontroladores pic 16 f87xx
Curso de programacion en c++ para microcontroladores pic 16 f87xxCurso de programacion en c++ para microcontroladores pic 16 f87xx
Curso de programacion en c++ para microcontroladores pic 16 f87xx
 
ARDUINO - LADDER PROYECTO CX3 RESET TEMP EH EN 2 CILINDROS BI MONO...
ARDUINO  - LADDER   PROYECTO  CX3 RESET  TEMP  EH  EN   2  CILINDROS  BI MONO...ARDUINO  - LADDER   PROYECTO  CX3 RESET  TEMP  EH  EN   2  CILINDROS  BI MONO...
ARDUINO - LADDER PROYECTO CX3 RESET TEMP EH EN 2 CILINDROS BI MONO...
 
LAB 5_Temporizadores.pdf
LAB 5_Temporizadores.pdfLAB 5_Temporizadores.pdf
LAB 5_Temporizadores.pdf
 
Programación con C/AL para Microsoft Business Solutions Navision
Programación con C/AL para Microsoft Business Solutions NavisionProgramación con C/AL para Microsoft Business Solutions Navision
Programación con C/AL para Microsoft Business Solutions Navision
 
Curso Micro Tema 2
Curso Micro Tema 2Curso Micro Tema 2
Curso Micro Tema 2
 
15ava_Clase.pptx
15ava_Clase.pptx15ava_Clase.pptx
15ava_Clase.pptx
 
electrio
electrioelectrio
electrio
 
3 programacion
3 programacion3 programacion
3 programacion
 
Estructuras algoritnicas de control
Estructuras algoritnicas de controlEstructuras algoritnicas de control
Estructuras algoritnicas de control
 
lp1t3.pdf
lp1t3.pdflp1t3.pdf
lp1t3.pdf
 
Micro2 tema 1
Micro2 tema 1Micro2 tema 1
Micro2 tema 1
 
C sharp
C sharpC sharp
C sharp
 
Electrónica digital: Tema 3 Funciones aritméticas y lógicas
Electrónica digital: Tema 3 Funciones aritméticas y lógicas Electrónica digital: Tema 3 Funciones aritméticas y lógicas
Electrónica digital: Tema 3 Funciones aritméticas y lógicas
 
Tema3
Tema3Tema3
Tema3
 
Introdução a abap
Introdução a abapIntrodução a abap
Introdução a abap
 
Juego de instrucciones: PIC 16F87x
Juego de instrucciones: PIC 16F87xJuego de instrucciones: PIC 16F87x
Juego de instrucciones: PIC 16F87x
 
Electrónica digital
Electrónica digitalElectrónica digital
Electrónica digital
 
2. electronica digital
2. electronica digital2. electronica digital
2. electronica digital
 
2. electronica digital
2. electronica digital2. electronica digital
2. electronica digital
 

Más de EMERSON EDUARDO RODRIGUES

Más de EMERSON EDUARDO RODRIGUES (20)

emersoneduardorodrigues_curso-de-russo.pdf
emersoneduardorodrigues_curso-de-russo.pdfemersoneduardorodrigues_curso-de-russo.pdf
emersoneduardorodrigues_curso-de-russo.pdf
 
STEP 7 - AWL para S7-300 y S7-400 emerson eduardo rodrigues
STEP 7 - AWL para S7-300 y S7-400 emerson eduardo rodriguesSTEP 7 - AWL para S7-300 y S7-400 emerson eduardo rodrigues
STEP 7 - AWL para S7-300 y S7-400 emerson eduardo rodrigues
 
PLC SCUBE STANDARD PROGRAMING EMERSON EDUARDO RODRIGUES
PLC SCUBE STANDARD PROGRAMING EMERSON EDUARDO RODRIGUESPLC SCUBE STANDARD PROGRAMING EMERSON EDUARDO RODRIGUES
PLC SCUBE STANDARD PROGRAMING EMERSON EDUARDO RODRIGUES
 
The+48+Laws+Of+Power EMERSON EDUARDO RODRIGUES
The+48+Laws+Of+Power EMERSON EDUARDO RODRIGUESThe+48+Laws+Of+Power EMERSON EDUARDO RODRIGUES
The+48+Laws+Of+Power EMERSON EDUARDO RODRIGUES
 
Basica_Documentacion EMERSON EDUARDO RODRIGUES
Basica_Documentacion EMERSON EDUARDO RODRIGUESBasica_Documentacion EMERSON EDUARDO RODRIGUES
Basica_Documentacion EMERSON EDUARDO RODRIGUES
 
Avanzado_Documentacion_EMERSON EDUARDO RODRIGUES
Avanzado_Documentacion_EMERSON EDUARDO RODRIGUESAvanzado_Documentacion_EMERSON EDUARDO RODRIGUES
Avanzado_Documentacion_EMERSON EDUARDO RODRIGUES
 
Tratamiento Digital de Señales__EMERSON EDUARDO RODRIGUES.pdf
Tratamiento Digital de Señales__EMERSON EDUARDO RODRIGUES.pdfTratamiento Digital de Señales__EMERSON EDUARDO RODRIGUES.pdf
Tratamiento Digital de Señales__EMERSON EDUARDO RODRIGUES.pdf
 
DICIONARIO_DICIONARIO_ITALIANO_PORTUGUES EMERSON EDUARDO RODRIGUES
DICIONARIO_DICIONARIO_ITALIANO_PORTUGUES EMERSON EDUARDO RODRIGUESDICIONARIO_DICIONARIO_ITALIANO_PORTUGUES EMERSON EDUARDO RODRIGUES
DICIONARIO_DICIONARIO_ITALIANO_PORTUGUES EMERSON EDUARDO RODRIGUES
 
penetration test essentials comptia EMERSON EDUARDO RODRIGUES
penetration test essentials comptia EMERSON EDUARDO RODRIGUESpenetration test essentials comptia EMERSON EDUARDO RODRIGUES
penetration test essentials comptia EMERSON EDUARDO RODRIGUES
 
compTIA guide to get the CERTIFICATION EMERSON EDUARDO RODRIGUES
compTIA guide to get the CERTIFICATION EMERSON EDUARDO RODRIGUEScompTIA guide to get the CERTIFICATION EMERSON EDUARDO RODRIGUES
compTIA guide to get the CERTIFICATION EMERSON EDUARDO RODRIGUES
 
HHS_TOC_Glossary EMERSON EDUARDO RODRIGUES
HHS_TOC_Glossary EMERSON EDUARDO RODRIGUESHHS_TOC_Glossary EMERSON EDUARDO RODRIGUES
HHS_TOC_Glossary EMERSON EDUARDO RODRIGUES
 
Cómo programar Step 7 y no morir en el intento EMERSON EDUARDO RODRIGUES
Cómo programar Step 7 y no morir en el intento EMERSON EDUARDO RODRIGUESCómo programar Step 7 y no morir en el intento EMERSON EDUARDO RODRIGUES
Cómo programar Step 7 y no morir en el intento EMERSON EDUARDO RODRIGUES
 
11. EJERCICIOS PRACTICOS DE AUTOMATIZACION - AUTOMATI EMERSON EDUARDO RODRIGUES
11. EJERCICIOS PRACTICOS DE AUTOMATIZACION - AUTOMATI EMERSON EDUARDO RODRIGUES11. EJERCICIOS PRACTICOS DE AUTOMATIZACION - AUTOMATI EMERSON EDUARDO RODRIGUES
11. EJERCICIOS PRACTICOS DE AUTOMATIZACION - AUTOMATI EMERSON EDUARDO RODRIGUES
 
10. SISTEMAS PROGRAMABLES AVANZADOS - AUTOMATI EMERSON EDUARDO RODRIGUES
10. SISTEMAS PROGRAMABLES AVANZADOS - AUTOMATI EMERSON EDUARDO RODRIGUES10. SISTEMAS PROGRAMABLES AVANZADOS - AUTOMATI EMERSON EDUARDO RODRIGUES
10. SISTEMAS PROGRAMABLES AVANZADOS - AUTOMATI EMERSON EDUARDO RODRIGUES
 
9. LIBRO SISTEMAS SECUENCIALES PROGRAMABLES - AUTOMATI EMERSON EDUARDO RODRIGUES
9. LIBRO SISTEMAS SECUENCIALES PROGRAMABLES - AUTOMATI EMERSON EDUARDO RODRIGUES9. LIBRO SISTEMAS SECUENCIALES PROGRAMABLES - AUTOMATI EMERSON EDUARDO RODRIGUES
9. LIBRO SISTEMAS SECUENCIALES PROGRAMABLES - AUTOMATI EMERSON EDUARDO RODRIGUES
 
8. LIBRO PROGRAMACION DE CONTROLADORES AVANZADOS SIMATIC S7-1500 CON TIA PORT...
8. LIBRO PROGRAMACION DE CONTROLADORES AVANZADOS SIMATIC S7-1500 CON TIA PORT...8. LIBRO PROGRAMACION DE CONTROLADORES AVANZADOS SIMATIC S7-1500 CON TIA PORT...
8. LIBRO PROGRAMACION DE CONTROLADORES AVANZADOS SIMATIC S7-1500 CON TIA PORT...
 
6. LIBRO AUTOMATAS PROGRAMABLES Y SISTEMAS DE AUTOMATIZACION - AUTOMATI EMERS...
6. LIBRO AUTOMATAS PROGRAMABLES Y SISTEMAS DE AUTOMATIZACION - AUTOMATI EMERS...6. LIBRO AUTOMATAS PROGRAMABLES Y SISTEMAS DE AUTOMATIZACION - AUTOMATI EMERS...
6. LIBRO AUTOMATAS PROGRAMABLES Y SISTEMAS DE AUTOMATIZACION - AUTOMATI EMERS...
 
5. LIBRO APRENDA WINCC - AUTOMATI EMERSON EDUARDO RODRIGUES
5. LIBRO APRENDA WINCC - AUTOMATI EMERSON EDUARDO RODRIGUES5. LIBRO APRENDA WINCC - AUTOMATI EMERSON EDUARDO RODRIGUES
5. LIBRO APRENDA WINCC - AUTOMATI EMERSON EDUARDO RODRIGUES
 
4. LIBRO COMUNICACIONES INDUSTRIALES - AUTOMATISSANDRO EMERSON EDUARDO RODRIGUES
4. LIBRO COMUNICACIONES INDUSTRIALES - AUTOMATISSANDRO EMERSON EDUARDO RODRIGUES4. LIBRO COMUNICACIONES INDUSTRIALES - AUTOMATISSANDRO EMERSON EDUARDO RODRIGUES
4. LIBRO COMUNICACIONES INDUSTRIALES - AUTOMATISSANDRO EMERSON EDUARDO RODRIGUES
 
3. LIBRO AUTOMATAS PROGRABLES SIEMENS GRAFCET Y GUIA GEMMA CON TIA PORTAL - A...
3. LIBRO AUTOMATAS PROGRABLES SIEMENS GRAFCET Y GUIA GEMMA CON TIA PORTAL - A...3. LIBRO AUTOMATAS PROGRABLES SIEMENS GRAFCET Y GUIA GEMMA CON TIA PORTAL - A...
3. LIBRO AUTOMATAS PROGRABLES SIEMENS GRAFCET Y GUIA GEMMA CON TIA PORTAL - A...
 

Último

Tema ilustrado 9.2.docxbbbbbbbbbbbbbbbbbbb
Tema ilustrado 9.2.docxbbbbbbbbbbbbbbbbbbbTema ilustrado 9.2.docxbbbbbbbbbbbbbbbbbbb
Tema ilustrado 9.2.docxbbbbbbbbbbbbbbbbbbb
antoniolfdez2006
 
SESION 11 SUPERVISOR SSOMA SEGURIDAD Y SALUD OCUPACIONAL
SESION 11 SUPERVISOR SSOMA SEGURIDAD Y SALUD OCUPACIONALSESION 11 SUPERVISOR SSOMA SEGURIDAD Y SALUD OCUPACIONAL
SESION 11 SUPERVISOR SSOMA SEGURIDAD Y SALUD OCUPACIONAL
EdwinC23
 

Último (20)

G4 - CASO DE ESTUDIO - VOLUMEN DE UN RESERVORIO (1).pptx
G4 - CASO DE ESTUDIO - VOLUMEN DE UN RESERVORIO (1).pptxG4 - CASO DE ESTUDIO - VOLUMEN DE UN RESERVORIO (1).pptx
G4 - CASO DE ESTUDIO - VOLUMEN DE UN RESERVORIO (1).pptx
 
Clasificación de Equipos e Instrumentos en Electricidad.docx
Clasificación de Equipos e Instrumentos en Electricidad.docxClasificación de Equipos e Instrumentos en Electricidad.docx
Clasificación de Equipos e Instrumentos en Electricidad.docx
 
Tema ilustrado 9.2.docxbbbbbbbbbbbbbbbbbbb
Tema ilustrado 9.2.docxbbbbbbbbbbbbbbbbbbbTema ilustrado 9.2.docxbbbbbbbbbbbbbbbbbbb
Tema ilustrado 9.2.docxbbbbbbbbbbbbbbbbbbb
 
APORTES A LA ARQUITECTURA DE WALTER GROPIUS Y FRANK LLOYD WRIGHT
APORTES A LA ARQUITECTURA DE WALTER GROPIUS Y FRANK LLOYD WRIGHTAPORTES A LA ARQUITECTURA DE WALTER GROPIUS Y FRANK LLOYD WRIGHT
APORTES A LA ARQUITECTURA DE WALTER GROPIUS Y FRANK LLOYD WRIGHT
 
ELASTICIDAD PRECIO DE LA DEMaaanANDA.ppt
ELASTICIDAD PRECIO DE LA DEMaaanANDA.pptELASTICIDAD PRECIO DE LA DEMaaanANDA.ppt
ELASTICIDAD PRECIO DE LA DEMaaanANDA.ppt
 
Six Sigma Process and the dmaic metodo process
Six Sigma Process and the dmaic metodo processSix Sigma Process and the dmaic metodo process
Six Sigma Process and the dmaic metodo process
 
ESPECIFICACIONES TECNICAS COMPLEJO DEPORTIVO
ESPECIFICACIONES TECNICAS COMPLEJO DEPORTIVOESPECIFICACIONES TECNICAS COMPLEJO DEPORTIVO
ESPECIFICACIONES TECNICAS COMPLEJO DEPORTIVO
 
Cereales tecnología de los alimentos. Cereales
Cereales tecnología de los alimentos. CerealesCereales tecnología de los alimentos. Cereales
Cereales tecnología de los alimentos. Cereales
 
ARMADURAS METODO NODOS.pptx......................
ARMADURAS METODO NODOS.pptx......................ARMADURAS METODO NODOS.pptx......................
ARMADURAS METODO NODOS.pptx......................
 
27311861-Cuencas-sedimentarias-en-Colombia.ppt
27311861-Cuencas-sedimentarias-en-Colombia.ppt27311861-Cuencas-sedimentarias-en-Colombia.ppt
27311861-Cuencas-sedimentarias-en-Colombia.ppt
 
TAIICHI OHNO, historia, obras, reconocimientos
TAIICHI OHNO, historia, obras, reconocimientosTAIICHI OHNO, historia, obras, reconocimientos
TAIICHI OHNO, historia, obras, reconocimientos
 
Auditoría de Sistemas de Gestión
Auditoría    de   Sistemas     de GestiónAuditoría    de   Sistemas     de Gestión
Auditoría de Sistemas de Gestión
 
Arquitecto cambio de uso de suelo Limache
Arquitecto cambio de uso de suelo LimacheArquitecto cambio de uso de suelo Limache
Arquitecto cambio de uso de suelo Limache
 
entropia y neguentropia en la teoria general de sistemas
entropia y neguentropia en la teoria general de sistemasentropia y neguentropia en la teoria general de sistemas
entropia y neguentropia en la teoria general de sistemas
 
SESION 11 SUPERVISOR SSOMA SEGURIDAD Y SALUD OCUPACIONAL
SESION 11 SUPERVISOR SSOMA SEGURIDAD Y SALUD OCUPACIONALSESION 11 SUPERVISOR SSOMA SEGURIDAD Y SALUD OCUPACIONAL
SESION 11 SUPERVISOR SSOMA SEGURIDAD Y SALUD OCUPACIONAL
 
2. Cristaloquimica. ingenieria geologica
2. Cristaloquimica. ingenieria geologica2. Cristaloquimica. ingenieria geologica
2. Cristaloquimica. ingenieria geologica
 
portafolio final manco 2 1816827 portafolio de evidencias
portafolio final manco 2 1816827 portafolio de evidenciasportafolio final manco 2 1816827 portafolio de evidencias
portafolio final manco 2 1816827 portafolio de evidencias
 
Aportes a la Arquitectura de Le Corbusier y Mies Van der Rohe
Aportes a la Arquitectura de Le Corbusier y Mies Van der RoheAportes a la Arquitectura de Le Corbusier y Mies Van der Rohe
Aportes a la Arquitectura de Le Corbusier y Mies Van der Rohe
 
5. MATERIALES petreos para concreto.pdf.
5. MATERIALES petreos para concreto.pdf.5. MATERIALES petreos para concreto.pdf.
5. MATERIALES petreos para concreto.pdf.
 
1. Equipos Primarios de una Subestaciones electricas
1. Equipos Primarios de una Subestaciones electricas1. Equipos Primarios de una Subestaciones electricas
1. Equipos Primarios de una Subestaciones electricas
 

PLC-II EMERSON EDUARDO RODRIGUES ENGENHEIRO.pdf

  • 1. 1/1 Técnicas de la automatización (Cód. 201987) 4. PLC-II: Programación con Texto Estructurado (ST) y con Diagramas de Bloques de Función (FBD) Escuela Politécnica Superior UNIVERSIDAD DE ALCALÁ
  • 2. ST Funciones Bloques Bloques estándar Referencias 2/25 Índice 1 Lenguaje ST (Structured Text) 2 Funciones 3 Bloques de función 4 Bloques de función estándar 5 Referencias
  • 3. ST Funciones Bloques Bloques estándar Referencias 3/25 Estructuras de control (i) ST es un lenguaje de alto nivel similar Pascal o Ada. 1 Un programa ST se compone de una secuencia de estructuras de control separadas por el carácter ;. Estructuras de control: := (asignación) Asigna el valor de una expresión a una variable: 1 K3 := (K2 And KT3) Or (K3 And Not S1); IF (selección) Selección entre alternativas por medio de expresiones Boolean: 1 If d<e Then f := 1; 2 Elsif d=e Then f := 2; 3 Else f := 3; 4 End_If; 1 [IEC, 2006, pp. 129–134] y [John, 2010, pp. 116–133].
  • 4. ST Funciones Bloques Bloques estándar Referencias 4/25 Estructuras de control (ii) CASE (selección por casos) Selección entre alternativas por medio de una expresión: 1 Case expr Of 2 1: g:=11; 3 2,3: g:=12; 4 5..10: g:=13; 5 Else: g:=-1; 6 End_Case; FOR Bucle con inicialización, condición para continuar y progresión: 1 Var 2 V : Array[1..5] Of Int := 3 [2, 16, 4, 7, 32]; 4 I : Int; 5 nV : Int:=5; 6 Max: Int:=0; 7 End_Var; 1 For I:=1 To nV By 1 Do 2 If V[I] > Max Then 3 Max:=V[I]; 4 End_If; 5 End_For;
  • 5. ST Funciones Bloques Bloques estándar Referencias 5/25 Estructuras de control (iii) WHILE Bucle con condición para continuar: 1 I:=1; (∗ Inicialización. ∗) 2 While I<=nV Do (∗ Condición. ∗) 3 If V[I] > Max Then 4 Max:=V[I]; 5 End_If; 6 I:=I+1; (∗ Progresión. ∗) 7 End_While; REPEAT Bucle con condición para finalizar: 1 I:=1; (∗ Inicialización. ∗) 2 Repeat 3 If V[I] > Max Then 4 Max:=V[I]; 5 End_If; 6 I:=I+1; (∗ Progresión. ∗) 7 Until I>nV End_Repeat; (∗ Condición. ∗)
  • 6. ST Funciones Bloques Bloques estándar Referencias 6/25 Estructuras de control (iv) y operadores EXIT Finaliza el bucle donde se encuentra. RETURN Abandona el POU actual. Operadores Aritméticos: -(unario), ** a, *, /, MOD, +, -. De comparación: <, >, <=, >=, =, <>. Lógicos: NOT, AND, &b, OR, XOR. Paréntesis: (, ). Modifica la prioridad de los operadores anteriores. a Potencia a**b ” ab . b &”AND.
  • 7. ST Funciones Bloques Bloques estándar Referencias 7/25 Tipos de datos en ST Tipo Descripción Nro. de bits Rango BOOL Bit 1 0, 1 BYTE Byte 8 0..#FF WORD Cadena 16 #0..#FFFF DWORD Cadena doble 32 #0..#FFFFFFFF LWORD Cadena larga 64 #0..#FFFFFFFFFFFFFFFF INT Entero 16 ´32568..32567 UINT Entero sin signo 16 0..65535 DINT Entero doble 32 ´231 ..231 ´ 1 UDINT Entero doble sin signo 32 0..232 ´ 1 LINT Entero largo 64 263 ..263 ´ 1 ULINT Entero largo sin signo 64 0..264 ´ 1 REAL Número real 32 ˘10´38 .. ˘ 1038 LREAL Número real largo 64 ˘10´308 .. ˘ 10308 STRING Cadena de caracteres de 1 a 125 caracteres
  • 8. ST Funciones Bloques Bloques estándar Referencias 8/25 Algunas funciones disponibles en ST Función Nombre Operandos Resultado y:=ABS(x) Valor absoluto, y “ |x| Z o R Z o R y:=SQRT(x) Raíz cuadrada, y “ ? x R R y:=LN(x) Logaritmo natural R R y:=LOG(x) Logaritmo decimal R R y:=EXP(x) Exponencial, y “ ex R R y:=EXPT(x,n) Potencia, y “ xn x P R, n P Z R y:=SIN(x) Seno R R y:=COS(x) Coseno R R y:=TAN(x) Tangente R R y:=ASIN(x) Arco seno R R y:=ACOS(x) Arco coseno R R y:=ATAN(x) Arco tangente R R
  • 9. ST Funciones Bloques Bloques estándar Referencias 9/25 Índice 1 Lenguaje ST (Structured Text) 2 Funciones 3 Bloques de función 4 Bloques de función estándar 5 Referencias
  • 10. ST Funciones Bloques Bloques estándar Referencias 10/25 Llamadas entre POUs Ya hemos visto que la parte de código de un programa se compone de: 1 secuencias de instrucciones, 2 llamadas a funciones y 3 llamadas a bloques de función. PROGRAMA FUNCIÓN BLOQUE de FUNCIÓN FUNCIÓN FUNCIÓN BLOQUE de FUNCIÓN 1 Un programa puede llamar a funciones y a bloques de funciones. 2 Un bloque de función puede llamar a funciones y bloque de funciones. 3 Una función solo puede llamar a funciones. 4 Ningún POU puede llamarse de forma recursiva.
  • 11. ST Funciones Bloques Bloques estándar Referencias 11/25 Partes de una función Función 1 Secuencia de instrucciones y llamadas a otras funciones que 2 operan sobre unos datos de entrada para producir una salida. 3 Carece de memoria o estado interno. nstrccones (cerpo de POU) rbes de  nterƒz rbes oces FUNCTION Nombre:Tipo_Retorno END_FUNCTION Prte decrt Prte de códgo Nombre:= resultado;
  • 12. ST Funciones Bloques Bloques estándar Referencias 12/25 Índice 1 Lenguaje ST (Structured Text) 2 Funciones 3 Bloques de función 4 Bloques de función estándar 5 Referencias
  • 13. ST Funciones Bloques Bloques estándar Referencias 13/25 Diagramas de bloques de función (FBD) 1 FBD es un lenguaje gráfico que trabaja con conexiones de funciones y de bloques de función. 2 2 Los programas dibujados con FBD se asemejan a los diagramas con circuitos integrados. 3 Un bloque de función es un POU que consta de un conjunto de datos encapsulados e independientes y los algoritmos para trabajar con esos datos. 4 A diferencia de las funciones, los bloques de función pueden tener en estado interno asociado. 5 Para utilizar un bloque de función es necesario crear un ejemplar (instance) derivado. 6 Los bloques de función se pueden emplear en programas escritos en lenguaje IL, LD, ST y FBD. 2 [IEC, 2006, p. 143] y [John, 2010, pp. 134–147].
  • 14. ST Funciones Bloques Bloques estándar Referencias 14/25 Declaración y uso de un bloque de función nombreFB ENT1 Tipo_ENT1 ... ... ENTn Tipo_ENTn SAL1 Tipo_SAL1 ... ... SALm Tipo_SALm nombreFB ejemplarFB ENT1 varENT1 ... ... ENTn varENTn SAL1 varSAL1 ... ... SALm varSALm 1 VAR 2 ejemplarFB: nombreFB; 3 varENT1: Tipo_ENT1; 4 ... 5 varENTn: Tipo_ENTn; 6 varSAL1: Tipo_SAL1; 7 ... 8 varSALm: Tipo_SALm; 9 END_VAR 10 ... 11 ejemplarFB(ENT1:=varENT1,..., 12 ENTn:=varENTn); 13 ... 14 varSAL1 := nombreFB.SAL1; 15 ... 16 varSALm := nombreFB.SALm; 17 ... 18 ejemplarFB(ENT1:=varENT1,..., 19 SAL1=>varSAL1,...);
  • 15. ST Funciones Bloques Bloques estándar Referencias 15/25 Entrada EN y salida ENO nombre EN BOOL ENT1 Tipo_ENT1 ... ... ENTn Tipo_ENTn ENO BOOL SAL1 Tipo_SAL1 ... ... SALm Tipo_SALm Tanto EN (enable input) como ENO (enable output) son optativas. EN Significado ENO FALSE No se ejecuta el código del bloque al lla- marlo ENO:=FALSE (no se actualizan las salidas) TRUE Se ejecuta el código del bloque ENO:=TRUE (se actualizan las salidas) En el bloque se puede fijar el valor de ENO ENO:=TRUE o FALSE Cuando se detecta algún fallo ENO:=FALSE
  • 16. ST Funciones Bloques Bloques estándar Referencias 16/25 Índice 1 Lenguaje ST (Structured Text) 2 Funciones 3 Bloques de función 4 Bloques de función estándar 5 Referencias
  • 17. ST Funciones Bloques Bloques estándar Referencias 17/25 Temporizadores IEC 61131-3 – TON Los temporizadores son los primeros ejemplos de bloques de función IEC 61131-3. TON — temporizador con retardo a la conexión TON IN BOOL PT TIME Q BOOL ET TIME IN → ET:=0 y empieza a contar el tiempo. ET alcanza PT → Q:=TRUE. IN! → Q:=FALSE y ET:=0. TON – cronograma t1 t2 t4 t3 t5 IN Q ET t0+PT t4+PT PT t0 PT PT PT Time t Figure B.6. Timing diagram for on-delay timer TON dependin The on-delay timer TON supplies the input value IN at Q
  • 18. ST Funciones Bloques Bloques estándar Referencias 18/25 Temporizadores IEC 61131-3 – TOF TOF — temporizador con retardo a la desconexión TOF IN BOOL PT TIME Q BOOL ET TIME IN → Q:=TRUE. IN! → ET:=0 y empieza a contar el tiempo. ET alcanza PT → Q:=FALSE. TOF – cronograma t0+PT t4+PT Figure B.6. Timing diagram for on-delay timer TON depe The on-delay timer TON supplies the input value IN rising edge is detected at IN. If input IN is "1" only PT), the timer is not started for this edge. The elapsed time can be read off at output ET. t1 t2 t4 t3 t5 t0 PT PT IN Q ET t1+PT t5+PT PT Time Figure B.7. Timing diagram for off-delay timer TOF depe The off-delay timer performs the inverse function t edge in the same way as TON delays a rising one. The behaviour of the timer TOF if PT is modified du
  • 19. ST Funciones Bloques Bloques estándar Referencias 19/25 Temporizadores IEC 61131-3 – TP TP — aestable TP IN BOOL PT TIME Q BOOL ET TIME IN → Q:=TRUE, ET:=0 y empieza a contar el tiempo. ET alcanza PT → Q:=FALSE. IN o IN! antes de que ET alcance PT → no ocurre nada. IN! después de que ET haya alcanzado PT → ET:=0. TP – cronograma The timers TP, TON and TOF are specified here using ti This time behaviour is only possible if the cycle time in which the timer is used is negligibly small in compari the timer is called only once in the cycle. The diagrams show the behaviour of outputs Q and E The time axis runs from left to right and is labelled "t". and Q change between "0" and "1" and the time value ET t1 t2 t4 t3 t5 t0 PT PT PT IN Q ET Time t t0+PT t2+PT t4+PT PT Figure B.5. Timing diagram for pulse timer TP depending on The standard FB "TP" acts as a pulse generator which s length at output Q when a rising edge is detected at in elapsed so far can be read off at output ET at any time.
  • 20. ST Funciones Bloques Bloques estándar Referencias 20/25 Biestables SR: Set (prioritario)–Reset SR SET1 BOOL RESET BOOL Q1 BOOL 1 FUNCTION_BLOCK SR 2 VAR_INPUT 3 SET1: BOOL; 4 RESET : BOOL; 5 END_VAR 6 VAR_OUTPUT 7 Q1: BOOL; 8 END_VAR 9 Q1 := SET1 OR (NOT RESET AND Q1); 10 END_FUNCTION_BLOCK RS: Reset (prioritario)–Set RS SET BOOL RESET1 BOOL Q1 BOOL 1 FUNCTION_BLOCK RS 2 VAR_INPUT 3 SET : BOOL; 4 RESET1: BOOL; 5 END_VAR 6 VAR_OUTPUT 7 Q1: BOOL; 8 END_VAR 9 Q1 := NOT RESET1 AND (SET OR Q1); 10 END_FUNCTION_BLOCK
  • 21. ST Funciones Bloques Bloques estándar Referencias 21/25 Detectores de flanco R_TRIG: flanco de subida R_TRIG CLK BOOL Q BOOL 1 FUNCTION_BLOCK R_TRIG 2 VAR_INPUT 3 CLK: BOOL; 4 END_VAR 5 VAR_OUTPUT 6 Q: BOOL; 7 END_VAR 8 VAR 9 MEM: BOOL:= 0; 10 END_VAR 11 Q := CLK AND NOT MEM; 12 MEM := CLK; 13 END_FUNCTION_BLOCK F_TRIG: flanco de bajada F_TRIG CLK BOOL Q BOOL 1 FUNCTION_BLOCK F_TRIG 2 VAR_INPUT 3 CLK: BOOL; 4 END_VAR 5 VAR_OUTPUT 6 Q: BOOL; 7 END_VAR 8 VAR 9 MEM: BOOL:= 0; 10 END_VAR 11 Q := NOT CLK AND MEM; 12 MEM := CLK; 13 END_FUNCTION_BLOCK
  • 22. ST Funciones Bloques Bloques estándar Referencias 22/25 CTU– Contador ascendente CTU CU BOOL RESET BOOL PV INT Q BOOL CV INT CU– count up (flanco de subida) RESET– reset (CV:=0) PV– program value Q– cuenta finalizada CV– current value 1 FUNCTION_BLOCK CTU 2 VAR_INPUT 3 CU: BOOL R_EDGE; 4 RESET : BOOL; 5 PV: INT; 6 END_VAR 7 VAR_OUTPUT 8 Q : BOOL; 9 CV: INT; 10 END_VAR 11 IF RESET THEN (∗ Puesta a cero. ∗) 12 CV := 0; 13 ELSIF CU AND (CV<PV) THEN 14 CV := CV+1; (∗ Cuenta ascendente. ∗) 15 END_IF; 16 Q := (CV >= PV); (∗ Cuenta finalizada. ∗) 17 END_FUNCTION_BLOCK
  • 23. ST Funciones Bloques Bloques estándar Referencias 23/25 CTD– Contador descendente CTD CD BOOL LOAD BOOL PV INT Q BOOL CV INT CD– count down (flanco de subida) LOAD– load (CV:=PV) PV– program value Q– cuenta finalizada CV– current value Código ST: 1 FUNCTION_BLOCK CTD 2 VAR_INPUT 3 CU: BOOL R_EDGE; 4 LOAD: BOOL; 5 PV: INT; 6 END_VAR 7 VAR_OUTPUT 8 Q : BOOL; 9 CV: INT; 10 END_VAR 11 IF LOAD THEN (∗ Carga del contador. ∗) 12 CV := PV; 13 ELSIF CU AND (CV>0) THEN 14 CV := CV-1; (∗ Cuenta descendente. ∗) 15 END_IF; 16 Q := (CV<=0); (∗ Cuenta finalizada. ∗) 17 END_FUNCTION_BLOCK
  • 24. ST Funciones Bloques Bloques estándar Referencias 24/25 Índice 1 Lenguaje ST (Structured Text) 2 Funciones 3 Bloques de función 4 Bloques de función estándar 5 Referencias
  • 25. ST Funciones Bloques Bloques estándar Referencias 25/25 Referencias International Electrotechnical Commission. Programmable controllers - Part 3: Programming languages. IEC, 2006. Karl-Heinz John and Michael Tiegelkamp. IEC 61131–3: Programming Industrial Automation Systems. Springer, 2010.