PDF de programación - Tema 6 - Programación estructurada

Imágen de pdf Tema 6 - Programación estructurada

Tema 6 - Programación estructuradagráfica de visualizaciones

Publicado el 12 de Abril del 2019
830 visualizaciones desde el 12 de Abril del 2019
446,3 KB
11 paginas
Creado hace 20a (16/12/2003)
Tema 6

Programación estructurada

DivDiv . Ingeniería de
. Ingeniería de
DivDiv . Ingeniería de
. Ingeniería de
Sistemas y Automática
Sistemas y Automática
Sistemas y Automática
Sistemas y Automática

Programación estructurada
Programación estructurada

11

Bibliografía

l Título: “Step7 Avanzado”

l Autor: José Martínez Torres
l Descargar de la página web

l Manual Siemens “Step7-AWL para S7-300 y S7-400”
l Manual Siemens “Step7-KOP para S7-300 y S7-400”
l Manual Siemens “Step7-FUP para S7-300 y S7-400”
l Título: “Automating with Step7 in STL and SCL”

l Autor: Hans Berger
l ISBN: 3-89578-140-1

Programación estructurada
Programación estructurada

22

1

Bibliografía

l Título: “Comunicaciones Industriales”

l Autores: V.Sempere, J. Silvestre, J.A. Martínez
l Editiorial : SPUPV (SPUPV-2002.213)
l Año:2002

Programación estructurada
Programación estructurada

33

Índice

l Módulos de STEP 7
l Módulos de Organización (OBs)
l Funciones (FCs)
l Módulos de Función (FBs)
l Llamada a módulos
l Acceso y Restricciones de los Parámetros de Paso
l Uso de los Parámetros EN/ENO
l Ejercicio: Funciones con Parámetros y sin

Parámetros

l Módulos de datos (DBs)

Programación estructurada
Programación estructurada

44

2

Módulos de STEP 7

l Módulos

l Los módulos son partes funcionales del programa de usuario. Se

diferencian en su función, uso y estructura. Los módulos representan el
código ejecutable del programa.

l El entorno STEP7 soporta los siguientes tipos de módulos:

l Módulos lógicos:

l OBs - Módulos de Organización
l FCs – Funciones
l FBs - Módulos de Función
l SFCs - Funciones de Sistema
l SFBs - Módulos de Función de Sistema

l Módulos de Datos:

l DBs - Módulos de Datos
l SDBs - Módulos de Datos de Sistema

l Tipos de Datos definidos por el Usuario:

l UDTs

Programación estructurada
Programación estructurada

55

Módulos de STEP 7

Programación estructurada
Programación estructurada

66

3

Módulos de Organización
(OBs)

l Módulos de Organización

l

Constituyen el interface entre la CPU y el programa. El sistema operativo llama a estos módulos de código para que
realicen distintas operaciones de acuerdo a su función.

l OB1

l

l

Es un módulo de código que trabaja cíclicamente, el OB1 se ejecuta en cada ciclo. Puede almacenar y ejecutar su
programa completo en el OB1, o bien puede almacenar su programa en diferentes módulos lógicos y utilizar el OB1
para llamarlos cuando sea necesario. Además del OB1, el sistema operativo puede llamar a otros OBs en respuesta a
ciertos eventos. Los OBs sólo pueden ser llamados por el sistema operativo, no por otros módulo lógicos.
El sistema operativo de la CPU del S7 ofrece 26 clases de priori dad (niveles de ejecución del programa). El sistema
operativo procesa los OBs de acuerdo a su prioridad. El OB1 (prioridad clase 1) tiene la prioridad más baja de todos
los OBs. Esto significa que todos los otros OBs pueden interrumpir la ejecución cíclica del OB1 si es necesario.

l Cada CPU del S7 soporta diferentes OBs y sus respectivas funciones. Los diferentes tipos de OB

realizan distintas funciones:
OB1
OB10
OB20
OB35
OB40
OB80 - 87
OB121,122
OB100
OB101

Programa principal
Interrupción Horaria
Interrupción de Retardo
Interrupción Cíclica
Interrupción Hardware
Error Asíncrono
Error Síncrono
Rearranque Completo
Rearranque

Ejecución en ciclos continuos
Empieza en un momento programado
Corre después de una demora programada
Se repite en intervalos programados
Corre al detectarse un error en un módulo
Se ejecuta si hay errores asíncronos
Se ejecuta si hay errores síncronos
Se ejecuta al pasar la CPU de STOP a RUN
Se ejecuta si hay un rearranque de la CPU

Programación estructurada
Programación estructurada

77

Módulos de Organización
(OBs)

Módulos de Organización (OBs)

El sistema operativo
llama a otros OBs
para utilizarlos:

OB1
OB1

Programa Principal
Programa Principal

Ejecución cíclica
Ejecución cíclica
hasta ser interrumpido
hasta ser interrumpido
por un OB con una más
por un OB con una más
alta prioridad.
alta prioridad.

Una vez interrumpido
Una vez interrumpido
por el sistema operativo
por el sistema operativo
el OB1 rompe su ciclo
el OB1 rompe su ciclo
y ejecuta el OB
y ejecuta el OB
requerido.
requerido.

Ejemplo de OB10:
Ejemplo de OB10:
Ejecuta este módulo
Ejecuta este módulo
cada minuto.
cada minuto.
Empieza a las 9:00
Empieza a las 9:00

Ejemplo de OB20:
Ejemplo de OB20:
Ejecuta este módulo
Ejecuta este módulo
2.35” después de
2.35” después de
detectar un evento
detectar un evento

Ejemplo de OB82:
Ejemplo de OB82:
Ejecuta este módulo
Ejecuta este módulo
si hay un cortocircuito
si hay un cortocircuito
en la entrada
en la entrada
analógica PEW532
analógica PEW532

Programación estructurada
Programación estructurada

88

4

Funciones (FCs)

Funciones (FCs)

q Las Funciones son módulos de código que se ejecutan al ser
llamadas desde otro módulo. Cuando se la llama, la función actúa
como una subrutina del programa. Cuando termina de ejecutar su
código, el control se devuelve al módulo y al segmento desde el
cual fue llamada.

Programa Principal

OB1

Módulo Subrutina

FC

Ejecución
del programa

Instrucción que llama
a otro módulo

Ejecución del
Programa

Programación estructurada
Programación estructurada

99

Funciones (FCs)

l FC sin parámetros:

l Las funciones (FCs) actúan como subrutinas del módulo de
código que las llama. Si no se pasa ningún valor (parámetro)
desde el módulo que realiza la llamada, la FC ejecuta su
código con sus propios valores.

Segmento 1 :
Segmento 1 :
L MD10
L MD10
L MD20
L MD20
+R
+R
L MD40
L MD40
/R
/R
RND+
RND+
T MW0
T MW0

Programación estructurada
Programación estructurada

1010

5

Funciones (FCs)

l FC con parámetros:

l En las Funciones (FC), los valores (parámetros) pasados

desde otro módulo, se pueden usar con el nombre de
variable local. Los valores se almacenan en la pila L, que
está dinámicamente asignada en la memoria local. Una
vez que acaba la ejecución de la FC, los valores
almacenados en la pila L se pierden.

0.0
4.0
8.0

valor_A
valor_B
valor_C

real
real

real

temperatura 1

temperatura 2
temperatura 3

Segmento 1 :
L valor_A
L valor_B
+R
L valor_C
/R
RND+
T MW0

Programación estructurada
Programación estructurada

1111

Módulos de Función (FBs)

Módulos de Función (FBs)

qUn Módulo de Función (FB) tiene un módulo adicional de memoria
asociado a él. Un Módulo de Datos (DB) mantiene una copia de los
parámetros que van a pasar al área de datos locales. Después de la
ejecución del FB, se borra el área de memoria local, pero el DB
asociado retiene sus valores.

Llamada a un
módulo con los
parámetros
actuales
Ejemplo:

Call FB1,DB10

Copia la parte de

declaración local del FB

DB10

FB1

Área de
Área de

Declaración Local
Declaración Local

Sección de Código
del módulo llamado
usando los valores
del área de
memoria local.

Programación estructurada
Programación estructurada

1212

6

Módulos de Función (FBs)

l FB con Parámetros (Con DB a Instancia)

l Un Módulo de Función es un módulo lógico con un área de

memoria asociada en forma de módulo de datos “a
instancia”.
l Los parámetros pasados al área de memoria local del FB

se almacenan también en el DB a instancia. Los datos
almacenados en el DB se mantienen aunque el FB termine.

l El DB que está asociado a un FB debe tener la misma
estructura de datos que el área de declaración local.
l Si utiliza el mismo DB cada vez que llama al FB, sólo

retendrá el último (el más reciente) conjunto de datos que
pasó al FB.

OB1

Call FB1,DB10

Pila L

Sección de
código del
FB1

DB10

La última/única y
copia de los
parámetros

Programación estructurada
Programación estructurada

1313

Módulos de Función (FBs)

l Si quiere mantener muestras separadas de

los datos, puede asociar un DB diferente
cada vez que llame a un FB.

OB1

Call FB1,DB10

Call FB1,DB12

Pila L

Sección de
código del
FB1

DB10

1ª copia

DB12

2ª copia

Programación estructurada
Programación estructurada

1414

7

Llamada a módulos

Llamada a Módulos

Módulo que llama
(OB, FB, FC, SFB, SFC)

Ejecución del
Programa

Instrucción que llama
a otro módulo

Ejecución del
Programa

Instrucción que llama
a otro módulo

Módulo llamado
(FB, FC, SFB, SFC)

Ejecución del
Programa

(FB, FC, SFB, SFC)

Ejecución del
Programa

(FB, FC, SFB, SFC)

Programación estructurada
Programación estructurada

1515

Llamada a módulos

l La instrucción Call consigue que los módulos

lógicos estructurados “se despierten”.
l Como se ve en el diagrama anterior, cuando el programa

llama al segundo módulo, éste ejecuta todas sus
instrucciones.

l Una vez que el módulo llamado ha terminado, el que hizo

la llamada reasume la ejecución del programa continuando
por la línea siguiente a la instrucción Call.

l Llamada a una Función en AWL: Call FC100
(sin parámetros)
l Llamada a una Función en FUP/KOP:
(sin parámetros)

FC100

EN

ENO

Programación estructurada
Programación estructurada

1616

8

Llamada a módulos

l Llamada a una Función con parámetros en AWL:

Call FC20

Call FB30,DB10

Arranque:=MW20
Pulsador:=PEW352
Total:=AW20

Arranque:=MW20
Pulsador:=PEW352

Total:=AW20

l Llamada a una Función con parámetros en

FUP/KOP:

FC20

ENO

EN
Arranque
Pulsador Total

DB10
FB30

ENO

EN
Arranque
Pulsador Total

Programación estructurada
Programación estructurada

1717

Acceso y Restricciones de los
Parámetros de Paso

l Acceso y restricciones de los Parámetros de

Paso

Acceso y Restricciones

de los Parámetros de Paso

Llamada a módulo (FC, FB)

Módulo llamado (FC, FB)

Tabla de Declaración

Tabla de Declaración

Valor_1

Valor_2

Valor_Total

Input

Output

In/Out

Call FC10

Medida_1:=Valor_1
Medida_2:=Valor_2
Valor_Total:=Medida_Total

Medida_1

Medida_2

Medida_Total

Input

Output

In/Out

Paso de Parámetros de un módulo lógico a otro

Programación estructurada
Programación estructurada

1818

9

Acceso y Restricciones de
  • Links de descarga
http://lwp-l.com/pdf15715

Comentarios de: Tema 6 - Programación estructurada (0)


No hay comentarios
 

Comentar...

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios...
CerrarCerrar
CerrarCerrar
Cerrar

Tienes que ser un usuario registrado para poder insertar imágenes, archivos y/o videos.

Puedes registrarte o validarte desde aquí.

Codigo
Negrita
Subrayado
Tachado
Cursiva
Insertar enlace
Imagen externa
Emoticon
Tabular
Centrar
Titulo
Linea
Disminuir
Aumentar
Vista preliminar
sonreir
dientes
lengua
guiño
enfadado
confundido
llorar
avergonzado
sorprendido
triste
sol
estrella
jarra
camara
taza de cafe
email
beso
bombilla
amor
mal
bien
Es necesario revisar y aceptar las políticas de privacidad